MCPcopy Index your code
hub / github.com/NativeScript/NativeScript / parseEnvFlags

Function parseEnvFlags

packages/webpack5/src/cli/parseEnvFlags.ts:5–39  ·  view source on GitHub ↗
(flags: string[])

Source from the content-addressed store, hash-verified

3const ENV_FLAG_RE = /--env\.(\w+)(?:=(.+))?/;
4
5export function parseEnvFlags(flags: string[]): IWebpackEnv {
6 const envFlags = flags.filter((flag) => flag.includes('--env.'));
7
8 const env = {};
9
10 envFlags.map((flag) => {
11 let [_, name, v] = ENV_FLAG_RE.exec(flag);
12 let value: any = v;
13
14 // convert --env.foo to --env.foo=true
15 if (value === undefined) {
16 value = true;
17 }
18
19 // convert true/false to boolean
20 if (value === 'true' || value === 'false') {
21 value = value === 'true';
22 }
23
24 // convert numbers
25 if (!isNaN(value) && !isNaN(parseFloat(value))) {
26 value = +value;
27 }
28
29 // duplicate key/name - convert to array
30 if (name in env && value) {
31 const orig = Array.isArray(env[name]) ? env[name] : [env[name]];
32 env[name] = [...orig, value];
33 } else {
34 env[name] = value;
35 }
36 });
37
38 return env;
39}

Callers 2

index.tsFile · 0.90

Calls 3

includesMethod · 0.80
mapMethod · 0.65
filterMethod · 0.45

Tested by

no test coverage detected