@sanity/plugin-kit 3.1.11 → 3.1.13-canary.0
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/assets/inject/semver-workflow/.github/workflows/main.yml +6 -6
- package/dist/_chunks-cjs/cli.js +135 -0
- package/dist/_chunks-cjs/cli.js.map +1 -0
- package/dist/_chunks-cjs/init.js +894 -0
- package/dist/_chunks-cjs/init.js.map +1 -0
- package/dist/_chunks-cjs/init2.js +83 -0
- package/dist/_chunks-cjs/init2.js.map +1 -0
- package/dist/_chunks-cjs/inject.js +54 -0
- package/dist/_chunks-cjs/inject.js.map +1 -0
- package/dist/_chunks-cjs/link-watch.js +84 -0
- package/dist/_chunks-cjs/link-watch.js.map +1 -0
- package/dist/_chunks-cjs/package.js +1808 -0
- package/dist/_chunks-cjs/package.js.map +1 -0
- package/dist/_chunks-cjs/package2.js +143 -0
- package/dist/_chunks-cjs/package2.js.map +1 -0
- package/dist/_chunks-cjs/ts.js +162 -0
- package/dist/_chunks-cjs/ts.js.map +1 -0
- package/dist/_chunks-cjs/verify-package.js +75 -0
- package/dist/_chunks-cjs/verify-package.js.map +1 -0
- package/dist/_chunks-cjs/verify-studio.js +57 -0
- package/dist/_chunks-cjs/verify-studio.js.map +1 -0
- package/dist/_chunks-cjs/version.js +51 -0
- package/dist/_chunks-cjs/version.js.map +1 -0
- package/dist/cli.d.ts +4 -0
- package/dist/cli.js +4 -7
- package/dist/cli.js.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +57 -59
- package/src/actions/inject.ts +1 -1
- package/src/actions/verify/types.ts +0 -1
- package/src/actions/verify/validations.ts +13 -69
- package/src/actions/verify/verify-common.ts +0 -1
- package/src/actions/verify-package.ts +0 -2
- package/src/cli.ts +1 -0
- package/src/configs/forced-package-versions.ts +0 -1
- package/src/configs/pkg-config.ts +0 -1
- package/src/configs/tsconfig.ts +20 -21
- package/src/npm/package.ts +6 -17
- package/src/presets/ui.ts +0 -1
- package/dist/_chunks/cli-Wd1KIVDi.js +0 -168
- package/dist/_chunks/cli-Wd1KIVDi.js.map +0 -1
- package/dist/_chunks/init-5h0qT4Si.js +0 -966
- package/dist/_chunks/init-5h0qT4Si.js.map +0 -1
- package/dist/_chunks/init-7PO3ckQZ.js +0 -104
- package/dist/_chunks/init-7PO3ckQZ.js.map +0 -1
- package/dist/_chunks/inject-dEkit_VE.js +0 -49
- package/dist/_chunks/inject-dEkit_VE.js.map +0 -1
- package/dist/_chunks/link-watch-gjJZIMKf.js +0 -91
- package/dist/_chunks/link-watch-gjJZIMKf.js.map +0 -1
- package/dist/_chunks/package-esTAlA-W.js +0 -155
- package/dist/_chunks/package-esTAlA-W.js.map +0 -1
- package/dist/_chunks/package-yXL1pPXe.js +0 -2358
- package/dist/_chunks/package-yXL1pPXe.js.map +0 -1
- package/dist/_chunks/ts-DjETsLGv.js +0 -165
- package/dist/_chunks/ts-DjETsLGv.js.map +0 -1
- package/dist/_chunks/verify-package-8RX50rZW.js +0 -97
- package/dist/_chunks/verify-package-8RX50rZW.js.map +0 -1
- package/dist/_chunks/verify-studio-ybZTH8nM.js +0 -74
- package/dist/_chunks/verify-studio-ybZTH8nM.js.map +0 -1
- package/dist/_chunks/version-VsJ55gag.js +0 -54
- package/dist/_chunks/version-VsJ55gag.js.map +0 -1
|
@@ -10,25 +10,22 @@ import {PackageJson, SanityStudioJson, SanityV2Json} from './types'
|
|
|
10
10
|
import {ParsedCommandLine} from 'typescript'
|
|
11
11
|
|
|
12
12
|
export const expectedScripts = {
|
|
13
|
-
build:
|
|
14
|
-
'run-s clean && plugin-kit verify-package --silent && pkg-utils build --strict && pkg-utils --strict',
|
|
13
|
+
build: 'plugin-kit verify-package --silent && pkg-utils build --strict --check --clean',
|
|
15
14
|
watch: 'pkg-utils watch --strict',
|
|
16
15
|
'link-watch': 'plugin-kit link-watch',
|
|
17
|
-
prepublishOnly: 'run
|
|
16
|
+
prepublishOnly: 'npm run build',
|
|
18
17
|
}
|
|
19
18
|
|
|
20
|
-
const expectedModulesFields = ['source', 'exports', 'main', 'module', 'files']
|
|
21
|
-
|
|
22
19
|
function filesWithSuffixes(fileBases: string[], suffixes: string[]): string[] {
|
|
23
20
|
return fileBases.flatMap((file) => suffixes.map((suffix) => `${file}.${suffix}`))
|
|
24
21
|
}
|
|
25
22
|
|
|
26
23
|
export function validateNodeEngine(packageJson: PackageJson) {
|
|
27
|
-
const nodeVersionRange = '>=
|
|
24
|
+
const nodeVersionRange = '>=18'
|
|
28
25
|
if (!packageJson.engines?.node?.startsWith(nodeVersionRange)) {
|
|
29
26
|
return [
|
|
30
27
|
outdent`
|
|
31
|
-
Expected package.json to contain engines.node: ">=
|
|
28
|
+
Expected package.json to contain engines.node: ">=18" to ensure Studio compatible builds,
|
|
32
29
|
but it was: ${packageJson.engines?.node}
|
|
33
30
|
|
|
34
31
|
Please add the following to package.json:
|
|
@@ -40,53 +37,6 @@ export function validateNodeEngine(packageJson: PackageJson) {
|
|
|
40
37
|
}
|
|
41
38
|
}
|
|
42
39
|
|
|
43
|
-
export function validateModule(packageJson: PackageJson, options: {outDir: string}): string[] {
|
|
44
|
-
const {outDir} = options
|
|
45
|
-
const errors: string[] = []
|
|
46
|
-
|
|
47
|
-
const missingFields = expectedModulesFields.filter((field) => !packageJson[field])
|
|
48
|
-
|
|
49
|
-
if (missingFields.length) {
|
|
50
|
-
errors.push(
|
|
51
|
-
outdent`
|
|
52
|
-
Expected source, exports, main, module and files entries in package.json, but ${missingFields.join(
|
|
53
|
-
', ',
|
|
54
|
-
)} where missing.
|
|
55
|
-
|
|
56
|
-
Example:
|
|
57
|
-
|
|
58
|
-
Given a plugin with entry-point in src/index.ts, using default @sanity/pkg-utils build command,
|
|
59
|
-
package.json should contain the following entries to ensure that commonjs and esm outputs are built into ${outDir}:
|
|
60
|
-
|
|
61
|
-
"source": "./src/index.ts",
|
|
62
|
-
"exports": {
|
|
63
|
-
".": {
|
|
64
|
-
"types": "./${outDir}/index.d.ts",
|
|
65
|
-
"source": "./src/index.ts",
|
|
66
|
-
"require": "./${outDir}/index.js",
|
|
67
|
-
"import": "./${outDir}/index.esm.js",
|
|
68
|
-
"default": "./${outDir}/index.js"
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
"main": "./${outDir}/index.js",
|
|
72
|
-
"module": "./${outDir}/index.esm.js",
|
|
73
|
-
"types": "./${outDir}/index.d.ts",
|
|
74
|
-
"files": [
|
|
75
|
-
"${outDir}",
|
|
76
|
-
"src"
|
|
77
|
-
],
|
|
78
|
-
|
|
79
|
-
Refer to @sanity/pkg-utils for more: https://github.com/sanity-io/pkg-utils#sanitypkg-utils
|
|
80
|
-
`.trimStart(),
|
|
81
|
-
)
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
if (packageJson.typings) {
|
|
85
|
-
errors.push(outdent`Found typings field in package.json. Use types instead.`)
|
|
86
|
-
}
|
|
87
|
-
return errors
|
|
88
|
-
}
|
|
89
|
-
|
|
90
40
|
export function validateScripts(packageJson: PackageJson): string[] {
|
|
91
41
|
const errors: string[] = []
|
|
92
42
|
|
|
@@ -123,18 +73,12 @@ export async function validateTsConfig(
|
|
|
123
73
|
const errors: string[] = []
|
|
124
74
|
|
|
125
75
|
const expectedCompilerOptions = {
|
|
126
|
-
moduleResolution: 'node',
|
|
127
76
|
target: 'esnext',
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
esModuleInterop: true,
|
|
131
|
-
skipLibCheck: true,
|
|
132
|
-
isolatedModules: true,
|
|
133
|
-
downlevelIteration: true,
|
|
134
|
-
declaration: true,
|
|
135
|
-
allowSyntheticDefaultImports: true,
|
|
77
|
+
jsx: 'preserve',
|
|
78
|
+
module: 'preserve',
|
|
136
79
|
rootDir: '.',
|
|
137
80
|
outDir,
|
|
81
|
+
noEmit: true,
|
|
138
82
|
}
|
|
139
83
|
|
|
140
84
|
const wrongEntries = Object.entries(expectedCompilerOptions).filter(([key, value]) => {
|
|
@@ -148,16 +92,16 @@ export async function validateTsConfig(
|
|
|
148
92
|
option = path.relative(basePath, option) || '.'
|
|
149
93
|
}
|
|
150
94
|
|
|
151
|
-
if (key === 'moduleResolution' && option === 2) {
|
|
152
|
-
option = 'node'
|
|
153
|
-
}
|
|
154
|
-
|
|
155
95
|
if (key === 'target' && option === 99) {
|
|
156
96
|
option = 'esnext'
|
|
157
97
|
}
|
|
158
98
|
|
|
159
|
-
if (key === 'module' && option ===
|
|
160
|
-
option = '
|
|
99
|
+
if (key === 'module' && option === 200) {
|
|
100
|
+
option = 'preserve'
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
if (key === 'jsx' && option === 1) {
|
|
104
|
+
option = 'preserve'
|
|
161
105
|
}
|
|
162
106
|
|
|
163
107
|
return typeof value === 'string' && typeof option === 'string'
|
|
@@ -12,7 +12,6 @@ import {
|
|
|
12
12
|
} from './verify/verify-common'
|
|
13
13
|
import {
|
|
14
14
|
validateBabelConfig,
|
|
15
|
-
validateModule,
|
|
16
15
|
validateNodeEngine,
|
|
17
16
|
validatePackageName,
|
|
18
17
|
validatePkgUtilsDependency,
|
|
@@ -46,7 +45,6 @@ export async function verifyPackage({basePath, flags}: {basePath: string; flags:
|
|
|
46
45
|
await validation('pkg-utils', async () => validatePkgUtilsDependency(packageJson))
|
|
47
46
|
await validation('srcIndex', async () => validateSrcIndexFile(basePath))
|
|
48
47
|
await validation('scripts', async () => validateScripts(packageJson))
|
|
49
|
-
await validation('module', async () => validateModule(packageJson, {outDir}))
|
|
50
48
|
await validation('nodeEngine', async () => validateNodeEngine(packageJson))
|
|
51
49
|
await validation('duplicateConfig', async () =>
|
|
52
50
|
disallowDuplicateEslintConfig(basePath, packageJson),
|
package/src/cli.ts
CHANGED
package/src/configs/tsconfig.ts
CHANGED
|
@@ -12,12 +12,7 @@ export function tsconfigTemplate(options: {flags: InitFlags}): InjectTemplate {
|
|
|
12
12
|
value: outdent`
|
|
13
13
|
{
|
|
14
14
|
"extends": "./tsconfig.settings",
|
|
15
|
-
"include": ["./src", "./package.config.ts"]
|
|
16
|
-
"compilerOptions": {
|
|
17
|
-
"rootDir": ".",
|
|
18
|
-
"jsx": "react-jsx",
|
|
19
|
-
"noEmit": true
|
|
20
|
-
}
|
|
15
|
+
"include": ["./src", "./package.config.ts"]
|
|
21
16
|
}
|
|
22
17
|
`,
|
|
23
18
|
}
|
|
@@ -39,20 +34,17 @@ export function tsconfigTemplateDist(options: {outDir: string; flags: InitFlags}
|
|
|
39
34
|
"./src/**/__mocks__",
|
|
40
35
|
"./src/**/*.test.ts",
|
|
41
36
|
"./src/**/*.test.tsx"
|
|
42
|
-
]
|
|
43
|
-
"compilerOptions": {
|
|
44
|
-
"rootDir": ".",
|
|
45
|
-
"outDir": "./${outDir}",
|
|
46
|
-
"jsx": "react-jsx",
|
|
47
|
-
"emitDeclarationOnly": true
|
|
48
|
-
}
|
|
37
|
+
]
|
|
49
38
|
}
|
|
50
39
|
`,
|
|
51
40
|
}
|
|
52
41
|
}
|
|
53
42
|
|
|
54
|
-
export function tsconfigTemplateSettings(options: {
|
|
55
|
-
|
|
43
|
+
export function tsconfigTemplateSettings(options: {
|
|
44
|
+
outDir: string
|
|
45
|
+
flags: InitFlags
|
|
46
|
+
}): InjectTemplate {
|
|
47
|
+
const {flags, outDir} = options
|
|
56
48
|
|
|
57
49
|
return {
|
|
58
50
|
type: 'template',
|
|
@@ -61,17 +53,24 @@ export function tsconfigTemplateSettings(options: {flags: InitFlags}): InjectTem
|
|
|
61
53
|
value: outdent`
|
|
62
54
|
{
|
|
63
55
|
"compilerOptions": {
|
|
64
|
-
"
|
|
56
|
+
"rootDir": ".",
|
|
57
|
+
"outDir": "./${outDir}",
|
|
58
|
+
|
|
65
59
|
"target": "esnext",
|
|
66
|
-
"
|
|
67
|
-
"
|
|
60
|
+
"jsx": "preserve",
|
|
61
|
+
"module": "preserve",
|
|
62
|
+
"moduleResolution": "bundler",
|
|
68
63
|
"esModuleInterop": true,
|
|
64
|
+
"resolveJsonModule": true,
|
|
65
|
+
"moduleDetection": "force",
|
|
69
66
|
"strict": true,
|
|
70
|
-
"downlevelIteration": true,
|
|
71
|
-
"declaration": true,
|
|
72
67
|
"allowSyntheticDefaultImports": true,
|
|
73
68
|
"skipLibCheck": true,
|
|
74
|
-
"
|
|
69
|
+
"forceConsistentCasingInFileNames": true,
|
|
70
|
+
"isolatedModules": true,
|
|
71
|
+
|
|
72
|
+
// Don't emit by default, pkg-utils will ignore this when generating .d.ts files
|
|
73
|
+
"noEmit": true
|
|
75
74
|
}
|
|
76
75
|
}
|
|
77
76
|
`,
|
package/src/npm/package.ts
CHANGED
|
@@ -21,24 +21,19 @@ import {
|
|
|
21
21
|
const defaultDependencies = [incompatiblePluginPackage]
|
|
22
22
|
|
|
23
23
|
const defaultDevDependencies = [
|
|
24
|
-
'npm-run-all',
|
|
25
|
-
'rimraf',
|
|
26
24
|
'sanity',
|
|
27
25
|
|
|
28
26
|
// peer dependencies of `sanity`
|
|
29
27
|
'react',
|
|
30
28
|
'react-dom',
|
|
31
29
|
'styled-components',
|
|
32
|
-
|
|
33
|
-
// peer dependencies of `styled-components`
|
|
34
|
-
'react-is',
|
|
35
30
|
]
|
|
36
31
|
|
|
37
32
|
const defaultPeerDependencies = ['react', 'sanity']
|
|
38
33
|
|
|
39
34
|
const readFile = util.promisify(fs.readFile)
|
|
40
35
|
|
|
41
|
-
const pathKeys: (keyof PackageJson)[] = ['main', 'module', 'browser', 'types'
|
|
36
|
+
const pathKeys: (keyof PackageJson)[] = ['main', 'module', 'browser', 'types']
|
|
42
37
|
|
|
43
38
|
export async function getPackage(opts: ManifestOptions): Promise<PackageJson> {
|
|
44
39
|
const options = {flags: {}, ...opts}
|
|
@@ -292,19 +287,17 @@ export async function writePackageJson(data: PackageData, options: InjectOptions
|
|
|
292
287
|
...repoFromOrigin(gitOrigin),
|
|
293
288
|
license: license ? license.id : 'UNLICENSED',
|
|
294
289
|
author: user?.email ? `${user.name} <${user.email}>` : user?.name,
|
|
290
|
+
sideEffects: false,
|
|
291
|
+
type: 'commonjs',
|
|
295
292
|
exports: {
|
|
296
293
|
'.': {
|
|
297
|
-
...(flags.typescript ? {types: `./${outDir}/index.d.ts`} : {}),
|
|
298
294
|
source,
|
|
299
|
-
import: `./${outDir}/index.
|
|
300
|
-
|
|
301
|
-
default: `./${outDir}/index.esm.js`,
|
|
295
|
+
import: `./${outDir}/index.mjs`,
|
|
296
|
+
default: `./${outDir}/index.js`,
|
|
302
297
|
},
|
|
303
298
|
'./package.json': './package.json',
|
|
304
299
|
},
|
|
305
300
|
main: `./${outDir}/index.js`,
|
|
306
|
-
module: `./${outDir}/index.esm.js`,
|
|
307
|
-
source,
|
|
308
301
|
...(flags.typescript ? {types: `./${outDir}/index.d.ts`} : {}),
|
|
309
302
|
files,
|
|
310
303
|
scripts: {...prev.scripts},
|
|
@@ -312,7 +305,7 @@ export async function writePackageJson(data: PackageData, options: InjectOptions
|
|
|
312
305
|
devDependencies: sortKeys(devDependencies),
|
|
313
306
|
peerDependencies: sortKeys(peerDependencies),
|
|
314
307
|
engines: {
|
|
315
|
-
node: '>=
|
|
308
|
+
node: '>=18',
|
|
316
309
|
},
|
|
317
310
|
}
|
|
318
311
|
|
|
@@ -324,9 +317,6 @@ export async function writePackageJson(data: PackageData, options: InjectOptions
|
|
|
324
317
|
...forcedOrder,
|
|
325
318
|
}
|
|
326
319
|
|
|
327
|
-
// we use types, not typings
|
|
328
|
-
delete manifest.typings
|
|
329
|
-
|
|
330
320
|
const differs = JSON.stringify(prev) !== JSON.stringify(manifest)
|
|
331
321
|
log.debug('Does manifest differ? %s', differs ? 'yes' : 'no')
|
|
332
322
|
if (differs) {
|
|
@@ -401,7 +391,6 @@ export async function addBuildScripts(manifest: PackageJson, options: InjectOpti
|
|
|
401
391
|
}
|
|
402
392
|
return addPackageJsonScripts(manifest, options, (scripts) => {
|
|
403
393
|
scripts.build = addScript(expectedScripts.build, scripts.build)
|
|
404
|
-
scripts.clean = addScript(`rimraf ${outDir}`, scripts.clean)
|
|
405
394
|
scripts.format = addScript(`prettier --write --cache --ignore-unknown .`, scripts.format)
|
|
406
395
|
scripts['link-watch'] = addScript(expectedScripts['link-watch'], scripts['link-watch'])
|
|
407
396
|
scripts.lint = addScript(`eslint .`, scripts.lint)
|
package/src/presets/ui.ts
CHANGED
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var meow = require('meow');
|
|
4
|
-
var chalk = require('chalk');
|
|
5
|
-
function _interopDefaultCompat(e) {
|
|
6
|
-
return e && typeof e === 'object' && 'default' in e ? e : {
|
|
7
|
-
default: e
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
var meow__default = /*#__PURE__*/_interopDefaultCompat(meow);
|
|
11
|
-
var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
|
|
12
|
-
let beQuiet = false;
|
|
13
|
-
let beVerbose = false;
|
|
14
|
-
function setVerbosity(_ref) {
|
|
15
|
-
let {
|
|
16
|
-
verbose,
|
|
17
|
-
silent
|
|
18
|
-
} = _ref;
|
|
19
|
-
if (silent) {
|
|
20
|
-
beVerbose = false;
|
|
21
|
-
beQuiet = true;
|
|
22
|
-
} else if (verbose) {
|
|
23
|
-
beVerbose = true;
|
|
24
|
-
beQuiet = false;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
var log = {
|
|
28
|
-
setVerbosity,
|
|
29
|
-
// Bypasses any checks, prints regardless (only use for things like `cli --version`)
|
|
30
|
-
msg: function (msg) {
|
|
31
|
-
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
32
|
-
args[_key - 1] = arguments[_key];
|
|
33
|
-
}
|
|
34
|
-
return !beQuiet && console.log(msg, ...args);
|
|
35
|
-
},
|
|
36
|
-
// Debug only printed on --verbose
|
|
37
|
-
debug: function (msg) {
|
|
38
|
-
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
39
|
-
args[_key2 - 1] = arguments[_key2];
|
|
40
|
-
}
|
|
41
|
-
return !beQuiet && beVerbose && console.debug("".concat(chalk__default.default.bgBlack.white("[debug]"), " ").concat(msg), ...args);
|
|
42
|
-
},
|
|
43
|
-
// Success messages only printed if not --silent
|
|
44
|
-
success: function (msg) {
|
|
45
|
-
for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
|
|
46
|
-
args[_key3 - 1] = arguments[_key3];
|
|
47
|
-
}
|
|
48
|
-
return !beQuiet && console.info("".concat(chalk__default.default.bgBlack.greenBright("[success]"), " ").concat(msg), ...args);
|
|
49
|
-
},
|
|
50
|
-
// Info only printed if not --silent ("standard" level)
|
|
51
|
-
info: function (msg) {
|
|
52
|
-
for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
|
|
53
|
-
args[_key4 - 1] = arguments[_key4];
|
|
54
|
-
}
|
|
55
|
-
return !beQuiet && console.info("".concat(chalk__default.default.bgBlack.cyanBright("[info]"), " ").concat(msg), ...args);
|
|
56
|
-
},
|
|
57
|
-
// Warning only printed if not --silent
|
|
58
|
-
warn: function (msg) {
|
|
59
|
-
for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {
|
|
60
|
-
args[_key5 - 1] = arguments[_key5];
|
|
61
|
-
}
|
|
62
|
-
return !beQuiet && console.warn("".concat(chalk__default.default.bgBlack.yellowBright("[warn]"), " ").concat(msg), ...args);
|
|
63
|
-
},
|
|
64
|
-
// Errors are always printed
|
|
65
|
-
error: function (msg) {
|
|
66
|
-
for (var _len6 = arguments.length, args = new Array(_len6 > 1 ? _len6 - 1 : 0), _key6 = 1; _key6 < _len6; _key6++) {
|
|
67
|
-
args[_key6 - 1] = arguments[_key6];
|
|
68
|
-
}
|
|
69
|
-
return console.error("".concat(chalk__default.default.bgBlack.redBright("[error]"), " ").concat(msg), ...args);
|
|
70
|
-
}
|
|
71
|
-
};
|
|
72
|
-
var commands = {
|
|
73
|
-
init: async options => {
|
|
74
|
-
await (await Promise.resolve().then(function () {
|
|
75
|
-
return require('./init-7PO3ckQZ.js');
|
|
76
|
-
})).default(options);
|
|
77
|
-
},
|
|
78
|
-
inject: async options => {
|
|
79
|
-
await (await Promise.resolve().then(function () {
|
|
80
|
-
return require('./inject-dEkit_VE.js');
|
|
81
|
-
})).default(options);
|
|
82
|
-
},
|
|
83
|
-
"link-watch": async options => {
|
|
84
|
-
await (await Promise.resolve().then(function () {
|
|
85
|
-
return require('./link-watch-gjJZIMKf.js');
|
|
86
|
-
})).default(options);
|
|
87
|
-
},
|
|
88
|
-
"verify-package": async options => {
|
|
89
|
-
await (await Promise.resolve().then(function () {
|
|
90
|
-
return require('./verify-package-8RX50rZW.js');
|
|
91
|
-
})).default(options);
|
|
92
|
-
},
|
|
93
|
-
"verify-studio": async options => {
|
|
94
|
-
await (await Promise.resolve().then(function () {
|
|
95
|
-
return require('./verify-studio-ybZTH8nM.js');
|
|
96
|
-
})).default(options);
|
|
97
|
-
},
|
|
98
|
-
version: async options => {
|
|
99
|
-
await (await Promise.resolve().then(function () {
|
|
100
|
-
return require('./version-VsJ55gag.js');
|
|
101
|
-
})).default(options);
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
var sharedFlags = {
|
|
105
|
-
debug: {
|
|
106
|
-
default: false,
|
|
107
|
-
type: "boolean"
|
|
108
|
-
},
|
|
109
|
-
silent: {
|
|
110
|
-
type: "boolean",
|
|
111
|
-
default: false
|
|
112
|
-
},
|
|
113
|
-
verbose: {
|
|
114
|
-
type: "boolean",
|
|
115
|
-
default: false
|
|
116
|
-
}
|
|
117
|
-
};
|
|
118
|
-
const cliName = "@sanity/plugin-kit";
|
|
119
|
-
const urls = {
|
|
120
|
-
refDocs: "https://beta.sanity.io/docs/reference",
|
|
121
|
-
migrationGuideStudio: "https://beta.sanity.io/docs/platform/v2-to-v3",
|
|
122
|
-
migrationGuidePlugin: "https://beta.sanity.io/docs/platform/v2-to-v3/plugins",
|
|
123
|
-
pluginReadme: "https://github.com/sanity-io/plugin-kit",
|
|
124
|
-
incompatiblePlugin: "https://github.com/sanity-io/incompatible-plugin",
|
|
125
|
-
sanityExchange: "https://www.sanity.io/exchange",
|
|
126
|
-
linterPackage: "https://github.com/sanity-io/eslint-config-no-v2-imports"
|
|
127
|
-
};
|
|
128
|
-
const incompatiblePluginPackage = "@sanity/incompatible-plugin";
|
|
129
|
-
const defaultOutDir = "dist";
|
|
130
|
-
async function cliEntry() {
|
|
131
|
-
let argv = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : process.argv;
|
|
132
|
-
let autoExit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
133
|
-
const cli = meow__default.default("\n\tUsage\n\t $ ".concat(cliName, " [--help] [--debug] <command> [<args>]\n\n These are common commands used in various situations:\n\n init Create a new Sanity plugin\n inject Inject config into an existing Sanity v3 plugin\n verify-package Check that a Sanity plugin package follows V3 conventions. Prints upgrade steps.\n verify-studio Check that a Sanity Studio follows V3 conventions. Prints upgrade steps.\n link-watch Recompiles plugin automatically on changes and runs yalc push --publish\n version Show the version of ").concat(cliName, " currently installed\n\n Options\n --silent Do not print info and warning messages\n --verbose Log everything. This option conflicts with --silent\n --debug Print stack trace on errors\n --version Output the version number\n --help Output usage information\n\n Examples\n # Init a new plugin in current directory\n $ ").concat(cliName, " init\n\n # Init a new plugin in my-sanity-plugin directory\n $ ").concat(cliName, " init my-sanity-plugin\n\n # Check that a Sanity plugin package in current directory follows V3 conventions\n $ ").concat(cliName, " verify-package\n\n # Check that a Sanity Studio in current directory follows V3 conventions\n $ ").concat(cliName, " verify-studio\n"), {
|
|
134
|
-
autoHelp: false,
|
|
135
|
-
flags: sharedFlags,
|
|
136
|
-
argv: argv.slice(2)
|
|
137
|
-
});
|
|
138
|
-
const commandName = cli.input[0];
|
|
139
|
-
if (!commandName) {
|
|
140
|
-
cli.showHelp();
|
|
141
|
-
}
|
|
142
|
-
if (!(commandName in commands)) {
|
|
143
|
-
console.error("Unknown command \"".concat(commandName, "\""));
|
|
144
|
-
cli.showHelp();
|
|
145
|
-
}
|
|
146
|
-
if (cli.flags.silent && cli.flags.verbose) {
|
|
147
|
-
log.error("--silent and --verbose are mutually exclusive");
|
|
148
|
-
cli.showHelp();
|
|
149
|
-
}
|
|
150
|
-
const cmd = commands[commandName];
|
|
151
|
-
try {
|
|
152
|
-
log.setVerbosity(cli.flags);
|
|
153
|
-
await cmd({
|
|
154
|
-
argv: argv.slice(3)
|
|
155
|
-
});
|
|
156
|
-
} catch (err) {
|
|
157
|
-
log.error(err instanceof TypeError || cli.flags.debug ? err.stack : err.message);
|
|
158
|
-
process.exit(1);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
exports.cliEntry = cliEntry;
|
|
162
|
-
exports.cliName = cliName;
|
|
163
|
-
exports.defaultOutDir = defaultOutDir;
|
|
164
|
-
exports.incompatiblePluginPackage = incompatiblePluginPackage;
|
|
165
|
-
exports.log = log;
|
|
166
|
-
exports.sharedFlags = sharedFlags;
|
|
167
|
-
exports.urls = urls;
|
|
168
|
-
//# sourceMappingURL=cli-Wd1KIVDi.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli-Wd1KIVDi.js","sources":["../../src/util/log.ts","../../src/cmds/index.ts","../../src/sharedFlags.ts","../../src/constants.ts","../../src/cli.ts"],"sourcesContent":["// Note: This is _specifically_ meant for CLI usage,\n// I realize that \"singletons\" are bad.\n\nimport chalk from 'chalk'\n\nlet beQuiet = false\nlet beVerbose = false\n\nfunction setVerbosity({verbose, silent}: {verbose: boolean; silent: boolean}) {\n if (silent) {\n beVerbose = false\n beQuiet = true\n } else if (verbose) {\n beVerbose = true\n beQuiet = false\n }\n}\n\nexport default {\n setVerbosity: setVerbosity,\n\n // Bypasses any checks, prints regardless (only use for things like `cli --version`)\n msg: (msg: any, ...args: any[]) => !beQuiet && console.log(msg, ...args),\n\n // Debug only printed on --verbose\n debug: (msg: any, ...args: any[]) =>\n !beQuiet && beVerbose && console.debug(`${chalk.bgBlack.white('[debug]')} ${msg}`, ...args),\n\n // Success messages only printed if not --silent\n success: (msg: any, ...args: any[]) =>\n !beQuiet && console.info(`${chalk.bgBlack.greenBright('[success]')} ${msg}`, ...args),\n\n // Info only printed if not --silent (\"standard\" level)\n info: (msg: any, ...args: any[]) =>\n !beQuiet && console.info(`${chalk.bgBlack.cyanBright('[info]')} ${msg}`, ...args),\n\n // Warning only printed if not --silent\n warn: (msg: any, ...args: any[]) =>\n !beQuiet && console.warn(`${chalk.bgBlack.yellowBright('[warn]')} ${msg}`, ...args),\n\n // Errors are always printed\n error: (msg: any, ...args: any[]) =>\n console.error(`${chalk.bgBlack.redBright('[error]')} ${msg}`, ...args),\n}\n","export default {\n init: async (options: {argv: string[]}) => {\n await (await import('./init')).default(options)\n },\n inject: async (options: {argv: string[]}) => {\n await (await import('./inject')).default(options)\n },\n 'link-watch': async (options: {argv: string[]}) => {\n await (await import('./link-watch')).default(options)\n },\n 'verify-package': async (options: {argv: string[]}) => {\n await (await import('./verify-package')).default(options)\n },\n 'verify-studio': async (options: {argv: string[]}) => {\n await (await import('./verify-studio')).default(options)\n },\n version: async (options: {argv: string[]}) => {\n await (await import('./version')).default(options)\n },\n}\n","export default {\n debug: {\n default: false,\n type: 'boolean',\n },\n silent: {\n type: 'boolean',\n default: false,\n },\n verbose: {\n type: 'boolean',\n default: false,\n },\n} as const\n","export const cliName = '@sanity/plugin-kit'\n\nexport const urls = {\n refDocs: 'https://beta.sanity.io/docs/reference',\n migrationGuideStudio: 'https://beta.sanity.io/docs/platform/v2-to-v3',\n migrationGuidePlugin: 'https://beta.sanity.io/docs/platform/v2-to-v3/plugins',\n pluginReadme: 'https://github.com/sanity-io/plugin-kit',\n incompatiblePlugin: 'https://github.com/sanity-io/incompatible-plugin',\n sanityExchange: 'https://www.sanity.io/exchange',\n linterPackage: 'https://github.com/sanity-io/eslint-config-no-v2-imports',\n}\n\nexport const incompatiblePluginPackage = '@sanity/incompatible-plugin'\n\nexport const defaultOutDir = 'dist'\n","import meow from 'meow'\nimport log from './util/log'\nimport commands from './cmds'\nimport sharedFlags from './sharedFlags'\nimport {cliName} from './constants'\n\nexport async function cliEntry(argv = process.argv, autoExit = true) {\n const cli = meow(\n `\n\tUsage\n\t $ ${cliName} [--help] [--debug] <command> [<args>]\n\n These are common commands used in various situations:\n\n init Create a new Sanity plugin\n inject Inject config into an existing Sanity v3 plugin\n verify-package Check that a Sanity plugin package follows V3 conventions. Prints upgrade steps.\n verify-studio Check that a Sanity Studio follows V3 conventions. Prints upgrade steps.\n link-watch Recompiles plugin automatically on changes and runs yalc push --publish\n version Show the version of ${cliName} currently installed\n\n Options\n --silent Do not print info and warning messages\n --verbose Log everything. This option conflicts with --silent\n --debug Print stack trace on errors\n --version Output the version number\n --help Output usage information\n\n Examples\n # Init a new plugin in current directory\n $ ${cliName} init\n\n # Init a new plugin in my-sanity-plugin directory\n $ ${cliName} init my-sanity-plugin\n\n # Check that a Sanity plugin package in current directory follows V3 conventions\n $ ${cliName} verify-package\n\n # Check that a Sanity Studio in current directory follows V3 conventions\n $ ${cliName} verify-studio\n`,\n {\n autoHelp: false,\n flags: sharedFlags,\n argv: argv.slice(2),\n },\n )\n\n const commandName = cli.input[0]\n if (!commandName) {\n cli.showHelp() // Exits\n }\n\n if (!(commandName in commands)) {\n console.error(`Unknown command \"${commandName}\"`)\n cli.showHelp() // Exits\n }\n\n if (cli.flags.silent && cli.flags.verbose) {\n log.error(`--silent and --verbose are mutually exclusive`)\n cli.showHelp() // Exits\n }\n\n // Lazy-load command\n const cmd = commands[commandName as keyof typeof commands]\n\n try {\n log.setVerbosity(cli.flags)\n await cmd({argv: argv.slice(3)})\n } catch (err: any) {\n log.error(err instanceof TypeError || cli.flags.debug ? err.stack : err.message)\n\n // eslint-disable-next-line no-process-exit\n process.exit(1)\n }\n}\n"],"names":["beQuiet","beVerbose","setVerbosity","_ref","verbose","silent","log","msg","_len","arguments","length","args","Array","_key","console","debug","_len2","concat","chalk","bgBlack","white","success","_len3","info","default","greenBright","_len4","cyanBright","warn","_len5","yellowBright","error","_len6","_key6","redBright","commands","init","options","Promise","resolve","then","require","inject","version","sharedFlags","type","cliName","urls","refDocs","migrationGuideStudio","migrationGuidePlugin","pluginReadme","incompatiblePlugin","sanityExchange","linterPackage","incompatiblePluginPackage","defaultOutDir","cliEntry","argv","undefined","process","autoExit","cli","meow","autoHelp","flags","slice","commandName","input","showHelp","cmd","err","TypeError","stack","message","exit"],"mappings":"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"}
|