@sanity/cli 6.3.1 → 6.4.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 (193) hide show
  1. package/README.md +311 -452
  2. package/dist/actions/build/decorateIndexWithStagingScript.js +16 -0
  3. package/dist/actions/build/decorateIndexWithStagingScript.js.map +1 -0
  4. package/dist/actions/build/writeSanityRuntime.js +3 -2
  5. package/dist/actions/build/writeSanityRuntime.js.map +1 -1
  6. package/dist/actions/dataset/create.js +4 -0
  7. package/dist/actions/dataset/create.js.map +1 -1
  8. package/dist/actions/deploy/findUserApplicationForApp.js +1 -0
  9. package/dist/actions/deploy/findUserApplicationForApp.js.map +1 -1
  10. package/dist/actions/deploy/types.js +1 -1
  11. package/dist/actions/deploy/types.js.map +1 -1
  12. package/dist/actions/init/bootstrapLocalTemplate.js +16 -1
  13. package/dist/actions/init/bootstrapLocalTemplate.js.map +1 -1
  14. package/dist/actions/init/initApp.js +72 -0
  15. package/dist/actions/init/initApp.js.map +1 -0
  16. package/dist/actions/init/initHelpers.js +37 -0
  17. package/dist/actions/init/initHelpers.js.map +1 -0
  18. package/dist/actions/init/initNextJs.js +246 -0
  19. package/dist/actions/init/initNextJs.js.map +1 -0
  20. package/dist/actions/init/initStudio.js +127 -0
  21. package/dist/actions/init/initStudio.js.map +1 -0
  22. package/dist/actions/init/scaffoldTemplate.js +114 -0
  23. package/dist/actions/init/scaffoldTemplate.js.map +1 -0
  24. package/dist/actions/init/templates/appQuickstart.js +2 -1
  25. package/dist/actions/init/templates/appQuickstart.js.map +1 -1
  26. package/dist/actions/init/templates/appSanityUi.js +2 -1
  27. package/dist/actions/init/templates/appSanityUi.js.map +1 -1
  28. package/dist/actions/init/templates/nextjs/index.js +1 -2
  29. package/dist/actions/init/templates/nextjs/index.js.map +1 -1
  30. package/dist/actions/init/templates/shopify.js +6 -6
  31. package/dist/actions/init/templates/shopify.js.map +1 -1
  32. package/dist/actions/init/templates/shopifyOnline.js +2 -2
  33. package/dist/actions/init/templates/shopifyOnline.js.map +1 -1
  34. package/dist/actions/manifest/types.js +1 -1
  35. package/dist/actions/manifest/types.js.map +1 -1
  36. package/dist/actions/mcp/detectAvailableEditors.js +16 -3
  37. package/dist/actions/mcp/detectAvailableEditors.js.map +1 -1
  38. package/dist/actions/mcp/editorConfigs.js +192 -132
  39. package/dist/actions/mcp/editorConfigs.js.map +1 -1
  40. package/dist/actions/mcp/setupMCP.js +4 -1
  41. package/dist/actions/mcp/setupMCP.js.map +1 -1
  42. package/dist/actions/mcp/writeMCPConfig.js +2 -2
  43. package/dist/actions/mcp/writeMCPConfig.js.map +1 -1
  44. package/dist/actions/schema/extractSchema.js +5 -7
  45. package/dist/actions/schema/extractSchema.js.map +1 -1
  46. package/dist/actions/schema/types.js +3 -3
  47. package/dist/actions/schema/types.js.map +1 -1
  48. package/dist/actions/users/validateEmail.js +2 -2
  49. package/dist/actions/users/validateEmail.js.map +1 -1
  50. package/dist/commands/backups/disable.js +1 -1
  51. package/dist/commands/backups/disable.js.map +1 -1
  52. package/dist/commands/backups/download.js +1 -1
  53. package/dist/commands/backups/download.js.map +1 -1
  54. package/dist/commands/backups/enable.js +1 -1
  55. package/dist/commands/backups/enable.js.map +1 -1
  56. package/dist/commands/backups/list.js +1 -1
  57. package/dist/commands/backups/list.js.map +1 -1
  58. package/dist/commands/build.js +1 -1
  59. package/dist/commands/build.js.map +1 -1
  60. package/dist/commands/cors/add.js +1 -1
  61. package/dist/commands/cors/add.js.map +1 -1
  62. package/dist/commands/cors/delete.js +1 -1
  63. package/dist/commands/cors/delete.js.map +1 -1
  64. package/dist/commands/cors/list.js +2 -2
  65. package/dist/commands/cors/list.js.map +1 -1
  66. package/dist/commands/datasets/alias/create.js +1 -1
  67. package/dist/commands/datasets/alias/create.js.map +1 -1
  68. package/dist/commands/datasets/alias/delete.js +1 -1
  69. package/dist/commands/datasets/alias/delete.js.map +1 -1
  70. package/dist/commands/datasets/alias/link.js +1 -1
  71. package/dist/commands/datasets/alias/link.js.map +1 -1
  72. package/dist/commands/datasets/alias/unlink.js +1 -1
  73. package/dist/commands/datasets/alias/unlink.js.map +1 -1
  74. package/dist/commands/datasets/copy.js +15 -1
  75. package/dist/commands/datasets/copy.js.map +1 -1
  76. package/dist/commands/datasets/create.js +1 -1
  77. package/dist/commands/datasets/create.js.map +1 -1
  78. package/dist/commands/datasets/delete.js +1 -1
  79. package/dist/commands/datasets/delete.js.map +1 -1
  80. package/dist/commands/datasets/embeddings/enable.js +11 -0
  81. package/dist/commands/datasets/embeddings/enable.js.map +1 -1
  82. package/dist/commands/datasets/export.js +2 -2
  83. package/dist/commands/datasets/export.js.map +1 -1
  84. package/dist/commands/datasets/list.js +2 -2
  85. package/dist/commands/datasets/list.js.map +1 -1
  86. package/dist/commands/debug.js +1 -1
  87. package/dist/commands/debug.js.map +1 -1
  88. package/dist/commands/deploy.js +3 -3
  89. package/dist/commands/deploy.js.map +1 -1
  90. package/dist/commands/dev.js +5 -5
  91. package/dist/commands/dev.js.map +1 -1
  92. package/dist/commands/docs/browse.js +1 -1
  93. package/dist/commands/docs/browse.js.map +1 -1
  94. package/dist/commands/documents/delete.js +1 -1
  95. package/dist/commands/documents/delete.js.map +1 -1
  96. package/dist/commands/exec.js +2 -2
  97. package/dist/commands/exec.js.map +1 -1
  98. package/dist/commands/graphql/deploy.js +2 -2
  99. package/dist/commands/graphql/deploy.js.map +1 -1
  100. package/dist/commands/graphql/list.js +2 -2
  101. package/dist/commands/graphql/list.js.map +1 -1
  102. package/dist/commands/hooks/create.js +2 -2
  103. package/dist/commands/hooks/create.js.map +1 -1
  104. package/dist/commands/hooks/delete.js +5 -5
  105. package/dist/commands/hooks/delete.js.map +1 -1
  106. package/dist/commands/hooks/list.js +3 -3
  107. package/dist/commands/hooks/list.js.map +1 -1
  108. package/dist/commands/hooks/logs.js +5 -5
  109. package/dist/commands/hooks/logs.js.map +1 -1
  110. package/dist/commands/init.js +175 -490
  111. package/dist/commands/init.js.map +1 -1
  112. package/dist/commands/install.js +1 -1
  113. package/dist/commands/install.js.map +1 -1
  114. package/dist/commands/learn.js +1 -1
  115. package/dist/commands/learn.js.map +1 -1
  116. package/dist/commands/login.js +1 -1
  117. package/dist/commands/login.js.map +1 -1
  118. package/dist/commands/logout.js +1 -1
  119. package/dist/commands/logout.js.map +1 -1
  120. package/dist/commands/manage.js +1 -1
  121. package/dist/commands/manage.js.map +1 -1
  122. package/dist/commands/manifest/extract.js +2 -2
  123. package/dist/commands/manifest/extract.js.map +1 -1
  124. package/dist/commands/mcp/configure.js +1 -1
  125. package/dist/commands/mcp/configure.js.map +1 -1
  126. package/dist/commands/media/delete-aspect.js +1 -1
  127. package/dist/commands/media/delete-aspect.js.map +1 -1
  128. package/dist/commands/media/export.js +1 -1
  129. package/dist/commands/media/export.js.map +1 -1
  130. package/dist/commands/preview.js +3 -3
  131. package/dist/commands/preview.js.map +1 -1
  132. package/dist/commands/projects/list.js +4 -2
  133. package/dist/commands/projects/list.js.map +1 -1
  134. package/dist/commands/schemas/deploy.js +3 -4
  135. package/dist/commands/schemas/deploy.js.map +1 -1
  136. package/dist/commands/schemas/extract.js +3 -3
  137. package/dist/commands/schemas/extract.js.map +1 -1
  138. package/dist/commands/schemas/list.js +4 -5
  139. package/dist/commands/schemas/list.js.map +1 -1
  140. package/dist/commands/telemetry/disable.js +2 -2
  141. package/dist/commands/telemetry/disable.js.map +1 -1
  142. package/dist/commands/telemetry/enable.js +2 -2
  143. package/dist/commands/telemetry/enable.js.map +1 -1
  144. package/dist/commands/telemetry/status.js +2 -2
  145. package/dist/commands/telemetry/status.js.map +1 -1
  146. package/dist/commands/tokens/add.js +1 -1
  147. package/dist/commands/tokens/add.js.map +1 -1
  148. package/dist/commands/tokens/delete.js +1 -1
  149. package/dist/commands/tokens/delete.js.map +1 -1
  150. package/dist/commands/tokens/list.js +2 -2
  151. package/dist/commands/tokens/list.js.map +1 -1
  152. package/dist/commands/users/list.js +1 -1
  153. package/dist/commands/users/list.js.map +1 -1
  154. package/dist/commands/versions.js +1 -1
  155. package/dist/commands/versions.js.map +1 -1
  156. package/dist/hooks/prerun/injectEnvVariables.js +3 -5
  157. package/dist/hooks/prerun/injectEnvVariables.js.map +1 -1
  158. package/dist/server/vite/plugin-sanity-build-entries.js +3 -2
  159. package/dist/server/vite/plugin-sanity-build-entries.js.map +1 -1
  160. package/dist/services/datasets.js +2 -1
  161. package/dist/services/datasets.js.map +1 -1
  162. package/dist/telemetry/init.telemetry.js.map +1 -1
  163. package/dist/util/packageManager/installationInfo/detectPackages.js +13 -7
  164. package/dist/util/packageManager/installationInfo/detectPackages.js.map +1 -1
  165. package/dist/util/telemetry/createTelemetryStore.js +27 -12
  166. package/dist/util/telemetry/createTelemetryStore.js.map +1 -1
  167. package/dist/util/update/fetchUpdateInfo.js +40 -0
  168. package/dist/util/update/fetchUpdateInfo.js.map +1 -0
  169. package/dist/util/update/fetchUpdateInfo.worker.js +19 -0
  170. package/dist/util/update/fetchUpdateInfo.worker.js.map +1 -0
  171. package/dist/util/update/getRunnerUpdateCommand.js +33 -0
  172. package/dist/util/update/getRunnerUpdateCommand.js.map +1 -0
  173. package/dist/util/update/getUpdateCommand.js +6 -7
  174. package/dist/util/update/getUpdateCommand.js.map +1 -1
  175. package/dist/util/update/packageRunner.js +10 -0
  176. package/dist/util/update/packageRunner.js.map +1 -0
  177. package/dist/util/update/resolveRunnerPackage.js +45 -0
  178. package/dist/util/update/resolveRunnerPackage.js.map +1 -0
  179. package/dist/util/update/resolveUpdateTarget.js +31 -0
  180. package/dist/util/update/resolveUpdateTarget.js.map +1 -0
  181. package/dist/util/update/showNotificationUpdate.js +8 -6
  182. package/dist/util/update/showNotificationUpdate.js.map +1 -1
  183. package/dist/util/update/updateChecker.js +73 -38
  184. package/dist/util/update/updateChecker.js.map +1 -1
  185. package/dist/util/validateProjection.js +121 -0
  186. package/dist/util/validateProjection.js.map +1 -0
  187. package/oclif.manifest.json +698 -681
  188. package/package.json +24 -23
  189. package/templates/app-quickstart/src/App.tsx +2 -2
  190. package/templates/app-sanity-ui/src/App.tsx +2 -2
  191. package/templates/shopify/schemaTypes/objects/hotspot/imageWithProductHotspotsType.ts +1 -1
  192. package/dist/util/update/fetchLatestVersion.js +0 -21
  193. package/dist/util/update/fetchLatestVersion.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanity/cli",
