@verdaccio/config 9.0.0-next-9.13 → 9.0.0-next-9.15
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/build/config.d.ts +0 -4
- package/build/config.js +1 -6
- package/build/config.js.map +1 -1
- package/build/config.mjs +1 -6
- package/build/config.mjs.map +1 -1
- package/build/parse.d.ts +3 -5
- package/build/parse.js +9 -31
- package/build/parse.js.map +1 -1
- package/build/parse.mjs +9 -31
- package/build/parse.mjs.map +1 -1
- package/package.json +4 -4
- package/build/_virtual/_rolldown/runtime.mjs +0 -7
package/build/config.d.ts
CHANGED
|
@@ -16,10 +16,6 @@ declare class Config implements AppConfig {
|
|
|
16
16
|
store: any;
|
|
17
17
|
server_id: string;
|
|
18
18
|
configPath: string;
|
|
19
|
-
/**
|
|
20
|
-
* @deprecated use configPath or config.getConfigPath();
|
|
21
|
-
*/
|
|
22
|
-
self_path: string;
|
|
23
19
|
storage: string | void;
|
|
24
20
|
plugins: string | void | null;
|
|
25
21
|
security: Security;
|
package/build/config.js
CHANGED
|
@@ -37,10 +37,6 @@ var Config = class {
|
|
|
37
37
|
store;
|
|
38
38
|
server_id;
|
|
39
39
|
configPath;
|
|
40
|
-
/**
|
|
41
|
-
* @deprecated use configPath or config.getConfigPath();
|
|
42
|
-
*/
|
|
43
|
-
self_path;
|
|
44
40
|
storage;
|
|
45
41
|
plugins;
|
|
46
42
|
security;
|
|
@@ -52,11 +48,10 @@ var Config = class {
|
|
|
52
48
|
const self = this;
|
|
53
49
|
this.storage = process.env.VERDACCIO_STORAGE_PATH || config.storage;
|
|
54
50
|
if (!config.configPath) {
|
|
55
|
-
config.configPath = config.config_path
|
|
51
|
+
config.configPath = config.config_path;
|
|
56
52
|
if (!config.configPath) throw new Error("configPath property is required");
|
|
57
53
|
}
|
|
58
54
|
this.configPath = config.configPath;
|
|
59
|
-
this.self_path = this.configPath;
|
|
60
55
|
debug$1("config path: %s", this.configPath);
|
|
61
56
|
this.plugins = config.plugins;
|
|
62
57
|
this.security = (0, lodash_es.merge)(require_security.defaultSecurity, config.security);
|
package/build/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","names":[],"sources":["../src/config.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport { isEmpty, merge } from 'lodash-es';\nimport assert from 'node:assert';\n\nimport { APP_ERROR, authUtils, cryptoUtils, validationUtils } from '@verdaccio/core';\nimport type {\n Config as AppConfig,\n AuthConf,\n ConfigYaml,\n FlagsConfig,\n PackageAccess,\n PackageList,\n RateLimit,\n Security,\n ServerSettingsConf,\n} from '@verdaccio/types';\n\nimport { getUserAgent } from './agent';\nimport { normalisePackageAccess } from './package-access';\nimport { defaultSecurity } from './security';\nimport defaultServerSettings from './serverSettings';\nimport { generateRandomSecretKey } from './token';\nimport { sanityCheckUplinksProps, uplinkSanityCheck } from './uplinks';\n\nconst strategicConfigProps = ['uplinks', 'packages'];\nconst allowedEnvConfig = ['http_proxy', 'https_proxy', 'no_proxy'];\nconst debug = buildDebug('verdaccio:config');\n\nexport const WEB_TITLE = 'Verdaccio';\n\n// we limit max 1000 request per 15 minutes on user endpoints\nexport const defaultUserRateLimiting = {\n windowMs: 15 * 60 * 1000, // 15 minutes\n max: 1000,\n};\n\nconst TOKEN_VALID_LENGTH = 32;\n\n/**\n * Coordinates the application configuration\n */\nclass Config implements AppConfig {\n public user_agent: string | undefined;\n public uplinks: any;\n public packages: PackageList;\n public users: any;\n public auth: AuthConf;\n public store: any;\n public server_id: string;\n public configPath: string;\n
|
|
1
|
+
{"version":3,"file":"config.js","names":[],"sources":["../src/config.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport { isEmpty, merge } from 'lodash-es';\nimport assert from 'node:assert';\n\nimport { APP_ERROR, authUtils, cryptoUtils, validationUtils } from '@verdaccio/core';\nimport type {\n Config as AppConfig,\n AuthConf,\n ConfigYaml,\n FlagsConfig,\n PackageAccess,\n PackageList,\n RateLimit,\n Security,\n ServerSettingsConf,\n} from '@verdaccio/types';\n\nimport { getUserAgent } from './agent';\nimport { normalisePackageAccess } from './package-access';\nimport { defaultSecurity } from './security';\nimport defaultServerSettings from './serverSettings';\nimport { generateRandomSecretKey } from './token';\nimport { sanityCheckUplinksProps, uplinkSanityCheck } from './uplinks';\n\nconst strategicConfigProps = ['uplinks', 'packages'];\nconst allowedEnvConfig = ['http_proxy', 'https_proxy', 'no_proxy'];\nconst debug = buildDebug('verdaccio:config');\n\nexport const WEB_TITLE = 'Verdaccio';\n\n// we limit max 1000 request per 15 minutes on user endpoints\nexport const defaultUserRateLimiting = {\n windowMs: 15 * 60 * 1000, // 15 minutes\n max: 1000,\n};\n\nconst TOKEN_VALID_LENGTH = 32;\n\n/**\n * Coordinates the application configuration\n */\nclass Config implements AppConfig {\n public user_agent: string | undefined;\n public uplinks: any;\n public packages: PackageList;\n public users: any;\n public auth: AuthConf;\n public store: any;\n public server_id: string;\n public configPath: string;\n public storage: string | void;\n\n public plugins: string | void | null;\n public security: Security;\n public server: ServerSettingsConf;\n // @ts-ignore\n public secret: string;\n public flags: FlagsConfig;\n public userRateLimit: RateLimit;\n public constructor(config: ConfigYaml & { config_path: string }) {\n const self = this;\n this.storage = process.env.VERDACCIO_STORAGE_PATH || config.storage;\n if (!config.configPath) {\n config.configPath = config.config_path;\n if (!config.configPath) {\n throw new Error('configPath property is required');\n }\n }\n this.configPath = config.configPath;\n debug('config path: %s', this.configPath);\n this.plugins = config.plugins;\n this.security = merge(defaultSecurity, config.security);\n this.server = { ...defaultServerSettings, ...config.server };\n this.flags = {\n changePassword: config.flags?.changePassword ?? false,\n webLogin: config.flags?.webLogin ?? false,\n createUser: config.flags?.createUser ?? false,\n };\n this.user_agent = config.user_agent;\n\n for (const configProp in config) {\n if (self[configProp] == null) {\n self[configProp] = config[configProp];\n }\n }\n\n if (typeof this.user_agent === 'undefined') {\n // by default user agent is hidden\n debug('set default user agent');\n this.user_agent = getUserAgent(false);\n }\n\n this.userRateLimit = { ...defaultUserRateLimiting, ...config?.userRateLimit };\n\n // some weird shell scripts are valid yaml files parsed as string\n assert(validationUtils.isObject(config), APP_ERROR.CONFIG_NOT_VALID);\n\n // sanity check for strategic config properties\n strategicConfigProps.forEach(function (x): void {\n if (self[x] == null) {\n self[x] = {};\n }\n\n assert(validationUtils.isObject(self[x]), `CONFIG: bad \"${x}\" value (object expected)`);\n });\n\n this.uplinks = sanityCheckUplinksProps(uplinkSanityCheck(this.uplinks));\n this.packages = normalisePackageAccess(self.packages);\n\n // loading these from ENV if aren't in config\n allowedEnvConfig.forEach((envConf): void => {\n if (!(envConf in self)) {\n self[envConf] = process.env[envConf] || process.env[envConf.toUpperCase()];\n }\n });\n\n // unique identifier of self server (or a cluster), used to avoid loops\n // @ts-ignore\n if (!this.server_id) {\n this.server_id = cryptoUtils.generateRandomHexString(6);\n }\n }\n\n public getConfigPath() {\n return this.configPath;\n }\n\n /**\n * Check for package spec\n * @param pkgName - package name\n * @returns package access\n * @deprecated use core.authUtils instead\n */\n public getMatchedPackagesSpec(pkgName: string): PackageAccess | void {\n // TODO: remove this method and replace by library utils\n return authUtils.getMatchedPackagesSpec(pkgName, this.packages);\n }\n\n /**\n * Verify if the secret complies with the required structure.\n * The secret must be exactly 32 characters long for aes-256-ctr encryption.\n * If no secret is provided, a new one will be generated.\n * @secret external secret key\n */\n public checkSecretKey(secret?: string): string {\n debug('checking secret key init');\n if (typeof secret === 'string' && isEmpty(secret) === false) {\n debug('checking secret key length %s', secret.length);\n if (secret.length !== TOKEN_VALID_LENGTH) {\n throw new Error(\n `Invalid storage secret key length, must be ${TOKEN_VALID_LENGTH} characters long but is ${secret.length}. ` +\n `Please generate a new one. Learn more at https://verdaccio.org/docs/configuration/#.verdaccio-db`\n );\n }\n debug('detected valid secret key length %s', secret.length);\n this.secret = secret;\n return this.secret;\n } else {\n debug('generating a new secret key');\n this.secret = generateRandomSecretKey();\n debug('generated a new secret key length %s', this.secret?.length);\n return this.secret;\n }\n }\n}\n\nexport { Config };\n"],"mappings":";;;;;;;;;;;;;;AAwBA,IAAM,uBAAuB,CAAC,WAAW,WAAW;AACpD,IAAM,mBAAmB;CAAC;CAAc;CAAe;CAAW;AAClE,IAAM,WAAA,GAAA,MAAA,SAAmB,mBAAmB;AAE5C,IAAa,YAAY;AAGzB,IAAa,0BAA0B;CACrC,UAAU,MAAU;CACpB,KAAK;CACN;AAED,IAAM,qBAAqB;;;;AAK3B,IAAM,SAAN,MAAkC;CAChC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CAEA;CACA;CACA;CACA,YAAmB,QAA8C;EAC/D,MAAM,OAAO;AACb,OAAK,UAAU,QAAQ,IAAI,0BAA0B,OAAO;AAC5D,MAAI,CAAC,OAAO,YAAY;AACtB,UAAO,aAAa,OAAO;AAC3B,OAAI,CAAC,OAAO,WACV,OAAM,IAAI,MAAM,kCAAkC;;AAGtD,OAAK,aAAa,OAAO;AACzB,UAAM,mBAAmB,KAAK,WAAW;AACzC,OAAK,UAAU,OAAO;AACtB,OAAK,YAAA,GAAA,UAAA,OAAiB,iBAAA,iBAAiB,OAAO,SAAS;AACvD,OAAK,SAAS;GAAE,GAAG,uBAAA;GAAuB,GAAG,OAAO;GAAQ;AAC5D,OAAK,QAAQ;GACX,gBAAgB,OAAO,OAAO,kBAAkB;GAChD,UAAU,OAAO,OAAO,YAAY;GACpC,YAAY,OAAO,OAAO,cAAc;GACzC;AACD,OAAK,aAAa,OAAO;AAEzB,OAAK,MAAM,cAAc,OACvB,KAAI,KAAK,eAAe,KACtB,MAAK,cAAc,OAAO;AAI9B,MAAI,OAAO,KAAK,eAAe,aAAa;AAE1C,WAAM,yBAAyB;AAC/B,QAAK,aAAa,cAAA,aAAa,MAAM;;AAGvC,OAAK,gBAAgB;GAAE,GAAG;GAAyB,GAAG,QAAQ;GAAe;AAG7E,GAAA,GAAA,YAAA,SAAO,gBAAA,gBAAgB,SAAS,OAAO,EAAE,gBAAA,UAAU,iBAAiB;AAGpE,uBAAqB,QAAQ,SAAU,GAAS;AAC9C,OAAI,KAAK,MAAM,KACb,MAAK,KAAK,EAAE;AAGd,IAAA,GAAA,YAAA,SAAO,gBAAA,gBAAgB,SAAS,KAAK,GAAG,EAAE,gBAAgB,EAAE,2BAA2B;IACvF;AAEF,OAAK,UAAU,gBAAA,wBAAwB,gBAAA,kBAAkB,KAAK,QAAQ,CAAC;AACvE,OAAK,WAAW,uBAAA,uBAAuB,KAAK,SAAS;AAGrD,mBAAiB,SAAS,YAAkB;AAC1C,OAAI,EAAE,WAAW,MACf,MAAK,WAAW,QAAQ,IAAI,YAAY,QAAQ,IAAI,QAAQ,aAAa;IAE3E;AAIF,MAAI,CAAC,KAAK,UACR,MAAK,YAAY,gBAAA,YAAY,wBAAwB,EAAE;;CAI3D,gBAAuB;AACrB,SAAO,KAAK;;;;;;;;CASd,uBAA8B,SAAuC;AAEnE,SAAO,gBAAA,UAAU,uBAAuB,SAAS,KAAK,SAAS;;;;;;;;CASjE,eAAsB,QAAyB;AAC7C,UAAM,2BAA2B;AACjC,MAAI,OAAO,WAAW,aAAA,GAAA,UAAA,SAAoB,OAAO,KAAK,OAAO;AAC3D,WAAM,iCAAiC,OAAO,OAAO;AACrD,OAAI,OAAO,WAAW,mBACpB,OAAM,IAAI,MACR,8CAA8C,mBAAmB,0BAA0B,OAAO,OAAO,oGAE1G;AAEH,WAAM,uCAAuC,OAAO,OAAO;AAC3D,QAAK,SAAS;AACd,UAAO,KAAK;SACP;AACL,WAAM,8BAA8B;AACpC,QAAK,SAAS,cAAA,yBAAyB;AACvC,WAAM,wCAAwC,KAAK,QAAQ,OAAO;AAClE,UAAO,KAAK"}
|
package/build/config.mjs
CHANGED
|
@@ -34,10 +34,6 @@ var Config = class {
|
|
|
34
34
|
store;
|
|
35
35
|
server_id;
|
|
36
36
|
configPath;
|
|
37
|
-
/**
|
|
38
|
-
* @deprecated use configPath or config.getConfigPath();
|
|
39
|
-
*/
|
|
40
|
-
self_path;
|
|
41
37
|
storage;
|
|
42
38
|
plugins;
|
|
43
39
|
security;
|
|
@@ -49,11 +45,10 @@ var Config = class {
|
|
|
49
45
|
const self = this;
|
|
50
46
|
this.storage = process.env.VERDACCIO_STORAGE_PATH || config.storage;
|
|
51
47
|
if (!config.configPath) {
|
|
52
|
-
config.configPath = config.config_path
|
|
48
|
+
config.configPath = config.config_path;
|
|
53
49
|
if (!config.configPath) throw new Error("configPath property is required");
|
|
54
50
|
}
|
|
55
51
|
this.configPath = config.configPath;
|
|
56
|
-
this.self_path = this.configPath;
|
|
57
52
|
debug("config path: %s", this.configPath);
|
|
58
53
|
this.plugins = config.plugins;
|
|
59
54
|
this.security = merge(defaultSecurity, config.security);
|
package/build/config.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.mjs","names":[],"sources":["../src/config.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport { isEmpty, merge } from 'lodash-es';\nimport assert from 'node:assert';\n\nimport { APP_ERROR, authUtils, cryptoUtils, validationUtils } from '@verdaccio/core';\nimport type {\n Config as AppConfig,\n AuthConf,\n ConfigYaml,\n FlagsConfig,\n PackageAccess,\n PackageList,\n RateLimit,\n Security,\n ServerSettingsConf,\n} from '@verdaccio/types';\n\nimport { getUserAgent } from './agent';\nimport { normalisePackageAccess } from './package-access';\nimport { defaultSecurity } from './security';\nimport defaultServerSettings from './serverSettings';\nimport { generateRandomSecretKey } from './token';\nimport { sanityCheckUplinksProps, uplinkSanityCheck } from './uplinks';\n\nconst strategicConfigProps = ['uplinks', 'packages'];\nconst allowedEnvConfig = ['http_proxy', 'https_proxy', 'no_proxy'];\nconst debug = buildDebug('verdaccio:config');\n\nexport const WEB_TITLE = 'Verdaccio';\n\n// we limit max 1000 request per 15 minutes on user endpoints\nexport const defaultUserRateLimiting = {\n windowMs: 15 * 60 * 1000, // 15 minutes\n max: 1000,\n};\n\nconst TOKEN_VALID_LENGTH = 32;\n\n/**\n * Coordinates the application configuration\n */\nclass Config implements AppConfig {\n public user_agent: string | undefined;\n public uplinks: any;\n public packages: PackageList;\n public users: any;\n public auth: AuthConf;\n public store: any;\n public server_id: string;\n public configPath: string;\n
|
|
1
|
+
{"version":3,"file":"config.mjs","names":[],"sources":["../src/config.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport { isEmpty, merge } from 'lodash-es';\nimport assert from 'node:assert';\n\nimport { APP_ERROR, authUtils, cryptoUtils, validationUtils } from '@verdaccio/core';\nimport type {\n Config as AppConfig,\n AuthConf,\n ConfigYaml,\n FlagsConfig,\n PackageAccess,\n PackageList,\n RateLimit,\n Security,\n ServerSettingsConf,\n} from '@verdaccio/types';\n\nimport { getUserAgent } from './agent';\nimport { normalisePackageAccess } from './package-access';\nimport { defaultSecurity } from './security';\nimport defaultServerSettings from './serverSettings';\nimport { generateRandomSecretKey } from './token';\nimport { sanityCheckUplinksProps, uplinkSanityCheck } from './uplinks';\n\nconst strategicConfigProps = ['uplinks', 'packages'];\nconst allowedEnvConfig = ['http_proxy', 'https_proxy', 'no_proxy'];\nconst debug = buildDebug('verdaccio:config');\n\nexport const WEB_TITLE = 'Verdaccio';\n\n// we limit max 1000 request per 15 minutes on user endpoints\nexport const defaultUserRateLimiting = {\n windowMs: 15 * 60 * 1000, // 15 minutes\n max: 1000,\n};\n\nconst TOKEN_VALID_LENGTH = 32;\n\n/**\n * Coordinates the application configuration\n */\nclass Config implements AppConfig {\n public user_agent: string | undefined;\n public uplinks: any;\n public packages: PackageList;\n public users: any;\n public auth: AuthConf;\n public store: any;\n public server_id: string;\n public configPath: string;\n public storage: string | void;\n\n public plugins: string | void | null;\n public security: Security;\n public server: ServerSettingsConf;\n // @ts-ignore\n public secret: string;\n public flags: FlagsConfig;\n public userRateLimit: RateLimit;\n public constructor(config: ConfigYaml & { config_path: string }) {\n const self = this;\n this.storage = process.env.VERDACCIO_STORAGE_PATH || config.storage;\n if (!config.configPath) {\n config.configPath = config.config_path;\n if (!config.configPath) {\n throw new Error('configPath property is required');\n }\n }\n this.configPath = config.configPath;\n debug('config path: %s', this.configPath);\n this.plugins = config.plugins;\n this.security = merge(defaultSecurity, config.security);\n this.server = { ...defaultServerSettings, ...config.server };\n this.flags = {\n changePassword: config.flags?.changePassword ?? false,\n webLogin: config.flags?.webLogin ?? false,\n createUser: config.flags?.createUser ?? false,\n };\n this.user_agent = config.user_agent;\n\n for (const configProp in config) {\n if (self[configProp] == null) {\n self[configProp] = config[configProp];\n }\n }\n\n if (typeof this.user_agent === 'undefined') {\n // by default user agent is hidden\n debug('set default user agent');\n this.user_agent = getUserAgent(false);\n }\n\n this.userRateLimit = { ...defaultUserRateLimiting, ...config?.userRateLimit };\n\n // some weird shell scripts are valid yaml files parsed as string\n assert(validationUtils.isObject(config), APP_ERROR.CONFIG_NOT_VALID);\n\n // sanity check for strategic config properties\n strategicConfigProps.forEach(function (x): void {\n if (self[x] == null) {\n self[x] = {};\n }\n\n assert(validationUtils.isObject(self[x]), `CONFIG: bad \"${x}\" value (object expected)`);\n });\n\n this.uplinks = sanityCheckUplinksProps(uplinkSanityCheck(this.uplinks));\n this.packages = normalisePackageAccess(self.packages);\n\n // loading these from ENV if aren't in config\n allowedEnvConfig.forEach((envConf): void => {\n if (!(envConf in self)) {\n self[envConf] = process.env[envConf] || process.env[envConf.toUpperCase()];\n }\n });\n\n // unique identifier of self server (or a cluster), used to avoid loops\n // @ts-ignore\n if (!this.server_id) {\n this.server_id = cryptoUtils.generateRandomHexString(6);\n }\n }\n\n public getConfigPath() {\n return this.configPath;\n }\n\n /**\n * Check for package spec\n * @param pkgName - package name\n * @returns package access\n * @deprecated use core.authUtils instead\n */\n public getMatchedPackagesSpec(pkgName: string): PackageAccess | void {\n // TODO: remove this method and replace by library utils\n return authUtils.getMatchedPackagesSpec(pkgName, this.packages);\n }\n\n /**\n * Verify if the secret complies with the required structure.\n * The secret must be exactly 32 characters long for aes-256-ctr encryption.\n * If no secret is provided, a new one will be generated.\n * @secret external secret key\n */\n public checkSecretKey(secret?: string): string {\n debug('checking secret key init');\n if (typeof secret === 'string' && isEmpty(secret) === false) {\n debug('checking secret key length %s', secret.length);\n if (secret.length !== TOKEN_VALID_LENGTH) {\n throw new Error(\n `Invalid storage secret key length, must be ${TOKEN_VALID_LENGTH} characters long but is ${secret.length}. ` +\n `Please generate a new one. Learn more at https://verdaccio.org/docs/configuration/#.verdaccio-db`\n );\n }\n debug('detected valid secret key length %s', secret.length);\n this.secret = secret;\n return this.secret;\n } else {\n debug('generating a new secret key');\n this.secret = generateRandomSecretKey();\n debug('generated a new secret key length %s', this.secret?.length);\n return this.secret;\n }\n }\n}\n\nexport { Config };\n"],"mappings":";;;;;;;;;;;AAwBA,IAAM,uBAAuB,CAAC,WAAW,WAAW;AACpD,IAAM,mBAAmB;CAAC;CAAc;CAAe;CAAW;AAClE,IAAM,QAAQ,WAAW,mBAAmB;AAE5C,IAAa,YAAY;AAGzB,IAAa,0BAA0B;CACrC,UAAU,MAAU;CACpB,KAAK;CACN;AAED,IAAM,qBAAqB;;;;AAK3B,IAAM,SAAN,MAAkC;CAChC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CAEA;CACA;CACA;CACA,YAAmB,QAA8C;EAC/D,MAAM,OAAO;AACb,OAAK,UAAU,QAAQ,IAAI,0BAA0B,OAAO;AAC5D,MAAI,CAAC,OAAO,YAAY;AACtB,UAAO,aAAa,OAAO;AAC3B,OAAI,CAAC,OAAO,WACV,OAAM,IAAI,MAAM,kCAAkC;;AAGtD,OAAK,aAAa,OAAO;AACzB,QAAM,mBAAmB,KAAK,WAAW;AACzC,OAAK,UAAU,OAAO;AACtB,OAAK,WAAW,MAAM,iBAAiB,OAAO,SAAS;AACvD,OAAK,SAAS;GAAE,GAAG;GAAuB,GAAG,OAAO;GAAQ;AAC5D,OAAK,QAAQ;GACX,gBAAgB,OAAO,OAAO,kBAAkB;GAChD,UAAU,OAAO,OAAO,YAAY;GACpC,YAAY,OAAO,OAAO,cAAc;GACzC;AACD,OAAK,aAAa,OAAO;AAEzB,OAAK,MAAM,cAAc,OACvB,KAAI,KAAK,eAAe,KACtB,MAAK,cAAc,OAAO;AAI9B,MAAI,OAAO,KAAK,eAAe,aAAa;AAE1C,SAAM,yBAAyB;AAC/B,QAAK,aAAa,aAAa,MAAM;;AAGvC,OAAK,gBAAgB;GAAE,GAAG;GAAyB,GAAG,QAAQ;GAAe;AAG7E,SAAO,gBAAgB,SAAS,OAAO,EAAE,UAAU,iBAAiB;AAGpE,uBAAqB,QAAQ,SAAU,GAAS;AAC9C,OAAI,KAAK,MAAM,KACb,MAAK,KAAK,EAAE;AAGd,UAAO,gBAAgB,SAAS,KAAK,GAAG,EAAE,gBAAgB,EAAE,2BAA2B;IACvF;AAEF,OAAK,UAAU,wBAAwB,kBAAkB,KAAK,QAAQ,CAAC;AACvE,OAAK,WAAW,uBAAuB,KAAK,SAAS;AAGrD,mBAAiB,SAAS,YAAkB;AAC1C,OAAI,EAAE,WAAW,MACf,MAAK,WAAW,QAAQ,IAAI,YAAY,QAAQ,IAAI,QAAQ,aAAa;IAE3E;AAIF,MAAI,CAAC,KAAK,UACR,MAAK,YAAY,YAAY,wBAAwB,EAAE;;CAI3D,gBAAuB;AACrB,SAAO,KAAK;;;;;;;;CASd,uBAA8B,SAAuC;AAEnE,SAAO,UAAU,uBAAuB,SAAS,KAAK,SAAS;;;;;;;;CASjE,eAAsB,QAAyB;AAC7C,QAAM,2BAA2B;AACjC,MAAI,OAAO,WAAW,YAAY,QAAQ,OAAO,KAAK,OAAO;AAC3D,SAAM,iCAAiC,OAAO,OAAO;AACrD,OAAI,OAAO,WAAW,mBACpB,OAAM,IAAI,MACR,8CAA8C,mBAAmB,0BAA0B,OAAO,OAAO,oGAE1G;AAEH,SAAM,uCAAuC,OAAO,OAAO;AAC3D,QAAK,SAAS;AACd,UAAO,KAAK;SACP;AACL,SAAM,8BAA8B;AACpC,QAAK,SAAS,yBAAyB;AACvC,SAAM,wCAAwC,KAAK,QAAQ,OAAO;AAClE,UAAO,KAAK"}
|
package/build/parse.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ConfigYaml } from '@verdaccio/types';
|
|
2
2
|
/**
|
|
3
|
-
* Parse a config file
|
|
4
|
-
* @param configPath the absolute path of the configuration file
|
|
3
|
+
* Parse a YAML config file.
|
|
4
|
+
* @param configPath the absolute path of the configuration file (must end in .yaml or .yml)
|
|
5
5
|
*/
|
|
6
6
|
export declare function parseConfigFile(configPath: string): ConfigYaml & {
|
|
7
7
|
config_path: string;
|
|
@@ -14,12 +14,10 @@ export declare function fromJStoYAML(config: Partial<ConfigYaml>): string | null
|
|
|
14
14
|
* If a string or `undefined` is provided, it is interpreted as a path to a config file
|
|
15
15
|
* (or uses a default location). The config file is then loaded and parsed.
|
|
16
16
|
* If an object is provided, it is assumed to be a pre-parsed configuration.
|
|
17
|
-
* Backward compability: ensures the returned configuration object has a `self_path` property set,
|
|
18
|
-
* either to the config file path or to a property within the object.
|
|
19
17
|
*
|
|
20
18
|
* @param {string | ConfigYaml} [config] - Optional. A path to the configuration file (string),
|
|
21
19
|
* a pre-parsed config object, or `undefined`.
|
|
22
|
-
* @returns {ConfigYaml} The parsed configuration object
|
|
20
|
+
* @returns {ConfigYaml} The parsed configuration object.
|
|
23
21
|
* @throws {Error} If the provided config is neither a string, undefined, nor an object.
|
|
24
22
|
*/
|
|
25
23
|
export declare function getConfigParsed(config?: string | ConfigYaml): ConfigYaml;
|
package/build/parse.js
CHANGED
|
@@ -7,39 +7,28 @@ let lodash_es = require("lodash-es");
|
|
|
7
7
|
let _verdaccio_core = require("@verdaccio/core");
|
|
8
8
|
let node_fs = require("node:fs");
|
|
9
9
|
node_fs = require_runtime.__toESM(node_fs);
|
|
10
|
-
let node_path = require("node:path");
|
|
11
|
-
node_path = require_runtime.__toESM(node_path);
|
|
12
10
|
let js_yaml = require("js-yaml");
|
|
13
11
|
js_yaml = require_runtime.__toESM(js_yaml);
|
|
14
12
|
//#region src/parse.ts
|
|
15
13
|
var debug$1 = (0, debug.default)("verdaccio:config:parse");
|
|
16
14
|
/**
|
|
17
|
-
* Parse a config file
|
|
18
|
-
* @param configPath the absolute path of the configuration file
|
|
15
|
+
* Parse a YAML config file.
|
|
16
|
+
* @param configPath the absolute path of the configuration file (must end in .yaml or .yml)
|
|
19
17
|
*/
|
|
20
18
|
function parseConfigFile(configPath) {
|
|
21
19
|
debug$1("parse config file %s", configPath);
|
|
22
20
|
if (!require_config_utils.fileExists(configPath)) throw new Error(`config file does not exist or not reachable`);
|
|
21
|
+
if (!/\.ya?ml$/i.test(configPath)) throw new Error(`config file must be a YAML file (.yaml or .yml)`);
|
|
23
22
|
debug$1("parsing config file: %o", configPath);
|
|
24
23
|
try {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return Object.assign({}, yamlConfig, {
|
|
28
|
-
configPath,
|
|
29
|
-
config_path: configPath
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
const jsonConfig = require(configPath);
|
|
33
|
-
return Object.assign({}, jsonConfig, {
|
|
24
|
+
const yamlConfig = js_yaml.default.load(node_fs.default.readFileSync(configPath, "utf8"));
|
|
25
|
+
return Object.assign({}, yamlConfig, {
|
|
34
26
|
configPath,
|
|
35
27
|
config_path: configPath
|
|
36
28
|
});
|
|
37
29
|
} catch (e) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
throw Error(_verdaccio_core.APP_ERROR.CONFIG_NOT_VALID);
|
|
41
|
-
}
|
|
42
|
-
throw e;
|
|
30
|
+
debug$1("failed to parse config %o error: %o", configPath, e.message);
|
|
31
|
+
throw new Error(_verdaccio_core.APP_ERROR.CONFIG_NOT_VALID, { cause: e });
|
|
43
32
|
}
|
|
44
33
|
}
|
|
45
34
|
function fromJStoYAML(config) {
|
|
@@ -53,12 +42,10 @@ function fromJStoYAML(config) {
|
|
|
53
42
|
* If a string or `undefined` is provided, it is interpreted as a path to a config file
|
|
54
43
|
* (or uses a default location). The config file is then loaded and parsed.
|
|
55
44
|
* If an object is provided, it is assumed to be a pre-parsed configuration.
|
|
56
|
-
* Backward compability: ensures the returned configuration object has a `self_path` property set,
|
|
57
|
-
* either to the config file path or to a property within the object.
|
|
58
45
|
*
|
|
59
46
|
* @param {string | ConfigYaml} [config] - Optional. A path to the configuration file (string),
|
|
60
47
|
* a pre-parsed config object, or `undefined`.
|
|
61
|
-
* @returns {ConfigYaml} The parsed configuration object
|
|
48
|
+
* @returns {ConfigYaml} The parsed configuration object.
|
|
62
49
|
* @throws {Error} If the provided config is neither a string, undefined, nor an object.
|
|
63
50
|
*/
|
|
64
51
|
function getConfigParsed(config) {
|
|
@@ -66,19 +53,10 @@ function getConfigParsed(config) {
|
|
|
66
53
|
let configurationParsed;
|
|
67
54
|
if (config === void 0 || typeof config === "string") {
|
|
68
55
|
debug$1("using default configuration");
|
|
69
|
-
|
|
70
|
-
configurationParsed = parseConfigFile(configPathLocation);
|
|
71
|
-
if (!configurationParsed.self_path) {
|
|
72
|
-
debug$1("self_path not defined, using config path location");
|
|
73
|
-
configurationParsed.self_path = node_path.default.resolve(configPathLocation);
|
|
74
|
-
}
|
|
56
|
+
configurationParsed = parseConfigFile(require_config_path.findConfigFile(config));
|
|
75
57
|
} else if (typeof config === "object" && config !== null) {
|
|
76
58
|
configurationParsed = config;
|
|
77
59
|
if (!configurationParsed.configPath) configurationParsed.configPath = process.cwd();
|
|
78
|
-
if (!configurationParsed.self_path) {
|
|
79
|
-
debug$1("self_path not defined, using config path location");
|
|
80
|
-
configurationParsed.self_path = configurationParsed.configPath;
|
|
81
|
-
}
|
|
82
60
|
} else throw new Error(_verdaccio_core.API_ERROR.CONFIG_BAD_FORMAT);
|
|
83
61
|
return configurationParsed;
|
|
84
62
|
}
|
package/build/parse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","names":[],"sources":["../src/parse.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport YAML from 'js-yaml';\nimport { isObject } from 'lodash-es';\nimport fs from 'node:fs';\
|
|
1
|
+
{"version":3,"file":"parse.js","names":[],"sources":["../src/parse.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport YAML from 'js-yaml';\nimport { isObject } from 'lodash-es';\nimport fs from 'node:fs';\n\nimport { API_ERROR, APP_ERROR } from '@verdaccio/core';\nimport type { ConfigYaml } from '@verdaccio/types';\n\nimport { findConfigFile } from './config-path';\nimport { fileExists } from './config-utils';\n\nconst debug = buildDebug('verdaccio:config:parse');\n\n/**\n * Parse a YAML config file.\n * @param configPath the absolute path of the configuration file (must end in .yaml or .yml)\n */\nexport function parseConfigFile(configPath: string): ConfigYaml & {\n // @deprecated use configPath instead\n config_path: string;\n configPath: string;\n} {\n debug('parse config file %s', configPath);\n if (!fileExists(configPath)) {\n throw new Error(`config file does not exist or not reachable`);\n }\n if (!/\\.ya?ml$/i.test(configPath)) {\n throw new Error(`config file must be a YAML file (.yaml or .yml)`);\n }\n debug('parsing config file: %o', configPath);\n try {\n const yamlConfig = YAML.load(fs.readFileSync(configPath, 'utf8')) as ConfigYaml;\n\n return Object.assign({}, yamlConfig, {\n configPath,\n // @deprecated use configPath instead\n config_path: configPath,\n });\n } catch (e: any) {\n debug('failed to parse config %o error: %o', configPath, e.message);\n throw new Error(APP_ERROR.CONFIG_NOT_VALID, { cause: e });\n }\n}\n\nexport function fromJStoYAML(config: Partial<ConfigYaml>): string | null {\n debug('convert config from JSON to YAML');\n if (isObject(config)) {\n return YAML.dump(config);\n } else {\n throw new Error(`config is not a valid object`);\n }\n}\n\n/**\n * Parses and returns a configuration object of type `ConfigYaml`.\n *\n * If a string or `undefined` is provided, it is interpreted as a path to a config file\n * (or uses a default location). The config file is then loaded and parsed.\n * If an object is provided, it is assumed to be a pre-parsed configuration.\n *\n * @param {string | ConfigYaml} [config] - Optional. A path to the configuration file (string),\n * a pre-parsed config object, or `undefined`.\n * @returns {ConfigYaml} The parsed configuration object.\n * @throws {Error} If the provided config is neither a string, undefined, nor an object.\n */\nexport function getConfigParsed(config?: string | ConfigYaml): ConfigYaml {\n debug('getConfigParsed called with config: %o', typeof config);\n let configurationParsed: ConfigYaml;\n if (config === undefined || typeof config === 'string') {\n debug('using default configuration');\n const configPathLocation = findConfigFile(config);\n configurationParsed = parseConfigFile(configPathLocation);\n } else if (typeof config === 'object' && config !== null) {\n configurationParsed = config;\n\n // When config is provided as an object (programmatic API), ensure configPath\n // is set so the Config constructor does not throw.\n if (!configurationParsed.configPath) {\n configurationParsed.configPath = process.cwd();\n }\n } else {\n throw new Error(API_ERROR.CONFIG_BAD_FORMAT);\n }\n return configurationParsed;\n}\n"],"mappings":";;;;;;;;;;;;AAWA,IAAM,WAAA,GAAA,MAAA,SAAmB,yBAAyB;;;;;AAMlD,SAAgB,gBAAgB,YAI9B;AACA,SAAM,wBAAwB,WAAW;AACzC,KAAI,CAAC,qBAAA,WAAW,WAAW,CACzB,OAAM,IAAI,MAAM,8CAA8C;AAEhE,KAAI,CAAC,YAAY,KAAK,WAAW,CAC/B,OAAM,IAAI,MAAM,kDAAkD;AAEpE,SAAM,2BAA2B,WAAW;AAC5C,KAAI;EACF,MAAM,aAAa,QAAA,QAAK,KAAK,QAAA,QAAG,aAAa,YAAY,OAAO,CAAC;AAEjE,SAAO,OAAO,OAAO,EAAE,EAAE,YAAY;GACnC;GAEA,aAAa;GACd,CAAC;UACK,GAAQ;AACf,UAAM,uCAAuC,YAAY,EAAE,QAAQ;AACnE,QAAM,IAAI,MAAM,gBAAA,UAAU,kBAAkB,EAAE,OAAO,GAAG,CAAC;;;AAI7D,SAAgB,aAAa,QAA4C;AACvE,SAAM,mCAAmC;AACzC,MAAA,GAAA,UAAA,UAAa,OAAO,CAClB,QAAO,QAAA,QAAK,KAAK,OAAO;KAExB,OAAM,IAAI,MAAM,+BAA+B;;;;;;;;;;;;;;AAgBnD,SAAgB,gBAAgB,QAA0C;AACxE,SAAM,0CAA0C,OAAO,OAAO;CAC9D,IAAI;AACJ,KAAI,WAAW,KAAA,KAAa,OAAO,WAAW,UAAU;AACtD,UAAM,8BAA8B;AAEpC,wBAAsB,gBADK,oBAAA,eAAe,OAAO,CACQ;YAChD,OAAO,WAAW,YAAY,WAAW,MAAM;AACxD,wBAAsB;AAItB,MAAI,CAAC,oBAAoB,WACvB,qBAAoB,aAAa,QAAQ,KAAK;OAGhD,OAAM,IAAI,MAAM,gBAAA,UAAU,kBAAkB;AAE9C,QAAO"}
|
package/build/parse.mjs
CHANGED
|
@@ -1,41 +1,30 @@
|
|
|
1
|
-
import { __require } from "./_virtual/_rolldown/runtime.mjs";
|
|
2
1
|
import { fileExists } from "./config-utils.mjs";
|
|
3
2
|
import { findConfigFile } from "./config-path.mjs";
|
|
4
3
|
import buildDebug from "debug";
|
|
5
4
|
import { isObject } from "lodash-es";
|
|
6
5
|
import { API_ERROR, APP_ERROR } from "@verdaccio/core";
|
|
7
6
|
import fs from "node:fs";
|
|
8
|
-
import path from "node:path";
|
|
9
7
|
import YAML from "js-yaml";
|
|
10
8
|
//#region src/parse.ts
|
|
11
9
|
var debug = buildDebug("verdaccio:config:parse");
|
|
12
10
|
/**
|
|
13
|
-
* Parse a config file
|
|
14
|
-
* @param configPath the absolute path of the configuration file
|
|
11
|
+
* Parse a YAML config file.
|
|
12
|
+
* @param configPath the absolute path of the configuration file (must end in .yaml or .yml)
|
|
15
13
|
*/
|
|
16
14
|
function parseConfigFile(configPath) {
|
|
17
15
|
debug("parse config file %s", configPath);
|
|
18
16
|
if (!fileExists(configPath)) throw new Error(`config file does not exist or not reachable`);
|
|
17
|
+
if (!/\.ya?ml$/i.test(configPath)) throw new Error(`config file must be a YAML file (.yaml or .yml)`);
|
|
19
18
|
debug("parsing config file: %o", configPath);
|
|
20
19
|
try {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
return Object.assign({}, yamlConfig, {
|
|
24
|
-
configPath,
|
|
25
|
-
config_path: configPath
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
const jsonConfig = __require(configPath);
|
|
29
|
-
return Object.assign({}, jsonConfig, {
|
|
20
|
+
const yamlConfig = YAML.load(fs.readFileSync(configPath, "utf8"));
|
|
21
|
+
return Object.assign({}, yamlConfig, {
|
|
30
22
|
configPath,
|
|
31
23
|
config_path: configPath
|
|
32
24
|
});
|
|
33
25
|
} catch (e) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
throw Error(APP_ERROR.CONFIG_NOT_VALID);
|
|
37
|
-
}
|
|
38
|
-
throw e;
|
|
26
|
+
debug("failed to parse config %o error: %o", configPath, e.message);
|
|
27
|
+
throw new Error(APP_ERROR.CONFIG_NOT_VALID, { cause: e });
|
|
39
28
|
}
|
|
40
29
|
}
|
|
41
30
|
function fromJStoYAML(config) {
|
|
@@ -49,12 +38,10 @@ function fromJStoYAML(config) {
|
|
|
49
38
|
* If a string or `undefined` is provided, it is interpreted as a path to a config file
|
|
50
39
|
* (or uses a default location). The config file is then loaded and parsed.
|
|
51
40
|
* If an object is provided, it is assumed to be a pre-parsed configuration.
|
|
52
|
-
* Backward compability: ensures the returned configuration object has a `self_path` property set,
|
|
53
|
-
* either to the config file path or to a property within the object.
|
|
54
41
|
*
|
|
55
42
|
* @param {string | ConfigYaml} [config] - Optional. A path to the configuration file (string),
|
|
56
43
|
* a pre-parsed config object, or `undefined`.
|
|
57
|
-
* @returns {ConfigYaml} The parsed configuration object
|
|
44
|
+
* @returns {ConfigYaml} The parsed configuration object.
|
|
58
45
|
* @throws {Error} If the provided config is neither a string, undefined, nor an object.
|
|
59
46
|
*/
|
|
60
47
|
function getConfigParsed(config) {
|
|
@@ -62,19 +49,10 @@ function getConfigParsed(config) {
|
|
|
62
49
|
let configurationParsed;
|
|
63
50
|
if (config === void 0 || typeof config === "string") {
|
|
64
51
|
debug("using default configuration");
|
|
65
|
-
|
|
66
|
-
configurationParsed = parseConfigFile(configPathLocation);
|
|
67
|
-
if (!configurationParsed.self_path) {
|
|
68
|
-
debug("self_path not defined, using config path location");
|
|
69
|
-
configurationParsed.self_path = path.resolve(configPathLocation);
|
|
70
|
-
}
|
|
52
|
+
configurationParsed = parseConfigFile(findConfigFile(config));
|
|
71
53
|
} else if (typeof config === "object" && config !== null) {
|
|
72
54
|
configurationParsed = config;
|
|
73
55
|
if (!configurationParsed.configPath) configurationParsed.configPath = process.cwd();
|
|
74
|
-
if (!configurationParsed.self_path) {
|
|
75
|
-
debug("self_path not defined, using config path location");
|
|
76
|
-
configurationParsed.self_path = configurationParsed.configPath;
|
|
77
|
-
}
|
|
78
56
|
} else throw new Error(API_ERROR.CONFIG_BAD_FORMAT);
|
|
79
57
|
return configurationParsed;
|
|
80
58
|
}
|
package/build/parse.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.mjs","names":[],"sources":["../src/parse.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport YAML from 'js-yaml';\nimport { isObject } from 'lodash-es';\nimport fs from 'node:fs';\
|
|
1
|
+
{"version":3,"file":"parse.mjs","names":[],"sources":["../src/parse.ts"],"sourcesContent":["import buildDebug from 'debug';\nimport YAML from 'js-yaml';\nimport { isObject } from 'lodash-es';\nimport fs from 'node:fs';\n\nimport { API_ERROR, APP_ERROR } from '@verdaccio/core';\nimport type { ConfigYaml } from '@verdaccio/types';\n\nimport { findConfigFile } from './config-path';\nimport { fileExists } from './config-utils';\n\nconst debug = buildDebug('verdaccio:config:parse');\n\n/**\n * Parse a YAML config file.\n * @param configPath the absolute path of the configuration file (must end in .yaml or .yml)\n */\nexport function parseConfigFile(configPath: string): ConfigYaml & {\n // @deprecated use configPath instead\n config_path: string;\n configPath: string;\n} {\n debug('parse config file %s', configPath);\n if (!fileExists(configPath)) {\n throw new Error(`config file does not exist or not reachable`);\n }\n if (!/\\.ya?ml$/i.test(configPath)) {\n throw new Error(`config file must be a YAML file (.yaml or .yml)`);\n }\n debug('parsing config file: %o', configPath);\n try {\n const yamlConfig = YAML.load(fs.readFileSync(configPath, 'utf8')) as ConfigYaml;\n\n return Object.assign({}, yamlConfig, {\n configPath,\n // @deprecated use configPath instead\n config_path: configPath,\n });\n } catch (e: any) {\n debug('failed to parse config %o error: %o', configPath, e.message);\n throw new Error(APP_ERROR.CONFIG_NOT_VALID, { cause: e });\n }\n}\n\nexport function fromJStoYAML(config: Partial<ConfigYaml>): string | null {\n debug('convert config from JSON to YAML');\n if (isObject(config)) {\n return YAML.dump(config);\n } else {\n throw new Error(`config is not a valid object`);\n }\n}\n\n/**\n * Parses and returns a configuration object of type `ConfigYaml`.\n *\n * If a string or `undefined` is provided, it is interpreted as a path to a config file\n * (or uses a default location). The config file is then loaded and parsed.\n * If an object is provided, it is assumed to be a pre-parsed configuration.\n *\n * @param {string | ConfigYaml} [config] - Optional. A path to the configuration file (string),\n * a pre-parsed config object, or `undefined`.\n * @returns {ConfigYaml} The parsed configuration object.\n * @throws {Error} If the provided config is neither a string, undefined, nor an object.\n */\nexport function getConfigParsed(config?: string | ConfigYaml): ConfigYaml {\n debug('getConfigParsed called with config: %o', typeof config);\n let configurationParsed: ConfigYaml;\n if (config === undefined || typeof config === 'string') {\n debug('using default configuration');\n const configPathLocation = findConfigFile(config);\n configurationParsed = parseConfigFile(configPathLocation);\n } else if (typeof config === 'object' && config !== null) {\n configurationParsed = config;\n\n // When config is provided as an object (programmatic API), ensure configPath\n // is set so the Config constructor does not throw.\n if (!configurationParsed.configPath) {\n configurationParsed.configPath = process.cwd();\n }\n } else {\n throw new Error(API_ERROR.CONFIG_BAD_FORMAT);\n }\n return configurationParsed;\n}\n"],"mappings":";;;;;;;;AAWA,IAAM,QAAQ,WAAW,yBAAyB;;;;;AAMlD,SAAgB,gBAAgB,YAI9B;AACA,OAAM,wBAAwB,WAAW;AACzC,KAAI,CAAC,WAAW,WAAW,CACzB,OAAM,IAAI,MAAM,8CAA8C;AAEhE,KAAI,CAAC,YAAY,KAAK,WAAW,CAC/B,OAAM,IAAI,MAAM,kDAAkD;AAEpE,OAAM,2BAA2B,WAAW;AAC5C,KAAI;EACF,MAAM,aAAa,KAAK,KAAK,GAAG,aAAa,YAAY,OAAO,CAAC;AAEjE,SAAO,OAAO,OAAO,EAAE,EAAE,YAAY;GACnC;GAEA,aAAa;GACd,CAAC;UACK,GAAQ;AACf,QAAM,uCAAuC,YAAY,EAAE,QAAQ;AACnE,QAAM,IAAI,MAAM,UAAU,kBAAkB,EAAE,OAAO,GAAG,CAAC;;;AAI7D,SAAgB,aAAa,QAA4C;AACvE,OAAM,mCAAmC;AACzC,KAAI,SAAS,OAAO,CAClB,QAAO,KAAK,KAAK,OAAO;KAExB,OAAM,IAAI,MAAM,+BAA+B;;;;;;;;;;;;;;AAgBnD,SAAgB,gBAAgB,QAA0C;AACxE,OAAM,0CAA0C,OAAO,OAAO;CAC9D,IAAI;AACJ,KAAI,WAAW,KAAA,KAAa,OAAO,WAAW,UAAU;AACtD,QAAM,8BAA8B;AAEpC,wBAAsB,gBADK,eAAe,OAAO,CACQ;YAChD,OAAO,WAAW,YAAY,WAAW,MAAM;AACxD,wBAAsB;AAItB,MAAI,CAAC,oBAAoB,WACvB,qBAAoB,aAAa,QAAQ,KAAK;OAGhD,OAAM,IAAI,MAAM,UAAU,kBAAkB;AAE9C,QAAO"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@verdaccio/config",
|
|
3
|
-
"version": "9.0.0-next-9.
|
|
3
|
+
"version": "9.0.0-next-9.15",
|
|
4
4
|
"description": "Verdaccio Configuration",
|
|
5
5
|
"main": "./build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -33,13 +33,13 @@
|
|
|
33
33
|
"node": ">=24"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@verdaccio/core": "9.0.0-next-9.
|
|
36
|
+
"@verdaccio/core": "9.0.0-next-9.15",
|
|
37
37
|
"debug": "4.4.3",
|
|
38
38
|
"js-yaml": "4.1.1",
|
|
39
|
-
"lodash-es": "4.
|
|
39
|
+
"lodash-es": "4.18.1"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@verdaccio/types": "14.0.0-next-9.
|
|
42
|
+
"@verdaccio/types": "14.0.0-next-9.6",
|
|
43
43
|
"@types/lodash-es": "4.17.12",
|
|
44
44
|
"vitest": "4.1.0"
|
|
45
45
|
},
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
//#region \0rolldown/runtime.js
|
|
2
|
-
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, { get: (a, b) => (typeof require !== "undefined" ? require : a)[b] }) : x)(function(x) {
|
|
3
|
-
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
4
|
-
throw Error("Calling `require` for \"" + x + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.");
|
|
5
|
-
});
|
|
6
|
-
//#endregion
|
|
7
|
-
export { __require };
|