@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
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/actions/graphql/extractFromSanitySchema.ts"],"sourcesContent":["/* eslint-disable unicorn/consistent-function-scoping */\nimport {generateHelpUrl} from '@sanity/generate-help-url'\nimport {Schema} from '@sanity/schema'\nimport {\n type ArraySchemaType,\n type Schema as CompiledSchema,\n type CrossDatasetReferenceSchemaType,\n type IntrinsicTypeName,\n isDeprecationConfiguration,\n type ObjectField,\n type ObjectFieldType,\n type ObjectSchemaType,\n type ReferenceSchemaType,\n type SchemaType,\n} from '@sanity/types'\nimport startCase from 'lodash-es/startCase.js'\nimport uniqBy from 'lodash-es/uniqBy.js'\nimport {oneline} from 'oneline'\n\nimport {SCHEMA_LIFT_ANONYMOUS_OBJECT_TYPE} from './helpUrls.js'\nimport {SchemaError} from './SchemaError.js'\nimport {\n type ApiSpecification,\n type ConvertedFieldDefinition,\n type ConvertedInterface,\n type ConvertedType,\n type ConvertedUnion,\n type Deprecation,\n} from './types.js'\n\nconst skipTypes = new Set(['document', 'reference'])\nconst allowedJsonTypes = new Set(['array', 'object'])\nconst disallowedCustomizedMembers = new Set(['array', 'block', 'file', 'image', 'object'])\nconst disabledBlockFields = new Set(['markDefs'])\nconst scalars = new Set(['boolean', 'number', 'string'])\n\nfunction getBaseType(baseSchema: CompiledSchema, typeName: IntrinsicTypeName): SchemaType {\n if (typeName === 'crossDatasetReference') {\n return Schema.compile({\n parent: baseSchema,\n types: [\n {\n name: `__placeholder__`,\n // Just needs _something_ to refer to, doesn't matter what\n to: [{type: 'sanity.imageAsset'}],\n type: 'crossDatasetReference',\n },\n ],\n }).get('__placeholder__')\n }\n if (typeName === 'globalDocumentReference') {\n return Schema.compile({\n parent: baseSchema,\n types: [\n {\n name: `__placeholder__`,\n // Just needs _something_ to refer to, doesn't matter what\n to: [{type: 'sanity.imageAsset'}],\n type: 'globalDocumentReference',\n },\n ],\n }).get('__placeholder__')\n }\n\n return Schema.compile({\n parent: baseSchema,\n types: [{name: `__placeholder__`, options: {hotspot: true}, type: typeName}],\n }).get('__placeholder__')\n}\n\nfunction getTypeName(str: string): string {\n const name = startCase(str).replaceAll(/\\s+/g, '')\n return name === 'Number' ? 'Float' : name\n}\n\nfunction isBaseType(type: SchemaType): boolean {\n return (\n type.name !== type.jsonType &&\n allowedJsonTypes.has(type.jsonType) &&\n !skipTypes.has(type.name) &&\n !isReference(type)\n )\n}\n\nfunction isBlockType(typeDef: ObjectField | SchemaType): boolean {\n if (typeDef.name === 'block') {\n return true\n }\n\n if (typeDef.type) {\n return isBlockType(typeDef.type)\n }\n\n return false\n}\n\nfunction hasBlockParent(typeDef: SchemaType): boolean {\n if (typeDef.type && typeDef.type.name === 'block' && !typeDef.type.type) {\n return true\n }\n\n return Boolean(typeDef.type && hasBlockParent(typeDef.type))\n}\n\nfunction isArrayOfBlocks(typeDef: ObjectField | SchemaType): boolean {\n const type = typeDef.type || typeDef\n if (!('jsonType' in type) || type.jsonType !== 'array') {\n return false\n }\n\n return (type.of || []).some((item) => hasBlockParent(item))\n}\n\nfunction isType(typeDef: ObjectField | ObjectFieldType | SchemaType, typeName: string): boolean {\n let type: ObjectField | ObjectFieldType | SchemaType | undefined = typeDef\n while (type) {\n if (type.name === typeName || (type.type && type.type.name === typeName)) {\n return true\n }\n\n type = type.type\n }\n return false\n}\n\nfunction isReference(\n typeDef: ObjectField | ObjectFieldType | SchemaType,\n): typeDef is ReferenceSchemaType {\n return isType(typeDef, 'reference')\n}\n\nfunction isCrossDatasetReference(\n typeDef: CrossDatasetReferenceSchemaType | ObjectField | ObjectFieldType | SchemaType,\n) {\n return isType(typeDef, 'crossDatasetReference')\n}\n\nfunction getCrossDatasetReferenceMetadata(\n typeDef: CrossDatasetReferenceSchemaType | ObjectField | ObjectFieldType | SchemaType,\n) {\n if (!isCrossDatasetReference(typeDef)) return\n\n function getTypeNames(\n type: CrossDatasetReferenceSchemaType | ObjectField | ObjectFieldType | SchemaType | undefined,\n ) {\n if (!type) return\n if (!('to' in type)) return getTypeNames(type.type)\n return type.to.map((t) => t.type).filter((t): t is string => typeof t === 'string')\n }\n\n function getDataset(\n type: CrossDatasetReferenceSchemaType | ObjectField | ObjectFieldType | SchemaType | undefined,\n ) {\n if (!type) return\n if ('dataset' in type && typeof type.dataset === 'string') return type.dataset\n if (type.type) return getDataset(type.type)\n }\n\n const typeNames = getTypeNames(typeDef)\n if (!typeNames) return\n\n const dataset = getDataset(typeDef)\n if (typeof dataset !== 'string') return\n\n return {dataset, typeNames}\n}\n\nexport function extractFromSanitySchema(\n sanitySchema: CompiledSchema,\n extractOptions: {nonNullDocumentFields?: boolean; withUnionCache?: boolean} = {},\n): ApiSpecification {\n const {nonNullDocumentFields, withUnionCache} = extractOptions\n const unionRecursionGuards = new Set<string>()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const unionDefinitionCache = new Map<string, any>()\n const hasErrors =\n sanitySchema._validation &&\n sanitySchema._validation.some((group) =>\n group.problems.some((problem) => problem.severity === 'error'),\n )\n\n if (hasErrors && Array.isArray(sanitySchema._validation)) {\n throw new SchemaError(sanitySchema._validation)\n }\n\n const sanityTypes = sanitySchema._original?.types || []\n const typeNames = sanitySchema.getTypeNames()\n const unionTypes: ConvertedUnion[] = []\n const types: ConvertedType[] = []\n\n for (const typeName of typeNames) {\n const schemaType = sanitySchema.get(typeName)\n if (schemaType === undefined) {\n continue\n }\n if (!isBaseType(schemaType)) {\n continue\n }\n\n const convertedType = convertType(schemaType)\n types.push(convertedType)\n }\n\n const withUnions = [...types, ...unionTypes]\n return {interfaces: [getDocumentInterfaceDefinition()], types: withUnions}\n\n function isTopLevelType(typeName: string): boolean {\n return typeNames.includes(typeName)\n }\n\n function mapFieldType(field: ObjectField | ObjectFieldType | SchemaType): string {\n if (!field.type) {\n throw new Error('Field has no type!')\n }\n\n const jsonType = 'jsonType' in field ? field.jsonType : ''\n const isScalar = scalars.has(jsonType)\n if (isScalar && jsonType === 'number') {\n return hasValidationFlag(field, 'integer') ? 'Int' : 'Float'\n } else if (isScalar) {\n return getTypeName(jsonType)\n }\n\n const type = field.type.type || field.type\n\n // In the case of nested scalars, recurse (markdown -> longText -> text -> string)\n if (type.type) {\n return mapFieldType(type)\n }\n\n switch (type.name) {\n case 'number': {\n return hasValidationFlag(field, 'integer') ? 'Int' : 'Float'\n }\n default: {\n return getTypeName(type.name)\n }\n }\n }\n\n function isArrayType(type: ObjectField | SchemaType): type is ArraySchemaType {\n return Boolean(\n ('jsonType' in type && type.jsonType === 'array') ||\n (type.type && type.type.jsonType === 'array'),\n )\n }\n\n function _convertType(\n type: ObjectField | SchemaType,\n parent: string,\n options: {isField?: boolean},\n ): ConvertedType {\n let name: string | undefined\n if (type.type) {\n name = type.type.name\n } else if ('jsonType' in type) {\n name = type.jsonType\n }\n\n if (isReference(type)) {\n return getReferenceDefinition(type)\n }\n\n if (isArrayType(type)) {\n return getArrayDefinition(type, parent, options)\n }\n\n if (name === 'document') {\n return getDocumentDefinition(type as ObjectSchemaType)\n }\n\n if (name === 'block' || name === 'object') {\n return getObjectDefinition(type, parent)\n }\n\n if (hasFields(type)) {\n return getObjectDefinition(type, parent)\n }\n\n return {\n description: getDescription(type),\n type: mapFieldType(type),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as any\n }\n\n function convertType(\n type: ObjectField | SchemaType,\n parent?: string,\n props: Partial<Deprecation> & {fieldName?: string} = {},\n ): ConvertedType {\n const mapped = _convertType(type, parent || '', {isField: Boolean(props.fieldName)})\n const gqlName = props.fieldName || mapped.name\n const originalName = type.name\n const original = gqlName === originalName ? {} : {originalName: originalName}\n const crossDatasetReferenceMetadata = getCrossDatasetReferenceMetadata(type)\n\n return {\n ...getDeprecation(type.type),\n ...props,\n ...mapped,\n ...original,\n ...(crossDatasetReferenceMetadata && {crossDatasetReferenceMetadata}),\n }\n }\n\n function isField(def: ObjectField | SchemaType): def is ObjectField {\n return !('jsonType' in def) || !def.jsonType\n }\n\n function getObjectDefinition(def: ObjectField | SchemaType, parent?: string): ConvertedType {\n const isInline = isField(def)\n const isDocument = def.type ? def.type.name === 'document' : false\n const actualType = isInline ? def.type : def\n\n if (typeNeedsHoisting(actualType)) {\n throw createLiftTypeError(def.name, parent || '', actualType.name)\n }\n\n if (isInline && parent && def.type.name === 'object') {\n throw createLiftTypeError(def.name, parent)\n }\n\n if (parent && def.type && isTopLevelType(def.type.name)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return {type: getTypeName(def.type.name)} as any\n }\n\n const name = `${parent || ''}${getTypeName(def.name)}`\n const fields = collectFields(def)\n const firstUnprefixed = Math.max(\n 0,\n fields.findIndex((field) => field.name[0] !== '_'),\n )\n\n const keyField = createStringField('_key')\n\n fields.splice(firstUnprefixed, 0, keyField)\n\n if (!isDocument) {\n fields.splice(firstUnprefixed + 1, 0, createStringField('_type'))\n }\n\n const objectIsBlock = isBlockType(def)\n const objectFields = objectIsBlock\n ? fields.filter((field) => !disabledBlockFields.has(field.name))\n : fields\n\n return {\n _internal: {\n ...getDeprecation(def),\n },\n description: getDescription(def),\n fields: objectFields.map((field) =>\n isArrayOfBlocks(field)\n ? buildRawField(field, name)\n : (convertType(field, name, {\n fieldName: field.name,\n ...getDeprecation(def),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }) as any),\n ),\n kind: 'Type',\n name,\n type: 'Object',\n }\n }\n\n function buildRawField(field: ObjectField, parentName: string) {\n return {\n ...convertType(field, parentName, {fieldName: `${field.name}Raw`}),\n isRawAlias: true,\n type: 'JSON',\n }\n }\n\n function createStringField(name: string): ObjectField {\n return {\n name,\n type: {\n jsonType: 'string',\n name: 'string',\n type: {jsonType: 'string', name: 'string', type: undefined},\n },\n }\n }\n\n function collectFields(def: ObjectField | SchemaType) {\n const fields = gatherAllFields(def)\n if (fields.length > 0) {\n return fields\n }\n\n const extended = getBaseType(sanitySchema, def.name as IntrinsicTypeName)\n return gatherAllFields(extended)\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function getReferenceDefinition(def: SchemaType): any {\n const base = {description: getDescription(def), isReference: true}\n const candidates = arrayify(gatherAllReferenceCandidates(def))\n if (candidates.length === 0) {\n throw new Error('No candidates for reference')\n }\n\n if (candidates.length === 1) {\n return {type: getTypeName(candidates[0].type.name), ...base}\n }\n\n const allTypeNames = candidates.map((c) => getTypeName(c.type.name))\n const targetTypes = [...new Set(allTypeNames)].toSorted()\n const name = targetTypes.join('Or')\n\n // Register the union type if we haven't seen it before\n if (!unionTypes.some((item) => item.name === name)) {\n unionTypes.push({\n kind: 'Union',\n name,\n types: targetTypes,\n })\n }\n\n return {\n type: name,\n ...base,\n }\n }\n\n function getArrayDefinition(\n def: ArraySchemaType,\n parent: string,\n options: {isField?: boolean} = {},\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): any {\n const base = {description: getDescription(def), kind: 'List'}\n const name = !options.isField && def.name ? {name: getTypeName(def.name)} : {}\n const candidates = def.type?.type && 'of' in def.type ? arrayify(def.type.of) : def.of\n\n return candidates.length === 1\n ? {\n children: getArrayChildDefinition(candidates[0], def),\n ...base,\n ...name,\n }\n : {\n children: getUnionDefinition(candidates, def, {grandParent: parent}),\n ...base,\n ...name,\n }\n }\n\n function getArrayChildDefinition(child: SchemaType, arrayDef: SchemaType) {\n if (typeNeedsHoisting(child)) {\n // Seems to be inline? Should be hoisted?\n throw createLiftTypeError(child.name, arrayDef.name)\n }\n\n if (isReference(child)) {\n return getReferenceDefinition(child)\n }\n\n // In the case of nested scalars, recurse (markdown -> longText -> text -> string)\n if (scalars.has(child.jsonType) && !scalars.has(child.name)) {\n return {type: mapFieldType(child)}\n }\n\n return {type: getTypeName(child.name)}\n }\n\n function typeNeedsHoisting(type: SchemaType & {isCustomized?: boolean}): boolean {\n if (type.name === 'object') {\n return true\n }\n\n if (type.jsonType === 'object' && !isTopLevelType(type.name)) {\n return true\n }\n\n if (type.isCustomized && !isTopLevelType(type.name)) {\n return true\n }\n\n if (type.isCustomized && disallowedCustomizedMembers.has(type.name)) {\n return true\n }\n\n return false\n }\n\n function getUnionDefinition(\n candidates: ObjectSchemaType[],\n parent: SchemaType,\n options: {grandParent?: string} = {},\n ) {\n if (candidates.length < 2) {\n throw new Error('Not enough candidates for a union type')\n }\n\n // #1482: When creating union definition do not get caught in recursion loop\n // for types that reference themselves\n const guardPathName = `${typeof parent === 'object' ? parent.name : parent}`\n if (unionRecursionGuards.has(guardPathName)) {\n return {}\n }\n\n const unionCacheKey = `${options.grandParent}-${guardPathName}-${candidates\n .map((c) => c.type?.name)\n .join('-')}`\n if (withUnionCache && unionDefinitionCache.has(unionCacheKey)) {\n return unionDefinitionCache.get(unionCacheKey)\n }\n\n try {\n unionRecursionGuards.add(guardPathName)\n\n for (const [i, def] of candidates.entries()) {\n if (typeNeedsHoisting(def)) {\n throw createLiftTypeArrayError(\n i,\n parent.name,\n def.type ? def.type.name : def.name,\n options.grandParent,\n )\n }\n }\n\n const converted = candidates.map((def) => convertType(def))\n\n const getName = (def: {type: string | {name: string}}): string =>\n typeof def.type === 'string' ? def.type : def.type.name\n\n // We might end up with union types being returned - these needs to be flattened\n // so that an ImageOr(PersonOrPet) becomes ImageOrPersonOrPet\n // eslint-disable-next-line unicorn/no-array-reduce\n const flattened = converted.reduce(\n (acc, candidate) => {\n const union = unionTypes.find((item) => item.name === candidate.type)\n return union\n ? // eslint-disable-next-line unicorn/prefer-spread\n acc.concat(union.types.map((type) => ({isReference: candidate.isReference, type})))\n : [...acc, candidate]\n },\n [] as {isReference?: boolean; name?: string; type: string | {name: string}}[],\n )\n\n let allCandidatesAreDocuments = true\n const refs: (string | {name: string})[] = []\n const inlineObjs: string[] = []\n const allTypeNames: string[] = []\n for (const def of flattened) {\n if (def.isReference) {\n refs.push(def.type)\n }\n if (!isReference) {\n inlineObjs.push(def.name || '')\n }\n\n const typeName = typeof def.type === 'string' ? def.type : def.type.name\n\n // Here we remove duplicates, as they might appear twice due to in-line usage of types as well as references\n if (def.name || def.type) {\n allTypeNames.push(def.isReference ? typeName : def.name || '')\n }\n\n const typeDef = sanityTypes.find((type) => type.name === getName(def))\n if (!typeDef || typeDef.type !== 'document') {\n allCandidatesAreDocuments = false\n }\n }\n\n const interfaces = allCandidatesAreDocuments ? ['Document'] : undefined\n const possibleTypes = [...new Set(allTypeNames)].toSorted()\n\n if (possibleTypes.length < 2) {\n throw new Error(`Not enough types for a union type. Parent: ${parent.name}`)\n }\n\n const name = possibleTypes.join('Or')\n\n if (!unionTypes.some((item) => item.name === name)) {\n unionTypes.push({\n interfaces,\n kind: 'Union',\n name,\n types: possibleTypes,\n })\n }\n\n const references = refs.length > 0 ? refs : undefined\n const inlineObjects = inlineObjs.length > 0 ? inlineObjs : undefined\n\n const unionDefinition = isReference(parent)\n ? {references, type: name}\n : {inlineObjects, references, type: name}\n\n unionDefinitionCache.set(unionCacheKey, unionDefinition)\n return unionDefinition\n } finally {\n unionRecursionGuards.delete(guardPathName)\n }\n }\n\n function getDocumentDefinition(def: ObjectSchemaType) {\n const objectDef = getObjectDefinition(def)\n const fields = [...getDocumentInterfaceFields(def), ...objectDef.fields]\n\n return {...objectDef, fields, interfaces: ['Document']}\n }\n\n function getDocumentInterfaceDefinition(): ConvertedInterface {\n return {\n description: 'A Sanity document',\n fields: getDocumentInterfaceFields(),\n kind: 'Interface',\n name: 'Document',\n }\n }\n\n function getDocumentInterfaceFields(type?: ObjectSchemaType): ConvertedFieldDefinition[] {\n const isNullable = typeof nonNullDocumentFields === 'boolean' ? !nonNullDocumentFields : true\n return [\n {\n description: 'Document ID',\n fieldName: '_id',\n isNullable,\n type: 'ID',\n ...getDeprecation(type),\n },\n {\n description: 'Document type',\n fieldName: '_type',\n isNullable,\n type: 'String',\n ...getDeprecation(type),\n },\n {\n description: 'Date the document was created',\n fieldName: '_createdAt',\n isNullable,\n type: 'Datetime',\n ...getDeprecation(type),\n },\n {\n description: 'Date the document was last modified',\n fieldName: '_updatedAt',\n isNullable,\n type: 'Datetime',\n ...getDeprecation(type),\n },\n {\n description: 'Current document revision',\n fieldName: '_rev',\n isNullable,\n type: 'String',\n ...getDeprecation(type),\n },\n ]\n }\n\n function arrayify(thing: unknown) {\n if (Array.isArray(thing)) {\n return thing\n }\n\n return thing === null || thing === undefined ? [] : [thing]\n }\n\n function hasValidationFlag(\n field: ObjectField | ObjectFieldType | SchemaType,\n flag: string,\n ): boolean {\n return (\n 'validation' in field &&\n Array.isArray(field.validation) &&\n field.validation.some(\n (rule) => rule && '_rules' in rule && rule._rules.some((item) => item.flag === flag),\n )\n )\n }\n\n function getDescription(type: ObjectField | SchemaType): string | undefined {\n const description = type.type && type.type.description\n return typeof description === 'string' ? description : undefined\n }\n\n function gatherAllReferenceCandidates(type: SchemaType): ObjectSchemaType[] {\n const allFields = gatherReferenceCandidates(type)\n return uniqBy(allFields, 'name')\n }\n\n function gatherReferenceCandidates(type: SchemaType): ObjectSchemaType[] {\n const refTo = 'to' in type ? type.to : []\n return 'type' in type && type.type ? [...gatherReferenceCandidates(type.type), ...refTo] : refTo\n }\n\n function gatherAllFields(type: ObjectField | SchemaType) {\n const allFields = gatherFields(type)\n return uniqBy(allFields, 'name')\n }\n\n function gatherFields(type: ObjectField | SchemaType): ObjectField[] {\n if ('fields' in type) {\n return type.type ? [...gatherFields(type.type), ...type.fields] : type.fields\n }\n\n return []\n }\n\n function hasFieldsLikeShape(type: unknown): type is {fields: unknown} {\n return typeof type === 'object' && type !== null && 'fields' in type\n }\n\n function hasArrayOfFields(type: unknown): type is {fields: ObjectField[]} {\n return hasFieldsLikeShape(type) && Array.isArray(type.fields)\n }\n\n function hasFields(type: ObjectField | SchemaType): boolean {\n if (hasArrayOfFields(type)) {\n return gatherAllFields(type).length > 0\n }\n\n return 'type' in type && type.type ? hasFields(type.type) : false\n }\n}\n\nfunction createLiftTypeArrayError(\n index: number,\n parent: string,\n inlineType = 'object',\n grandParent = '',\n) {\n const helpUrl = generateHelpUrl(SCHEMA_LIFT_ANONYMOUS_OBJECT_TYPE)\n const context = [grandParent, parent].filter(Boolean).join('/')\n return new HelpfulError(\n oneline`\n Encountered anonymous inline ${inlineType} at index ${index} for type/field ${context}.\n To use this type with GraphQL you will need to create a top-level schema type for it.\n See ${helpUrl}`,\n helpUrl,\n )\n}\n\nfunction createLiftTypeError(typeName: string, parent: string, inlineType = 'object') {\n const helpUrl = generateHelpUrl(SCHEMA_LIFT_ANONYMOUS_OBJECT_TYPE)\n return new HelpfulError(\n oneline`\n Encountered anonymous inline ${inlineType} \"${typeName}\" for field/type \"${parent}\".\n To use this field with GraphQL you will need to create a top-level schema type for it.\n See ${helpUrl}`,\n helpUrl,\n )\n}\n\nclass HelpfulError extends Error {\n helpUrl?: string\n\n constructor(message: string, helpUrl?: string) {\n super(message)\n this.name = 'HelpfulError'\n this.helpUrl = helpUrl\n }\n}\n\nfunction getDeprecation(type?: ObjectField | ObjectFieldType | SchemaType): Partial<Deprecation> {\n return isDeprecationConfiguration(type)\n ? {\n deprecationReason: type.deprecated.reason,\n }\n : {}\n}\n"],"names":["generateHelpUrl","Schema","isDeprecationConfiguration","startCase","uniqBy","oneline","SCHEMA_LIFT_ANONYMOUS_OBJECT_TYPE","SchemaError","skipTypes","Set","allowedJsonTypes","disallowedCustomizedMembers","disabledBlockFields","scalars","getBaseType","baseSchema","typeName","compile","parent","types","name","to","type","get","options","hotspot","getTypeName","str","replaceAll","isBaseType","jsonType","has","isReference","isBlockType","typeDef","hasBlockParent","Boolean","isArrayOfBlocks","of","some","item","isType","isCrossDatasetReference","getCrossDatasetReferenceMetadata","getTypeNames","map","t","filter","getDataset","dataset","typeNames","extractFromSanitySchema","sanitySchema","extractOptions","nonNullDocumentFields","withUnionCache","unionRecursionGuards","unionDefinitionCache","Map","hasErrors","_validation","group","problems","problem","severity","Array","isArray","sanityTypes","_original","unionTypes","schemaType","undefined","convertedType","convertType","push","withUnions","interfaces","getDocumentInterfaceDefinition","isTopLevelType","includes","mapFieldType","field","Error","isScalar","hasValidationFlag","isArrayType","_convertType","getReferenceDefinition","getArrayDefinition","getDocumentDefinition","getObjectDefinition","hasFields","description","getDescription","props","mapped","isField","fieldName","gqlName","originalName","original","crossDatasetReferenceMetadata","getDeprecation","def","isInline","isDocument","actualType","typeNeedsHoisting","createLiftTypeError","fields","collectFields","firstUnprefixed","Math","max","findIndex","keyField","createStringField","splice","objectIsBlock","objectFields","_internal","buildRawField","kind","parentName","isRawAlias","gatherAllFields","length","extended","base","candidates","arrayify","gatherAllReferenceCandidates","allTypeNames","c","targetTypes","toSorted","join","children","getArrayChildDefinition","getUnionDefinition","grandParent","child","arrayDef","isCustomized","guardPathName","unionCacheKey","add","i","entries","createLiftTypeArrayError","converted","getName","flattened","reduce","acc","candidate","union","find","concat","allCandidatesAreDocuments","refs","inlineObjs","possibleTypes","references","inlineObjects","unionDefinition","set","delete","objectDef","getDocumentInterfaceFields","isNullable","thing","flag","validation","rule","_rules","allFields","gatherReferenceCandidates","refTo","gatherFields","hasFieldsLikeShape","hasArrayOfFields","index","inlineType","helpUrl","context","HelpfulError","message","deprecationReason","deprecated","reason"],"mappings":"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"}
@@ -0,0 +1,150 @@
1
+ import { isMainThread } from 'node:worker_threads';
2
+ import { findStudioConfigPath, getCliConfig, studioWorkerTask, subdebug } from '@sanity/cli-core';
3
+ import { isSchemaError } from '../../util/isSchemaError.js';
4
+ import { extractFromSanitySchema } from './extractFromSanitySchema.js';
5
+ import { resolveGraphQLApis } from './resolveGraphQLApisFromWorkspaces.js';
6
+ import { SchemaError } from './SchemaError.js';
7
+ // ---------------------------------------------------------------------------
8
+ // Main-thread orchestrator
9
+ // ---------------------------------------------------------------------------
10
+ export async function extractGraphQLAPIs(workDir, options) {
11
+ if (!isMainThread) {
12
+ throw new Error('extractGraphQLAPIs() must be called from the main thread');
13
+ }
14
+ const [cliConfig, configPath] = await Promise.all([
15
+ getCliConfig(workDir),
16
+ findStudioConfigPath(workDir)
17
+ ]);
18
+ const result = await studioWorkerTask(new URL('extractGraphQLAPIs.worker.js', import.meta.url), {
19
+ name: 'extractGraphQLAPIs',
20
+ studioRootPath: workDir,
21
+ workerData: {
22
+ cliConfig: extractGraphQLConfig(cliConfig),
23
+ configPath,
24
+ nonNullDocumentFieldsFlag: options.nonNullDocumentFieldsFlag,
25
+ withUnionCache: options.withUnionCache,
26
+ workDir
27
+ }
28
+ });
29
+ if (result.configErrors?.length) {
30
+ throw new SchemaError(result.configErrors);
31
+ }
32
+ return result.apis;
33
+ }
34
+ function extractGraphQLConfig(config) {
35
+ return {
36
+ graphql: config.graphql
37
+ };
38
+ }
39
+ const debug = subdebug('graphql:extractGraphQLAPIs:worker');
40
+ export async function extractGraphQLAPIsWorker(port, data, deps) {
41
+ const { cliConfig, configPath, nonNullDocumentFieldsFlag, withUnionCache, workDir } = data;
42
+ // Load workspaces — this loads sanity.config.ts through Vite, caching `sanity` in the process
43
+ let workspaces;
44
+ try {
45
+ workspaces = await deps.getStudioWorkspaces(configPath);
46
+ } catch (err) {
47
+ if (isSchemaError(err)) {
48
+ const validation = err.schema._validation ?? [];
49
+ const configErrors = validation.map((g)=>({
50
+ ...g,
51
+ problems: g.problems.filter((p)=>p.severity === 'error')
52
+ })).filter((g)=>g.problems.length > 0);
53
+ // Only treat error-severity problems as schema errors. If the validation
54
+ // only contains warnings, re-throw the original error so it isn't silently
55
+ // swallowed — warnings alone should not block deployment.
56
+ if (configErrors.length === 0) {
57
+ throw err;
58
+ }
59
+ port.postMessage({
60
+ apis: [],
61
+ configErrors
62
+ });
63
+ return;
64
+ }
65
+ throw err;
66
+ }
67
+ // Resolve which GraphQL APIs to deploy from workspace + CLI config
68
+ const resolvedApis = resolveGraphQLApis({
69
+ cliConfig,
70
+ workspaces
71
+ });
72
+ // Get createSchema from sanity (0ms — already cached by ViteNodeRunner)
73
+ const { createSchema } = await deps.resolveLocalPackage('sanity', workDir);
74
+ // Build default schema to identify built-in types that should be filtered out
75
+ const defaultSchema = createSchema({
76
+ name: 'default',
77
+ types: []
78
+ });
79
+ const defaultTypes = defaultSchema.getTypeNames();
80
+ const isCustomType = (type)=>!defaultTypes.includes(type.name);
81
+ // For each API: create compiled schema, extract GraphQL spec, catch SchemaError
82
+ const results = [];
83
+ for (const api of resolvedApis){
84
+ const apiBase = {
85
+ dataset: api.dataset,
86
+ filterSuffix: api.filterSuffix,
87
+ generation: api.generation,
88
+ id: api.id,
89
+ nonNullDocumentFields: api.nonNullDocumentFields,
90
+ playground: api.playground,
91
+ projectId: api.projectId,
92
+ tag: api.tag
93
+ };
94
+ try {
95
+ const schema = createSchema({
96
+ name: 'default',
97
+ types: api.schemaTypes.filter((type)=>isCustomType(type))
98
+ });
99
+ const extracted = extractFromSanitySchema(schema, {
100
+ nonNullDocumentFields: nonNullDocumentFieldsFlag === undefined ? api.nonNullDocumentFields : nonNullDocumentFieldsFlag,
101
+ withUnionCache
102
+ });
103
+ results.push({
104
+ ...apiBase,
105
+ extracted
106
+ });
107
+ } catch (err) {
108
+ if (err instanceof SchemaError) {
109
+ results.push({
110
+ ...apiBase,
111
+ schemaErrors: err.problemGroups
112
+ });
113
+ } else if (isSchemaError(err)) {
114
+ // Sanity's internal schema error from createSchema() — different class from our
115
+ // SchemaError, but carries structured validation data on err.schema._validation.
116
+ // This is low-probability since getStudioWorkspaces() above already validated,
117
+ // but createSchema() on filtered types could still surface issues.
118
+ const validation = err.schema._validation ?? [];
119
+ const errorGroups = validation.map((g)=>({
120
+ ...g,
121
+ problems: g.problems.filter((p)=>p.severity === 'error')
122
+ })).filter((g)=>g.problems.length > 0);
123
+ if (errorGroups.length > 0) {
124
+ results.push({
125
+ ...apiBase,
126
+ schemaErrors: errorGroups
127
+ });
128
+ } else {
129
+ // Warning-only or empty _validation — fall through to generic error with the
130
+ // message, matching the global path which re-throws warning-only errors.
131
+ results.push({
132
+ ...apiBase,
133
+ extractionError: err instanceof Error ? err.message : String(err)
134
+ });
135
+ }
136
+ } else {
137
+ debug('Schema extraction failed for %s/%s: %O', apiBase.dataset, apiBase.tag ?? 'default', err);
138
+ results.push({
139
+ ...apiBase,
140
+ extractionError: err instanceof Error ? err.message : String(err)
141
+ });
142
+ }
143
+ }
144
+ }
145
+ port.postMessage({
146
+ apis: results
147
+ });
148
+ }
149
+
150
+ //# sourceMappingURL=extractGraphQLAPIs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/actions/graphql/extractGraphQLAPIs.ts"],"sourcesContent":["import {isMainThread, type MessagePort} from 'node:worker_threads'\n\nimport {\n type CliConfig,\n findStudioConfigPath,\n getCliConfig,\n studioWorkerTask,\n subdebug,\n} from '@sanity/cli-core'\n\nimport {isSchemaError} from '../../util/isSchemaError.js'\nimport {extractFromSanitySchema} from './extractFromSanitySchema.js'\nimport {resolveGraphQLApis, type Workspace} from './resolveGraphQLApisFromWorkspaces.js'\nimport {SchemaError} from './SchemaError.js'\nimport {\n type ExtractedGraphQLAPI,\n type GraphQLAPIConfig,\n type GraphQLWorkerResult,\n type SchemaDefinitionish,\n} from './types.js'\n\n// ---------------------------------------------------------------------------\n// Main-thread orchestrator\n// ---------------------------------------------------------------------------\n\nexport async function extractGraphQLAPIs(\n workDir: string,\n options: {nonNullDocumentFieldsFlag?: boolean; withUnionCache?: boolean},\n): Promise<ExtractedGraphQLAPI[]> {\n if (!isMainThread) {\n throw new Error('extractGraphQLAPIs() must be called from the main thread')\n }\n\n const [cliConfig, configPath] = await Promise.all([\n getCliConfig(workDir),\n findStudioConfigPath(workDir),\n ])\n\n const result = await studioWorkerTask<GraphQLWorkerResult>(\n new URL('extractGraphQLAPIs.worker.js', import.meta.url),\n {\n name: 'extractGraphQLAPIs',\n studioRootPath: workDir,\n workerData: {\n cliConfig: extractGraphQLConfig(cliConfig),\n configPath,\n nonNullDocumentFieldsFlag: options.nonNullDocumentFieldsFlag,\n withUnionCache: options.withUnionCache,\n workDir,\n },\n },\n )\n\n if (result.configErrors?.length) {\n throw new SchemaError(result.configErrors)\n }\n\n return result.apis\n}\n\nfunction extractGraphQLConfig(config: CliConfig) {\n return {\n graphql: config.graphql,\n }\n}\n\n// ---------------------------------------------------------------------------\n// Worker logic (runs inside the worker thread)\n// ---------------------------------------------------------------------------\n\nexport interface ExtractWorkerData {\n configPath: string\n workDir: string\n\n cliConfig?: {graphql?: GraphQLAPIConfig[]}\n nonNullDocumentFieldsFlag?: boolean\n withUnionCache?: boolean\n}\n\nexport interface ExtractWorkerDeps {\n getStudioWorkspaces: (configPath: string) => Promise<unknown[]>\n resolveLocalPackage: <T>(name: string, workDir: string) => Promise<T>\n}\n\nconst debug = subdebug('graphql:extractGraphQLAPIs:worker')\n\nexport async function extractGraphQLAPIsWorker(\n port: MessagePort,\n data: ExtractWorkerData,\n deps: ExtractWorkerDeps,\n): Promise<void> {\n const {cliConfig, configPath, nonNullDocumentFieldsFlag, withUnionCache, workDir} = data\n\n // Load workspaces — this loads sanity.config.ts through Vite, caching `sanity` in the process\n let workspaces: Workspace[]\n try {\n workspaces = (await deps.getStudioWorkspaces(configPath)) as Workspace[]\n } catch (err) {\n if (isSchemaError(err)) {\n const validation = err.schema._validation ?? []\n const configErrors = validation\n .map((g) => ({...g, problems: g.problems.filter((p) => p.severity === 'error')}))\n .filter((g) => g.problems.length > 0)\n\n // Only treat error-severity problems as schema errors. If the validation\n // only contains warnings, re-throw the original error so it isn't silently\n // swallowed — warnings alone should not block deployment.\n if (configErrors.length === 0) {\n throw err\n }\n\n port.postMessage({apis: [], configErrors} satisfies GraphQLWorkerResult)\n return\n }\n throw err\n }\n\n // Resolve which GraphQL APIs to deploy from workspace + CLI config\n const resolvedApis = resolveGraphQLApis({cliConfig, workspaces})\n\n // Get createSchema from sanity (0ms — already cached by ViteNodeRunner)\n const {createSchema} = await deps.resolveLocalPackage<typeof import('sanity')>('sanity', workDir)\n\n // Build default schema to identify built-in types that should be filtered out\n const defaultSchema = createSchema({name: 'default', types: []})\n const defaultTypes = defaultSchema.getTypeNames()\n const isCustomType = (type: SchemaDefinitionish) => !defaultTypes.includes(type.name)\n\n // For each API: create compiled schema, extract GraphQL spec, catch SchemaError\n const results: ExtractedGraphQLAPI[] = []\n\n for (const api of resolvedApis) {\n const apiBase: Omit<ExtractedGraphQLAPI, 'extracted' | 'extractionError' | 'schemaErrors'> = {\n dataset: api.dataset,\n filterSuffix: api.filterSuffix,\n generation: api.generation,\n id: api.id,\n nonNullDocumentFields: api.nonNullDocumentFields,\n playground: api.playground,\n projectId: api.projectId,\n tag: api.tag,\n }\n\n try {\n const schema = createSchema({\n name: 'default',\n types: api.schemaTypes.filter((type) => isCustomType(type)),\n })\n\n const extracted = extractFromSanitySchema(schema, {\n nonNullDocumentFields:\n nonNullDocumentFieldsFlag === undefined\n ? api.nonNullDocumentFields\n : nonNullDocumentFieldsFlag,\n withUnionCache,\n })\n\n results.push({...apiBase, extracted})\n } catch (err) {\n if (err instanceof SchemaError) {\n results.push({...apiBase, schemaErrors: err.problemGroups})\n } else if (isSchemaError(err)) {\n // Sanity's internal schema error from createSchema() — different class from our\n // SchemaError, but carries structured validation data on err.schema._validation.\n // This is low-probability since getStudioWorkspaces() above already validated,\n // but createSchema() on filtered types could still surface issues.\n const validation = err.schema._validation ?? []\n const errorGroups = validation\n .map((g) => ({...g, problems: g.problems.filter((p) => p.severity === 'error')}))\n .filter((g) => g.problems.length > 0)\n if (errorGroups.length > 0) {\n results.push({...apiBase, schemaErrors: errorGroups})\n } else {\n // Warning-only or empty _validation — fall through to generic error with the\n // message, matching the global path which re-throws warning-only errors.\n results.push({\n ...apiBase,\n extractionError: err instanceof Error ? err.message : String(err),\n })\n }\n } else {\n debug(\n 'Schema extraction failed for %s/%s: %O',\n apiBase.dataset,\n apiBase.tag ?? 'default',\n err,\n )\n results.push({\n ...apiBase,\n extractionError: err instanceof Error ? err.message : String(err),\n })\n }\n }\n }\n\n port.postMessage({apis: results} satisfies GraphQLWorkerResult)\n}\n"],"names":["isMainThread","findStudioConfigPath","getCliConfig","studioWorkerTask","subdebug","isSchemaError","extractFromSanitySchema","resolveGraphQLApis","SchemaError","extractGraphQLAPIs","workDir","options","Error","cliConfig","configPath","Promise","all","result","URL","url","name","studioRootPath","workerData","extractGraphQLConfig","nonNullDocumentFieldsFlag","withUnionCache","configErrors","length","apis","config","graphql","debug","extractGraphQLAPIsWorker","port","data","deps","workspaces","getStudioWorkspaces","err","validation","schema","_validation","map","g","problems","filter","p","severity","postMessage","resolvedApis","createSchema","resolveLocalPackage","defaultSchema","types","defaultTypes","getTypeNames","isCustomType","type","includes","results","api","apiBase","dataset","filterSuffix","generation","id","nonNullDocumentFields","playground","projectId","tag","schemaTypes","extracted","undefined","push","schemaErrors","problemGroups","errorGroups","extractionError","message","String"],"mappings":"AAAA,SAAQA,YAAY,QAAyB,sBAAqB;AAElE,SAEEC,oBAAoB,EACpBC,YAAY,EACZC,gBAAgB,EAChBC,QAAQ,QACH,mBAAkB;AAEzB,SAAQC,aAAa,QAAO,8BAA6B;AACzD,SAAQC,uBAAuB,QAAO,+BAA8B;AACpE,SAAQC,kBAAkB,QAAuB,wCAAuC;AACxF,SAAQC,WAAW,QAAO,mBAAkB;AAQ5C,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,OAAO,eAAeC,mBACpBC,OAAe,EACfC,OAAwE;IAExE,IAAI,CAACX,cAAc;QACjB,MAAM,IAAIY,MAAM;IAClB;IAEA,MAAM,CAACC,WAAWC,WAAW,GAAG,MAAMC,QAAQC,GAAG,CAAC;QAChDd,aAAaQ;QACbT,qBAAqBS;KACtB;IAED,MAAMO,SAAS,MAAMd,iBACnB,IAAIe,IAAI,gCAAgC,YAAYC,GAAG,GACvD;QACEC,MAAM;QACNC,gBAAgBX;QAChBY,YAAY;YACVT,WAAWU,qBAAqBV;YAChCC;YACAU,2BAA2Bb,QAAQa,yBAAyB;YAC5DC,gBAAgBd,QAAQc,cAAc;YACtCf;QACF;IACF;IAGF,IAAIO,OAAOS,YAAY,EAAEC,QAAQ;QAC/B,MAAM,IAAInB,YAAYS,OAAOS,YAAY;IAC3C;IAEA,OAAOT,OAAOW,IAAI;AACpB;AAEA,SAASL,qBAAqBM,MAAiB;IAC7C,OAAO;QACLC,SAASD,OAAOC,OAAO;IACzB;AACF;AAoBA,MAAMC,QAAQ3B,SAAS;AAEvB,OAAO,eAAe4B,yBACpBC,IAAiB,EACjBC,IAAuB,EACvBC,IAAuB;IAEvB,MAAM,EAACtB,SAAS,EAAEC,UAAU,EAAEU,yBAAyB,EAAEC,cAAc,EAAEf,OAAO,EAAC,GAAGwB;IAEpF,8FAA8F;IAC9F,IAAIE;IACJ,IAAI;QACFA,aAAc,MAAMD,KAAKE,mBAAmB,CAACvB;IAC/C,EAAE,OAAOwB,KAAK;QACZ,IAAIjC,cAAciC,MAAM;YACtB,MAAMC,aAAaD,IAAIE,MAAM,CAACC,WAAW,IAAI,EAAE;YAC/C,MAAMf,eAAea,WAClBG,GAAG,CAAC,CAACC,IAAO,CAAA;oBAAC,GAAGA,CAAC;oBAAEC,UAAUD,EAAEC,QAAQ,CAACC,MAAM,CAAC,CAACC,IAAMA,EAAEC,QAAQ,KAAK;gBAAQ,CAAA,GAC7EF,MAAM,CAAC,CAACF,IAAMA,EAAEC,QAAQ,CAACjB,MAAM,GAAG;YAErC,yEAAyE;YACzE,2EAA2E;YAC3E,0DAA0D;YAC1D,IAAID,aAAaC,MAAM,KAAK,GAAG;gBAC7B,MAAMW;YACR;YAEAL,KAAKe,WAAW,CAAC;gBAACpB,MAAM,EAAE;gBAAEF;YAAY;YACxC;QACF;QACA,MAAMY;IACR;IAEA,mEAAmE;IACnE,MAAMW,eAAe1C,mBAAmB;QAACM;QAAWuB;IAAU;IAE9D,wEAAwE;IACxE,MAAM,EAACc,YAAY,EAAC,GAAG,MAAMf,KAAKgB,mBAAmB,CAA0B,UAAUzC;IAEzF,8EAA8E;IAC9E,MAAM0C,gBAAgBF,aAAa;QAAC9B,MAAM;QAAWiC,OAAO,EAAE;IAAA;IAC9D,MAAMC,eAAeF,cAAcG,YAAY;IAC/C,MAAMC,eAAe,CAACC,OAA8B,CAACH,aAAaI,QAAQ,CAACD,KAAKrC,IAAI;IAEpF,gFAAgF;IAChF,MAAMuC,UAAiC,EAAE;IAEzC,KAAK,MAAMC,OAAOX,aAAc;QAC9B,MAAMY,UAAuF;YAC3FC,SAASF,IAAIE,OAAO;YACpBC,cAAcH,IAAIG,YAAY;YAC9BC,YAAYJ,IAAII,UAAU;YAC1BC,IAAIL,IAAIK,EAAE;YACVC,uBAAuBN,IAAIM,qBAAqB;YAChDC,YAAYP,IAAIO,UAAU;YAC1BC,WAAWR,IAAIQ,SAAS;YACxBC,KAAKT,IAAIS,GAAG;QACd;QAEA,IAAI;YACF,MAAM7B,SAASU,aAAa;gBAC1B9B,MAAM;gBACNiC,OAAOO,IAAIU,WAAW,CAACzB,MAAM,CAAC,CAACY,OAASD,aAAaC;YACvD;YAEA,MAAMc,YAAYjE,wBAAwBkC,QAAQ;gBAChD0B,uBACE1C,8BAA8BgD,YAC1BZ,IAAIM,qBAAqB,GACzB1C;gBACNC;YACF;YAEAkC,QAAQc,IAAI,CAAC;gBAAC,GAAGZ,OAAO;gBAAEU;YAAS;QACrC,EAAE,OAAOjC,KAAK;YACZ,IAAIA,eAAe9B,aAAa;gBAC9BmD,QAAQc,IAAI,CAAC;oBAAC,GAAGZ,OAAO;oBAAEa,cAAcpC,IAAIqC,aAAa;gBAAA;YAC3D,OAAO,IAAItE,cAAciC,MAAM;gBAC7B,gFAAgF;gBAChF,iFAAiF;gBACjF,+EAA+E;gBAC/E,mEAAmE;gBACnE,MAAMC,aAAaD,IAAIE,MAAM,CAACC,WAAW,IAAI,EAAE;gBAC/C,MAAMmC,cAAcrC,WACjBG,GAAG,CAAC,CAACC,IAAO,CAAA;wBAAC,GAAGA,CAAC;wBAAEC,UAAUD,EAAEC,QAAQ,CAACC,MAAM,CAAC,CAACC,IAAMA,EAAEC,QAAQ,KAAK;oBAAQ,CAAA,GAC7EF,MAAM,CAAC,CAACF,IAAMA,EAAEC,QAAQ,CAACjB,MAAM,GAAG;gBACrC,IAAIiD,YAAYjD,MAAM,GAAG,GAAG;oBAC1BgC,QAAQc,IAAI,CAAC;wBAAC,GAAGZ,OAAO;wBAAEa,cAAcE;oBAAW;gBACrD,OAAO;oBACL,6EAA6E;oBAC7E,yEAAyE;oBACzEjB,QAAQc,IAAI,CAAC;wBACX,GAAGZ,OAAO;wBACVgB,iBAAiBvC,eAAe1B,QAAQ0B,IAAIwC,OAAO,GAAGC,OAAOzC;oBAC/D;gBACF;YACF,OAAO;gBACLP,MACE,0CACA8B,QAAQC,OAAO,EACfD,QAAQQ,GAAG,IAAI,WACf/B;gBAEFqB,QAAQc,IAAI,CAAC;oBACX,GAAGZ,OAAO;oBACVgB,iBAAiBvC,eAAe1B,QAAQ0B,IAAIwC,OAAO,GAAGC,OAAOzC;gBAC/D;YACF;QACF;IACF;IAEAL,KAAKe,WAAW,CAAC;QAACpB,MAAM+B;IAAO;AACjC"}
@@ -0,0 +1,12 @@
1
+ import { isMainThread, parentPort, workerData } from 'node:worker_threads';
2
+ import { getStudioWorkspaces, resolveLocalPackage } from '@sanity/cli-core';
3
+ import { extractGraphQLAPIsWorker } from './extractGraphQLAPIs.js';
4
+ if (isMainThread || !parentPort) {
5
+ throw new Error('This module must be run as a worker thread');
6
+ }
7
+ await extractGraphQLAPIsWorker(parentPort, workerData, {
8
+ getStudioWorkspaces,
9
+ resolveLocalPackage
10
+ });
11
+
12
+ //# sourceMappingURL=extractGraphQLAPIs.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/actions/graphql/extractGraphQLAPIs.worker.ts"],"sourcesContent":["import {isMainThread, parentPort, workerData} from 'node:worker_threads'\n\nimport {getStudioWorkspaces, resolveLocalPackage} from '@sanity/cli-core'\n\nimport {extractGraphQLAPIsWorker, type ExtractWorkerData} from './extractGraphQLAPIs.js'\n\nif (isMainThread || !parentPort) {\n throw new Error('This module must be run as a worker thread')\n}\n\nawait extractGraphQLAPIsWorker(parentPort, workerData as ExtractWorkerData, {\n getStudioWorkspaces,\n resolveLocalPackage,\n})\n"],"names":["isMainThread","parentPort","workerData","getStudioWorkspaces","resolveLocalPackage","extractGraphQLAPIsWorker","Error"],"mappings":"AAAA,SAAQA,YAAY,EAAEC,UAAU,EAAEC,UAAU,QAAO,sBAAqB;AAExE,SAAQC,mBAAmB,EAAEC,mBAAmB,QAAO,mBAAkB;AAEzE,SAAQC,wBAAwB,QAA+B,0BAAyB;AAExF,IAAIL,gBAAgB,CAACC,YAAY;IAC/B,MAAM,IAAIK,MAAM;AAClB;AAEA,MAAMD,yBAAyBJ,YAAYC,YAAiC;IAC1EC;IACAC;AACF"}
@@ -0,0 +1,226 @@
1
+ import flatten from 'lodash-es/flatten.js';
2
+ import { isNonUnion } from '../helpers.js';
3
+ const filterCreators = {
4
+ Boolean: createBooleanFilters,
5
+ Date: createDateFilters,
6
+ Datetime: createDateFilters,
7
+ Float: createNumberFilters,
8
+ ID: createIdFilters,
9
+ Integer: createNumberFilters,
10
+ Object: createObjectFilters,
11
+ String: createStringFilters,
12
+ Url: createStringFilters
13
+ };
14
+ export function generateTypeFilters(types) {
15
+ const queryable = types.filter((type)=>isNonUnion(type)).filter((type)=>type.type === 'Object' && type.interfaces && type.interfaces.includes('Document'));
16
+ return queryable.map((type)=>{
17
+ const name = `${type.name}Filter`;
18
+ const fields = flatten(type.fields.map((field)=>createFieldFilters(field))).filter(Boolean);
19
+ return {
20
+ fields: [
21
+ ...fields,
22
+ ...getDocumentFilters()
23
+ ],
24
+ kind: 'InputObject',
25
+ name
26
+ };
27
+ });
28
+ }
29
+ function createFieldFilters(field) {
30
+ if (filterCreators[field.type]) {
31
+ return filterCreators[field.type](field);
32
+ }
33
+ if (field.kind === 'List') {
34
+ return createListFilters();
35
+ }
36
+ if (field.isReference) {
37
+ return createReferenceFilters(field);
38
+ }
39
+ return createInlineTypeFilters();
40
+ }
41
+ function getFieldName(field, modifier = '') {
42
+ const suffix = modifier ? `_${modifier}` : '';
43
+ return `${field.fieldName}${suffix}`;
44
+ }
45
+ function getDocumentFilters() {
46
+ return [
47
+ {
48
+ constraint: {
49
+ comparator: 'REFERENCES'
50
+ },
51
+ description: 'All documents references the given document ID',
52
+ fieldName: 'references',
53
+ type: 'ID'
54
+ },
55
+ {
56
+ constraint: {
57
+ comparator: 'IS_DRAFT',
58
+ field: '_id'
59
+ },
60
+ description: 'All documents that are drafts',
61
+ fieldName: 'is_draft',
62
+ type: 'Boolean'
63
+ }
64
+ ];
65
+ }
66
+ function createIsDefinedFilter(field) {
67
+ return {
68
+ constraint: {
69
+ comparator: 'IS_DEFINED',
70
+ field: field.fieldName
71
+ },
72
+ description: 'All documents that have a value for this field',
73
+ fieldName: getFieldName(field, 'is_defined'),
74
+ type: 'Boolean'
75
+ };
76
+ }
77
+ function createEqualityFilter(field) {
78
+ return {
79
+ constraint: {
80
+ comparator: 'EQUALS',
81
+ field: field.fieldName
82
+ },
83
+ description: 'All documents that are equal to given value',
84
+ fieldName: getFieldName(field),
85
+ type: field.type
86
+ };
87
+ }
88
+ function createInequalityFilter(field) {
89
+ return {
90
+ constraint: {
91
+ comparator: 'NOT_EQUALS',
92
+ field: field.fieldName
93
+ },
94
+ description: 'All documents that are not equal to given value',
95
+ fieldName: getFieldName(field, 'not'),
96
+ type: field.type
97
+ };
98
+ }
99
+ function createDefaultFilters(field) {
100
+ return [
101
+ createEqualityFilter(field),
102
+ createInequalityFilter(field),
103
+ createIsDefinedFilter(field)
104
+ ];
105
+ }
106
+ function createGtLtFilters(field) {
107
+ return [
108
+ {
109
+ constraint: {
110
+ comparator: 'LT',
111
+ field: field.fieldName
112
+ },
113
+ description: 'All documents are less than given value',
114
+ fieldName: getFieldName(field, 'lt'),
115
+ type: field.type
116
+ },
117
+ {
118
+ constraint: {
119
+ comparator: 'LTE',
120
+ field: field.fieldName
121
+ },
122
+ description: 'All documents are less than or equal to given value',
123
+ fieldName: getFieldName(field, 'lte'),
124
+ type: field.type
125
+ },
126
+ {
127
+ constraint: {
128
+ comparator: 'GT',
129
+ field: field.fieldName
130
+ },
131
+ description: 'All documents are greater than given value',
132
+ fieldName: getFieldName(field, 'gt'),
133
+ type: field.type
134
+ },
135
+ {
136
+ constraint: {
137
+ comparator: 'GTE',
138
+ field: field.fieldName
139
+ },
140
+ description: 'All documents are greater than or equal to given value',
141
+ fieldName: getFieldName(field, 'gte'),
142
+ type: field.type
143
+ }
144
+ ];
145
+ }
146
+ function createBooleanFilters(field) {
147
+ return createDefaultFilters(field);
148
+ }
149
+ function createIdFilters(field) {
150
+ return createStringFilters(field);
151
+ }
152
+ function createDateFilters(field) {
153
+ return [
154
+ ...createDefaultFilters(field),
155
+ ...createGtLtFilters(field)
156
+ ];
157
+ }
158
+ function createStringFilters(field) {
159
+ return [
160
+ ...createDefaultFilters(field),
161
+ {
162
+ constraint: {
163
+ comparator: 'MATCHES',
164
+ field: field.fieldName
165
+ },
166
+ description: 'All documents contain (match) the given word/words',
167
+ fieldName: getFieldName(field, 'matches'),
168
+ type: 'String'
169
+ },
170
+ {
171
+ children: {
172
+ isNullable: false,
173
+ type: 'String'
174
+ },
175
+ constraint: {
176
+ comparator: 'IN',
177
+ field: field.fieldName
178
+ },
179
+ description: 'All documents match one of the given values',
180
+ fieldName: getFieldName(field, 'in'),
181
+ kind: 'List'
182
+ },
183
+ {
184
+ children: {
185
+ isNullable: false,
186
+ type: 'String'
187
+ },
188
+ constraint: {
189
+ comparator: 'NOT_IN',
190
+ field: field.fieldName
191
+ },
192
+ description: 'None of the values match any of the given values',
193
+ fieldName: getFieldName(field, 'not_in'),
194
+ kind: 'List'
195
+ }
196
+ ];
197
+ }
198
+ function createNumberFilters(field) {
199
+ return [
200
+ ...createDefaultFilters(field),
201
+ ...createGtLtFilters(field)
202
+ ];
203
+ }
204
+ function createObjectFilters(_field) {
205
+ return [];
206
+ }
207
+ function createListFilters() {
208
+ return [];
209
+ }
210
+ function createInlineTypeFilters() {
211
+ return [];
212
+ }
213
+ function createReferenceFilters(field) {
214
+ return [
215
+ {
216
+ constraint: {
217
+ comparator: 'EQUALS',
218
+ field: `${field.fieldName}._ref`
219
+ },
220
+ fieldName: getFieldName(field),
221
+ type: 'ID'
222
+ }
223
+ ];
224
+ }
225
+
226
+ //# sourceMappingURL=generateTypeFilters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/actions/graphql/gen1/generateTypeFilters.ts"],"sourcesContent":["import flatten from 'lodash-es/flatten.js'\n\nimport {isNonUnion} from '../helpers.js'\nimport {\n type ConvertedField,\n type ConvertedFieldDefinition,\n type ConvertedType,\n type ConvertedUnion,\n type InputFilterField,\n type InputObjectType,\n} from '../types.js'\n\ntype FilterCreator = (field: ConvertedField) => InputFilterField[]\n\nconst filterCreators: Record<string, FilterCreator> = {\n Boolean: createBooleanFilters,\n Date: createDateFilters,\n Datetime: createDateFilters,\n Float: createNumberFilters,\n ID: createIdFilters,\n Integer: createNumberFilters,\n Object: createObjectFilters,\n String: createStringFilters,\n Url: createStringFilters,\n}\n\nexport function generateTypeFilters(types: (ConvertedType | ConvertedUnion)[]): InputObjectType[] {\n const queryable = types\n .filter((type) => isNonUnion(type))\n .filter(\n (type) => type.type === 'Object' && type.interfaces && type.interfaces.includes('Document'),\n )\n\n return queryable.map((type) => {\n const name = `${type.name}Filter`\n const fields = flatten(type.fields.map((field) => createFieldFilters(field))).filter(Boolean)\n return {fields: [...fields, ...getDocumentFilters()], kind: 'InputObject', name}\n })\n}\n\nfunction createFieldFilters(field: ConvertedField) {\n if (filterCreators[field.type]) {\n return filterCreators[field.type](field)\n }\n\n if (field.kind === 'List') {\n return createListFilters()\n }\n\n if (field.isReference) {\n return createReferenceFilters(field)\n }\n\n return createInlineTypeFilters()\n}\n\nfunction getFieldName(field: ConvertedField, modifier = '') {\n const suffix = modifier ? `_${modifier}` : ''\n return `${field.fieldName}${suffix}`\n}\n\nfunction getDocumentFilters(): InputFilterField[] {\n return [\n {\n constraint: {\n comparator: 'REFERENCES',\n },\n description: 'All documents references the given document ID',\n fieldName: 'references',\n type: 'ID',\n },\n {\n constraint: {\n comparator: 'IS_DRAFT',\n field: '_id',\n },\n description: 'All documents that are drafts',\n fieldName: 'is_draft',\n type: 'Boolean',\n },\n ]\n}\n\nfunction createIsDefinedFilter(field: ConvertedFieldDefinition): InputFilterField {\n return {\n constraint: {\n comparator: 'IS_DEFINED',\n field: field.fieldName,\n },\n description: 'All documents that have a value for this field',\n fieldName: getFieldName(field, 'is_defined'),\n type: 'Boolean',\n }\n}\n\nfunction createEqualityFilter(field: ConvertedFieldDefinition): InputFilterField {\n return {\n constraint: {\n comparator: 'EQUALS',\n field: field.fieldName,\n },\n description: 'All documents that are equal to given value',\n fieldName: getFieldName(field),\n type: field.type,\n }\n}\n\nfunction createInequalityFilter(field: ConvertedFieldDefinition): InputFilterField {\n return {\n constraint: {\n comparator: 'NOT_EQUALS',\n field: field.fieldName,\n },\n description: 'All documents that are not equal to given value',\n fieldName: getFieldName(field, 'not'),\n type: field.type,\n }\n}\n\nfunction createDefaultFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return [createEqualityFilter(field), createInequalityFilter(field), createIsDefinedFilter(field)]\n}\n\nfunction createGtLtFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return [\n {\n constraint: {\n comparator: 'LT',\n field: field.fieldName,\n },\n description: 'All documents are less than given value',\n fieldName: getFieldName(field, 'lt'),\n type: field.type,\n },\n {\n constraint: {\n comparator: 'LTE',\n field: field.fieldName,\n },\n description: 'All documents are less than or equal to given value',\n fieldName: getFieldName(field, 'lte'),\n type: field.type,\n },\n {\n constraint: {\n comparator: 'GT',\n field: field.fieldName,\n },\n description: 'All documents are greater than given value',\n fieldName: getFieldName(field, 'gt'),\n type: field.type,\n },\n {\n constraint: {\n comparator: 'GTE',\n field: field.fieldName,\n },\n description: 'All documents are greater than or equal to given value',\n fieldName: getFieldName(field, 'gte'),\n type: field.type,\n },\n ]\n}\n\nfunction createBooleanFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return createDefaultFilters(field)\n}\n\nfunction createIdFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return createStringFilters(field)\n}\n\nfunction createDateFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return [...createDefaultFilters(field), ...createGtLtFilters(field)]\n}\n\nfunction createStringFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return [\n ...createDefaultFilters(field),\n {\n constraint: {\n comparator: 'MATCHES',\n field: field.fieldName,\n },\n description: 'All documents contain (match) the given word/words',\n fieldName: getFieldName(field, 'matches'),\n type: 'String',\n },\n {\n children: {\n isNullable: false,\n type: 'String',\n },\n constraint: {\n comparator: 'IN',\n field: field.fieldName,\n },\n description: 'All documents match one of the given values',\n fieldName: getFieldName(field, 'in'),\n kind: 'List',\n },\n {\n children: {\n isNullable: false,\n type: 'String',\n },\n constraint: {\n comparator: 'NOT_IN',\n field: field.fieldName,\n },\n description: 'None of the values match any of the given values',\n fieldName: getFieldName(field, 'not_in'),\n kind: 'List',\n },\n ]\n}\n\nfunction createNumberFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return [...createDefaultFilters(field), ...createGtLtFilters(field)]\n}\n\nfunction createObjectFilters(_field: ConvertedFieldDefinition): InputFilterField[] {\n return []\n}\n\nfunction createListFilters(): InputFilterField[] {\n return []\n}\n\nfunction createInlineTypeFilters(): InputFilterField[] {\n return []\n}\n\nfunction createReferenceFilters(field: ConvertedFieldDefinition): InputFilterField[] {\n return [\n {\n constraint: {\n comparator: 'EQUALS',\n field: `${field.fieldName}._ref`,\n },\n fieldName: getFieldName(field),\n type: 'ID',\n },\n ]\n}\n"],"names":["flatten","isNonUnion","filterCreators","Boolean","createBooleanFilters","Date","createDateFilters","Datetime","Float","createNumberFilters","ID","createIdFilters","Integer","Object","createObjectFilters","String","createStringFilters","Url","generateTypeFilters","types","queryable","filter","type","interfaces","includes","map","name","fields","field","createFieldFilters","getDocumentFilters","kind","createListFilters","isReference","createReferenceFilters","createInlineTypeFilters","getFieldName","modifier","suffix","fieldName","constraint","comparator","description","createIsDefinedFilter","createEqualityFilter","createInequalityFilter","createDefaultFilters","createGtLtFilters","children","isNullable","_field"],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import startCase from 'lodash-es/startCase.js';
2
+ import upperFirst from 'lodash-es/upperFirst.js';
3
+ import pluralize from 'pluralize-esm';
4
+ import { isNonUnion } from '../helpers.js';
5
+ function pluralizeTypeName(name) {
6
+ const words = startCase(name).split(' ');
7
+ const last = words.at(-1);
8
+ // `pluralize` previously incorrectly cased the S to uppercase after numbers,
9
+ // which we need to maintain for backwards compatibility
10
+ const plural = pluralize(last?.toLowerCase() ?? '').replaceAll(/(\d)s$/g, '$1S');
11
+ words[words.length - 1] = upperFirst(plural);
12
+ return words.join('');
13
+ }
14
+ export function generateTypeQueries(types, filters) {
15
+ const queries = [];
16
+ const queryable = types.filter((type)=>isNonUnion(type)).filter((type)=>type.type === 'Object' && type.interfaces && type.interfaces.includes('Document'));
17
+ // Single ID-based result lookup queries
18
+ for (const type of queryable){
19
+ queries.push({
20
+ args: [
21
+ {
22
+ description: `${type.name} document ID`,
23
+ isNullable: false,
24
+ name: 'id',
25
+ type: 'ID'
26
+ }
27
+ ],
28
+ constraints: [
29
+ {
30
+ comparator: 'EQUALS',
31
+ field: '_id',
32
+ value: {
33
+ argName: 'id',
34
+ kind: 'argumentValue'
35
+ }
36
+ }
37
+ ],
38
+ fieldName: type.name,
39
+ type: type.name
40
+ });
41
+ }
42
+ // Fetch all of type
43
+ for (const type of queryable){
44
+ const filterName = `${type.name}Filter`;
45
+ const hasFilter = filters.find((filter)=>filter.name === filterName);
46
+ queries.push({
47
+ args: hasFilter ? [
48
+ {
49
+ isFieldFilter: true,
50
+ name: 'where',
51
+ type: filterName
52
+ },
53
+ ...getLimitOffsetArgs()
54
+ ] : getLimitOffsetArgs(),
55
+ fieldName: `all${pluralizeTypeName(type.name)}`,
56
+ filter: `_type == "${type.originalName || type.name}"`,
57
+ type: {
58
+ children: {
59
+ isNullable: false,
60
+ type: type.name
61
+ },
62
+ isNullable: false,
63
+ kind: 'List'
64
+ }
65
+ });
66
+ }
67
+ return queries;
68
+ }
69
+ function getLimitOffsetArgs() {
70
+ return [
71
+ {
72
+ description: 'Max documents to return',
73
+ isFieldFilter: false,
74
+ name: 'limit',
75
+ type: 'Int'
76
+ },
77
+ {
78
+ description: 'Offset at which to start returning documents from',
79
+ isFieldFilter: false,
80
+ name: 'offset',
81
+ type: 'Int'
82
+ }
83
+ ];
84
+ }
85
+
86
+ //# sourceMappingURL=generateTypeQueries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/actions/graphql/gen1/generateTypeQueries.ts"],"sourcesContent":["import startCase from 'lodash-es/startCase.js'\nimport upperFirst from 'lodash-es/upperFirst.js'\nimport pluralize from 'pluralize-esm'\n\nimport {isNonUnion} from '../helpers.js'\nimport {\n type ConvertedType,\n type ConvertedUnion,\n type InputObjectType,\n type QueryDefinition,\n} from '../types.js'\n\nfunction pluralizeTypeName(name: string): string {\n const words = startCase(name).split(' ')\n const last = words.at(-1)\n // `pluralize` previously incorrectly cased the S to uppercase after numbers,\n // which we need to maintain for backwards compatibility\n const plural = pluralize(last?.toLowerCase() ?? '').replaceAll(/(\\d)s$/g, '$1S')\n words[words.length - 1] = upperFirst(plural)\n return words.join('')\n}\n\nexport function generateTypeQueries(\n types: (ConvertedType | ConvertedUnion)[],\n filters: InputObjectType[],\n): QueryDefinition[] {\n const queries: QueryDefinition[] = []\n const queryable = types\n .filter((type) => isNonUnion(type))\n .filter(\n (type) => type.type === 'Object' && type.interfaces && type.interfaces.includes('Document'),\n )\n\n // Single ID-based result lookup queries\n for (const type of queryable) {\n queries.push({\n args: [\n {\n description: `${type.name} document ID`,\n isNullable: false,\n name: 'id',\n type: 'ID',\n },\n ],\n constraints: [\n {\n comparator: 'EQUALS',\n field: '_id',\n value: {argName: 'id', kind: 'argumentValue'},\n },\n ],\n fieldName: type.name,\n type: type.name,\n })\n }\n\n // Fetch all of type\n for (const type of queryable) {\n const filterName = `${type.name}Filter`\n const hasFilter = filters.find((filter) => filter.name === filterName)\n queries.push({\n args: hasFilter\n ? [{isFieldFilter: true, name: 'where', type: filterName}, ...getLimitOffsetArgs()]\n : getLimitOffsetArgs(),\n fieldName: `all${pluralizeTypeName(type.name)}`,\n filter: `_type == \"${type.originalName || type.name}\"`,\n type: {\n children: {isNullable: false, type: type.name},\n isNullable: false,\n kind: 'List',\n },\n })\n }\n\n return queries\n}\n\nfunction getLimitOffsetArgs(): QueryDefinition['args'] {\n return [\n {\n description: 'Max documents to return',\n isFieldFilter: false,\n name: 'limit',\n type: 'Int',\n },\n {\n description: 'Offset at which to start returning documents from',\n isFieldFilter: false,\n name: 'offset',\n type: 'Int',\n },\n ]\n}\n"],"names":["startCase","upperFirst","pluralize","isNonUnion","pluralizeTypeName","name","words","split","last","at","plural","toLowerCase","replaceAll","length","join","generateTypeQueries","types","filters","queries","queryable","filter","type","interfaces","includes","push","args","description","isNullable","constraints","comparator","field","value","argName","kind","fieldName","filterName","hasFilter","find","isFieldFilter","getLimitOffsetArgs","originalName","children"],"mappings":"AAAA,OAAOA,eAAe,yBAAwB;AAC9C,OAAOC,gBAAgB,0BAAyB;AAChD,OAAOC,eAAe,gBAAe;AAErC,SAAQC,UAAU,QAAO,gBAAe;AAQxC,SAASC,kBAAkBC,IAAY;IACrC,MAAMC,QAAQN,UAAUK,MAAME,KAAK,CAAC;IACpC,MAAMC,OAAOF,MAAMG,EAAE,CAAC,CAAC;IACvB,6EAA6E;IAC7E,wDAAwD;IACxD,MAAMC,SAASR,UAAUM,MAAMG,iBAAiB,IAAIC,UAAU,CAAC,WAAW;IAC1EN,KAAK,CAACA,MAAMO,MAAM,GAAG,EAAE,GAAGZ,WAAWS;IACrC,OAAOJ,MAAMQ,IAAI,CAAC;AACpB;AAEA,OAAO,SAASC,oBACdC,KAAyC,EACzCC,OAA0B;IAE1B,MAAMC,UAA6B,EAAE;IACrC,MAAMC,YAAYH,MACfI,MAAM,CAAC,CAACC,OAASlB,WAAWkB,OAC5BD,MAAM,CACL,CAACC,OAASA,KAAKA,IAAI,KAAK,YAAYA,KAAKC,UAAU,IAAID,KAAKC,UAAU,CAACC,QAAQ,CAAC;IAGpF,wCAAwC;IACxC,KAAK,MAAMF,QAAQF,UAAW;QAC5BD,QAAQM,IAAI,CAAC;YACXC,MAAM;gBACJ;oBACEC,aAAa,GAAGL,KAAKhB,IAAI,CAAC,YAAY,CAAC;oBACvCsB,YAAY;oBACZtB,MAAM;oBACNgB,MAAM;gBACR;aACD;YACDO,aAAa;gBACX;oBACEC,YAAY;oBACZC,OAAO;oBACPC,OAAO;wBAACC,SAAS;wBAAMC,MAAM;oBAAe;gBAC9C;aACD;YACDC,WAAWb,KAAKhB,IAAI;YACpBgB,MAAMA,KAAKhB,IAAI;QACjB;IACF;IAEA,oBAAoB;IACpB,KAAK,MAAMgB,QAAQF,UAAW;QAC5B,MAAMgB,aAAa,GAAGd,KAAKhB,IAAI,CAAC,MAAM,CAAC;QACvC,MAAM+B,YAAYnB,QAAQoB,IAAI,CAAC,CAACjB,SAAWA,OAAOf,IAAI,KAAK8B;QAC3DjB,QAAQM,IAAI,CAAC;YACXC,MAAMW,YACF;gBAAC;oBAACE,eAAe;oBAAMjC,MAAM;oBAASgB,MAAMc;gBAAU;mBAAMI;aAAqB,GACjFA;YACJL,WAAW,CAAC,GAAG,EAAE9B,kBAAkBiB,KAAKhB,IAAI,GAAG;YAC/Ce,QAAQ,CAAC,UAAU,EAAEC,KAAKmB,YAAY,IAAInB,KAAKhB,IAAI,CAAC,CAAC,CAAC;YACtDgB,MAAM;gBACJoB,UAAU;oBAACd,YAAY;oBAAON,MAAMA,KAAKhB,IAAI;gBAAA;gBAC7CsB,YAAY;gBACZM,MAAM;YACR;QACF;IACF;IAEA,OAAOf;AACT;AAEA,SAASqB;IACP,OAAO;QACL;YACEb,aAAa;YACbY,eAAe;YACfjC,MAAM;YACNgB,MAAM;QACR;QACA;YACEK,aAAa;YACbY,eAAe;YACfjC,MAAM;YACNgB,MAAM;QACR;KACD;AACH"}