3
- "version": "6.3.1",
3
+ "version": "6.4.0",
4
4
  "description": "Sanity CLI tool for managing Sanity projects and organizations",
5
5
  "keywords": [
6
6
  "cli",
@@ -52,10 +52,10 @@
52
52
  "access": "public"
53
53
  },
54
54
  "dependencies": {
55
- "@oclif/core": "^4.10.2",
56
- "@oclif/plugin-help": "^6.2.40",
57
- "@oclif/plugin-not-found": "^3.2.77",
58
- "@sanity/client": "^7.20.0",
55
+ "@oclif/core": "^4.10.5",
56
+ "@oclif/plugin-help": "^6.2.44",
57
+ "@oclif/plugin-not-found": "^3.2.80",
58
+ "@sanity/client": "^7.21.0",
59
59
  "@sanity/codegen": "^6.0.2",
60
60
  "@sanity/descriptors": "^1.3.0",
61
61
  "@sanity/export": "^6.1.0",
@@ -63,11 +63,11 @@
63
63
  "@sanity/id-utils": "^1.0.0",
64
64
  "@sanity/import": "^6.0.1",
65
65
  "@sanity/migrate": "^6.1.1",
66
- "@sanity/runtime-cli": "^14.7.2",
67
- "@sanity/schema": "^5.18.0",
66
+ "@sanity/runtime-cli": "^14.12.0",
67
+ "@sanity/schema": "^5.20.0",
68
68
  "@sanity/telemetry": "^0.9.0",
69
69
  "@sanity/template-validator": "^3.1.0",
70
- "@sanity/types": "^5.18.0",
70
+ "@sanity/types": "^5.20.0",
71
71
  "@sanity/ui": "^3.1.14",
72
72
  "@sanity/worker-channels": "^2.0.0",
73
73
  "@vercel/frameworks": "3.21.1",
@@ -81,13 +81,14 @@
81
81
  "execa": "^9.6.0",
82
82
  "form-data": "^4.0.5",
83
83
  "get-latest-version": "^6.0.1",
84
+ "groq-js": "^1.29.0",
84
85
  "gunzip-maybe": "^1.4.2",
85
86
  "import-meta-resolve": "^4.2.0",
86
87
  "is-installed-globally": "^1.0.0",
87
88
  "isomorphic-dompurify": "^2.32.0",
88
89
  "json5": "^2.2.3",
89
90
  "jsonc-parser": "^3.3.1",
90
- "lodash-es": "^4.17.23",
91
+ "lodash-es": "^4.18.1",
91
92
  "minimist": "^1.2.8",
92
93
  "nanoid": "^5.1.6",
93
94
  "node-html-parser": "^7.0.1",
@@ -111,25 +112,25 @@
111
112
  "tar": "^7.5.13",
112
113
  "tar-fs": "^3.1.2",
113
114
  "tar-stream": "^3.1.8",
114
- "tinyglobby": "^0.2.15",
115
+ "tinyglobby": "^0.2.16",
115
116
  "tsx": "^4.21.0",
116
117
  "typeid-js": "^1.2.0",
117
- "vite": "^7.3.1",
118
+ "vite": "^7.3.2",
118
119
  "which": "^6.0.1",
119
120
  "yaml": "^2.8.3",
120
121
  "zod": "^4.3.6",
121
- "@sanity/cli-core": "^1.3.0"
122
+ "@sanity/cli-core": "^1.3.1"
122
123
  },
