@intlayer/config 1.0.2 → 1.2.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.
- package/dist/cjs/configFile/buildConfigurationFields.cjs +253 -38
- package/dist/cjs/configFile/buildConfigurationFields.cjs.map +1 -1
- package/dist/cjs/configFile/buildConfigurationFields.d.ts +3 -0
- package/dist/cjs/configFile/getConfiguration.cjs.map +1 -1
- package/dist/cjs/configFile/getConfiguration.d.ts +3 -0
- package/dist/cjs/configFile/index.cjs +3 -1
- package/dist/cjs/configFile/index.cjs.map +1 -1
- package/dist/cjs/configFile/index.d.ts +1 -0
- package/dist/cjs/configFile/loadConfigurationFile.cjs +8 -1
- package/dist/cjs/configFile/loadConfigurationFile.cjs.map +1 -1
- package/dist/cjs/configFile/loadConfigurationFile.d.ts +6 -0
- package/dist/cjs/configFile/searchConfigurationFile.cjs.map +1 -1
- package/dist/cjs/configFile/searchConfigurationFile.d.ts +11 -0
- package/dist/cjs/defaultValues/internationalization.cjs +1 -5
- package/dist/cjs/defaultValues/internationalization.cjs.map +1 -1
- package/dist/cjs/defaultValues/internationalization.d.ts +1 -1
- package/dist/cjs/defaultValues/server.cjs +0 -6
- package/dist/cjs/defaultValues/server.cjs.map +1 -1
- package/dist/cjs/defaultValues/server.d.ts +1 -3
- package/dist/cjs/envVariables/detectPlatform.cjs +53 -0
- package/dist/cjs/envVariables/detectPlatform.cjs.map +1 -0
- package/dist/cjs/envVariables/detectPlatform.d.ts +11 -0
- package/dist/cjs/envVariables/extractEnvVariable.cjs +211 -0
- package/dist/cjs/envVariables/extractEnvVariable.cjs.map +1 -0
- package/dist/cjs/envVariables/extractEnvVariable.d.ts +13 -0
- package/dist/cjs/envVariables/formatEnvVariable.cjs +6 -4
- package/dist/cjs/envVariables/formatEnvVariable.cjs.map +1 -1
- package/dist/cjs/envVariables/formatEnvVariable.d.ts +6 -1
- package/dist/cjs/envVariables/getConfiguration.cjs +37 -38
- package/dist/cjs/envVariables/getConfiguration.cjs.map +1 -1
- package/dist/cjs/envVariables/getConfiguration.d.ts +5 -0
- package/dist/cjs/envVariables/index.d.ts +1 -0
- package/dist/cjs/envVariables/utils.cjs +7 -6
- package/dist/cjs/envVariables/utils.cjs.map +1 -1
- package/dist/cjs/envVariables/utils.d.ts +5 -5
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/types/config.cjs.map +1 -1
- package/dist/cjs/types/config.d.ts +212 -6
- package/dist/cjs/types/locales.cjs.map +1 -1
- package/dist/cjs/types/locales.d.ts +233 -0
- package/dist/esm/configFile/buildConfigurationFields.d.mts +3 -0
- package/dist/esm/configFile/buildConfigurationFields.mjs +253 -40
- package/dist/esm/configFile/buildConfigurationFields.mjs.map +1 -1
- package/dist/esm/configFile/getConfiguration.d.mts +3 -0
- package/dist/esm/configFile/getConfiguration.mjs.map +1 -1
- package/dist/esm/configFile/index.d.mts +1 -0
- package/dist/esm/configFile/index.mjs +1 -0
- package/dist/esm/configFile/index.mjs.map +1 -1
- package/dist/esm/configFile/loadConfigurationFile.d.mts +6 -0
- package/dist/esm/configFile/loadConfigurationFile.mjs +8 -1
- package/dist/esm/configFile/loadConfigurationFile.mjs.map +1 -1
- package/dist/esm/configFile/searchConfigurationFile.d.mts +11 -0
- package/dist/esm/configFile/searchConfigurationFile.mjs.map +1 -1
- package/dist/esm/defaultValues/internationalization.d.mts +1 -1
- package/dist/esm/defaultValues/internationalization.mjs +1 -5
- package/dist/esm/defaultValues/internationalization.mjs.map +1 -1
- package/dist/esm/defaultValues/server.d.mts +1 -3
- package/dist/esm/defaultValues/server.mjs +0 -4
- package/dist/esm/defaultValues/server.mjs.map +1 -1
- package/dist/esm/envVariables/detectPlatform.d.mts +11 -0
- package/dist/esm/envVariables/detectPlatform.mjs +27 -0
- package/dist/esm/envVariables/detectPlatform.mjs.map +1 -0
- package/dist/esm/envVariables/extractEnvVariable.d.mts +13 -0
- package/dist/esm/envVariables/extractEnvVariable.mjs +186 -0
- package/dist/esm/envVariables/extractEnvVariable.mjs.map +1 -0
- package/dist/esm/envVariables/formatEnvVariable.d.mts +6 -1
- package/dist/esm/envVariables/formatEnvVariable.mjs +6 -4
- package/dist/esm/envVariables/formatEnvVariable.mjs.map +1 -1
- package/dist/esm/envVariables/getConfiguration.d.mts +5 -0
- package/dist/esm/envVariables/getConfiguration.mjs +37 -38
- package/dist/esm/envVariables/getConfiguration.mjs.map +1 -1
- package/dist/esm/envVariables/index.d.mts +1 -0
- package/dist/esm/envVariables/utils.d.mts +5 -5
- package/dist/esm/envVariables/utils.mjs +7 -6
- package/dist/esm/envVariables/utils.mjs.map +1 -1
- package/dist/esm/index.d.mts +1 -0
- package/dist/esm/types/config.d.mts +212 -6
- package/dist/esm/types/locales.d.mts +233 -0
- package/dist/esm/types/locales.mjs.map +1 -1
- package/package.json +7 -7
- package/src/configFile/buildConfigurationFields.ts +258 -47
- package/src/configFile/getConfiguration.ts +3 -0
- package/src/configFile/index.ts +1 -0
- package/src/configFile/loadConfigurationFile.ts +19 -1
- package/src/configFile/searchConfigurationFile.ts +11 -0
- package/src/defaultValues/server.ts +0 -4
- package/src/envVariables/detectPlatform.ts +37 -0
- package/src/envVariables/extractEnvVariable.ts +224 -0
- package/src/envVariables/formatEnvVariable.ts +17 -11
- package/src/envVariables/getConfiguration.ts +40 -41
- package/src/envVariables/utils.ts +30 -14
- package/src/types/config.ts +237 -65
- package/src/types/locales.ts +233 -233
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
type Platform = 'next' | 'vite' | 'react_app' | 'unknown';
|
|
2
|
+
type ViteEnvVar = {
|
|
3
|
+
env: Record<string, string>;
|
|
4
|
+
};
|
|
5
|
+
declare const getPlatform: () => Platform;
|
|
6
|
+
/**
|
|
7
|
+
* Get the prefix for the environment variables to be used in the platform
|
|
8
|
+
*/
|
|
9
|
+
declare const getPrefix: (platform: Platform) => string;
|
|
10
|
+
|
|
11
|
+
export { type Platform, type ViteEnvVar, getPlatform, getPrefix };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
const getPlatform = () => {
|
|
2
|
+
if (typeof process.env.NEXT_PUBLIC_INTLAYER_DEFAULT_LOCALE === "string") {
|
|
3
|
+
return "next";
|
|
4
|
+
} else if (typeof process.env.REACT_APP_INTLAYER_DEFAULT_LOCALE === "string") {
|
|
5
|
+
return "react_app";
|
|
6
|
+
} else if (import.meta?.env?.VITE_INTLAYER_DEFAULT_LOCALE) {
|
|
7
|
+
return "vite";
|
|
8
|
+
}
|
|
9
|
+
return "unknown";
|
|
10
|
+
};
|
|
11
|
+
const getPrefix = (platform) => {
|
|
12
|
+
switch (platform) {
|
|
13
|
+
case "next":
|
|
14
|
+
return "NEXT_PUBLIC_INTLAYER_";
|
|
15
|
+
case "vite":
|
|
16
|
+
return "VITE_INTLAYER_";
|
|
17
|
+
case "react_app":
|
|
18
|
+
return "REACT_APP_INTLAYER_";
|
|
19
|
+
default:
|
|
20
|
+
return "";
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
export {
|
|
24
|
+
getPlatform,
|
|
25
|
+
getPrefix
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=detectPlatform.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/envVariables/detectPlatform.ts"],"sourcesContent":["export type Platform = 'next' | 'vite' | 'react_app' | 'unknown';\nexport type ViteEnvVar = { env: Record<string, string> };\n\nexport const getPlatform = (): Platform => {\n if (typeof process.env.NEXT_PUBLIC_INTLAYER_DEFAULT_LOCALE === 'string') {\n // Likely Next.js\n return 'next';\n } else if (\n typeof process.env.REACT_APP_INTLAYER_DEFAULT_LOCALE === 'string'\n ) {\n // Likely Create React App\n return 'react_app';\n } else if (\n (import.meta as unknown as ViteEnvVar)?.env?.VITE_INTLAYER_DEFAULT_LOCALE\n ) {\n // Likely Vite\n return 'vite';\n }\n\n return 'unknown';\n};\n\n/**\n * Get the prefix for the environment variables to be used in the platform\n */\nexport const getPrefix = (platform: Platform): string => {\n switch (platform) {\n case 'next':\n return 'NEXT_PUBLIC_INTLAYER_';\n case 'vite':\n return 'VITE_INTLAYER_';\n case 'react_app':\n return 'REACT_APP_INTLAYER_';\n default:\n return '';\n }\n};\n"],"mappings":"AAGO,MAAM,cAAc,MAAgB;AACzC,MAAI,OAAO,QAAQ,IAAI,wCAAwC,UAAU;AAEvE,WAAO;AAAA,EACT,WACE,OAAO,QAAQ,IAAI,sCAAsC,UACzD;AAEA,WAAO;AAAA,EACT,WACG,aAAuC,KAAK,8BAC7C;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAKO,MAAM,YAAY,CAAC,aAA+B;AACvD,UAAQ,UAAU;AAAA,IAChB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;","names":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { InternationalizationConfig, MiddlewareConfig, ContentConfig } from '../types/config.mjs';
|
|
2
|
+
import '../types/locales.mjs';
|
|
3
|
+
|
|
4
|
+
type ReplaceValue<T> = {
|
|
5
|
+
[K in keyof T]: string | undefined;
|
|
6
|
+
};
|
|
7
|
+
declare const extractEnvVariable: () => {
|
|
8
|
+
intlayerIntlConfiguration: ReplaceValue<InternationalizationConfig>;
|
|
9
|
+
intlayerMiddlewareConfiguration: ReplaceValue<MiddlewareConfig>;
|
|
10
|
+
intlayerContentConfiguration: ReplaceValue<ContentConfig>;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export { extractEnvVariable };
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { getPlatform } from './detectPlatform.mjs';
|
|
2
|
+
const extractNextEnvVariable = () => {
|
|
3
|
+
if (typeof process === "undefined") {
|
|
4
|
+
return extractEmptyEnvVariable();
|
|
5
|
+
}
|
|
6
|
+
const env = process.env;
|
|
7
|
+
const intlayerIntlConfiguration = {
|
|
8
|
+
locales: env.NEXT_PUBLIC_INTLAYER_LOCALES,
|
|
9
|
+
defaultLocale: env.NEXT_PUBLIC_INTLAYER_DEFAULT_LOCALE
|
|
10
|
+
};
|
|
11
|
+
const intlayerMiddlewareConfiguration = {
|
|
12
|
+
headerName: env.NEXT_PUBLIC_INTLAYER_HEADER_NAME,
|
|
13
|
+
cookieName: env.NEXT_PUBLIC_INTLAYER_COOKIE_NAME,
|
|
14
|
+
prefixDefault: env.NEXT_PUBLIC_INTLAYER_PREFIX_DEFAULT,
|
|
15
|
+
basePath: env.NEXT_PUBLIC_INTLAYER_BASE_PATH,
|
|
16
|
+
serverSetCookie: env.NEXT_PUBLIC_INTLAYER_SERVER_SET_COOKIE,
|
|
17
|
+
noPrefix: env.NEXT_PUBLIC_INTLAYER_NO_PREFIX
|
|
18
|
+
};
|
|
19
|
+
const intlayerContentConfiguration = {
|
|
20
|
+
fileExtensions: env.NEXT_PUBLIC_INTLAYER_FILE_EXTENSIONS,
|
|
21
|
+
baseDir: env.NEXT_PUBLIC_INTLAYER_BASE_DIR,
|
|
22
|
+
contentDirName: env.NEXT_PUBLIC_INTLAYER_CONTENT_DIR_NAME,
|
|
23
|
+
contentDir: env.NEXT_PUBLIC_INTLAYER_CONTENT_DIR,
|
|
24
|
+
excludedPath: env.NEXT_PUBLIC_INTLAYER_EXCLUDED_PATH,
|
|
25
|
+
resultDirName: env.NEXT_PUBLIC_INTLAYER_RESULT_DIR_NAME,
|
|
26
|
+
moduleAugmentationDirName: env.NEXT_PUBLIC_INTLAYER_MODULE_AUGMENTATION_DIR_NAME,
|
|
27
|
+
dictionariesDirName: env.NEXT_PUBLIC_INTLAYER_DICTIONARIES_DIR_NAME,
|
|
28
|
+
typeDirName: env.NEXT_PUBLIC_INTLAYER_TYPE_DIR_NAME,
|
|
29
|
+
mainDirName: env.NEXT_PUBLIC_INTLAYER_MAIN_DIR_NAME,
|
|
30
|
+
resultDir: env.NEXT_PUBLIC_INTLAYER_RESULT_DIR,
|
|
31
|
+
moduleAugmentationDir: env.NEXT_PUBLIC_INTLAYER_MODULE_AUGMENTATION_DIR,
|
|
32
|
+
dictionariesDir: env.NEXT_PUBLIC_INTLAYER_DICTIONARIES_DIR,
|
|
33
|
+
typesDir: env.NEXT_PUBLIC_INTLAYER_TYPE_DIR,
|
|
34
|
+
mainDir: env.NEXT_PUBLIC_INTLAYER_MAIN_DIR,
|
|
35
|
+
watchedFilesPattern: env.NEXT_PUBLIC_INTLAYER_WATCHED_FILES_PATTERN,
|
|
36
|
+
watchedFilesPatternWithPath: env.NEXT_PUBLIC_INTLAYER_WATCHED_FILES_PATTERN_WITH_PATH,
|
|
37
|
+
outputFilesPatternWithPath: env.NEXT_PUBLIC_INTLAYER_OUTPUT_FILES_PATTERN_WITH_PATH
|
|
38
|
+
};
|
|
39
|
+
return {
|
|
40
|
+
intlayerIntlConfiguration,
|
|
41
|
+
intlayerMiddlewareConfiguration,
|
|
42
|
+
intlayerContentConfiguration
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
const extractReactAppEnvVariable = () => {
|
|
46
|
+
if (typeof process === "undefined") {
|
|
47
|
+
return extractEmptyEnvVariable();
|
|
48
|
+
}
|
|
49
|
+
const env = process.env;
|
|
50
|
+
const intlayerIntlConfiguration = {
|
|
51
|
+
locales: env.REACT_APP_INTLAYER_LOCALES,
|
|
52
|
+
defaultLocale: env.REACT_APP_INTLAYER_DEFAULT_LOCALE
|
|
53
|
+
};
|
|
54
|
+
const intlayerMiddlewareConfiguration = {
|
|
55
|
+
headerName: env.REACT_APP_INTLAYER_HEADER_NAME,
|
|
56
|
+
cookieName: env.REACT_APP_INTLAYER_COOKIE_NAME,
|
|
57
|
+
prefixDefault: env.REACT_APP_INTLAYER_PREFIX_DEFAULT,
|
|
58
|
+
basePath: env.REACT_APP_INTLAYER_BASE_PATH,
|
|
59
|
+
serverSetCookie: env.REACT_APP_INTLAYER_SERVER_SET_COOKIE,
|
|
60
|
+
noPrefix: env.REACT_APP_INTLAYER_NO_PREFIX
|
|
61
|
+
};
|
|
62
|
+
const intlayerContentConfiguration = {
|
|
63
|
+
fileExtensions: env.REACT_APP_INTLAYER_FILE_EXTENSIONS,
|
|
64
|
+
baseDir: env.REACT_APP_INTLAYER_BASE_DIR,
|
|
65
|
+
contentDirName: env.REACT_APP_INTLAYER_CONTENT_DIR_NAME,
|
|
66
|
+
contentDir: env.REACT_APP_INTLAYER_CONTENT_DIR,
|
|
67
|
+
excludedPath: env.REACT_APP_INTLAYER_EXCLUDED_PATH,
|
|
68
|
+
resultDirName: env.REACT_APP_INTLAYER_RESULT_DIR_NAME,
|
|
69
|
+
moduleAugmentationDirName: env.REACT_APP_INTLAYER_MODULE_AUGMENTATION_DIR_NAME,
|
|
70
|
+
dictionariesDirName: env.REACT_APP_INTLAYER_DICTIONARIES_DIR_NAME,
|
|
71
|
+
typeDirName: env.REACT_APP_INTLAYER_TYPE_DIR_NAME,
|
|
72
|
+
mainDirName: env.REACT_APP_INTLAYER_MAIN_DIR_NAME,
|
|
73
|
+
resultDir: env.REACT_APP_INTLAYER_RESULT_DIR,
|
|
74
|
+
moduleAugmentationDir: env.REACT_APP_INTLAYER_MODULE_AUGMENTATION_DIR,
|
|
75
|
+
dictionariesDir: env.REACT_APP_INTLAYER_DICTIONARIES_DIR,
|
|
76
|
+
typesDir: env.REACT_APP_INTLAYER_TYPE_DIR,
|
|
77
|
+
mainDir: env.REACT_APP_INTLAYER_MAIN_DIR,
|
|
78
|
+
watchedFilesPattern: env.REACT_APP_INTLAYER_WATCHED_FILES_PATTERN,
|
|
79
|
+
watchedFilesPatternWithPath: env.REACT_APP_INTLAYER_WATCHED_FILES_PATTERN_WITH_PATH,
|
|
80
|
+
outputFilesPatternWithPath: env.REACT_APP_INTLAYER_OUTPUT_FILES_PATTERN_WITH_PATH
|
|
81
|
+
};
|
|
82
|
+
return {
|
|
83
|
+
intlayerIntlConfiguration,
|
|
84
|
+
intlayerMiddlewareConfiguration,
|
|
85
|
+
intlayerContentConfiguration
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
const extractViteEnvVariable = () => {
|
|
89
|
+
const env = import.meta.env;
|
|
90
|
+
if (typeof env === "undefined") {
|
|
91
|
+
return extractEmptyEnvVariable();
|
|
92
|
+
}
|
|
93
|
+
const intlayerIntlConfiguration = {
|
|
94
|
+
locales: env.VITE_INTLAYER_LOCALES,
|
|
95
|
+
defaultLocale: env.VITE_INTLAYER_DEFAULT_LOCALE
|
|
96
|
+
};
|
|
97
|
+
const intlayerMiddlewareConfiguration = {
|
|
98
|
+
headerName: env.VITE_INTLAYER_HEADER_NAME,
|
|
99
|
+
cookieName: env.VITE_INTLAYER_COOKIE_NAME,
|
|
100
|
+
prefixDefault: env.VITE_INTLAYER_PREFIX_DEFAULT,
|
|
101
|
+
basePath: env.VITE_INTLAYER_BASE_PATH,
|
|
102
|
+
serverSetCookie: env.VITE_INTLAYER_SERVER_SET_COOKIE,
|
|
103
|
+
noPrefix: env.VITE_INTLAYER_NO_PREFIX
|
|
104
|
+
};
|
|
105
|
+
const intlayerContentConfiguration = {
|
|
106
|
+
fileExtensions: env.VITE_INTLAYER_FILE_EXTENSIONS,
|
|
107
|
+
baseDir: env.VITE_INTLAYER_BASE_DIR,
|
|
108
|
+
contentDirName: env.VITE_INTLAYER_CONTENT_DIR_NAME,
|
|
109
|
+
contentDir: env.VITE_INTLAYER_CONTENT_DIR,
|
|
110
|
+
excludedPath: env.VITE_INTLAYER_EXCLUDED_PATH,
|
|
111
|
+
resultDirName: env.VITE_INTLAYER_RESULT_DIR_NAME,
|
|
112
|
+
moduleAugmentationDirName: env.VITE_INTLAYER_MODULE_AUGMENTATION_DIR_NAME,
|
|
113
|
+
dictionariesDirName: env.VITE_INTLAYER_DICTIONARIES_DIR_NAME,
|
|
114
|
+
typeDirName: env.VITE_INTLAYER_TYPE_DIR_NAME,
|
|
115
|
+
mainDirName: env.VITE_INTLAYER_MAIN_DIR_NAME,
|
|
116
|
+
resultDir: env.VITE_INTLAYER_RESULT_DIR,
|
|
117
|
+
moduleAugmentationDir: env.VITE_INTLAYER_MODULE_AUGMENTATION_DIR,
|
|
118
|
+
dictionariesDir: env.VITE_INTLAYER_DICTIONARIES_DIR,
|
|
119
|
+
typesDir: env.VITE_INTLAYER_TYPE_DIR,
|
|
120
|
+
mainDir: env.VITE_INTLAYER_MAIN_DIR,
|
|
121
|
+
watchedFilesPattern: env.VITE_INTLAYER_WATCHED_FILES_PATTERN,
|
|
122
|
+
watchedFilesPatternWithPath: env.VITE_INTLAYER_WATCHED_FILES_PATTERN_WITH_PATH,
|
|
123
|
+
outputFilesPatternWithPath: env.VITE_INTLAYER_OUTPUT_FILES_PATTERN_WITH_PATH
|
|
124
|
+
};
|
|
125
|
+
return {
|
|
126
|
+
intlayerIntlConfiguration,
|
|
127
|
+
intlayerMiddlewareConfiguration,
|
|
128
|
+
intlayerContentConfiguration
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
const extractEmptyEnvVariable = () => {
|
|
132
|
+
const intlayerIntlConfiguration = {
|
|
133
|
+
locales: void 0,
|
|
134
|
+
defaultLocale: void 0
|
|
135
|
+
};
|
|
136
|
+
const intlayerMiddlewareConfiguration = {
|
|
137
|
+
headerName: void 0,
|
|
138
|
+
cookieName: void 0,
|
|
139
|
+
prefixDefault: void 0,
|
|
140
|
+
basePath: void 0,
|
|
141
|
+
serverSetCookie: void 0,
|
|
142
|
+
noPrefix: void 0
|
|
143
|
+
};
|
|
144
|
+
const intlayerContentConfiguration = {
|
|
145
|
+
fileExtensions: void 0,
|
|
146
|
+
baseDir: void 0,
|
|
147
|
+
contentDirName: void 0,
|
|
148
|
+
contentDir: void 0,
|
|
149
|
+
excludedPath: void 0,
|
|
150
|
+
resultDirName: void 0,
|
|
151
|
+
moduleAugmentationDirName: void 0,
|
|
152
|
+
dictionariesDirName: void 0,
|
|
153
|
+
typeDirName: void 0,
|
|
154
|
+
mainDirName: void 0,
|
|
155
|
+
resultDir: void 0,
|
|
156
|
+
moduleAugmentationDir: void 0,
|
|
157
|
+
dictionariesDir: void 0,
|
|
158
|
+
typesDir: void 0,
|
|
159
|
+
mainDir: void 0,
|
|
160
|
+
watchedFilesPattern: void 0,
|
|
161
|
+
watchedFilesPatternWithPath: void 0,
|
|
162
|
+
outputFilesPatternWithPath: void 0
|
|
163
|
+
};
|
|
164
|
+
return {
|
|
165
|
+
intlayerIntlConfiguration,
|
|
166
|
+
intlayerMiddlewareConfiguration,
|
|
167
|
+
intlayerContentConfiguration
|
|
168
|
+
};
|
|
169
|
+
};
|
|
170
|
+
const extractEnvVariable = () => {
|
|
171
|
+
const platform = getPlatform();
|
|
172
|
+
switch (platform) {
|
|
173
|
+
case "next":
|
|
174
|
+
return extractNextEnvVariable();
|
|
175
|
+
case "vite":
|
|
176
|
+
return extractViteEnvVariable();
|
|
177
|
+
case "react_app":
|
|
178
|
+
return extractReactAppEnvVariable();
|
|
179
|
+
default:
|
|
180
|
+
return extractEmptyEnvVariable();
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
export {
|
|
184
|
+
extractEnvVariable
|
|
185
|
+
};
|
|
186
|
+
//# sourceMappingURL=extractEnvVariable.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/envVariables/extractEnvVariable.ts"],"sourcesContent":["import type {\n InternationalizationConfig,\n MiddlewareConfig,\n ContentConfig,\n} from '../types/config';\nimport { type ViteEnvVar, getPlatform } from './detectPlatform';\n\n// Utility type that replaces all values of a given type with another type\ntype ReplaceValue<T> = {\n [K in keyof T]: string | undefined;\n};\n\nconst extractNextEnvVariable = () => {\n if (typeof process === 'undefined') {\n return extractEmptyEnvVariable();\n }\n\n const env = process.env;\n\n const intlayerIntlConfiguration: ReplaceValue<InternationalizationConfig> = {\n locales: env.NEXT_PUBLIC_INTLAYER_LOCALES,\n defaultLocale: env.NEXT_PUBLIC_INTLAYER_DEFAULT_LOCALE,\n };\n\n const intlayerMiddlewareConfiguration: ReplaceValue<MiddlewareConfig> = {\n headerName: env.NEXT_PUBLIC_INTLAYER_HEADER_NAME,\n cookieName: env.NEXT_PUBLIC_INTLAYER_COOKIE_NAME,\n prefixDefault: env.NEXT_PUBLIC_INTLAYER_PREFIX_DEFAULT,\n basePath: env.NEXT_PUBLIC_INTLAYER_BASE_PATH,\n serverSetCookie: env.NEXT_PUBLIC_INTLAYER_SERVER_SET_COOKIE,\n noPrefix: env.NEXT_PUBLIC_INTLAYER_NO_PREFIX,\n };\n\n const intlayerContentConfiguration: ReplaceValue<ContentConfig> = {\n fileExtensions: env.NEXT_PUBLIC_INTLAYER_FILE_EXTENSIONS,\n baseDir: env.NEXT_PUBLIC_INTLAYER_BASE_DIR,\n contentDirName: env.NEXT_PUBLIC_INTLAYER_CONTENT_DIR_NAME,\n contentDir: env.NEXT_PUBLIC_INTLAYER_CONTENT_DIR,\n excludedPath: env.NEXT_PUBLIC_INTLAYER_EXCLUDED_PATH,\n resultDirName: env.NEXT_PUBLIC_INTLAYER_RESULT_DIR_NAME,\n moduleAugmentationDirName:\n env.NEXT_PUBLIC_INTLAYER_MODULE_AUGMENTATION_DIR_NAME,\n dictionariesDirName: env.NEXT_PUBLIC_INTLAYER_DICTIONARIES_DIR_NAME,\n typeDirName: env.NEXT_PUBLIC_INTLAYER_TYPE_DIR_NAME,\n mainDirName: env.NEXT_PUBLIC_INTLAYER_MAIN_DIR_NAME,\n resultDir: env.NEXT_PUBLIC_INTLAYER_RESULT_DIR,\n moduleAugmentationDir: env.NEXT_PUBLIC_INTLAYER_MODULE_AUGMENTATION_DIR,\n dictionariesDir: env.NEXT_PUBLIC_INTLAYER_DICTIONARIES_DIR,\n typesDir: env.NEXT_PUBLIC_INTLAYER_TYPE_DIR,\n mainDir: env.NEXT_PUBLIC_INTLAYER_MAIN_DIR,\n watchedFilesPattern: env.NEXT_PUBLIC_INTLAYER_WATCHED_FILES_PATTERN,\n watchedFilesPatternWithPath:\n env.NEXT_PUBLIC_INTLAYER_WATCHED_FILES_PATTERN_WITH_PATH,\n outputFilesPatternWithPath:\n env.NEXT_PUBLIC_INTLAYER_OUTPUT_FILES_PATTERN_WITH_PATH,\n };\n\n return {\n intlayerIntlConfiguration,\n intlayerMiddlewareConfiguration,\n intlayerContentConfiguration,\n };\n};\n\nconst extractReactAppEnvVariable = () => {\n if (typeof process === 'undefined') {\n return extractEmptyEnvVariable();\n }\n\n const env = process.env;\n\n const intlayerIntlConfiguration: ReplaceValue<InternationalizationConfig> = {\n locales: env.REACT_APP_INTLAYER_LOCALES,\n defaultLocale: env.REACT_APP_INTLAYER_DEFAULT_LOCALE,\n };\n\n const intlayerMiddlewareConfiguration: ReplaceValue<MiddlewareConfig> = {\n headerName: env.REACT_APP_INTLAYER_HEADER_NAME,\n cookieName: env.REACT_APP_INTLAYER_COOKIE_NAME,\n prefixDefault: env.REACT_APP_INTLAYER_PREFIX_DEFAULT,\n basePath: env.REACT_APP_INTLAYER_BASE_PATH,\n serverSetCookie: env.REACT_APP_INTLAYER_SERVER_SET_COOKIE,\n noPrefix: env.REACT_APP_INTLAYER_NO_PREFIX,\n };\n\n const intlayerContentConfiguration: ReplaceValue<ContentConfig> = {\n fileExtensions: env.REACT_APP_INTLAYER_FILE_EXTENSIONS,\n baseDir: env.REACT_APP_INTLAYER_BASE_DIR,\n contentDirName: env.REACT_APP_INTLAYER_CONTENT_DIR_NAME,\n contentDir: env.REACT_APP_INTLAYER_CONTENT_DIR,\n excludedPath: env.REACT_APP_INTLAYER_EXCLUDED_PATH,\n resultDirName: env.REACT_APP_INTLAYER_RESULT_DIR_NAME,\n moduleAugmentationDirName:\n env.REACT_APP_INTLAYER_MODULE_AUGMENTATION_DIR_NAME,\n dictionariesDirName: env.REACT_APP_INTLAYER_DICTIONARIES_DIR_NAME,\n typeDirName: env.REACT_APP_INTLAYER_TYPE_DIR_NAME,\n mainDirName: env.REACT_APP_INTLAYER_MAIN_DIR_NAME,\n resultDir: env.REACT_APP_INTLAYER_RESULT_DIR,\n moduleAugmentationDir: env.REACT_APP_INTLAYER_MODULE_AUGMENTATION_DIR,\n dictionariesDir: env.REACT_APP_INTLAYER_DICTIONARIES_DIR,\n typesDir: env.REACT_APP_INTLAYER_TYPE_DIR,\n mainDir: env.REACT_APP_INTLAYER_MAIN_DIR,\n watchedFilesPattern: env.REACT_APP_INTLAYER_WATCHED_FILES_PATTERN,\n watchedFilesPatternWithPath:\n env.REACT_APP_INTLAYER_WATCHED_FILES_PATTERN_WITH_PATH,\n outputFilesPatternWithPath:\n env.REACT_APP_INTLAYER_OUTPUT_FILES_PATTERN_WITH_PATH,\n };\n\n return {\n intlayerIntlConfiguration,\n intlayerMiddlewareConfiguration,\n intlayerContentConfiguration,\n };\n};\n\nconst extractViteEnvVariable = () => {\n const env = (import.meta as unknown as ViteEnvVar).env;\n\n if (typeof env === 'undefined') {\n return extractEmptyEnvVariable();\n }\n\n const intlayerIntlConfiguration: ReplaceValue<InternationalizationConfig> = {\n locales: env.VITE_INTLAYER_LOCALES,\n defaultLocale: env.VITE_INTLAYER_DEFAULT_LOCALE,\n };\n\n const intlayerMiddlewareConfiguration: ReplaceValue<MiddlewareConfig> = {\n headerName: env.VITE_INTLAYER_HEADER_NAME,\n cookieName: env.VITE_INTLAYER_COOKIE_NAME,\n prefixDefault: env.VITE_INTLAYER_PREFIX_DEFAULT,\n basePath: env.VITE_INTLAYER_BASE_PATH,\n serverSetCookie: env.VITE_INTLAYER_SERVER_SET_COOKIE,\n noPrefix: env.VITE_INTLAYER_NO_PREFIX,\n };\n\n const intlayerContentConfiguration: ReplaceValue<ContentConfig> = {\n fileExtensions: env.VITE_INTLAYER_FILE_EXTENSIONS,\n baseDir: env.VITE_INTLAYER_BASE_DIR,\n contentDirName: env.VITE_INTLAYER_CONTENT_DIR_NAME,\n contentDir: env.VITE_INTLAYER_CONTENT_DIR,\n excludedPath: env.VITE_INTLAYER_EXCLUDED_PATH,\n resultDirName: env.VITE_INTLAYER_RESULT_DIR_NAME,\n moduleAugmentationDirName: env.VITE_INTLAYER_MODULE_AUGMENTATION_DIR_NAME,\n dictionariesDirName: env.VITE_INTLAYER_DICTIONARIES_DIR_NAME,\n typeDirName: env.VITE_INTLAYER_TYPE_DIR_NAME,\n mainDirName: env.VITE_INTLAYER_MAIN_DIR_NAME,\n resultDir: env.VITE_INTLAYER_RESULT_DIR,\n moduleAugmentationDir: env.VITE_INTLAYER_MODULE_AUGMENTATION_DIR,\n dictionariesDir: env.VITE_INTLAYER_DICTIONARIES_DIR,\n typesDir: env.VITE_INTLAYER_TYPE_DIR,\n mainDir: env.VITE_INTLAYER_MAIN_DIR,\n watchedFilesPattern: env.VITE_INTLAYER_WATCHED_FILES_PATTERN,\n watchedFilesPatternWithPath:\n env.VITE_INTLAYER_WATCHED_FILES_PATTERN_WITH_PATH,\n outputFilesPatternWithPath:\n env.VITE_INTLAYER_OUTPUT_FILES_PATTERN_WITH_PATH,\n };\n\n return {\n intlayerIntlConfiguration,\n intlayerMiddlewareConfiguration,\n intlayerContentConfiguration,\n };\n};\n\nconst extractEmptyEnvVariable = () => {\n const intlayerIntlConfiguration: ReplaceValue<InternationalizationConfig> = {\n locales: undefined,\n defaultLocale: undefined,\n };\n\n const intlayerMiddlewareConfiguration: ReplaceValue<MiddlewareConfig> = {\n headerName: undefined,\n cookieName: undefined,\n prefixDefault: undefined,\n basePath: undefined,\n serverSetCookie: undefined,\n noPrefix: undefined,\n };\n\n const intlayerContentConfiguration: ReplaceValue<ContentConfig> = {\n fileExtensions: undefined,\n baseDir: undefined,\n contentDirName: undefined,\n contentDir: undefined,\n excludedPath: undefined,\n resultDirName: undefined,\n moduleAugmentationDirName: undefined,\n dictionariesDirName: undefined,\n typeDirName: undefined,\n mainDirName: undefined,\n resultDir: undefined,\n moduleAugmentationDir: undefined,\n dictionariesDir: undefined,\n typesDir: undefined,\n mainDir: undefined,\n watchedFilesPattern: undefined,\n watchedFilesPatternWithPath: undefined,\n outputFilesPatternWithPath: undefined,\n };\n\n return {\n intlayerIntlConfiguration,\n intlayerMiddlewareConfiguration,\n intlayerContentConfiguration,\n };\n};\n\nexport const extractEnvVariable = () => {\n const platform = getPlatform();\n\n switch (platform) {\n case 'next':\n return extractNextEnvVariable();\n case 'vite':\n return extractViteEnvVariable();\n case 'react_app':\n return extractReactAppEnvVariable();\n default:\n return extractEmptyEnvVariable();\n }\n};\n"],"mappings":"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","names":[]}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { Platform } from './detectPlatform.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Format all configuration values as environment variables
|
|
5
|
+
*/
|
|
6
|
+
declare const formatEnvVariable: (platform: Platform) => Record<string, string>;
|
|
2
7
|
|
|
3
8
|
export { formatEnvVariable };
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { getConfiguration } from '../configFile/getConfiguration.mjs';
|
|
2
|
-
|
|
2
|
+
import { getPrefix } from './detectPlatform.mjs';
|
|
3
|
+
const formatEnvName = (key, prefix) => prefix + key.replace(/([a-z0-9])([A-Z])/g, "$1_$2").toUpperCase();
|
|
4
|
+
const formatEnvVariable = (platform) => {
|
|
3
5
|
const intlayerConfig = getConfiguration();
|
|
4
|
-
const
|
|
6
|
+
const prefix = getPrefix(platform);
|
|
5
7
|
const env = {};
|
|
6
8
|
for (const [key, value] of Object.entries({
|
|
7
9
|
...intlayerConfig.content,
|
|
@@ -9,9 +11,9 @@ const formatEnvVariable = (prefix = "NEXT_PUBLIC_INTLAYER_") => {
|
|
|
9
11
|
...intlayerConfig.middleware
|
|
10
12
|
})) {
|
|
11
13
|
if (typeof value === "string") {
|
|
12
|
-
env[formatEnvName(key)] = value;
|
|
14
|
+
env[formatEnvName(key, prefix)] = value;
|
|
13
15
|
} else {
|
|
14
|
-
env[formatEnvName(key)] = JSON.stringify(value);
|
|
16
|
+
env[formatEnvName(key, prefix)] = JSON.stringify(value);
|
|
15
17
|
}
|
|
16
18
|
}
|
|
17
19
|
return env;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/envVariables/formatEnvVariable.ts"],"sourcesContent":["import { getConfiguration } from '../configFile/getConfiguration';\
|
|
1
|
+
{"version":3,"sources":["../../../src/envVariables/formatEnvVariable.ts"],"sourcesContent":["import { getConfiguration } from '../configFile/getConfiguration';\nimport { getPrefix, type Platform } from './detectPlatform';\n\n/**\n * Format a key to corresponding environment variable name\n *\n * Example:\n * toEnvVariable('mainDir') => 'INTLAYER_MAIN_DIR'\n */\nconst formatEnvName = (key: string, prefix: string): string =>\n prefix + key.replace(/([a-z0-9])([A-Z])/g, '$1_$2').toUpperCase();\n\n/**\n * Format all configuration values as environment variables\n */\nexport const formatEnvVariable = (\n platform: Platform\n): Record<string, string> => {\n const intlayerConfig = getConfiguration();\n\n const prefix = getPrefix(platform);\n\n // Set all configuration values as environment variables\n const env: Record<string, string> = {};\n for (const [key, value] of Object.entries({\n ...intlayerConfig.content,\n ...intlayerConfig.internationalization,\n ...intlayerConfig.middleware,\n })) {\n if (typeof value === 'string') {\n env[formatEnvName(key, prefix)] = value;\n } else {\n env[formatEnvName(key, prefix)] = JSON.stringify(value);\n }\n }\n\n return env;\n};\n"],"mappings":"AAAA,SAAS,wBAAwB;AACjC,SAAS,iBAAgC;AAQzC,MAAM,gBAAgB,CAAC,KAAa,WAClC,SAAS,IAAI,QAAQ,sBAAsB,OAAO,EAAE,YAAY;AAK3D,MAAM,oBAAoB,CAC/B,aAC2B;AAC3B,QAAM,iBAAiB,iBAAiB;AAExC,QAAM,SAAS,UAAU,QAAQ;AAGjC,QAAM,MAA8B,CAAC;AACrC,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ;AAAA,IACxC,GAAG,eAAe;AAAA,IAClB,GAAG,eAAe;AAAA,IAClB,GAAG,eAAe;AAAA,EACpB,CAAC,GAAG;AACF,QAAI,OAAO,UAAU,UAAU;AAC7B,UAAI,cAAc,KAAK,MAAM,CAAC,IAAI;AAAA,IACpC,OAAO;AACL,UAAI,cAAc,KAAK,MAAM,CAAC,IAAI,KAAK,UAAU,KAAK;AAAA,IACxD;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
|
|
@@ -5,6 +5,11 @@ declare const intlayerIntlConfiguration: InternationalizationConfig;
|
|
|
5
5
|
declare const intlayerMiddlewareConfiguration: MiddlewareConfig;
|
|
6
6
|
declare const intlayerContentConfiguration: ContentConfig;
|
|
7
7
|
declare const intlayerConfiguration: IntlayerConfig;
|
|
8
|
+
/**
|
|
9
|
+
* Get all configuration values using environment variables
|
|
10
|
+
* Can be used in the client side as the server side
|
|
11
|
+
* To use it, be sure to have the environment variables set
|
|
12
|
+
*/
|
|
8
13
|
declare const getConfiguration: () => IntlayerConfig;
|
|
9
14
|
|
|
10
15
|
export { getConfiguration, intlayerConfiguration, intlayerContentConfiguration, intlayerIntlConfiguration, intlayerMiddlewareConfiguration };
|
|
@@ -1,102 +1,101 @@
|
|
|
1
|
+
import { extractEnvVariable } from './extractEnvVariable.mjs';
|
|
1
2
|
import { getEnvValue } from './utils.mjs';
|
|
3
|
+
const env = extractEnvVariable();
|
|
2
4
|
const intlayerIntlConfiguration = {
|
|
3
5
|
locales: getEnvValue(
|
|
4
|
-
|
|
6
|
+
env.intlayerIntlConfiguration.locales,
|
|
5
7
|
"array"
|
|
6
8
|
),
|
|
7
9
|
defaultLocale: getEnvValue(
|
|
8
|
-
|
|
10
|
+
env.intlayerIntlConfiguration.defaultLocale,
|
|
9
11
|
"string"
|
|
10
12
|
)
|
|
11
13
|
};
|
|
12
14
|
const intlayerMiddlewareConfiguration = {
|
|
13
15
|
headerName: getEnvValue(
|
|
14
|
-
|
|
16
|
+
env.intlayerMiddlewareConfiguration.headerName,
|
|
15
17
|
"string"
|
|
16
18
|
),
|
|
17
19
|
cookieName: getEnvValue(
|
|
18
|
-
|
|
20
|
+
env.intlayerMiddlewareConfiguration.cookieName,
|
|
19
21
|
"string"
|
|
20
22
|
),
|
|
21
23
|
prefixDefault: getEnvValue(
|
|
22
|
-
|
|
24
|
+
env.intlayerMiddlewareConfiguration.prefixDefault,
|
|
23
25
|
"boolean"
|
|
24
26
|
),
|
|
25
|
-
basePath: getEnvValue(
|
|
27
|
+
basePath: getEnvValue(
|
|
28
|
+
env.intlayerMiddlewareConfiguration.basePath,
|
|
29
|
+
"string"
|
|
30
|
+
),
|
|
26
31
|
serverSetCookie: getEnvValue(
|
|
27
|
-
|
|
32
|
+
env.intlayerMiddlewareConfiguration.serverSetCookie,
|
|
28
33
|
"string"
|
|
29
34
|
),
|
|
30
|
-
noPrefix: getEnvValue(
|
|
35
|
+
noPrefix: getEnvValue(
|
|
36
|
+
env.intlayerMiddlewareConfiguration.noPrefix,
|
|
37
|
+
"boolean"
|
|
38
|
+
)
|
|
31
39
|
};
|
|
32
40
|
const intlayerContentConfiguration = {
|
|
33
41
|
fileExtensions: getEnvValue(
|
|
34
|
-
|
|
42
|
+
env.intlayerContentConfiguration.fileExtensions,
|
|
35
43
|
"array"
|
|
36
44
|
),
|
|
37
|
-
baseDir: getEnvValue(
|
|
45
|
+
baseDir: getEnvValue(env.intlayerContentConfiguration.baseDir, "string"),
|
|
38
46
|
contentDirName: getEnvValue(
|
|
39
|
-
|
|
47
|
+
env.intlayerContentConfiguration.contentDirName,
|
|
48
|
+
"string"
|
|
49
|
+
),
|
|
50
|
+
contentDir: getEnvValue(
|
|
51
|
+
env.intlayerContentConfiguration.contentDir,
|
|
40
52
|
"string"
|
|
41
53
|
),
|
|
42
|
-
contentDir: getEnvValue("NEXT_PUBLIC_INTLAYER_CONTENT_DIR", "string"),
|
|
43
54
|
excludedPath: getEnvValue(
|
|
44
|
-
|
|
55
|
+
env.intlayerContentConfiguration.excludedPath,
|
|
45
56
|
"array"
|
|
46
57
|
),
|
|
47
58
|
resultDirName: getEnvValue(
|
|
48
|
-
|
|
59
|
+
env.intlayerContentConfiguration.resultDirName,
|
|
49
60
|
"string"
|
|
50
61
|
),
|
|
51
|
-
resultDir: getEnvValue(
|
|
62
|
+
resultDir: getEnvValue(env.intlayerContentConfiguration.resultDir, "string"),
|
|
52
63
|
moduleAugmentationDirName: getEnvValue(
|
|
53
|
-
|
|
64
|
+
env.intlayerContentConfiguration.moduleAugmentationDirName,
|
|
54
65
|
"string"
|
|
55
66
|
),
|
|
56
67
|
moduleAugmentationDir: getEnvValue(
|
|
57
|
-
|
|
58
|
-
"string"
|
|
59
|
-
),
|
|
60
|
-
bundleDirName: getEnvValue(
|
|
61
|
-
process.env.NEXT_PUBLIC_INTLAYER_BUNDLE_DIR_NAME,
|
|
62
|
-
"string"
|
|
63
|
-
),
|
|
64
|
-
bundleDir: getEnvValue(
|
|
65
|
-
process.env.NEXT_PUBLIC_INTLAYER_BUNDLE_DIR,
|
|
66
|
-
"string"
|
|
67
|
-
),
|
|
68
|
-
bundleFileExtension: getEnvValue(
|
|
69
|
-
process.env.NEXT_PUBLIC_INTLAYER_BUNDLE_FILE_EXTENSION,
|
|
68
|
+
env.intlayerContentConfiguration.moduleAugmentationDir,
|
|
70
69
|
"string"
|
|
71
70
|
),
|
|
72
71
|
dictionariesDirName: getEnvValue(
|
|
73
|
-
|
|
72
|
+
env.intlayerContentConfiguration.dictionariesDirName,
|
|
74
73
|
"string"
|
|
75
74
|
),
|
|
76
75
|
dictionariesDir: getEnvValue(
|
|
77
|
-
|
|
76
|
+
env.intlayerContentConfiguration.dictionariesDir,
|
|
78
77
|
"string"
|
|
79
78
|
),
|
|
80
79
|
typeDirName: getEnvValue(
|
|
81
|
-
|
|
80
|
+
env.intlayerContentConfiguration.typeDirName,
|
|
82
81
|
"string"
|
|
83
82
|
),
|
|
84
|
-
typesDir: getEnvValue(
|
|
83
|
+
typesDir: getEnvValue(env.intlayerContentConfiguration.typesDir, "string"),
|
|
85
84
|
mainDirName: getEnvValue(
|
|
86
|
-
|
|
85
|
+
env.intlayerContentConfiguration.mainDirName,
|
|
87
86
|
"string"
|
|
88
87
|
),
|
|
89
|
-
mainDir: getEnvValue(
|
|
88
|
+
mainDir: getEnvValue(env.intlayerContentConfiguration.mainDir, "string"),
|
|
90
89
|
watchedFilesPattern: getEnvValue(
|
|
91
|
-
|
|
90
|
+
env.intlayerContentConfiguration.watchedFilesPattern,
|
|
92
91
|
"array"
|
|
93
92
|
),
|
|
94
93
|
watchedFilesPatternWithPath: getEnvValue(
|
|
95
|
-
|
|
94
|
+
env.intlayerContentConfiguration.watchedFilesPatternWithPath,
|
|
96
95
|
"array"
|
|
97
96
|
),
|
|
98
97
|
outputFilesPatternWithPath: getEnvValue(
|
|
99
|
-
|
|
98
|
+
env.intlayerContentConfiguration.outputFilesPatternWithPath,
|
|
100
99
|
"string"
|
|
101
100
|
)
|
|
102
101
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/envVariables/getConfiguration.ts"],"sourcesContent":["import type {\n ContentConfig,\n InternationalizationConfig,\n IntlayerConfig,\n MiddlewareConfig,\n ServerSetCookieRule,\n} from '../types/config';\nimport type { Locales } from '../types/locales';\nimport { getEnvValue } from './utils';\n\nexport const intlayerIntlConfiguration: InternationalizationConfig = {\n locales: getEnvValue<Locales>(\n
|
|
1
|
+
{"version":3,"sources":["../../../src/envVariables/getConfiguration.ts"],"sourcesContent":["import type {\n ContentConfig,\n InternationalizationConfig,\n IntlayerConfig,\n MiddlewareConfig,\n ServerSetCookieRule,\n} from '../types/config';\nimport type { Locales } from '../types/locales';\nimport { extractEnvVariable } from './extractEnvVariable';\nimport { getEnvValue } from './utils';\n\nconst env = extractEnvVariable();\n\nexport const intlayerIntlConfiguration: InternationalizationConfig = {\n locales: getEnvValue<Locales>(\n env.intlayerIntlConfiguration.locales,\n 'array'\n )!,\n defaultLocale: getEnvValue<Locales>(\n env.intlayerIntlConfiguration.defaultLocale,\n 'string'\n )!,\n};\n\nexport const intlayerMiddlewareConfiguration: MiddlewareConfig = {\n headerName: getEnvValue(\n env.intlayerMiddlewareConfiguration.headerName,\n 'string'\n )!,\n cookieName: getEnvValue(\n env.intlayerMiddlewareConfiguration.cookieName,\n 'string'\n )!,\n prefixDefault: getEnvValue(\n env.intlayerMiddlewareConfiguration.prefixDefault,\n 'boolean'\n )!,\n basePath: getEnvValue(\n env.intlayerMiddlewareConfiguration.basePath,\n 'string'\n )!,\n serverSetCookie: getEnvValue<ServerSetCookieRule>(\n env.intlayerMiddlewareConfiguration.serverSetCookie,\n 'string'\n )!,\n noPrefix: getEnvValue(\n env.intlayerMiddlewareConfiguration.noPrefix,\n 'boolean'\n )!,\n};\n\nexport const intlayerContentConfiguration: ContentConfig = {\n fileExtensions: getEnvValue<string>(\n env.intlayerContentConfiguration.fileExtensions,\n 'array'\n )!,\n baseDir: getEnvValue(env.intlayerContentConfiguration.baseDir, 'string')!,\n contentDirName: getEnvValue(\n env.intlayerContentConfiguration.contentDirName,\n 'string'\n )!,\n contentDir: getEnvValue(\n env.intlayerContentConfiguration.contentDir,\n 'string'\n )!,\n excludedPath: getEnvValue<string>(\n env.intlayerContentConfiguration.excludedPath,\n 'array'\n )!,\n resultDirName: getEnvValue(\n env.intlayerContentConfiguration.resultDirName,\n 'string'\n )!,\n resultDir: getEnvValue(env.intlayerContentConfiguration.resultDir, 'string')!,\n moduleAugmentationDirName: getEnvValue(\n env.intlayerContentConfiguration.moduleAugmentationDirName,\n 'string'\n )!,\n moduleAugmentationDir: getEnvValue(\n env.intlayerContentConfiguration.moduleAugmentationDir,\n 'string'\n )!,\n dictionariesDirName: getEnvValue(\n env.intlayerContentConfiguration.dictionariesDirName,\n 'string'\n )!,\n dictionariesDir: getEnvValue(\n env.intlayerContentConfiguration.dictionariesDir,\n 'string'\n )!,\n typeDirName: getEnvValue(\n env.intlayerContentConfiguration.typeDirName,\n 'string'\n )!,\n typesDir: getEnvValue(env.intlayerContentConfiguration.typesDir, 'string')!,\n mainDirName: getEnvValue(\n env.intlayerContentConfiguration.mainDirName,\n 'string'\n )!,\n mainDir: getEnvValue(env.intlayerContentConfiguration.mainDir, 'string')!,\n watchedFilesPattern: getEnvValue<string>(\n env.intlayerContentConfiguration.watchedFilesPattern,\n 'array'\n )!,\n watchedFilesPatternWithPath: getEnvValue<string>(\n env.intlayerContentConfiguration.watchedFilesPatternWithPath,\n 'array'\n )!,\n outputFilesPatternWithPath: getEnvValue(\n env.intlayerContentConfiguration.outputFilesPatternWithPath,\n 'string'\n )!,\n};\n\nexport const intlayerConfiguration: IntlayerConfig = {\n internationalization: intlayerIntlConfiguration,\n middleware: intlayerMiddlewareConfiguration,\n content: intlayerContentConfiguration,\n};\n\n/**\n * Get all configuration values using environment variables\n * Can be used in the client side as the server side\n * To use it, be sure to have the environment variables set\n */\nexport const getConfiguration = (): IntlayerConfig => intlayerConfiguration;\n"],"mappings":"AAQA,SAAS,0BAA0B;AACnC,SAAS,mBAAmB;AAE5B,MAAM,MAAM,mBAAmB;AAExB,MAAM,4BAAwD;AAAA,EACnE,SAAS;AAAA,IACP,IAAI,0BAA0B;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,IAAI,0BAA0B;AAAA,IAC9B;AAAA,EACF;AACF;AAEO,MAAM,kCAAoD;AAAA,EAC/D,YAAY;AAAA,IACV,IAAI,gCAAgC;AAAA,IACpC;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,IAAI,gCAAgC;AAAA,IACpC;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,IAAI,gCAAgC;AAAA,IACpC;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,IAAI,gCAAgC;AAAA,IACpC;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,IAAI,gCAAgC;AAAA,IACpC;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,IAAI,gCAAgC;AAAA,IACpC;AAAA,EACF;AACF;AAEO,MAAM,+BAA8C;AAAA,EACzD,gBAAgB;AAAA,IACd,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,SAAS,YAAY,IAAI,6BAA6B,SAAS,QAAQ;AAAA,EACvE,gBAAgB;AAAA,IACd,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,cAAc;AAAA,IACZ,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,eAAe;AAAA,IACb,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,WAAW,YAAY,IAAI,6BAA6B,WAAW,QAAQ;AAAA,EAC3E,2BAA2B;AAAA,IACzB,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,uBAAuB;AAAA,IACrB,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,qBAAqB;AAAA,IACnB,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,UAAU,YAAY,IAAI,6BAA6B,UAAU,QAAQ;AAAA,EACzE,aAAa;AAAA,IACX,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,SAAS,YAAY,IAAI,6BAA6B,SAAS,QAAQ;AAAA,EACvE,qBAAqB;AAAA,IACnB,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,6BAA6B;AAAA,IAC3B,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AAAA,EACA,4BAA4B;AAAA,IAC1B,IAAI,6BAA6B;AAAA,IACjC;AAAA,EACF;AACF;AAEO,MAAM,wBAAwC;AAAA,EACnD,sBAAsB;AAAA,EACtB,YAAY;AAAA,EACZ,SAAS;AACX;AAOO,MAAM,mBAAmB,MAAsB;","names":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
declare function getEnvValue(value: unknown, type: 'boolean'): boolean | undefined;
|
|
2
|
-
declare function getEnvValue(value: unknown, type: 'number'): number | undefined;
|
|
3
|
-
declare function getEnvValue<T extends string>(value: unknown, type: 'string'): T | undefined;
|
|
4
|
-
declare function getEnvValue<T>(value: unknown, type: 'object'): T | undefined;
|
|
5
|
-
declare function getEnvValue<T>(value: unknown, type: 'array'): T[] | undefined;
|
|
1
|
+
declare function getEnvValue(value: unknown, type: 'boolean', verbose?: boolean): boolean | undefined;
|
|
2
|
+
declare function getEnvValue(value: unknown, type: 'number', verbose?: boolean): number | undefined;
|
|
3
|
+
declare function getEnvValue<T extends string>(value: unknown, type: 'string', verbose?: boolean): T | undefined;
|
|
4
|
+
declare function getEnvValue<T>(value: unknown, type: 'object', verbose?: boolean): T | undefined;
|
|
5
|
+
declare function getEnvValue<T>(value: unknown, type: 'array', verbose?: boolean): T[] | undefined;
|
|
6
6
|
|
|
7
7
|
export { getEnvValue };
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
function getEnvValue(value, type) {
|
|
2
|
-
if (value === void 0) {
|
|
3
|
-
return void 0;
|
|
4
|
-
}
|
|
1
|
+
function getEnvValue(value, type, verbose = false) {
|
|
5
2
|
try {
|
|
6
3
|
switch (type) {
|
|
7
4
|
case "boolean":
|
|
@@ -9,7 +6,7 @@ function getEnvValue(value, type) {
|
|
|
9
6
|
case "number":
|
|
10
7
|
return Number(value);
|
|
11
8
|
case "string":
|
|
12
|
-
return value;
|
|
9
|
+
return value ?? "";
|
|
13
10
|
case "object":
|
|
14
11
|
case "array":
|
|
15
12
|
return JSON.parse(value);
|
|
@@ -17,7 +14,11 @@ function getEnvValue(value, type) {
|
|
|
17
14
|
return void 0;
|
|
18
15
|
}
|
|
19
16
|
} catch (error) {
|
|
20
|
-
|
|
17
|
+
if (verbose) {
|
|
18
|
+
console.error(
|
|
19
|
+
`Error parsing environment variable, parsing : ${(value ?? "").toString()}`
|
|
20
|
+
);
|
|
21
|
+
}
|
|
21
22
|
return void 0;
|
|
22
23
|
}
|
|
23
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/envVariables/utils.ts"],"sourcesContent":["function getEnvValue(value: unknown
|
|
1
|
+
{"version":3,"sources":["../../../src/envVariables/utils.ts"],"sourcesContent":["function getEnvValue(\n value: unknown,\n type: 'boolean',\n verbose?: boolean\n): boolean | undefined;\nfunction getEnvValue(\n value: unknown,\n type: 'number',\n verbose?: boolean\n): number | undefined;\nfunction getEnvValue<T extends string>(\n value: unknown,\n type: 'string',\n verbose?: boolean\n): T | undefined;\nfunction getEnvValue<T>(\n value: unknown,\n type: 'object',\n verbose?: boolean\n): T | undefined;\nfunction getEnvValue<T>(\n value: unknown,\n type: 'array',\n verbose?: boolean\n): T[] | undefined;\nfunction getEnvValue(\n value: unknown,\n type: 'string' | 'boolean' | 'number' | 'object' | 'array',\n verbose = false\n) {\n try {\n switch (type) {\n case 'boolean':\n // Convert string to boolean explicitly\n return value === 'true' || value === '1';\n\n case 'number':\n // Convert string to number, return undefined if conversion fails\n return Number(value);\n\n case 'string':\n // Return the string directly\n return value ?? '';\n\n case 'object':\n case 'array':\n // Attempt to parse the value as JSON\n return JSON.parse(value as string);\n\n default:\n return undefined;\n }\n } catch (error) {\n // Log error and return undefined if any error occurs during parsing\n if (verbose) {\n console.error(\n `Error parsing environment variable, parsing : ${((value ?? '') as string).toString()}`\n );\n }\n return undefined;\n }\n}\n\nexport { getEnvValue };\n"],"mappings":"AAyBA,SAAS,YACP,OACA,MACA,UAAU,OACV;AACA,MAAI;AACF,YAAQ,MAAM;AAAA,MACZ,KAAK;AAEH,eAAO,UAAU,UAAU,UAAU;AAAA,MAEvC,KAAK;AAEH,eAAO,OAAO,KAAK;AAAA,MAErB,KAAK;AAEH,eAAO,SAAS;AAAA,MAElB,KAAK;AAAA,MACL,KAAK;AAEH,eAAO,KAAK,MAAM,KAAe;AAAA,MAEnC;AACE,eAAO;AAAA,IACX;AAAA,EACF,SAAS,OAAO;AAEd,QAAI,SAAS;AACX,cAAQ;AAAA,QACN,kDAAmD,SAAS,IAAe,SAAS,CAAC;AAAA,MACvF;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;","names":[]}
|
package/dist/esm/index.d.mts
CHANGED
|
@@ -3,3 +3,4 @@ export { BaseContentConfig, BaseDerivedConfig, ContentConfig, CustomIntlayerConf
|
|
|
3
3
|
export { Locales, LocalesValues } from './types/locales.mjs';
|
|
4
4
|
export { getConfiguration as getClientConfiguration, intlayerConfiguration, intlayerContentConfiguration, intlayerIntlConfiguration, intlayerMiddlewareConfiguration } from './envVariables/getConfiguration.mjs';
|
|
5
5
|
export { formatEnvVariable } from './envVariables/formatEnvVariable.mjs';
|
|
6
|
+
import './envVariables/detectPlatform.mjs';
|