@sanity/cli 6.0.0-alpha.8 → 6.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 (1124) hide show
  1. package/README.md +728 -258
  2. package/bin/run.js +2 -0
  3. package/dist/SanityHelp.js +51 -23
  4. package/dist/SanityHelp.js.map +1 -1
  5. package/dist/actions/auth/authServer.js +28 -22
  6. package/dist/actions/auth/authServer.js.map +1 -1
  7. package/dist/actions/auth/login/getProvider.js +49 -38
  8. package/dist/actions/auth/login/getProvider.js.map +1 -1
  9. package/dist/actions/auth/login/getSSOProvider.js +25 -19
  10. package/dist/actions/auth/login/getSSOProvider.js.map +1 -1
  11. package/dist/actions/auth/login/login.js +24 -37
  12. package/dist/actions/auth/login/login.js.map +1 -1
  13. package/dist/actions/auth/types.js.map +1 -1
  14. package/dist/actions/backup/downloadAsset.js +9 -9
  15. package/dist/actions/backup/downloadAsset.js.map +1 -1
  16. package/dist/actions/backup/downloadDocument.js +8 -8
  17. package/dist/actions/backup/downloadDocument.js.map +1 -1
  18. package/dist/actions/build/buildApp.js +65 -28
  19. package/dist/actions/build/buildApp.js.map +1 -1
  20. package/dist/actions/build/buildStaticFiles.js +3 -2
  21. package/dist/actions/build/buildStaticFiles.js.map +1 -1
  22. package/dist/actions/build/buildStudio.js +82 -54
  23. package/dist/actions/build/buildStudio.js.map +1 -1
  24. package/dist/actions/build/buildVendorDependencies.js +18 -52
  25. package/dist/actions/build/buildVendorDependencies.js.map +1 -1
  26. package/dist/actions/build/checkRequiredDependencies.js +13 -8
  27. package/dist/actions/build/checkRequiredDependencies.js.map +1 -1
  28. package/dist/actions/build/checkStudioDependencyVersions.js +19 -17
  29. package/dist/actions/build/checkStudioDependencyVersions.js.map +1 -1
  30. package/dist/actions/build/createExternalFromImportMap.js +1 -1
  31. package/dist/actions/build/createExternalFromImportMap.js.map +1 -1
  32. package/dist/actions/build/determineBasePath.js +5 -2
  33. package/dist/actions/build/determineBasePath.js.map +1 -1
  34. package/dist/actions/build/getStudioEnvironmentVariables.js +1 -1
  35. package/dist/actions/build/getStudioEnvironmentVariables.js.map +1 -1
  36. package/dist/actions/build/getViteConfig.js +48 -5
  37. package/dist/actions/build/getViteConfig.js.map +1 -1
  38. package/dist/actions/build/handlePrereleaseVersions.js +44 -0
  39. package/dist/actions/build/handlePrereleaseVersions.js.map +1 -0
  40. package/dist/actions/build/renderDocument.js +6 -10
  41. package/dist/actions/build/renderDocument.js.map +1 -1
  42. package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js +4 -4
  43. package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js.map +1 -1
  44. package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js +3 -3
  45. package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js.map +1 -1
  46. package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js +1 -0
  47. package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js.map +1 -1
  48. package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js +2 -2
  49. package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js.map +1 -1
  50. package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js +1 -1
  51. package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js.map +1 -1
  52. package/dist/actions/build/shouldAutoUpdate.js +5 -3
  53. package/dist/actions/build/shouldAutoUpdate.js.map +1 -1
  54. package/dist/actions/build/types.js.map +1 -1
  55. package/dist/actions/build/writeFavicons.js +3 -5
  56. package/dist/actions/build/writeFavicons.js.map +1 -1
  57. package/dist/actions/build/writeSanityRuntime.js +6 -5
  58. package/dist/actions/build/writeSanityRuntime.js.map +1 -1
  59. package/dist/actions/codemods/reactIconsV3.js +2 -2
  60. package/dist/actions/codemods/reactIconsV3.js.map +1 -1
  61. package/dist/actions/dataset/create.js +10 -6
  62. package/dist/actions/dataset/create.js.map +1 -1
  63. package/dist/actions/dataset/determineDatasetAclMode.js.map +1 -1
  64. package/dist/actions/dataset/resolveDataset.js +26 -0
  65. package/dist/actions/dataset/resolveDataset.js.map +1 -0
  66. package/dist/actions/debug/formatters.js +22 -0
  67. package/dist/actions/debug/formatters.js.map +1 -0
  68. package/dist/actions/deploy/createStudioUserApplication.js +17 -4
  69. package/dist/actions/deploy/createStudioUserApplication.js.map +1 -1
  70. package/dist/actions/deploy/deployApp.js +52 -22
  71. package/dist/actions/deploy/deployApp.js.map +1 -1
  72. package/dist/actions/deploy/deployStudio.js +95 -46
  73. package/dist/actions/deploy/deployStudio.js.map +1 -1
  74. package/dist/actions/deploy/deployStudioSchemasAndManifests.js +55 -0
  75. package/dist/actions/deploy/deployStudioSchemasAndManifests.js.map +1 -0
  76. package/dist/actions/deploy/deployStudioSchemasAndManifests.worker.js +120 -0
  77. package/dist/actions/deploy/deployStudioSchemasAndManifests.worker.js.map +1 -0
  78. package/dist/actions/deploy/findUserApplicationForStudio.js +35 -12
  79. package/dist/actions/deploy/findUserApplicationForStudio.js.map +1 -1
  80. package/dist/actions/deploy/types.js +10 -1
  81. package/dist/actions/deploy/types.js.map +1 -1
  82. package/dist/actions/deploy/urlUtils.js +21 -0
  83. package/dist/actions/deploy/urlUtils.js.map +1 -0
  84. package/dist/actions/dev/getDashboardAppUrl.js +48 -0
  85. package/dist/actions/dev/getDashboardAppUrl.js.map +1 -0
  86. package/dist/actions/dev/getDevServerConfig.js +7 -3
  87. package/dist/actions/dev/getDevServerConfig.js.map +1 -1
  88. package/dist/actions/dev/startAppDevServer.js +7 -4
  89. package/dist/actions/dev/startAppDevServer.js.map +1 -1
  90. package/dist/actions/dev/startStudioDevServer.js +23 -19
  91. package/dist/actions/dev/startStudioDevServer.js.map +1 -1
  92. package/dist/actions/doctor/checks/cliInstallation.js +56 -0
  93. package/dist/actions/doctor/checks/cliInstallation.js.map +1 -0
  94. package/dist/actions/doctor/checks/index.js +16 -0
  95. package/dist/actions/doctor/checks/index.js.map +1 -0
  96. package/dist/actions/doctor/runDoctorChecks.js +56 -0
  97. package/dist/actions/doctor/runDoctorChecks.js.map +1 -0
  98. package/dist/actions/doctor/types.js.map +1 -0
  99. package/dist/actions/documents/types.js.map +1 -1
  100. package/dist/actions/documents/validate.js +15 -17
  101. package/dist/actions/documents/validate.js.map +1 -1
  102. package/dist/{threads/validateDocuments.js → actions/documents/validateDocuments.worker.js} +37 -37
  103. package/dist/actions/documents/validateDocuments.worker.js.map +1 -0
  104. package/dist/actions/documents/validation/reporters/jsonReporter.js +1 -1
  105. package/dist/actions/documents/validation/reporters/jsonReporter.js.map +1 -1
  106. package/dist/actions/documents/validation/reporters/ndjsonReporter.js +1 -1
  107. package/dist/actions/documents/validation/reporters/ndjsonReporter.js.map +1 -1
  108. package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js +9 -8
  109. package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js.map +1 -1
  110. package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.js.map +1 -1
  111. package/dist/actions/documents/validation/reporters/prettyReporter/tree.js +108 -0
  112. package/dist/actions/documents/validation/reporters/prettyReporter/tree.js.map +1 -0
  113. package/dist/{threads/configClient.js → actions/exec/configClient.worker.js} +2 -2
  114. package/dist/actions/exec/configClient.worker.js.map +1 -0
  115. package/dist/actions/exec/execScript.js +29 -25
  116. package/dist/actions/exec/execScript.js.map +1 -1
  117. package/dist/{threads/registerBrowserEnv.js → actions/exec/registerBrowserEnv.worker.js} +1 -1
  118. package/dist/actions/exec/registerBrowserEnv.worker.js.map +1 -0
  119. package/dist/actions/graphql/SchemaError.js +15 -0
  120. package/dist/actions/graphql/SchemaError.js.map +1 -0
  121. package/dist/actions/graphql/__tests__/fixtures/many-self-refs.js +540 -0
  122. package/dist/actions/graphql/__tests__/fixtures/many-self-refs.js.map +1 -0
  123. package/dist/actions/graphql/__tests__/fixtures/test-studio.js +1143 -0
  124. package/dist/actions/graphql/__tests__/fixtures/test-studio.js.map +1 -0
  125. package/dist/actions/graphql/__tests__/fixtures/union-refs.js +591 -0
  126. package/dist/actions/graphql/__tests__/fixtures/union-refs.js.map +1 -0
  127. package/dist/actions/graphql/__tests__/helpers.js +23 -0
  128. package/dist/actions/graphql/__tests__/helpers.js.map +1 -0
  129. package/dist/actions/graphql/extractFromSanitySchema.js +659 -0
  130. package/dist/actions/graphql/extractFromSanitySchema.js.map +1 -0
  131. package/dist/actions/graphql/extractGraphQLAPIs.js +150 -0
  132. package/dist/actions/graphql/extractGraphQLAPIs.js.map +1 -0
  133. package/dist/actions/graphql/extractGraphQLAPIs.worker.js +12 -0
  134. package/dist/actions/graphql/extractGraphQLAPIs.worker.js.map +1 -0
  135. package/dist/actions/graphql/gen1/generateTypeFilters.js +226 -0
  136. package/dist/actions/graphql/gen1/generateTypeFilters.js.map +1 -0
  137. package/dist/actions/graphql/gen1/generateTypeQueries.js +86 -0
  138. package/dist/actions/graphql/gen1/generateTypeQueries.js.map +1 -0
  139. package/dist/actions/graphql/gen1/index.js +19 -0
  140. package/dist/actions/graphql/gen1/index.js.map +1 -0
  141. package/dist/actions/graphql/gen2/filters/booleanFilters.js +26 -0
  142. package/dist/actions/graphql/gen2/filters/booleanFilters.js.map +1 -0
  143. package/dist/actions/graphql/gen2/filters/dateFilters.js +46 -0
  144. package/dist/actions/graphql/gen2/filters/dateFilters.js.map +1 -0
  145. package/dist/actions/graphql/gen2/filters/dateTimeFilters.js +46 -0
  146. package/dist/actions/graphql/gen2/filters/dateTimeFilters.js.map +1 -0
  147. package/dist/actions/graphql/gen2/filters/documentFilters.js +21 -0
  148. package/dist/actions/graphql/gen2/filters/documentFilters.js.map +1 -0
  149. package/dist/actions/graphql/gen2/filters/floatFilters.js +46 -0
  150. package/dist/actions/graphql/gen2/filters/floatFilters.js.map +1 -0
  151. package/dist/actions/graphql/gen2/filters/idFilters.js +44 -0
  152. package/dist/actions/graphql/gen2/filters/idFilters.js.map +1 -0
  153. package/dist/actions/graphql/gen2/filters/integerFilters.js +46 -0
  154. package/dist/actions/graphql/gen2/filters/integerFilters.js.map +1 -0
  155. package/dist/actions/graphql/gen2/filters/stringFilters.js +49 -0
  156. package/dist/actions/graphql/gen2/filters/stringFilters.js.map +1 -0
  157. package/dist/actions/graphql/gen2/generateTypeFilters.js +85 -0
  158. package/dist/actions/graphql/gen2/generateTypeFilters.js.map +1 -0
  159. package/dist/actions/graphql/gen2/generateTypeQueries.js +107 -0
  160. package/dist/actions/graphql/gen2/generateTypeQueries.js.map +1 -0
  161. package/dist/actions/graphql/gen2/generateTypeSortings.js +70 -0
  162. package/dist/actions/graphql/gen2/generateTypeSortings.js.map +1 -0
  163. package/dist/actions/graphql/gen2/index.js +22 -0
  164. package/dist/actions/graphql/gen2/index.js.map +1 -0
  165. package/dist/actions/graphql/gen3/filters/documentFilters.js +21 -0
  166. package/dist/actions/graphql/gen3/filters/documentFilters.js.map +1 -0
  167. package/dist/actions/graphql/gen3/generateTypeFilters.js +101 -0
  168. package/dist/actions/graphql/gen3/generateTypeFilters.js.map +1 -0
  169. package/dist/actions/graphql/gen3/generateTypeQueries.js +103 -0
  170. package/dist/actions/graphql/gen3/generateTypeQueries.js.map +1 -0
  171. package/dist/actions/graphql/gen3/generateTypeSortings.js +70 -0
  172. package/dist/actions/graphql/gen3/generateTypeSortings.js.map +1 -0
  173. package/dist/actions/graphql/gen3/index.js +30 -0
  174. package/dist/actions/graphql/gen3/index.js.map +1 -0
  175. package/dist/actions/graphql/gen3/utils.js +12 -0
  176. package/dist/actions/graphql/gen3/utils.js.map +1 -0
  177. package/dist/actions/graphql/getGraphQLAPIs.js +15 -57
  178. package/dist/actions/graphql/getGraphQLAPIs.js.map +1 -1
  179. package/dist/actions/graphql/getGraphQLAPIs.worker.js +75 -106
  180. package/dist/actions/graphql/getGraphQLAPIs.worker.js.map +1 -1
  181. package/dist/actions/graphql/graphqlDebug.js +4 -0
  182. package/dist/actions/graphql/graphqlDebug.js.map +1 -0
  183. package/dist/actions/graphql/helpUrls.js +3 -0
  184. package/dist/actions/graphql/helpUrls.js.map +1 -0
  185. package/dist/actions/graphql/helpers.js +24 -0
  186. package/dist/actions/graphql/helpers.js.map +1 -0
  187. package/dist/actions/graphql/resolveApiGeneration.js +43 -0
  188. package/dist/actions/graphql/resolveApiGeneration.js.map +1 -0
  189. package/dist/actions/graphql/resolveGraphQLApisFromWorkspaces.js +187 -0
  190. package/dist/actions/graphql/resolveGraphQLApisFromWorkspaces.js.map +1 -0
  191. package/dist/actions/graphql/types.js.map +1 -1
  192. package/dist/actions/init/bootstrapLocalTemplate.js +13 -10
  193. package/dist/actions/init/bootstrapLocalTemplate.js.map +1 -1
  194. package/dist/actions/init/bootstrapRemoteTemplate.js +6 -5
  195. package/dist/actions/init/bootstrapRemoteTemplate.js.map +1 -1
  196. package/dist/actions/init/bootstrapTemplate.js.map +1 -1
  197. package/dist/actions/init/checkNextJsReactCompatibility.js +1 -1
  198. package/dist/actions/init/checkNextJsReactCompatibility.js.map +1 -1
  199. package/dist/actions/init/createAppCliConfig.js.map +1 -1
  200. package/dist/actions/init/createCliConfig.js.map +1 -1
  201. package/dist/actions/init/createPackageManifest.js +21 -9
  202. package/dist/actions/init/createPackageManifest.js.map +1 -1
  203. package/dist/actions/init/env/createOrAppendEnvVars.js +2 -2
  204. package/dist/actions/init/env/createOrAppendEnvVars.js.map +1 -1
  205. package/dist/actions/init/env/writeEnvVarsToFile.js +2 -2
  206. package/dist/actions/init/env/writeEnvVarsToFile.js.map +1 -1
  207. package/dist/actions/init/fetchPostInitPrompt.js +2 -2
  208. package/dist/actions/init/fetchPostInitPrompt.js.map +1 -1
  209. package/dist/actions/init/remoteTemplate.js +1 -2
  210. package/dist/actions/init/remoteTemplate.js.map +1 -1
  211. package/dist/actions/init/resolvePackageManager.js +2 -2
  212. package/dist/actions/init/resolvePackageManager.js.map +1 -1
  213. package/dist/actions/init/sdkAppDependencies.js +19 -0
  214. package/dist/actions/init/sdkAppDependencies.js.map +1 -0
  215. package/dist/actions/init/studioDependencies.js.map +1 -0
  216. package/dist/actions/init/templates/appQuickstart.js +1 -22
  217. package/dist/actions/init/templates/appQuickstart.js.map +1 -1
  218. package/dist/actions/init/templates/appSanityUi.js +3 -22
  219. package/dist/actions/init/templates/appSanityUi.js.map +1 -1
  220. package/dist/actions/init/types.js.map +1 -1
  221. package/dist/actions/manifest/SchemaIcon.js +6 -4
  222. package/dist/actions/manifest/SchemaIcon.js.map +1 -1
  223. package/dist/actions/manifest/blockTypeTransformer.js +67 -0
  224. package/dist/actions/manifest/blockTypeTransformer.js.map +1 -0
  225. package/dist/actions/manifest/debug.js +4 -0
  226. package/dist/actions/manifest/debug.js.map +1 -0
  227. package/dist/actions/manifest/extractAppManifest.js +39 -22
  228. package/dist/actions/manifest/extractAppManifest.js.map +1 -1
  229. package/dist/actions/manifest/extractManifest.js +27 -78
  230. package/dist/actions/manifest/extractManifest.js.map +1 -1
  231. package/dist/actions/manifest/extractManifest.worker.js +30 -0
  232. package/dist/actions/manifest/extractManifest.worker.js.map +1 -0
  233. package/dist/actions/manifest/extractWorkspaceManifest.js +31 -372
  234. package/dist/actions/manifest/extractWorkspaceManifest.js.map +1 -1
  235. package/dist/actions/manifest/iconResolver.js +30 -0
  236. package/dist/actions/manifest/iconResolver.js.map +1 -0
  237. package/dist/actions/manifest/referenceTransformer.js +51 -0
  238. package/dist/actions/manifest/referenceTransformer.js.map +1 -0
  239. package/dist/actions/manifest/schemaTypeHelpers.js +2 -2
  240. package/dist/actions/manifest/schemaTypeHelpers.js.map +1 -1
  241. package/dist/actions/manifest/schemaTypeTransformer.js +168 -0
  242. package/dist/actions/manifest/schemaTypeTransformer.js.map +1 -0
  243. package/dist/actions/manifest/transformerUtils.js +40 -0
  244. package/dist/actions/manifest/transformerUtils.js.map +1 -0
  245. package/dist/actions/manifest/types.js +5 -0
  246. package/dist/actions/manifest/types.js.map +1 -1
  247. package/dist/actions/manifest/validationTransformer.js +84 -0
  248. package/dist/actions/manifest/validationTransformer.js.map +1 -0
  249. package/dist/actions/manifest/writeManifestFile.js +30 -0
  250. package/dist/actions/manifest/writeManifestFile.js.map +1 -0
  251. package/dist/actions/manifest/writeWorkspaceFiles.js +30 -0
  252. package/dist/actions/manifest/writeWorkspaceFiles.js.map +1 -0
  253. package/dist/actions/mcp/detectAvailableEditors.js +75 -58
  254. package/dist/actions/mcp/detectAvailableEditors.js.map +1 -1
  255. package/dist/actions/mcp/editorConfigs.js +205 -0
  256. package/dist/actions/mcp/editorConfigs.js.map +1 -0
  257. package/dist/actions/mcp/promptForMCPSetup.js +24 -0
  258. package/dist/actions/mcp/promptForMCPSetup.js.map +1 -0
  259. package/dist/actions/mcp/setupMCP.js +88 -0
  260. package/dist/actions/mcp/setupMCP.js.map +1 -0
  261. package/dist/actions/mcp/types.js +3 -0
  262. package/dist/actions/mcp/types.js.map +1 -0
  263. package/dist/actions/mcp/writeMCPConfig.js +35 -28
  264. package/dist/actions/mcp/writeMCPConfig.js.map +1 -1
  265. package/dist/actions/media/buildNdjsonIndex.js +32 -0
  266. package/dist/actions/media/buildNdjsonIndex.js.map +1 -0
  267. package/dist/actions/media/importAspects.js +2 -11
  268. package/dist/actions/media/importAspects.js.map +1 -1
  269. package/dist/actions/media/importMedia.js +24 -20
  270. package/dist/actions/media/importMedia.js.map +1 -1
  271. package/dist/actions/organizations/findOrganizationByUserName.js +5 -0
  272. package/dist/actions/organizations/findOrganizationByUserName.js.map +1 -0
  273. package/dist/actions/organizations/getOrganization.js +68 -0
  274. package/dist/actions/organizations/getOrganization.js.map +1 -0
  275. package/dist/actions/organizations/getOrganizationChoices.js +27 -19
  276. package/dist/actions/organizations/getOrganizationChoices.js.map +1 -1
  277. package/dist/actions/organizations/hasProjectAttachGrant.js +1 -1
  278. package/dist/actions/organizations/hasProjectAttachGrant.js.map +1 -1
  279. package/dist/actions/organizations/types.js +3 -0
  280. package/dist/actions/organizations/types.js.map +1 -0
  281. package/dist/actions/organizations/validateOrganizationName.js +10 -0
  282. package/dist/actions/organizations/validateOrganizationName.js.map +1 -0
  283. package/dist/actions/preview/previewAction.js +2 -1
  284. package/dist/actions/preview/previewAction.js.map +1 -1
  285. package/dist/actions/projects/getManageUrl.js +6 -0
  286. package/dist/actions/projects/getManageUrl.js.map +1 -0
  287. package/dist/actions/projects/validateProjectName.js +11 -0
  288. package/dist/actions/projects/validateProjectName.js.map +1 -0
  289. package/dist/actions/schema/deleteSchemaAction.js +16 -32
  290. package/dist/actions/schema/deleteSchemaAction.js.map +1 -1
  291. package/dist/actions/schema/deploySchemas.js +22 -91
  292. package/dist/actions/schema/deploySchemas.js.map +1 -1
  293. package/dist/actions/schema/extractSanitySchema.worker.js +33 -0
  294. package/dist/actions/schema/extractSanitySchema.worker.js.map +1 -0
  295. package/dist/actions/schema/extractSanityWorkspace.worker.js +24 -0
  296. package/dist/actions/schema/extractSanityWorkspace.worker.js.map +1 -0
  297. package/dist/actions/schema/extractSchema.js +45 -0
  298. package/dist/actions/schema/extractSchema.js.map +1 -0
  299. package/dist/actions/schema/extractSchemaWatcher.js +128 -0
  300. package/dist/actions/schema/extractSchemaWatcher.js.map +1 -0
  301. package/dist/actions/schema/formatSchemaValidation.js +22 -6
  302. package/dist/actions/schema/formatSchemaValidation.js.map +1 -1
  303. package/dist/actions/schema/getExtractOptions.js +16 -0
  304. package/dist/actions/schema/getExtractOptions.js.map +1 -0
  305. package/dist/actions/schema/listSchemas.js +54 -57
  306. package/dist/actions/schema/listSchemas.js.map +1 -1
  307. package/dist/actions/schema/matchSchemaPattern.js +22 -0
  308. package/dist/actions/schema/matchSchemaPattern.js.map +1 -0
  309. package/dist/actions/schema/metafile.js.map +1 -1
  310. package/dist/actions/schema/runSchemaExtraction.js +39 -0
  311. package/dist/actions/schema/runSchemaExtraction.js.map +1 -0
  312. package/dist/actions/schema/types.js +17 -0
  313. package/dist/actions/schema/types.js.map +1 -0
  314. package/dist/actions/schema/uniqueWorkspaces.worker.js +24 -0
  315. package/dist/actions/schema/uniqueWorkspaces.worker.js.map +1 -0
  316. package/dist/actions/schema/updateWorkspaceSchema.js +63 -0
  317. package/dist/actions/schema/updateWorkspaceSchema.js.map +1 -0
  318. package/dist/actions/schema/uploadSchemaToLexicon.js +87 -0
  319. package/dist/actions/schema/uploadSchemaToLexicon.js.map +1 -0
  320. package/dist/actions/schema/utils/SchemaExtractionError.js +10 -0
  321. package/dist/actions/schema/utils/SchemaExtractionError.js.map +1 -0
  322. package/dist/actions/schema/utils/debug.js +1 -0
  323. package/dist/actions/schema/utils/debug.js.map +1 -1
  324. package/dist/actions/schema/utils/extractValidationFromSchemaError.js +12 -0
  325. package/dist/actions/schema/utils/extractValidationFromSchemaError.js.map +1 -0
  326. package/dist/actions/schema/utils/schemaStoreValidation.js +1 -15
  327. package/dist/actions/schema/utils/schemaStoreValidation.js.map +1 -1
  328. package/dist/actions/schema/utils/uniqByProjectIdDataset.js +1 -1
  329. package/dist/actions/schema/utils/uniqByProjectIdDataset.js.map +1 -1
  330. package/dist/actions/schema/validateAction.js +7 -17
  331. package/dist/actions/schema/validateAction.js.map +1 -1
  332. package/dist/{threads/validateSchema.js → actions/schema/validateSchema.worker.js} +28 -26
  333. package/dist/actions/schema/validateSchema.worker.js.map +1 -0
  334. package/dist/actions/schema/watchExtractSchema.js +72 -0
  335. package/dist/actions/schema/watchExtractSchema.js.map +1 -0
  336. package/dist/actions/telemetry/getLearnMoreMessage.js.map +1 -1
  337. package/dist/actions/telemetry/getStatusDisplay.js.map +1 -1
  338. package/dist/actions/telemetry/getStatusMessage.js.map +1 -1
  339. package/dist/actions/telemetry/isTrueish.js +10 -0
  340. package/dist/actions/telemetry/isTrueish.js.map +1 -0
  341. package/dist/actions/telemetry/resolveConsent.js +3 -3
  342. package/dist/actions/telemetry/resolveConsent.js.map +1 -1
  343. package/dist/actions/telemetry/setConsent.js +3 -2
  344. package/dist/actions/telemetry/setConsent.js.map +1 -1
  345. package/dist/actions/telemetry/telemetryDisclosure.js +3 -3
  346. package/dist/actions/telemetry/telemetryDisclosure.js.map +1 -1
  347. package/dist/actions/users/getMembersForProject.js.map +1 -1
  348. package/dist/actions/users/getPendingInvitations.js +1 -1
  349. package/dist/actions/users/getPendingInvitations.js.map +1 -1
  350. package/dist/actions/users/types.js.map +1 -1
  351. package/dist/actions/versions/filterSanityModules.js.map +1 -1
  352. package/dist/actions/versions/findSanityModulesVersions.js +2 -3
  353. package/dist/actions/versions/findSanityModulesVersions.js.map +1 -1
  354. package/dist/actions/versions/getFormatters.js +3 -3
  355. package/dist/actions/versions/getFormatters.js.map +1 -1
  356. package/dist/actions/versions/tryFindLatestVersion.js +1 -1
  357. package/dist/actions/versions/tryFindLatestVersion.js.map +1 -1
  358. package/dist/commands/backup/disable.js +26 -10
  359. package/dist/commands/backup/disable.js.map +1 -1
  360. package/dist/commands/backup/download.js +26 -17
  361. package/dist/commands/backup/download.js.map +1 -1
  362. package/dist/commands/backup/enable.js +25 -10
  363. package/dist/commands/backup/enable.js.map +1 -1
  364. package/dist/commands/backup/list.js +20 -8
  365. package/dist/commands/backup/list.js.map +1 -1
  366. package/dist/commands/build.js +2 -5
  367. package/dist/commands/build.js.map +1 -1
  368. package/dist/commands/cors/add.js +33 -16
  369. package/dist/commands/cors/add.js.map +1 -1
  370. package/dist/commands/cors/delete.js +22 -7
  371. package/dist/commands/cors/delete.js.map +1 -1
  372. package/dist/commands/cors/list.js +22 -7
  373. package/dist/commands/cors/list.js.map +1 -1
  374. package/dist/commands/dataset/alias/create.js +26 -7
  375. package/dist/commands/dataset/alias/create.js.map +1 -1
  376. package/dist/commands/dataset/alias/delete.js +20 -7
  377. package/dist/commands/dataset/alias/delete.js.map +1 -1
  378. package/dist/commands/dataset/alias/link.js +20 -7
  379. package/dist/commands/dataset/alias/link.js.map +1 -1
  380. package/dist/commands/dataset/alias/unlink.js +20 -7
  381. package/dist/commands/dataset/alias/unlink.js.map +1 -1
  382. package/dist/commands/dataset/copy.js +51 -35
  383. package/dist/commands/dataset/copy.js.map +1 -1
  384. package/dist/commands/dataset/create.js +46 -14
  385. package/dist/commands/dataset/create.js.map +1 -1
  386. package/dist/commands/dataset/delete.js +28 -9
  387. package/dist/commands/dataset/delete.js.map +1 -1
  388. package/dist/commands/dataset/embeddings/disable.js +77 -0
  389. package/dist/commands/dataset/embeddings/disable.js.map +1 -0
  390. package/dist/commands/dataset/embeddings/enable.js +141 -0
  391. package/dist/commands/dataset/embeddings/enable.js.map +1 -0
  392. package/dist/commands/dataset/embeddings/status.js +72 -0
  393. package/dist/commands/dataset/embeddings/status.js.map +1 -0
  394. package/dist/commands/dataset/export.js +26 -18
  395. package/dist/commands/dataset/export.js.map +1 -1
  396. package/dist/commands/dataset/import.js +306 -1
  397. package/dist/commands/dataset/import.js.map +1 -1
  398. package/dist/commands/dataset/list.js +22 -7
  399. package/dist/commands/dataset/list.js.map +1 -1
  400. package/dist/commands/dataset/visibility/get.js +18 -7
  401. package/dist/commands/dataset/visibility/get.js.map +1 -1
  402. package/dist/commands/dataset/visibility/set.js +22 -7
  403. package/dist/commands/dataset/visibility/set.js.map +1 -1
  404. package/dist/commands/debug.js +9 -7
  405. package/dist/commands/debug.js.map +1 -1
  406. package/dist/commands/deploy.js +22 -11
  407. package/dist/commands/deploy.js.map +1 -1
  408. package/dist/commands/dev.js +7 -6
  409. package/dist/commands/dev.js.map +1 -1
  410. package/dist/commands/docs/search.js +3 -2
  411. package/dist/commands/docs/search.js.map +1 -1
  412. package/dist/commands/doctor.js +125 -0
  413. package/dist/commands/doctor.js.map +1 -0
  414. package/dist/commands/documents/create.js +19 -12
  415. package/dist/commands/documents/create.js.map +1 -1
  416. package/dist/commands/documents/delete.js +19 -12
  417. package/dist/commands/documents/delete.js.map +1 -1
  418. package/dist/commands/documents/get.js +17 -12
  419. package/dist/commands/documents/get.js.map +1 -1
  420. package/dist/commands/documents/query.js +26 -18
  421. package/dist/commands/documents/query.js.map +1 -1
  422. package/dist/commands/documents/validate.js +74 -48
  423. package/dist/commands/documents/validate.js.map +1 -1
  424. package/dist/commands/graphql/deploy.js +457 -0
  425. package/dist/commands/graphql/deploy.js.map +1 -0
  426. package/dist/commands/graphql/list.js +21 -13
  427. package/dist/commands/graphql/list.js.map +1 -1
  428. package/dist/commands/graphql/undeploy.js +37 -19
  429. package/dist/commands/graphql/undeploy.js.map +1 -1
  430. package/dist/commands/hook/attempt.js +22 -7
  431. package/dist/commands/hook/attempt.js.map +1 -1
  432. package/dist/commands/hook/create.js +23 -8
  433. package/dist/commands/hook/create.js.map +1 -1
  434. package/dist/commands/hook/delete.js +22 -7
  435. package/dist/commands/hook/delete.js.map +1 -1
  436. package/dist/commands/hook/list.js +22 -7
  437. package/dist/commands/hook/list.js.map +1 -1
  438. package/dist/commands/hook/logs.js +25 -12
  439. package/dist/commands/hook/logs.js.map +1 -1
  440. package/dist/commands/init.js +164 -143
  441. package/dist/commands/init.js.map +1 -1
  442. package/dist/commands/login.js +19 -6
  443. package/dist/commands/login.js.map +1 -1
  444. package/dist/commands/logout.js +8 -6
  445. package/dist/commands/logout.js.map +1 -1
  446. package/dist/commands/manage.js +2 -2
  447. package/dist/commands/manage.js.map +1 -1
  448. package/dist/commands/manifest/extract.js +14 -10
  449. package/dist/commands/manifest/extract.js.map +1 -1
  450. package/dist/commands/mcp/configure.js +14 -75
  451. package/dist/commands/mcp/configure.js.map +1 -1
  452. package/dist/commands/media/create-aspect.js +11 -10
  453. package/dist/commands/media/create-aspect.js.map +1 -1
  454. package/dist/commands/media/delete-aspect.js +14 -11
  455. package/dist/commands/media/delete-aspect.js.map +1 -1
  456. package/dist/commands/media/deploy-aspect.js +31 -17
  457. package/dist/commands/media/deploy-aspect.js.map +1 -1
  458. package/dist/commands/media/export.js +10 -9
  459. package/dist/commands/media/export.js.map +1 -1
  460. package/dist/commands/media/import.js +14 -12
  461. package/dist/commands/media/import.js.map +1 -1
  462. package/dist/commands/preview.js +12 -28
  463. package/dist/commands/preview.js.map +1 -1
  464. package/dist/commands/projects/create.js +181 -0
  465. package/dist/commands/projects/create.js.map +1 -0
  466. package/dist/commands/projects/list.js +4 -3
  467. package/dist/commands/projects/list.js.map +1 -1
  468. package/dist/commands/schema/delete.js +33 -34
  469. package/dist/commands/schema/delete.js.map +1 -1
  470. package/dist/commands/schema/deploy.js +19 -30
  471. package/dist/commands/schema/deploy.js.map +1 -1
  472. package/dist/commands/schema/extract.js +34 -11
  473. package/dist/commands/schema/extract.js.map +1 -1
  474. package/dist/commands/schema/list.js +10 -31
  475. package/dist/commands/schema/list.js.map +1 -1
  476. package/dist/commands/schema/validate.js +10 -2
  477. package/dist/commands/schema/validate.js.map +1 -1
  478. package/dist/commands/tokens/add.js +24 -7
  479. package/dist/commands/tokens/add.js.map +1 -1
  480. package/dist/commands/tokens/delete.js +20 -7
  481. package/dist/commands/tokens/delete.js.map +1 -1
  482. package/dist/commands/tokens/list.js +20 -7
  483. package/dist/commands/tokens/list.js.map +1 -1
  484. package/dist/commands/undeploy.js +9 -8
  485. package/dist/commands/undeploy.js.map +1 -1
  486. package/dist/commands/users/invite.js +24 -7
  487. package/dist/commands/users/invite.js.map +1 -1
  488. package/dist/commands/users/list.js +77 -34
  489. package/dist/commands/users/list.js.map +1 -1
  490. package/dist/commands/versions.js +3 -3
  491. package/dist/commands/versions.js.map +1 -1
  492. package/dist/config/createCliConfig.js +2 -2
  493. package/dist/config/createCliConfig.js.map +1 -1
  494. package/dist/exports/_internal.d.ts +132 -0
  495. package/dist/exports/_internal.js +4 -0
  496. package/dist/exports/_internal.js.map +1 -0
  497. package/dist/exports/index.d.ts +113 -0
  498. package/dist/exports/index.js +6 -0
  499. package/dist/exports/index.js.map +1 -0
  500. package/dist/hooks/init/checkForUpdates.js +14 -0
  501. package/dist/hooks/init/checkForUpdates.js.map +1 -0
  502. package/dist/hooks/prerun/flushTelemetry.worker.js +1 -1
  503. package/dist/hooks/prerun/flushTelemetry.worker.js.map +1 -1
  504. package/dist/hooks/prerun/injectEnvVariables.js +39 -0
  505. package/dist/hooks/prerun/injectEnvVariables.js.map +1 -0
  506. package/dist/hooks/prerun/setupTelemetry.js +14 -7
  507. package/dist/hooks/prerun/setupTelemetry.js.map +1 -1
  508. package/dist/hooks/prerun/warnings.js +6 -0
  509. package/dist/hooks/prerun/warnings.js.map +1 -0
  510. package/dist/prompts/promptForDefaultConfig.js +12 -0
  511. package/dist/prompts/promptForDefaultConfig.js.map +1 -0
  512. package/dist/prompts/promptForOrganizationName.js +11 -0
  513. package/dist/prompts/promptForOrganizationName.js.map +1 -0
  514. package/dist/prompts/promptForProject.js +64 -0
  515. package/dist/prompts/promptForProject.js.map +1 -0
  516. package/dist/prompts/promptForProjectName.js +11 -0
  517. package/dist/prompts/promptForProjectName.js.map +1 -0
  518. package/dist/{actions/auth/login/promptProviders.js → prompts/promptForProviders.js} +3 -3
  519. package/dist/prompts/promptForProviders.js.map +1 -0
  520. package/dist/prompts/selectMediaLibrary.js +1 -1
  521. package/dist/prompts/selectMediaLibrary.js.map +1 -1
  522. package/dist/server/devServer.js +4 -2
  523. package/dist/server/devServer.js.map +1 -1
  524. package/dist/server/previewServer.js +17 -11
  525. package/dist/server/previewServer.js.map +1 -1
  526. package/dist/server/vite/plugin-schema-extraction.js +201 -0
  527. package/dist/server/vite/plugin-schema-extraction.js.map +1 -0
  528. package/dist/server/vite/plugin-typegen.js +217 -0
  529. package/dist/server/vite/plugin-typegen.js.map +1 -0
  530. package/dist/services/auth.js +42 -3
  531. package/dist/services/auth.js.map +1 -1
  532. package/dist/services/datasets.js +7 -5
  533. package/dist/services/datasets.js.map +1 -1
  534. package/dist/services/docs.js +2 -2
  535. package/dist/services/docs.js.map +1 -1
  536. package/dist/services/documents.js +56 -0
  537. package/dist/services/documents.js.map +1 -0
  538. package/dist/services/embeddings.js +25 -0
  539. package/dist/services/embeddings.js.map +1 -0
  540. package/dist/services/getUrlHeaders.js +25 -0
  541. package/dist/services/getUrlHeaders.js.map +1 -0
  542. package/dist/services/grants.js +13 -0
  543. package/dist/services/grants.js.map +1 -0
  544. package/dist/services/graphql.js +64 -0
  545. package/dist/services/graphql.js.map +1 -1
  546. package/dist/services/mcp.js.map +1 -1
  547. package/dist/services/organizations.js +1 -1
  548. package/dist/services/organizations.js.map +1 -1
  549. package/dist/services/projects.js +4 -2
  550. package/dist/services/projects.js.map +1 -1
  551. package/dist/services/schemas.js +1 -1
  552. package/dist/services/schemas.js.map +1 -1
  553. package/dist/services/telemetry.js +63 -2
  554. package/dist/services/telemetry.js.map +1 -1
  555. package/dist/services/userApplications.js +21 -6
  556. package/dist/services/userApplications.js.map +1 -1
  557. package/dist/telemetry/build.telemetry.js +13 -0
  558. package/dist/telemetry/build.telemetry.js.map +1 -0
  559. package/dist/telemetry/extractSchema.telemetry.js +18 -0
  560. package/dist/telemetry/extractSchema.telemetry.js.map +1 -0
  561. package/dist/telemetry/init.telemetry.js +8 -0
  562. package/dist/telemetry/init.telemetry.js.map +1 -0
  563. package/dist/telemetry/login.telemetry.js +8 -0
  564. package/dist/telemetry/login.telemetry.js.map +1 -0
  565. package/dist/telemetry/mcp.telemetry.js +8 -0
  566. package/dist/telemetry/mcp.telemetry.js.map +1 -0
  567. package/dist/types/grants.js +3 -0
  568. package/dist/types/grants.js.map +1 -0
  569. package/dist/types.js +6 -1
  570. package/dist/types.js.map +1 -1
  571. package/dist/util/appId.js +5 -5
  572. package/dist/util/appId.js.map +1 -1
  573. package/dist/util/checkProjectPermissions.js +21 -0
  574. package/dist/util/checkProjectPermissions.js.map +1 -0
  575. package/dist/util/cliClient.js +13 -10
  576. package/dist/util/cliClient.js.map +1 -1
  577. package/dist/util/compareDependencyVersions.js +74 -38
  578. package/dist/util/compareDependencyVersions.js.map +1 -1
  579. package/dist/util/createExpiringConfig.js +64 -0
  580. package/dist/util/createExpiringConfig.js.map +1 -0
  581. package/dist/util/detectFramework.js +135 -0
  582. package/dist/util/detectFramework.js.map +1 -0
  583. package/dist/util/errorMessages.js +0 -1
  584. package/dist/util/errorMessages.js.map +1 -1
  585. package/dist/util/extractDocumentsFromNdjsonOrTarball.js +1 -2
  586. package/dist/util/extractDocumentsFromNdjsonOrTarball.js.map +1 -1
  587. package/dist/util/formatSize.js +2 -2
  588. package/dist/util/formatSize.js.map +1 -1
  589. package/dist/util/getCliVersion.js +1 -1
  590. package/dist/util/getCliVersion.js.map +1 -1
  591. package/dist/util/getLocalPackageVersion.js +31 -23
  592. package/dist/util/getLocalPackageVersion.js.map +1 -1
  593. package/dist/util/getProjectDefaults.js.map +1 -1
  594. package/dist/util/getSanityEnv.js +3 -0
  595. package/dist/util/getSanityEnv.js.map +1 -0
  596. package/dist/util/getSharedServerConfig.js +1 -0
  597. package/dist/util/getSharedServerConfig.js.map +1 -1
  598. package/dist/util/getWorkspace.js +1 -1
  599. package/dist/util/getWorkspace.js.map +1 -1
  600. package/dist/util/isSchemaError.js +11 -0
  601. package/dist/util/isSchemaError.js.map +1 -0
  602. package/dist/util/isTar.js +8 -0
  603. package/dist/util/isTar.js.map +1 -0
  604. package/dist/util/loadEnv.js +1 -6
  605. package/dist/util/loadEnv.js.map +1 -1
  606. package/dist/util/packageManager/getPeerDependencies.js +44 -0
  607. package/dist/util/packageManager/getPeerDependencies.js.map +1 -0
  608. package/dist/util/packageManager/installationInfo/analyzeIssues.js +225 -0
  609. package/dist/util/packageManager/installationInfo/analyzeIssues.js.map +1 -0
  610. package/dist/util/packageManager/installationInfo/commands.js +73 -0
  611. package/dist/util/packageManager/installationInfo/commands.js.map +1 -0
  612. package/dist/util/packageManager/installationInfo/detectCliInstallation.js +66 -0
  613. package/dist/util/packageManager/installationInfo/detectCliInstallation.js.map +1 -0
  614. package/dist/util/packageManager/installationInfo/detectGlobals.js +295 -0
  615. package/dist/util/packageManager/installationInfo/detectGlobals.js.map +1 -0
  616. package/dist/util/packageManager/installationInfo/detectPackages.js +190 -0
  617. package/dist/util/packageManager/installationInfo/detectPackages.js.map +1 -0
  618. package/dist/util/packageManager/installationInfo/detectWorkspace.js +192 -0
  619. package/dist/util/packageManager/installationInfo/detectWorkspace.js.map +1 -0
  620. package/dist/util/packageManager/installationInfo/index.js +4 -0
  621. package/dist/util/packageManager/installationInfo/index.js.map +1 -0
  622. package/dist/util/packageManager/installationInfo/readJsonFile.js +14 -0
  623. package/dist/util/packageManager/installationInfo/readJsonFile.js.map +1 -0
  624. package/dist/util/packageManager/installationInfo/resolveVersionRange.js +42 -0
  625. package/dist/util/packageManager/installationInfo/resolveVersionRange.js.map +1 -0
  626. package/dist/util/packageManager/installationInfo/types.js +3 -0
  627. package/dist/util/packageManager/installationInfo/types.js.map +1 -0
  628. package/dist/util/packageManager/packageManagerChoice.js +1 -20
  629. package/dist/util/packageManager/packageManagerChoice.js.map +1 -1
  630. package/dist/util/packageManager/upgradePackages.js +4 -1
  631. package/dist/util/packageManager/upgradePackages.js.map +1 -1
  632. package/dist/util/promiseRaceWithTimeout.js +28 -0
  633. package/dist/util/promiseRaceWithTimeout.js.map +1 -0
  634. package/dist/util/readdirRecursive.js.map +1 -1
  635. package/dist/util/resolveLatestVersions.js +2 -2
  636. package/dist/util/resolveLatestVersions.js.map +1 -1
  637. package/dist/util/sharedFlags.js +54 -0
  638. package/dist/util/sharedFlags.js.map +1 -0
  639. package/dist/{telemetry/store → util/telemetry}/cleanupOldTelemetryFiles.js +1 -1
  640. package/dist/util/telemetry/cleanupOldTelemetryFiles.js.map +1 -0
  641. package/dist/{telemetry/store → util/telemetry}/createTelemetryStore.js +4 -4
  642. package/dist/util/telemetry/createTelemetryStore.js.map +1 -0
  643. package/dist/util/telemetry/createTraceId.js.map +1 -0
  644. package/dist/{telemetry/store → util/telemetry}/findTelemetryFiles.js +4 -3
  645. package/dist/util/telemetry/findTelemetryFiles.js.map +1 -0
  646. package/dist/{telemetry/store → util/telemetry}/flushTelemetryFiles.js +29 -18
  647. package/dist/util/telemetry/flushTelemetryFiles.js.map +1 -0
  648. package/dist/{telemetry/store → util/telemetry}/generateTelemetryFilePath.js +2 -2
  649. package/dist/util/telemetry/generateTelemetryFilePath.js.map +1 -0
  650. package/dist/{telemetry/store → util/telemetry}/logger.js +7 -2
  651. package/dist/util/telemetry/logger.js.map +1 -0
  652. package/dist/util/telemetry/readNDJSON.js +28 -0
  653. package/dist/util/telemetry/readNDJSON.js.map +1 -0
  654. package/dist/util/telemetry/telemetryStoreDebug.js +7 -0
  655. package/dist/util/telemetry/telemetryStoreDebug.js.map +1 -0
  656. package/dist/{telemetry/store → util/telemetry}/trace.js +2 -2
  657. package/dist/util/telemetry/trace.js.map +1 -0
  658. package/dist/util/toForwardSlashes.js +8 -0
  659. package/dist/util/toForwardSlashes.js.map +1 -0
  660. package/dist/util/update/fetchLatestVersion.js +21 -0
  661. package/dist/util/update/fetchLatestVersion.js.map +1 -0
  662. package/dist/util/update/getUpdateCommand.js +20 -0
  663. package/dist/util/update/getUpdateCommand.js.map +1 -0
  664. package/dist/util/update/isInstalledUsingYarn.js +17 -0
  665. package/dist/util/update/isInstalledUsingYarn.js.map +1 -0
  666. package/dist/util/update/showNotificationUpdate.js +31 -0
  667. package/dist/util/update/showNotificationUpdate.js.map +1 -0
  668. package/dist/util/update/updateChecker.js +60 -0
  669. package/dist/util/update/updateChecker.js.map +1 -0
  670. package/dist/util/update/updateCheckerDebug.js +4 -0
  671. package/dist/util/update/updateCheckerDebug.js.map +1 -0
  672. package/dist/util/warnAboutMissingAppId.js +6 -2
  673. package/dist/util/warnAboutMissingAppId.js.map +1 -1
  674. package/dist/util/warnOnNonProductionEnvironment.js +18 -0
  675. package/dist/util/warnOnNonProductionEnvironment.js.map +1 -0
  676. package/oclif.config.js +7 -1
  677. package/oclif.manifest.json +1129 -146
  678. package/package.json +83 -78
  679. package/static/favicons/apple-touch-icon.png +0 -0
  680. package/static/favicons/favicon-192.png +0 -0
  681. package/static/favicons/favicon-512.png +0 -0
  682. package/static/favicons/favicon-96.png +0 -0
  683. package/static/favicons/favicon.ico +0 -0
  684. package/static/favicons/favicon.svg +12 -0
  685. package/dist/SanityHelp.d.ts +0 -4
  686. package/dist/actions/auth/authServer.d.ts +0 -33
  687. package/dist/actions/auth/getProviderName.d.ts +0 -8
  688. package/dist/actions/auth/login/getProvider.d.ts +0 -15
  689. package/dist/actions/auth/login/getSSOProvider.d.ts +0 -13
  690. package/dist/actions/auth/login/login.d.ts +0 -20
  691. package/dist/actions/auth/login/promptProviders.d.ts +0 -10
  692. package/dist/actions/auth/login/promptProviders.js.map +0 -1
  693. package/dist/actions/auth/login/samlProviderToLoginProvider.d.ts +0 -9
  694. package/dist/actions/auth/types.d.ts +0 -26
  695. package/dist/actions/backup/archiveDir.d.ts +0 -10
  696. package/dist/actions/backup/assertDatasetExist.d.ts +0 -8
  697. package/dist/actions/backup/backupDownloadDebug.d.ts +0 -1
  698. package/dist/actions/backup/cleanupTmpDir.d.ts +0 -6
  699. package/dist/actions/backup/constants.d.ts +0 -1
  700. package/dist/actions/backup/downloadAsset.d.ts +0 -9
  701. package/dist/actions/backup/downloadDocument.d.ts +0 -7
  702. package/dist/actions/backup/fetchNextBackupPage.d.ts +0 -23
  703. package/dist/actions/backup/progressSpinner.d.ts +0 -14
  704. package/dist/actions/build/buildApp.d.ts +0 -7
  705. package/dist/actions/build/buildDebug.d.ts +0 -1
  706. package/dist/actions/build/buildStaticFiles.d.ts +0 -35
  707. package/dist/actions/build/buildStudio.d.ts +0 -7
  708. package/dist/actions/build/buildVendorDependencies.d.ts +0 -11
  709. package/dist/actions/build/checkRequiredDependencies.d.ts +0 -22
  710. package/dist/actions/build/checkStudioDependencyVersions.d.ts +0 -2
  711. package/dist/actions/build/createExternalFromImportMap.d.ts +0 -11
  712. package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.d.ts +0 -6
  713. package/dist/actions/build/decorateIndexWithBridgeScript.d.ts +0 -8
  714. package/dist/actions/build/determineBasePath.d.ts +0 -7
  715. package/dist/actions/build/generateWebManifest.d.ts +0 -15
  716. package/dist/actions/build/getAppEnvVars.d.ts +0 -6
  717. package/dist/actions/build/getAutoUpdatesImportMap.d.ts +0 -21
  718. package/dist/actions/build/getEntryModule.d.ts +0 -7
  719. package/dist/actions/build/getPossibleDocumentComponentLocations.d.ts +0 -4
  720. package/dist/actions/build/getStudioEnvVars.d.ts +0 -6
  721. package/dist/actions/build/getStudioEnvironmentVariables.d.ts +0 -52
  722. package/dist/actions/build/getViteConfig.d.ts +0 -66
  723. package/dist/actions/build/normalizeBasePath.d.ts +0 -6
  724. package/dist/actions/build/renderDocument.d.ts +0 -15
  725. package/dist/actions/build/renderDocument.worker.d.ts +0 -1
  726. package/dist/actions/build/renderDocumentWorker/addTimestampImportMapScriptToHtml.d.ts +0 -6
  727. package/dist/actions/build/renderDocumentWorker/components/BasicDocument.d.ts +0 -19
  728. package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.d.ts +0 -13
  729. package/dist/actions/build/renderDocumentWorker/components/Favicons.d.ts +0 -2
  730. package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.d.ts +0 -3
  731. package/dist/actions/build/renderDocumentWorker/components/NoJavascript.d.ts +0 -3
  732. package/dist/actions/build/renderDocumentWorker/getDocumentComponent.d.ts +0 -5
  733. package/dist/actions/build/renderDocumentWorker/getDocumentHtml.d.ts +0 -8
  734. package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.d.ts +0 -21
  735. package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.d.ts +0 -8
  736. package/dist/actions/build/renderDocumentWorker/types.d.ts +0 -8
  737. package/dist/actions/build/shouldAutoUpdate.d.ts +0 -16
  738. package/dist/actions/build/types.d.ts +0 -13
  739. package/dist/actions/build/writeFavicons.d.ts +0 -1
  740. package/dist/actions/build/writeSanityRuntime.d.ts +0 -19
  741. package/dist/actions/build/writeWebManifest.d.ts +0 -4
  742. package/dist/actions/codemods/deskRename.d.ts +0 -2
  743. package/dist/actions/codemods/index.d.ts +0 -5
  744. package/dist/actions/codemods/partsTypeDirective.d.ts +0 -2
  745. package/dist/actions/codemods/reactIconsV3.d.ts +0 -2
  746. package/dist/actions/codemods/types.d.ts +0 -8
  747. package/dist/actions/cors/filterAndValidateOrigin.d.ts +0 -7
  748. package/dist/actions/dataset/create.d.ts +0 -49
  749. package/dist/actions/dataset/determineDatasetAclMode.d.ts +0 -37
  750. package/dist/actions/dataset/processAliasName.d.ts +0 -9
  751. package/dist/actions/dataset/validateDatasetAliasName.d.ts +0 -1
  752. package/dist/actions/dataset/validateDatasetName.d.ts +0 -13
  753. package/dist/actions/debug/gatherDebugInfo.d.ts +0 -2
  754. package/dist/actions/debug/getGlobalConfigLocation.d.ts +0 -1
  755. package/dist/actions/debug/types.d.ts +0 -30
  756. package/dist/actions/deploy/checkDir.d.ts +0 -8
  757. package/dist/actions/deploy/createStudioUserApplication.d.ts +0 -2
  758. package/dist/actions/deploy/createUserApplicationForApp.d.ts +0 -2
  759. package/dist/actions/deploy/deployApp.d.ts +0 -7
  760. package/dist/actions/deploy/deployDebug.d.ts +0 -1
  761. package/dist/actions/deploy/deployStudio.d.ts +0 -2
  762. package/dist/actions/deploy/findUserApplicationForApp.d.ts +0 -15
  763. package/dist/actions/deploy/findUserApplicationForStudio.d.ts +0 -13
  764. package/dist/actions/deploy/types.d.ts +0 -11
  765. package/dist/actions/dev/devAction.d.ts +0 -4
  766. package/dist/actions/dev/devDebug.d.ts +0 -1
  767. package/dist/actions/dev/getCoreAppUrl.d.ts +0 -5
  768. package/dist/actions/dev/getCoreAppUrl.js +0 -10
  769. package/dist/actions/dev/getCoreAppUrl.js.map +0 -1
  770. package/dist/actions/dev/getDevServerConfig.d.ts +0 -9
  771. package/dist/actions/dev/startAppDevServer.d.ts +0 -4
  772. package/dist/actions/dev/startStudioDevServer.d.ts +0 -4
  773. package/dist/actions/dev/types.d.ts +0 -10
  774. package/dist/actions/docs/normalizeDocsPath.d.ts +0 -8
  775. package/dist/actions/documents/constants.d.ts +0 -1
  776. package/dist/actions/documents/editor.d.ts +0 -11
  777. package/dist/actions/documents/types.d.ts +0 -2
  778. package/dist/actions/documents/validate.d.ts +0 -26
  779. package/dist/actions/documents/validation/reporters/index.d.ts +0 -5
  780. package/dist/actions/documents/validation/reporters/jsonReporter.d.ts +0 -2
  781. package/dist/actions/documents/validation/reporters/ndjsonReporter.d.ts +0 -2
  782. package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.d.ts +0 -10
  783. package/dist/actions/documents/validation/reporters/prettyReporter/index.d.ts +0 -1
  784. package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.d.ts +0 -5
  785. package/dist/actions/documents/validation/reporters/prettyReporter/util.d.ts +0 -53
  786. package/dist/actions/exec/execScript.d.ts +0 -11
  787. package/dist/actions/graphql/getGraphQLAPIs.d.ts +0 -2
  788. package/dist/actions/graphql/getGraphQLAPIs.worker.d.ts +0 -1
  789. package/dist/actions/graphql/types.d.ts +0 -68
  790. package/dist/actions/hook/constants.d.ts +0 -1
  791. package/dist/actions/hook/formatFailure.d.ts +0 -4
  792. package/dist/actions/hook/types.d.ts +0 -78
  793. package/dist/actions/init/bootstrapLocalTemplate.d.ts +0 -13
  794. package/dist/actions/init/bootstrapRemoteTemplate.d.ts +0 -12
  795. package/dist/actions/init/bootstrapTemplate.d.ts +0 -18
  796. package/dist/actions/init/checkNextJsReactCompatibility.d.ts +0 -9
  797. package/dist/actions/init/constants.d.ts +0 -1
  798. package/dist/actions/init/countNestedFolders.d.ts +0 -1
  799. package/dist/actions/init/createAppCliConfig.d.ts +0 -5
  800. package/dist/actions/init/createCliConfig.d.ts +0 -6
  801. package/dist/actions/init/createPackageManifest.d.ts +0 -6
  802. package/dist/actions/init/createStudioConfig.d.ts +0 -13
  803. package/dist/actions/init/determineAppTemplate.d.ts +0 -9
  804. package/dist/actions/init/env/createOrAppendEnvVars.d.ts +0 -12
  805. package/dist/actions/init/env/parseAndUpdateEnvVars.d.ts +0 -9
  806. package/dist/actions/init/env/writeEnvVarsToFile.d.ts +0 -12
  807. package/dist/actions/init/fetchPostInitPrompt.d.ts +0 -6
  808. package/dist/actions/init/git.d.ts +0 -1
  809. package/dist/actions/init/processTemplate.d.ts +0 -7
  810. package/dist/actions/init/remoteTemplate.d.ts +0 -20
  811. package/dist/actions/init/resolvePackageManager.d.ts +0 -10
  812. package/dist/actions/init/setupMCP.d.ts +0 -21
  813. package/dist/actions/init/setupMCP.js +0 -258
  814. package/dist/actions/init/setupMCP.js.map +0 -1
  815. package/dist/actions/init/templates/appQuickstart.d.ts +0 -3
  816. package/dist/actions/init/templates/appSanityUi.d.ts +0 -3
  817. package/dist/actions/init/templates/blog.d.ts +0 -3
  818. package/dist/actions/init/templates/clean.d.ts +0 -3
  819. package/dist/actions/init/templates/getStarted.d.ts +0 -3
  820. package/dist/actions/init/templates/index.d.ts +0 -3
  821. package/dist/actions/init/templates/moviedb.d.ts +0 -3
  822. package/dist/actions/init/templates/nextjs/index.d.ts +0 -6
  823. package/dist/actions/init/templates/nextjs/schemaTypes/blog.d.ts +0 -3
  824. package/dist/actions/init/templates/quickstart.d.ts +0 -3
  825. package/dist/actions/init/templates/shopify.d.ts +0 -3
  826. package/dist/actions/init/templates/shopifyOnline.d.ts +0 -3
  827. package/dist/actions/init/types.d.ts +0 -15
  828. package/dist/actions/init/updateInitialTemplateMetadata.d.ts +0 -1
  829. package/dist/actions/manifest/SchemaIcon.d.ts +0 -9
  830. package/dist/actions/manifest/extractAppManifest.d.ts +0 -20
  831. package/dist/actions/manifest/extractManifest.d.ts +0 -14
  832. package/dist/actions/manifest/extractWorkspaceManifest.d.ts +0 -3
  833. package/dist/actions/manifest/purifyConfig.d.ts +0 -10
  834. package/dist/actions/manifest/schemaTypeHelpers.d.ts +0 -17
  835. package/dist/actions/manifest/types.d.ts +0 -119
  836. package/dist/actions/mcp/detectAvailableEditors.d.ts +0 -8
  837. package/dist/actions/mcp/getEditorsWithExistingConfig.d.ts +0 -8
  838. package/dist/actions/mcp/getEditorsWithExistingConfig.js +0 -29
  839. package/dist/actions/mcp/getEditorsWithExistingConfig.js.map +0 -1
  840. package/dist/actions/mcp/writeMCPConfig.d.ts +0 -9
  841. package/dist/actions/media/getMediaLibraryConfig.d.ts +0 -2
  842. package/dist/actions/media/importAspects.d.ts +0 -52
  843. package/dist/actions/media/importMedia.d.ts +0 -55
  844. package/dist/actions/media/importMediaDebug.d.ts +0 -1
  845. package/dist/actions/organizations/getOrganizationChoices.d.ts +0 -6
  846. package/dist/actions/organizations/getOrganizationsWithAttachGrantInfo.d.ts +0 -2
  847. package/dist/actions/organizations/hasProjectAttachGrant.d.ts +0 -1
  848. package/dist/actions/preview/getPreviewServerConfig.d.ts +0 -15
  849. package/dist/actions/preview/previewAction.d.ts +0 -10
  850. package/dist/actions/preview/types.d.ts +0 -2
  851. package/dist/actions/schema/deleteSchemaAction.d.ts +0 -23
  852. package/dist/actions/schema/deploySchemas.d.ts +0 -15
  853. package/dist/actions/schema/extract.d.ts +0 -7
  854. package/dist/actions/schema/extract.js +0 -38
  855. package/dist/actions/schema/extract.js.map +0 -1
  856. package/dist/actions/schema/formatSchemaValidation.d.ts +0 -3
  857. package/dist/actions/schema/listSchemas.d.ts +0 -12
  858. package/dist/actions/schema/metafile.d.ts +0 -21
  859. package/dist/actions/schema/schemaStoreTypes.d.ts +0 -18
  860. package/dist/actions/schema/schemaStoreTypes.js +0 -19
  861. package/dist/actions/schema/schemaStoreTypes.js.map +0 -1
  862. package/dist/actions/schema/utils/debug.d.ts +0 -2
  863. package/dist/actions/schema/utils/manifestExtractor.d.ts +0 -9
  864. package/dist/actions/schema/utils/manifestExtractor.js +0 -33
  865. package/dist/actions/schema/utils/manifestExtractor.js.map +0 -1
  866. package/dist/actions/schema/utils/manifestReader.d.ts +0 -17
  867. package/dist/actions/schema/utils/manifestReader.js +0 -71
  868. package/dist/actions/schema/utils/manifestReader.js.map +0 -1
  869. package/dist/actions/schema/utils/schemaStoreOutStrings.d.ts +0 -2
  870. package/dist/actions/schema/utils/schemaStoreValidation.d.ts +0 -29
  871. package/dist/actions/schema/utils/uniqByProjectIdDataset.d.ts +0 -14
  872. package/dist/actions/schema/utils/workspaceSchemaId.d.ts +0 -8
  873. package/dist/actions/schema/validateAction.d.ts +0 -11
  874. package/dist/actions/telemetry/fetchTelemetryConsent.d.ts +0 -11
  875. package/dist/actions/telemetry/fetchTelemetryConsent.js +0 -38
  876. package/dist/actions/telemetry/fetchTelemetryConsent.js.map +0 -1
  877. package/dist/actions/telemetry/getLearnMoreMessage.d.ts +0 -2
  878. package/dist/actions/telemetry/getStatusDisplay.d.ts +0 -2
  879. package/dist/actions/telemetry/getStatusMessage.d.ts +0 -2
  880. package/dist/actions/telemetry/isValidApiConsentStatus.d.ts +0 -20
  881. package/dist/actions/telemetry/isValidApiConsentStatus.js +0 -25
  882. package/dist/actions/telemetry/isValidApiConsentStatus.js.map +0 -1
  883. package/dist/actions/telemetry/resolveConsent.d.ts +0 -2
  884. package/dist/actions/telemetry/setConsent.d.ts +0 -13
  885. package/dist/actions/telemetry/telemetryDebug.d.ts +0 -1
  886. package/dist/actions/telemetry/telemetryDisclosure.d.ts +0 -1
  887. package/dist/actions/telemetry/telemetryLearnMoreMessage.d.ts +0 -2
  888. package/dist/actions/telemetry/types.d.ts +0 -14
  889. package/dist/actions/telemetry/types.js.map +0 -1
  890. package/dist/actions/tokens/constants.d.ts +0 -4
  891. package/dist/actions/tokens/types.d.ts +0 -32
  892. package/dist/actions/tokens/validateRole.d.ts +0 -9
  893. package/dist/actions/undeploy/getStudioOrAppUserApplication.d.ts +0 -9
  894. package/dist/actions/users/getMembersForProject.d.ts +0 -24
  895. package/dist/actions/users/getPendingInvitations.d.ts +0 -13
  896. package/dist/actions/users/types.d.ts +0 -39
  897. package/dist/actions/users/usersDebug.d.ts +0 -1
  898. package/dist/actions/users/validateEmail.d.ts +0 -1
  899. package/dist/actions/versions/buildPackageArray.d.ts +0 -18
  900. package/dist/actions/versions/filterSanityModules.d.ts +0 -8
  901. package/dist/actions/versions/findSanityModulesVersions.d.ts +0 -14
  902. package/dist/actions/versions/getFormatters.d.ts +0 -17
  903. package/dist/actions/versions/tryFindLatestVersion.d.ts +0 -8
  904. package/dist/actions/versions/types.d.ts +0 -14
  905. package/dist/actions/versions/versionsDebug.d.ts +0 -1
  906. package/dist/commands/backup/disable.d.ts +0 -13
  907. package/dist/commands/backup/download.d.ts +0 -21
  908. package/dist/commands/backup/enable.d.ts +0 -12
  909. package/dist/commands/backup/list.d.ts +0 -19
  910. package/dist/commands/build.d.ts +0 -18
  911. package/dist/commands/codemod.d.ts +0 -19
  912. package/dist/commands/cors/add.d.ts +0 -29
  913. package/dist/commands/cors/delete.d.ts +0 -13
  914. package/dist/commands/cors/list.d.ts +0 -9
  915. package/dist/commands/dataset/alias/create.d.ts +0 -13
  916. package/dist/commands/dataset/alias/delete.d.ts +0 -16
  917. package/dist/commands/dataset/alias/link.d.ts +0 -17
  918. package/dist/commands/dataset/alias/unlink.d.ts +0 -16
  919. package/dist/commands/dataset/copy.d.ts +0 -27
  920. package/dist/commands/dataset/create.d.ts +0 -15
  921. package/dist/commands/dataset/delete.d.ts +0 -15
  922. package/dist/commands/dataset/export.d.ts +0 -26
  923. package/dist/commands/dataset/import.d.ts +0 -1
  924. package/dist/commands/dataset/list.d.ts +0 -9
  925. package/dist/commands/dataset/visibility/get.d.ts +0 -12
  926. package/dist/commands/dataset/visibility/set.d.ts +0 -13
  927. package/dist/commands/debug.d.ts +0 -9
  928. package/dist/commands/deploy.d.ts +0 -23
  929. package/dist/commands/dev.d.ts +0 -14
  930. package/dist/commands/docs/browse.d.ts +0 -6
  931. package/dist/commands/docs/read.d.ts +0 -15
  932. package/dist/commands/docs/search.d.ts +0 -15
  933. package/dist/commands/documents/create.d.ts +0 -39
  934. package/dist/commands/documents/delete.d.ts +0 -17
  935. package/dist/commands/documents/get.d.ts +0 -16
  936. package/dist/commands/documents/query.d.ts +0 -19
  937. package/dist/commands/documents/validate.d.ts +0 -29
  938. package/dist/commands/exec.d.ts +0 -19
  939. package/dist/commands/graphql/list.d.ts +0 -9
  940. package/dist/commands/graphql/undeploy.d.ts +0 -16
  941. package/dist/commands/hook/attempt.d.ts +0 -13
  942. package/dist/commands/hook/create.d.ts +0 -9
  943. package/dist/commands/hook/delete.d.ts +0 -13
  944. package/dist/commands/hook/list.d.ts +0 -9
  945. package/dist/commands/hook/logs.d.ts +0 -19
  946. package/dist/commands/init.d.ts +0 -65
  947. package/dist/commands/install.d.ts +0 -10
  948. package/dist/commands/learn.d.ts +0 -6
  949. package/dist/commands/login.d.ts +0 -13
  950. package/dist/commands/logout.d.ts +0 -6
  951. package/dist/commands/manage.d.ts +0 -6
  952. package/dist/commands/manifest/extract.d.ts +0 -12
  953. package/dist/commands/mcp/configure.d.ts +0 -9
  954. package/dist/commands/media/create-aspect.d.ts +0 -9
  955. package/dist/commands/media/delete-aspect.d.ts +0 -16
  956. package/dist/commands/media/deploy-aspect.d.ts +0 -20
  957. package/dist/commands/media/export.d.ts +0 -21
  958. package/dist/commands/media/import.d.ts +0 -18
  959. package/dist/commands/openapi/get.d.ts +0 -17
  960. package/dist/commands/openapi/list.d.ts +0 -14
  961. package/dist/commands/preview.d.ts +0 -17
  962. package/dist/commands/projects/list.d.ts +0 -13
  963. package/dist/commands/schema/delete.d.ts +0 -16
  964. package/dist/commands/schema/deploy.d.ts +0 -16
  965. package/dist/commands/schema/extract.d.ts +0 -15
  966. package/dist/commands/schema/list.d.ts +0 -15
  967. package/dist/commands/schema/validate.d.ts +0 -15
  968. package/dist/commands/telemetry/disable.d.ts +0 -8
  969. package/dist/commands/telemetry/enable.d.ts +0 -8
  970. package/dist/commands/telemetry/status.d.ts +0 -8
  971. package/dist/commands/tokens/add.d.ts +0 -19
  972. package/dist/commands/tokens/delete.d.ts +0 -17
  973. package/dist/commands/tokens/list.d.ts +0 -12
  974. package/dist/commands/undeploy.d.ts +0 -8
  975. package/dist/commands/users/invite.d.ts +0 -17
  976. package/dist/commands/users/list.d.ts +0 -16
  977. package/dist/commands/versions.d.ts +0 -6
  978. package/dist/config/createCliConfig.d.ts +0 -73
  979. package/dist/config/defineCliConfig.d.ts +0 -3
  980. package/dist/hooks/prerun/flushTelemetry.worker.d.ts +0 -2
  981. package/dist/hooks/prerun/setupTelemetry.d.ts +0 -2
  982. package/dist/index.d.ts +0 -6
  983. package/dist/index.js +0 -7
  984. package/dist/index.js.map +0 -1
  985. package/dist/prompts/init/nextjs.d.ts +0 -5
  986. package/dist/prompts/init/promptForTypescript.d.ts +0 -1
  987. package/dist/prompts/promptForDataset.d.ts +0 -17
  988. package/dist/prompts/promptForDatasetAclMode.d.ts +0 -9
  989. package/dist/prompts/promptForDatasetAliasName.d.ts +0 -4
  990. package/dist/prompts/promptForDatasetName.d.ts +0 -4
  991. package/dist/prompts/promptForMediaLibrary.d.ts +0 -15
  992. package/dist/prompts/selectDataset.d.ts +0 -3
  993. package/dist/prompts/selectMediaLibrary.d.ts +0 -5
  994. package/dist/server/devServer.d.ts +0 -24
  995. package/dist/server/gracefulServerDeath.d.ts +0 -3
  996. package/dist/server/previewServer.d.ts +0 -19
  997. package/dist/server/serverDebug.d.ts +0 -1
  998. package/dist/server/vite/plugin-sanity-basepath-redirect.d.ts +0 -2
  999. package/dist/server/vite/plugin-sanity-build-entries.d.ts +0 -9
  1000. package/dist/server/vite/plugin-sanity-favicons.d.ts +0 -17
  1001. package/dist/server/vite/plugin-sanity-runtime-rewrite.d.ts +0 -2
  1002. package/dist/services/auth.d.ts +0 -2
  1003. package/dist/services/backup.d.ts +0 -37
  1004. package/dist/services/cors.d.ts +0 -23
  1005. package/dist/services/datasetAliases.d.ts +0 -31
  1006. package/dist/services/datasets.d.ts +0 -64
  1007. package/dist/services/docs.d.ts +0 -15
  1008. package/dist/services/getProjectFeatures.d.ts +0 -5
  1009. package/dist/services/graphql.d.ts +0 -23
  1010. package/dist/services/hooks.d.ts +0 -16
  1011. package/dist/services/mcp.d.ts +0 -39
  1012. package/dist/services/mediaLibraries.d.ts +0 -52
  1013. package/dist/services/organizations.d.ts +0 -42
  1014. package/dist/services/plans.d.ts +0 -2
  1015. package/dist/services/projects.d.ts +0 -36
  1016. package/dist/services/schemas.d.ts +0 -4
  1017. package/dist/services/telemetry.d.ts +0 -2
  1018. package/dist/services/tokens.d.ts +0 -43
  1019. package/dist/services/user.d.ts +0 -15
  1020. package/dist/services/userApplications.d.ts +0 -77
  1021. package/dist/studioDependencies.d.ts +0 -16
  1022. package/dist/studioDependencies.js.map +0 -1
  1023. package/dist/telemetry/cli.telemetry.d.ts +0 -20
  1024. package/dist/telemetry/store/cleanupOldTelemetryFiles.d.ts +0 -5
  1025. package/dist/telemetry/store/cleanupOldTelemetryFiles.js.map +0 -1
  1026. package/dist/telemetry/store/createTelemetryStore.d.ts +0 -39
  1027. package/dist/telemetry/store/createTelemetryStore.js.map +0 -1
  1028. package/dist/telemetry/store/createTraceId.d.ts +0 -10
  1029. package/dist/telemetry/store/createTraceId.js.map +0 -1
  1030. package/dist/telemetry/store/debug.d.ts +0 -5
  1031. package/dist/telemetry/store/debug.js +0 -7
  1032. package/dist/telemetry/store/debug.js.map +0 -1
  1033. package/dist/telemetry/store/findTelemetryFiles.d.ts +0 -13
  1034. package/dist/telemetry/store/findTelemetryFiles.js.map +0 -1
  1035. package/dist/telemetry/store/flushTelemetryFiles.d.ts +0 -20
  1036. package/dist/telemetry/store/flushTelemetryFiles.js.map +0 -1
  1037. package/dist/telemetry/store/generateTelemetryFilePath.d.ts +0 -17
  1038. package/dist/telemetry/store/generateTelemetryFilePath.js.map +0 -1
  1039. package/dist/telemetry/store/getTelemetryBaseInfo.d.ts +0 -27
  1040. package/dist/telemetry/store/getTelemetryBaseInfo.js +0 -34
  1041. package/dist/telemetry/store/getTelemetryBaseInfo.js.map +0 -1
  1042. package/dist/telemetry/store/logger.d.ts +0 -6
  1043. package/dist/telemetry/store/logger.js.map +0 -1
  1044. package/dist/telemetry/store/trace.d.ts +0 -6
  1045. package/dist/telemetry/store/trace.js.map +0 -1
  1046. package/dist/telemetry/utils/readNDJSON.d.ts +0 -10
  1047. package/dist/telemetry/utils/readNDJSON.js +0 -18
  1048. package/dist/telemetry/utils/readNDJSON.js.map +0 -1
  1049. package/dist/threads/configClient.d.ts +0 -1
  1050. package/dist/threads/configClient.js.map +0 -1
  1051. package/dist/threads/registerBrowserEnv.d.ts +0 -1
  1052. package/dist/threads/registerBrowserEnv.js.map +0 -1
  1053. package/dist/threads/validateDocuments.d.ts +0 -45
  1054. package/dist/threads/validateDocuments.js.map +0 -1
  1055. package/dist/threads/validateSchema.d.ts +0 -35
  1056. package/dist/threads/validateSchema.js.map +0 -1
  1057. package/dist/types.d.ts +0 -49
  1058. package/dist/typings/deepSortObject.d.js +0 -2
  1059. package/dist/typings/deepSortObject.d.js.map +0 -1
  1060. package/dist/util/absolutify.d.ts +0 -6
  1061. package/dist/util/appId.d.ts +0 -18
  1062. package/dist/util/canLaunchBrowser.d.ts +0 -1
  1063. package/dist/util/cliClient.d.ts +0 -13
  1064. package/dist/util/compareDependencyVersions.d.ts +0 -35
  1065. package/dist/util/copy.d.ts +0 -5
  1066. package/dist/util/copyDir.d.ts +0 -20
  1067. package/dist/util/detectRuntime.d.ts +0 -8
  1068. package/dist/util/determineIsApp.d.ts +0 -7
  1069. package/dist/util/dirIsEmptyOrNonExistent.d.ts +0 -1
  1070. package/dist/util/ensureTrailingSlash.d.ts +0 -9
  1071. package/dist/util/errorMessages.d.ts +0 -4
  1072. package/dist/util/extractDocumentsFromNdjsonOrTarball.d.ts +0 -6
  1073. package/dist/util/findNdjsonEntry.d.ts +0 -7
  1074. package/dist/util/findNdjsonEntry.js +0 -21
  1075. package/dist/util/findNdjsonEntry.js.map +0 -1
  1076. package/dist/util/formatSize.d.ts +0 -6
  1077. package/dist/util/frameworkPort.d.ts +0 -12
  1078. package/dist/util/fsUtils.d.ts +0 -2
  1079. package/dist/util/getCliVersion.d.ts +0 -7
  1080. package/dist/util/getErrorMessage.d.ts +0 -8
  1081. package/dist/util/getLocalPackageVersion.d.ts +0 -9
  1082. package/dist/util/getProjectDefaults.d.ts +0 -11
  1083. package/dist/util/getSharedServerConfig.d.ts +0 -30
  1084. package/dist/util/getWorkspace.d.ts +0 -3
  1085. package/dist/util/humanFileSize.d.ts +0 -1
  1086. package/dist/util/importStudioConfig.d.ts +0 -1
  1087. package/dist/util/importStudioConfig.js +0 -43
  1088. package/dist/util/importStudioConfig.js.map +0 -1
  1089. package/dist/util/isPathDirName.d.ts +0 -1
  1090. package/dist/util/isSanityDocumentish.d.ts +0 -19
  1091. package/dist/util/isStaging.d.ts +0 -7
  1092. package/dist/util/isStaging.js +0 -10
  1093. package/dist/util/isStaging.js.map +0 -1
  1094. package/dist/util/loadEnv.d.ts +0 -1
  1095. package/dist/util/moduleFormatUtils.d.ts +0 -3
  1096. package/dist/util/packageManager/installPackages.d.ts +0 -18
  1097. package/dist/util/packageManager/packageManagerChoice.d.ts +0 -31
  1098. package/dist/util/packageManager/upgradePackages.d.ts +0 -17
  1099. package/dist/util/parseArguments.d.ts +0 -35
  1100. package/dist/util/pluralize.d.ts +0 -8
  1101. package/dist/util/readModuleVersion.d.ts +0 -8
  1102. package/dist/util/readModuleVersion.js +0 -15
  1103. package/dist/util/readModuleVersion.js.map +0 -1
  1104. package/dist/util/readPackageJson.d.ts +0 -31
  1105. package/dist/util/readPackageJson.js +0 -42
  1106. package/dist/util/readPackageJson.js.map +0 -1
  1107. package/dist/util/readPackageManifest.d.ts +0 -21
  1108. package/dist/util/readPackageManifest.js +0 -46
  1109. package/dist/util/readPackageManifest.js.map +0 -1
  1110. package/dist/util/readdirRecursive.d.ts +0 -5
  1111. package/dist/util/resolveLatestVersions.d.ts +0 -7
  1112. package/dist/util/toInt.d.ts +0 -1
  1113. package/dist/util/trimHashFromVersion.d.ts +0 -5
  1114. package/dist/util/uniqBy.d.ts +0 -1
  1115. package/dist/util/uniqBy.js +0 -14
  1116. package/dist/util/uniqBy.js.map +0 -1
  1117. package/dist/util/validation/validateDocumentsUtils.d.ts +0 -12
  1118. package/dist/util/warnAboutMissingAppId.d.ts +0 -7
  1119. package/dist/util/workerChannels.d.ts +0 -59
  1120. package/dist/util/workerChannels.js +0 -172
  1121. package/dist/util/workerChannels.js.map +0 -1
  1122. /package/dist/actions/{telemetry → doctor}/types.js +0 -0
  1123. /package/dist/{studioDependencies.js → actions/init/studioDependencies.js} +0 -0
  1124. /package/dist/{telemetry/store → util/telemetry}/createTraceId.js +0 -0
