@teambit/pnpm 0.0.579 → 0.0.583

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/lynx.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import { ResolvedPackageVersion, Registries, PackageManagerProxyConfig, PackageManagerNetworkConfig } from '@teambit/dependency-resolver';
2
2
  import { Logger } from '@teambit/logger';
3
- export declare function install(rootPathToManifest: any, pathsToManifests: any, storeDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, networkConfig?: PackageManagerNetworkConfig, logger?: Logger): Promise<void>;
3
+ export declare function install(rootPathToManifest: any, pathsToManifests: any, storeDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, networkConfig?: PackageManagerNetworkConfig, options?: {
4
+ overrides?: Record<string, string>;
5
+ }, logger?: Logger): Promise<void>;
4
6
  export declare function resolveRemoteVersion(packageName: string, rootDir: string, cacheDir: string, registries: Registries, proxyConfig?: PackageManagerProxyConfig, networkConfig?: PackageManagerNetworkConfig): Promise<ResolvedPackageVersion>;
package/dist/lynx.js CHANGED
@@ -124,44 +124,10 @@ function _readConfig() {
124
124
  return data;
125
125
  }
126
126
 
127
- // import createClient from '@pnpm/client'
128
- // import { createFetchFromRegistry } from '@pnpm/fetch';
129
- // import execa from 'execa';
130
- // import createFetcher from '@pnpm/tarball-fetcher';
131
- // import { ReporterFunction } from '@pnpm/core/lib/types';
132
- // import { createResolver } from './create-resolver';
133
- // import {isValidPath} from '@teambit/legacy/dist/utils';
134
- // import {createResolver} from '@pnpm/default-resolver';
135
- // TODO: DO NOT DELETE - uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910
136
- // function getReporter(logger: Logger): ReporterFunction {
137
- // return ((logObj) => {
138
- // // TODO: print correctly not the entire object
139
- // logger.console(logObj)
140
- // });
141
- // }
142
- async function createStoreController(storeDir, cacheDir, registries, proxyConfig = {}, networkConfig = {}) {
143
- // const fetchFromRegistry = createFetchFromRegistry({});
144
- // const getCredentials = () => ({ authHeaderValue: '', alwaysAuth: false });
145
- // const resolver: ResolveFunction = createResolver(fetchFromRegistry, getCredentials, {
146
- // metaCache: new Map(),
147
- // storeDir,
148
- // });
149
- // const fetcher = createFetcher(fetchFromRegistry, getCredentials, {});
150
- // const { resolve, fetchers } = createClient({
151
- // // authConfig,
152
- // metaCache: new Map(),
153
- // // retry: retryOpts,
154
- // storeDir,
155
- // // ...resolveOpts,
156
- // // ...fetchOpts,
157
- // })
158
- // const storeController = await createStore(resolve, fetchers, {
159
- // storeDir,
160
- // verifyStoreIntegrity: true,
161
- // });
162
- // const pnpmConfig = await readConfig();
127
+ async function createStoreController(rootDir, storeDir, cacheDir, registries, proxyConfig = {}, networkConfig = {}) {
163
128
  const authConfig = getAuthConfig(registries);
164
129
  const opts = {
130
+ dir: rootDir,
165
131
  cacheDir,
166
132
  storeDir,
167
133
  rawConfig: authConfig,
@@ -176,11 +142,10 @@ async function createStoreController(storeDir, cacheDir, registries, proxyConfig
176
142
  strictSsl: proxyConfig.strictSSL,
177
143
  maxSockets: networkConfig.maxSockets,
178
144
  networkConcurrency: networkConfig.networkConcurrency
179
- };
180
- const {
181
- ctrl
182
- } = await (0, _storeConnectionManager().createNewStoreController)(opts);
183
- return ctrl;
145
+ }; // Although it would be enough to call createNewStoreController(),
146
+ // that doesn't resolve the store directory location.
147
+
148
+ return (0, _storeConnectionManager().createOrConnectStoreController)(opts);
184
149
  }
185
150
 
186
151
  async function generateResolverAndFetcher(cacheDir, registries, proxyConfig = {}, networkConfig = {}) {
@@ -209,7 +174,7 @@ async function generateResolverAndFetcher(cacheDir, registries, proxyConfig = {}
209
174
  return result;
210
175
  }
211
176
 
212
- async function install(rootPathToManifest, pathsToManifests, storeDir, cacheDir, registries, proxyConfig = {}, networkConfig = {}, // eslint-disable-next-line @typescript-eslint/no-unused-vars
177
+ async function install(rootPathToManifest, pathsToManifests, storeDir, cacheDir, registries, proxyConfig = {}, networkConfig = {}, options, // eslint-disable-next-line @typescript-eslint/no-unused-vars
213
178
  logger) {
214
179
  const packagesToBuild = []; // @pnpm/core will use this to install the packages
215
180
 
@@ -252,17 +217,16 @@ logger) {
252
217
  });
253
218
  const registriesMap = getRegistriesMap(registries);
254
219
  const authConfig = getAuthConfig(registries);
255
- const storeController = await createStoreController(storeDir, cacheDir, registries, proxyConfig, networkConfig);
220
+ const storeController = await createStoreController(rootPathToManifest.rootDir, storeDir, cacheDir, registries, proxyConfig, networkConfig);
256
221
  const opts = {
257
- storeDir,
222
+ storeDir: storeController.dir,
258
223
  dir: rootPathToManifest.rootDir,
259
- storeController,
224
+ storeController: storeController.ctrl,
260
225
  workspacePackages,
261
226
  preferFrozenLockfile: true,
262
227
  registries: registriesMap,
263
- rawConfig: authConfig // TODO: uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910
264
- // reporter: logger ? getReporter(logger) : undefined,
265
-
228
+ rawConfig: authConfig,
229
+ overrides: options === null || options === void 0 ? void 0 : options.overrides
266
230
  };
267
231
  const stopReporting = (0, _defaultReporter().default)({
268
232
  context: {
@@ -270,8 +234,6 @@ logger) {
270
234
  },
271
235
  reportingOptions: {
272
236
  appendOnly: false,
273
- // logLevel: 'error' as LogLevel,
274
- // streamLifecycleOutput: opts.config.stream,
275
237
  throttleProgress: 200
276
238
  },
277
239
  streamParser: _logger().streamParser
@@ -304,8 +266,7 @@ async function resolveRemoteVersion(packageName, rootDir, cacheDir, registries,
304
266
  const isValidRange = parsedPackage.version ? !!_semver().default.validRange(parsedPackage.version) : false;
305
267
  resolveOpts.registry = registry;
306
268
  const val = await resolve(wantedDep, resolveOpts);
307
- const version = isValidRange ? parsedPackage.version : val.manifest.version; // const { stdout } = await execa('npm', ['view', packageName, 'version'], {});
308
-
269
+ const version = isValidRange ? parsedPackage.version : val.manifest.version;
309
270
  return {
310
271
  packageName: val.manifest.name,
311
272
  version,
package/dist/lynx.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["lynx.ts"],"names":["createStoreController","storeDir","cacheDir","registries","proxyConfig","networkConfig","authConfig","getAuthConfig","opts","rawConfig","verifyStoreIntegrity","httpProxy","httpsProxy","ca","cert","key","localAddress","noProxy","strictSsl","strictSSL","maxSockets","networkConcurrency","ctrl","generateResolverAndFetcher","pnpmConfig","Object","assign","config","timeout","fetchTimeout","retry","factor","fetchRetryFactor","maxTimeout","fetchRetryMaxtimeout","minTimeout","fetchRetryMintimeout","retries","fetchRetries","result","install","rootPathToManifest","pathsToManifests","logger","packagesToBuild","workspacePackages","rootDir","manifest","push","buildIndex","mutation","name","version","dir","registriesMap","getRegistriesMap","storeController","preferFrozenLockfile","stopReporting","context","argv","reportingOptions","appendOnly","throttleProgress","streamParser","resolveRemoteVersion","packageName","resolve","resolveOpts","projectDir","registry","parsedPackage","wantedDep","alias","pref","isValidRange","semver","validRange","val","isSemver","resolvedVia","e","message","includes","undefined","normalizedPref","default","defaultRegistry","uri","NPM_REGISTRY","entries","scopes","forEach","registryName","res","alwaysAuth","defaultAuthTokens","getAuthTokenForRegistry","keyName","authTokens","nerfed","alwaysAuthKeyName","isDefault","originalAuthType","originalAuthValue","split"],"mappings":"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","sourcesContent":["import semver from 'semver';\nimport parsePackageName from 'parse-package-name';\nimport defaultReporter from '@pnpm/default-reporter';\n// import createClient from '@pnpm/client'\n// import { createFetchFromRegistry } from '@pnpm/fetch';\nimport { streamParser } from '@pnpm/logger';\n// import createStore, { ResolveFunction, StoreController } from '@pnpm/package-store';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\n// import { PreferredVersions, RequestPackageOptions, StoreController, WantedDependency } from '@pnpm/package-store';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { createNewStoreController } from '@pnpm/store-connection-manager';\n// TODO: this should be taken from - @pnpm/store-connection-manager\n// it's not taken from there since it's not exported.\n// here is a bug in pnpm about it https://github.com/pnpm/pnpm/issues/2748\nimport { CreateNewStoreControllerOptions } from '@pnpm/store-connection-manager/lib/createNewStoreController';\nimport {\n ResolvedPackageVersion,\n Registries,\n NPM_REGISTRY,\n Registry,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\n// import execa from 'execa';\n// import createFetcher from '@pnpm/tarball-fetcher';\nimport { MutatedProject, mutateModules } from '@pnpm/core';\n// import { ReporterFunction } from '@pnpm/core/lib/types';\n// import { createResolver } from './create-resolver';\n// import {isValidPath} from '@teambit/legacy/dist/utils';\n// import {createResolver} from '@pnpm/default-resolver';\nimport createResolverAndFetcher, { ClientOptions } from '@pnpm/client';\nimport pickRegistryForPackage from '@pnpm/pick-registry-for-package';\nimport { Logger } from '@teambit/logger';\nimport toNerfDart from 'nerf-dart';\nimport { readConfig } from './read-config';\n\ntype RegistriesMap = {\n default: string;\n [registryName: string]: string;\n};\n\n// TODO: DO NOT DELETE - uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910\n// function getReporter(logger: Logger): ReporterFunction {\n// return ((logObj) => {\n// // TODO: print correctly not the entire object\n// logger.console(logObj)\n// });\n// }\n\nasync function createStoreController(\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n): Promise<StoreController> {\n // const fetchFromRegistry = createFetchFromRegistry({});\n // const getCredentials = () => ({ authHeaderValue: '', alwaysAuth: false });\n // const resolver: ResolveFunction = createResolver(fetchFromRegistry, getCredentials, {\n // metaCache: new Map(),\n // storeDir,\n // });\n // const fetcher = createFetcher(fetchFromRegistry, getCredentials, {});\n // const { resolve, fetchers } = createClient({\n // // authConfig,\n // metaCache: new Map(),\n // // retry: retryOpts,\n // storeDir,\n // // ...resolveOpts,\n // // ...fetchOpts,\n // })\n // const storeController = await createStore(resolve, fetchers, {\n // storeDir,\n // verifyStoreIntegrity: true,\n // });\n // const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: CreateNewStoreControllerOptions = {\n cacheDir,\n storeDir,\n rawConfig: authConfig,\n verifyStoreIntegrity: true,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n maxSockets: networkConfig.maxSockets,\n networkConcurrency: networkConfig.networkConcurrency,\n };\n const { ctrl } = await createNewStoreController(opts);\n return ctrl;\n}\n\nasync function generateResolverAndFetcher(\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n) {\n const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: ClientOptions = {\n authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),\n cacheDir,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n timeout: networkConfig.fetchTimeout,\n retry: {\n factor: networkConfig.fetchRetryFactor,\n maxTimeout: networkConfig.fetchRetryMaxtimeout,\n minTimeout: networkConfig.fetchRetryMintimeout,\n retries: networkConfig.fetchRetries,\n },\n };\n const result = createResolverAndFetcher(opts);\n return result;\n}\n\nexport async function install(\n rootPathToManifest,\n pathsToManifests,\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {},\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n) {\n const packagesToBuild: MutatedProject[] = []; // @pnpm/core will use this to install the packages\n const workspacePackages = {}; // @pnpm/core will use this to link packages to each other\n\n // This will create local link by pnpm to a component exists in the ws.\n // it will later deleted by the link process\n // we keep it here to better support case like this:\n // compA@1.0.0 uses compB@1.0.0\n // I have compB@2.0.0 in my workspace\n // now I install compA@1.0.0\n // compA is hoisted to the root and install B@1.0.0 hoisted to the root as well\n // now we will make link to B@2.0.0 and A will break\n // with this we will have a link to the local B by pnpm so it will install B@1.0.0 inside A\n // then when overriding the link, A will still works\n // This is the rational behind not deleting this completely, but need further check that it really works\n\n // eslint-disable-next-line\n for (const rootDir in pathsToManifests) {\n const manifest = pathsToManifests[rootDir];\n packagesToBuild.push({\n buildIndex: 0, // workspace components should be installed before the root\n manifest,\n rootDir,\n mutation: 'install',\n });\n workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};\n workspacePackages[manifest.name][manifest.version] = { dir: rootDir, manifest };\n }\n packagesToBuild.push({\n buildIndex: 1, // install the root package after the workspace components were installed\n manifest: rootPathToManifest.manifest,\n mutation: 'install',\n rootDir: rootPathToManifest.rootDir,\n });\n const registriesMap = getRegistriesMap(registries);\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController(storeDir, cacheDir, registries, proxyConfig, networkConfig);\n const opts = {\n storeDir,\n dir: rootPathToManifest.rootDir,\n storeController,\n workspacePackages,\n preferFrozenLockfile: true,\n registries: registriesMap,\n rawConfig: authConfig,\n // TODO: uncomment when this is solved https://github.com/pnpm/pnpm/issues/2910\n // reporter: logger ? getReporter(logger) : undefined,\n };\n\n const stopReporting = defaultReporter({\n context: {\n argv: [],\n },\n reportingOptions: {\n appendOnly: false,\n // logLevel: 'error' as LogLevel,\n // streamLifecycleOutput: opts.config.stream,\n throttleProgress: 200,\n },\n streamParser,\n });\n try {\n await mutateModules(packagesToBuild, opts);\n } finally {\n stopReporting();\n }\n}\n\nexport async function resolveRemoteVersion(\n packageName: string,\n rootDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n): Promise<ResolvedPackageVersion> {\n const { resolve } = await generateResolverAndFetcher(cacheDir, registries, proxyConfig, networkConfig);\n const resolveOpts = {\n projectDir: rootDir,\n registry: '',\n };\n try {\n const parsedPackage = parsePackageName(packageName);\n const registriesMap = getRegistriesMap(registries);\n const registry = pickRegistryForPackage(registriesMap, parsedPackage.name);\n const wantedDep: WantedDependency = {\n alias: parsedPackage.name,\n pref: parsedPackage.version,\n };\n const isValidRange = parsedPackage.version ? !!semver.validRange(parsedPackage.version) : false;\n resolveOpts.registry = registry;\n const val = await resolve(wantedDep, resolveOpts);\n const version = isValidRange ? parsedPackage.version : val.manifest.version;\n // const { stdout } = await execa('npm', ['view', packageName, 'version'], {});\n\n return {\n packageName: val.manifest.name,\n version,\n isSemver: true,\n resolvedVia: val.resolvedVia,\n };\n } catch (e: any) {\n if (!e.message?.includes('is not a valid string')) {\n throw e;\n }\n // The provided package is probably a git url or path to a folder\n const wantedDep: WantedDependency = {\n alias: undefined,\n pref: packageName,\n };\n const val = await resolve(wantedDep, resolveOpts);\n return {\n packageName: val.manifest.name,\n version: val.normalizedPref,\n isSemver: false,\n resolvedVia: val.resolvedVia,\n };\n }\n}\n\nfunction getRegistriesMap(registries: Registries): RegistriesMap {\n const registriesMap = {\n default: registries.defaultRegistry.uri || NPM_REGISTRY,\n };\n\n Object.entries(registries.scopes).forEach(([registryName, registry]) => {\n registriesMap[`@${registryName}`] = registry.uri;\n });\n return registriesMap;\n}\n\nfunction getAuthConfig(registries: Registries): Record<string, any> {\n const res: any = {};\n res.registry = registries.defaultRegistry.uri;\n if (registries.defaultRegistry.alwaysAuth) {\n res['always-auth'] = true;\n }\n const defaultAuthTokens = getAuthTokenForRegistry(registries.defaultRegistry, true);\n defaultAuthTokens.forEach(({ keyName, val }) => {\n res[keyName] = val;\n });\n\n Object.entries(registries.scopes).forEach(([, registry]) => {\n const authTokens = getAuthTokenForRegistry(registry);\n authTokens.forEach(({ keyName, val }) => {\n res[keyName] = val;\n });\n if (registry.alwaysAuth) {\n const nerfed = toNerfDart(registry.uri);\n const alwaysAuthKeyName = `${nerfed}:always-auth`;\n res[alwaysAuthKeyName] = true;\n }\n });\n return res;\n}\n\nfunction getAuthTokenForRegistry(registry: Registry, isDefault = false): { keyName: string; val: string }[] {\n const nerfed = toNerfDart(registry.uri);\n if (registry.originalAuthType === 'authToken') {\n return [\n {\n keyName: `${nerfed}:_authToken`,\n val: registry.originalAuthValue || '',\n },\n ];\n }\n if (registry.originalAuthType === 'auth') {\n return [\n {\n keyName: isDefault ? '_auth' : `${nerfed}:_auth`,\n val: registry.originalAuthValue || '',\n },\n ];\n }\n if (registry.originalAuthType === 'user-pass') {\n return [\n {\n keyName: `${nerfed}:username`,\n val: registry.originalAuthValue?.split(':')[0] || '',\n },\n {\n keyName: `${nerfed}:_password`,\n val: registry.originalAuthValue?.split(':')[1] || '',\n },\n ];\n }\n return [];\n}\n"]}
1
+ {"version":3,"sources":["lynx.ts"],"names":["createStoreController","rootDir","storeDir","cacheDir","registries","proxyConfig","networkConfig","authConfig","getAuthConfig","opts","dir","rawConfig","verifyStoreIntegrity","httpProxy","httpsProxy","ca","cert","key","localAddress","noProxy","strictSsl","strictSSL","maxSockets","networkConcurrency","generateResolverAndFetcher","pnpmConfig","Object","assign","config","timeout","fetchTimeout","retry","factor","fetchRetryFactor","maxTimeout","fetchRetryMaxtimeout","minTimeout","fetchRetryMintimeout","retries","fetchRetries","result","install","rootPathToManifest","pathsToManifests","options","logger","packagesToBuild","workspacePackages","manifest","push","buildIndex","mutation","name","version","registriesMap","getRegistriesMap","storeController","ctrl","preferFrozenLockfile","overrides","stopReporting","context","argv","reportingOptions","appendOnly","throttleProgress","streamParser","resolveRemoteVersion","packageName","resolve","resolveOpts","projectDir","registry","parsedPackage","wantedDep","alias","pref","isValidRange","semver","validRange","val","isSemver","resolvedVia","e","message","includes","undefined","normalizedPref","default","defaultRegistry","uri","NPM_REGISTRY","entries","scopes","forEach","registryName","res","alwaysAuth","defaultAuthTokens","getAuthTokenForRegistry","keyName","authTokens","nerfed","alwaysAuthKeyName","isDefault","originalAuthType","originalAuthValue","split"],"mappings":"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","sourcesContent":["import semver from 'semver';\nimport parsePackageName from 'parse-package-name';\nimport defaultReporter from '@pnpm/default-reporter';\nimport { streamParser } from '@pnpm/logger';\nimport { StoreController, WantedDependency } from '@pnpm/package-store';\nimport { createOrConnectStoreController, CreateStoreControllerOptions } from '@pnpm/store-connection-manager';\nimport {\n ResolvedPackageVersion,\n Registries,\n NPM_REGISTRY,\n Registry,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport { MutatedProject, mutateModules } from '@pnpm/core';\nimport createResolverAndFetcher, { ClientOptions } from '@pnpm/client';\nimport pickRegistryForPackage from '@pnpm/pick-registry-for-package';\nimport { Logger } from '@teambit/logger';\nimport toNerfDart from 'nerf-dart';\nimport { readConfig } from './read-config';\n\ntype RegistriesMap = {\n default: string;\n [registryName: string]: string;\n};\n\nasync function createStoreController(\n rootDir: string,\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n): Promise<{ ctrl: StoreController; dir: string }> {\n const authConfig = getAuthConfig(registries);\n const opts: CreateStoreControllerOptions = {\n dir: rootDir,\n cacheDir,\n storeDir,\n rawConfig: authConfig,\n verifyStoreIntegrity: true,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n maxSockets: networkConfig.maxSockets,\n networkConcurrency: networkConfig.networkConcurrency,\n };\n // Although it would be enough to call createNewStoreController(),\n // that doesn't resolve the store directory location.\n return createOrConnectStoreController(opts);\n}\n\nasync function generateResolverAndFetcher(\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n) {\n const pnpmConfig = await readConfig();\n const authConfig = getAuthConfig(registries);\n const opts: ClientOptions = {\n authConfig: Object.assign({}, pnpmConfig.config.rawConfig, authConfig),\n cacheDir,\n httpProxy: proxyConfig?.httpProxy,\n httpsProxy: proxyConfig?.httpsProxy,\n ca: proxyConfig?.ca,\n cert: proxyConfig?.cert,\n key: proxyConfig?.key,\n localAddress: networkConfig?.localAddress,\n noProxy: proxyConfig?.noProxy,\n strictSsl: proxyConfig.strictSSL,\n timeout: networkConfig.fetchTimeout,\n retry: {\n factor: networkConfig.fetchRetryFactor,\n maxTimeout: networkConfig.fetchRetryMaxtimeout,\n minTimeout: networkConfig.fetchRetryMintimeout,\n retries: networkConfig.fetchRetries,\n },\n };\n const result = createResolverAndFetcher(opts);\n return result;\n}\n\nexport async function install(\n rootPathToManifest,\n pathsToManifests,\n storeDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {},\n options?: {\n overrides?: Record<string, string>;\n },\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n logger?: Logger\n) {\n const packagesToBuild: MutatedProject[] = []; // @pnpm/core will use this to install the packages\n const workspacePackages = {}; // @pnpm/core will use this to link packages to each other\n\n // This will create local link by pnpm to a component exists in the ws.\n // it will later deleted by the link process\n // we keep it here to better support case like this:\n // compA@1.0.0 uses compB@1.0.0\n // I have compB@2.0.0 in my workspace\n // now I install compA@1.0.0\n // compA is hoisted to the root and install B@1.0.0 hoisted to the root as well\n // now we will make link to B@2.0.0 and A will break\n // with this we will have a link to the local B by pnpm so it will install B@1.0.0 inside A\n // then when overriding the link, A will still works\n // This is the rational behind not deleting this completely, but need further check that it really works\n\n // eslint-disable-next-line\n for (const rootDir in pathsToManifests) {\n const manifest = pathsToManifests[rootDir];\n packagesToBuild.push({\n buildIndex: 0, // workspace components should be installed before the root\n manifest,\n rootDir,\n mutation: 'install',\n });\n workspacePackages[manifest.name] = workspacePackages[manifest.name] || {};\n workspacePackages[manifest.name][manifest.version] = { dir: rootDir, manifest };\n }\n packagesToBuild.push({\n buildIndex: 1, // install the root package after the workspace components were installed\n manifest: rootPathToManifest.manifest,\n mutation: 'install',\n rootDir: rootPathToManifest.rootDir,\n });\n const registriesMap = getRegistriesMap(registries);\n const authConfig = getAuthConfig(registries);\n const storeController = await createStoreController(\n rootPathToManifest.rootDir,\n storeDir,\n cacheDir,\n registries,\n proxyConfig,\n networkConfig\n );\n const opts = {\n storeDir: storeController.dir,\n dir: rootPathToManifest.rootDir,\n storeController: storeController.ctrl,\n workspacePackages,\n preferFrozenLockfile: true,\n registries: registriesMap,\n rawConfig: authConfig,\n overrides: options?.overrides,\n };\n\n const stopReporting = defaultReporter({\n context: {\n argv: [],\n },\n reportingOptions: {\n appendOnly: false,\n throttleProgress: 200,\n },\n streamParser,\n });\n try {\n await mutateModules(packagesToBuild, opts);\n } finally {\n stopReporting();\n }\n}\n\nexport async function resolveRemoteVersion(\n packageName: string,\n rootDir: string,\n cacheDir: string,\n registries: Registries,\n proxyConfig: PackageManagerProxyConfig = {},\n networkConfig: PackageManagerNetworkConfig = {}\n): Promise<ResolvedPackageVersion> {\n const { resolve } = await generateResolverAndFetcher(cacheDir, registries, proxyConfig, networkConfig);\n const resolveOpts = {\n projectDir: rootDir,\n registry: '',\n };\n try {\n const parsedPackage = parsePackageName(packageName);\n const registriesMap = getRegistriesMap(registries);\n const registry = pickRegistryForPackage(registriesMap, parsedPackage.name);\n const wantedDep: WantedDependency = {\n alias: parsedPackage.name,\n pref: parsedPackage.version,\n };\n const isValidRange = parsedPackage.version ? !!semver.validRange(parsedPackage.version) : false;\n resolveOpts.registry = registry;\n const val = await resolve(wantedDep, resolveOpts);\n const version = isValidRange ? parsedPackage.version : val.manifest.version;\n\n return {\n packageName: val.manifest.name,\n version,\n isSemver: true,\n resolvedVia: val.resolvedVia,\n };\n } catch (e: any) {\n if (!e.message?.includes('is not a valid string')) {\n throw e;\n }\n // The provided package is probably a git url or path to a folder\n const wantedDep: WantedDependency = {\n alias: undefined,\n pref: packageName,\n };\n const val = await resolve(wantedDep, resolveOpts);\n return {\n packageName: val.manifest.name,\n version: val.normalizedPref,\n isSemver: false,\n resolvedVia: val.resolvedVia,\n };\n }\n}\n\nfunction getRegistriesMap(registries: Registries): RegistriesMap {\n const registriesMap = {\n default: registries.defaultRegistry.uri || NPM_REGISTRY,\n };\n\n Object.entries(registries.scopes).forEach(([registryName, registry]) => {\n registriesMap[`@${registryName}`] = registry.uri;\n });\n return registriesMap;\n}\n\nfunction getAuthConfig(registries: Registries): Record<string, any> {\n const res: any = {};\n res.registry = registries.defaultRegistry.uri;\n if (registries.defaultRegistry.alwaysAuth) {\n res['always-auth'] = true;\n }\n const defaultAuthTokens = getAuthTokenForRegistry(registries.defaultRegistry, true);\n defaultAuthTokens.forEach(({ keyName, val }) => {\n res[keyName] = val;\n });\n\n Object.entries(registries.scopes).forEach(([, registry]) => {\n const authTokens = getAuthTokenForRegistry(registry);\n authTokens.forEach(({ keyName, val }) => {\n res[keyName] = val;\n });\n if (registry.alwaysAuth) {\n const nerfed = toNerfDart(registry.uri);\n const alwaysAuthKeyName = `${nerfed}:always-auth`;\n res[alwaysAuthKeyName] = true;\n }\n });\n return res;\n}\n\nfunction getAuthTokenForRegistry(registry: Registry, isDefault = false): { keyName: string; val: string }[] {\n const nerfed = toNerfDart(registry.uri);\n if (registry.originalAuthType === 'authToken') {\n return [\n {\n keyName: `${nerfed}:_authToken`,\n val: registry.originalAuthValue || '',\n },\n ];\n }\n if (registry.originalAuthType === 'auth') {\n return [\n {\n keyName: isDefault ? '_auth' : `${nerfed}:_auth`,\n val: registry.originalAuthValue || '',\n },\n ];\n }\n if (registry.originalAuthType === 'user-pass') {\n return [\n {\n keyName: `${nerfed}:username`,\n val: registry.originalAuthValue?.split(':')[0] || '',\n },\n {\n keyName: `${nerfed}:_password`,\n val: registry.originalAuthValue?.split(':')[1] || '',\n },\n ];\n }\n return [];\n}\n"]}
@@ -118,7 +118,9 @@ class PnpmPackageManager {
118
118
  const registries = await this.depResolver.getRegistries();
119
119
  const proxyConfig = await this.depResolver.getProxyConfig();
120
120
  const networkConfig = await this.depResolver.getNetworkConfig();
121
- await install(rootManifest, componentsManifests, storeDir, cacheDir, registries, proxyConfig, networkConfig, this.logger);
121
+ await install(rootManifest, componentsManifests, storeDir, cacheDir, registries, proxyConfig, networkConfig, {
122
+ overrides: installOptions.overrides
123
+ }, this.logger);
122
124
  this.logger.on(); // Make a divider row to improve output
123
125
 
124
126
  this.logger.console('-------------------------');
@@ -1 +1 @@
1
- {"version":3,"sources":["pnpm.package-manager.ts"],"names":["defaultStoreDir","userHome","defaultCacheDir","PnpmPackageManager","constructor","depResolver","pkg","logger","readConfig","install","rootDir","rootPolicy","componentDirectoryMap","installOptions","require","storeDir","cacheRootDir","cacheDir","components","toArray","map","component","options","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","dependencyFilterFn","workspaceManifest","getWorkspaceManifest","undefined","rootManifest","toJson","includeDir","copyPeerToRuntime","copyPeerToRuntimeOnRoot","componentsManifests","computeComponentsManifests","componentsManifestsMap","copyPeerToRuntimeOnComponents","debug","setStatusLine","off","registries","getRegistries","proxyConfig","getProxyConfig","networkConfig","getNetworkConfig","on","console","consoleSuccess","componentsManifestsFromWorkspace","reduce","acc","dir","packageName","getPackageName","has","get","resolveRemoteVersion","config","maxSockets","networkConcurrency","fetchRetries","fetchTimeout","fetchRetryMaxtimeout","fetchRetryMintimeout","pnpmRegistry","defaultRegistry","Registry","default","uri","alwaysAuth","authHeaderValue","originalAuthType","originalAuthValue","pnpmScoped","scopesRegistries","Object","keys","scopedRegName","scopedReg","name","replace","bit","BIT_DEV_REGISTRY","Registries"],"mappings":"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","sourcesContent":["import { ComponentMap } from '@teambit/component';\nimport {\n ComponentsManifestsMap,\n CreateFromComponentsOptions,\n WorkspacePolicy,\n DependencyResolverMain,\n PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n Registries,\n Registry,\n BIT_DEV_REGISTRY,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { memoize, omit } from 'lodash';\nimport { PkgMain } from '@teambit/pkg';\nimport { join } from 'path';\nimport userHome from 'user-home';\nimport { readConfig } from './read-config';\n\nconst defaultStoreDir = join(userHome, '.pnpm-store');\nconst defaultCacheDir = join(userHome, '.pnpm-cache');\n\nexport class PnpmPackageManager implements PackageManager {\n private readConfig = memoize(readConfig);\n constructor(private depResolver: DependencyResolverMain, private pkg: PkgMain, private logger: Logger) {}\n\n async install(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<void> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { install } = require('./lynx');\n const storeDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-store') : defaultStoreDir;\n const cacheDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-cache') : defaultCacheDir;\n\n const components = componentDirectoryMap.toArray().map(([component]) => component);\n const options: CreateFromComponentsOptions = {\n filterComponentsFromManifests: true,\n createManifestForComponentsWithoutDependencies: true,\n dedupe: installOptions.dedupe,\n dependencyFilterFn: installOptions.dependencyFilterFn,\n };\n const workspaceManifest = await this.depResolver.getWorkspaceManifest(\n undefined,\n undefined,\n rootPolicy,\n rootDir,\n components,\n options\n );\n const rootManifest = workspaceManifest.toJson({\n includeDir: true,\n copyPeerToRuntime: installOptions.copyPeerToRuntimeOnRoot,\n });\n\n const componentsManifests = this.computeComponentsManifests(\n componentDirectoryMap,\n workspaceManifest.componentsManifestsMap,\n // In case of not deduping we want to install peers inside the components\n // !options.dedupe\n installOptions.copyPeerToRuntimeOnComponents\n );\n this.logger.debug('root manifest for installation', rootManifest);\n this.logger.debug('components manifests for installation', componentsManifests);\n this.logger.setStatusLine('installing dependencies using pnpm');\n // turn off the logger because it interrupts the pnpm output\n this.logger.off();\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n await install(\n rootManifest,\n componentsManifests,\n storeDir,\n cacheDir,\n registries,\n proxyConfig,\n networkConfig,\n this.logger\n );\n this.logger.on();\n // Make a divider row to improve output\n this.logger.console('-------------------------');\n this.logger.consoleSuccess('installing dependencies using pnpm');\n }\n\n private computeComponentsManifests(\n componentDirectoryMap: ComponentMap<string>,\n componentsManifestsFromWorkspace: ComponentsManifestsMap,\n copyPeerToRuntime = false\n ) {\n return componentDirectoryMap.toArray().reduce((acc, [component, dir]) => {\n const packageName = this.pkg.getPackageName(component);\n if (componentsManifestsFromWorkspace.has(packageName)) {\n acc[dir] = componentsManifestsFromWorkspace.get(packageName)?.toJson({ copyPeerToRuntime });\n }\n return acc;\n }, {});\n }\n\n async resolveRemoteVersion(\n packageName: string,\n options: PackageManagerResolveRemoteVersionOptions\n ): Promise<ResolvedPackageVersion> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { resolveRemoteVersion } = require('./lynx');\n const cacheDir = options?.cacheRootDir ? join(options?.cacheRootDir, '.pnpm-cache') : defaultStoreDir;\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n return resolveRemoteVersion(packageName, options.rootDir, cacheDir, registries, proxyConfig, networkConfig);\n }\n\n async getProxyConfig?(): Promise<PackageManagerProxyConfig> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getProxyConfig } = require('./get-proxy-config');\n const { config } = await this.readConfig();\n return getProxyConfig(config);\n }\n\n async getNetworkConfig?(): Promise<PackageManagerNetworkConfig> {\n const { config } = await this.readConfig();\n return {\n maxSockets: config.maxSockets,\n networkConcurrency: config.networkConcurrency,\n fetchRetries: config.fetchRetries,\n fetchTimeout: config.fetchTimeout,\n fetchRetryMaxtimeout: config.fetchRetryMaxtimeout,\n fetchRetryMintimeout: config.fetchRetryMintimeout,\n };\n }\n\n async getRegistries(): Promise<Registries> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getRegistries } = require('./get-registries');\n const { config } = await this.readConfig();\n const pnpmRegistry = await getRegistries(config);\n const defaultRegistry = new Registry(\n pnpmRegistry.default.uri,\n pnpmRegistry.default.alwaysAuth,\n pnpmRegistry.default.authHeaderValue,\n pnpmRegistry.default.originalAuthType,\n pnpmRegistry.default.originalAuthValue\n );\n\n const pnpmScoped = omit(pnpmRegistry, ['default']);\n const scopesRegistries: Record<string, Registry> = Object.keys(pnpmScoped).reduce((acc, scopedRegName) => {\n const scopedReg = pnpmScoped[scopedRegName];\n const name = scopedRegName.replace('@', '');\n acc[name] = new Registry(\n scopedReg.uri,\n scopedReg.alwaysAuth,\n scopedReg.authHeaderValue,\n scopedReg.originalAuthType,\n scopedReg.originalAuthValue\n );\n return acc;\n }, {});\n\n // Add bit registry server if not exist\n if (!scopesRegistries.bit) {\n scopesRegistries.bit = new Registry(BIT_DEV_REGISTRY, true);\n }\n\n return new Registries(defaultRegistry, scopesRegistries);\n }\n}\n"]}
1
+ {"version":3,"sources":["pnpm.package-manager.ts"],"names":["defaultStoreDir","userHome","defaultCacheDir","PnpmPackageManager","constructor","depResolver","pkg","logger","readConfig","install","rootDir","rootPolicy","componentDirectoryMap","installOptions","require","storeDir","cacheRootDir","cacheDir","components","toArray","map","component","options","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","dependencyFilterFn","workspaceManifest","getWorkspaceManifest","undefined","rootManifest","toJson","includeDir","copyPeerToRuntime","copyPeerToRuntimeOnRoot","componentsManifests","computeComponentsManifests","componentsManifestsMap","copyPeerToRuntimeOnComponents","debug","setStatusLine","off","registries","getRegistries","proxyConfig","getProxyConfig","networkConfig","getNetworkConfig","overrides","on","console","consoleSuccess","componentsManifestsFromWorkspace","reduce","acc","dir","packageName","getPackageName","has","get","resolveRemoteVersion","config","maxSockets","networkConcurrency","fetchRetries","fetchTimeout","fetchRetryMaxtimeout","fetchRetryMintimeout","pnpmRegistry","defaultRegistry","Registry","default","uri","alwaysAuth","authHeaderValue","originalAuthType","originalAuthValue","pnpmScoped","scopesRegistries","Object","keys","scopedRegName","scopedReg","name","replace","bit","BIT_DEV_REGISTRY","Registries"],"mappings":"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","sourcesContent":["import { ComponentMap } from '@teambit/component';\nimport {\n ComponentsManifestsMap,\n CreateFromComponentsOptions,\n WorkspacePolicy,\n DependencyResolverMain,\n PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n Registries,\n Registry,\n BIT_DEV_REGISTRY,\n PackageManagerProxyConfig,\n PackageManagerNetworkConfig,\n} from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { memoize, omit } from 'lodash';\nimport { PkgMain } from '@teambit/pkg';\nimport { join } from 'path';\nimport userHome from 'user-home';\nimport { readConfig } from './read-config';\n\nconst defaultStoreDir = join(userHome, '.pnpm-store');\nconst defaultCacheDir = join(userHome, '.pnpm-cache');\n\nexport class PnpmPackageManager implements PackageManager {\n private readConfig = memoize(readConfig);\n constructor(private depResolver: DependencyResolverMain, private pkg: PkgMain, private logger: Logger) {}\n\n async install(\n rootDir: string,\n rootPolicy: WorkspacePolicy,\n componentDirectoryMap: ComponentMap<string>,\n installOptions: PackageManagerInstallOptions = {}\n ): Promise<void> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { install } = require('./lynx');\n const storeDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-store') : defaultStoreDir;\n const cacheDir = installOptions?.cacheRootDir ? join(installOptions?.cacheRootDir, '.pnpm-cache') : defaultCacheDir;\n\n const components = componentDirectoryMap.toArray().map(([component]) => component);\n const options: CreateFromComponentsOptions = {\n filterComponentsFromManifests: true,\n createManifestForComponentsWithoutDependencies: true,\n dedupe: installOptions.dedupe,\n dependencyFilterFn: installOptions.dependencyFilterFn,\n };\n const workspaceManifest = await this.depResolver.getWorkspaceManifest(\n undefined,\n undefined,\n rootPolicy,\n rootDir,\n components,\n options\n );\n const rootManifest = workspaceManifest.toJson({\n includeDir: true,\n copyPeerToRuntime: installOptions.copyPeerToRuntimeOnRoot,\n });\n\n const componentsManifests = this.computeComponentsManifests(\n componentDirectoryMap,\n workspaceManifest.componentsManifestsMap,\n // In case of not deduping we want to install peers inside the components\n // !options.dedupe\n installOptions.copyPeerToRuntimeOnComponents\n );\n this.logger.debug('root manifest for installation', rootManifest);\n this.logger.debug('components manifests for installation', componentsManifests);\n this.logger.setStatusLine('installing dependencies using pnpm');\n // turn off the logger because it interrupts the pnpm output\n this.logger.off();\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n await install(\n rootManifest,\n componentsManifests,\n storeDir,\n cacheDir,\n registries,\n proxyConfig,\n networkConfig,\n {\n overrides: installOptions.overrides,\n },\n this.logger\n );\n this.logger.on();\n // Make a divider row to improve output\n this.logger.console('-------------------------');\n this.logger.consoleSuccess('installing dependencies using pnpm');\n }\n\n private computeComponentsManifests(\n componentDirectoryMap: ComponentMap<string>,\n componentsManifestsFromWorkspace: ComponentsManifestsMap,\n copyPeerToRuntime = false\n ) {\n return componentDirectoryMap.toArray().reduce((acc, [component, dir]) => {\n const packageName = this.pkg.getPackageName(component);\n if (componentsManifestsFromWorkspace.has(packageName)) {\n acc[dir] = componentsManifestsFromWorkspace.get(packageName)?.toJson({ copyPeerToRuntime });\n }\n return acc;\n }, {});\n }\n\n async resolveRemoteVersion(\n packageName: string,\n options: PackageManagerResolveRemoteVersionOptions\n ): Promise<ResolvedPackageVersion> {\n // require it dynamically for performance purpose. the pnpm package require many files - do not move to static import\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { resolveRemoteVersion } = require('./lynx');\n const cacheDir = options?.cacheRootDir ? join(options?.cacheRootDir, '.pnpm-cache') : defaultStoreDir;\n const registries = await this.depResolver.getRegistries();\n const proxyConfig = await this.depResolver.getProxyConfig();\n const networkConfig = await this.depResolver.getNetworkConfig();\n return resolveRemoteVersion(packageName, options.rootDir, cacheDir, registries, proxyConfig, networkConfig);\n }\n\n async getProxyConfig?(): Promise<PackageManagerProxyConfig> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getProxyConfig } = require('./get-proxy-config');\n const { config } = await this.readConfig();\n return getProxyConfig(config);\n }\n\n async getNetworkConfig?(): Promise<PackageManagerNetworkConfig> {\n const { config } = await this.readConfig();\n return {\n maxSockets: config.maxSockets,\n networkConcurrency: config.networkConcurrency,\n fetchRetries: config.fetchRetries,\n fetchTimeout: config.fetchTimeout,\n fetchRetryMaxtimeout: config.fetchRetryMaxtimeout,\n fetchRetryMintimeout: config.fetchRetryMintimeout,\n };\n }\n\n async getRegistries(): Promise<Registries> {\n // eslint-disable-next-line global-require, import/no-dynamic-require\n const { getRegistries } = require('./get-registries');\n const { config } = await this.readConfig();\n const pnpmRegistry = await getRegistries(config);\n const defaultRegistry = new Registry(\n pnpmRegistry.default.uri,\n pnpmRegistry.default.alwaysAuth,\n pnpmRegistry.default.authHeaderValue,\n pnpmRegistry.default.originalAuthType,\n pnpmRegistry.default.originalAuthValue\n );\n\n const pnpmScoped = omit(pnpmRegistry, ['default']);\n const scopesRegistries: Record<string, Registry> = Object.keys(pnpmScoped).reduce((acc, scopedRegName) => {\n const scopedReg = pnpmScoped[scopedRegName];\n const name = scopedRegName.replace('@', '');\n acc[name] = new Registry(\n scopedReg.uri,\n scopedReg.alwaysAuth,\n scopedReg.authHeaderValue,\n scopedReg.originalAuthType,\n scopedReg.originalAuthValue\n );\n return acc;\n }, {});\n\n // Add bit registry server if not exist\n if (!scopesRegistries.bit) {\n scopesRegistries.bit = new Registry(BIT_DEV_REGISTRY, true);\n }\n\n return new Registries(defaultRegistry, scopesRegistries);\n }\n}\n"]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/pnpm",
3
- "version": "0.0.579",
3
+ "version": "0.0.583",
4
4
  "homepage": "https://bit.dev/teambit/dependencies/pnpm",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.dependencies",
8
8
  "name": "pnpm",
9
- "version": "0.0.579"
9
+ "version": "0.0.583"
10
10
  },
11
11
  "dependencies": {
12
12
  "@pnpm/error": "2.0.0",
@@ -33,11 +33,11 @@
33
33
  "user-home": "2.0.0",
34
34
  "@babel/runtime": "7.12.18",
35
35
  "core-js": "^3.0.0",
36
- "@teambit/dependency-resolver": "0.0.579",
37
- "@teambit/logger": "0.0.487",
38
- "@teambit/cli": "0.0.399",
39
- "@teambit/pkg": "0.0.579",
40
- "@teambit/component": "0.0.579"
36
+ "@teambit/dependency-resolver": "0.0.583",
37
+ "@teambit/logger": "0.0.488",
38
+ "@teambit/cli": "0.0.400",
39
+ "@teambit/pkg": "0.0.583",
40
+ "@teambit/component": "0.0.583"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/lodash": "4.14.165",
@@ -48,10 +48,10 @@
48
48
  "@types/jest": "^26.0.0",
49
49
  "@types/react-dom": "^17.0.5",
50
50
  "@types/node": "12.20.4",
51
- "@teambit/dependencies.aspect-docs.pnpm": "0.0.121"
51
+ "@teambit/dependencies.aspect-docs.pnpm": "0.0.122"
52
52
  },
53
53
  "peerDependencies": {
54
- "@teambit/legacy": "1.0.185",
54
+ "@teambit/legacy": "1.0.186",
55
55
  "react-dom": "^16.8.0 || ^17.0.0",
56
56
  "react": "^16.8.0 || ^17.0.0"
57
57
  },
@@ -79,7 +79,7 @@
79
79
  "react": "-"
80
80
  },
81
81
  "peerDependencies": {
82
- "@teambit/legacy": "1.0.185",
82
+ "@teambit/legacy": "1.0.186",
83
83
  "react-dom": "^16.8.0 || ^17.0.0",
84
84
  "react": "^16.8.0 || ^17.0.0"
85
85
  }
package/tsconfig.json CHANGED
@@ -15,6 +15,7 @@
15
15
  "skipLibCheck": true,
16
16
  "moduleResolution": "node",
17
17
  "esModuleInterop": true,
18
+ "resolveJsonModule": true,
18
19
  "composite": true,
19
20
  "emitDeclarationOnly": true,
20
21
  "outDir": "dist",
@@ -25,8 +26,7 @@
25
26
  "strict": true,
26
27
  "noImplicitAny": false,
27
28
  "rootDir": ".",
28
- "preserveConstEnums": true,
29
- "resolveJsonModule": true
29
+ "preserveConstEnums": true
30
30
  },
31
31
  "exclude": [
32
32
  "dist"