@sanity/plugin-kit 4.0.20 → 5.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.
Files changed (104) hide show
  1. package/assets/inject/semver-workflow/.husky/commit-msg +0 -0
  2. package/assets/inject/semver-workflow/.husky/pre-commit +0 -0
  3. package/assets/inject/ui-workshop/src/__workshop__/props.tsx +2 -1
  4. package/bin/plugin-kit.js +3 -1
  5. package/dist/{_chunks-cjs/cli.js → _chunks-es/index.js} +53 -63
  6. package/dist/_chunks-es/index.js.map +1 -0
  7. package/dist/{_chunks-cjs/init2.js → _chunks-es/init.js} +25 -23
  8. package/dist/_chunks-es/init.js.map +1 -0
  9. package/dist/_chunks-es/init2.js +140 -0
  10. package/dist/_chunks-es/init2.js.map +1 -0
  11. package/{src/cmds/inject.ts → dist/_chunks-es/inject.js} +18 -32
  12. package/dist/{_chunks-cjs → _chunks-es}/inject.js.map +1 -1
  13. package/dist/_chunks-es/link-watch.js +91 -0
  14. package/dist/_chunks-es/link-watch.js.map +1 -0
  15. package/dist/_chunks-es/load-package-config.js +22 -0
  16. package/dist/_chunks-es/load-package-config.js.map +1 -0
  17. package/dist/_chunks-es/package.js +1759 -0
  18. package/dist/_chunks-es/package.js.map +1 -0
  19. package/dist/_chunks-es/package2.js +9 -0
  20. package/dist/{_chunks-cjs → _chunks-es}/package2.js.map +1 -1
  21. package/dist/_chunks-es/ts.js +171 -0
  22. package/dist/_chunks-es/ts.js.map +1 -0
  23. package/dist/_chunks-es/verify-package.js +92 -0
  24. package/dist/_chunks-es/verify-package.js.map +1 -0
  25. package/dist/_chunks-es/verify-studio.js +61 -0
  26. package/dist/_chunks-es/verify-studio.js.map +1 -0
  27. package/dist/_chunks-es/version.js +50 -0
  28. package/dist/_chunks-es/version.js.map +1 -0
  29. package/dist/index.d.ts +4 -1
  30. package/dist/index.d.ts.map +1 -0
  31. package/dist/index.js +4 -1
  32. package/dist/index.js.map +1 -1
  33. package/package.json +40 -98
  34. package/LICENSE +0 -21
  35. package/dist/_chunks-cjs/cli.js.map +0 -1
  36. package/dist/_chunks-cjs/init.js +0 -892
  37. package/dist/_chunks-cjs/init.js.map +0 -1
  38. package/dist/_chunks-cjs/init2.js.map +0 -1
  39. package/dist/_chunks-cjs/inject.js +0 -54
  40. package/dist/_chunks-cjs/link-watch.js +0 -84
  41. package/dist/_chunks-cjs/link-watch.js.map +0 -1
  42. package/dist/_chunks-cjs/package.js +0 -1809
  43. package/dist/_chunks-cjs/package.js.map +0 -1
  44. package/dist/_chunks-cjs/package2.js +0 -8
  45. package/dist/_chunks-cjs/ts.js +0 -160732
  46. package/dist/_chunks-cjs/ts.js.map +0 -1
  47. package/dist/_chunks-cjs/verify-package.js +0 -75
  48. package/dist/_chunks-cjs/verify-package.js.map +0 -1
  49. package/dist/_chunks-cjs/verify-studio.js +0 -57
  50. package/dist/_chunks-cjs/verify-studio.js.map +0 -1
  51. package/dist/_chunks-cjs/version.js +0 -51
  52. package/dist/_chunks-cjs/version.js.map +0 -1
  53. package/dist/cli.d.ts +0 -4
  54. package/dist/cli.js +0 -6
  55. package/dist/cli.js.map +0 -1
  56. package/src/actions/init.ts +0 -95
  57. package/src/actions/inject.ts +0 -399
  58. package/src/actions/link-watch.ts +0 -98
  59. package/src/actions/verify/types.ts +0 -56
  60. package/src/actions/verify/validations.ts +0 -505
  61. package/src/actions/verify/verify-common.ts +0 -93
  62. package/src/actions/verify-package.ts +0 -103
  63. package/src/actions/verify-studio.ts +0 -58
  64. package/src/cli.ts +0 -77
  65. package/src/cmds/index.ts +0 -20
  66. package/src/cmds/init.ts +0 -90
  67. package/src/cmds/link-watch.ts +0 -50
  68. package/src/cmds/verify-package.ts +0 -36
  69. package/src/cmds/verify-studio.ts +0 -36
  70. package/src/cmds/version.ts +0 -67
  71. package/src/configs/banned-packages.ts +0 -27
  72. package/src/configs/buildExtensions.ts +0 -1
  73. package/src/configs/default-source.ts +0 -64
  74. package/src/configs/eslint.ts +0 -51
  75. package/src/configs/forced-package-versions.ts +0 -12
  76. package/src/configs/git.ts +0 -68
  77. package/src/configs/pkg-config.ts +0 -30
  78. package/src/configs/prettier.ts +0 -11
  79. package/src/configs/tsconfig.ts +0 -78
  80. package/src/configs/uselessFiles.ts +0 -29
  81. package/src/constants.ts +0 -15
  82. package/src/dependencies/find.ts +0 -193
  83. package/src/dependencies/import-linter.ts +0 -95
  84. package/src/index.ts +0 -1
  85. package/src/npm/manager.ts +0 -44
  86. package/src/npm/package.ts +0 -427
  87. package/src/npm/publish.ts +0 -9
  88. package/src/npm/resolveLatestVersions.ts +0 -31
  89. package/src/presets/presets.ts +0 -54
  90. package/src/presets/renovatebot.ts +0 -21
  91. package/src/presets/semver-workflow.ts +0 -186
  92. package/src/presets/ui-workshop.ts +0 -97
  93. package/src/presets/ui.ts +0 -67
  94. package/src/sanity/manifest.ts +0 -340
  95. package/src/sharedFlags.ts +0 -14
  96. package/src/util/command-parser.ts +0 -36
  97. package/src/util/errorToUndefined.ts +0 -7
  98. package/src/util/files.ts +0 -260
  99. package/src/util/log.ts +0 -44
  100. package/src/util/prompt.ts +0 -70
  101. package/src/util/readme.ts +0 -88
  102. package/src/util/request.ts +0 -11
  103. package/src/util/ts.ts +0 -19
  104. package/src/util/user.ts +0 -129