123
124
  "devDependencies": {
124
125
  "@eslint/compat": "^2.0.3",
125
- "@sanity/pkg-utils": "^10.4.13",
126
- "@swc/cli": "^0.8.0",
127
- "@swc/core": "^1.15.21",
126
+ "@sanity/pkg-utils": "^10.4.14",
127
+ "@swc/cli": "^0.8.1",
128
+ "@swc/core": "^1.15.26",
128
129
  "@types/debug": "^4.1.13",
129
130
  "@types/gunzip-maybe": "^1.4.3",
130
131
  "@types/lodash-es": "^4.17.12",
131
132
  "@types/minimist": "^1.2.5",
132
- "@types/node": "^20.19.37",
133
+ "@types/node": "^20.19.39",
133
134
  "@types/picomatch": "^4.0.2",
134
135
  "@types/react": "^19.2.14",
135
136
  "@types/react-dom": "^19.2.3",
@@ -138,19 +139,19 @@
138
139
  "@types/tar-fs": "^2.0.4",
139
140
  "@types/tar-stream": "^3.1.4",
140
141
  "@types/which": "^3.0.4",
141
- "@vitest/coverage-istanbul": "^4.1.2",
142
+ "@vitest/coverage-istanbul": "^4.1.4",
142
143
  "babel-plugin-react-compiler": "^1.0.0",
143
144
  "eslint": "^10.1.0",
144
- "nock": "^14.0.11",
145
- "oclif": "^4.22.96",
145
+ "nock": "^14.0.12",
146
+ "oclif": "^4.23.0",
146
147
  "publint": "^0.3.18",
147
148
  "rimraf": "^6.0.1",
148
- "sanity": "^5.18.0",
149
+ "sanity": "^5.20.0",
149
150
  "typescript": "^5.9.3",
150
151
  "vite-tsconfig-paths": "^6.1.1",
151
- "vitest": "^4.1.2",
152
+ "vitest": "^4.1.4",
152
153
  "@repo/package.config": "0.0.1",
153
- "@sanity/cli-test": "0.3.0",
154
+ "@sanity/cli-test": "0.3.1",
154
155
  "@repo/tsconfig": "3.70.0",
155
156
  "@sanity/eslint-config-cli": "1.1.0"
156
157
  },
