@ms-cloudpack/package-utilities 3.1.0 → 3.1.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"findPackagesFromPath.d.ts","sourceRoot":"","sources":["../../src/createResolveMap/findPackagesFromPath.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD;;OAEG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAE9B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;QAII;IACJ,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;QAEI;IACJ,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,GAAG,OAAO,CAAC,UAAU,CAAC,CAwFtB"}
1
+ {"version":3,"file":"findPackagesFromPath.d.ts","sourceRoot":"","sources":["../../src/createResolveMap/findPackagesFromPath.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD;;OAEG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAE9B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;QAII;IACJ,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;QAEI;IACJ,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,GAAG,OAAO,CAAC,UAAU,CAAC,CAuFtB"}
@@ -20,7 +20,6 @@ export async function findPackagesFromPath(options) {
20
20
  }
21
21
  let { gitRootPath } = options;
22
22
  if (!gitRootPath) {
23
- gitRootPath = path;
24
23
  try {
25
24
  gitRootPath = findGitRoot(path);
26
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"findPackagesFromPath.js","sourceRoot":"","sources":["../../src/createResolveMap/findPackagesFromPath.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PackageJson } from '@ms-cloudpack/bundler-types';\nimport { isFolder } from '@ms-cloudpack/path-utilities';\nimport glob from 'fast-glob';\nimport { dirname, join } from 'path';\nimport { findGitRoot } from 'workspace-tools';\nimport { PackageDefinitions } from '../PackageDefinitions.js';\nimport { findPackagePath } from '../findPackagePath.js';\nimport { isExternalPackage } from '../isExternalPackage.js';\nimport type { PackageMap } from './PackageMap.js';\nimport type { ResolveMapEntry } from './ResolveMapEntry.js';\n\n/**\n * Find all packages from a given path. We do this by walking the dependency tree\n * of the app to build a map of all packages and their dependencies.\n */\nexport async function findPackagesFromPath(options: {\n /**\n * Paths to search for package.json files and traverse their dependencies to build a PackageMap.\n */\n paths: string[];\n\n /**\n * Package cache.\n */\n packages?: PackageDefinitions;\n\n /**\n * Where to stop looking for packages. If not specified, will look for a git root. If one is not\n * found, will use the first path in the paths array.\n */\n gitRootPath?: string;\n\n /**\n * If true will check semver requirements for all dependencies. Note that if the workspace\n * uses resolutions to force a particular version of a dependency, this could cause a failure.\n * TODO: read resolutions from package.json and use them to allow mismatches.\n **/\n useStrictVersioning?: boolean;\n\n /**\n * If true will glob for all package.json files in the path and add them to the map.\n **/\n discoverPackages?: boolean;\n}): Promise<PackageMap> {\n const { paths, discoverPackages, useStrictVersioning, packages = PackageDefinitions.getInstance() } = options;\n const packageMap: PackageMap = {};\n const visitedPaths = new Set<string>();\n const pathsToVisit: string[] = [];\n\n for (const path of paths) {\n if (!(await isFolder(path))) {\n throw new Error(`Path ${path} is not a folder.`);\n }\n\n let { gitRootPath } = options;\n\n if (!gitRootPath) {\n gitRootPath = path;\n try {\n gitRootPath = findGitRoot(path);\n } catch (e) {\n /* ignore */\n }\n }\n\n if (discoverPackages) {\n const packagePaths = await glob('**/package.json', { cwd: path, ignore: ['**/node_modules/**'] });\n\n pathsToVisit.push(...packagePaths.map((p) => dirname(join(path, p))));\n } else {\n pathsToVisit.push(path);\n }\n\n while (pathsToVisit.length) {\n const packagePath = pathsToVisit.shift();\n\n if (packagePath && !visitedPaths.has(packagePath)) {\n visitedPaths.add(packagePath);\n\n const packageDefinition = await packages.get(packagePath);\n\n if (!packageDefinition) {\n throw new Error(`Could not find package definition at \"${packagePath}\".`);\n }\n\n if (packageDefinition?.name && packageDefinition.version) {\n const { name, version } = packageDefinition;\n const entry = initPackageEntry({ path: packagePath, packageMap, definition: packageDefinition });\n\n // Add all dependencies to the list of paths to visit.\n const dependencies = {\n ...(packageDefinition.dependencies || {}),\n ...(packageDefinition.peerDependencies || {}),\n } as Record<string, string>;\n\n for (const [dependencyName, versionRequirement] of Object.entries(dependencies)) {\n const isPeerDependency = !!packageDefinition.peerDependencies?.[dependencyName];\n\n const dependencyPath = await findPackagePath({\n dependencyName,\n versionRequirement: useStrictVersioning && !isPeerDependency ? versionRequirement : undefined,\n cwd: packagePath,\n gitRootPath,\n });\n\n if (dependencyPath) {\n const dependencyDefinition = await packages.get(dependencyPath);\n if (dependencyDefinition?.name && dependencyDefinition.version) {\n const dependencyEntry = initPackageEntry({\n path: dependencyPath,\n packageMap,\n definition: dependencyDefinition,\n });\n\n entry.dependencies[dependencyDefinition.name] = dependencyDefinition.version;\n dependencyEntry.requiredBy[`${name}@${version}`] = versionRequirement;\n\n pathsToVisit.push(dependencyPath);\n }\n } else if (!isPeerDependency) {\n throw new Error(\n `Could not find dependency \"${dependencyName}\" at \"${packagePath}\" with version requirement \"${versionRequirement}\".`,\n );\n }\n }\n }\n }\n }\n }\n\n return packageMap;\n}\n\nfunction initPackageEntry(options: { path: string; packageMap: PackageMap; definition: PackageJson }): ResolveMapEntry {\n const { path = '', packageMap, definition } = options;\n const { name = '_no_name_', version = '*' } = definition;\n\n const mapEntry = (packageMap[name] ||= {}) as Record<string, ResolveMapEntry>;\n const entry = (mapEntry[version] ||= {\n name,\n version,\n path,\n dependencies: {},\n requiredBy: {},\n });\n\n if (isExternalPackage(path)) {\n entry.isExternal = true;\n }\n\n return entry;\n}\n"]}
1
+ {"version":3,"file":"findPackagesFromPath.js","sourceRoot":"","sources":["../../src/createResolveMap/findPackagesFromPath.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PackageJson } from '@ms-cloudpack/bundler-types';\nimport { isFolder } from '@ms-cloudpack/path-utilities';\nimport glob from 'fast-glob';\nimport { dirname, join } from 'path';\nimport { findGitRoot } from 'workspace-tools';\nimport { PackageDefinitions } from '../PackageDefinitions.js';\nimport { findPackagePath } from '../findPackagePath.js';\nimport { isExternalPackage } from '../isExternalPackage.js';\nimport type { PackageMap } from './PackageMap.js';\nimport type { ResolveMapEntry } from './ResolveMapEntry.js';\n\n/**\n * Find all packages from a given path. We do this by walking the dependency tree\n * of the app to build a map of all packages and their dependencies.\n */\nexport async function findPackagesFromPath(options: {\n /**\n * Paths to search for package.json files and traverse their dependencies to build a PackageMap.\n */\n paths: string[];\n\n /**\n * Package cache.\n */\n packages?: PackageDefinitions;\n\n /**\n * Where to stop looking for packages. If not specified, will look for a git root. If one is not\n * found, will use the first path in the paths array.\n */\n gitRootPath?: string;\n\n /**\n * If true will check semver requirements for all dependencies. Note that if the workspace\n * uses resolutions to force a particular version of a dependency, this could cause a failure.\n * TODO: read resolutions from package.json and use them to allow mismatches.\n **/\n useStrictVersioning?: boolean;\n\n /**\n * If true will glob for all package.json files in the path and add them to the map.\n **/\n discoverPackages?: boolean;\n}): Promise<PackageMap> {\n const { paths, discoverPackages, useStrictVersioning, packages = PackageDefinitions.getInstance() } = options;\n const packageMap: PackageMap = {};\n const visitedPaths = new Set<string>();\n const pathsToVisit: string[] = [];\n\n for (const path of paths) {\n if (!(await isFolder(path))) {\n throw new Error(`Path ${path} is not a folder.`);\n }\n\n let { gitRootPath } = options;\n\n if (!gitRootPath) {\n try {\n gitRootPath = findGitRoot(path);\n } catch (e) {\n /* ignore */\n }\n }\n\n if (discoverPackages) {\n const packagePaths = await glob('**/package.json', { cwd: path, ignore: ['**/node_modules/**'] });\n\n pathsToVisit.push(...packagePaths.map((p) => dirname(join(path, p))));\n } else {\n pathsToVisit.push(path);\n }\n\n while (pathsToVisit.length) {\n const packagePath = pathsToVisit.shift();\n\n if (packagePath && !visitedPaths.has(packagePath)) {\n visitedPaths.add(packagePath);\n\n const packageDefinition = await packages.get(packagePath);\n\n if (!packageDefinition) {\n throw new Error(`Could not find package definition at \"${packagePath}\".`);\n }\n\n if (packageDefinition?.name && packageDefinition.version) {\n const { name, version } = packageDefinition;\n const entry = initPackageEntry({ path: packagePath, packageMap, definition: packageDefinition });\n\n // Add all dependencies to the list of paths to visit.\n const dependencies = {\n ...(packageDefinition.dependencies || {}),\n ...(packageDefinition.peerDependencies || {}),\n } as Record<string, string>;\n\n for (const [dependencyName, versionRequirement] of Object.entries(dependencies)) {\n const isPeerDependency = !!packageDefinition.peerDependencies?.[dependencyName];\n\n const dependencyPath = await findPackagePath({\n dependencyName,\n versionRequirement: useStrictVersioning && !isPeerDependency ? versionRequirement : undefined,\n cwd: packagePath,\n gitRootPath,\n });\n\n if (dependencyPath) {\n const dependencyDefinition = await packages.get(dependencyPath);\n if (dependencyDefinition?.name && dependencyDefinition.version) {\n const dependencyEntry = initPackageEntry({\n path: dependencyPath,\n packageMap,\n definition: dependencyDefinition,\n });\n\n entry.dependencies[dependencyDefinition.name] = dependencyDefinition.version;\n dependencyEntry.requiredBy[`${name}@${version}`] = versionRequirement;\n\n pathsToVisit.push(dependencyPath);\n }\n } else if (!isPeerDependency) {\n throw new Error(\n `Could not find dependency \"${dependencyName}\" at \"${packagePath}\" with version requirement \"${versionRequirement}\".`,\n );\n }\n }\n }\n }\n }\n }\n\n return packageMap;\n}\n\nfunction initPackageEntry(options: { path: string; packageMap: PackageMap; definition: PackageJson }): ResolveMapEntry {\n const { path = '', packageMap, definition } = options;\n const { name = '_no_name_', version = '*' } = definition;\n\n const mapEntry = (packageMap[name] ||= {}) as Record<string, ResolveMapEntry>;\n const entry = (mapEntry[version] ||= {\n name,\n version,\n path,\n dependencies: {},\n requiredBy: {},\n });\n\n if (isExternalPackage(path)) {\n entry.isExternal = true;\n }\n\n return entry;\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import path from 'path';
2
2
  import { cleanEntry } from './cleanEntry.js';
3
- const defaultConditions = ['browser', 'import', 'module', 'default'];
3
+ const defaultConditions = ['browser', 'module', 'import', 'default'];
4
4
  /**
5
5
  * Given a package definition and applicable conditions, return a flat map of package import to physical (relative) path.
6
6
  * Optionally return the exports map fully qualified with conditions intact using the `fullExports` option.
@@ -1 +1 @@
1
- {"version":3,"file":"flattenExportsMap.js","sourceRoot":"","sources":["../src/flattenExportsMap.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\nimport type { PackageJsonConditionalExports, PackageJsonExports } from '@ms-cloudpack/bundler-types';\nimport { cleanEntry } from './cleanEntry.js';\n\nconst defaultConditions = ['browser', 'import', 'module', 'default'];\n\n/**\n * Given a package definition and applicable conditions, return a flat map of package import to physical (relative) path.\n * Optionally return the exports map fully qualified with conditions intact using the `fullExports` option.\n */\nexport function flattenExportsMap(\n exportsMap: PackageJsonExports,\n options: {\n conditions?: string[];\n requiredConditions?: string[];\n } = {},\n): Record<string, string> {\n const { requiredConditions } = options;\n let { conditions } = options;\n\n if (conditions) {\n const defaultIndex = conditions.indexOf('...');\n if (defaultIndex !== -1) {\n conditions = [...conditions.slice(0, defaultIndex), ...defaultConditions, ...conditions.slice(defaultIndex + 1)];\n }\n } else {\n conditions = defaultConditions;\n }\n\n if (typeof exportsMap === 'string' && conditions.includes('default')) {\n return {\n '.': cleanEntry(exportsMap),\n };\n }\n\n return extractExports(exportsMap, conditions, requiredConditions);\n}\n\nfunction extractExports(\n exports: PackageJsonExports,\n conditions: string[],\n requiredConditions?: string[],\n exportsMap: Record<string, string> = {},\n importMatch = '.',\n matchedConditions: string[] = [],\n) {\n if (\n typeof exports === 'string' &&\n (!requiredConditions || requiredConditions.every((condition) => matchedConditions.includes(condition)))\n ) {\n addExportsEntry(exportsMap, importMatch, exports);\n } else if (Array.isArray(exports)) {\n for (const exportEntry of exports) {\n extractExports(exportEntry, conditions, requiredConditions, exportsMap, importMatch, matchedConditions);\n }\n } else if (exports && typeof exports === 'object') {\n // Iterate through condition matches and go deeper if a match is found.\n for (const condition of conditions) {\n const conditionalExports = (exports as PackageJsonConditionalExports)[condition];\n if (conditionalExports) {\n extractExports(\n conditionalExports,\n conditions,\n requiredConditions,\n exportsMap,\n importMatch,\n matchedConditions.concat(condition),\n );\n // Stop at the first match.\n return exportsMap;\n }\n }\n\n // No conditions are available. Check for import entries.\n for (const [key, value] of Object.entries(exports)) {\n if (key.startsWith('.')) {\n importMatch = key;\n\n if (typeof value === 'string') {\n if (!exportsMap[importMatch] && (!requiredConditions || requiredConditions?.includes(key))) {\n addExportsEntry(exportsMap, importMatch, value);\n }\n } else if (value) {\n extractExports(value, conditions, requiredConditions, exportsMap, importMatch, [...matchedConditions, key]);\n }\n }\n }\n }\n\n return exportsMap;\n}\n\nfunction addExportsEntry(exportsMap: Record<string, string>, key: string, value: string) {\n const basename = path.basename(value);\n const isFilename = basename !== '' && basename !== '.' && !value.endsWith('/');\n\n if (!exportsMap[key] && isFilename && key.indexOf('*') === -1 && !key.endsWith('/') && value.indexOf('*') === -1) {\n exportsMap[key] = cleanEntry(value);\n }\n}\n"]}
1
+ {"version":3,"file":"flattenExportsMap.js","sourceRoot":"","sources":["../src/flattenExportsMap.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\nimport type { PackageJsonConditionalExports, PackageJsonExports } from '@ms-cloudpack/bundler-types';\nimport { cleanEntry } from './cleanEntry.js';\n\nconst defaultConditions = ['browser', 'module', 'import', 'default'];\n\n/**\n * Given a package definition and applicable conditions, return a flat map of package import to physical (relative) path.\n * Optionally return the exports map fully qualified with conditions intact using the `fullExports` option.\n */\nexport function flattenExportsMap(\n exportsMap: PackageJsonExports,\n options: {\n conditions?: string[];\n requiredConditions?: string[];\n } = {},\n): Record<string, string> {\n const { requiredConditions } = options;\n let { conditions } = options;\n\n if (conditions) {\n const defaultIndex = conditions.indexOf('...');\n if (defaultIndex !== -1) {\n conditions = [...conditions.slice(0, defaultIndex), ...defaultConditions, ...conditions.slice(defaultIndex + 1)];\n }\n } else {\n conditions = defaultConditions;\n }\n\n if (typeof exportsMap === 'string' && conditions.includes('default')) {\n return {\n '.': cleanEntry(exportsMap),\n };\n }\n\n return extractExports(exportsMap, conditions, requiredConditions);\n}\n\nfunction extractExports(\n exports: PackageJsonExports,\n conditions: string[],\n requiredConditions?: string[],\n exportsMap: Record<string, string> = {},\n importMatch = '.',\n matchedConditions: string[] = [],\n) {\n if (\n typeof exports === 'string' &&\n (!requiredConditions || requiredConditions.every((condition) => matchedConditions.includes(condition)))\n ) {\n addExportsEntry(exportsMap, importMatch, exports);\n } else if (Array.isArray(exports)) {\n for (const exportEntry of exports) {\n extractExports(exportEntry, conditions, requiredConditions, exportsMap, importMatch, matchedConditions);\n }\n } else if (exports && typeof exports === 'object') {\n // Iterate through condition matches and go deeper if a match is found.\n for (const condition of conditions) {\n const conditionalExports = (exports as PackageJsonConditionalExports)[condition];\n if (conditionalExports) {\n extractExports(\n conditionalExports,\n conditions,\n requiredConditions,\n exportsMap,\n importMatch,\n matchedConditions.concat(condition),\n );\n // Stop at the first match.\n return exportsMap;\n }\n }\n\n // No conditions are available. Check for import entries.\n for (const [key, value] of Object.entries(exports)) {\n if (key.startsWith('.')) {\n importMatch = key;\n\n if (typeof value === 'string') {\n if (!exportsMap[importMatch] && (!requiredConditions || requiredConditions?.includes(key))) {\n addExportsEntry(exportsMap, importMatch, value);\n }\n } else if (value) {\n extractExports(value, conditions, requiredConditions, exportsMap, importMatch, [...matchedConditions, key]);\n }\n }\n }\n }\n\n return exportsMap;\n}\n\nfunction addExportsEntry(exportsMap: Record<string, string>, key: string, value: string) {\n const basename = path.basename(value);\n const isFilename = basename !== '' && basename !== '.' && !value.endsWith('/');\n\n if (!exportsMap[key] && isFilename && key.indexOf('*') === -1 && !key.endsWith('/') && value.indexOf('*') === -1) {\n exportsMap[key] = cleanEntry(value);\n }\n}\n"]}
@@ -1,11 +1,11 @@
1
- // This file is read by tools that parse documentation comments conforming to the TSDoc standard.
2
- // It should be published with your NPM package. It should not be tracked by Git.
3
- {
4
- "tsdocVersion": "0.12",
5
- "toolPackages": [
6
- {
7
- "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.34.4"
9
- }
10
- ]
11
- }
1
+ // This file is read by tools that parse documentation comments conforming to the TSDoc standard.
2
+ // It should be published with your NPM package. It should not be tracked by Git.
3
+ {
4
+ "tsdocVersion": "0.12",
5
+ "toolPackages": [
6
+ {
7
+ "packageName": "@microsoft/api-extractor",
8
+ "packageVersion": "7.34.8"
9
+ }
10
+ ]
11
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ms-cloudpack/package-utilities",
3
- "version": "3.1.0",
3
+ "version": "3.1.2",
4
4
  "description": "Utilities for resolving/parsing packages and their imports.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -26,14 +26,13 @@
26
26
  "workspace-tools": "^0.34.0"
27
27
  },
28
28
  "devDependencies": {
29
+ "@ms-cloudpack/eslint-plugin-internal": "*",
29
30
  "@ms-cloudpack/scripts": "*",
30
- "@ms-cloudpack/eslint-config-base": "*",
31
31
  "@ms-cloudpack/test-utilities": "*",
32
- "@types/resolve": "1.20.2",
33
- "@babel/types": "7.21.4"
32
+ "@types/resolve": "^1.20.2",
33
+ "@babel/types": "^7.21.4"
34
34
  },
35
35
  "scripts": {
36
- "api:update": "cloudpack-scripts api-update",
37
36
  "api": "cloudpack-scripts api",
38
37
  "build:watch": "cloudpack-scripts build-watch",
39
38
  "build": "cloudpack-scripts build",