@sanity/plugin-kit 6.0.3 → 7.0.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.
@@ -1,9 +1,9 @@
1
+ import { n as sharedFlags_default, t as log_default } from "./log.js";
2
+ import { n as name, r as version, t as binname } from "./package2.js";
1
3
  import meow from "meow";
2
- import { pkg } from "./package2.js";
3
- import { sharedFlags, log } from "./index.js";
4
- const description = `Show the installed version of ${pkg.name}`, help = `
4
+ const description = `Show the installed version of ${name}`, help = `
5
5
  Usage
6
- $ ${pkg.binname} version
6
+ $ ${binname} version
7
7
 
8
8
  Options
9
9
  --major Show only the major version
@@ -11,40 +11,44 @@ Options
11
11
  --patch Show only the patch version
12
12
 
13
13
  Examples
14
- $ ${pkg.binname} version
15
- ${pkg.name} version ${pkg.version}
14
+ $ ${binname} version
15
+ ${name} version ${version}
16
16
 
17
- $ ${pkg.binname} version --major
18
- ${pkg.version.split(".")[0]}
17
+ $ ${binname} version --major
18
+ ${version.split(".")[0]}
19
19
  `, flags = {
20
- ...sharedFlags,
21
- major: {
22
- type: "boolean",
23
- default: !1
24
- },
25
- minor: {
26
- type: "boolean",
27
- default: !1
28
- },
29
- patch: {
30
- type: "boolean",
31
- default: !1
32
- }
20
+ ...sharedFlags_default,
21
+ major: {
22
+ type: "boolean",
23
+ default: !1
24
+ },
25
+ minor: {
26
+ type: "boolean",
27
+ default: !1
28
+ },
29
+ patch: {
30
+ type: "boolean",
31
+ default: !1
32
+ }
33
33
  };
34
34
  function run({ argv }) {
35
- const cli = meow(help, { flags, argv, description }), versionParts = pkg.version.split("."), versionNames = ["major", "minor", "patch"], versionFlags = versionNames.filter((flagName) => cli.flags[flagName]), versionFlag = versionFlags[0], numVersionFlags = versionFlags.length;
36
- if (numVersionFlags === 0) {
37
- log.msg(`${pkg.name} version ${pkg.version}`);
38
- return;
39
- }
40
- if (numVersionFlags > 1)
41
- throw new Error(
42
- "--major, --minor and --patch are mutually exclusive - only one can be used at a time"
43
- );
44
- const partIndex = versionNames.indexOf(versionFlag);
45
- log.msg(versionParts[partIndex]);
35
+ let cli = meow(help, {
36
+ flags,
37
+ argv,
38
+ description
39
+ }), versionParts = version.split("."), versionNames = [
40
+ "major",
41
+ "minor",
42
+ "patch"
43
+ ], versionFlags = versionNames.filter((flagName) => cli.flags[flagName]), versionFlag = versionFlags[0], numVersionFlags = versionFlags.length;
44
+ if (numVersionFlags === 0) {
45
+ log_default.msg(`${name} version ${version}`);
46
+ return;
47
+ }
48
+ if (numVersionFlags > 1) throw Error("--major, --minor and --patch are mutually exclusive - only one can be used at a time");
49
+ let partIndex = versionNames.indexOf(versionFlag);
50
+ log_default.msg(versionParts[partIndex]);
46
51
  }
47
- export {
48
- run as default
49
- };
50
- //# sourceMappingURL=version.js.map
52
+ export { run as default };
53
+
54
+ //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sources":["../../src/cmds/version.ts"],"sourcesContent":["import meow from 'meow'\n\nimport pkg from '../../package.json'\nimport sharedFlags from '../sharedFlags'\nimport log from '../util/log'\n\nconst description = `Show the installed version of ${pkg.name}`\n\nconst help = `\nUsage\n $ ${pkg.binname} version\n\nOptions\n --major Show only the major version\n --minor Show only the minor version\n --patch Show only the patch version\n\nExamples\n $ ${pkg.binname} version\n ${pkg.name} version ${pkg.version}\n\n $ ${pkg.binname} version --major\n ${pkg.version.split('.')[0]}\n`\n\nconst flags = {\n ...sharedFlags,\n\n major: {\n type: 'boolean',\n default: false,\n },\n\n minor: {\n type: 'boolean',\n default: false,\n },\n\n patch: {\n type: 'boolean',\n default: false,\n },\n} as const\n\nfunction run({argv}: {argv: string[]}) {\n const cli = meow(help, {flags, argv, description})\n const versionParts = pkg.version.split('.')\n const versionNames = ['major', 'minor', 'patch']\n const versionFlags = versionNames.filter((flagName) => cli.flags[flagName])\n const versionFlag = versionFlags[0]\n const numVersionFlags = versionFlags.length\n\n if (numVersionFlags === 0) {\n log.msg(`${pkg.name} version ${pkg.version}`)\n return\n }\n\n if (numVersionFlags > 1) {\n throw new Error(\n `--major, --minor and --patch are mutually exclusive - only one can be used at a time`,\n )\n }\n\n const partIndex = versionNames.indexOf(versionFlag)\n log.msg(versionParts[partIndex])\n}\n\nexport default run\n"],"names":[],"mappings":";;;AAMA,MAAM,cAAc,iCAAiC,IAAI,IAAI,IAEvD,OAAO;AAAA;AAAA,MAEP,IAAI,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQX,IAAI,OAAO;AAAA,IACb,IAAI,IAAI,YAAY,IAAI,OAAO;AAAA;AAAA,MAE7B,IAAI,OAAO;AAAA,IACb,IAAI,QAAQ,MAAM,GAAG,EAAE,CAAC,CAAC;AAAA,GAGvB,QAAQ;AAAA,EACZ,GAAG;AAAA,EAEH,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAGX,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAGX,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAEb;AAEA,SAAS,IAAI,EAAC,QAAyB;AACrC,QAAM,MAAM,KAAK,MAAM,EAAC,OAAO,MAAM,YAAA,CAAY,GAC3C,eAAe,IAAI,QAAQ,MAAM,GAAG,GACpC,eAAe,CAAC,SAAS,SAAS,OAAO,GACzC,eAAe,aAAa,OAAO,CAAC,aAAa,IAAI,MAAM,QAAQ,CAAC,GACpE,cAAc,aAAa,CAAC,GAC5B,kBAAkB,aAAa;AAErC,MAAI,oBAAoB,GAAG;AACzB,QAAI,IAAI,GAAG,IAAI,IAAI,YAAY,IAAI,OAAO,EAAE;AAC5C;AAAA,EACF;AAEA,MAAI,kBAAkB;AACpB,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAIJ,QAAM,YAAY,aAAa,QAAQ,WAAW;AAClD,MAAI,IAAI,aAAa,SAAS,CAAC;AACjC;"}
1
+ {"version":3,"file":"version.js","names":["pkg.name","pkg.binname","pkg.version","sharedFlags"],"sources":["../../src/cmds/version.ts"],"sourcesContent":["import meow from 'meow'\n\nimport pkg from '../../package.json'\nimport sharedFlags from '../sharedFlags'\nimport log from '../util/log'\n\nconst description = `Show the installed version of ${pkg.name}`\n\nconst help = `\nUsage\n $ ${pkg.binname} version\n\nOptions\n --major Show only the major version\n --minor Show only the minor version\n --patch Show only the patch version\n\nExamples\n $ ${pkg.binname} version\n ${pkg.name} version ${pkg.version}\n\n $ ${pkg.binname} version --major\n ${pkg.version.split('.')[0]}\n`\n\nconst flags = {\n ...sharedFlags,\n\n major: {\n type: 'boolean',\n default: false,\n },\n\n minor: {\n type: 'boolean',\n default: false,\n },\n\n patch: {\n type: 'boolean',\n default: false,\n },\n} as const\n\nfunction run({argv}: {argv: string[]}) {\n const cli = meow(help, {flags, argv, description})\n const versionParts = pkg.version.split('.')\n const versionNames = ['major', 'minor', 'patch']\n const versionFlags = versionNames.filter((flagName) => cli.flags[flagName])\n const versionFlag = versionFlags[0]\n const numVersionFlags = versionFlags.length\n\n if (numVersionFlags === 0) {\n log.msg(`${pkg.name} version ${pkg.version}`)\n return\n }\n\n if (numVersionFlags > 1) {\n throw new Error(\n `--major, --minor and --patch are mutually exclusive - only one can be used at a time`,\n )\n }\n\n const partIndex = versionNames.indexOf(versionFlag)\n log.msg(versionParts[partIndex])\n}\n\nexport default run\n"],"mappings":";;;AAMA,MAAM,cAAc,iCAAiCA,QAE/C,OAAO;;MAEPC,QAAY;;;;;;;;MAQZA,QAAY;IACdD,KAAS,WAAWE,QAAY;;MAE9BD,QAAY;YACF,MAAM,GAAG,CAAC,CAAC,GAAG;GAGxB,QAAQ;CACZ,GAAGE;CAEH,OAAO;EACL,MAAM;EACN,SAAS;CACX;CAEA,OAAO;EACL,MAAM;EACN,SAAS;CACX;CAEA,OAAO;EACL,MAAM;EACN,SAAS;CACX;AACF;AAEA,SAAS,IAAI,EAAC,QAAyB;CACrC,IAAM,MAAM,KAAK,MAAM;EAAC;EAAO;EAAM;CAAW,CAAC,GAC3C,eAAA,QAA2B,MAAM,GAAG,GACpC,eAAe;EAAC;EAAS;EAAS;CAAO,GACzC,eAAe,aAAa,QAAQ,aAAa,IAAI,MAAM,SAAS,GACpE,cAAc,aAAa,IAC3B,kBAAkB,aAAa;CAErC,IAAI,oBAAoB,GAAG;EACzB,YAAI,IAAI,GAAGH,KAAS,WAAWE,SAAa;EAC5C;CACF;CAEA,IAAI,kBAAkB,GACpB,MAAU,MACR,sFACF;CAGF,IAAM,YAAY,aAAa,QAAQ,WAAW;CAClD,YAAI,IAAI,aAAa,UAAU;AACjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/cli.ts"],"mappings":"AAQA;AAAA,iBAAsB,QAAA,CAAS,IAAA,cAAmB,OAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/cli.ts"],"mappings":"AAQA;iBAAsB,SAAS,kBAAmB"}
package/dist/index.js CHANGED
@@ -1,5 +1,73 @@
1
- import { cliEntry } from "./_chunks-es/index.js";
2
- export {
3
- cliEntry
1
+ import { t as cliName } from "./_chunks-es/constants.js";
2
+ import { n as sharedFlags_default, t as log_default } from "./_chunks-es/log.js";
3
+ import meow from "meow";
4
+ var cmds_default = {
5
+ init: async (options) => {
6
+ await (await import("./_chunks-es/init2.js")).default(options);
7
+ },
8
+ inject: async (options) => {
9
+ await (await import("./_chunks-es/inject.js")).default(options);
10
+ },
11
+ "link-watch": async (options) => {
12
+ await (await import("./_chunks-es/link-watch.js")).default(options);
13
+ },
14
+ "verify-package": async (options) => {
15
+ await (await import("./_chunks-es/verify-package.js")).default(options);
16
+ },
17
+ "verify-studio": async (options) => {
18
+ await (await import("./_chunks-es/verify-studio.js")).default(options);
19
+ },
20
+ version: async (options) => {
21
+ (await import("./_chunks-es/version.js")).default(options);
22
+ }
4
23
  };
5
- //# sourceMappingURL=index.js.map
24
+ /** @public */
25
+ async function cliEntry(argv = process.argv) {
26
+ let cli = meow(`
27
+ Usage
28
+ $ ${cliName} [--help] [--debug] <command> [<args>]
29
+
30
+ These are common commands used in various situations:
31
+
32
+ init Create a new Sanity plugin
33
+ inject Inject config into an existing Sanity v3 plugin
34
+ verify-package Check that a Sanity plugin package follows V3 conventions. Prints upgrade steps.
35
+ verify-studio Check that a Sanity Studio follows V3 conventions. Prints upgrade steps.
36
+ link-watch Recompiles plugin automatically on changes and runs yalc push --publish
37
+ version Show the version of ${cliName} currently installed
38
+
39
+ Options
40
+ --silent Do not print info and warning messages
41
+ --verbose Log everything. This option conflicts with --silent
42
+ --debug Print stack trace on errors
43
+ --version Output the version number
44
+ --help Output usage information
45
+
46
+ Examples
47
+ # Init a new plugin in current directory
48
+ $ ${cliName} init
49
+
50
+ # Init a new plugin in my-sanity-plugin directory
51
+ $ ${cliName} init my-sanity-plugin
52
+
53
+ # Check that a Sanity plugin package in current directory follows V3 conventions
54
+ $ ${cliName} verify-package
55
+
56
+ # Check that a Sanity Studio in current directory follows V3 conventions
57
+ $ ${cliName} verify-studio
58
+ `, {
59
+ autoHelp: !1,
60
+ flags: sharedFlags_default,
61
+ argv: argv.slice(2)
62
+ }), commandName = cli.input[0];
63
+ commandName || cli.showHelp(), commandName in cmds_default || (console.error(`Unknown command "${commandName}"`), cli.showHelp()), cli.flags.silent && cli.flags.verbose && (log_default.error("--silent and --verbose are mutually exclusive"), cli.showHelp());
64
+ let cmd = cmds_default[commandName];
65
+ try {
66
+ log_default.setVerbosity(cli.flags), await cmd({ argv: argv.slice(3) });
67
+ } catch (err) {
68
+ log_default.error(err instanceof TypeError || cli.flags.debug ? err.stack : err.message), process.exit(1);
69
+ }
70
+ }
71
+ export { cliEntry };
72
+
73
+ //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"index.js","names":["sharedFlags","commands"],"sources":["../src/cmds/index.ts","../src/cli.ts"],"sourcesContent":["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 import('./version')).default(options)\n },\n}\n","import meow from 'meow'\n\nimport commands from './cmds'\nimport {cliName} from './constants'\nimport sharedFlags from './sharedFlags'\nimport log from './util/log'\n\n/** @public */\nexport async function cliEntry(argv = process.argv) {\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 process.exit(1)\n }\n}\n"],"mappings":";;;AAAA,IAAA,eAAe;CACb,MAAQ,OAAO,YAA8B;EAC3C,OAAO,MAAM,OAAO,yBAAA,CAAW,QAAQ,OAAO;CAChD;CACA,QAAU,OAAO,YAA8B;EAC7C,OAAO,MAAM,OAAO,0BAAA,CAAa,QAAQ,OAAO;CAClD;CACA,cAAc,OAAO,YAA8B;EACjD,OAAO,MAAM,OAAO,8BAAA,CAAiB,QAAQ,OAAO;CACtD;CACA,kBAAkB,OAAO,YAA8B;EACrD,OAAO,MAAM,OAAO,kCAAA,CAAqB,QAAQ,OAAO;CAC1D;CACA,iBAAiB,OAAO,YAA8B;EACpD,OAAO,MAAM,OAAO,iCAAA,CAAoB,QAAQ,OAAO;CACzD;CACA,SAAW,OAAO,YAA8B;EAC7C,CAAC,MAAM,OAAO,2BAAA,CAAc,QAAQ,OAAO;CAC9C;AACF;;ACXA,eAAsB,SAAS,OAAO,QAAQ,MAAM;CAClD,IAAM,MAAM,KACV;;OAEG,QAAQ;;;;;;;;;0CAS2B,QAAQ;;;;;;;;;;;QAW1C,QAAQ;;;QAGR,QAAQ;;;QAGR,QAAQ;;;QAGR,QAAQ;GAEZ;EACE,UAAU;EACV,OAAOA;EACP,MAAM,KAAK,MAAM,CAAC;CACpB,CACF,GAEM,cAAc,IAAI,MAAM;CAU9B,AATK,eACH,IAAI,SAAS,GAGT,eAAeC,iBACnB,QAAQ,MAAM,oBAAoB,YAAY,EAAE,GAChD,IAAI,SAAS,IAGX,IAAI,MAAM,UAAU,IAAI,MAAM,YAChC,YAAI,MAAM,+CAA+C,GACzD,IAAI,SAAS;CAIf,IAAM,MAAMA,aAAS;CAErB,IAAI;EAEF,AADA,YAAI,aAAa,IAAI,KAAK,GAC1B,MAAM,IAAI,EAAC,MAAM,KAAK,MAAM,CAAC,EAAC,CAAC;CACjC,SAAS,KAAU;EAGjB,AAFA,YAAI,MAAM,eAAe,aAAa,IAAI,MAAM,QAAQ,IAAI,QAAQ,IAAI,OAAO,GAE/E,QAAQ,KAAK,CAAC;CAChB;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanity/plugin-kit",
3
- "version": "6.0.3",
3
+ "version": "7.0.0",
4
4
  "description": "Enhanced Sanity.io plugin development experience",
5
5
  "keywords": [
6
6
  "bootstrap",
@@ -37,11 +37,12 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@rexxars/choosealicense-list": "^1.1.2",
40
+ "@typescript/typescript6": "^6.0.2",
40
41
  "chalk": "^4.1.2",
41
42
  "concurrently": "^8.2.2",
42
43
  "email-validator": "^2.0.4",
43
44
  "execa": "^5.1.1",
44
- "get-it": "^9.0.1",
45
+ "get-it": "^9.1.0",
45
46
  "get-latest-version": "^6.0.1",
46
47
  "git-remote-origin-url": "^3.1.0",
47
48
  "github-url-to-object": "^4.0.6",
@@ -58,41 +59,42 @@
58
59
  "yalc": "1.0.0-pre.53"
59
60
  },
60
61
  "devDependencies": {
61
- "@sanity/pkg-utils": "^10.8.2",
62
+ "@sanity/pkg-utils": "^11.0.1",
63
+ "@sanity/tsconfig": "^2.2.0",
64
+ "@sanity/tsdown-config": "^0.13.1",
62
65
  "@types/eslint": "^8.56.12",
63
66
  "@types/github-url-to-object": "^4.0.4",
64
67
  "@types/inquirer": "^9.0.3",
65
- "@types/node": "^24.13.2",
68
+ "@types/node": "^24.13.3",
66
69
  "@types/nodemon": "1.19.6",
67
70
  "@types/react": "^19.2.17",
68
71
  "@types/validate-npm-package-name": "^4.0.2",
69
- "@typescript-eslint/eslint-plugin": "^8.62.0",
70
- "@typescript-eslint/parser": "^8.62.0",
72
+ "@typescript-eslint/eslint-plugin": "^8.63.0",
73
+ "@typescript-eslint/parser": "^8.63.0",
71
74
  "eslint": "^8.57.1",
72
75
  "eslint-config-prettier": "^10.1.8",
73
76
  "eslint-config-sanity": "^7.1.4",
74
77
  "eslint-plugin-prettier": "^5.5.6",
75
78
  "eslint-plugin-react": "^7.37.5",
76
79
  "eslint-plugin-react-hooks": "^7.1.1",
77
- "prettier": "^3.9.1",
80
+ "prettier": "^3.9.5",
78
81
  "react": "^19.2.7",
79
82
  "react-dom": "^19.2.7",
80
83
  "sanity": "^6.3.0",
81
84
  "styled-components": "^6.4.3",
82
- "typescript": "6.0.3",
83
- "@repo/package.config": "0.0.0",
84
- "@repo/tsconfig": "0.0.0"
85
+ "tsdown": "^0.22.5",
86
+ "typescript": "6.0.3"
85
87
  },
86
88
  "peerDependencies": {
87
- "@sanity/pkg-utils": "^10.8.2",
89
+ "@sanity/pkg-utils": "^11.0.1",
88
90
  "eslint": ">=8.0.0",
89
- "typescript": "5.8.x || 5.9.x || 6.0.x"
91
+ "typescript": "6.x || 7.x"
90
92
  },
91
93
  "engines": {
92
94
  "node": ">=20.19 <22 || >=22.12"
93
95
  },
94
96
  "binname": "plugin-kit",
95
97
  "scripts": {
96
- "build": "pkg build --strict --check --clean"
98
+ "build": "tsdown"
97
99
  }
98
100
  }
@@ -1,125 +0,0 @@
1
- import meow from "meow";
2
- import chalk from "chalk";
3
- var commands = {
4
- init: async (options) => {
5
- await (await import("./init.js")).default(options);
6
- },
7
- inject: async (options) => {
8
- await (await import("./inject.js")).default(options);
9
- },
10
- "link-watch": async (options) => {
11
- await (await import("./link-watch.js")).default(options);
12
- },
13
- "verify-package": async (options) => {
14
- await (await import("./verify-package.js")).default(options);
15
- },
16
- "verify-studio": async (options) => {
17
- await (await import("./verify-studio.js")).default(options);
18
- },
19
- version: async (options) => {
20
- (await import("./version.js")).default(options);
21
- }
22
- };
23
- const cliName = "@sanity/plugin-kit", urls = {
24
- refDocs: "https://beta.sanity.io/docs/reference",
25
- migrationGuideStudio: "https://beta.sanity.io/docs/platform/v2-to-v3",
26
- migrationGuidePlugin: "https://beta.sanity.io/docs/platform/v2-to-v3/plugins",
27
- pluginReadme: "https://github.com/sanity-io/plugin-kit",
28
- incompatiblePlugin: "https://github.com/sanity-io/incompatible-plugin",
29
- sanityExchange: "https://www.sanity.io/exchange",
30
- linterPackage: "https://github.com/sanity-io/eslint-config-no-v2-imports"
31
- }, incompatiblePluginPackage = "@sanity/incompatible-plugin", defaultOutDir = "dist", minPkgUtilsMajor = 10, requiredNodeEngine = ">=20.19 <22 || >=22.12";
32
- var sharedFlags = {
33
- debug: {
34
- default: !1,
35
- type: "boolean"
36
- },
37
- silent: {
38
- type: "boolean",
39
- default: !1
40
- },
41
- verbose: {
42
- type: "boolean",
43
- default: !1
44
- }
45
- };
46
- let beQuiet = !1, beVerbose = !1;
47
- function setVerbosity({ verbose, silent }) {
48
- silent ? (beVerbose = !1, beQuiet = !0) : verbose && (beVerbose = !0, beQuiet = !1);
49
- }
50
- var log = {
51
- setVerbosity,
52
- // Bypasses any checks, prints regardless (only use for things like `cli --version`)
53
- msg: (msg, ...args) => !beQuiet && console.log(msg, ...args),
54
- // Debug only printed on --verbose
55
- debug: (msg, ...args) => !beQuiet && beVerbose && console.debug(`${chalk.bgBlack.white("[debug]")} ${msg}`, ...args),
56
- // Success messages only printed if not --silent
57
- success: (msg, ...args) => !beQuiet && console.info(`${chalk.bgBlack.greenBright("[success]")} ${msg}`, ...args),
58
- // Info only printed if not --silent ("standard" level)
59
- info: (msg, ...args) => !beQuiet && console.info(`${chalk.bgBlack.cyanBright("[info]")} ${msg}`, ...args),
60
- // Warning only printed if not --silent
61
- warn: (msg, ...args) => !beQuiet && console.warn(`${chalk.bgBlack.yellowBright("[warn]")} ${msg}`, ...args),
62
- // Errors are always printed
63
- error: (msg, ...args) => console.error(`${chalk.bgBlack.redBright("[error]")} ${msg}`, ...args)
64
- };
65
- async function cliEntry(argv = process.argv) {
66
- const cli = meow(
67
- `
68
- Usage
69
- $ ${cliName} [--help] [--debug] <command> [<args>]
70
-
71
- These are common commands used in various situations:
72
-
73
- init Create a new Sanity plugin
74
- inject Inject config into an existing Sanity v3 plugin
75
- verify-package Check that a Sanity plugin package follows V3 conventions. Prints upgrade steps.
76
- verify-studio Check that a Sanity Studio follows V3 conventions. Prints upgrade steps.
77
- link-watch Recompiles plugin automatically on changes and runs yalc push --publish
78
- version Show the version of ${cliName} currently installed
79
-
80
- Options
81
- --silent Do not print info and warning messages
82
- --verbose Log everything. This option conflicts with --silent
83
- --debug Print stack trace on errors
84
- --version Output the version number
85
- --help Output usage information
86
-
87
- Examples
88
- # Init a new plugin in current directory
89
- $ ${cliName} init
90
-
91
- # Init a new plugin in my-sanity-plugin directory
92
- $ ${cliName} init my-sanity-plugin
93
-
94
- # Check that a Sanity plugin package in current directory follows V3 conventions
95
- $ ${cliName} verify-package
96
-
97
- # Check that a Sanity Studio in current directory follows V3 conventions
98
- $ ${cliName} verify-studio
99
- `,
100
- {
101
- autoHelp: !1,
102
- flags: sharedFlags,
103
- argv: argv.slice(2)
104
- }
105
- ), commandName = cli.input[0];
106
- commandName || cli.showHelp(), commandName in commands || (console.error(`Unknown command "${commandName}"`), cli.showHelp()), cli.flags.silent && cli.flags.verbose && (log.error("--silent and --verbose are mutually exclusive"), cli.showHelp());
107
- const cmd = commands[commandName];
108
- try {
109
- log.setVerbosity(cli.flags), await cmd({ argv: argv.slice(3) });
110
- } catch (err) {
111
- log.error(err instanceof TypeError || cli.flags.debug ? err.stack : err.message), process.exit(1);
112
- }
113
- }
114
- export {
115
- cliEntry,
116
- cliName,
117
- defaultOutDir,
118
- incompatiblePluginPackage,
119
- log,
120
- minPkgUtilsMajor,
121
- requiredNodeEngine,
122
- sharedFlags,
123
- urls
124
- };
125
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/cmds/index.ts","../../src/constants.ts","../../src/sharedFlags.ts","../../src/util/log.ts","../../src/cli.ts"],"sourcesContent":["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 import('./version')).default(options)\n },\n}\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\n/**\n * Minimum major version of `@sanity/pkg-utils` required in userland.\n *\n * plugin-kit loads `package.config.ts` via the plugin's own `@sanity/pkg-utils` (a peer\n * dependency) using the `loadConfig({cwd, pkgPath})` signature introduced in v10. Older majors\n * expose an incompatible `loadConfig({cwd})` and cannot reliably load ESM TypeScript configs.\n */\nexport const minPkgUtilsMajor = 10\n\n/**\n * Required `engines.node` range for plugins, matching `@sanity/pkg-utils` so plugins declare the\n * same Node.js support as the build tool they use.\n */\nexport const requiredNodeEngine = '>=20.19 <22 || >=22.12'\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","// 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","import meow from 'meow'\n\nimport commands from './cmds'\nimport {cliName} from './constants'\nimport sharedFlags from './sharedFlags'\nimport log from './util/log'\n\n/** @public */\nexport async function cliEntry(argv = process.argv) {\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 process.exit(1)\n }\n}\n"],"names":[],"mappings":"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"}