@@ -167,7 +168,7 @@
167
168
  "manifest:generate": "oclif manifest",
168
169
  "manifest:remove": "rimraf oclif.manifest.json",
169
170
  "publint": "publint",
170
- "readme": "oclif readme --tsconfig-path tsconfig.lib.json",
171
+ "readme": "oclif readme --tsconfig-path tsconfig.lib.json --no-source-links",
171
172
  "test": "vitest run",
172
173
  "posttest": "pnpm run lint",
173
174
  "test:coverage": "vitest run --coverage",
@@ -7,8 +7,8 @@ function App() {
7
7
  // apps can access many different projects or other sources of data
8
8
  const sanityConfigs: SanityConfig[] = [
9
9
  {
10
- projectId: '',
11
- dataset: '',
10
+ projectId: '%projectId%',
11
+ dataset: '%dataset%',
12
12
  },
13
13
  ]
14
14
 
@@ -8,8 +8,8 @@ function App() {
8
8
  // apps can access many different projects or other sources of data
9
9
  const sanityConfigs: SanityConfig[] = [
10
10
  {
11
- projectId: '',
12
- dataset: '',
11
+ projectId: '%projectId%',
12
+ dataset: '%dataset%',
13
13
  },
14
14
  ]
15
15
 
@@ -38,7 +38,7 @@ export const imageWithProductHotspotsType = defineField({
38
38
  return {
39
39
  media: image,
40
40
  subtitle:
41
- showHotspots && hotspots.length > 0
41
+ showHotspots && hotspots && hotspots.length > 0
42
42
  ? `${pluralize('hotspot', hotspots.length, true)}`
43
43
  : undefined,
44
44
  title: fileName,
@@ -1,21 +0,0 @@
1
- import { subdebug } from '@sanity/cli-core';
2
- import { getLatestVersion } from 'get-latest-version';
3
- import { promiseRaceWithTimeout } from '../promiseRaceWithTimeout.js';
4
- const debug = subdebug('updateChecker');
5
- /**
6
- * Fetch the latest version from npm with a timeout
7
- */ export async function fetchLatestVersion(packageName, timeout) {
8
- try {
9
- const result = await promiseRaceWithTimeout(getLatestVersion(packageName), timeout);
10
- if (result === null) {
11
- debug(`Max time ${timeout} reached waiting for latest version info`);
12
- }
13
- debug('Latest remote version is %s', result);
14
- return result;
15
- } catch (err) {
16
- debug(`Failed to fetch latest version of ${packageName} from npm:\n${err instanceof Error ? err.stack : String(err)}`);
17
- throw err;
18
- }
19
- }
20
-
21
- //# sourceMappingURL=fetchLatestVersion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/util/update/fetchLatestVersion.ts"],"sourcesContent":["import {subdebug} from '@sanity/cli-core'\nimport {getLatestVersion} from 'get-latest-version'\n\nimport {promiseRaceWithTimeout} from '../promiseRaceWithTimeout.js'\n\nconst debug = subdebug('updateChecker')\n\n/**\n * Fetch the latest version from npm with a timeout\n */\nexport async function fetchLatestVersion(\n packageName: string,\n timeout: number,\n): Promise<string | null | undefined> {\n try {\n const result = await promiseRaceWithTimeout(getLatestVersion(packageName), timeout)\n\n if (result === null) {\n debug(`Max time ${timeout} reached waiting for latest version info`)\n }\n\n debug('Latest remote version is %s', result)\n\n return result\n } catch (err) {\n debug(\n `Failed to fetch latest version of ${packageName} from npm:\\n${err instanceof Error ? err.stack : String(err)}`,\n )\n throw err\n }\n}\n"],"names":["subdebug","getLatestVersion","promiseRaceWithTimeout","debug","fetchLatestVersion","packageName","timeout","result","err","Error","stack","String"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,mBAAkB;AACzC,SAAQC,gBAAgB,QAAO,qBAAoB;AAEnD,SAAQC,sBAAsB,QAAO,+BAA8B;AAEnE,MAAMC,QAAQH,SAAS;AAEvB;;CAEC,GACD,OAAO,eAAeI,mBACpBC,WAAmB,EACnBC,OAAe;IAEf,IAAI;QACF,MAAMC,SAAS,MAAML,uBAAuBD,iBAAiBI,cAAcC;QAE3E,IAAIC,WAAW,MAAM;YACnBJ,MAAM,CAAC,SAAS,EAAEG,QAAQ,wCAAwC,CAAC;QACrE;QAEAH,MAAM,+BAA+BI;QAErC,OAAOA;IACT,EAAE,OAAOC,KAAK;QACZL,MACE,CAAC,kCAAkC,EAAEE,YAAY,YAAY,EAAEG,eAAeC,QAAQD,IAAIE,KAAK,GAAGC,OAAOH,MAAM;QAEjH,MAAMA;IACR;AACF"}