@@ -1,10 +1,9 @@
1
- import { chalk } from '@sanity/cli-core/ux';
1
+ import { styleText } from 'node:util';
2
+ import { CLIError } from '@oclif/core/errors';
3
+ import { studioWorkerTask } from '@sanity/cli-core';
2
4
  import { deleteSchema } from '../../services/schemas.js';
3
5
  import { isDefined } from '../manifest/schemaTypeHelpers.js';
4
- import { ensureManifestExtractSatisfied } from './utils/manifestExtractor.js';
5
- import { createManifestReader } from './utils/manifestReader.js';
6
6
  import { getDatasetsOutString, getStringList } from './utils/schemaStoreOutStrings.js';
7
- import { filterLogReadProjectIdMismatch } from './utils/schemaStoreValidation.js';
8
7
  // Native implementation instead of lodash/uniq
9
8
  function uniq(array) {
10
9
  return [
@@ -21,31 +20,17 @@ class DeleteIdError extends Error {
21
20
  this.dataset = dataset;
22
21
  }
23
22
  }
24
- /**
25
- * Deletes all stored schemas matching --ids in workspace datasets.
26
- *
27
- * Workspaces are determined by on-disk manifest file – not directly from sanity.config.
28
- * All schema store actions require a manifest to exist, so we regenerate it by default.
29
- * Manifest generation can be optionally disabled with --no-manifest-extract.
30
- * In this case the command uses and existing file or throws when missing.
31
- */ export async function deleteSchemaAction(options) {
32
- const { dataset, extractManifest, ids, manifestDir, output, projectId, verbose, workDir } = options;
33
- if (!await ensureManifestExtractSatisfied({
34
- extractManifest,
35
- manifestDir,
36
- output,
37
- schemaRequired: true,
38
- workDir
39
- })) {
40
- return 'failure';
41
- }
42
- const manifest = await createManifestReader({
43
- manifestDir,
44
- output,
45
- workDir
46
- }).getManifest();
47
- const workspaces = manifest.workspaces.filter((workspace)=>!dataset || workspace.dataset === dataset).filter((workspace)=>filterLogReadProjectIdMismatch(workspace, projectId, output));
48
- const datasets = uniq(workspaces.map((w)=>w.dataset));
23
+ export async function deleteSchemaAction(options) {
24
+ const { configPath, dataset, ids, output, projectId, verbose, workDir } = options;
25
+ const projectDatasets = await studioWorkerTask(new URL('uniqueWorkspaces.worker.js', import.meta.url), {
26
+ name: 'uniqueWorkspaces',
27
+ studioRootPath: workDir,
28
+ workerData: {
29
+ configPath,
30
+ dataset
31
+ }
32
+ });
33
+ const datasets = projectDatasets.map((w)=>w.dataset);
49
34
  const results = await Promise.allSettled(datasets.flatMap((targetDataset)=>{
50
35
  return ids.map(async ({ schemaId })=>{
51
36
  try {
@@ -67,7 +52,7 @@ class DeleteIdError extends Error {
67
52
  const deleteFailureIds = uniq(results.filter((r)=>r.status === 'rejected').map((result)=>{
68
53
  const error = result.reason;
69
54
  if (error instanceof DeleteIdError) {
70
- output.warn(chalk.red([
55
+ output.warn(styleText('red', [
71
56
  `Failed to delete schema "${error.id}" in dataset "${error.dataset}":`,
72
57
  error.message
73
58
  ].join('\n')));
@@ -83,7 +68,7 @@ class DeleteIdError extends Error {
83
68
  if (success) {
84
69
  output.log(`Successfully deleted ${uniqueDeletedSchemaIds.length}/${ids.length} schemas`);
85
70
  } else {
86
- output.error([
71
+ throw new CLIError([
87
72
  `Deleted ${uniqueDeletedSchemaIds.length}/${ids.length} schemas.`,
88
73
  deletedIds.length > 0 ? `Successfully deleted ids:\n${deletedIds.map(({ dataset: targetDataset, schemaId })=>`- "${schemaId}" (in ${getDatasetsOutString([
89
74
  targetDataset
@@ -95,7 +80,6 @@ class DeleteIdError extends Error {
95
80
  ] : []
96
81
  ].filter((item)=>isDefined(item)).join('\n'));
97
82
  }
98
- return success ? 'success' : 'failure';
99
83
  }
100
84
 
101
85
  //# sourceMappingURL=deleteSchemaAction.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/actions/schema/deleteSchemaAction.ts"],"sourcesContent":["import {type Output} from '@sanity/cli-core'\nimport {chalk} from '@sanity/cli-core/ux'\n\nimport {deleteSchema} from '../../services/schemas.js'\nimport {isDefined} from '../manifest/schemaTypeHelpers.js'\nimport {type SchemaStoreActionResult} from './schemaStoreTypes.js'\nimport {ensureManifestExtractSatisfied} from './utils/manifestExtractor.js'\nimport {createManifestReader} from './utils/manifestReader.js'\nimport {getDatasetsOutString, getStringList} from './utils/schemaStoreOutStrings.js'\nimport {\n filterLogReadProjectIdMismatch,\n type WorkspaceSchemaId,\n} from './utils/schemaStoreValidation.js'\n\n// Native implementation instead of lodash/uniq\nfunction uniq<T>(array: T[]): T[] {\n return [...new Set(array)]\n}\n\ninterface DeleteSchemasOptions {\n extractManifest: boolean\n ids: WorkspaceSchemaId[]\n manifestDir: string\n output: Output\n projectId: string\n verbose: boolean\n workDir: string\n\n dataset?: string\n}\n\ninterface DeleteResult {\n dataset: string\n deleted: boolean\n schemaId: string\n}\n\nclass DeleteIdError extends Error {\n public dataset: string\n public id: string\n constructor(id: string, dataset: string, options?: ErrorOptions) {\n super((options?.cause as {message?: string})?.message, options)\n this.name = 'DeleteIdError'\n this.id = id\n this.dataset = dataset\n }\n}\n\n/**\n * Deletes all stored schemas matching --ids in workspace datasets.\n *\n * Workspaces are determined by on-disk manifest file – not directly from sanity.config.\n * All schema store actions require a manifest to exist, so we regenerate it by default.\n * Manifest generation can be optionally disabled with --no-manifest-extract.\n * In this case the command uses and existing file or throws when missing.\n */\nexport async function deleteSchemaAction(\n options: DeleteSchemasOptions,\n): Promise<SchemaStoreActionResult> {\n const {dataset, extractManifest, ids, manifestDir, output, projectId, verbose, workDir} = options\n\n if (\n !(await ensureManifestExtractSatisfied({\n extractManifest,\n manifestDir,\n output,\n schemaRequired: true,\n workDir,\n }))\n ) {\n return 'failure'\n }\n\n const manifest = await createManifestReader({\n manifestDir,\n output,\n workDir,\n }).getManifest()\n\n const workspaces = manifest.workspaces\n .filter((workspace) => !dataset || workspace.dataset === dataset)\n .filter((workspace) => filterLogReadProjectIdMismatch(workspace, projectId, output))\n\n const datasets = uniq(workspaces.map((w) => w.dataset))\n\n const results = await Promise.allSettled(\n datasets.flatMap((targetDataset: string) => {\n return ids.map(async ({schemaId}): Promise<DeleteResult> => {\n try {\n const deletedSchema = await deleteSchema(targetDataset, projectId, schemaId)\n return {dataset: targetDataset, deleted: deletedSchema.deleted, schemaId}\n } catch (err) {\n throw new DeleteIdError(schemaId, targetDataset, {cause: err})\n }\n })\n }),\n )\n\n const deletedIds = results\n .filter((r): r is PromiseFulfilledResult<DeleteResult> => r.status === 'fulfilled')\n .filter((r) => r.value.deleted)\n .map((r) => r.value)\n\n const notFound = uniq(\n results\n .filter((r): r is PromiseFulfilledResult<DeleteResult> => r.status === 'fulfilled')\n .filter((r) => !r.value.deleted)\n .filter((r) => !deletedIds.map(({schemaId}) => schemaId).includes(r.value.schemaId))\n .map((r) => r.value.schemaId),\n )\n\n const deleteFailureIds = uniq(\n results\n .filter((r) => r.status === 'rejected')\n .map((result) => {\n const error = result.reason\n if (error instanceof DeleteIdError) {\n output.warn(\n chalk.red(\n [\n `Failed to delete schema \"${error.id}\" in dataset \"${error.dataset}\":`,\n error.message,\n ].join('\\n'),\n ),\n )\n if (verbose) output.warn(error)\n return error.id\n }\n //hubris inc: given the try-catch wrapping the full promise \"this should never happen\"\n throw error\n }),\n )\n\n // Compare unique schema IDs deleted vs requested (not total deletions across datasets)\n const uniqueDeletedSchemaIds = uniq(deletedIds.map(({schemaId}) => schemaId))\n const success = uniqueDeletedSchemaIds.length === ids.length\n if (success) {\n output.log(`Successfully deleted ${uniqueDeletedSchemaIds.length}/${ids.length} schemas`)\n } else {\n output.error(\n [\n `Deleted ${uniqueDeletedSchemaIds.length}/${ids.length} schemas.`,\n deletedIds.length > 0\n ? `Successfully deleted ids:\\n${deletedIds\n .map(\n ({dataset: targetDataset, schemaId}) =>\n `- \"${schemaId}\" (in ${getDatasetsOutString([targetDataset])})`,\n )\n .join('\\n')}`\n : undefined,\n notFound.length > 0\n ? `Ids not found in ${getDatasetsOutString(datasets)}:\\n${getStringList(notFound)}`\n : undefined,\n ...(deleteFailureIds.length > 0\n ? [`Failed to delete ids:\\n${getStringList(deleteFailureIds)}`, 'Check logs for errors.']\n : []),\n ]\n .filter((item) => isDefined(item))\n .join('\\n'),\n )\n }\n\n return success ? 'success' : 'failure'\n}\n"],"names":["chalk","deleteSchema","isDefined","ensureManifestExtractSatisfied","createManifestReader","getDatasetsOutString","getStringList","filterLogReadProjectIdMismatch","uniq","array","Set","DeleteIdError","Error","dataset","id","options","cause","message","name","deleteSchemaAction","extractManifest","ids","manifestDir","output","projectId","verbose","workDir","schemaRequired","manifest","getManifest","workspaces","filter","workspace","datasets","map","w","results","Promise","allSettled","flatMap","targetDataset","schemaId","deletedSchema","deleted","err","deletedIds","r","status","value","notFound","includes","deleteFailureIds","result","error","reason","warn","red","join","uniqueDeletedSchemaIds","success","length","log","undefined","item"],"mappings":"AACA,SAAQA,KAAK,QAAO,sBAAqB;AAEzC,SAAQC,YAAY,QAAO,4BAA2B;AACtD,SAAQC,SAAS,QAAO,mCAAkC;AAE1D,SAAQC,8BAA8B,QAAO,+BAA8B;AAC3E,SAAQC,oBAAoB,QAAO,4BAA2B;AAC9D,SAAQC,oBAAoB,EAAEC,aAAa,QAAO,mCAAkC;AACpF,SACEC,8BAA8B,QAEzB,mCAAkC;AAEzC,+CAA+C;AAC/C,SAASC,KAAQC,KAAU;IACzB,OAAO;WAAI,IAAIC,IAAID;KAAO;AAC5B;AAoBA,MAAME,sBAAsBC;IACnBC,QAAe;IACfC,GAAU;IACjB,YAAYA,EAAU,EAAED,OAAe,EAAEE,OAAsB,CAAE;QAC/D,KAAK,CAAEA,SAASC,OAA8BC,SAASF;QACvD,IAAI,CAACG,IAAI,GAAG;QACZ,IAAI,CAACJ,EAAE,GAAGA;QACV,IAAI,CAACD,OAAO,GAAGA;IACjB;AACF;AAEA;;;;;;;CAOC,GACD,OAAO,eAAeM,mBACpBJ,OAA6B;IAE7B,MAAM,EAACF,OAAO,EAAEO,eAAe,EAAEC,GAAG,EAAEC,WAAW,EAAEC,MAAM,EAAEC,SAAS,EAAEC,OAAO,EAAEC,OAAO,EAAC,GAAGX;IAE1F,IACE,CAAE,MAAMZ,+BAA+B;QACrCiB;QACAE;QACAC;QACAI,gBAAgB;QAChBD;IACF,IACA;QACA,OAAO;IACT;IAEA,MAAME,WAAW,MAAMxB,qBAAqB;QAC1CkB;QACAC;QACAG;IACF,GAAGG,WAAW;IAEd,MAAMC,aAAaF,SAASE,UAAU,CACnCC,MAAM,CAAC,CAACC,YAAc,CAACnB,WAAWmB,UAAUnB,OAAO,KAAKA,SACxDkB,MAAM,CAAC,CAACC,YAAczB,+BAA+ByB,WAAWR,WAAWD;IAE9E,MAAMU,WAAWzB,KAAKsB,WAAWI,GAAG,CAAC,CAACC,IAAMA,EAAEtB,OAAO;IAErD,MAAMuB,UAAU,MAAMC,QAAQC,UAAU,CACtCL,SAASM,OAAO,CAAC,CAACC;QAChB,OAAOnB,IAAIa,GAAG,CAAC,OAAO,EAACO,QAAQ,EAAC;YAC9B,IAAI;gBACF,MAAMC,gBAAgB,MAAMzC,aAAauC,eAAehB,WAAWiB;gBACnE,OAAO;oBAAC5B,SAAS2B;oBAAeG,SAASD,cAAcC,OAAO;oBAAEF;gBAAQ;YAC1E,EAAE,OAAOG,KAAK;gBACZ,MAAM,IAAIjC,cAAc8B,UAAUD,eAAe;oBAACxB,OAAO4B;gBAAG;YAC9D;QACF;IACF;IAGF,MAAMC,aAAaT,QAChBL,MAAM,CAAC,CAACe,IAAiDA,EAAEC,MAAM,KAAK,aACtEhB,MAAM,CAAC,CAACe,IAAMA,EAAEE,KAAK,CAACL,OAAO,EAC7BT,GAAG,CAAC,CAACY,IAAMA,EAAEE,KAAK;IAErB,MAAMC,WAAWzC,KACf4B,QACGL,MAAM,CAAC,CAACe,IAAiDA,EAAEC,MAAM,KAAK,aACtEhB,MAAM,CAAC,CAACe,IAAM,CAACA,EAAEE,KAAK,CAACL,OAAO,EAC9BZ,MAAM,CAAC,CAACe,IAAM,CAACD,WAAWX,GAAG,CAAC,CAAC,EAACO,QAAQ,EAAC,GAAKA,UAAUS,QAAQ,CAACJ,EAAEE,KAAK,CAACP,QAAQ,GACjFP,GAAG,CAAC,CAACY,IAAMA,EAAEE,KAAK,CAACP,QAAQ;IAGhC,MAAMU,mBAAmB3C,KACvB4B,QACGL,MAAM,CAAC,CAACe,IAAMA,EAAEC,MAAM,KAAK,YAC3Bb,GAAG,CAAC,CAACkB;QACJ,MAAMC,QAAQD,OAAOE,MAAM;QAC3B,IAAID,iBAAiB1C,eAAe;YAClCY,OAAOgC,IAAI,CACTvD,MAAMwD,GAAG,CACP;gBACE,CAAC,yBAAyB,EAAEH,MAAMvC,EAAE,CAAC,cAAc,EAAEuC,MAAMxC,OAAO,CAAC,EAAE,CAAC;gBACtEwC,MAAMpC,OAAO;aACd,CAACwC,IAAI,CAAC;YAGX,IAAIhC,SAASF,OAAOgC,IAAI,CAACF;YACzB,OAAOA,MAAMvC,EAAE;QACjB;QACA,sFAAsF;QACtF,MAAMuC;IACR;IAGJ,uFAAuF;IACvF,MAAMK,yBAAyBlD,KAAKqC,WAAWX,GAAG,CAAC,CAAC,EAACO,QAAQ,EAAC,GAAKA;IACnE,MAAMkB,UAAUD,uBAAuBE,MAAM,KAAKvC,IAAIuC,MAAM;IAC5D,IAAID,SAAS;QACXpC,OAAOsC,GAAG,CAAC,CAAC,qBAAqB,EAAEH,uBAAuBE,MAAM,CAAC,CAAC,EAAEvC,IAAIuC,MAAM,CAAC,QAAQ,CAAC;IAC1F,OAAO;QACLrC,OAAO8B,KAAK,CACV;YACE,CAAC,QAAQ,EAAEK,uBAAuBE,MAAM,CAAC,CAAC,EAAEvC,IAAIuC,MAAM,CAAC,SAAS,CAAC;YACjEf,WAAWe,MAAM,GAAG,IAChB,CAAC,2BAA2B,EAAEf,WAC3BX,GAAG,CACF,CAAC,EAACrB,SAAS2B,aAAa,EAAEC,QAAQ,EAAC,GACjC,CAAC,GAAG,EAAEA,SAAS,MAAM,EAAEpC,qBAAqB;oBAACmC;iBAAc,EAAE,CAAC,CAAC,EAElEiB,IAAI,CAAC,OAAO,GACfK;YACJb,SAASW,MAAM,GAAG,IACd,CAAC,iBAAiB,EAAEvD,qBAAqB4B,UAAU,GAAG,EAAE3B,cAAc2C,WAAW,GACjFa;eACAX,iBAAiBS,MAAM,GAAG,IAC1B;gBAAC,CAAC,uBAAuB,EAAEtD,cAAc6C,mBAAmB;gBAAE;aAAyB,GACvF,EAAE;SACP,CACEpB,MAAM,CAAC,CAACgC,OAAS7D,UAAU6D,OAC3BN,IAAI,CAAC;IAEZ;IAEA,OAAOE,UAAU,YAAY;AAC/B"}
1
+ {"version":3,"sources":["../../../src/actions/schema/deleteSchemaAction.ts"],"sourcesContent":["import {styleText} from 'node:util'\n\nimport {CLIError} from '@oclif/core/errors'\nimport {type Output, studioWorkerTask} from '@sanity/cli-core'\nimport {type Workspace} from 'sanity'\n\nimport {deleteSchema} from '../../services/schemas.js'\nimport {isDefined} from '../manifest/schemaTypeHelpers.js'\nimport {type UniqWorkspaceWorkerData} from './types.js'\nimport {getDatasetsOutString, getStringList} from './utils/schemaStoreOutStrings.js'\nimport {type WorkspaceSchemaId} from './utils/schemaStoreValidation.js'\n\n// Native implementation instead of lodash/uniq\nfunction uniq<T>(array: T[]): T[] {\n return [...new Set(array)]\n}\n\ninterface DeleteSchemasOptions {\n configPath: string\n ids: WorkspaceSchemaId[]\n output: Output\n projectId: string\n verbose: boolean\n workDir: string\n\n dataset?: string\n}\n\ninterface DeleteResult {\n dataset: string\n deleted: boolean\n schemaId: string\n}\n\nclass DeleteIdError extends Error {\n public dataset: string\n public id: string\n constructor(id: string, dataset: string, options?: ErrorOptions) {\n super((options?.cause as {message?: string})?.message, options)\n this.name = 'DeleteIdError'\n this.id = id\n this.dataset = dataset\n }\n}\n\nexport async function deleteSchemaAction(options: DeleteSchemasOptions): Promise<void> {\n const {configPath, dataset, ids, output, projectId, verbose, workDir} = options\n\n const projectDatasets = await studioWorkerTask<(Workspace & {key: string})[]>(\n new URL('uniqueWorkspaces.worker.js', import.meta.url),\n {\n name: 'uniqueWorkspaces',\n studioRootPath: workDir,\n workerData: {configPath, dataset} satisfies UniqWorkspaceWorkerData,\n },\n )\n\n const datasets = projectDatasets.map((w) => w.dataset)\n\n const results = await Promise.allSettled(\n datasets.flatMap((targetDataset: string) => {\n return ids.map(async ({schemaId}): Promise<DeleteResult> => {\n try {\n const deletedSchema = await deleteSchema(targetDataset, projectId, schemaId)\n return {dataset: targetDataset, deleted: deletedSchema.deleted, schemaId}\n } catch (err) {\n throw new DeleteIdError(schemaId, targetDataset, {cause: err})\n }\n })\n }),\n )\n\n const deletedIds = results\n .filter((r): r is PromiseFulfilledResult<DeleteResult> => r.status === 'fulfilled')\n .filter((r) => r.value.deleted)\n .map((r) => r.value)\n\n const notFound = uniq(\n results\n .filter((r): r is PromiseFulfilledResult<DeleteResult> => r.status === 'fulfilled')\n .filter((r) => !r.value.deleted)\n .filter((r) => !deletedIds.map(({schemaId}) => schemaId).includes(r.value.schemaId))\n .map((r) => r.value.schemaId),\n )\n\n const deleteFailureIds = uniq(\n results\n .filter((r) => r.status === 'rejected')\n .map((result) => {\n const error = result.reason\n if (error instanceof DeleteIdError) {\n output.warn(\n styleText(\n 'red',\n [\n `Failed to delete schema \"${error.id}\" in dataset \"${error.dataset}\":`,\n error.message,\n ].join('\\n'),\n ),\n )\n if (verbose) output.warn(error)\n return error.id\n }\n //hubris inc: given the try-catch wrapping the full promise \"this should never happen\"\n throw error\n }),\n )\n\n // Compare unique schema IDs deleted vs requested (not total deletions across datasets)\n const uniqueDeletedSchemaIds = uniq(deletedIds.map(({schemaId}) => schemaId))\n const success = uniqueDeletedSchemaIds.length === ids.length\n if (success) {\n output.log(`Successfully deleted ${uniqueDeletedSchemaIds.length}/${ids.length} schemas`)\n } else {\n throw new CLIError(\n [\n `Deleted ${uniqueDeletedSchemaIds.length}/${ids.length} schemas.`,\n deletedIds.length > 0\n ? `Successfully deleted ids:\\n${deletedIds\n .map(\n ({dataset: targetDataset, schemaId}) =>\n `- \"${schemaId}\" (in ${getDatasetsOutString([targetDataset])})`,\n )\n .join('\\n')}`\n : undefined,\n notFound.length > 0\n ? `Ids not found in ${getDatasetsOutString(datasets)}:\\n${getStringList(notFound)}`\n : undefined,\n ...(deleteFailureIds.length > 0\n ? [`Failed to delete ids:\\n${getStringList(deleteFailureIds)}`, 'Check logs for errors.']\n : []),\n ]\n .filter((item) => isDefined(item))\n .join('\\n'),\n )\n }\n}\n"],"names":["styleText","CLIError","studioWorkerTask","deleteSchema","isDefined","getDatasetsOutString","getStringList","uniq","array","Set","DeleteIdError","Error","dataset","id","options","cause","message","name","deleteSchemaAction","configPath","ids","output","projectId","verbose","workDir","projectDatasets","URL","url","studioRootPath","workerData","datasets","map","w","results","Promise","allSettled","flatMap","targetDataset","schemaId","deletedSchema","deleted","err","deletedIds","filter","r","status","value","notFound","includes","deleteFailureIds","result","error","reason","warn","join","uniqueDeletedSchemaIds","success","length","log","undefined","item"],"mappings":"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"}
@@ -1,98 +1,29 @@
1
- import { chalk } from '@sanity/cli-core/ux';
2
- import { updateSchemas } from '../../services/schemas.js';
3
- import { CURRENT_WORKSPACE_SCHEMA_VERSION } from '../manifest/types.js';
4
- import { schemasDeployDebug } from './utils/debug.js';
5
- import { ensureManifestExtractSatisfied } from './utils/manifestExtractor.js';
6
- import { createManifestReader } from './utils/manifestReader.js';
7
- import { FlagValidationError, SCHEMA_PERMISSION_HELP_TEXT } from './utils/schemaStoreValidation.js';
8
- import { getWorkspaceSchemaId } from './utils/workspaceSchemaId.js';
1
+ import { studioWorkerTask } from '@sanity/cli-core';
2
+ import { updateWorkspacesSchemas } from './updateWorkspaceSchema.js';
3
+ import { SchemaExtractionError } from './utils/SchemaExtractionError.js';
9
4
  export async function deploySchemas(options) {
10
- const { extractManifest, manifestDir, manifestSafe, output, schemaRequired, tag, verbose, workDir, workspaceName } = options;
11
- if (!await ensureManifestExtractSatisfied({
12
- extractManifest,
13
- manifestDir,
14
- manifestSafe,
15
- output,
16
- schemaRequired,
17
- workDir
18
- })) {
19
- return 'failure';
20
- }
21
- try {
22
- const manifestReader = await createManifestReader({
23
- manifestDir,
24
- output,
5
+ const { tag, verbose, workDir, workspaceName } = options;
6
+ const result = await studioWorkerTask(new URL('extractSanityWorkspace.worker.js', import.meta.url), {
7
+ name: 'extractSanityWorkspace',
8
+ studioRootPath: workDir,
9
+ workerData: {
10
+ configPath: workDir,
25
11
  workDir
26
- });
27
- const manifest = await manifestReader.getManifest();
28
- const workspaces = manifest.workspaces.filter((workspace)=>!workspaceName || workspace.name === workspaceName);
29
- if (workspaces.length === 0) {
30
- const error = workspaceName ? new FlagValidationError(`Found no workspaces named "${workspaceName}"`) : new Error('Workspace array in manifest is empty.');
31
- throw error;
32
- }
33
- const updateSchema = getUpdateSchema({
34
- manifestReader,
35
- output,
36
- tag,
37
- verbose
38
- });
39
- /* Known caveat: we _don't_ rollback failed operations or partial success */ const results = await Promise.allSettled(workspaces.map(async (workspace)=>{
40
- await updateSchema(workspace);
41
- }));
42
- const fulfilledUpdates = results.filter((result)=>result.status === 'fulfilled');
43
- const rejectedUpdates = results.filter((result)=>result.status === 'rejected');
44
- if (rejectedUpdates.length > 0) {
45
- throw new Error(`Failed to deploy ${rejectedUpdates.length}/${workspaces.length} schemas. Successfully deployed ${fulfilledUpdates.length}/${workspaces.length} schemas.`);
46
- }
47
- output.log(`Deployed ${fulfilledUpdates.length}/${workspaces.length} schemas`);
48
- return 'success';
49
- } catch (err) {
50
- if (schemaRequired || err instanceof FlagValidationError) {
51
- output.error(err.message);
52
- } else {
53
- output.error(`↳ Error when storing schemas:\n ${err.message}`);
54
12
  }
55
- schemasDeployDebug('Error updating schemas', err.message);
56
- return 'failure';
57
- } finally{
58
- output.log(`${chalk.gray('↳ List deployed schemas with:')} ${chalk.cyan('sanity schema list')}`);
13
+ });
14
+ if (result.type === 'error') {
15
+ throw new SchemaExtractionError(result.error, result.validation);
59
16
  }
60
- }
61
- function getUpdateSchema(args) {
62
- const { manifestReader, output, tag, verbose } = args;
63
- return async (workspace)=>{
64
- const { dataset, projectId } = workspace;
65
- const { idWarning, safeBaseId: id } = getWorkspaceSchemaId({
66
- tag,
67
- workspaceName: workspace.name
68
- });
69
- if (idWarning) output.warn(idWarning);
70
- try {
71
- const schema = await manifestReader.getWorkspaceSchema(workspace.name);
72
- await updateSchemas(dataset, projectId, [
73
- {
74
- // the API will stringify the schema – we send as JSON
75
- schema,
76
- tag,
77
- version: CURRENT_WORKSPACE_SCHEMA_VERSION,
78
- workspace: {
79
- name: workspace.name,
80
- title: workspace.title
81
- }
82
- }
83
- ]);
84
- if (verbose) {
85
- output.log(chalk.gray(`↳ schemaId: ${id}, projectId: ${projectId}, dataset: ${dataset}`));
86
- }
87
- } catch (err) {
88
- if ('statusCode' in err && err?.statusCode === 401) {
89
- output.warn(`↳ No permissions to write schema for workspace "${workspace.name}" in dataset "${workspace.dataset}". ${SCHEMA_PERMISSION_HELP_TEXT}:\n ${chalk.red(`${err.message}`)}`);
90
- } else {
91
- output.error(`↳ Error deploying schema for workspace "${workspace.name}":\n ${chalk.red(`${err.message}`)}`);
92
- }
93
- throw err;
94
- }
95
- };
17
+ const workspaces = result.workspaces.filter((workspace)=>!workspaceName || workspace.name === workspaceName);
18
+ if (workspaces.length === 0) {
19
+ const error = workspaceName ? new Error(`Found no workspaces named "${workspaceName}"`) : new Error('No workspaces found');
20
+ throw error;
21
+ }
22
+ await updateWorkspacesSchemas({
23
+ tag,
24
+ verbose,
25
+ workspaces
26
+ });
96
27
  }
97
28
 
98
29
  //# sourceMappingURL=deploySchemas.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/actions/schema/deploySchemas.ts"],"sourcesContent":["import {type Output} from '@sanity/cli-core'\nimport {chalk} from '@sanity/cli-core/ux'\n\nimport {type DeploySchemaCommand} from '../../commands/schema/deploy'\nimport {updateSchemas} from '../../services/schemas.js'\nimport {\n CURRENT_WORKSPACE_SCHEMA_VERSION,\n type ManifestWorkspaceFile,\n type StoredWorkspaceSchema,\n} from '../manifest/types.js'\nimport {type SchemaStoreActionResult} from './schemaStoreTypes.js'\nimport {schemasDeployDebug} from './utils/debug.js'\nimport {ensureManifestExtractSatisfied} from './utils/manifestExtractor.js'\nimport {type CreateManifestReader, createManifestReader} from './utils/manifestReader.js'\nimport {FlagValidationError, SCHEMA_PERMISSION_HELP_TEXT} from './utils/schemaStoreValidation.js'\nimport {getWorkspaceSchemaId} from './utils/workspaceSchemaId.js'\n\ninterface DeploySchemasOptions {\n extractManifest: boolean\n manifestDir: string\n output: Output\n verbose: boolean\n workDir: string\n\n manifestSafe?: boolean\n schemaRequired?: boolean\n tag?: string\n workspaceName?: string\n}\n\nexport async function deploySchemas(\n options: DeploySchemasOptions,\n): Promise<SchemaStoreActionResult> {\n const {\n extractManifest,\n manifestDir,\n manifestSafe,\n output,\n schemaRequired,\n tag,\n verbose,\n workDir,\n workspaceName,\n } = options\n\n if (\n !(await ensureManifestExtractSatisfied({\n extractManifest,\n manifestDir,\n manifestSafe,\n output,\n schemaRequired,\n workDir,\n }))\n ) {\n return 'failure'\n }\n\n try {\n const manifestReader = await createManifestReader({\n manifestDir,\n output,\n workDir,\n })\n const manifest = await manifestReader.getManifest()\n const workspaces = manifest.workspaces.filter(\n (workspace) => !workspaceName || workspace.name === workspaceName,\n )\n\n if (workspaces.length === 0) {\n const error = workspaceName\n ? new FlagValidationError(`Found no workspaces named \"${workspaceName}\"`)\n : new Error('Workspace array in manifest is empty.')\n throw error\n }\n\n const updateSchema = getUpdateSchema({\n manifestReader,\n output,\n tag,\n verbose,\n })\n\n /* Known caveat: we _don't_ rollback failed operations or partial success */\n const results = await Promise.allSettled(\n workspaces.map(async (workspace: ManifestWorkspaceFile): Promise<void> => {\n await updateSchema(workspace)\n }),\n )\n\n const fulfilledUpdates = results.filter((result) => result.status === 'fulfilled')\n const rejectedUpdates = results.filter((result) => result.status === 'rejected')\n\n if (rejectedUpdates.length > 0) {\n throw new Error(\n `Failed to deploy ${rejectedUpdates.length}/${workspaces.length} schemas. Successfully deployed ${fulfilledUpdates.length}/${workspaces.length} schemas.`,\n )\n }\n\n output.log(`Deployed ${fulfilledUpdates.length}/${workspaces.length} schemas`)\n return 'success'\n } catch (err) {\n if (schemaRequired || err instanceof FlagValidationError) {\n output.error(err.message)\n } else {\n output.error(`↳ Error when storing schemas:\\n ${err.message}`)\n }\n schemasDeployDebug('Error updating schemas', err.message)\n return 'failure'\n } finally {\n output.log(`${chalk.gray('↳ List deployed schemas with:')} ${chalk.cyan('sanity schema list')}`)\n }\n}\n\nfunction getUpdateSchema(args: {\n manifestReader: CreateManifestReader\n output: DeploySchemaCommand['flags']['output']\n tag?: string\n verbose: boolean\n}): (workspace: ManifestWorkspaceFile) => Promise<void> {\n const {manifestReader, output, tag, verbose} = args\n\n return async (workspace) => {\n const {dataset, projectId} = workspace\n\n const {idWarning, safeBaseId: id} = getWorkspaceSchemaId({\n tag,\n workspaceName: workspace.name,\n })\n\n if (idWarning) output.warn(idWarning)\n\n try {\n const schema = await manifestReader.getWorkspaceSchema(workspace.name)\n\n await updateSchemas<Omit<StoredWorkspaceSchema, '_id' | '_type'>[]>(dataset, projectId, [\n {\n // the API will stringify the schema – we send as JSON\n schema,\n tag,\n version: CURRENT_WORKSPACE_SCHEMA_VERSION,\n workspace: {\n name: workspace.name,\n title: workspace.title,\n },\n },\n ])\n\n if (verbose) {\n output.log(chalk.gray(`↳ schemaId: ${id}, projectId: ${projectId}, dataset: ${dataset}`))\n }\n } catch (err) {\n if ('statusCode' in err && err?.statusCode === 401) {\n output.warn(\n `↳ No permissions to write schema for workspace \"${workspace.name}\" in dataset \"${workspace.dataset}\". ${\n SCHEMA_PERMISSION_HELP_TEXT\n }:\\n ${chalk.red(`${err.message}`)}`,\n )\n } else {\n output.error(\n `↳ Error deploying schema for workspace \"${workspace.name}\":\\n ${chalk.red(`${err.message}`)}`,\n )\n }\n\n throw err\n }\n }\n}\n"],"names":["chalk","updateSchemas","CURRENT_WORKSPACE_SCHEMA_VERSION","schemasDeployDebug","ensureManifestExtractSatisfied","createManifestReader","FlagValidationError","SCHEMA_PERMISSION_HELP_TEXT","getWorkspaceSchemaId","deploySchemas","options","extractManifest","manifestDir","manifestSafe","output","schemaRequired","tag","verbose","workDir","workspaceName","manifestReader","manifest","getManifest","workspaces","filter","workspace","name","length","error","Error","updateSchema","getUpdateSchema","results","Promise","allSettled","map","fulfilledUpdates","result","status","rejectedUpdates","log","err","message","gray","cyan","args","dataset","projectId","idWarning","safeBaseId","id","warn","schema","getWorkspaceSchema","version","title","statusCode","red"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/actions/schema/deploySchemas.ts"],"sourcesContent":["import {studioWorkerTask} from '@sanity/cli-core'\nimport {type SchemaValidationProblemGroup} from '@sanity/types'\nimport {type Workspace} from 'sanity'\n\nimport {type ExtractWorkspaceWorkerData} from './types.js'\nimport {updateWorkspacesSchemas} from './updateWorkspaceSchema.js'\nimport {SchemaExtractionError} from './utils/SchemaExtractionError.js'\n\ninterface DeploySchemasOptions {\n verbose: boolean\n workDir: string\n\n tag?: string\n workspaceName?: string\n}\n\ntype ExtractWorkspaceWorkerMessage =\n | {\n error: string\n type: 'error'\n validation?: SchemaValidationProblemGroup[]\n }\n | {\n type: 'success'\n workspaces: Workspace[]\n }\n\nexport async function deploySchemas(options: DeploySchemasOptions): Promise<void> {\n const {tag, verbose, workDir, workspaceName} = options\n\n const result = await studioWorkerTask<ExtractWorkspaceWorkerMessage>(\n new URL('extractSanityWorkspace.worker.js', import.meta.url),\n {\n name: 'extractSanityWorkspace',\n studioRootPath: workDir,\n workerData: {\n configPath: workDir,\n workDir,\n } satisfies ExtractWorkspaceWorkerData,\n },\n )\n\n if (result.type === 'error') {\n throw new SchemaExtractionError(result.error, result.validation)\n }\n\n const workspaces = result.workspaces.filter(\n (workspace) => !workspaceName || workspace.name === workspaceName,\n )\n if (workspaces.length === 0) {\n const error = workspaceName\n ? new Error(`Found no workspaces named \"${workspaceName}\"`)\n : new Error('No workspaces found')\n throw error\n }\n\n await updateWorkspacesSchemas({\n tag,\n verbose,\n workspaces,\n })\n}\n"],"names":["studioWorkerTask","updateWorkspacesSchemas","SchemaExtractionError","deploySchemas","options","tag","verbose","workDir","workspaceName","result","URL","url","name","studioRootPath","workerData","configPath","type","error","validation","workspaces","filter","workspace","length","Error"],"mappings":"AAAA,SAAQA,gBAAgB,QAAO,mBAAkB;AAKjD,SAAQC,uBAAuB,QAAO,6BAA4B;AAClE,SAAQC,qBAAqB,QAAO,mCAAkC;AAqBtE,OAAO,eAAeC,cAAcC,OAA6B;IAC/D,MAAM,EAACC,GAAG,EAAEC,OAAO,EAAEC,OAAO,EAAEC,aAAa,EAAC,GAAGJ;IAE/C,MAAMK,SAAS,MAAMT,iBACnB,IAAIU,IAAI,oCAAoC,YAAYC,GAAG,GAC3D;QACEC,MAAM;QACNC,gBAAgBN;QAChBO,YAAY;YACVC,YAAYR;YACZA;QACF;IACF;IAGF,IAAIE,OAAOO,IAAI,KAAK,SAAS;QAC3B,MAAM,IAAId,sBAAsBO,OAAOQ,KAAK,EAAER,OAAOS,UAAU;IACjE;IAEA,MAAMC,aAAaV,OAAOU,UAAU,CAACC,MAAM,CACzC,CAACC,YAAc,CAACb,iBAAiBa,UAAUT,IAAI,KAAKJ;IAEtD,IAAIW,WAAWG,MAAM,KAAK,GAAG;QAC3B,MAAML,QAAQT,gBACV,IAAIe,MAAM,CAAC,2BAA2B,EAAEf,cAAc,CAAC,CAAC,IACxD,IAAIe,MAAM;QACd,MAAMN;IACR;IAEA,MAAMhB,wBAAwB;QAC5BI;QACAC;QACAa;IACF;AACF"}
@@ -0,0 +1,33 @@
1
+ import { isMainThread, parentPort, workerData } from 'node:worker_threads';
2
+ import { getStudioWorkspaces } from '@sanity/cli-core';
3
+ import { extractSchema } from '@sanity/schema/_internal';
4
+ import { getWorkspace } from '../../util/getWorkspace.js';
5
+ import { extractSchemaWorkerData } from './types.js';
6
+ import { extractValidationFromSchemaError } from './utils/extractValidationFromSchemaError.js';
7
+ if (isMainThread || !parentPort) {
8
+ throw new Error('Should only be run in a worker!');
9
+ }
10
+ const { configPath, enforceRequiredFields, workDir, workspaceName } = extractSchemaWorkerData.parse(workerData);
11
+ try {
12
+ const workspaces = await getStudioWorkspaces(configPath);
13
+ if (workspaces.length === 0) {
14
+ throw new Error('Failed to resolve configuration');
15
+ }
16
+ const workspace = getWorkspace(workspaces, workspaceName);
17
+ const schema = extractSchema(workspace.schema, {
18
+ enforceRequiredFields
19
+ });
20
+ parentPort.postMessage({
21
+ schema,
22
+ type: 'success'
23
+ });
24
+ } catch (error) {
25
+ const validation = await extractValidationFromSchemaError(error, workDir);
26
+ parentPort.postMessage({
27
+ error: error instanceof Error ? error.message : String(error),
28
+ type: 'error',
29
+ validation
30
+ });
31
+ }
32
+
33
+ //# sourceMappingURL=extractSanitySchema.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/actions/schema/extractSanitySchema.worker.ts"],"sourcesContent":["import {isMainThread, parentPort, workerData} from 'node:worker_threads'\n\nimport {getStudioWorkspaces} from '@sanity/cli-core'\nimport {extractSchema} from '@sanity/schema/_internal'\n\nimport {getWorkspace} from '../../util/getWorkspace.js'\nimport {extractSchemaWorkerData} from './types.js'\nimport {extractValidationFromSchemaError} from './utils/extractValidationFromSchemaError.js'\n\nif (isMainThread || !parentPort) {\n throw new Error('Should only be run in a worker!')\n}\n\nconst {configPath, enforceRequiredFields, workDir, workspaceName} =\n extractSchemaWorkerData.parse(workerData)\n\ntry {\n const workspaces = await getStudioWorkspaces(configPath)\n if (workspaces.length === 0) {\n throw new Error('Failed to resolve configuration')\n }\n\n const workspace = getWorkspace(workspaces, workspaceName)\n const schema = extractSchema(workspace.schema, {\n enforceRequiredFields,\n })\n\n parentPort.postMessage({\n schema,\n type: 'success',\n })\n} catch (error) {\n const validation = await extractValidationFromSchemaError(error, workDir)\n parentPort.postMessage({\n error: error instanceof Error ? error.message : String(error),\n type: 'error',\n validation,\n })\n}\n"],"names":["isMainThread","parentPort","workerData","getStudioWorkspaces","extractSchema","getWorkspace","extractSchemaWorkerData","extractValidationFromSchemaError","Error","configPath","enforceRequiredFields","workDir","workspaceName","parse","workspaces","length","workspace","schema","postMessage","type","error","validation","message","String"],"mappings":"AAAA,SAAQA,YAAY,EAAEC,UAAU,EAAEC,UAAU,QAAO,sBAAqB;AAExE,SAAQC,mBAAmB,QAAO,mBAAkB;AACpD,SAAQC,aAAa,QAAO,2BAA0B;AAEtD,SAAQC,YAAY,QAAO,6BAA4B;AACvD,SAAQC,uBAAuB,QAAO,aAAY;AAClD,SAAQC,gCAAgC,QAAO,8CAA6C;AAE5F,IAAIP,gBAAgB,CAACC,YAAY;IAC/B,MAAM,IAAIO,MAAM;AAClB;AAEA,MAAM,EAACC,UAAU,EAAEC,qBAAqB,EAAEC,OAAO,EAAEC,aAAa,EAAC,GAC/DN,wBAAwBO,KAAK,CAACX;AAEhC,IAAI;IACF,MAAMY,aAAa,MAAMX,oBAAoBM;IAC7C,IAAIK,WAAWC,MAAM,KAAK,GAAG;QAC3B,MAAM,IAAIP,MAAM;IAClB;IAEA,MAAMQ,YAAYX,aAAaS,YAAYF;IAC3C,MAAMK,SAASb,cAAcY,UAAUC,MAAM,EAAE;QAC7CP;IACF;IAEAT,WAAWiB,WAAW,CAAC;QACrBD;QACAE,MAAM;IACR;AACF,EAAE,OAAOC,OAAO;IACd,MAAMC,aAAa,MAAMd,iCAAiCa,OAAOT;IACjEV,WAAWiB,WAAW,CAAC;QACrBE,OAAOA,iBAAiBZ,QAAQY,MAAME,OAAO,GAAGC,OAAOH;QACvDD,MAAM;QACNE;IACF;AACF"}
@@ -0,0 +1,24 @@
1
+ import { isMainThread, parentPort, workerData } from 'node:worker_threads';
2
+ import { getStudioWorkspaces, safeStructuredClone } from '@sanity/cli-core';
3
+ import { extractWorkspaceWorkerData } from './types.js';
4
+ import { extractValidationFromSchemaError } from './utils/extractValidationFromSchemaError.js';
5
+ if (isMainThread || !parentPort) {
6
+ throw new Error('Should only be run in a worker!');
7
+ }
8
+ const { configPath, workDir } = extractWorkspaceWorkerData.parse(workerData);
9
+ try {
10
+ const workspaces = await getStudioWorkspaces(configPath);
11
+ parentPort.postMessage({
12
+ type: 'success',
13
+ workspaces: safeStructuredClone(workspaces)
14
+ });
15
+ } catch (error) {
16
+ const validation = await extractValidationFromSchemaError(error, workDir);
17
+ parentPort.postMessage({
18
+ error: error instanceof Error ? error.message : String(error),
19
+ type: 'error',
20
+ validation
21
+ });
22
+ }
23
+
24
+ //# sourceMappingURL=extractSanityWorkspace.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/actions/schema/extractSanityWorkspace.worker.ts"],"sourcesContent":["import {isMainThread, parentPort, workerData} from 'node:worker_threads'\n\nimport {getStudioWorkspaces, safeStructuredClone} from '@sanity/cli-core'\n\nimport {extractWorkspaceWorkerData} from './types.js'\nimport {extractValidationFromSchemaError} from './utils/extractValidationFromSchemaError.js'\n\nif (isMainThread || !parentPort) {\n throw new Error('Should only be run in a worker!')\n}\n\nconst {configPath, workDir} = extractWorkspaceWorkerData.parse(workerData)\n\ntry {\n const workspaces = await getStudioWorkspaces(configPath)\n\n parentPort.postMessage({\n type: 'success',\n workspaces: safeStructuredClone(workspaces),\n })\n} catch (error) {\n const validation = await extractValidationFromSchemaError(error, workDir)\n parentPort.postMessage({\n error: error instanceof Error ? error.message : String(error),\n type: 'error',\n validation,\n })\n}\n"],"names":["isMainThread","parentPort","workerData","getStudioWorkspaces","safeStructuredClone","extractWorkspaceWorkerData","extractValidationFromSchemaError","Error","configPath","workDir","parse","workspaces","postMessage","type","error","validation","message","String"],"mappings":"AAAA,SAAQA,YAAY,EAAEC,UAAU,EAAEC,UAAU,QAAO,sBAAqB;AAExE,SAAQC,mBAAmB,EAAEC,mBAAmB,QAAO,mBAAkB;AAEzE,SAAQC,0BAA0B,QAAO,aAAY;AACrD,SAAQC,gCAAgC,QAAO,8CAA6C;AAE5F,IAAIN,gBAAgB,CAACC,YAAY;IAC/B,MAAM,IAAIM,MAAM;AAClB;AAEA,MAAM,EAACC,UAAU,EAAEC,OAAO,EAAC,GAAGJ,2BAA2BK,KAAK,CAACR;AAE/D,IAAI;IACF,MAAMS,aAAa,MAAMR,oBAAoBK;IAE7CP,WAAWW,WAAW,CAAC;QACrBC,MAAM;QACNF,YAAYP,oBAAoBO;IAClC;AACF,EAAE,OAAOG,OAAO;IACd,MAAMC,aAAa,MAAMT,iCAAiCQ,OAAOL;IACjER,WAAWW,WAAW,CAAC;QACrBE,OAAOA,iBAAiBP,QAAQO,MAAME,OAAO,GAAGC,OAAOH;QACvDD,MAAM;QACNE;IACF;AACF"}
@@ -0,0 +1,45 @@
1
+ import { exit } from '@oclif/core/errors';
2
+ import { getCliTelemetry } from '@sanity/cli-core';
3
+ import { spinner } from '@sanity/cli-core/ux';
4
+ import { SchemaExtractedTrace } from '../../telemetry/extractSchema.telemetry.js';
5
+ import { formatSchemaValidation } from './formatSchemaValidation.js';
6
+ import { runSchemaExtraction } from './runSchemaExtraction.js';
7
+ import { schemasExtractDebug } from './utils/debug.js';
8
+ import { SchemaExtractionError } from './utils/SchemaExtractionError.js';
9
+ export async function extractSchema(options) {
10
+ const { extractOptions, output } = options;
11
+ const { enforceRequiredFields, format, outputPath } = extractOptions;
12
+ const spin = spinner(enforceRequiredFields ? 'Extracting schema with enforced required fields' : 'Extracting schema').start();
13
+ const trace = getCliTelemetry().trace(SchemaExtractedTrace);
14
+ trace.start();
15
+ try {
16
+ spin.text = `Writing schema to ${outputPath}`;
17
+ const schema = await runSchemaExtraction(extractOptions);
18
+ trace.log({
19
+ enforceRequiredFields,
20
+ schemaAllTypesCount: schema.length,
21
+ schemaDocumentTypesCount: schema.filter((type)=>type.type === 'document').length,
22
+ schemaFormat: format,
23
+ schemaTypesCount: schema.filter((type)=>type.type === 'type').length
24
+ });
25
+ spin.succeed(enforceRequiredFields ? `Extracted schema to ${outputPath} with enforced required fields` : `Extracted schema to ${outputPath}`);
26
+ trace.complete();
27
+ } catch (err) {
28
+ trace.error(err);
29
+ schemasExtractDebug('Failed to extract schema', err);
30
+ spin.fail(enforceRequiredFields ? 'Failed to extract schema with enforced required fields' : 'Failed to extract schema');
31
+ // Display validation errors if available
32
+ if (err instanceof SchemaExtractionError && err.validation && err.validation.length > 0) {
33
+ output.log('');
34
+ output.log(formatSchemaValidation(err.validation));
35
+ }
36
+ if (err instanceof Error) {
37
+ output.error(err.message, {
38
+ exit: 1
39
+ });
40
+ }
41
+ exit(1);
42
+ }
43
+ }
44
+
45
+ //# sourceMappingURL=extractSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/actions/schema/extractSchema.ts"],"sourcesContent":["import {exit} from '@oclif/core/errors'\nimport {getCliTelemetry, type Output} from '@sanity/cli-core'\nimport {spinner} from '@sanity/cli-core/ux'\n\nimport {SchemaExtractedTrace} from '../../telemetry/extractSchema.telemetry.js'\nimport {formatSchemaValidation} from './formatSchemaValidation.js'\nimport {type ExtractOptions} from './getExtractOptions.js'\nimport {runSchemaExtraction} from './runSchemaExtraction.js'\nimport {schemasExtractDebug} from './utils/debug.js'\nimport {SchemaExtractionError} from './utils/SchemaExtractionError.js'\n\ninterface ExtractSchemaActionOptions {\n extractOptions: ExtractOptions\n output: Output\n}\n\nexport async function extractSchema(options: ExtractSchemaActionOptions): Promise<void> {\n const {extractOptions, output} = options\n const {enforceRequiredFields, format, outputPath} = extractOptions\n\n const spin = spinner(\n enforceRequiredFields ? 'Extracting schema with enforced required fields' : 'Extracting schema',\n ).start()\n\n const trace = getCliTelemetry().trace(SchemaExtractedTrace)\n trace.start()\n\n try {\n spin.text = `Writing schema to ${outputPath}`\n\n const schema = await runSchemaExtraction(extractOptions)\n\n trace.log({\n enforceRequiredFields,\n schemaAllTypesCount: schema.length,\n schemaDocumentTypesCount: schema.filter((type) => type.type === 'document').length,\n schemaFormat: format,\n schemaTypesCount: schema.filter((type) => type.type === 'type').length,\n })\n\n spin.succeed(\n enforceRequiredFields\n ? `Extracted schema to ${outputPath} with enforced required fields`\n : `Extracted schema to ${outputPath}`,\n )\n\n trace.complete()\n } catch (err) {\n trace.error(err)\n schemasExtractDebug('Failed to extract schema', err)\n spin.fail(\n enforceRequiredFields\n ? 'Failed to extract schema with enforced required fields'\n : 'Failed to extract schema',\n )\n\n // Display validation errors if available\n if (err instanceof SchemaExtractionError && err.validation && err.validation.length > 0) {\n output.log('')\n output.log(formatSchemaValidation(err.validation))\n }\n\n if (err instanceof Error) {\n output.error(err.message, {exit: 1})\n }\n\n exit(1)\n }\n}\n"],"names":["exit","getCliTelemetry","spinner","SchemaExtractedTrace","formatSchemaValidation","runSchemaExtraction","schemasExtractDebug","SchemaExtractionError","extractSchema","options","extractOptions","output","enforceRequiredFields","format","outputPath","spin","start","trace","text","schema","log","schemaAllTypesCount","length","schemaDocumentTypesCount","filter","type","schemaFormat","schemaTypesCount","succeed","complete","err","error","fail","validation","Error","message"],"mappings":"AAAA,SAAQA,IAAI,QAAO,qBAAoB;AACvC,SAAQC,eAAe,QAAoB,mBAAkB;AAC7D,SAAQC,OAAO,QAAO,sBAAqB;AAE3C,SAAQC,oBAAoB,QAAO,6CAA4C;AAC/E,SAAQC,sBAAsB,QAAO,8BAA6B;AAElE,SAAQC,mBAAmB,QAAO,2BAA0B;AAC5D,SAAQC,mBAAmB,QAAO,mBAAkB;AACpD,SAAQC,qBAAqB,QAAO,mCAAkC;AAOtE,OAAO,eAAeC,cAAcC,OAAmC;IACrE,MAAM,EAACC,cAAc,EAAEC,MAAM,EAAC,GAAGF;IACjC,MAAM,EAACG,qBAAqB,EAAEC,MAAM,EAAEC,UAAU,EAAC,GAAGJ;IAEpD,MAAMK,OAAOb,QACXU,wBAAwB,oDAAoD,qBAC5EI,KAAK;IAEP,MAAMC,QAAQhB,kBAAkBgB,KAAK,CAACd;IACtCc,MAAMD,KAAK;IAEX,IAAI;QACFD,KAAKG,IAAI,GAAG,CAAC,kBAAkB,EAAEJ,YAAY;QAE7C,MAAMK,SAAS,MAAMd,oBAAoBK;QAEzCO,MAAMG,GAAG,CAAC;YACRR;YACAS,qBAAqBF,OAAOG,MAAM;YAClCC,0BAA0BJ,OAAOK,MAAM,CAAC,CAACC,OAASA,KAAKA,IAAI,KAAK,YAAYH,MAAM;YAClFI,cAAcb;YACdc,kBAAkBR,OAAOK,MAAM,CAAC,CAACC,OAASA,KAAKA,IAAI,KAAK,QAAQH,MAAM;QACxE;QAEAP,KAAKa,OAAO,CACVhB,wBACI,CAAC,oBAAoB,EAAEE,WAAW,8BAA8B,CAAC,GACjE,CAAC,oBAAoB,EAAEA,YAAY;QAGzCG,MAAMY,QAAQ;IAChB,EAAE,OAAOC,KAAK;QACZb,MAAMc,KAAK,CAACD;QACZxB,oBAAoB,4BAA4BwB;QAChDf,KAAKiB,IAAI,CACPpB,wBACI,2DACA;QAGN,yCAAyC;QACzC,IAAIkB,eAAevB,yBAAyBuB,IAAIG,UAAU,IAAIH,IAAIG,UAAU,CAACX,MAAM,GAAG,GAAG;YACvFX,OAAOS,GAAG,CAAC;YACXT,OAAOS,GAAG,CAAChB,uBAAuB0B,IAAIG,UAAU;QAClD;QAEA,IAAIH,eAAeI,OAAO;YACxBvB,OAAOoB,KAAK,CAACD,IAAIK,OAAO,EAAE;gBAACnC,MAAM;YAAC;QACpC;QAEAA,KAAK;IACP;AACF"}
@@ -0,0 +1,128 @@
1
+ import { dirname, isAbsolute, join, relative } from 'node:path';
2
+ import { spinner } from '@sanity/cli-core/ux';
3
+ import { watch as chokidarWatch } from 'chokidar';
4
+ import debounce from 'lodash-es/debounce.js';
5
+ import { formatSchemaValidation } from './formatSchemaValidation.js';
6
+ import { createSchemaPatternMatcher } from './matchSchemaPattern.js';
7
+ import { runSchemaExtraction } from './runSchemaExtraction.js';
8
+ import { schemasExtractDebug } from './utils/debug.js';
9
+ import { SchemaExtractionError } from './utils/SchemaExtractionError.js';
10
+ /** Default glob patterns to watch for schema changes */ export const DEFAULT_WATCH_PATTERNS = [
11
+ 'sanity.config.{js,jsx,ts,tsx,mjs}',
12
+ 'schema*/**/*.{js,jsx,ts,tsx,mjs}'
13
+ ];
14
+ /** Default patterns to ignore when watching */ const IGNORED_PATTERNS = [
15
+ '**/node_modules/**',
16
+ '**/.git/**',
17
+ '**/dist/**',
18
+ '**/lib/**',
19
+ '**/.sanity/**'
20
+ ];
21
+ /**
22
+ * Creates an extraction runner with concurrency control.
23
+ * If extraction is already running, queues one more extraction to run after completion.
24
+ * Multiple queued requests are coalesced into a single pending extraction.
25
+ */ function createExtractionRunner(onExtract) {
26
+ const state = {
27
+ isExtracting: false,
28
+ pendingExtraction: false
29
+ };
30
+ async function runExtraction() {
31
+ if (state.isExtracting) {
32
+ state.pendingExtraction = true;
33
+ return;
34
+ }
35
+ state.isExtracting = true;
36
+ state.pendingExtraction = false;
37
+ try {
38
+ await onExtract();
39
+ } finally{
40
+ state.isExtracting = false;
41
+ // If a change came in during extraction, run again
42
+ if (state.pendingExtraction) {
43
+ state.pendingExtraction = false;
44
+ await runExtraction();
45
+ }
46
+ }
47
+ }
48
+ return {
49
+ runExtraction,
50
+ state
51
+ };
52
+ }
53
+ /**
54
+ * Starts a schema watcher that extracts schema on file changes.
55
+ * Returns a watcher instance and a stop function.
56
+ */ export async function startExtractSchemaWatcher(options) {
57
+ const { extractOptions, onExtraction, output, watchPatterns } = options;
58
+ const { configPath, enforceRequiredFields, outputPath } = extractOptions;
59
+ const workDir = dirname(configPath);
60
+ // Helper function to run extraction with spinner and error handling
61
+ const runExtraction = async ()=>{
62
+ const spin = spinner(enforceRequiredFields ? 'Extracting schema with enforced required fields' : 'Extracting schema...').start();
63
+ const extractionStartTime = Date.now();
64
+ try {
65
+ await runSchemaExtraction(extractOptions);
66
+ spin.succeed(enforceRequiredFields ? `Extracted schema to ${outputPath} with enforced required fields` : `Extracted schema to ${outputPath}`);
67
+ const duration = Date.now() - extractionStartTime;
68
+ onExtraction?.({
69
+ duration,
70
+ success: true
71
+ });
72
+ return true;
73
+ } catch (err) {
74
+ const duration = Date.now() - extractionStartTime;
75
+ onExtraction?.({
76
+ duration,
77
+ success: false
78
+ });
79
+ schemasExtractDebug('Failed to extract schema', err);
80
+ spin.fail('Extraction failed');
81
+ // Display validation errors if available
82
+ if (err instanceof SchemaExtractionError && err.validation && err.validation.length > 0) {
83
+ output.log('');
84
+ output.log(formatSchemaValidation(err.validation));
85
+ } else if (err instanceof Error) {
86
+ output.error(err.message, {
87
+ exit: 1
88
+ });
89
+ }
90
+ return false;
91
+ }
92
+ };
93
+ // Run initial extraction
94
+ await runExtraction();
95
+ const absoluteWatchPatterns = watchPatterns.map((pattern)=>join(workDir, pattern));
96
+ // Create extraction runner with concurrency control
97
+ const { runExtraction: runConcurrentExtraction } = createExtractionRunner(async ()=>{
98
+ await runExtraction();
99
+ });
100
+ // Debounced extraction trigger (1 second delay)
101
+ const debouncedExtract = debounce(()=>{
102
+ void runConcurrentExtraction();
103
+ }, 1000);
104
+ const { isMatch } = createSchemaPatternMatcher(watchPatterns);
105
+ const watcher = chokidarWatch(absoluteWatchPatterns, {
106
+ cwd: workDir,
107
+ ignored: IGNORED_PATTERNS,
108
+ ignoreInitial: true
109
+ });
110
+ watcher.on('all', (event, filePath)=>{
111
+ if (!isMatch(filePath, workDir)) {
112
+ return;
113
+ }
114
+ const timestamp = new Date().toLocaleTimeString();
115
+ const relativePath = isAbsolute(filePath) ? relative(workDir, filePath) : filePath;
116
+ output.log(`[${timestamp}] ${event}: ${relativePath}`);
117
+ debouncedExtract();
118
+ });
119
+ watcher.on('error', (err)=>{
120
+ output.error(`Watcher error: ${err instanceof Error ? err.message : String(err)}`);
121
+ });
122
+ return {
123
+ close: ()=>watcher.close(),
124
+ watcher
125
+ };
126
+ }
127
+
128
+ //# sourceMappingURL=extractSchemaWatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/actions/schema/extractSchemaWatcher.ts"],"sourcesContent":["import {dirname, isAbsolute, join, relative} from 'node:path'\n\nimport {type Output} from '@sanity/cli-core'\nimport {spinner} from '@sanity/cli-core/ux'\nimport {watch as chokidarWatch, type FSWatcher} from 'chokidar'\nimport debounce from 'lodash-es/debounce.js'\n\nimport {formatSchemaValidation} from './formatSchemaValidation.js'\nimport {type ExtractOptions} from './getExtractOptions.js'\nimport {createSchemaPatternMatcher} from './matchSchemaPattern.js'\nimport {runSchemaExtraction} from './runSchemaExtraction.js'\nimport {schemasExtractDebug} from './utils/debug.js'\nimport {SchemaExtractionError} from './utils/SchemaExtractionError.js'\n\n/** Default glob patterns to watch for schema changes */\nexport const DEFAULT_WATCH_PATTERNS = [\n 'sanity.config.{js,jsx,ts,tsx,mjs}',\n 'schema*/**/*.{js,jsx,ts,tsx,mjs}',\n]\n\n/** Default patterns to ignore when watching */\nconst IGNORED_PATTERNS = [\n '**/node_modules/**',\n '**/.git/**',\n '**/dist/**',\n '**/lib/**',\n '**/.sanity/**',\n]\n\ninterface ExtractSchemaWatcherOptions {\n extractOptions: ExtractOptions\n output: Output\n watchPatterns: string[]\n\n onExtraction?: (result: {duration: number; success: boolean}) => void\n}\n\ninterface ExtractSchemaWatcher {\n close: () => Promise<void>\n watcher: FSWatcher\n}\n\n/** State for tracking extraction status */\ninterface WatchState {\n isExtracting: boolean\n pendingExtraction: boolean\n}\n\n/** Return type for createExtractionRunner */\ninterface ExtractionRunner {\n runExtraction: () => Promise<void>\n state: WatchState\n}\n\n/**\n * Creates an extraction runner with concurrency control.\n * If extraction is already running, queues one more extraction to run after completion.\n * Multiple queued requests are coalesced into a single pending extraction.\n */\nfunction createExtractionRunner(onExtract: () => Promise<void>): ExtractionRunner {\n const state: WatchState = {\n isExtracting: false,\n pendingExtraction: false,\n }\n\n async function runExtraction(): Promise<void> {\n if (state.isExtracting) {\n state.pendingExtraction = true\n return\n }\n\n state.isExtracting = true\n state.pendingExtraction = false\n\n try {\n await onExtract()\n } finally {\n state.isExtracting = false\n\n // If a change came in during extraction, run again\n if (state.pendingExtraction) {\n state.pendingExtraction = false\n await runExtraction()\n }\n }\n }\n\n return {runExtraction, state}\n}\n\n/**\n * Starts a schema watcher that extracts schema on file changes.\n * Returns a watcher instance and a stop function.\n */\nexport async function startExtractSchemaWatcher(\n options: ExtractSchemaWatcherOptions,\n): Promise<ExtractSchemaWatcher> {\n const {extractOptions, onExtraction, output, watchPatterns} = options\n\n const {configPath, enforceRequiredFields, outputPath} = extractOptions\n const workDir = dirname(configPath)\n\n // Helper function to run extraction with spinner and error handling\n const runExtraction = async (): Promise<boolean> => {\n const spin = spinner(\n enforceRequiredFields\n ? 'Extracting schema with enforced required fields'\n : 'Extracting schema...',\n ).start()\n const extractionStartTime = Date.now()\n\n try {\n await runSchemaExtraction(extractOptions)\n\n spin.succeed(\n enforceRequiredFields\n ? `Extracted schema to ${outputPath} with enforced required fields`\n : `Extracted schema to ${outputPath}`,\n )\n\n const duration = Date.now() - extractionStartTime\n onExtraction?.({duration, success: true})\n\n return true\n } catch (err) {\n const duration = Date.now() - extractionStartTime\n onExtraction?.({duration, success: false})\n\n schemasExtractDebug('Failed to extract schema', err)\n spin.fail('Extraction failed')\n\n // Display validation errors if available\n if (err instanceof SchemaExtractionError && err.validation && err.validation.length > 0) {\n output.log('')\n output.log(formatSchemaValidation(err.validation))\n } else if (err instanceof Error) {\n output.error(err.message, {exit: 1})\n }\n\n return false\n }\n }\n\n // Run initial extraction\n await runExtraction()\n\n const absoluteWatchPatterns = watchPatterns.map((pattern) => join(workDir, pattern))\n\n // Create extraction runner with concurrency control\n const {runExtraction: runConcurrentExtraction} = createExtractionRunner(async () => {\n await runExtraction()\n })\n\n // Debounced extraction trigger (1 second delay)\n const debouncedExtract = debounce(() => {\n void runConcurrentExtraction()\n }, 1000)\n\n const {isMatch} = createSchemaPatternMatcher(watchPatterns)\n\n const watcher: FSWatcher = chokidarWatch(absoluteWatchPatterns, {\n cwd: workDir,\n ignored: IGNORED_PATTERNS,\n ignoreInitial: true,\n })\n\n watcher.on('all', (event, filePath) => {\n if (!isMatch(filePath, workDir)) {\n return\n }\n\n const timestamp = new Date().toLocaleTimeString()\n const relativePath = isAbsolute(filePath) ? relative(workDir, filePath) : filePath\n output.log(`[${timestamp}] ${event}: ${relativePath}`)\n debouncedExtract()\n })\n\n watcher.on('error', (err) => {\n output.error(`Watcher error: ${err instanceof Error ? err.message : String(err)}`)\n })\n\n return {\n close: () => watcher.close(),\n watcher,\n }\n}\n"],"names":["dirname","isAbsolute","join","relative","spinner","watch","chokidarWatch","debounce","formatSchemaValidation","createSchemaPatternMatcher","runSchemaExtraction","schemasExtractDebug","SchemaExtractionError","DEFAULT_WATCH_PATTERNS","IGNORED_PATTERNS","createExtractionRunner","onExtract","state","isExtracting","pendingExtraction","runExtraction","startExtractSchemaWatcher","options","extractOptions","onExtraction","output","watchPatterns","configPath","enforceRequiredFields","outputPath","workDir","spin","start","extractionStartTime","Date","now","succeed","duration","success","err","fail","validation","length","log","Error","error","message","exit","absoluteWatchPatterns","map","pattern","runConcurrentExtraction","debouncedExtract","isMatch","watcher","cwd","ignored","ignoreInitial","on","event","filePath","timestamp","toLocaleTimeString","relativePath","String","close"],"mappings":"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"}
@@ -1,9 +1,19 @@
1
1
  import { isatty } from 'node:tty';
2
- import { chalk, logSymbols } from '@sanity/cli-core/ux';
2
+ import { styleText } from 'node:util';
3
+ import { logSymbols } from '@sanity/cli-core/ux';
4
+ import { generateHelpUrl } from '@sanity/generate-help-url';
3
5
  const isTty = isatty(1);
4
6
  const headers = {
5
- error: isTty ? chalk.bold(chalk.bgRed(chalk.black(' ERROR '))) : chalk.red('[ERROR]'),
6
- warning: isTty ? chalk.bold(chalk.bgYellow(chalk.black(' WARN '))) : chalk.yellow('[WARN]')
7
+ error: isTty ? styleText([
8
+ 'bold',
9
+ 'bgRed',
10
+ 'black'
11
+ ], ' ERROR ') : styleText('red', '[ERROR]'),
12
+ warning: isTty ? styleText([
13
+ 'bold',
14
+ 'bgYellow',
15
+ 'black'
16
+ ], ' WARN ') : styleText('yellow', '[WARN]')
7
17
  };
8
18
  const severityValues = {
9
19
  error: 0,
@@ -47,11 +57,17 @@ export function formatSchemaValidation(validation) {
47
57
  if (aValue === bValue) return aType.localeCompare(bType, 'en-US');
48
58
  return aValue - bValue;
49
59
  }).map(([topLevelType, groups])=>{
50
- const formattedTopLevelType = isTty ? chalk.bgWhite(chalk.black(` ${topLevelType} `)) : `[${topLevelType}]`;
60
+ const formattedTopLevelType = isTty ? styleText([
61
+ 'bgWhite',
62
+ 'black'
63
+ ], ` ${topLevelType} `) : `[${topLevelType}]`;
51
64
  const header = `${headers[getAggregatedSeverity(groups)]} ${formattedTopLevelType}`;
52
65
  const body = groups.toSorted((a, b)=>severityValues[getAggregatedSeverity(a)] - severityValues[getAggregatedSeverity(b)]).map((group)=>{
53
- const formattedPath = ` ${chalk.bold(formatPath(group.path) || '(root)')}`;
54
- const formattedMessages = group.problems.toSorted((a, b)=>severityValues[a.severity] - severityValues[b.severity]).map(({ message, severity })=>` ${logSymbols[severity]} ${message}`).join('\n');
66
+ const formattedPath = ` ${styleText('bold', formatPath(group.path) || '(root)')}`;
67
+ const formattedMessages = group.problems.toSorted((a, b)=>severityValues[a.severity] - severityValues[b.severity]).map(({ helpId, message, severity })=>{
68
+ const help = helpId ? `\n See ${generateHelpUrl(helpId)}` : '';
69
+ return ` ${logSymbols[severity]} ${message}${help}`;
70
+ }).join('\n');
55
71
  return `${formattedPath}\n${formattedMessages}`;
56
72
  }).join('\n');
57
73
  return `${header}\n${body}`;