@@ -1,75 +0,0 @@
1
- "use strict";
2
- var path = require("path"), meow = require("meow"), pkgUtils = require("@sanity/pkg-utils"), _package = require("./package.js"), cli = require("./cli.js"), ts = require("./ts.js"), outdent = require("outdent"), chalk = require("chalk");
3
- function _interopDefaultCompat(e) {
4
- return e && typeof e == "object" && "default" in e ? e : { default: e };
5
- }
6
- var path__default = /* @__PURE__ */ _interopDefaultCompat(path), meow__default = /* @__PURE__ */ _interopDefaultCompat(meow), outdent__default = /* @__PURE__ */ _interopDefaultCompat(outdent), chalk__default = /* @__PURE__ */ _interopDefaultCompat(chalk);
7
- async function verifyPackage({ basePath, flags }) {
8
- let errors = [];
9
- const packageJson = await _package.getPackage({ basePath, validate: !1 }), verifyConfig = packageJson.sanityPlugin?.verifyPackage || {}, packageConfig = await pkgUtils.loadConfig({ cwd: basePath }), outDir = packageConfig?.dist ?? cli.defaultOutDir, tsconfig = packageConfig?.tsconfig ?? "tsconfig.json", validation = ts.createValidator(verifyConfig, flags, errors), ts$1 = await ts.readTSConfig({ basePath, filename: tsconfig });
10
- if (await validation("packageName", async () => _package.validatePackageName(packageJson)), await validation("pkg-utils", async () => _package.validatePkgUtilsDependency(packageJson)), await validation("srcIndex", async () => _package.validateSrcIndexFile(basePath)), await validation("scripts", async () => _package.validateScripts(packageJson)), await validation("nodeEngine", async () => _package.validateNodeEngine(packageJson)), await validation(
11
- "duplicateConfig",
12
- async () => _package.disallowDuplicateEslintConfig(basePath, packageJson)
13
- ), await validation(
14
- "duplicateConfig",
15
- async () => _package.disallowDuplicatePrettierConfig(basePath, packageJson)
16
- ), ts$1 && await validation("tsconfig", async () => _package.validateTsConfig(ts$1, { basePath, outDir, tsconfig })), await validation("sanityV2Json", async () => _package.validatePluginSanityJson({ basePath, packageJson })), await validation("babelConfig", async () => _package.validateBabelConfig({ basePath })), await validation("dependencies", async () => _package.validateSanityDependencies(packageJson)), await validation(
17
- "deprecatedDependencies",
18
- async () => _package.validateDeprecatedDependencies(packageJson)
19
- ), await validation("eslintImports", async () => ts.validateImports({ basePath })), errors.length)
20
- throw new Error(
21
- outdent__default.default`
22
- Detected validation issues!
23
- To make this package Sanity v3 compatible, fix the issues starting from the top, or disable any checks you deem unnecessary.
24
-
25
- These issues assume the package uses @sanity/plugin-kit defaults for development and building.
26
- Refer to ${cli.urls.pluginReadme} for configuration options.
27
-
28
- More information is available here:
29
- - Studio migration guide: ${cli.urls.migrationGuideStudio}
30
- - Plugin migration guide: ${cli.urls.migrationGuidePlugin}
31
- - Reference documentation: ${cli.urls.refDocs}
32
-
33
- ${chalk__default.default.grey(
34
- `To fail-fast on first detected issue run:
35
- npx ${cli.cliName} verify-package' --single`
36
- )}
37
- `.trimStart()
38
- );
39
- await ts.runTscMaybe(verifyConfig, ts$1), cli.log.success(
40
- outdent__default.default`
41
- No outstanding upgrade issues detected.
42
-
43
- Suggested next steps:
44
- - Use plugin-kit to build and develop the plugin according to ${cli.urls.pluginReadme}.
45
- - Build the plugin and fix any compilation errors
46
- - Test the plugin using the link-watch command
47
- `.trim()
48
- );
49
- }
50
- const description = "Verify that a Sanity plugin package is v3 compatible, and print upgrade steps if not.", help = `
51
- Usage
52
- $ ${cli.cliName} verify-package [dir] [<args>]
53
-
54
- Options
55
- --single Enables fail-fast mode: Will only output the first validation that fails.
56
- --silent Do not print info and warning messages
57
- --verbose Log everything. This option conflicts with --silent
58
- --version Output the version number
59
- --help Output usage information
60
-
61
- Each check will describe how they can be individually disabled.
62
-
63
- Examples
64
- # Verify Sanity plugin package in current directory
65
- $ ${cli.cliName} verify-package
66
-
67
- # Verify Sanity plugin package in my-plugin directory in silent mode
68
- $ ${cli.cliName} verify-package my-plugin-directory --silent
69
- `;
70
- function run({ argv }) {
71
- const cli2 = meow__default.default(help, { flags: ts.verifyFlags, argv, description }), basePath = path__default.default.resolve(cli2.input[0] || process.cwd());
72
- return verifyPackage({ basePath, flags: cli2.flags });
73
- }
74
- exports.default = run;
75
- //# sourceMappingURL=verify-package.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"verify-package.js","sources":["../../src/actions/verify-package.ts","../../src/cmds/verify-package.ts"],"sourcesContent":["import {loadConfig as loadPackageConfig} from '@sanity/pkg-utils'\nimport {getPackage} from '../npm/package'\nimport log from '../util/log'\nimport {cliName, defaultOutDir, urls} from '../constants'\nimport {validateImports} from '../dependencies/import-linter'\nimport outdent from 'outdent'\nimport {\n createValidator,\n runTscMaybe,\n VerifyFlags,\n VerifyPackageConfig,\n} from './verify/verify-common'\nimport {\n validateBabelConfig,\n validateNodeEngine,\n validatePackageName,\n validatePkgUtilsDependency,\n validatePluginSanityJson,\n validateDeprecatedDependencies,\n validateScripts,\n validateTsConfig,\n validateSanityDependencies,\n validateSrcIndexFile,\n disallowDuplicateEslintConfig,\n disallowDuplicatePrettierConfig,\n} from './verify/validations'\nimport {PackageJson} from './verify/types'\nimport chalk from 'chalk'\nimport {readTSConfig} from '../util/ts'\n\nexport async function verifyPackage({basePath, flags}: {basePath: string; flags: VerifyFlags}) {\n let errors: string[] = []\n\n const packageJson: PackageJson = await getPackage({basePath, validate: false})\n const verifyConfig: VerifyPackageConfig = packageJson.sanityPlugin?.verifyPackage || {}\n const packageConfig = await loadPackageConfig({cwd: basePath})\n const outDir = packageConfig?.dist ?? defaultOutDir\n const tsconfig = packageConfig?.tsconfig ?? 'tsconfig.json'\n\n const validation = createValidator(verifyConfig, flags, errors)\n\n const ts = await readTSConfig({basePath, filename: tsconfig})\n\n await validation('packageName', async () => validatePackageName(packageJson))\n await validation('pkg-utils', async () => validatePkgUtilsDependency(packageJson))\n await validation('srcIndex', async () => validateSrcIndexFile(basePath))\n await validation('scripts', async () => validateScripts(packageJson))\n await validation('nodeEngine', async () => validateNodeEngine(packageJson))\n await validation('duplicateConfig', async () =>\n disallowDuplicateEslintConfig(basePath, packageJson),\n )\n await validation('duplicateConfig', async () =>\n disallowDuplicatePrettierConfig(basePath, packageJson),\n )\n\n if (ts) {\n await validation('tsconfig', async () => validateTsConfig(ts, {basePath, outDir, tsconfig}))\n }\n\n await validation('sanityV2Json', async () => validatePluginSanityJson({basePath, packageJson}))\n\n await validation('babelConfig', async () => validateBabelConfig({basePath}))\n\n await validation('dependencies', async () => validateSanityDependencies(packageJson))\n await validation('deprecatedDependencies', async () =>\n validateDeprecatedDependencies(packageJson),\n )\n await validation('eslintImports', async () => validateImports({basePath}))\n\n if (errors.length) {\n throw new Error(\n outdent`\n Detected validation issues!\n To make this package Sanity v3 compatible, fix the issues starting from the top, or disable any checks you deem unnecessary.\n\n These issues assume the package uses @sanity/plugin-kit defaults for development and building.\n Refer to ${urls.pluginReadme} for configuration options.\n\n More information is available here:\n - Studio migration guide: ${urls.migrationGuideStudio}\n - Plugin migration guide: ${urls.migrationGuidePlugin}\n - Reference documentation: ${urls.refDocs}\n\n ${chalk.grey(\n `To fail-fast on first detected issue run:\\nnpx ${cliName} verify-package' --single`,\n )}\n `.trimStart(),\n )\n }\n\n await runTscMaybe(verifyConfig, ts)\n\n log.success(\n outdent`\n No outstanding upgrade issues detected.\n\n Suggested next steps:\n - Use plugin-kit to build and develop the plugin according to ${urls.pluginReadme}.\n - Build the plugin and fix any compilation errors\n - Test the plugin using the link-watch command\n `.trim(),\n )\n}\n","import path from 'path'\nimport meow from 'meow'\nimport {verifyPackage} from '../actions/verify-package'\nimport {cliName} from '../constants'\nimport {verifyFlags} from '../actions/verify/verify-common'\n\nconst description = `Verify that a Sanity plugin package is v3 compatible, and print upgrade steps if not.`\n\nconst help = `\nUsage\n $ ${cliName} verify-package [dir] [<args>]\n\nOptions\n --single Enables fail-fast mode: Will only output the first validation that fails.\n --silent Do not print info and warning messages\n --verbose Log everything. This option conflicts with --silent\n --version Output the version number\n --help Output usage information\n\nEach check will describe how they can be individually disabled.\n\nExamples\n # Verify Sanity plugin package in current directory\n $ ${cliName} verify-package\n\n # Verify Sanity plugin package in my-plugin directory in silent mode\n $ ${cliName} verify-package my-plugin-directory --silent\n`\n\nfunction run({argv}: {argv: string[]}) {\n const cli = meow(help, {flags: verifyFlags, argv, description})\n const basePath = path.resolve(cli.input[0] || process.cwd())\n return verifyPackage({basePath, flags: cli.flags})\n}\n\nexport default run\n"],"names":["getPackage","loadPackageConfig","defaultOutDir","createValidator","ts","readTSConfig","validatePackageName","validatePkgUtilsDependency","validateSrcIndexFile","validateScripts","validateNodeEngine","disallowDuplicateEslintConfig","disallowDuplicatePrettierConfig","validateTsConfig","validatePluginSanityJson","validateBabelConfig","validateSanityDependencies","validateDeprecatedDependencies","validateImports","outdent","urls","chalk","cliName","runTscMaybe","log","cli","meow","verifyFlags","path"],"mappings":";;;;;;AA8BA,eAAsB,cAAc,EAAC,UAAU,SAAgD;AAC7F,MAAI,SAAmB,CAAA;AAEvB,QAAM,cAA2B,MAAMA,SAAAA,WAAW,EAAC,UAAU,UAAU,GAAA,CAAM,GACvE,eAAoC,YAAY,cAAc,iBAAiB,CAAA,GAC/E,gBAAgB,MAAMC,SAAAA,WAAkB,EAAC,KAAK,SAAA,CAAS,GACvD,SAAS,eAAe,QAAQC,IAAAA,eAChC,WAAW,eAAe,YAAY,iBAEtC,aAAaC,mBAAgB,cAAc,OAAO,MAAM,GAExDC,OAAK,MAAMC,GAAAA,aAAa,EAAC,UAAU,UAAU,UAAS;AA4B5D,MA1BA,MAAM,WAAW,eAAe,YAAYC,SAAAA,oBAAoB,WAAW,CAAC,GAC5E,MAAM,WAAW,aAAa,YAAYC,SAAAA,2BAA2B,WAAW,CAAC,GACjF,MAAM,WAAW,YAAY,YAAYC,SAAAA,qBAAqB,QAAQ,CAAC,GACvE,MAAM,WAAW,WAAW,YAAYC,SAAAA,gBAAgB,WAAW,CAAC,GACpE,MAAM,WAAW,cAAc,YAAYC,SAAAA,mBAAmB,WAAW,CAAC,GAC1E,MAAM;AAAA,IAAW;AAAA,IAAmB,YAClCC,SAAAA,8BAA8B,UAAU,WAAW;AAAA,EAAA,GAErD,MAAM;AAAA,IAAW;AAAA,IAAmB,YAClCC,SAAAA,gCAAgC,UAAU,WAAW;AAAA,EAAA,GAGnDR,QACF,MAAM,WAAW,YAAY,YAAYS,SAAAA,iBAAiBT,MAAI,EAAC,UAAU,QAAQ,SAAA,CAAS,CAAC,GAG7F,MAAM,WAAW,gBAAgB,YAAYU,SAAAA,yBAAyB,EAAC,UAAU,aAAY,CAAC,GAE9F,MAAM,WAAW,eAAe,YAAYC,SAAAA,oBAAoB,EAAC,SAAA,CAAS,CAAC,GAE3E,MAAM,WAAW,gBAAgB,YAAYC,SAAAA,2BAA2B,WAAW,CAAC,GACpF,MAAM;AAAA,IAAW;AAAA,IAA0B,YACzCC,SAAAA,+BAA+B,WAAW;AAAA,EAAA,GAE5C,MAAM,WAAW,iBAAiB,YAAYC,GAAAA,gBAAgB,EAAC,SAAA,CAAS,CAAC,GAErE,OAAO;AACT,UAAM,IAAI;AAAA,MACRC,iBAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,mBAKaC,IAAAA,KAAK,YAAY;AAAA;AAAA;AAAA,oCAGAA,IAAAA,KAAK,oBAAoB;AAAA,oCACzBA,IAAAA,KAAK,oBAAoB;AAAA,qCACxBA,IAAAA,KAAK,OAAO;AAAA;AAAA,UAEvCC,eAAAA,QAAM;AAAA,QACN;AAAA,MAAkDC,IAAAA,OAAO;AAAA,MAAA,CAC1D;AAAA,QACD,UAAA;AAAA,IAAU;AAIhB,QAAMC,GAAAA,YAAY,cAAcnB,IAAE,GAElCoB,IAAAA,IAAI;AAAA,IACFL,iBAAAA;AAAAA;AAAAA;AAAAA;AAAAA,sEAIkEC,IAAAA,KAAK,YAAY;AAAA;AAAA;AAAA,IAGnF,KAAA;AAAA,EAAK;AAET;AChGA,MAAM,cAAc,yFAEd,OAAO;AAAA;AAAA,MAEPE,WAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAaPA,WAAO;AAAA;AAAA;AAAA,MAGPA,WAAO;AAAA;AAGb,SAAS,IAAI,EAAC,QAAyB;AACrC,QAAMG,OAAMC,cAAAA,QAAK,MAAM,EAAC,OAAOC,GAAAA,aAAa,MAAM,YAAA,CAAY,GACxD,WAAWC,cAAAA,QAAK,QAAQH,KAAI,MAAM,CAAC,KAAK,QAAQ,KAAK;AAC3D,SAAO,cAAc,EAAC,UAAU,OAAOA,KAAI,OAAM;AACnD;;"}
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var path = require("path"), meow = require("meow"), cli = require("./cli.js"), ts = require("./ts.js"), pkgUtils = require("@sanity/pkg-utils"), _package = require("./package.js"), outdent = require("outdent"), chalk = require("chalk");
3
- function _interopDefaultCompat(e) {
4
- return e && typeof e == "object" && "default" in e ? e : { default: e };
5
- }
6
- var path__default = /* @__PURE__ */ _interopDefaultCompat(path), meow__default = /* @__PURE__ */ _interopDefaultCompat(meow), outdent__default = /* @__PURE__ */ _interopDefaultCompat(outdent), chalk__default = /* @__PURE__ */ _interopDefaultCompat(chalk);
7
- async function verifyStudio({ basePath, flags }) {
8
- let errors = [];
9
- const packageJson = await _package.getPackage({ basePath, validate: !1 }), verifyConfig = packageJson.sanityPlugin?.verifyPackage || {}, tsconfig = (await pkgUtils.loadConfig({ cwd: basePath }))?.tsconfig ?? "tsconfig.json", validation = ts.createValidator(verifyConfig, flags, errors), ts$1 = await ts.readTSConfig({ basePath, filename: tsconfig });
10
- if (await validation("studioConfig", async () => _package.validateStudioConfig({ basePath })), await validation("dependencies", async () => _package.validateSanityDependencies(packageJson)), await validation("eslintImports", async () => ts.validateImports({ basePath })), errors.length)
11
- throw new Error(
12
- outdent__default.default`
13
- Detected validation issues!
14
- This Sanity Studio is not completely V3 ready. Fix the issues starting from the top, or disable any checks you deem unnecessary.
15
-
16
- More information is available here:
17
- - Migration guide: ${cli.urls.migrationGuideStudio}
18
- - Reference documentation: ${cli.urls.refDocs}
19
-
20
- ${chalk__default.default.grey(
21
- `To fail-fast on first detected issue run:
22
- npx ${cli.cliName} verify-studio --single`
23
- )}
24
- `.trimStart()
25
- );
26
- await ts.runTscMaybe(verifyConfig, ts$1), cli.log.success(
27
- outdent__default.default`
28
- No outstanding upgrade issues detected. Studio is V3 ready!
29
- `.trim()
30
- );
31
- }
32
- const description = "Verify that a Sanity Studio is configured correctly for v3, and print upgrade steps if not.", help = `
33
- Usage
34
- $ ${cli.cliName} verify-studio [dir] [<args>]
35
-
36
- Options
37
- --single Enables fail-fast mode: Will only output the first validation that fails.
38
- --silent Do not print info and warning messages
39
- --verbose Log everything. This option conflicts with --silent
40
- --version Output the version number
41
- --help Output usage information
42
-
43
- Each check will describe how they can be individually disabled.
44
-
45
- Examples
46
- # Verify Sanity Studio in current directory
47
- $ ${cli.cliName} verify-studio
48
-
49
- # Verify Sanity Studio in my-sanity-studio directory in silent mode
50
- $ ${cli.cliName} verify-studio my-sanity-studio --silent
51
- `;
52
- function run({ argv }) {
53
- const cli2 = meow__default.default(help, { flags: ts.verifyFlags, argv, description }), basePath = path__default.default.resolve(cli2.input[0] || process.cwd());
54
- return verifyStudio({ basePath, flags: cli2.flags });
55
- }
56
- exports.default = run;
57
- //# sourceMappingURL=verify-studio.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"verify-studio.js","sources":["../../src/actions/verify-studio.ts","../../src/cmds/verify-studio.ts"],"sourcesContent":["import {loadConfig as loadPackageConfig} from '@sanity/pkg-utils'\nimport {getPackage} from '../npm/package'\nimport log from '../util/log'\nimport {cliName, urls} from '../constants'\nimport {validateImports} from '../dependencies/import-linter'\nimport outdent from 'outdent'\nimport chalk from 'chalk'\nimport {\n createValidator,\n runTscMaybe,\n VerifyFlags,\n VerifyPackageConfig,\n} from './verify/verify-common'\nimport {PackageJson} from './verify/types'\nimport {validateSanityDependencies, validateStudioConfig} from './verify/validations'\nimport {readTSConfig} from '../util/ts'\n\nexport async function verifyStudio({basePath, flags}: {basePath: string; flags: VerifyFlags}) {\n let errors: string[] = []\n\n const packageJson: PackageJson = await getPackage({basePath, validate: false})\n const verifyConfig: VerifyPackageConfig = packageJson.sanityPlugin?.verifyPackage || {}\n const packageConfig = await loadPackageConfig({cwd: basePath})\n const tsconfig = packageConfig?.tsconfig ?? 'tsconfig.json'\n\n const validation = createValidator(verifyConfig, flags, errors)\n\n const ts = await readTSConfig({basePath, filename: tsconfig})\n\n await validation('studioConfig', async () => validateStudioConfig({basePath}))\n await validation('dependencies', async () => validateSanityDependencies(packageJson))\n await validation('eslintImports', async () => validateImports({basePath}))\n\n if (errors.length) {\n throw new Error(\n outdent`\n Detected validation issues!\n This Sanity Studio is not completely V3 ready. Fix the issues starting from the top, or disable any checks you deem unnecessary.\n\n More information is available here:\n - Migration guide: ${urls.migrationGuideStudio}\n - Reference documentation: ${urls.refDocs}\n\n ${chalk.grey(\n `To fail-fast on first detected issue run:\\nnpx ${cliName} verify-studio --single`,\n )}\n `.trimStart(),\n )\n }\n\n await runTscMaybe(verifyConfig, ts)\n\n log.success(\n outdent`\n No outstanding upgrade issues detected. Studio is V3 ready!\n `.trim(),\n )\n}\n","import path from 'path'\nimport meow from 'meow'\nimport {cliName} from '../constants'\nimport {verifyFlags} from '../actions/verify/verify-common'\nimport {verifyStudio} from '../actions/verify-studio'\n\nconst description = `Verify that a Sanity Studio is configured correctly for v3, and print upgrade steps if not.`\n\nconst help = `\nUsage\n $ ${cliName} verify-studio [dir] [<args>]\n\nOptions\n --single Enables fail-fast mode: Will only output the first validation that fails.\n --silent Do not print info and warning messages\n --verbose Log everything. This option conflicts with --silent\n --version Output the version number\n --help Output usage information\n\nEach check will describe how they can be individually disabled.\n\nExamples\n # Verify Sanity Studio in current directory\n $ ${cliName} verify-studio\n\n # Verify Sanity Studio in my-sanity-studio directory in silent mode\n $ ${cliName} verify-studio my-sanity-studio --silent\n`\n\nfunction run({argv}: {argv: string[]}) {\n const cli = meow(help, {flags: verifyFlags, argv, description})\n const basePath = path.resolve(cli.input[0] || process.cwd())\n return verifyStudio({basePath, flags: cli.flags})\n}\n\nexport default run\n"],"names":["getPackage","loadPackageConfig","createValidator","ts","readTSConfig","validateStudioConfig","validateSanityDependencies","validateImports","outdent","urls","chalk","cliName","runTscMaybe","log","cli","meow","verifyFlags","path"],"mappings":";;;;;;AAiBA,eAAsB,aAAa,EAAC,UAAU,SAAgD;AAC5F,MAAI,SAAmB,CAAA;AAEvB,QAAM,cAA2B,MAAMA,SAAAA,WAAW,EAAC,UAAU,UAAU,IAAM,GACvE,eAAoC,YAAY,cAAc,iBAAiB,CAAA,GAE/E,YADgB,MAAMC,oBAAkB,EAAC,KAAK,SAAA,CAAS,IAC7B,YAAY,iBAEtC,aAAaC,GAAAA,gBAAgB,cAAc,OAAO,MAAM,GAExDC,OAAK,MAAMC,GAAAA,aAAa,EAAC,UAAU,UAAU,UAAS;AAM5D,MAJA,MAAM,WAAW,gBAAgB,YAAYC,SAAAA,qBAAqB,EAAC,SAAA,CAAS,CAAC,GAC7E,MAAM,WAAW,gBAAgB,YAAYC,oCAA2B,WAAW,CAAC,GACpF,MAAM,WAAW,iBAAiB,YAAYC,mBAAgB,EAAC,SAAA,CAAS,CAAC,GAErE,OAAO;AACT,UAAM,IAAI;AAAA,MACRC,iBAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,6BAKuBC,IAAAA,KAAK,oBAAoB;AAAA,qCACjBA,IAAAA,KAAK,OAAO;AAAA;AAAA,UAEvCC,eAAAA,QAAM;AAAA,QACN;AAAA,MAAkDC,IAAAA,OAAO;AAAA,MAAA,CAC1D;AAAA,QACD,UAAA;AAAA,IAAU;AAIhB,QAAMC,GAAAA,YAAY,cAAcT,IAAE,GAElCU,IAAAA,IAAI;AAAA,IACFL,iBAAAA;AAAAA;AAAAA,IAEA,KAAA;AAAA,EAAK;AAET;ACnDA,MAAM,cAAc,+FAEd,OAAO;AAAA;AAAA,MAEPG,WAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAaPA,WAAO;AAAA;AAAA;AAAA,MAGPA,WAAO;AAAA;AAGb,SAAS,IAAI,EAAC,QAAyB;AACrC,QAAMG,OAAMC,cAAAA,QAAK,MAAM,EAAC,OAAOC,GAAAA,aAAa,MAAM,YAAA,CAAY,GACxD,WAAWC,cAAAA,QAAK,QAAQH,KAAI,MAAM,CAAC,KAAK,QAAQ,KAAK;AAC3D,SAAO,aAAa,EAAC,UAAU,OAAOA,KAAI,OAAM;AAClD;;"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- var meow = require("meow"), _package = require("./package2.js"), cli = require("./cli.js");
3
- function _interopDefaultCompat(e) {
4
- return e && typeof e == "object" && "default" in e ? e : { default: e };
5
- }
6
- var meow__default = /* @__PURE__ */ _interopDefaultCompat(meow);
7
- const description = `Show the installed version of ${_package.pkg.name}`, help = `
8
- Usage
9
- $ ${_package.pkg.binname} version
10
-
11
- Options
12
- --major Show only the major version
13
- --minor Show only the minor version
14
- --patch Show only the patch version
15
-
16
- Examples
17
- $ ${_package.pkg.binname} version
18
- ${_package.pkg.name} version ${_package.pkg.version}
19
-
20
- $ ${_package.pkg.binname} version --major
21
- ${_package.pkg.version.split(".")[0]}
22
- `, flags = {
23
- ...cli.sharedFlags,
24
- major: {
25
- type: "boolean",
26
- default: !1
27
- },
28
- minor: {
29
- type: "boolean",
30
- default: !1
31
- },
32
- patch: {
33
- type: "boolean",
34
- default: !1
35
- }
36
- };
37
- function run({ argv }) {
38
- const cli$1 = meow__default.default(help, { flags, argv, description }), versionParts = _package.pkg.version.split("."), versionNames = ["major", "minor", "patch"], versionFlags = versionNames.filter((flagName) => cli$1.flags[flagName]), versionFlag = versionFlags[0], numVersionFlags = versionFlags.length;
39
- if (numVersionFlags === 0) {
40
- cli.log.msg(`${_package.pkg.name} version ${_package.pkg.version}`);
41
- return;
42
- }
43
- if (numVersionFlags > 1)
44
- throw new Error(
45
- "--major, --minor and --patch are mutually exclusive - only one can be used at a time"
46
- );
47
- const partIndex = versionNames.indexOf(versionFlag);
48
- cli.log.msg(versionParts[partIndex]);
49
- }
50
- exports.default = run;
51
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sources":["../../src/cmds/version.ts"],"sourcesContent":["import meow from 'meow'\nimport pkg from '../../package.json'\nimport log from '../util/log'\nimport sharedFlags from '../sharedFlags'\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":["pkg","sharedFlags","cli","meow","log"],"mappings":";;;;;;AAKA,MAAM,cAAc,iCAAiCA,SAAAA,IAAI,IAAI,IAEvD,OAAO;AAAA;AAAA,MAEPA,SAAAA,IAAI,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQXA,SAAAA,IAAI,OAAO;AAAA,IACbA,aAAI,IAAI,YAAYA,SAAAA,IAAI,OAAO;AAAA;AAAA,MAE7BA,SAAAA,IAAI,OAAO;AAAA,IACbA,SAAAA,IAAI,QAAQ,MAAM,GAAG,EAAE,CAAC,CAAC;AAAA,GAGvB,QAAQ;AAAA,EACZ,GAAGC,IAAAA;AAAAA,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,QAAMC,QAAMC,cAAAA,QAAK,MAAM,EAAC,OAAO,MAAM,YAAA,CAAY,GAC3C,eAAeH,SAAAA,IAAI,QAAQ,MAAM,GAAG,GACpC,eAAe,CAAC,SAAS,SAAS,OAAO,GACzC,eAAe,aAAa,OAAO,CAAC,aAAaE,MAAI,MAAM,QAAQ,CAAC,GACpE,cAAc,aAAa,CAAC,GAC5B,kBAAkB,aAAa;AAErC,MAAI,oBAAoB,GAAG;AACzBE,YAAI,IAAI,GAAGJ,SAAAA,IAAI,IAAI,YAAYA,SAAAA,IAAI,OAAO,EAAE;AAC5C;AAAA,EACF;AAEA,MAAI,kBAAkB;AACpB,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAIJ,QAAM,YAAY,aAAa,QAAQ,WAAW;AAClDI,MAAAA,IAAI,IAAI,aAAa,SAAS,CAAC;AACjC;;"}
package/dist/cli.d.ts DELETED
@@ -1,4 +0,0 @@
1
- /** @public */
2
- export declare function cliEntry(argv?: string[], autoExit?: boolean): Promise<void>
3
-
4
- export {}
package/dist/cli.js DELETED
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: !0 });
3
- require("meow");
4
- var cli = require("./_chunks-cjs/cli.js");
5
- exports.cliEntry = cli.cliEntry;
6
- //# sourceMappingURL=cli.js.map
package/dist/cli.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -1,95 +0,0 @@
1
- import path from 'path'
2
- import {inject} from './inject'
3
- import {ensureDir, writeFile} from '../util/files'
4
- import sharedFlags from '../sharedFlags'
5
- import {TypedFlags} from 'meow'
6
- import {getPackage} from '../npm/package'
7
- import {defaultSourceJs, defaultSourceTs} from '../configs/default-source'
8
- import {defaultOutDir} from '../constants'
9
-
10
- export const initFlags = {
11
- ...sharedFlags,
12
- scripts: {
13
- type: 'boolean',
14
- default: true,
15
- },
16
- eslint: {
17
- type: 'boolean',
18
- default: true,
19
- },
20
- typescript: {
21
- type: 'boolean',
22
- default: true,
23
- },
24
- prettier: {
25
- type: 'boolean',
26
- default: true,
27
- },
28
- license: {
29
- type: 'string',
30
- },
31
- editorconfig: {
32
- type: 'boolean',
33
- default: true,
34
- },
35
- gitignore: {
36
- type: 'boolean',
37
- default: true,
38
- },
39
- force: {
40
- type: 'boolean',
41
- default: false,
42
- },
43
- install: {
44
- type: 'boolean',
45
- default: true,
46
- },
47
- name: {
48
- type: 'string',
49
- },
50
- author: {
51
- type: 'string',
52
- },
53
- repo: {
54
- type: 'string',
55
- },
56
- presetOnly: {
57
- type: 'boolean',
58
- default: false,
59
- },
60
- preset: {
61
- type: 'string',
62
- isMultiple: true,
63
- },
64
- } as const
65
-
66
- export type InitFlags = TypedFlags<typeof initFlags>
67
-
68
- export interface InitOptions {
69
- basePath: string
70
- flags: InitFlags
71
- }
72
-
73
- export async function init(options: InitOptions) {
74
- let dependencies = {}
75
- let devDependencies = {}
76
- let peerDependencies = {}
77
-
78
- await inject({
79
- ...options,
80
- outDir: defaultOutDir,
81
- requireUserConfirmation: !options.flags.force,
82
- dependencies,
83
- devDependencies,
84
- peerDependencies,
85
- validate: false,
86
- })
87
-
88
- const packageJson = await getPackage({basePath: options.basePath, validate: false})
89
- const typescript = options.flags.typescript
90
- const source = typescript ? defaultSourceTs(packageJson) : defaultSourceJs(packageJson)
91
- const filename = typescript ? 'index.ts' : 'index.js'
92
- const srcDir = path.resolve(options.basePath, 'src')
93
- await ensureDir(srcDir)
94
- await writeFile(path.join(srcDir, filename), source, {encoding: 'utf8'})
95
- }