@sanity/pkg-utils 2.3.13 → 2.3.14
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/_chunks/{build-e6e2708e.cjs → build-bf3729c7.cjs} +4 -4
- package/dist/_chunks/{build-e6e2708e.cjs.map → build-bf3729c7.cjs.map} +1 -1
- package/dist/_chunks/{buildAction-4d12b69c.cjs → buildAction-e721d08b.cjs} +2 -2
- package/dist/_chunks/{buildAction-4d12b69c.cjs.map → buildAction-e721d08b.cjs.map} +1 -1
- package/dist/_chunks/{check-0665cb35.cjs → check-332a2bb9.cjs} +3 -3
- package/dist/_chunks/{check-0665cb35.cjs.map → check-332a2bb9.cjs.map} +1 -1
- package/dist/_chunks/{checkAction-c3e5da35.cjs → checkAction-c39d7dbf.cjs} +2 -2
- package/dist/_chunks/{checkAction-c3e5da35.cjs.map → checkAction-c39d7dbf.cjs.map} +1 -1
- package/dist/_chunks/{consoleSpy-d738cb9f.cjs → consoleSpy-686c350b.cjs} +52 -12
- package/dist/_chunks/consoleSpy-686c350b.cjs.map +1 -0
- package/dist/_chunks/{index-70f8931a.cjs → index-c026daa9.cjs} +3 -3
- package/dist/_chunks/{index-70f8931a.cjs.map → index-c026daa9.cjs.map} +1 -1
- package/dist/_chunks/{init-2377e6e5.cjs → init-e45c0c31.cjs} +2 -2
- package/dist/_chunks/{init-2377e6e5.cjs.map → init-e45c0c31.cjs.map} +1 -1
- package/dist/_chunks/{initAction-2abd8576.cjs → initAction-48ce747a.cjs} +2 -2
- package/dist/_chunks/{initAction-2abd8576.cjs.map → initAction-48ce747a.cjs.map} +1 -1
- package/dist/_chunks/{logger-c593f06b.cjs → logger-718e11be.cjs} +8 -6
- package/dist/_chunks/logger-718e11be.cjs.map +1 -0
- package/dist/_chunks/{watch-d390d5e4.cjs → watch-d7a9e8b7.cjs} +4 -4
- package/dist/_chunks/{watch-d390d5e4.cjs.map → watch-d7a9e8b7.cjs.map} +1 -1
- package/dist/_chunks/{watchAction-63c8a721.cjs → watchAction-06f283b6.cjs} +2 -2
- package/dist/_chunks/{watchAction-63c8a721.cjs.map → watchAction-06f283b6.cjs.map} +1 -1
- package/dist/cli.cjs +5 -5
- package/dist/index.cjs +7 -7
- package/dist/index.d.ts +4 -2
- package/dist/index.js +57 -15
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/src/node/core/pkg/loadPkgWithReporting.ts +91 -18
- package/src/node/core/pkg/types.ts +4 -2
- package/src/node/core/pkg/validatePkg.ts +5 -3
- package/dist/_chunks/consoleSpy-d738cb9f.cjs.map +0 -1
- package/dist/_chunks/logger-c593f06b.cjs.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sanity/pkg-utils",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.14",
|
|
4
4
|
"description": "Simple utilities for modern npm packages.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sanity-io",
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
".": {
|
|
27
27
|
"types": "./dist/index.d.ts",
|
|
28
28
|
"source": "./src/node/index.ts",
|
|
29
|
-
"require": "./dist/index.cjs",
|
|
30
29
|
"import": "./dist/index.js",
|
|
30
|
+
"require": "./dist/index.cjs",
|
|
31
31
|
"default": "./dist/index.js"
|
|
32
32
|
},
|
|
33
33
|
"./package.json": "./package.json"
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
"cac": "^6.7.14",
|
|
137
137
|
"chalk": "^4.1.2",
|
|
138
138
|
"chokidar": "^3.5.3",
|
|
139
|
-
"esbuild": "^0.18.
|
|
139
|
+
"esbuild": "^0.18.19",
|
|
140
140
|
"esbuild-register": "^3.4.2",
|
|
141
141
|
"find-config": "^1.0.0",
|
|
142
142
|
"get-latest-version": "^5.1.0",
|
|
@@ -15,6 +15,7 @@ export async function loadPkgWithReporting(options: {
|
|
|
15
15
|
|
|
16
16
|
try {
|
|
17
17
|
const pkg = await loadPkg({cwd})
|
|
18
|
+
let shouldError = false
|
|
18
19
|
|
|
19
20
|
// validate exports
|
|
20
21
|
if (pkg.exports) {
|
|
@@ -28,33 +29,105 @@ export async function loadPkgWithReporting(options: {
|
|
|
28
29
|
const keys = Object.keys(exp)
|
|
29
30
|
|
|
30
31
|
if (!assertFirst('types', keys)) {
|
|
31
|
-
|
|
32
|
+
shouldError = true
|
|
33
|
+
logger.error(`exports["${expPath}"]: the \`types\` property should be the first property`)
|
|
32
34
|
}
|
|
33
35
|
|
|
34
|
-
if (
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
)
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
36
|
+
if (exp.node) {
|
|
37
|
+
const nodeKeys = Object.keys(exp.node)
|
|
38
|
+
|
|
39
|
+
if (!assertOrder('module', 'import', nodeKeys)) {
|
|
40
|
+
shouldError = true
|
|
41
|
+
logger.error(
|
|
42
|
+
`exports["${expPath}"]: the \`node.module\` property should come before the \`node.import\` property`,
|
|
43
|
+
)
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (!assertOrder('import', 'require', nodeKeys)) {
|
|
47
|
+
logger.warn(
|
|
48
|
+
`exports["${expPath}"]: the \`node.import\` property should come before the \`node.require\` property`,
|
|
49
|
+
)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (!assertOrder('module', 'require', nodeKeys)) {
|
|
53
|
+
logger.warn(
|
|
54
|
+
`exports["${expPath}"]: the \`node.module\` property should come before \`node.require\` property`,
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
if (exp.import && exp.node.import && !assertOrder('node', 'import', keys)) {
|
|
59
|
+
shouldError = true
|
|
60
|
+
logger.error(
|
|
61
|
+
`exports["${expPath}"]: the \`node\` property should come before the \`import\` property`,
|
|
62
|
+
)
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
if (exp.module && exp.node.module && !assertOrder('node', 'module', keys)) {
|
|
66
|
+
shouldError = true
|
|
67
|
+
logger.error(
|
|
68
|
+
`exports["${expPath}"]: the \`node\` property should come before the \`module\` property`,
|
|
69
|
+
)
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
// If there's a `node.import` property but not a `node.require` we can assume `node.import` is wrapping `import` and `node.module` should be added for bundlers
|
|
73
|
+
if (exp.node.import && !exp.node.require && !exp.node.module) {
|
|
74
|
+
shouldError = true
|
|
75
|
+
logger.error(
|
|
76
|
+
`exports["${expPath}"]: the \`node.module\` property should be added so bundlers don't unintentionally try to bundle \`node.import\``,
|
|
77
|
+
)
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (
|
|
81
|
+
exp.node.import &&
|
|
82
|
+
!exp.node.require &&
|
|
83
|
+
exp.node.module &&
|
|
84
|
+
exp.import &&
|
|
85
|
+
exp.node.module !== exp.import
|
|
86
|
+
) {
|
|
87
|
+
shouldError = true
|
|
88
|
+
logger.error(
|
|
89
|
+
`exports["${expPath}"]: the \`node.module\` property should match \`import\``,
|
|
90
|
+
)
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
if (exp.require && exp.node.require && exp.require === exp.node.require) {
|
|
94
|
+
shouldError = true
|
|
95
|
+
logger.error(
|
|
96
|
+
`exports["${expPath}"]: the \`node.require\` property isn't necessary as it's identical to \`require\``,
|
|
97
|
+
)
|
|
98
|
+
} else if (exp.require && exp.node.require && !assertOrder('node', 'require', keys)) {
|
|
99
|
+
shouldError = true
|
|
100
|
+
logger.error(
|
|
101
|
+
`exports["${expPath}"]: the \`node\` property should come before the \`require\` property`,
|
|
102
|
+
)
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
if (!assertOrder('import', 'require', keys)) {
|
|
106
|
+
logger.warn(
|
|
107
|
+
`exports["${expPath}"]: the \`import\` property should come before the \`require\` property`,
|
|
108
|
+
)
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
if (!assertOrder('module', 'import', keys)) {
|
|
112
|
+
logger.warn(
|
|
113
|
+
`exports["${expPath}"]: the \`module\` property should come before \`import\` property`,
|
|
114
|
+
)
|
|
115
|
+
}
|
|
50
116
|
}
|
|
51
117
|
|
|
52
118
|
if (!assertLast('default', keys)) {
|
|
53
|
-
|
|
119
|
+
shouldError = true
|
|
120
|
+
logger.error(
|
|
121
|
+
`exports["${expPath}"]: the \`default\` property should be the last property`,
|
|
122
|
+
)
|
|
54
123
|
}
|
|
55
124
|
}
|
|
56
125
|
}
|
|
57
126
|
|
|
127
|
+
if (shouldError) {
|
|
128
|
+
process.exit(1)
|
|
129
|
+
}
|
|
130
|
+
|
|
58
131
|
return pkg
|
|
59
132
|
} catch (err) {
|
|
60
133
|
if (err instanceof ZodError) {
|
|
@@ -19,14 +19,16 @@ export interface PackageJSON {
|
|
|
19
19
|
types?: string
|
|
20
20
|
browser?: {
|
|
21
21
|
source: string
|
|
22
|
-
require?: string
|
|
23
22
|
import?: string
|
|
23
|
+
require?: string
|
|
24
24
|
}
|
|
25
25
|
node?: {
|
|
26
26
|
source?: string
|
|
27
|
-
|
|
27
|
+
module?: string
|
|
28
28
|
import?: string
|
|
29
|
+
require?: string
|
|
29
30
|
}
|
|
31
|
+
module?: string
|
|
30
32
|
import?: string
|
|
31
33
|
require?: string
|
|
32
34
|
default: string
|
|
@@ -23,22 +23,24 @@ const pkgSchema = z.object({
|
|
|
23
23
|
z.object({
|
|
24
24
|
types: z.optional(z.string()),
|
|
25
25
|
source: z.string(),
|
|
26
|
-
require: z.optional(z.string()),
|
|
27
26
|
browser: z.optional(
|
|
28
27
|
z.object({
|
|
29
28
|
source: z.string(),
|
|
30
|
-
require: z.optional(z.string()),
|
|
31
29
|
import: z.optional(z.string()),
|
|
30
|
+
require: z.optional(z.string()),
|
|
32
31
|
}),
|
|
33
32
|
),
|
|
34
33
|
node: z.optional(
|
|
35
34
|
z.object({
|
|
36
35
|
source: z.optional(z.string()),
|
|
37
|
-
|
|
36
|
+
module: z.optional(z.string()),
|
|
38
37
|
import: z.optional(z.string()),
|
|
38
|
+
require: z.optional(z.string()),
|
|
39
39
|
}),
|
|
40
40
|
),
|
|
41
|
+
module: z.optional(z.string()),
|
|
41
42
|
import: z.optional(z.string()),
|
|
43
|
+
require: z.optional(z.string()),
|
|
42
44
|
default: z.string(),
|
|
43
45
|
}),
|
|
44
46
|
]),
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"consoleSpy-d738cb9f.cjs","sources":["../../src/node/core/config/findConfigFile.ts","../../src/node/core/config/loadConfig.ts","../../src/node/core/config/resolveConfigProperty.ts","../../src/node/core/defaults.ts","../../src/node/core/pkg/loadPkg.ts","../../src/node/core/pkg/helpers.ts","../../src/node/core/pkg/loadPkgWithReporting.ts","../../src/node/core/pkg/validateExports.ts","../../src/node/core/pkg/parseExports.ts","../../src/node/core/pkg/pkgExt.ts","../../src/node/core/ts/loadTSConfig.ts","../../src/node/core/findCommonPath.ts","../../src/node/resolveBrowserslistVersions.ts","../../src/node/resolveBrowserTarget.ts","../../src/node/resolveNodeTarget.ts","../../src/node/resolveBuildContext.ts","../../src/node/consoleSpy.ts"],"sourcesContent":["import findConfig from 'find-config'\nimport path from 'path'\n\nimport {fileExists} from '../../fileExists'\n\nconst CONFIG_FILE_NAMES = [\n 'package.config.ts',\n 'package.config.js',\n 'package.config.cjs',\n 'package.config.mjs',\n]\n\n/** @internal */\nexport function findConfigFile(cwd: string): string | undefined {\n const pkgJsonPath = findConfig('package.json', {cwd})\n\n if (!pkgJsonPath) return undefined\n\n const pkgPath = path.dirname(pkgJsonPath)\n\n for (const fileName of CONFIG_FILE_NAMES) {\n const configPath = path.resolve(pkgPath, fileName)\n\n const exists = fileExists(configPath)\n\n if (exists) {\n return configPath\n }\n }\n\n return undefined\n}\n","import {register} from 'esbuild-register/dist/node'\nimport path from 'path'\nimport pkgUp from 'pkg-up'\n\nimport {findConfigFile} from './findConfigFile'\nimport {PkgConfigOptions} from './types'\n\n/** @internal */\nexport async function loadConfig(options: {cwd: string}): Promise<PkgConfigOptions | undefined> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) return undefined\n\n const root = path.dirname(pkgPath)\n\n const configFile = await findConfigFile(root)\n\n if (!configFile) {\n return undefined\n }\n\n // Do not accept config files outside of the root\n if (!configFile.startsWith(cwd)) {\n return undefined\n }\n\n const esbuildOptions = {extensions: ['.js', '.mjs', '.ts']}\n\n const {unregister} = globalThis.__DEV__ ? {unregister: () => undefined} : register(esbuildOptions)\n\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const mod = require(configFile)\n\n unregister()\n\n return mod?.default || mod || undefined\n}\n","import {PkgConfigProperty, PkgConfigPropertyResolver} from './types'\n\n/** @internal */\nexport function resolveConfigProperty<T>(\n prop: PkgConfigProperty<T> | undefined,\n initialValue: T,\n): T {\n if (!prop) return initialValue\n\n if (typeof prop === 'function') {\n return (prop as PkgConfigPropertyResolver<T>)(initialValue)\n }\n\n return prop\n}\n","/** @public */\nexport const DEFAULT_BROWSERSLIST_QUERY = [\n '> 0.2% and supports es6-module and supports es6-module-dynamic-import',\n 'not dead',\n 'not IE 11',\n 'maintained node versions',\n]\n","import fs from 'fs/promises'\nimport pkgUp from 'pkg-up'\n\nimport {PackageJSON} from './types'\nimport {validatePkg} from './validatePkg'\n\n/** @internal */\nexport async function loadPkg(options: {cwd: string}): Promise<PackageJSON> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) throw new Error('no package.json found')\n\n const buf = await fs.readFile(pkgPath)\n\n const raw = JSON.parse(buf.toString())\n\n validatePkg(raw)\n\n return raw\n}\n","/** @internal */\nexport function assertFirst<T>(a: T, arr: T[]): boolean {\n const aIdx = arr.indexOf(a)\n\n // if not found, then we don't care\n if (aIdx === -1) {\n return true\n }\n\n return aIdx === 0\n}\n\n/** @internal */\nexport function assertLast<T>(a: T, arr: T[]): boolean {\n const aIdx = arr.indexOf(a)\n\n // if not found, then we don't care\n if (aIdx === -1) {\n return true\n }\n\n return aIdx === arr.length - 1\n}\n\n/** @internal */\nexport function assertOrder<T>(a: T, b: T, arr: T[]): boolean {\n const aIdx = arr.indexOf(a)\n const bIdx = arr.indexOf(b)\n\n // if either is not found, then we don't care\n if (aIdx === -1 || bIdx === -1) {\n return true\n }\n\n return aIdx < bIdx\n}\n","import chalk from 'chalk'\nimport {ZodError} from 'zod'\n\nimport {Logger} from '../../logger'\nimport {assertFirst, assertLast, assertOrder} from './helpers'\nimport {loadPkg} from './loadPkg'\nimport {PackageJSON} from './types'\n\n/** @internal */\nexport async function loadPkgWithReporting(options: {\n cwd: string\n logger: Logger\n}): Promise<PackageJSON> {\n const {cwd, logger} = options\n\n try {\n const pkg = await loadPkg({cwd})\n\n // validate exports\n if (pkg.exports) {\n const _exports = Object.entries(pkg.exports)\n\n for (const [expPath, exp] of _exports) {\n if (typeof exp === 'string') {\n continue\n }\n\n const keys = Object.keys(exp)\n\n if (!assertFirst('types', keys)) {\n logger.warn(`exports[\"${expPath}\"]: the \\`types\\` property should be the first property`)\n }\n\n if (!assertOrder('require', 'import', keys)) {\n logger.warn(\n `exports[\"${expPath}\"]: the \\`require\\` property should come before the \\`import\\` property`,\n )\n }\n\n if (!assertOrder('require', 'node', keys)) {\n logger.warn(\n `exports[\"${expPath}\"]: the \\`require\\` property should come before the \\`node\\` property`,\n )\n }\n\n if (!assertOrder('node', 'import', keys)) {\n logger.warn(\n `exports[\"${expPath}\"]: the \\`node\\` property should come before \\`import\\` property`,\n )\n }\n\n if (!assertLast('default', keys)) {\n logger.warn(`exports[\"${expPath}\"]: the \\`default\\` property should be the last property`)\n }\n }\n }\n\n return pkg\n } catch (err) {\n if (err instanceof ZodError) {\n for (const issue of err.issues) {\n if (issue.code === 'invalid_type') {\n logger.error(\n [\n `\\`${formatPath(issue.path)}\\` `,\n `in \\`./package.json\\` must be of type ${chalk.magenta(issue.expected)} `,\n `(received ${chalk.magenta(issue.received)})`,\n ].join(''),\n )\n continue\n }\n\n logger.error(issue)\n }\n } else {\n logger.error(err)\n }\n\n process.exit(1)\n }\n}\n\nfunction formatPath(segments: Array<string | number>) {\n return segments\n .map((s, idx) => {\n if (idx === 0) return s\n\n if (typeof s === 'number') {\n return `[${s}]`\n }\n\n if (s.startsWith('.')) {\n return `[\"${s}\"]`\n }\n\n return `.${s}`\n })\n .join('')\n}\n","import {PkgExport} from '../config'\nimport {PkgExtMap} from './pkgExt'\nimport {PackageJSON} from './types'\n\nexport function validateExports(\n _exports: (PkgExport & {_path: string})[],\n options: {extMap: PkgExtMap; pkg: PackageJSON},\n): string[] {\n const {extMap, pkg} = options\n const ext = extMap[pkg.type || 'commonjs']\n\n const errors: string[] = []\n\n for (const exp of _exports) {\n if (exp.require && !exp.require.endsWith(ext.commonjs)) {\n errors.push(\n `package.json with \\`type: \"${pkg.type}\"\\` - \\`exports[\"${exp._path}\"].require\\` must end with \"${ext.commonjs}\"`,\n )\n }\n\n if (exp.import && !exp.import.endsWith(ext.esm)) {\n errors.push(\n `package.json with \\`type: \"${pkg.type}\"\\` - \\`exports[\"${exp._path}\"].import\\` must end with \"${ext.esm}\"`,\n )\n }\n }\n\n return errors\n}\n","import {PkgExport} from '../config'\nimport {isRecord} from '../isRecord'\nimport {PkgExtMap} from './pkgExt'\nimport {PackageJSON} from './types'\nimport {validateExports} from './validateExports'\n\n/** @internal */\nexport function parseExports(options: {\n extMap: PkgExtMap\n pkg: PackageJSON\n strict: boolean\n}): (PkgExport & {_path: string})[] {\n const {extMap, pkg, strict} = options\n\n const rootExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: '.',\n types: pkg.types,\n source: pkg.source || '',\n browser: pkg.browser && {\n source: pkg.source || '',\n require: pkg.main && pkg.browser[pkg.main],\n import: pkg.module && pkg.browser[pkg.module],\n },\n require: pkg.main,\n import: pkg.module,\n default: pkg.module || pkg.main || '',\n }\n\n const extraExports: (PkgExport & {_path: string})[] = []\n\n const errors: string[] = []\n\n if (pkg.exports) {\n if (strict && !pkg.exports['./package.json']) {\n errors.push('package.json: `exports[\"./package.json\"] must be declared.')\n }\n\n for (const [exportPath, exportEntry] of Object.entries(pkg.exports)) {\n if (exportPath.endsWith('.json')) {\n if (exportPath === './package.json') {\n if (exportEntry !== './package.json') {\n errors.push('package.json: `exports[\"./package.json\"] must be \"./package.json\".')\n }\n }\n } else if (isRecord(exportEntry)) {\n if (exportPath === '.') {\n if (\n exportEntry.require &&\n rootExport.require &&\n exportEntry.require !== rootExport.require\n ) {\n errors.push(\n 'package.json: mismatch between \"main\" and \"exports.require\". These must be equal.',\n )\n }\n\n if (exportEntry.import && rootExport.import && exportEntry.import !== rootExport.import) {\n errors.push(\n 'package.json: mismatch between \"module\" and \"exports.import\" These must be equal.',\n )\n }\n\n if (exportEntry.types && rootExport.types && exportEntry.types !== rootExport.types) {\n errors.push(\n 'package.json: mismatch between \"types\" and \"exports.types\". These must be equal.',\n )\n }\n\n if (exportEntry.source && rootExport.source && exportEntry.source !== rootExport.source) {\n errors.push(\n 'package.json: mismatch between \"source\" and \"exports.source\". These must be equal.',\n )\n }\n\n Object.assign(rootExport, exportEntry)\n } else {\n const extraExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: exportPath,\n ...exportEntry,\n }\n\n extraExports.push(extraExport)\n }\n } else {\n errors.push('package.json: exports must be an object')\n }\n }\n }\n\n const _exports = [rootExport, ...extraExports]\n\n errors.push(...validateExports(_exports, {extMap, pkg}))\n\n if (errors.length) {\n throw new Error('\\n- ' + errors.join('\\n- '))\n }\n\n return _exports\n}\n","/** @internal */\nexport interface PkgExtMap {\n commonjs: {commonjs: string; esm: string}\n module: {commonjs: string; esm: string}\n}\n\n/** @internal */\nexport const DEFAULT_PKG_EXT_MAP: PkgExtMap = {\n // pkg.type: \"commonjs\"\n commonjs: {\n commonjs: '.js',\n esm: '.mjs',\n },\n\n // pkg.type: \"module\"\n module: {\n commonjs: '.cjs',\n esm: '.js',\n },\n}\n\n/** @internal */\nexport function getPkgExtMap(options: {legacyExports: boolean}): PkgExtMap {\n const {legacyExports} = options\n\n const ret = {...DEFAULT_PKG_EXT_MAP}\n\n // Fall back to legacy file extensions for package.json with `\"type\": \"commonjs\"`\n // NOTE: Not supported by Node 14+ and will be removed in a future version\n if (legacyExports) {\n ret['commonjs'] = {\n commonjs: '.js',\n esm: '.esm.js',\n }\n }\n\n return ret\n}\n","import ts from 'typescript'\n\n/** @internal */\nexport async function loadTSConfig(options: {\n cwd: string\n tsconfigPath: string\n}): Promise<ts.ParsedCommandLine> {\n const {cwd, tsconfigPath} = options\n\n const configPath = ts.findConfigFile(cwd, ts.sys.fileExists, tsconfigPath)\n\n if (!configPath) {\n throw new Error(`could not find a valid '${tsconfigPath}'`)\n }\n\n const configFile = ts.readConfigFile(configPath, ts.sys.readFile)\n\n return ts.parseJsonConfigFileContent(configFile.config, ts.sys, cwd)\n}\n","import path from 'path'\n\nexport function pathContains(containerPath: string, itemPath: string): boolean {\n return !path.relative(containerPath, itemPath).startsWith('..')\n}\n\nexport function findCommonDirPath(filePaths: string[]): string | undefined {\n let ret: string | undefined = undefined\n\n for (const filePath of filePaths) {\n let dirPath = path.dirname(filePath)\n\n if (!ret) {\n ret = dirPath\n continue\n }\n\n while (dirPath !== ret) {\n dirPath = path.dirname(dirPath)\n\n if (dirPath === ret) {\n break\n }\n\n if (pathContains(dirPath, ret)) {\n ret = dirPath\n break\n }\n\n if (dirPath === '.') return undefined\n }\n }\n\n return ret\n}\n","import browserslist from 'browserslist'\n\nexport interface PackageTargetVersions {\n chrome: string[]\n ff: string[]\n edge: string[]\n iosSaf: string[]\n saf: string[]\n opera: string[]\n node: string[]\n}\n\nfunction sortAsNumber(a: string, b: string) {\n const aVersion = Number(a)\n const bVersion = Number(b)\n\n return aVersion - bVersion\n}\n\nexport function resolveBrowserslistVersions(query: string[]): PackageTargetVersions {\n const result = browserslist(query)\n\n const entries = result.map((key) => {\n const [name, version] = key.split(' ')\n\n return {name, version: version.split('-')[0].split('.')[0]}\n })\n\n const andChr = entries.filter((b) => b.name === 'and_chr')\n const andFf = entries.filter((b) => b.name === 'and_ff')\n const chrome = entries.filter((b) => b.name === 'chrome')\n const edge = entries.filter((b) => b.name === 'edge')\n const ff = entries.filter((b) => b.name === 'firefox')\n const iosSaf = entries.filter((b) => b.name === 'ios_saf')\n const saf = entries.filter((b) => b.name === 'safari')\n const opera = entries.filter((b) => b.name === 'opera')\n const node = entries.filter((b) => b.name === 'node')\n\n // versions\n const versions: PackageTargetVersions = {\n chrome: andChr.concat(chrome).map((b) => b.version),\n ff: andFf.concat(ff).map((b) => b.version),\n edge: edge.map((b) => b.version),\n iosSaf: iosSaf.map((b) => b.version),\n saf: saf.map((b) => b.version),\n opera: opera.map((b) => b.version),\n node: node.map((b) => b.version),\n }\n\n // sort\n versions.chrome.sort(sortAsNumber)\n versions.ff.sort(sortAsNumber)\n versions.edge.sort(sortAsNumber)\n versions.iosSaf.sort(sortAsNumber)\n versions.saf.sort(sortAsNumber)\n versions.opera.sort(sortAsNumber)\n versions.node.sort(sortAsNumber)\n\n return versions\n}\n","import {PackageTargetVersions} from './resolveBrowserslistVersions'\n\nexport function resolveBrowserTarget(versions: PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.chrome.length) {\n target.push(`chrome${versions.chrome[0]}`)\n }\n\n if (versions.ff.length) {\n target.push(`firefox${versions.ff[0]}`)\n }\n\n if (versions.edge.length) {\n target.push(`edge${versions.edge[0]}`)\n }\n\n if (versions.iosSaf.length) {\n target.push(`ios${versions.iosSaf[0]}`)\n }\n\n if (versions.saf.length) {\n target.push(`safari${versions.saf[0]}`)\n }\n\n if (versions.opera.length) {\n target.push(`opera${versions.opera[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import {PackageTargetVersions} from './resolveBrowserslistVersions'\n\nexport function resolveNodeTarget(versions: PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.node.length) {\n target.push(`node${versions.node[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import path from 'path'\n\nimport {\n BuildContext,\n DEFAULT_BROWSERSLIST_QUERY,\n loadTSConfig,\n PackageJSON,\n parseExports,\n PkgConfigOptions,\n PkgExports,\n PkgExtMap,\n PkgRuntime,\n resolveConfigProperty,\n} from './core'\nimport {findCommonDirPath, pathContains} from './core/findCommonPath'\nimport {Logger} from './logger'\nimport {resolveBrowserslistVersions} from './resolveBrowserslistVersions'\nimport {resolveBrowserTarget} from './resolveBrowserTarget'\nimport {resolveNodeTarget} from './resolveNodeTarget'\n\nexport async function resolveBuildContext(options: {\n config?: PkgConfigOptions\n cwd: string\n emitDeclarationOnly?: boolean\n extMap: PkgExtMap\n logger: Logger\n pkg: PackageJSON\n strict: boolean\n tsconfig: string\n}): Promise<BuildContext> {\n const {\n config,\n cwd,\n emitDeclarationOnly = false,\n extMap,\n logger,\n pkg,\n strict,\n tsconfig: tsconfigPath,\n } = options\n const tsconfig = await loadTSConfig({cwd, tsconfigPath})\n const targetVersions = resolveBrowserslistVersions(pkg.browserslist || DEFAULT_BROWSERSLIST_QUERY)\n const nodeTarget = resolveNodeTarget(targetVersions)\n const webTarget = resolveBrowserTarget(targetVersions)\n\n if (!nodeTarget) {\n throw new Error('no matching `node` target')\n }\n\n if (!webTarget) {\n throw new Error('no matching `web` target')\n }\n\n const target: Record<PkgRuntime, string[]> = {\n '*': webTarget.concat(nodeTarget),\n browser: webTarget,\n node: nodeTarget,\n }\n\n const parsedExports = parseExports({extMap, pkg, strict}).reduce<PkgExports>((acc, x) => {\n const {_path: exportPath, ...exportEntry} = x\n\n return {...acc, [exportPath]: exportEntry}\n }, {})\n\n const exports = resolveConfigProperty(config?.exports, parsedExports)\n\n const parsedExternal = [\n ...(pkg.dependencies ? Object.keys(pkg.dependencies) : []),\n ...(pkg.peerDependencies ? Object.keys(pkg.peerDependencies) : []),\n ]\n\n // Merge externals if an array is provided, replace if it's a function\n const external =\n config && Array.isArray(config.external)\n ? [...parsedExternal, ...config.external]\n : resolveConfigProperty(config?.external, parsedExternal)\n\n const outputPaths = Object.values(exports)\n .flatMap((exportEntry) => {\n return [\n exportEntry.import,\n exportEntry.require,\n exportEntry.browser?.import,\n exportEntry.browser?.require,\n exportEntry.node?.source && exportEntry.node.import,\n exportEntry.node?.source && exportEntry.node.require,\n ].filter(Boolean) as string[]\n })\n .map((p) => path.resolve(cwd, p))\n\n const commonDistPath = findCommonDirPath(outputPaths)\n\n if (commonDistPath === cwd) {\n throw new Error(\n 'all output files must share a common parent directory which is not the root package directory',\n )\n }\n\n if (commonDistPath && !pathContains(cwd, commonDistPath)) {\n throw new Error('all output files must be located within the package')\n }\n\n const configDistPath = config?.dist ? path.resolve(cwd, config.dist) : undefined\n\n if (\n configDistPath &&\n commonDistPath &&\n configDistPath !== commonDistPath &&\n !pathContains(configDistPath, commonDistPath)\n ) {\n logger.log(`did you mean to configure \\`dist: './${path.relative(cwd, commonDistPath)}'\\`?`)\n\n throw new Error('all output files must be located with the configured `dist` path')\n }\n\n const distPath = configDistPath || commonDistPath\n\n if (!distPath) {\n throw new Error('could not detect `dist` path')\n }\n\n const ctx: BuildContext = {\n config,\n cwd,\n distPath,\n emitDeclarationOnly,\n exports,\n external,\n extMap,\n files: [],\n logger,\n pkg,\n runtime: config?.runtime ?? '*',\n strict,\n target,\n ts: {\n config: tsconfig,\n configPath: tsconfigPath,\n },\n }\n\n return ctx\n}\n","/* eslint-disable no-console */\n\nexport interface ConsoleSpyMsg {\n type: 'log' | 'warn' | 'error'\n code?: string\n args: unknown[]\n}\n\nexport interface ConsoleSpy {\n messages: ConsoleSpyMsg[]\n restore: () => void\n}\n\nexport function createConsoleSpy(options?: {\n onRestored?: (messages: ConsoleSpyMsg[]) => void\n}): ConsoleSpy {\n const {onRestored} = options || {}\n\n const original = {\n log: console.log,\n warn: console.warn,\n error: console.error,\n }\n\n const messages: ConsoleSpyMsg[] = []\n\n console.log = (...args: unknown[]) => messages.push({type: 'log', args})\n console.warn = (...args: unknown[]) => messages.push({type: 'warn', args})\n console.error = (...args: unknown[]) => messages.push({type: 'error', args})\n\n return {\n messages,\n restore: () => {\n console.log = original.log\n console.warn = original.warn\n console.error = original.error\n\n onRestored?.(messages)\n },\n }\n}\n"],"names":["CONFIG_FILE_NAMES","findConfigFile","cwd","pkgJsonPath","findConfig","default","pkgPath","path","dirname","fileName","configPath","resolve","exists","fileExists","loadConfig","options","pkgUp","root","configFile","startsWith","esbuildOptions","extensions","unregister","globalThis","__DEV__","register","mod","require","resolveConfigProperty","prop","initialValue","DEFAULT_BROWSERSLIST_QUERY","loadPkg","Error","buf","fs","readFile","raw","JSON","parse","toString","validatePkg","assertFirst","a","arr","aIdx","indexOf","assertLast","length","assertOrder","b","bIdx","loadPkgWithReporting","logger","pkg","exports","_exports","Object","entries","expPath","exp","keys","warn","concat","err","ZodError","issue","issues","code","error","formatPath","chalk","magenta","expected","received","join","process","exit","segments","map","s","idx","validateExports","extMap","ext","type","errors","endsWith","commonjs","push","_path","import","esm","parseExports","strict","rootExport","_exported","types","source","browser","main","module","extraExports","exportPath","exportEntry","isRecord","assign","extraExport","DEFAULT_PKG_EXT_MAP","getPkgExtMap","legacyExports","ret","loadTSConfig","tsconfigPath","ts","sys","readConfigFile","parseJsonConfigFileContent","config","pathContains","containerPath","itemPath","relative","findCommonDirPath","filePaths","filePath","dirPath","sortAsNumber","aVersion","Number","bVersion","resolveBrowserslistVersions","query","result","browserslist","key","name","version","split","andChr","filter","andFf","chrome","edge","ff","iosSaf","saf","opera","node","versions","sort","resolveBrowserTarget","target","resolveNodeTarget","resolveBuildContext","_ref","emitDeclarationOnly","tsconfig","targetVersions","nodeTarget","webTarget","parsedExports","reduce","acc","x","parsedExternal","dependencies","peerDependencies","external","Array","isArray","outputPaths","values","flatMap","_a","_b","_c","_d","Boolean","p","commonDistPath","configDistPath","dist","log","distPath","ctx","files","runtime","createConsoleSpy","onRestored","original","console","messages","_len","arguments","args","_key","_len2","_key2","_len3","_key3","restore"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logger-c593f06b.cjs","sources":["../../src/node/fileExists.ts","../../src/node/core/isRecord.ts","../../src/node/core/pkg/validatePkg.ts","../../src/node/logger.ts"],"sourcesContent":["import {statSync} from 'fs'\n\n/** @internal */\nexport function fileExists(filePath: string): boolean {\n try {\n statSync(filePath)\n\n return true\n } catch (_) {\n return false\n }\n}\n","/** @internal */\nexport function isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && !Array.isArray(value) && typeof value === 'object'\n}\n","import {z} from 'zod'\n\nimport {PackageJSON} from './types'\n\nconst pkgSchema = z.object({\n type: z.optional(z.enum(['commonjs', 'module'])),\n name: z.string(),\n version: z.string(),\n license: z.string(),\n bin: z.optional(z.record(z.string())),\n dependencies: z.optional(z.record(z.string())),\n devDependencies: z.optional(z.record(z.string())),\n peerDependencies: z.optional(z.record(z.string())),\n source: z.optional(z.string()),\n main: z.optional(z.string()),\n browser: z.optional(z.record(z.string())),\n module: z.optional(z.string()),\n types: z.optional(z.string()),\n exports: z.optional(\n z.record(\n z.union([\n z.custom<`./${string}.json`>((val) => /^\\.\\/.*\\.json$/.test(val as string)),\n z.object({\n types: z.optional(z.string()),\n source: z.string(),\n require: z.optional(z.string()),\n browser: z.optional(\n z.object({\n source: z.string(),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n }),\n ),\n node: z.optional(\n z.object({\n source: z.optional(z.string()),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n }),\n ),\n import: z.optional(z.string()),\n default: z.string(),\n }),\n ]),\n ),\n ),\n browserslist: z.optional(z.array(z.string())),\n})\n\nexport function validatePkg(input: unknown): PackageJSON {\n return pkgSchema.parse(input)\n}\n","import chalk from 'chalk'\n\n/** @internal */\nexport interface Logger {\n log: (...args: unknown[]) => void\n info: (...args: unknown[]) => void\n warn: (...args: unknown[]) => void\n error: (...args: unknown[]) => void\n success: (...args: unknown[]) => void\n}\n\n/** @internal */\nexport function createLogger(): Logger {\n return {\n /* eslint-disable no-console */\n log: (...args) => {\n console.log(...args)\n },\n info: (...args) => {\n console.log(chalk.blue('[info]'), ...args)\n },\n warn: (...args) => {\n console.log(chalk.yellow('[warning]'), ...args)\n },\n error: (...args) => {\n console.log(chalk.red('[error]'), ...args)\n },\n success: (...args) => {\n console.log(chalk.green('[success]'), ...args)\n },\n /* eslint-enable no-console */\n }\n}\n"],"names":["fileExists","filePath","statSync","_","isRecord","value","Boolean","Array","isArray","pkgSchema","z","object","type","optional","enum","name","string","version","license","bin","record","dependencies","devDependencies","peerDependencies","source","main","browser","module","types","exports","union","custom","val","test","require","import","node","default","browserslist","array","validatePkg","input","parse","createLogger","log","console","arguments","info","_len","length","args","_key","chalk","blue","warn","_len2","_key2","yellow","error","_len3","_key3","red","success","_len4","_key4","green"],"mappings":"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"}
|