@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.
- package/README.md +728 -258
- package/bin/run.js +2 -0
- package/dist/SanityHelp.js +51 -23
- package/dist/SanityHelp.js.map +1 -1
- package/dist/actions/auth/authServer.js +28 -22
- package/dist/actions/auth/authServer.js.map +1 -1
- package/dist/actions/auth/login/getProvider.js +49 -38
- package/dist/actions/auth/login/getProvider.js.map +1 -1
- package/dist/actions/auth/login/getSSOProvider.js +25 -19
- package/dist/actions/auth/login/getSSOProvider.js.map +1 -1
- package/dist/actions/auth/login/login.js +24 -37
- package/dist/actions/auth/login/login.js.map +1 -1
- package/dist/actions/auth/types.js.map +1 -1
- package/dist/actions/backup/downloadAsset.js +9 -9
- package/dist/actions/backup/downloadAsset.js.map +1 -1
- package/dist/actions/backup/downloadDocument.js +8 -8
- package/dist/actions/backup/downloadDocument.js.map +1 -1
- package/dist/actions/build/buildApp.js +65 -28
- package/dist/actions/build/buildApp.js.map +1 -1
- package/dist/actions/build/buildStaticFiles.js +3 -2
- package/dist/actions/build/buildStaticFiles.js.map +1 -1
- package/dist/actions/build/buildStudio.js +82 -54
- package/dist/actions/build/buildStudio.js.map +1 -1
- package/dist/actions/build/buildVendorDependencies.js +18 -52
- package/dist/actions/build/buildVendorDependencies.js.map +1 -1
- package/dist/actions/build/checkRequiredDependencies.js +13 -8
- package/dist/actions/build/checkRequiredDependencies.js.map +1 -1
- package/dist/actions/build/checkStudioDependencyVersions.js +19 -17
- package/dist/actions/build/checkStudioDependencyVersions.js.map +1 -1
- package/dist/actions/build/createExternalFromImportMap.js +1 -1
- package/dist/actions/build/createExternalFromImportMap.js.map +1 -1
- package/dist/actions/build/determineBasePath.js +5 -2
- package/dist/actions/build/determineBasePath.js.map +1 -1
- package/dist/actions/build/getStudioEnvironmentVariables.js +1 -1
- package/dist/actions/build/getStudioEnvironmentVariables.js.map +1 -1
- package/dist/actions/build/getViteConfig.js +48 -5
- package/dist/actions/build/getViteConfig.js.map +1 -1
- package/dist/actions/build/handlePrereleaseVersions.js +44 -0
- package/dist/actions/build/handlePrereleaseVersions.js.map +1 -0
- package/dist/actions/build/renderDocument.js +6 -10
- package/dist/actions/build/renderDocument.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js +4 -4
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js +3 -3
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js +1 -0
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js +2 -2
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js +1 -1
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js.map +1 -1
- package/dist/actions/build/shouldAutoUpdate.js +5 -3
- package/dist/actions/build/shouldAutoUpdate.js.map +1 -1
- package/dist/actions/build/types.js.map +1 -1
- package/dist/actions/build/writeFavicons.js +3 -5
- package/dist/actions/build/writeFavicons.js.map +1 -1
- package/dist/actions/build/writeSanityRuntime.js +6 -5
- package/dist/actions/build/writeSanityRuntime.js.map +1 -1
- package/dist/actions/codemods/reactIconsV3.js +2 -2
- package/dist/actions/codemods/reactIconsV3.js.map +1 -1
- package/dist/actions/dataset/create.js +10 -6
- package/dist/actions/dataset/create.js.map +1 -1
- package/dist/actions/dataset/determineDatasetAclMode.js.map +1 -1
- package/dist/actions/dataset/resolveDataset.js +26 -0
- package/dist/actions/dataset/resolveDataset.js.map +1 -0
- package/dist/actions/debug/formatters.js +22 -0
- package/dist/actions/debug/formatters.js.map +1 -0
- package/dist/actions/deploy/createStudioUserApplication.js +17 -4
- package/dist/actions/deploy/createStudioUserApplication.js.map +1 -1
- package/dist/actions/deploy/deployApp.js +52 -22
- package/dist/actions/deploy/deployApp.js.map +1 -1
- package/dist/actions/deploy/deployStudio.js +95 -46
- package/dist/actions/deploy/deployStudio.js.map +1 -1
- package/dist/actions/deploy/deployStudioSchemasAndManifests.js +55 -0
- package/dist/actions/deploy/deployStudioSchemasAndManifests.js.map +1 -0
- package/dist/actions/deploy/deployStudioSchemasAndManifests.worker.js +120 -0
- package/dist/actions/deploy/deployStudioSchemasAndManifests.worker.js.map +1 -0
- package/dist/actions/deploy/findUserApplicationForStudio.js +35 -12
- package/dist/actions/deploy/findUserApplicationForStudio.js.map +1 -1
- package/dist/actions/deploy/types.js +10 -1
- package/dist/actions/deploy/types.js.map +1 -1
- package/dist/actions/deploy/urlUtils.js +21 -0
- package/dist/actions/deploy/urlUtils.js.map +1 -0
- package/dist/actions/dev/getDashboardAppUrl.js +48 -0
- package/dist/actions/dev/getDashboardAppUrl.js.map +1 -0
- package/dist/actions/dev/getDevServerConfig.js +7 -3
- package/dist/actions/dev/getDevServerConfig.js.map +1 -1
- package/dist/actions/dev/startAppDevServer.js +7 -4
- package/dist/actions/dev/startAppDevServer.js.map +1 -1
- package/dist/actions/dev/startStudioDevServer.js +23 -19
- package/dist/actions/dev/startStudioDevServer.js.map +1 -1
- package/dist/actions/doctor/checks/cliInstallation.js +56 -0
- package/dist/actions/doctor/checks/cliInstallation.js.map +1 -0
- package/dist/actions/doctor/checks/index.js +16 -0
- package/dist/actions/doctor/checks/index.js.map +1 -0
- package/dist/actions/doctor/runDoctorChecks.js +56 -0
- package/dist/actions/doctor/runDoctorChecks.js.map +1 -0
- package/dist/actions/doctor/types.js.map +1 -0
- package/dist/actions/documents/types.js.map +1 -1
- package/dist/actions/documents/validate.js +15 -17
- package/dist/actions/documents/validate.js.map +1 -1
- package/dist/{threads/validateDocuments.js → actions/documents/validateDocuments.worker.js} +37 -37
- package/dist/actions/documents/validateDocuments.worker.js.map +1 -0
- package/dist/actions/documents/validation/reporters/jsonReporter.js +1 -1
- package/dist/actions/documents/validation/reporters/jsonReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/ndjsonReporter.js +1 -1
- package/dist/actions/documents/validation/reporters/ndjsonReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js +9 -8
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js.map +1 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/tree.js +108 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/tree.js.map +1 -0
- package/dist/{threads/configClient.js → actions/exec/configClient.worker.js} +2 -2
- package/dist/actions/exec/configClient.worker.js.map +1 -0
- package/dist/actions/exec/execScript.js +29 -25
- package/dist/actions/exec/execScript.js.map +1 -1
- package/dist/{threads/registerBrowserEnv.js → actions/exec/registerBrowserEnv.worker.js} +1 -1
- package/dist/actions/exec/registerBrowserEnv.worker.js.map +1 -0
- package/dist/actions/graphql/SchemaError.js +15 -0
- package/dist/actions/graphql/SchemaError.js.map +1 -0
- package/dist/actions/graphql/__tests__/fixtures/many-self-refs.js +540 -0
- package/dist/actions/graphql/__tests__/fixtures/many-self-refs.js.map +1 -0
- package/dist/actions/graphql/__tests__/fixtures/test-studio.js +1143 -0
- package/dist/actions/graphql/__tests__/fixtures/test-studio.js.map +1 -0
- package/dist/actions/graphql/__tests__/fixtures/union-refs.js +591 -0
- package/dist/actions/graphql/__tests__/fixtures/union-refs.js.map +1 -0
- package/dist/actions/graphql/__tests__/helpers.js +23 -0
- package/dist/actions/graphql/__tests__/helpers.js.map +1 -0
- package/dist/actions/graphql/extractFromSanitySchema.js +659 -0
- package/dist/actions/graphql/extractFromSanitySchema.js.map +1 -0
- package/dist/actions/graphql/extractGraphQLAPIs.js +150 -0
- package/dist/actions/graphql/extractGraphQLAPIs.js.map +1 -0
- package/dist/actions/graphql/extractGraphQLAPIs.worker.js +12 -0
- package/dist/actions/graphql/extractGraphQLAPIs.worker.js.map +1 -0
- package/dist/actions/graphql/gen1/generateTypeFilters.js +226 -0
- package/dist/actions/graphql/gen1/generateTypeFilters.js.map +1 -0
- package/dist/actions/graphql/gen1/generateTypeQueries.js +86 -0
- package/dist/actions/graphql/gen1/generateTypeQueries.js.map +1 -0
- package/dist/actions/graphql/gen1/index.js +19 -0
- package/dist/actions/graphql/gen1/index.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/booleanFilters.js +26 -0
- package/dist/actions/graphql/gen2/filters/booleanFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/dateFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/dateFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/dateTimeFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/dateTimeFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/documentFilters.js +21 -0
- package/dist/actions/graphql/gen2/filters/documentFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/floatFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/floatFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/idFilters.js +44 -0
- package/dist/actions/graphql/gen2/filters/idFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/integerFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/integerFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/stringFilters.js +49 -0
- package/dist/actions/graphql/gen2/filters/stringFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/generateTypeFilters.js +85 -0
- package/dist/actions/graphql/gen2/generateTypeFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/generateTypeQueries.js +107 -0
- package/dist/actions/graphql/gen2/generateTypeQueries.js.map +1 -0
- package/dist/actions/graphql/gen2/generateTypeSortings.js +70 -0
- package/dist/actions/graphql/gen2/generateTypeSortings.js.map +1 -0
- package/dist/actions/graphql/gen2/index.js +22 -0
- package/dist/actions/graphql/gen2/index.js.map +1 -0
- package/dist/actions/graphql/gen3/filters/documentFilters.js +21 -0
- package/dist/actions/graphql/gen3/filters/documentFilters.js.map +1 -0
- package/dist/actions/graphql/gen3/generateTypeFilters.js +101 -0
- package/dist/actions/graphql/gen3/generateTypeFilters.js.map +1 -0
- package/dist/actions/graphql/gen3/generateTypeQueries.js +103 -0
- package/dist/actions/graphql/gen3/generateTypeQueries.js.map +1 -0
- package/dist/actions/graphql/gen3/generateTypeSortings.js +70 -0
- package/dist/actions/graphql/gen3/generateTypeSortings.js.map +1 -0
- package/dist/actions/graphql/gen3/index.js +30 -0
- package/dist/actions/graphql/gen3/index.js.map +1 -0
- package/dist/actions/graphql/gen3/utils.js +12 -0
- package/dist/actions/graphql/gen3/utils.js.map +1 -0
- package/dist/actions/graphql/getGraphQLAPIs.js +15 -57
- package/dist/actions/graphql/getGraphQLAPIs.js.map +1 -1
- package/dist/actions/graphql/getGraphQLAPIs.worker.js +75 -106
- package/dist/actions/graphql/getGraphQLAPIs.worker.js.map +1 -1
- package/dist/actions/graphql/graphqlDebug.js +4 -0
- package/dist/actions/graphql/graphqlDebug.js.map +1 -0
- package/dist/actions/graphql/helpUrls.js +3 -0
- package/dist/actions/graphql/helpUrls.js.map +1 -0
- package/dist/actions/graphql/helpers.js +24 -0
- package/dist/actions/graphql/helpers.js.map +1 -0
- package/dist/actions/graphql/resolveApiGeneration.js +43 -0
- package/dist/actions/graphql/resolveApiGeneration.js.map +1 -0
- package/dist/actions/graphql/resolveGraphQLApisFromWorkspaces.js +187 -0
- package/dist/actions/graphql/resolveGraphQLApisFromWorkspaces.js.map +1 -0
- package/dist/actions/graphql/types.js.map +1 -1
- package/dist/actions/init/bootstrapLocalTemplate.js +13 -10
- package/dist/actions/init/bootstrapLocalTemplate.js.map +1 -1
- package/dist/actions/init/bootstrapRemoteTemplate.js +6 -5
- package/dist/actions/init/bootstrapRemoteTemplate.js.map +1 -1
- package/dist/actions/init/bootstrapTemplate.js.map +1 -1
- package/dist/actions/init/checkNextJsReactCompatibility.js +1 -1
- package/dist/actions/init/checkNextJsReactCompatibility.js.map +1 -1
- package/dist/actions/init/createAppCliConfig.js.map +1 -1
- package/dist/actions/init/createCliConfig.js.map +1 -1
- package/dist/actions/init/createPackageManifest.js +21 -9
- package/dist/actions/init/createPackageManifest.js.map +1 -1
- package/dist/actions/init/env/createOrAppendEnvVars.js +2 -2
- package/dist/actions/init/env/createOrAppendEnvVars.js.map +1 -1
- package/dist/actions/init/env/writeEnvVarsToFile.js +2 -2
- package/dist/actions/init/env/writeEnvVarsToFile.js.map +1 -1
- package/dist/actions/init/fetchPostInitPrompt.js +2 -2
- package/dist/actions/init/fetchPostInitPrompt.js.map +1 -1
- package/dist/actions/init/remoteTemplate.js +1 -2
- package/dist/actions/init/remoteTemplate.js.map +1 -1
- package/dist/actions/init/resolvePackageManager.js +2 -2
- package/dist/actions/init/resolvePackageManager.js.map +1 -1
- package/dist/actions/init/sdkAppDependencies.js +19 -0
- package/dist/actions/init/sdkAppDependencies.js.map +1 -0
- package/dist/actions/init/studioDependencies.js.map +1 -0
- package/dist/actions/init/templates/appQuickstart.js +1 -22
- package/dist/actions/init/templates/appQuickstart.js.map +1 -1
- package/dist/actions/init/templates/appSanityUi.js +3 -22
- package/dist/actions/init/templates/appSanityUi.js.map +1 -1
- package/dist/actions/init/types.js.map +1 -1
- package/dist/actions/manifest/SchemaIcon.js +6 -4
- package/dist/actions/manifest/SchemaIcon.js.map +1 -1
- package/dist/actions/manifest/blockTypeTransformer.js +67 -0
- package/dist/actions/manifest/blockTypeTransformer.js.map +1 -0
- package/dist/actions/manifest/debug.js +4 -0
- package/dist/actions/manifest/debug.js.map +1 -0
- package/dist/actions/manifest/extractAppManifest.js +39 -22
- package/dist/actions/manifest/extractAppManifest.js.map +1 -1
- package/dist/actions/manifest/extractManifest.js +27 -78
- package/dist/actions/manifest/extractManifest.js.map +1 -1
- package/dist/actions/manifest/extractManifest.worker.js +30 -0
- package/dist/actions/manifest/extractManifest.worker.js.map +1 -0
- package/dist/actions/manifest/extractWorkspaceManifest.js +31 -372
- package/dist/actions/manifest/extractWorkspaceManifest.js.map +1 -1
- package/dist/actions/manifest/iconResolver.js +30 -0
- package/dist/actions/manifest/iconResolver.js.map +1 -0
- package/dist/actions/manifest/referenceTransformer.js +51 -0
- package/dist/actions/manifest/referenceTransformer.js.map +1 -0
- package/dist/actions/manifest/schemaTypeHelpers.js +2 -2
- package/dist/actions/manifest/schemaTypeHelpers.js.map +1 -1
- package/dist/actions/manifest/schemaTypeTransformer.js +168 -0
- package/dist/actions/manifest/schemaTypeTransformer.js.map +1 -0
- package/dist/actions/manifest/transformerUtils.js +40 -0
- package/dist/actions/manifest/transformerUtils.js.map +1 -0
- package/dist/actions/manifest/types.js +5 -0
- package/dist/actions/manifest/types.js.map +1 -1
- package/dist/actions/manifest/validationTransformer.js +84 -0
- package/dist/actions/manifest/validationTransformer.js.map +1 -0
- package/dist/actions/manifest/writeManifestFile.js +30 -0
- package/dist/actions/manifest/writeManifestFile.js.map +1 -0
- package/dist/actions/manifest/writeWorkspaceFiles.js +30 -0
- package/dist/actions/manifest/writeWorkspaceFiles.js.map +1 -0
- package/dist/actions/mcp/detectAvailableEditors.js +75 -58
- package/dist/actions/mcp/detectAvailableEditors.js.map +1 -1
- package/dist/actions/mcp/editorConfigs.js +205 -0
- package/dist/actions/mcp/editorConfigs.js.map +1 -0
- package/dist/actions/mcp/promptForMCPSetup.js +24 -0
- package/dist/actions/mcp/promptForMCPSetup.js.map +1 -0
- package/dist/actions/mcp/setupMCP.js +88 -0
- package/dist/actions/mcp/setupMCP.js.map +1 -0
- package/dist/actions/mcp/types.js +3 -0
- package/dist/actions/mcp/types.js.map +1 -0
- package/dist/actions/mcp/writeMCPConfig.js +35 -28
- package/dist/actions/mcp/writeMCPConfig.js.map +1 -1
- package/dist/actions/media/buildNdjsonIndex.js +32 -0
- package/dist/actions/media/buildNdjsonIndex.js.map +1 -0
- package/dist/actions/media/importAspects.js +2 -11
- package/dist/actions/media/importAspects.js.map +1 -1
- package/dist/actions/media/importMedia.js +24 -20
- package/dist/actions/media/importMedia.js.map +1 -1
- package/dist/actions/organizations/findOrganizationByUserName.js +5 -0
- package/dist/actions/organizations/findOrganizationByUserName.js.map +1 -0
- package/dist/actions/organizations/getOrganization.js +68 -0
- package/dist/actions/organizations/getOrganization.js.map +1 -0
- package/dist/actions/organizations/getOrganizationChoices.js +27 -19
- package/dist/actions/organizations/getOrganizationChoices.js.map +1 -1
- package/dist/actions/organizations/hasProjectAttachGrant.js +1 -1
- package/dist/actions/organizations/hasProjectAttachGrant.js.map +1 -1
- package/dist/actions/organizations/types.js +3 -0
- package/dist/actions/organizations/types.js.map +1 -0
- package/dist/actions/organizations/validateOrganizationName.js +10 -0
- package/dist/actions/organizations/validateOrganizationName.js.map +1 -0
- package/dist/actions/preview/previewAction.js +2 -1
- package/dist/actions/preview/previewAction.js.map +1 -1
- package/dist/actions/projects/getManageUrl.js +6 -0
- package/dist/actions/projects/getManageUrl.js.map +1 -0
- package/dist/actions/projects/validateProjectName.js +11 -0
- package/dist/actions/projects/validateProjectName.js.map +1 -0
- package/dist/actions/schema/deleteSchemaAction.js +16 -32
- package/dist/actions/schema/deleteSchemaAction.js.map +1 -1
- package/dist/actions/schema/deploySchemas.js +22 -91
- package/dist/actions/schema/deploySchemas.js.map +1 -1
- package/dist/actions/schema/extractSanitySchema.worker.js +33 -0
- package/dist/actions/schema/extractSanitySchema.worker.js.map +1 -0
- package/dist/actions/schema/extractSanityWorkspace.worker.js +24 -0
- package/dist/actions/schema/extractSanityWorkspace.worker.js.map +1 -0
- package/dist/actions/schema/extractSchema.js +45 -0
- package/dist/actions/schema/extractSchema.js.map +1 -0
- package/dist/actions/schema/extractSchemaWatcher.js +128 -0
- package/dist/actions/schema/extractSchemaWatcher.js.map +1 -0
- package/dist/actions/schema/formatSchemaValidation.js +22 -6
- package/dist/actions/schema/formatSchemaValidation.js.map +1 -1
- package/dist/actions/schema/getExtractOptions.js +16 -0
- package/dist/actions/schema/getExtractOptions.js.map +1 -0
- package/dist/actions/schema/listSchemas.js +54 -57
- package/dist/actions/schema/listSchemas.js.map +1 -1
- package/dist/actions/schema/matchSchemaPattern.js +22 -0
- package/dist/actions/schema/matchSchemaPattern.js.map +1 -0
- package/dist/actions/schema/metafile.js.map +1 -1
- package/dist/actions/schema/runSchemaExtraction.js +39 -0
- package/dist/actions/schema/runSchemaExtraction.js.map +1 -0
- package/dist/actions/schema/types.js +17 -0
- package/dist/actions/schema/types.js.map +1 -0
- package/dist/actions/schema/uniqueWorkspaces.worker.js +24 -0
- package/dist/actions/schema/uniqueWorkspaces.worker.js.map +1 -0
- package/dist/actions/schema/updateWorkspaceSchema.js +63 -0
- package/dist/actions/schema/updateWorkspaceSchema.js.map +1 -0
- package/dist/actions/schema/uploadSchemaToLexicon.js +87 -0
- package/dist/actions/schema/uploadSchemaToLexicon.js.map +1 -0
- package/dist/actions/schema/utils/SchemaExtractionError.js +10 -0
- package/dist/actions/schema/utils/SchemaExtractionError.js.map +1 -0
- package/dist/actions/schema/utils/debug.js +1 -0
- package/dist/actions/schema/utils/debug.js.map +1 -1
- package/dist/actions/schema/utils/extractValidationFromSchemaError.js +12 -0
- package/dist/actions/schema/utils/extractValidationFromSchemaError.js.map +1 -0
- package/dist/actions/schema/utils/schemaStoreValidation.js +1 -15
- package/dist/actions/schema/utils/schemaStoreValidation.js.map +1 -1
- package/dist/actions/schema/utils/uniqByProjectIdDataset.js +1 -1
- package/dist/actions/schema/utils/uniqByProjectIdDataset.js.map +1 -1
- package/dist/actions/schema/validateAction.js +7 -17
- package/dist/actions/schema/validateAction.js.map +1 -1
- package/dist/{threads/validateSchema.js → actions/schema/validateSchema.worker.js} +28 -26
- package/dist/actions/schema/validateSchema.worker.js.map +1 -0
- package/dist/actions/schema/watchExtractSchema.js +72 -0
- package/dist/actions/schema/watchExtractSchema.js.map +1 -0
- package/dist/actions/telemetry/getLearnMoreMessage.js.map +1 -1
- package/dist/actions/telemetry/getStatusDisplay.js.map +1 -1
- package/dist/actions/telemetry/getStatusMessage.js.map +1 -1
- package/dist/actions/telemetry/isTrueish.js +10 -0
- package/dist/actions/telemetry/isTrueish.js.map +1 -0
- package/dist/actions/telemetry/resolveConsent.js +3 -3
- package/dist/actions/telemetry/resolveConsent.js.map +1 -1
- package/dist/actions/telemetry/setConsent.js +3 -2
- package/dist/actions/telemetry/setConsent.js.map +1 -1
- package/dist/actions/telemetry/telemetryDisclosure.js +3 -3
- package/dist/actions/telemetry/telemetryDisclosure.js.map +1 -1
- package/dist/actions/users/getMembersForProject.js.map +1 -1
- package/dist/actions/users/getPendingInvitations.js +1 -1
- package/dist/actions/users/getPendingInvitations.js.map +1 -1
- package/dist/actions/users/types.js.map +1 -1
- package/dist/actions/versions/filterSanityModules.js.map +1 -1
- package/dist/actions/versions/findSanityModulesVersions.js +2 -3
- package/dist/actions/versions/findSanityModulesVersions.js.map +1 -1
- package/dist/actions/versions/getFormatters.js +3 -3
- package/dist/actions/versions/getFormatters.js.map +1 -1
- package/dist/actions/versions/tryFindLatestVersion.js +1 -1
- package/dist/actions/versions/tryFindLatestVersion.js.map +1 -1
- package/dist/commands/backup/disable.js +26 -10
- package/dist/commands/backup/disable.js.map +1 -1
- package/dist/commands/backup/download.js +26 -17
- package/dist/commands/backup/download.js.map +1 -1
- package/dist/commands/backup/enable.js +25 -10
- package/dist/commands/backup/enable.js.map +1 -1
- package/dist/commands/backup/list.js +20 -8
- package/dist/commands/backup/list.js.map +1 -1
- package/dist/commands/build.js +2 -5
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/cors/add.js +33 -16
- package/dist/commands/cors/add.js.map +1 -1
- package/dist/commands/cors/delete.js +22 -7
- package/dist/commands/cors/delete.js.map +1 -1
- package/dist/commands/cors/list.js +22 -7
- package/dist/commands/cors/list.js.map +1 -1
- package/dist/commands/dataset/alias/create.js +26 -7
- package/dist/commands/dataset/alias/create.js.map +1 -1
- package/dist/commands/dataset/alias/delete.js +20 -7
- package/dist/commands/dataset/alias/delete.js.map +1 -1
- package/dist/commands/dataset/alias/link.js +20 -7
- package/dist/commands/dataset/alias/link.js.map +1 -1
- package/dist/commands/dataset/alias/unlink.js +20 -7
- package/dist/commands/dataset/alias/unlink.js.map +1 -1
- package/dist/commands/dataset/copy.js +51 -35
- package/dist/commands/dataset/copy.js.map +1 -1
- package/dist/commands/dataset/create.js +46 -14
- package/dist/commands/dataset/create.js.map +1 -1
- package/dist/commands/dataset/delete.js +28 -9
- package/dist/commands/dataset/delete.js.map +1 -1
- package/dist/commands/dataset/embeddings/disable.js +77 -0
- package/dist/commands/dataset/embeddings/disable.js.map +1 -0
- package/dist/commands/dataset/embeddings/enable.js +141 -0
- package/dist/commands/dataset/embeddings/enable.js.map +1 -0
- package/dist/commands/dataset/embeddings/status.js +72 -0
- package/dist/commands/dataset/embeddings/status.js.map +1 -0
- package/dist/commands/dataset/export.js +26 -18
- package/dist/commands/dataset/export.js.map +1 -1
- package/dist/commands/dataset/import.js +306 -1
- package/dist/commands/dataset/import.js.map +1 -1
- package/dist/commands/dataset/list.js +22 -7
- package/dist/commands/dataset/list.js.map +1 -1
- package/dist/commands/dataset/visibility/get.js +18 -7
- package/dist/commands/dataset/visibility/get.js.map +1 -1
- package/dist/commands/dataset/visibility/set.js +22 -7
- package/dist/commands/dataset/visibility/set.js.map +1 -1
- package/dist/commands/debug.js +9 -7
- package/dist/commands/debug.js.map +1 -1
- package/dist/commands/deploy.js +22 -11
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/dev.js +7 -6
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/docs/search.js +3 -2
- package/dist/commands/docs/search.js.map +1 -1
- package/dist/commands/doctor.js +125 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/documents/create.js +19 -12
- package/dist/commands/documents/create.js.map +1 -1
- package/dist/commands/documents/delete.js +19 -12
- package/dist/commands/documents/delete.js.map +1 -1
- package/dist/commands/documents/get.js +17 -12
- package/dist/commands/documents/get.js.map +1 -1
- package/dist/commands/documents/query.js +26 -18
- package/dist/commands/documents/query.js.map +1 -1
- package/dist/commands/documents/validate.js +74 -48
- package/dist/commands/documents/validate.js.map +1 -1
- package/dist/commands/graphql/deploy.js +457 -0
- package/dist/commands/graphql/deploy.js.map +1 -0
- package/dist/commands/graphql/list.js +21 -13
- package/dist/commands/graphql/list.js.map +1 -1
- package/dist/commands/graphql/undeploy.js +37 -19
- package/dist/commands/graphql/undeploy.js.map +1 -1
- package/dist/commands/hook/attempt.js +22 -7
- package/dist/commands/hook/attempt.js.map +1 -1
- package/dist/commands/hook/create.js +23 -8
- package/dist/commands/hook/create.js.map +1 -1
- package/dist/commands/hook/delete.js +22 -7
- package/dist/commands/hook/delete.js.map +1 -1
- package/dist/commands/hook/list.js +22 -7
- package/dist/commands/hook/list.js.map +1 -1
- package/dist/commands/hook/logs.js +25 -12
- package/dist/commands/hook/logs.js.map +1 -1
- package/dist/commands/init.js +164 -143
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.js +19 -6
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logout.js +8 -6
- package/dist/commands/logout.js.map +1 -1
- package/dist/commands/manage.js +2 -2
- package/dist/commands/manage.js.map +1 -1
- package/dist/commands/manifest/extract.js +14 -10
- package/dist/commands/manifest/extract.js.map +1 -1
- package/dist/commands/mcp/configure.js +14 -75
- package/dist/commands/mcp/configure.js.map +1 -1
- package/dist/commands/media/create-aspect.js +11 -10
- package/dist/commands/media/create-aspect.js.map +1 -1
- package/dist/commands/media/delete-aspect.js +14 -11
- package/dist/commands/media/delete-aspect.js.map +1 -1
- package/dist/commands/media/deploy-aspect.js +31 -17
- package/dist/commands/media/deploy-aspect.js.map +1 -1
- package/dist/commands/media/export.js +10 -9
- package/dist/commands/media/export.js.map +1 -1
- package/dist/commands/media/import.js +14 -12
- package/dist/commands/media/import.js.map +1 -1
- package/dist/commands/preview.js +12 -28
- package/dist/commands/preview.js.map +1 -1
- package/dist/commands/projects/create.js +181 -0
- package/dist/commands/projects/create.js.map +1 -0
- package/dist/commands/projects/list.js +4 -3
- package/dist/commands/projects/list.js.map +1 -1
- package/dist/commands/schema/delete.js +33 -34
- package/dist/commands/schema/delete.js.map +1 -1
- package/dist/commands/schema/deploy.js +19 -30
- package/dist/commands/schema/deploy.js.map +1 -1
- package/dist/commands/schema/extract.js +34 -11
- package/dist/commands/schema/extract.js.map +1 -1
- package/dist/commands/schema/list.js +10 -31
- package/dist/commands/schema/list.js.map +1 -1
- package/dist/commands/schema/validate.js +10 -2
- package/dist/commands/schema/validate.js.map +1 -1
- package/dist/commands/tokens/add.js +24 -7
- package/dist/commands/tokens/add.js.map +1 -1
- package/dist/commands/tokens/delete.js +20 -7
- package/dist/commands/tokens/delete.js.map +1 -1
- package/dist/commands/tokens/list.js +20 -7
- package/dist/commands/tokens/list.js.map +1 -1
- package/dist/commands/undeploy.js +9 -8
- package/dist/commands/undeploy.js.map +1 -1
- package/dist/commands/users/invite.js +24 -7
- package/dist/commands/users/invite.js.map +1 -1
- package/dist/commands/users/list.js +77 -34
- package/dist/commands/users/list.js.map +1 -1
- package/dist/commands/versions.js +3 -3
- package/dist/commands/versions.js.map +1 -1
- package/dist/config/createCliConfig.js +2 -2
- package/dist/config/createCliConfig.js.map +1 -1
- package/dist/exports/_internal.d.ts +132 -0
- package/dist/exports/_internal.js +4 -0
- package/dist/exports/_internal.js.map +1 -0
- package/dist/exports/index.d.ts +113 -0
- package/dist/exports/index.js +6 -0
- package/dist/exports/index.js.map +1 -0
- package/dist/hooks/init/checkForUpdates.js +14 -0
- package/dist/hooks/init/checkForUpdates.js.map +1 -0
- package/dist/hooks/prerun/flushTelemetry.worker.js +1 -1
- package/dist/hooks/prerun/flushTelemetry.worker.js.map +1 -1
- package/dist/hooks/prerun/injectEnvVariables.js +39 -0
- package/dist/hooks/prerun/injectEnvVariables.js.map +1 -0
- package/dist/hooks/prerun/setupTelemetry.js +14 -7
- package/dist/hooks/prerun/setupTelemetry.js.map +1 -1
- package/dist/hooks/prerun/warnings.js +6 -0
- package/dist/hooks/prerun/warnings.js.map +1 -0
- package/dist/prompts/promptForDefaultConfig.js +12 -0
- package/dist/prompts/promptForDefaultConfig.js.map +1 -0
- package/dist/prompts/promptForOrganizationName.js +11 -0
- package/dist/prompts/promptForOrganizationName.js.map +1 -0
- package/dist/prompts/promptForProject.js +64 -0
- package/dist/prompts/promptForProject.js.map +1 -0
- package/dist/prompts/promptForProjectName.js +11 -0
- package/dist/prompts/promptForProjectName.js.map +1 -0
- package/dist/{actions/auth/login/promptProviders.js → prompts/promptForProviders.js} +3 -3
- package/dist/prompts/promptForProviders.js.map +1 -0
- package/dist/prompts/selectMediaLibrary.js +1 -1
- package/dist/prompts/selectMediaLibrary.js.map +1 -1
- package/dist/server/devServer.js +4 -2
- package/dist/server/devServer.js.map +1 -1
- package/dist/server/previewServer.js +17 -11
- package/dist/server/previewServer.js.map +1 -1
- package/dist/server/vite/plugin-schema-extraction.js +201 -0
- package/dist/server/vite/plugin-schema-extraction.js.map +1 -0
- package/dist/server/vite/plugin-typegen.js +217 -0
- package/dist/server/vite/plugin-typegen.js.map +1 -0
- package/dist/services/auth.js +42 -3
- package/dist/services/auth.js.map +1 -1
- package/dist/services/datasets.js +7 -5
- package/dist/services/datasets.js.map +1 -1
- package/dist/services/docs.js +2 -2
- package/dist/services/docs.js.map +1 -1
- package/dist/services/documents.js +56 -0
- package/dist/services/documents.js.map +1 -0
- package/dist/services/embeddings.js +25 -0
- package/dist/services/embeddings.js.map +1 -0
- package/dist/services/getUrlHeaders.js +25 -0
- package/dist/services/getUrlHeaders.js.map +1 -0
- package/dist/services/grants.js +13 -0
- package/dist/services/grants.js.map +1 -0
- package/dist/services/graphql.js +64 -0
- package/dist/services/graphql.js.map +1 -1
- package/dist/services/mcp.js.map +1 -1
- package/dist/services/organizations.js +1 -1
- package/dist/services/organizations.js.map +1 -1
- package/dist/services/projects.js +4 -2
- package/dist/services/projects.js.map +1 -1
- package/dist/services/schemas.js +1 -1
- package/dist/services/schemas.js.map +1 -1
- package/dist/services/telemetry.js +63 -2
- package/dist/services/telemetry.js.map +1 -1
- package/dist/services/userApplications.js +21 -6
- package/dist/services/userApplications.js.map +1 -1
- package/dist/telemetry/build.telemetry.js +13 -0
- package/dist/telemetry/build.telemetry.js.map +1 -0
- package/dist/telemetry/extractSchema.telemetry.js +18 -0
- package/dist/telemetry/extractSchema.telemetry.js.map +1 -0
- package/dist/telemetry/init.telemetry.js +8 -0
- package/dist/telemetry/init.telemetry.js.map +1 -0
- package/dist/telemetry/login.telemetry.js +8 -0
- package/dist/telemetry/login.telemetry.js.map +1 -0
- package/dist/telemetry/mcp.telemetry.js +8 -0
- package/dist/telemetry/mcp.telemetry.js.map +1 -0
- package/dist/types/grants.js +3 -0
- package/dist/types/grants.js.map +1 -0
- package/dist/types.js +6 -1
- package/dist/types.js.map +1 -1
- package/dist/util/appId.js +5 -5
- package/dist/util/appId.js.map +1 -1
- package/dist/util/checkProjectPermissions.js +21 -0
- package/dist/util/checkProjectPermissions.js.map +1 -0
- package/dist/util/cliClient.js +13 -10
- package/dist/util/cliClient.js.map +1 -1
- package/dist/util/compareDependencyVersions.js +74 -38
- package/dist/util/compareDependencyVersions.js.map +1 -1
- package/dist/util/createExpiringConfig.js +64 -0
- package/dist/util/createExpiringConfig.js.map +1 -0
- package/dist/util/detectFramework.js +135 -0
- package/dist/util/detectFramework.js.map +1 -0
- package/dist/util/errorMessages.js +0 -1
- package/dist/util/errorMessages.js.map +1 -1
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js +1 -2
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js.map +1 -1
- package/dist/util/formatSize.js +2 -2
- package/dist/util/formatSize.js.map +1 -1
- package/dist/util/getCliVersion.js +1 -1
- package/dist/util/getCliVersion.js.map +1 -1
- package/dist/util/getLocalPackageVersion.js +31 -23
- package/dist/util/getLocalPackageVersion.js.map +1 -1
- package/dist/util/getProjectDefaults.js.map +1 -1
- package/dist/util/getSanityEnv.js +3 -0
- package/dist/util/getSanityEnv.js.map +1 -0
- package/dist/util/getSharedServerConfig.js +1 -0
- package/dist/util/getSharedServerConfig.js.map +1 -1
- package/dist/util/getWorkspace.js +1 -1
- package/dist/util/getWorkspace.js.map +1 -1
- package/dist/util/isSchemaError.js +11 -0
- package/dist/util/isSchemaError.js.map +1 -0
- package/dist/util/isTar.js +8 -0
- package/dist/util/isTar.js.map +1 -0
- package/dist/util/loadEnv.js +1 -6
- package/dist/util/loadEnv.js.map +1 -1
- package/dist/util/packageManager/getPeerDependencies.js +44 -0
- package/dist/util/packageManager/getPeerDependencies.js.map +1 -0
- package/dist/util/packageManager/installationInfo/analyzeIssues.js +225 -0
- package/dist/util/packageManager/installationInfo/analyzeIssues.js.map +1 -0
- package/dist/util/packageManager/installationInfo/commands.js +73 -0
- package/dist/util/packageManager/installationInfo/commands.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectCliInstallation.js +66 -0
- package/dist/util/packageManager/installationInfo/detectCliInstallation.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectGlobals.js +295 -0
- package/dist/util/packageManager/installationInfo/detectGlobals.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectPackages.js +190 -0
- package/dist/util/packageManager/installationInfo/detectPackages.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectWorkspace.js +192 -0
- package/dist/util/packageManager/installationInfo/detectWorkspace.js.map +1 -0
- package/dist/util/packageManager/installationInfo/index.js +4 -0
- package/dist/util/packageManager/installationInfo/index.js.map +1 -0
- package/dist/util/packageManager/installationInfo/readJsonFile.js +14 -0
- package/dist/util/packageManager/installationInfo/readJsonFile.js.map +1 -0
- package/dist/util/packageManager/installationInfo/resolveVersionRange.js +42 -0
- package/dist/util/packageManager/installationInfo/resolveVersionRange.js.map +1 -0
- package/dist/util/packageManager/installationInfo/types.js +3 -0
- package/dist/util/packageManager/installationInfo/types.js.map +1 -0
- package/dist/util/packageManager/packageManagerChoice.js +1 -20
- package/dist/util/packageManager/packageManagerChoice.js.map +1 -1
- package/dist/util/packageManager/upgradePackages.js +4 -1
- package/dist/util/packageManager/upgradePackages.js.map +1 -1
- package/dist/util/promiseRaceWithTimeout.js +28 -0
- package/dist/util/promiseRaceWithTimeout.js.map +1 -0
- package/dist/util/readdirRecursive.js.map +1 -1
- package/dist/util/resolveLatestVersions.js +2 -2
- package/dist/util/resolveLatestVersions.js.map +1 -1
- package/dist/util/sharedFlags.js +54 -0
- package/dist/util/sharedFlags.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/cleanupOldTelemetryFiles.js +1 -1
- package/dist/util/telemetry/cleanupOldTelemetryFiles.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/createTelemetryStore.js +4 -4
- package/dist/util/telemetry/createTelemetryStore.js.map +1 -0
- package/dist/util/telemetry/createTraceId.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/findTelemetryFiles.js +4 -3
- package/dist/util/telemetry/findTelemetryFiles.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/flushTelemetryFiles.js +29 -18
- package/dist/util/telemetry/flushTelemetryFiles.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/generateTelemetryFilePath.js +2 -2
- package/dist/util/telemetry/generateTelemetryFilePath.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/logger.js +7 -2
- package/dist/util/telemetry/logger.js.map +1 -0
- package/dist/util/telemetry/readNDJSON.js +28 -0
- package/dist/util/telemetry/readNDJSON.js.map +1 -0
- package/dist/util/telemetry/telemetryStoreDebug.js +7 -0
- package/dist/util/telemetry/telemetryStoreDebug.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/trace.js +2 -2
- package/dist/util/telemetry/trace.js.map +1 -0
- package/dist/util/toForwardSlashes.js +8 -0
- package/dist/util/toForwardSlashes.js.map +1 -0
- package/dist/util/update/fetchLatestVersion.js +21 -0
- package/dist/util/update/fetchLatestVersion.js.map +1 -0
- package/dist/util/update/getUpdateCommand.js +20 -0
- package/dist/util/update/getUpdateCommand.js.map +1 -0
- package/dist/util/update/isInstalledUsingYarn.js +17 -0
- package/dist/util/update/isInstalledUsingYarn.js.map +1 -0
- package/dist/util/update/showNotificationUpdate.js +31 -0
- package/dist/util/update/showNotificationUpdate.js.map +1 -0
- package/dist/util/update/updateChecker.js +60 -0
- package/dist/util/update/updateChecker.js.map +1 -0
- package/dist/util/update/updateCheckerDebug.js +4 -0
- package/dist/util/update/updateCheckerDebug.js.map +1 -0
- package/dist/util/warnAboutMissingAppId.js +6 -2
- package/dist/util/warnAboutMissingAppId.js.map +1 -1
- package/dist/util/warnOnNonProductionEnvironment.js +18 -0
- package/dist/util/warnOnNonProductionEnvironment.js.map +1 -0
- package/oclif.config.js +7 -1
- package/oclif.manifest.json +1129 -146
- package/package.json +83 -78
- package/static/favicons/apple-touch-icon.png +0 -0
- package/static/favicons/favicon-192.png +0 -0
- package/static/favicons/favicon-512.png +0 -0
- package/static/favicons/favicon-96.png +0 -0
- package/static/favicons/favicon.ico +0 -0
- package/static/favicons/favicon.svg +12 -0
- package/dist/SanityHelp.d.ts +0 -4
- package/dist/actions/auth/authServer.d.ts +0 -33
- package/dist/actions/auth/getProviderName.d.ts +0 -8
- package/dist/actions/auth/login/getProvider.d.ts +0 -15
- package/dist/actions/auth/login/getSSOProvider.d.ts +0 -13
- package/dist/actions/auth/login/login.d.ts +0 -20
- package/dist/actions/auth/login/promptProviders.d.ts +0 -10
- package/dist/actions/auth/login/promptProviders.js.map +0 -1
- package/dist/actions/auth/login/samlProviderToLoginProvider.d.ts +0 -9
- package/dist/actions/auth/types.d.ts +0 -26
- package/dist/actions/backup/archiveDir.d.ts +0 -10
- package/dist/actions/backup/assertDatasetExist.d.ts +0 -8
- package/dist/actions/backup/backupDownloadDebug.d.ts +0 -1
- package/dist/actions/backup/cleanupTmpDir.d.ts +0 -6
- package/dist/actions/backup/constants.d.ts +0 -1
- package/dist/actions/backup/downloadAsset.d.ts +0 -9
- package/dist/actions/backup/downloadDocument.d.ts +0 -7
- package/dist/actions/backup/fetchNextBackupPage.d.ts +0 -23
- package/dist/actions/backup/progressSpinner.d.ts +0 -14
- package/dist/actions/build/buildApp.d.ts +0 -7
- package/dist/actions/build/buildDebug.d.ts +0 -1
- package/dist/actions/build/buildStaticFiles.d.ts +0 -35
- package/dist/actions/build/buildStudio.d.ts +0 -7
- package/dist/actions/build/buildVendorDependencies.d.ts +0 -11
- package/dist/actions/build/checkRequiredDependencies.d.ts +0 -22
- package/dist/actions/build/checkStudioDependencyVersions.d.ts +0 -2
- package/dist/actions/build/createExternalFromImportMap.d.ts +0 -11
- package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.d.ts +0 -6
- package/dist/actions/build/decorateIndexWithBridgeScript.d.ts +0 -8
- package/dist/actions/build/determineBasePath.d.ts +0 -7
- package/dist/actions/build/generateWebManifest.d.ts +0 -15
- package/dist/actions/build/getAppEnvVars.d.ts +0 -6
- package/dist/actions/build/getAutoUpdatesImportMap.d.ts +0 -21
- package/dist/actions/build/getEntryModule.d.ts +0 -7
- package/dist/actions/build/getPossibleDocumentComponentLocations.d.ts +0 -4
- package/dist/actions/build/getStudioEnvVars.d.ts +0 -6
- package/dist/actions/build/getStudioEnvironmentVariables.d.ts +0 -52
- package/dist/actions/build/getViteConfig.d.ts +0 -66
- package/dist/actions/build/normalizeBasePath.d.ts +0 -6
- package/dist/actions/build/renderDocument.d.ts +0 -15
- package/dist/actions/build/renderDocument.worker.d.ts +0 -1
- package/dist/actions/build/renderDocumentWorker/addTimestampImportMapScriptToHtml.d.ts +0 -6
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.d.ts +0 -19
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.d.ts +0 -13
- package/dist/actions/build/renderDocumentWorker/components/Favicons.d.ts +0 -2
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.d.ts +0 -3
- package/dist/actions/build/renderDocumentWorker/components/NoJavascript.d.ts +0 -3
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.d.ts +0 -5
- package/dist/actions/build/renderDocumentWorker/getDocumentHtml.d.ts +0 -8
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.d.ts +0 -21
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.d.ts +0 -8
- package/dist/actions/build/renderDocumentWorker/types.d.ts +0 -8
- package/dist/actions/build/shouldAutoUpdate.d.ts +0 -16
- package/dist/actions/build/types.d.ts +0 -13
- package/dist/actions/build/writeFavicons.d.ts +0 -1
- package/dist/actions/build/writeSanityRuntime.d.ts +0 -19
- package/dist/actions/build/writeWebManifest.d.ts +0 -4
- package/dist/actions/codemods/deskRename.d.ts +0 -2
- package/dist/actions/codemods/index.d.ts +0 -5
- package/dist/actions/codemods/partsTypeDirective.d.ts +0 -2
- package/dist/actions/codemods/reactIconsV3.d.ts +0 -2
- package/dist/actions/codemods/types.d.ts +0 -8
- package/dist/actions/cors/filterAndValidateOrigin.d.ts +0 -7
- package/dist/actions/dataset/create.d.ts +0 -49
- package/dist/actions/dataset/determineDatasetAclMode.d.ts +0 -37
- package/dist/actions/dataset/processAliasName.d.ts +0 -9
- package/dist/actions/dataset/validateDatasetAliasName.d.ts +0 -1
- package/dist/actions/dataset/validateDatasetName.d.ts +0 -13
- package/dist/actions/debug/gatherDebugInfo.d.ts +0 -2
- package/dist/actions/debug/getGlobalConfigLocation.d.ts +0 -1
- package/dist/actions/debug/types.d.ts +0 -30
- package/dist/actions/deploy/checkDir.d.ts +0 -8
- package/dist/actions/deploy/createStudioUserApplication.d.ts +0 -2
- package/dist/actions/deploy/createUserApplicationForApp.d.ts +0 -2
- package/dist/actions/deploy/deployApp.d.ts +0 -7
- package/dist/actions/deploy/deployDebug.d.ts +0 -1
- package/dist/actions/deploy/deployStudio.d.ts +0 -2
- package/dist/actions/deploy/findUserApplicationForApp.d.ts +0 -15
- package/dist/actions/deploy/findUserApplicationForStudio.d.ts +0 -13
- package/dist/actions/deploy/types.d.ts +0 -11
- package/dist/actions/dev/devAction.d.ts +0 -4
- package/dist/actions/dev/devDebug.d.ts +0 -1
- package/dist/actions/dev/getCoreAppUrl.d.ts +0 -5
- package/dist/actions/dev/getCoreAppUrl.js +0 -10
- package/dist/actions/dev/getCoreAppUrl.js.map +0 -1
- package/dist/actions/dev/getDevServerConfig.d.ts +0 -9
- package/dist/actions/dev/startAppDevServer.d.ts +0 -4
- package/dist/actions/dev/startStudioDevServer.d.ts +0 -4
- package/dist/actions/dev/types.d.ts +0 -10
- package/dist/actions/docs/normalizeDocsPath.d.ts +0 -8
- package/dist/actions/documents/constants.d.ts +0 -1
- package/dist/actions/documents/editor.d.ts +0 -11
- package/dist/actions/documents/types.d.ts +0 -2
- package/dist/actions/documents/validate.d.ts +0 -26
- package/dist/actions/documents/validation/reporters/index.d.ts +0 -5
- package/dist/actions/documents/validation/reporters/jsonReporter.d.ts +0 -2
- package/dist/actions/documents/validation/reporters/ndjsonReporter.d.ts +0 -2
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.d.ts +0 -10
- package/dist/actions/documents/validation/reporters/prettyReporter/index.d.ts +0 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.d.ts +0 -5
- package/dist/actions/documents/validation/reporters/prettyReporter/util.d.ts +0 -53
- package/dist/actions/exec/execScript.d.ts +0 -11
- package/dist/actions/graphql/getGraphQLAPIs.d.ts +0 -2
- package/dist/actions/graphql/getGraphQLAPIs.worker.d.ts +0 -1
- package/dist/actions/graphql/types.d.ts +0 -68
- package/dist/actions/hook/constants.d.ts +0 -1
- package/dist/actions/hook/formatFailure.d.ts +0 -4
- package/dist/actions/hook/types.d.ts +0 -78
- package/dist/actions/init/bootstrapLocalTemplate.d.ts +0 -13
- package/dist/actions/init/bootstrapRemoteTemplate.d.ts +0 -12
- package/dist/actions/init/bootstrapTemplate.d.ts +0 -18
- package/dist/actions/init/checkNextJsReactCompatibility.d.ts +0 -9
- package/dist/actions/init/constants.d.ts +0 -1
- package/dist/actions/init/countNestedFolders.d.ts +0 -1
- package/dist/actions/init/createAppCliConfig.d.ts +0 -5
- package/dist/actions/init/createCliConfig.d.ts +0 -6
- package/dist/actions/init/createPackageManifest.d.ts +0 -6
- package/dist/actions/init/createStudioConfig.d.ts +0 -13
- package/dist/actions/init/determineAppTemplate.d.ts +0 -9
- package/dist/actions/init/env/createOrAppendEnvVars.d.ts +0 -12
- package/dist/actions/init/env/parseAndUpdateEnvVars.d.ts +0 -9
- package/dist/actions/init/env/writeEnvVarsToFile.d.ts +0 -12
- package/dist/actions/init/fetchPostInitPrompt.d.ts +0 -6
- package/dist/actions/init/git.d.ts +0 -1
- package/dist/actions/init/processTemplate.d.ts +0 -7
- package/dist/actions/init/remoteTemplate.d.ts +0 -20
- package/dist/actions/init/resolvePackageManager.d.ts +0 -10
- package/dist/actions/init/setupMCP.d.ts +0 -21
- package/dist/actions/init/setupMCP.js +0 -258
- package/dist/actions/init/setupMCP.js.map +0 -1
- package/dist/actions/init/templates/appQuickstart.d.ts +0 -3
- package/dist/actions/init/templates/appSanityUi.d.ts +0 -3
- package/dist/actions/init/templates/blog.d.ts +0 -3
- package/dist/actions/init/templates/clean.d.ts +0 -3
- package/dist/actions/init/templates/getStarted.d.ts +0 -3
- package/dist/actions/init/templates/index.d.ts +0 -3
- package/dist/actions/init/templates/moviedb.d.ts +0 -3
- package/dist/actions/init/templates/nextjs/index.d.ts +0 -6
- package/dist/actions/init/templates/nextjs/schemaTypes/blog.d.ts +0 -3
- package/dist/actions/init/templates/quickstart.d.ts +0 -3
- package/dist/actions/init/templates/shopify.d.ts +0 -3
- package/dist/actions/init/templates/shopifyOnline.d.ts +0 -3
- package/dist/actions/init/types.d.ts +0 -15
- package/dist/actions/init/updateInitialTemplateMetadata.d.ts +0 -1
- package/dist/actions/manifest/SchemaIcon.d.ts +0 -9
- package/dist/actions/manifest/extractAppManifest.d.ts +0 -20
- package/dist/actions/manifest/extractManifest.d.ts +0 -14
- package/dist/actions/manifest/extractWorkspaceManifest.d.ts +0 -3
- package/dist/actions/manifest/purifyConfig.d.ts +0 -10
- package/dist/actions/manifest/schemaTypeHelpers.d.ts +0 -17
- package/dist/actions/manifest/types.d.ts +0 -119
- package/dist/actions/mcp/detectAvailableEditors.d.ts +0 -8
- package/dist/actions/mcp/getEditorsWithExistingConfig.d.ts +0 -8
- package/dist/actions/mcp/getEditorsWithExistingConfig.js +0 -29
- package/dist/actions/mcp/getEditorsWithExistingConfig.js.map +0 -1
- package/dist/actions/mcp/writeMCPConfig.d.ts +0 -9
- package/dist/actions/media/getMediaLibraryConfig.d.ts +0 -2
- package/dist/actions/media/importAspects.d.ts +0 -52
- package/dist/actions/media/importMedia.d.ts +0 -55
- package/dist/actions/media/importMediaDebug.d.ts +0 -1
- package/dist/actions/organizations/getOrganizationChoices.d.ts +0 -6
- package/dist/actions/organizations/getOrganizationsWithAttachGrantInfo.d.ts +0 -2
- package/dist/actions/organizations/hasProjectAttachGrant.d.ts +0 -1
- package/dist/actions/preview/getPreviewServerConfig.d.ts +0 -15
- package/dist/actions/preview/previewAction.d.ts +0 -10
- package/dist/actions/preview/types.d.ts +0 -2
- package/dist/actions/schema/deleteSchemaAction.d.ts +0 -23
- package/dist/actions/schema/deploySchemas.d.ts +0 -15
- package/dist/actions/schema/extract.d.ts +0 -7
- package/dist/actions/schema/extract.js +0 -38
- package/dist/actions/schema/extract.js.map +0 -1
- package/dist/actions/schema/formatSchemaValidation.d.ts +0 -3
- package/dist/actions/schema/listSchemas.d.ts +0 -12
- package/dist/actions/schema/metafile.d.ts +0 -21
- package/dist/actions/schema/schemaStoreTypes.d.ts +0 -18
- package/dist/actions/schema/schemaStoreTypes.js +0 -19
- package/dist/actions/schema/schemaStoreTypes.js.map +0 -1
- package/dist/actions/schema/utils/debug.d.ts +0 -2
- package/dist/actions/schema/utils/manifestExtractor.d.ts +0 -9
- package/dist/actions/schema/utils/manifestExtractor.js +0 -33
- package/dist/actions/schema/utils/manifestExtractor.js.map +0 -1
- package/dist/actions/schema/utils/manifestReader.d.ts +0 -17
- package/dist/actions/schema/utils/manifestReader.js +0 -71
- package/dist/actions/schema/utils/manifestReader.js.map +0 -1
- package/dist/actions/schema/utils/schemaStoreOutStrings.d.ts +0 -2
- package/dist/actions/schema/utils/schemaStoreValidation.d.ts +0 -29
- package/dist/actions/schema/utils/uniqByProjectIdDataset.d.ts +0 -14
- package/dist/actions/schema/utils/workspaceSchemaId.d.ts +0 -8
- package/dist/actions/schema/validateAction.d.ts +0 -11
- package/dist/actions/telemetry/fetchTelemetryConsent.d.ts +0 -11
- package/dist/actions/telemetry/fetchTelemetryConsent.js +0 -38
- package/dist/actions/telemetry/fetchTelemetryConsent.js.map +0 -1
- package/dist/actions/telemetry/getLearnMoreMessage.d.ts +0 -2
- package/dist/actions/telemetry/getStatusDisplay.d.ts +0 -2
- package/dist/actions/telemetry/getStatusMessage.d.ts +0 -2
- package/dist/actions/telemetry/isValidApiConsentStatus.d.ts +0 -20
- package/dist/actions/telemetry/isValidApiConsentStatus.js +0 -25
- package/dist/actions/telemetry/isValidApiConsentStatus.js.map +0 -1
- package/dist/actions/telemetry/resolveConsent.d.ts +0 -2
- package/dist/actions/telemetry/setConsent.d.ts +0 -13
- package/dist/actions/telemetry/telemetryDebug.d.ts +0 -1
- package/dist/actions/telemetry/telemetryDisclosure.d.ts +0 -1
- package/dist/actions/telemetry/telemetryLearnMoreMessage.d.ts +0 -2
- package/dist/actions/telemetry/types.d.ts +0 -14
- package/dist/actions/telemetry/types.js.map +0 -1
- package/dist/actions/tokens/constants.d.ts +0 -4
- package/dist/actions/tokens/types.d.ts +0 -32
- package/dist/actions/tokens/validateRole.d.ts +0 -9
- package/dist/actions/undeploy/getStudioOrAppUserApplication.d.ts +0 -9
- package/dist/actions/users/getMembersForProject.d.ts +0 -24
- package/dist/actions/users/getPendingInvitations.d.ts +0 -13
- package/dist/actions/users/types.d.ts +0 -39
- package/dist/actions/users/usersDebug.d.ts +0 -1
- package/dist/actions/users/validateEmail.d.ts +0 -1
- package/dist/actions/versions/buildPackageArray.d.ts +0 -18
- package/dist/actions/versions/filterSanityModules.d.ts +0 -8
- package/dist/actions/versions/findSanityModulesVersions.d.ts +0 -14
- package/dist/actions/versions/getFormatters.d.ts +0 -17
- package/dist/actions/versions/tryFindLatestVersion.d.ts +0 -8
- package/dist/actions/versions/types.d.ts +0 -14
- package/dist/actions/versions/versionsDebug.d.ts +0 -1
- package/dist/commands/backup/disable.d.ts +0 -13
- package/dist/commands/backup/download.d.ts +0 -21
- package/dist/commands/backup/enable.d.ts +0 -12
- package/dist/commands/backup/list.d.ts +0 -19
- package/dist/commands/build.d.ts +0 -18
- package/dist/commands/codemod.d.ts +0 -19
- package/dist/commands/cors/add.d.ts +0 -29
- package/dist/commands/cors/delete.d.ts +0 -13
- package/dist/commands/cors/list.d.ts +0 -9
- package/dist/commands/dataset/alias/create.d.ts +0 -13
- package/dist/commands/dataset/alias/delete.d.ts +0 -16
- package/dist/commands/dataset/alias/link.d.ts +0 -17
- package/dist/commands/dataset/alias/unlink.d.ts +0 -16
- package/dist/commands/dataset/copy.d.ts +0 -27
- package/dist/commands/dataset/create.d.ts +0 -15
- package/dist/commands/dataset/delete.d.ts +0 -15
- package/dist/commands/dataset/export.d.ts +0 -26
- package/dist/commands/dataset/import.d.ts +0 -1
- package/dist/commands/dataset/list.d.ts +0 -9
- package/dist/commands/dataset/visibility/get.d.ts +0 -12
- package/dist/commands/dataset/visibility/set.d.ts +0 -13
- package/dist/commands/debug.d.ts +0 -9
- package/dist/commands/deploy.d.ts +0 -23
- package/dist/commands/dev.d.ts +0 -14
- package/dist/commands/docs/browse.d.ts +0 -6
- package/dist/commands/docs/read.d.ts +0 -15
- package/dist/commands/docs/search.d.ts +0 -15
- package/dist/commands/documents/create.d.ts +0 -39
- package/dist/commands/documents/delete.d.ts +0 -17
- package/dist/commands/documents/get.d.ts +0 -16
- package/dist/commands/documents/query.d.ts +0 -19
- package/dist/commands/documents/validate.d.ts +0 -29
- package/dist/commands/exec.d.ts +0 -19
- package/dist/commands/graphql/list.d.ts +0 -9
- package/dist/commands/graphql/undeploy.d.ts +0 -16
- package/dist/commands/hook/attempt.d.ts +0 -13
- package/dist/commands/hook/create.d.ts +0 -9
- package/dist/commands/hook/delete.d.ts +0 -13
- package/dist/commands/hook/list.d.ts +0 -9
- package/dist/commands/hook/logs.d.ts +0 -19
- package/dist/commands/init.d.ts +0 -65
- package/dist/commands/install.d.ts +0 -10
- package/dist/commands/learn.d.ts +0 -6
- package/dist/commands/login.d.ts +0 -13
- package/dist/commands/logout.d.ts +0 -6
- package/dist/commands/manage.d.ts +0 -6
- package/dist/commands/manifest/extract.d.ts +0 -12
- package/dist/commands/mcp/configure.d.ts +0 -9
- package/dist/commands/media/create-aspect.d.ts +0 -9
- package/dist/commands/media/delete-aspect.d.ts +0 -16
- package/dist/commands/media/deploy-aspect.d.ts +0 -20
- package/dist/commands/media/export.d.ts +0 -21
- package/dist/commands/media/import.d.ts +0 -18
- package/dist/commands/openapi/get.d.ts +0 -17
- package/dist/commands/openapi/list.d.ts +0 -14
- package/dist/commands/preview.d.ts +0 -17
- package/dist/commands/projects/list.d.ts +0 -13
- package/dist/commands/schema/delete.d.ts +0 -16
- package/dist/commands/schema/deploy.d.ts +0 -16
- package/dist/commands/schema/extract.d.ts +0 -15
- package/dist/commands/schema/list.d.ts +0 -15
- package/dist/commands/schema/validate.d.ts +0 -15
- package/dist/commands/telemetry/disable.d.ts +0 -8
- package/dist/commands/telemetry/enable.d.ts +0 -8
- package/dist/commands/telemetry/status.d.ts +0 -8
- package/dist/commands/tokens/add.d.ts +0 -19
- package/dist/commands/tokens/delete.d.ts +0 -17
- package/dist/commands/tokens/list.d.ts +0 -12
- package/dist/commands/undeploy.d.ts +0 -8
- package/dist/commands/users/invite.d.ts +0 -17
- package/dist/commands/users/list.d.ts +0 -16
- package/dist/commands/versions.d.ts +0 -6
- package/dist/config/createCliConfig.d.ts +0 -73
- package/dist/config/defineCliConfig.d.ts +0 -3
- package/dist/hooks/prerun/flushTelemetry.worker.d.ts +0 -2
- package/dist/hooks/prerun/setupTelemetry.d.ts +0 -2
- package/dist/index.d.ts +0 -6
- package/dist/index.js +0 -7
- package/dist/index.js.map +0 -1
- package/dist/prompts/init/nextjs.d.ts +0 -5
- package/dist/prompts/init/promptForTypescript.d.ts +0 -1
- package/dist/prompts/promptForDataset.d.ts +0 -17
- package/dist/prompts/promptForDatasetAclMode.d.ts +0 -9
- package/dist/prompts/promptForDatasetAliasName.d.ts +0 -4
- package/dist/prompts/promptForDatasetName.d.ts +0 -4
- package/dist/prompts/promptForMediaLibrary.d.ts +0 -15
- package/dist/prompts/selectDataset.d.ts +0 -3
- package/dist/prompts/selectMediaLibrary.d.ts +0 -5
- package/dist/server/devServer.d.ts +0 -24
- package/dist/server/gracefulServerDeath.d.ts +0 -3
- package/dist/server/previewServer.d.ts +0 -19
- package/dist/server/serverDebug.d.ts +0 -1
- package/dist/server/vite/plugin-sanity-basepath-redirect.d.ts +0 -2
- package/dist/server/vite/plugin-sanity-build-entries.d.ts +0 -9
- package/dist/server/vite/plugin-sanity-favicons.d.ts +0 -17
- package/dist/server/vite/plugin-sanity-runtime-rewrite.d.ts +0 -2
- package/dist/services/auth.d.ts +0 -2
- package/dist/services/backup.d.ts +0 -37
- package/dist/services/cors.d.ts +0 -23
- package/dist/services/datasetAliases.d.ts +0 -31
- package/dist/services/datasets.d.ts +0 -64
- package/dist/services/docs.d.ts +0 -15
- package/dist/services/getProjectFeatures.d.ts +0 -5
- package/dist/services/graphql.d.ts +0 -23
- package/dist/services/hooks.d.ts +0 -16
- package/dist/services/mcp.d.ts +0 -39
- package/dist/services/mediaLibraries.d.ts +0 -52
- package/dist/services/organizations.d.ts +0 -42
- package/dist/services/plans.d.ts +0 -2
- package/dist/services/projects.d.ts +0 -36
- package/dist/services/schemas.d.ts +0 -4
- package/dist/services/telemetry.d.ts +0 -2
- package/dist/services/tokens.d.ts +0 -43
- package/dist/services/user.d.ts +0 -15
- package/dist/services/userApplications.d.ts +0 -77
- package/dist/studioDependencies.d.ts +0 -16
- package/dist/studioDependencies.js.map +0 -1
- package/dist/telemetry/cli.telemetry.d.ts +0 -20
- package/dist/telemetry/store/cleanupOldTelemetryFiles.d.ts +0 -5
- package/dist/telemetry/store/cleanupOldTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/createTelemetryStore.d.ts +0 -39
- package/dist/telemetry/store/createTelemetryStore.js.map +0 -1
- package/dist/telemetry/store/createTraceId.d.ts +0 -10
- package/dist/telemetry/store/createTraceId.js.map +0 -1
- package/dist/telemetry/store/debug.d.ts +0 -5
- package/dist/telemetry/store/debug.js +0 -7
- package/dist/telemetry/store/debug.js.map +0 -1
- package/dist/telemetry/store/findTelemetryFiles.d.ts +0 -13
- package/dist/telemetry/store/findTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/flushTelemetryFiles.d.ts +0 -20
- package/dist/telemetry/store/flushTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/generateTelemetryFilePath.d.ts +0 -17
- package/dist/telemetry/store/generateTelemetryFilePath.js.map +0 -1
- package/dist/telemetry/store/getTelemetryBaseInfo.d.ts +0 -27
- package/dist/telemetry/store/getTelemetryBaseInfo.js +0 -34
- package/dist/telemetry/store/getTelemetryBaseInfo.js.map +0 -1
- package/dist/telemetry/store/logger.d.ts +0 -6
- package/dist/telemetry/store/logger.js.map +0 -1
- package/dist/telemetry/store/trace.d.ts +0 -6
- package/dist/telemetry/store/trace.js.map +0 -1
- package/dist/telemetry/utils/readNDJSON.d.ts +0 -10
- package/dist/telemetry/utils/readNDJSON.js +0 -18
- package/dist/telemetry/utils/readNDJSON.js.map +0 -1
- package/dist/threads/configClient.d.ts +0 -1
- package/dist/threads/configClient.js.map +0 -1
- package/dist/threads/registerBrowserEnv.d.ts +0 -1
- package/dist/threads/registerBrowserEnv.js.map +0 -1
- package/dist/threads/validateDocuments.d.ts +0 -45
- package/dist/threads/validateDocuments.js.map +0 -1
- package/dist/threads/validateSchema.d.ts +0 -35
- package/dist/threads/validateSchema.js.map +0 -1
- package/dist/types.d.ts +0 -49
- package/dist/typings/deepSortObject.d.js +0 -2
- package/dist/typings/deepSortObject.d.js.map +0 -1
- package/dist/util/absolutify.d.ts +0 -6
- package/dist/util/appId.d.ts +0 -18
- package/dist/util/canLaunchBrowser.d.ts +0 -1
- package/dist/util/cliClient.d.ts +0 -13
- package/dist/util/compareDependencyVersions.d.ts +0 -35
- package/dist/util/copy.d.ts +0 -5
- package/dist/util/copyDir.d.ts +0 -20
- package/dist/util/detectRuntime.d.ts +0 -8
- package/dist/util/determineIsApp.d.ts +0 -7
- package/dist/util/dirIsEmptyOrNonExistent.d.ts +0 -1
- package/dist/util/ensureTrailingSlash.d.ts +0 -9
- package/dist/util/errorMessages.d.ts +0 -4
- package/dist/util/extractDocumentsFromNdjsonOrTarball.d.ts +0 -6
- package/dist/util/findNdjsonEntry.d.ts +0 -7
- package/dist/util/findNdjsonEntry.js +0 -21
- package/dist/util/findNdjsonEntry.js.map +0 -1
- package/dist/util/formatSize.d.ts +0 -6
- package/dist/util/frameworkPort.d.ts +0 -12
- package/dist/util/fsUtils.d.ts +0 -2
- package/dist/util/getCliVersion.d.ts +0 -7
- package/dist/util/getErrorMessage.d.ts +0 -8
- package/dist/util/getLocalPackageVersion.d.ts +0 -9
- package/dist/util/getProjectDefaults.d.ts +0 -11
- package/dist/util/getSharedServerConfig.d.ts +0 -30
- package/dist/util/getWorkspace.d.ts +0 -3
- package/dist/util/humanFileSize.d.ts +0 -1
- package/dist/util/importStudioConfig.d.ts +0 -1
- package/dist/util/importStudioConfig.js +0 -43
- package/dist/util/importStudioConfig.js.map +0 -1
- package/dist/util/isPathDirName.d.ts +0 -1
- package/dist/util/isSanityDocumentish.d.ts +0 -19
- package/dist/util/isStaging.d.ts +0 -7
- package/dist/util/isStaging.js +0 -10
- package/dist/util/isStaging.js.map +0 -1
- package/dist/util/loadEnv.d.ts +0 -1
- package/dist/util/moduleFormatUtils.d.ts +0 -3
- package/dist/util/packageManager/installPackages.d.ts +0 -18
- package/dist/util/packageManager/packageManagerChoice.d.ts +0 -31
- package/dist/util/packageManager/upgradePackages.d.ts +0 -17
- package/dist/util/parseArguments.d.ts +0 -35
- package/dist/util/pluralize.d.ts +0 -8
- package/dist/util/readModuleVersion.d.ts +0 -8
- package/dist/util/readModuleVersion.js +0 -15
- package/dist/util/readModuleVersion.js.map +0 -1
- package/dist/util/readPackageJson.d.ts +0 -31
- package/dist/util/readPackageJson.js +0 -42
- package/dist/util/readPackageJson.js.map +0 -1
- package/dist/util/readPackageManifest.d.ts +0 -21
- package/dist/util/readPackageManifest.js +0 -46
- package/dist/util/readPackageManifest.js.map +0 -1
- package/dist/util/readdirRecursive.d.ts +0 -5
- package/dist/util/resolveLatestVersions.d.ts +0 -7
- package/dist/util/toInt.d.ts +0 -1
- package/dist/util/trimHashFromVersion.d.ts +0 -5
- package/dist/util/uniqBy.d.ts +0 -1
- package/dist/util/uniqBy.js +0 -14
- package/dist/util/uniqBy.js.map +0 -1
- package/dist/util/validation/validateDocumentsUtils.d.ts +0 -12
- package/dist/util/warnAboutMissingAppId.d.ts +0 -7
- package/dist/util/workerChannels.d.ts +0 -59
- package/dist/util/workerChannels.js +0 -172
- package/dist/util/workerChannels.js.map +0 -1
- /package/dist/actions/{telemetry → doctor}/types.js +0 -0
- /package/dist/{studioDependencies.js → actions/init/studioDependencies.js} +0 -0
- /package/dist/{telemetry/store → util/telemetry}/createTraceId.js +0 -0
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { existsSync } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { logSymbols } from '@sanity/cli-core/ux';
|
|
4
|
+
import { runTypegenGenerate, TypegenWatchModeTrace, TypesGeneratedTrace } from '@sanity/codegen';
|
|
5
|
+
import debounce from 'lodash-es/debounce.js';
|
|
6
|
+
import mean from 'lodash-es/mean.js';
|
|
7
|
+
import once from 'lodash-es/once.js';
|
|
8
|
+
import picomatch from 'picomatch';
|
|
9
|
+
import { toForwardSlashes } from '../../util/toForwardSlashes.js';
|
|
10
|
+
/**
|
|
11
|
+
* Default glob patterns to watch for query file changes.
|
|
12
|
+
* Covers common source directory naming conventions.
|
|
13
|
+
*/ const DEFAULT_QUERY_PATTERNS = [
|
|
14
|
+
'./src/**/*.{ts,tsx,js,jsx}',
|
|
15
|
+
'./app/**/*.{ts,tsx,js,jsx}'
|
|
16
|
+
];
|
|
17
|
+
/** Default debounce delay in milliseconds */ const DEFAULT_DEBOUNCE_MS = 1000;
|
|
18
|
+
/**
|
|
19
|
+
* Delay before initial generation to allow Vite to finish startup
|
|
20
|
+
* and avoid race conditions with module resolution.
|
|
21
|
+
*/ const INITIAL_GENERATION_DELAY_MS = 1000;
|
|
22
|
+
/**
|
|
23
|
+
* Creates a Vite plugin that automatically generates TypeScript types during development and build.
|
|
24
|
+
*
|
|
25
|
+
* **During development:**
|
|
26
|
+
* The plugin performs an initial generation when the dev server starts, then watches
|
|
27
|
+
* for file changes and re-generates types when relevant files are modified.
|
|
28
|
+
*
|
|
29
|
+
* **During build:**
|
|
30
|
+
* The plugin generates types once at the end of the build process.
|
|
31
|
+
*
|
|
32
|
+
* **Prerequisites:**
|
|
33
|
+
* The schema.json file must exist before typegen can run. Run `sanity schema extract`
|
|
34
|
+
* first to generate the schema file.
|
|
35
|
+
*
|
|
36
|
+
* @param options - Configuration options for the plugin
|
|
37
|
+
* @returns A Vite plugin configured for typegen
|
|
38
|
+
*
|
|
39
|
+
* @internal
|
|
40
|
+
*/ export function sanityTypegenPlugin(options) {
|
|
41
|
+
const { config: inputConfig, output = console, telemetryLogger, workDir } = options;
|
|
42
|
+
// Apply defaults to config
|
|
43
|
+
const config = {
|
|
44
|
+
formatGeneratedCode: inputConfig.formatGeneratedCode ?? false,
|
|
45
|
+
generates: inputConfig.generates ?? 'sanity.types.ts',
|
|
46
|
+
overloadClientMethods: inputConfig.overloadClientMethods ?? false,
|
|
47
|
+
path: inputConfig.path ?? DEFAULT_QUERY_PATTERNS,
|
|
48
|
+
schema: inputConfig.schema ?? 'schema.json'
|
|
49
|
+
};
|
|
50
|
+
// Build query patterns from config
|
|
51
|
+
const queryPatterns = Array.isArray(config.path) ? config.path : [
|
|
52
|
+
config.path
|
|
53
|
+
];
|
|
54
|
+
// Resolved after Vite config is available
|
|
55
|
+
let resolvedSchemaPath;
|
|
56
|
+
// State for concurrency control
|
|
57
|
+
let isGenerating = false;
|
|
58
|
+
let pendingGeneration = false;
|
|
59
|
+
// Stats for telemetry
|
|
60
|
+
const startTime = Date.now();
|
|
61
|
+
const stats = {
|
|
62
|
+
failedCount: 0,
|
|
63
|
+
successfulDurations: []
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Runs type generation with concurrency control.
|
|
67
|
+
* If generation is already running, queues one more generation to run after completion.
|
|
68
|
+
* Returns the generation result, or null if generation was skipped or failed.
|
|
69
|
+
*/ async function runGeneration(isBuilding = false) {
|
|
70
|
+
if (isGenerating) {
|
|
71
|
+
pendingGeneration = true;
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
isGenerating = true;
|
|
75
|
+
pendingGeneration = false;
|
|
76
|
+
const generationStartTime = Date.now();
|
|
77
|
+
try {
|
|
78
|
+
// Validate schema.json exists
|
|
79
|
+
if (!existsSync(resolvedSchemaPath)) {
|
|
80
|
+
output.error(`${logSymbols.error} Schema file not found: ${config.schema}\n` + `Run "sanity schema extract" first to generate the schema file.`);
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
const result = await runTypegenGenerate({
|
|
84
|
+
config,
|
|
85
|
+
workDir
|
|
86
|
+
});
|
|
87
|
+
if (isBuilding) {
|
|
88
|
+
// Add newline for better formatting in build output
|
|
89
|
+
output.log('');
|
|
90
|
+
}
|
|
91
|
+
if (result.filesWithErrors > 0) {
|
|
92
|
+
output.log(logSymbols.warning, `Generated types to ${config.generates} (with errors in ${result.filesWithErrors} file${result.filesWithErrors === 1 ? '' : 's'})`);
|
|
93
|
+
} else {
|
|
94
|
+
output.log(logSymbols.success, `Generated types to ${config.generates}`);
|
|
95
|
+
}
|
|
96
|
+
// Track stats for telemetry (all completed generations count as successful)
|
|
97
|
+
stats.successfulDurations.push(Date.now() - generationStartTime);
|
|
98
|
+
return result;
|
|
99
|
+
} catch (err) {
|
|
100
|
+
output.error(`${logSymbols.error} Generation failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
101
|
+
stats.failedCount++;
|
|
102
|
+
return null;
|
|
103
|
+
} finally{
|
|
104
|
+
isGenerating = false;
|
|
105
|
+
// If a change came in during generation, run again
|
|
106
|
+
if (pendingGeneration) {
|
|
107
|
+
pendingGeneration = false;
|
|
108
|
+
void runGeneration();
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
const debouncedGenerate = debounce(()=>{
|
|
113
|
+
void runGeneration();
|
|
114
|
+
}, DEFAULT_DEBOUNCE_MS);
|
|
115
|
+
// Create a matcher function from query patterns
|
|
116
|
+
const isQueryMatch = picomatch(queryPatterns);
|
|
117
|
+
return {
|
|
118
|
+
name: 'sanity/typegen',
|
|
119
|
+
configResolved () {
|
|
120
|
+
const rootDir = workDir;
|
|
121
|
+
resolvedSchemaPath = path.isAbsolute(config.schema) ? config.schema : path.join(rootDir, config.schema);
|
|
122
|
+
},
|
|
123
|
+
configureServer (server) {
|
|
124
|
+
const trace = telemetryLogger?.trace(TypegenWatchModeTrace);
|
|
125
|
+
trace?.start();
|
|
126
|
+
trace?.log({
|
|
127
|
+
step: 'started'
|
|
128
|
+
});
|
|
129
|
+
// Build absolute patterns for query files
|
|
130
|
+
const absoluteQueryPatterns = queryPatterns.map((pattern)=>path.isAbsolute(pattern) ? pattern : path.join(workDir, pattern));
|
|
131
|
+
// Add query patterns AND schema.json to Vite's watcher
|
|
132
|
+
server.watcher.add([
|
|
133
|
+
...absoluteQueryPatterns,
|
|
134
|
+
resolvedSchemaPath
|
|
135
|
+
]);
|
|
136
|
+
// Listen for file changes
|
|
137
|
+
const handleChange = (filePath)=>{
|
|
138
|
+
const relativePath = path.isAbsolute(filePath) ? path.relative(workDir, filePath) : filePath;
|
|
139
|
+
// Normalize to forward slashes for cross-platform picomatch compatibility
|
|
140
|
+
const normalizedPath = toForwardSlashes(relativePath);
|
|
141
|
+
// Trigger on schema.json change OR matching query file
|
|
142
|
+
if (filePath === resolvedSchemaPath || isQueryMatch(normalizedPath)) {
|
|
143
|
+
debouncedGenerate();
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
// Prepare function to log "stopped" event to trace and complete the trace
|
|
147
|
+
const onClose = once(()=>{
|
|
148
|
+
// Cancel any pending debounced extractions
|
|
149
|
+
debouncedGenerate.cancel();
|
|
150
|
+
if (trace) {
|
|
151
|
+
trace.log({
|
|
152
|
+
averageGenerationDuration: mean(stats.successfulDurations) || 0,
|
|
153
|
+
generationFailedCount: stats.failedCount,
|
|
154
|
+
generationSuccessfulCount: stats.successfulDurations.length,
|
|
155
|
+
step: 'stopped',
|
|
156
|
+
watcherDuration: Date.now() - startTime
|
|
157
|
+
});
|
|
158
|
+
trace.complete();
|
|
159
|
+
}
|
|
160
|
+
// Clean up process listeners (must always run, not just when trace exists)
|
|
161
|
+
process.off('SIGTERM', onClose);
|
|
162
|
+
process.off('SIGINT', onClose);
|
|
163
|
+
});
|
|
164
|
+
server.watcher.on('change', handleChange);
|
|
165
|
+
server.watcher.on('add', handleChange);
|
|
166
|
+
server.watcher.on('unlink', handleChange);
|
|
167
|
+
// Call the onClose method when watcher is closed or when process is stopped/killed
|
|
168
|
+
server.watcher.on('close', onClose);
|
|
169
|
+
process.on('SIGTERM', onClose);
|
|
170
|
+
process.on('SIGINT', onClose);
|
|
171
|
+
// Run initial generation after server is ready
|
|
172
|
+
const startGeneration = ()=>{
|
|
173
|
+
setTimeout(()=>{
|
|
174
|
+
// Notify about typegen enabled
|
|
175
|
+
output.info(logSymbols.info, 'Typegen enabled. Watching:');
|
|
176
|
+
for (const pattern of queryPatterns){
|
|
177
|
+
output.info(` - ${pattern}`);
|
|
178
|
+
}
|
|
179
|
+
output.info(` - ${config.schema} (schema)`);
|
|
180
|
+
// Perform first generation
|
|
181
|
+
void runGeneration();
|
|
182
|
+
}, INITIAL_GENERATION_DELAY_MS);
|
|
183
|
+
};
|
|
184
|
+
if (server.httpServer) {
|
|
185
|
+
server.httpServer.once('listening', startGeneration);
|
|
186
|
+
} else {
|
|
187
|
+
// Middleware mode - no HTTP server, run generation immediately
|
|
188
|
+
startGeneration();
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
async buildEnd () {
|
|
192
|
+
// Build mode: One-time generation with telemetry tracking
|
|
193
|
+
const result = await runGeneration(true);
|
|
194
|
+
// Only log telemetry if generation completed successfully
|
|
195
|
+
if (result && telemetryLogger) {
|
|
196
|
+
const trace = telemetryLogger.trace(TypesGeneratedTrace);
|
|
197
|
+
trace.start();
|
|
198
|
+
trace.log({
|
|
199
|
+
configMethod: 'cli',
|
|
200
|
+
configOverloadClientMethods: config.overloadClientMethods ?? false,
|
|
201
|
+
emptyUnionTypeNodesGenerated: result.emptyUnionTypeNodesGenerated,
|
|
202
|
+
filesWithErrors: result.filesWithErrors,
|
|
203
|
+
outputSize: result.code.length,
|
|
204
|
+
queriesCount: result.queriesCount,
|
|
205
|
+
queryFilesCount: result.queryFilesCount,
|
|
206
|
+
schemaTypesCount: result.schemaTypesCount,
|
|
207
|
+
typeNodesGenerated: result.typeNodesGenerated,
|
|
208
|
+
unknownTypeNodesGenerated: result.unknownTypeNodesGenerated,
|
|
209
|
+
unknownTypeNodesRatio: result.typeNodesGenerated > 0 ? result.unknownTypeNodesGenerated / result.typeNodesGenerated : 0
|
|
210
|
+
});
|
|
211
|
+
trace.complete();
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
//# sourceMappingURL=plugin-typegen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/server/vite/plugin-typegen.ts"],"sourcesContent":["import {existsSync} from 'node:fs'\nimport path from 'node:path'\n\nimport {CLITelemetryStore} from '@sanity/cli-core'\nimport {logSymbols} from '@sanity/cli-core/ux'\nimport {\n type GenerationResult,\n runTypegenGenerate,\n type TypeGenConfig,\n TypegenWatchModeTrace,\n TypesGeneratedTrace,\n} from '@sanity/codegen'\nimport debounce from 'lodash-es/debounce.js'\nimport mean from 'lodash-es/mean.js'\nimport once from 'lodash-es/once.js'\nimport picomatch from 'picomatch'\nimport {type Plugin} from 'vite'\n\nimport {toForwardSlashes} from '../../util/toForwardSlashes.js'\n\n/**\n * Default glob patterns to watch for query file changes.\n * Covers common source directory naming conventions.\n */\nconst DEFAULT_QUERY_PATTERNS = ['./src/**/*.{ts,tsx,js,jsx}', './app/**/*.{ts,tsx,js,jsx}']\n\n/** Default debounce delay in milliseconds */\nconst DEFAULT_DEBOUNCE_MS = 1000\n\n/**\n * Delay before initial generation to allow Vite to finish startup\n * and avoid race conditions with module resolution.\n */\nconst INITIAL_GENERATION_DELAY_MS = 1000\n\n/**\n * Options for the Sanity typegen Vite plugin.\n *\n * @internal\n */\ninterface TypegenPluginOptions {\n /**\n * Typegen configuration from sanity.cli.ts.\n * All fields are optional and will use sensible defaults.\n */\n config: Partial<TypeGenConfig>\n\n /**\n * Working directory containing the Sanity configuration.\n * This should be the root of your Sanity Studio project.\n */\n workDir: string\n\n /**\n * Logger for output messages. Must implement `log`, `info`, and `error` methods.\n * @defaultValue `console`\n */\n output?: Pick<Console, 'error' | 'info' | 'log'>\n\n /**\n * Telemetry logger for the Sanity CLI tooling.\n */\n telemetryLogger?: CLITelemetryStore\n}\n\n/**\n * Creates a Vite plugin that automatically generates TypeScript types during development and build.\n *\n * **During development:**\n * The plugin performs an initial generation when the dev server starts, then watches\n * for file changes and re-generates types when relevant files are modified.\n *\n * **During build:**\n * The plugin generates types once at the end of the build process.\n *\n * **Prerequisites:**\n * The schema.json file must exist before typegen can run. Run `sanity schema extract`\n * first to generate the schema file.\n *\n * @param options - Configuration options for the plugin\n * @returns A Vite plugin configured for typegen\n *\n * @internal\n */\nexport function sanityTypegenPlugin(options: TypegenPluginOptions): Plugin {\n const {config: inputConfig, output = console, telemetryLogger, workDir} = options\n\n // Apply defaults to config\n const config: TypeGenConfig = {\n formatGeneratedCode: inputConfig.formatGeneratedCode ?? false,\n generates: inputConfig.generates ?? 'sanity.types.ts',\n overloadClientMethods: inputConfig.overloadClientMethods ?? false,\n path: inputConfig.path ?? DEFAULT_QUERY_PATTERNS,\n schema: inputConfig.schema ?? 'schema.json',\n }\n\n // Build query patterns from config\n const queryPatterns = Array.isArray(config.path) ? config.path : [config.path]\n\n // Resolved after Vite config is available\n let resolvedSchemaPath: string\n\n // State for concurrency control\n let isGenerating = false\n let pendingGeneration = false\n\n // Stats for telemetry\n const startTime = Date.now()\n const stats: {failedCount: number; successfulDurations: number[]} = {\n failedCount: 0,\n successfulDurations: [],\n }\n\n /**\n * Runs type generation with concurrency control.\n * If generation is already running, queues one more generation to run after completion.\n * Returns the generation result, or null if generation was skipped or failed.\n */\n async function runGeneration(isBuilding = false): Promise<GenerationResult | null> {\n if (isGenerating) {\n pendingGeneration = true\n return null\n }\n\n isGenerating = true\n pendingGeneration = false\n\n const generationStartTime = Date.now()\n\n try {\n // Validate schema.json exists\n if (!existsSync(resolvedSchemaPath)) {\n output.error(\n `${logSymbols.error} Schema file not found: ${config.schema}\\n` +\n `Run \"sanity schema extract\" first to generate the schema file.`,\n )\n return null\n }\n\n const result = await runTypegenGenerate({\n config,\n workDir,\n })\n\n if (isBuilding) {\n // Add newline for better formatting in build output\n output.log('')\n }\n\n if (result.filesWithErrors > 0) {\n output.log(\n logSymbols.warning,\n `Generated types to ${config.generates} (with errors in ${result.filesWithErrors} file${result.filesWithErrors === 1 ? '' : 's'})`,\n )\n } else {\n output.log(logSymbols.success, `Generated types to ${config.generates}`)\n }\n\n // Track stats for telemetry (all completed generations count as successful)\n stats.successfulDurations.push(Date.now() - generationStartTime)\n\n return result\n } catch (err) {\n output.error(\n `${logSymbols.error} Generation failed: ${err instanceof Error ? err.message : String(err)}`,\n )\n stats.failedCount++\n return null\n } finally {\n isGenerating = false\n\n // If a change came in during generation, run again\n if (pendingGeneration) {\n pendingGeneration = false\n void runGeneration()\n }\n }\n }\n\n const debouncedGenerate = debounce(() => {\n void runGeneration()\n }, DEFAULT_DEBOUNCE_MS)\n\n // Create a matcher function from query patterns\n const isQueryMatch = picomatch(queryPatterns)\n\n return {\n name: 'sanity/typegen',\n\n configResolved() {\n const rootDir = workDir\n\n resolvedSchemaPath = path.isAbsolute(config.schema)\n ? config.schema\n : path.join(rootDir, config.schema)\n },\n\n configureServer(server) {\n const trace = telemetryLogger?.trace(TypegenWatchModeTrace)\n trace?.start()\n trace?.log({step: 'started'})\n\n // Build absolute patterns for query files\n const absoluteQueryPatterns = queryPatterns.map((pattern) =>\n path.isAbsolute(pattern) ? pattern : path.join(workDir, pattern),\n )\n\n // Add query patterns AND schema.json to Vite's watcher\n server.watcher.add([...absoluteQueryPatterns, resolvedSchemaPath])\n\n // Listen for file changes\n const handleChange = (filePath: string) => {\n const relativePath = path.isAbsolute(filePath) ? path.relative(workDir, filePath) : filePath\n // Normalize to forward slashes for cross-platform picomatch compatibility\n const normalizedPath = toForwardSlashes(relativePath)\n\n // Trigger on schema.json change OR matching query file\n if (filePath === resolvedSchemaPath || isQueryMatch(normalizedPath)) {\n debouncedGenerate()\n }\n }\n\n // Prepare function to log \"stopped\" event to trace and complete the trace\n const onClose = once(() => {\n // Cancel any pending debounced extractions\n debouncedGenerate.cancel()\n\n if (trace) {\n trace.log({\n averageGenerationDuration: mean(stats.successfulDurations) || 0,\n generationFailedCount: stats.failedCount,\n generationSuccessfulCount: stats.successfulDurations.length,\n step: 'stopped',\n watcherDuration: Date.now() - startTime,\n })\n trace.complete()\n }\n\n // Clean up process listeners (must always run, not just when trace exists)\n process.off('SIGTERM', onClose)\n process.off('SIGINT', onClose)\n })\n\n server.watcher.on('change', handleChange)\n server.watcher.on('add', handleChange)\n server.watcher.on('unlink', handleChange)\n\n // Call the onClose method when watcher is closed or when process is stopped/killed\n server.watcher.on('close', onClose)\n process.on('SIGTERM', onClose)\n process.on('SIGINT', onClose)\n\n // Run initial generation after server is ready\n const startGeneration = () => {\n setTimeout(() => {\n // Notify about typegen enabled\n output.info(logSymbols.info, 'Typegen enabled. Watching:')\n for (const pattern of queryPatterns) {\n output.info(` - ${pattern}`)\n }\n output.info(` - ${config.schema} (schema)`)\n\n // Perform first generation\n void runGeneration()\n }, INITIAL_GENERATION_DELAY_MS)\n }\n\n if (server.httpServer) {\n server.httpServer.once('listening', startGeneration)\n } else {\n // Middleware mode - no HTTP server, run generation immediately\n startGeneration()\n }\n },\n\n async buildEnd() {\n // Build mode: One-time generation with telemetry tracking\n const result = await runGeneration(true)\n\n // Only log telemetry if generation completed successfully\n if (result && telemetryLogger) {\n const trace = telemetryLogger.trace(TypesGeneratedTrace)\n trace.start()\n trace.log({\n configMethod: 'cli',\n configOverloadClientMethods: config.overloadClientMethods ?? false,\n emptyUnionTypeNodesGenerated: result.emptyUnionTypeNodesGenerated,\n filesWithErrors: result.filesWithErrors,\n outputSize: result.code.length,\n queriesCount: result.queriesCount,\n queryFilesCount: result.queryFilesCount,\n schemaTypesCount: result.schemaTypesCount,\n typeNodesGenerated: result.typeNodesGenerated,\n unknownTypeNodesGenerated: result.unknownTypeNodesGenerated,\n unknownTypeNodesRatio:\n result.typeNodesGenerated > 0\n ? result.unknownTypeNodesGenerated / result.typeNodesGenerated\n : 0,\n })\n trace.complete()\n }\n },\n } satisfies Plugin\n}\n"],"names":["existsSync","path","logSymbols","runTypegenGenerate","TypegenWatchModeTrace","TypesGeneratedTrace","debounce","mean","once","picomatch","toForwardSlashes","DEFAULT_QUERY_PATTERNS","DEFAULT_DEBOUNCE_MS","INITIAL_GENERATION_DELAY_MS","sanityTypegenPlugin","options","config","inputConfig","output","console","telemetryLogger","workDir","formatGeneratedCode","generates","overloadClientMethods","schema","queryPatterns","Array","isArray","resolvedSchemaPath","isGenerating","pendingGeneration","startTime","Date","now","stats","failedCount","successfulDurations","runGeneration","isBuilding","generationStartTime","error","result","log","filesWithErrors","warning","success","push","err","Error","message","String","debouncedGenerate","isQueryMatch","name","configResolved","rootDir","isAbsolute","join","configureServer","server","trace","start","step","absoluteQueryPatterns","map","pattern","watcher","add","handleChange","filePath","relativePath","relative","normalizedPath","onClose","cancel","averageGenerationDuration","generationFailedCount","generationSuccessfulCount","length","watcherDuration","complete","process","off","on","startGeneration","setTimeout","info","httpServer","buildEnd","configMethod","configOverloadClientMethods","emptyUnionTypeNodesGenerated","outputSize","code","queriesCount","queryFilesCount","schemaTypesCount","typeNodesGenerated","unknownTypeNodesGenerated","unknownTypeNodesRatio"],"mappings":"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"}
|
package/dist/services/auth.js
CHANGED
|
@@ -1,13 +1,52 @@
|
|
|
1
1
|
import { getGlobalCliClient } from '@sanity/cli-core';
|
|
2
|
-
export const AUTH_API_VERSION = '
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
export const AUTH_API_VERSION = 'v2025-09-23';
|
|
3
|
+
async function getUnauthenticatedClient() {
|
|
4
|
+
return getGlobalCliClient({
|
|
5
|
+
apiVersion: AUTH_API_VERSION,
|
|
6
|
+
unauthenticated: true
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Invalidate the current user session
|
|
11
|
+
*
|
|
12
|
+
* @param token - Optional token to invalidate.
|
|
13
|
+
*/ export async function logout(token) {
|
|
14
|
+
let client = await getGlobalCliClient({
|
|
5
15
|
apiVersion: AUTH_API_VERSION
|
|
6
16
|
});
|
|
17
|
+
if (token) {
|
|
18
|
+
client = client.withConfig({
|
|
19
|
+
token
|
|
20
|
+
});
|
|
21
|
+
}
|
|
7
22
|
return client.request({
|
|
8
23
|
method: 'POST',
|
|
9
24
|
uri: '/auth/logout'
|
|
10
25
|
});
|
|
11
26
|
}
|
|
27
|
+
export async function getProviders() {
|
|
28
|
+
const client = await getUnauthenticatedClient();
|
|
29
|
+
return client.request({
|
|
30
|
+
uri: '/auth/providers'
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
export async function getVercelProviderUrl() {
|
|
34
|
+
const client = (await getUnauthenticatedClient()).withConfig({
|
|
35
|
+
apiVersion: 'v1'
|
|
36
|
+
});
|
|
37
|
+
return client.getUrl('/auth/login/vercel');
|
|
38
|
+
}
|
|
39
|
+
export async function getSSOProviders(orgSlug) {
|
|
40
|
+
const client = await getUnauthenticatedClient();
|
|
41
|
+
return client.request({
|
|
42
|
+
uri: `/auth/organizations/by-slug/${orgSlug}/providers`
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
export async function getTokenDetails(queryString) {
|
|
46
|
+
const client = await getUnauthenticatedClient();
|
|
47
|
+
return client.request({
|
|
48
|
+
uri: `/auth/fetch${queryString}`
|
|
49
|
+
});
|
|
50
|
+
}
|
|
12
51
|
|
|
13
52
|
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/services/auth.ts"],"sourcesContent":["import {getGlobalCliClient} from '@sanity/cli-core'\n\nexport const AUTH_API_VERSION = '
|
|
1
|
+
{"version":3,"sources":["../../src/services/auth.ts"],"sourcesContent":["import {getGlobalCliClient} from '@sanity/cli-core'\n\nimport {\n type ProvidersResponse,\n type SamlLoginProvider,\n type TokenDetails,\n} from '../actions/auth/types.js'\n\nexport const AUTH_API_VERSION = 'v2025-09-23'\n\nasync function getUnauthenticatedClient() {\n return getGlobalCliClient({apiVersion: AUTH_API_VERSION, unauthenticated: true})\n}\n\n/**\n * Invalidate the current user session\n *\n * @param token - Optional token to invalidate.\n */\nexport async function logout(token?: string) {\n let client = await getGlobalCliClient({apiVersion: AUTH_API_VERSION})\n\n if (token) {\n client = client.withConfig({token})\n }\n\n return client.request({method: 'POST', uri: '/auth/logout'})\n}\n\nexport async function getProviders() {\n const client = await getUnauthenticatedClient()\n\n return client.request<ProvidersResponse>({uri: '/auth/providers'})\n}\n\nexport async function getVercelProviderUrl() {\n const client = (await getUnauthenticatedClient()).withConfig({apiVersion: 'v1'})\n return client.getUrl('/auth/login/vercel')\n}\n\nexport async function getSSOProviders(orgSlug: string) {\n const client = await getUnauthenticatedClient()\n\n return client.request<SamlLoginProvider[]>({\n uri: `/auth/organizations/by-slug/${orgSlug}/providers`,\n })\n}\n\nexport async function getTokenDetails(queryString: string) {\n const client = await getUnauthenticatedClient()\n\n return client.request<TokenDetails>({uri: `/auth/fetch${queryString}`})\n}\n"],"names":["getGlobalCliClient","AUTH_API_VERSION","getUnauthenticatedClient","apiVersion","unauthenticated","logout","token","client","withConfig","request","method","uri","getProviders","getVercelProviderUrl","getUrl","getSSOProviders","orgSlug","getTokenDetails","queryString"],"mappings":"AAAA,SAAQA,kBAAkB,QAAO,mBAAkB;AAQnD,OAAO,MAAMC,mBAAmB,cAAa;AAE7C,eAAeC;IACb,OAAOF,mBAAmB;QAACG,YAAYF;QAAkBG,iBAAiB;IAAI;AAChF;AAEA;;;;CAIC,GACD,OAAO,eAAeC,OAAOC,KAAc;IACzC,IAAIC,SAAS,MAAMP,mBAAmB;QAACG,YAAYF;IAAgB;IAEnE,IAAIK,OAAO;QACTC,SAASA,OAAOC,UAAU,CAAC;YAACF;QAAK;IACnC;IAEA,OAAOC,OAAOE,OAAO,CAAC;QAACC,QAAQ;QAAQC,KAAK;IAAc;AAC5D;AAEA,OAAO,eAAeC;IACpB,MAAML,SAAS,MAAML;IAErB,OAAOK,OAAOE,OAAO,CAAoB;QAACE,KAAK;IAAiB;AAClE;AAEA,OAAO,eAAeE;IACpB,MAAMN,SAAS,AAAC,CAAA,MAAML,0BAAyB,EAAGM,UAAU,CAAC;QAACL,YAAY;IAAI;IAC9E,OAAOI,OAAOO,MAAM,CAAC;AACvB;AAEA,OAAO,eAAeC,gBAAgBC,OAAe;IACnD,MAAMT,SAAS,MAAML;IAErB,OAAOK,OAAOE,OAAO,CAAsB;QACzCE,KAAK,CAAC,4BAA4B,EAAEK,QAAQ,UAAU,CAAC;IACzD;AACF;AAEA,OAAO,eAAeC,gBAAgBC,WAAmB;IACvD,MAAMX,SAAS,MAAML;IAErB,OAAOK,OAAOE,OAAO,CAAe;QAACE,KAAK,CAAC,WAAW,EAAEO,aAAa;IAAA;AACvE"}
|
|
@@ -29,14 +29,16 @@ export async function editDatasetAcl({ aclMode, datasetName, projectId }) {
|
|
|
29
29
|
aclMode
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
|
-
export async function createDataset({ aclMode, datasetName, projectId }) {
|
|
32
|
+
export async function createDataset({ aclMode, datasetName, embeddings, projectId }) {
|
|
33
33
|
const client = await getDatasetClient(projectId);
|
|
34
|
+
const options = {};
|
|
34
35
|
if (aclMode) {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
options.aclMode = aclMode;
|
|
37
|
+
}
|
|
38
|
+
if (embeddings) {
|
|
39
|
+
options.embeddings = embeddings;
|
|
38
40
|
}
|
|
39
|
-
return client.datasets.create(datasetName);
|
|
41
|
+
return client.datasets.create(datasetName, options);
|
|
40
42
|
}
|
|
41
43
|
export async function copyDataset({ projectId, skipHistory, sourceDataset, targetDataset }) {
|
|
42
44
|
const client = await getDatasetClient(projectId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/services/datasets.ts"],"sourcesContent":["import {getProjectCliClient} from '@sanity/cli-core'\nimport {type DatasetAclMode} from '@sanity/client'\nimport {EventSource} from 'eventsource'\nimport {Observable} from 'rxjs'\n\nexport const DATASET_API_VERSION = 'v2025-09-16'\n\nfunction getDatasetClient(projectId: string) {\n return getProjectCliClient({\n apiVersion: DATASET_API_VERSION,\n projectId,\n requireUser: true,\n })\n}\n\nexport async function listDatasets(projectId: string) {\n const client = await getDatasetClient(projectId)\n return client.datasets.list()\n}\n\nexport interface DatasetAliasDefinition {\n datasetName: string | null\n name: string\n}\n\nexport async function listDatasetAliases(projectId: string): Promise<DatasetAliasDefinition[]> {\n const client = await getDatasetClient(projectId)\n return client.request<DatasetAliasDefinition[]>({uri: '/aliases'})\n}\n\ninterface DeleteDatasetOptions {\n datasetName: string\n projectId: string\n}\n\nexport async function deleteDataset({datasetName, projectId}: DeleteDatasetOptions) {\n const client = await getDatasetClient(projectId)\n return client.datasets.delete(datasetName)\n}\n\ninterface EditDatasetAclOptions {\n aclMode: 'private' | 'public'\n datasetName: string\n projectId: string\n}\n\nexport async function editDatasetAcl({aclMode, datasetName, projectId}: EditDatasetAclOptions) {\n const client = await getDatasetClient(projectId)\n return client.datasets.edit(datasetName, {aclMode})\n}\n\ninterface CreateDatasetOptions {\n datasetName: string\n projectId: string\n\n aclMode?: DatasetAclMode\n}\n\nexport async function createDataset({aclMode, datasetName, projectId}: CreateDatasetOptions) {\n const client = await getDatasetClient(projectId)\n\n if (aclMode) {\n return client.datasets.create(datasetName, {aclMode})\n }\n\n return client.datasets.create(datasetName)\n}\n\ninterface CopyDatasetOptions {\n projectId: string\n skipHistory: boolean\n sourceDataset: string\n targetDataset: string\n}\n\ninterface CopyDatasetResponse {\n jobId: string\n}\n\nexport async function copyDataset({\n projectId,\n skipHistory,\n sourceDataset,\n targetDataset,\n}: CopyDatasetOptions): Promise<CopyDatasetResponse> {\n const client = await getDatasetClient(projectId)\n return client.request<CopyDatasetResponse>({\n body: {\n skipHistory,\n targetDataset,\n },\n method: 'PUT',\n uri: `/datasets/${sourceDataset}/copy`,\n })\n}\n\ninterface ListDatasetCopyJobsOptions {\n projectId: string\n\n limit?: number\n offset?: number\n}\n\nexport interface DatasetCopyJob {\n createdAt: string\n id: string\n sourceDataset: string\n state: string\n targetDataset: string\n updatedAt: string\n withHistory: boolean\n}\n\nexport async function listDatasetCopyJobs({\n limit,\n offset,\n projectId,\n}: ListDatasetCopyJobsOptions): Promise<DatasetCopyJob[]> {\n const client = await getDatasetClient(projectId)\n const query: {limit?: string; offset?: string} = {}\n\n if (offset !== undefined && offset >= 0) {\n query.offset = `${offset}`\n }\n if (limit !== undefined && limit > 0) {\n query.limit = `${limit}`\n }\n\n return client.request<DatasetCopyJob[]>({\n method: 'GET',\n query,\n uri: `/projects/${projectId}/datasets/copy`,\n })\n}\n\nexport interface CopyJobProgressEvent {\n type: 'reconnect' | string\n\n progress?: number\n state?: 'completed' | 'failed' | 'pending' | 'processing'\n}\n\ninterface FollowCopyJobProgressOptions {\n jobId: string\n projectId: string\n}\n\nasync function getJobListenUrl(projectId: string, jobId: string): Promise<string> {\n const client = await getDatasetClient(projectId)\n const baseUrl = client.config().url || 'https://api.sanity.io'\n return `${baseUrl}/jobs/${jobId}/listen`\n}\n\nexport function followCopyJobProgress({\n jobId,\n projectId,\n}: FollowCopyJobProgressOptions): Observable<CopyJobProgressEvent> {\n return new Observable<CopyJobProgressEvent>((observer) => {\n let progressSource: InstanceType<typeof EventSource> | null = null\n let stopped = false\n\n getJobListenUrl(projectId, jobId)\n .then((url) => {\n progressSource = new EventSource(url)\n\n function onError() {\n if (progressSource) {\n progressSource.close()\n progressSource = null\n }\n\n if (stopped) {\n return\n }\n\n observer.next({type: 'reconnect'})\n progressSource = new EventSource(url)\n attachListeners()\n }\n\n function onChannelError(error: MessageEvent) {\n stopped = true\n if (progressSource) {\n progressSource.close()\n progressSource = null\n }\n const errorMessage = error.data\n ? `Copy job failed: ${error.data}`\n : 'Copy job failed: Connection to server lost. Please check the job status using --list and retry if needed.'\n observer.error(new Error(errorMessage))\n }\n\n function onMessage(event: MessageEvent) {\n let data\n try {\n data = JSON.parse(event.data)\n } catch (error) {\n const message = error instanceof Error ? error.message : 'Unknown error'\n observer.error(new Error(`Invalid JSON received from server: ${message}`))\n return\n }\n\n if (data.state === 'failed') {\n const failureReason = data.message || data.error || 'Unknown reason'\n observer.error(new Error(`Copy job failed: ${failureReason}`))\n } else if (data.state === 'completed') {\n onComplete()\n } else {\n observer.next(data)\n }\n }\n\n function onComplete() {\n if (progressSource) {\n progressSource.removeEventListener('error', onError)\n progressSource.removeEventListener('channel_error', onChannelError)\n progressSource.removeEventListener('job', onMessage)\n progressSource.removeEventListener('done', onComplete)\n progressSource.close()\n progressSource = null\n }\n observer.complete()\n }\n\n function attachListeners() {\n if (progressSource) {\n progressSource.addEventListener('error', onError)\n progressSource.addEventListener('channel_error', onChannelError)\n progressSource.addEventListener('job', onMessage)\n progressSource.addEventListener('done', onComplete)\n }\n }\n\n attachListeners()\n })\n .catch((error) => {\n observer.error(error)\n })\n\n return () => {\n if (stopped) return\n stopped = true\n if (progressSource) {\n progressSource.close()\n progressSource = null\n }\n }\n })\n}\n"],"names":["getProjectCliClient","EventSource","Observable","DATASET_API_VERSION","getDatasetClient","projectId","apiVersion","requireUser","listDatasets","client","datasets","list","listDatasetAliases","request","uri","deleteDataset","datasetName","delete","editDatasetAcl","aclMode","edit","createDataset","create","copyDataset","skipHistory","sourceDataset","targetDataset","body","method","listDatasetCopyJobs","limit","offset","query","undefined","getJobListenUrl","jobId","baseUrl","config","url","followCopyJobProgress","observer","progressSource","stopped","then","onError","close","next","type","attachListeners","onChannelError","error","errorMessage","data","Error","onMessage","event","JSON","parse","message","state","failureReason","onComplete","removeEventListener","complete","addEventListener","catch"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/services/datasets.ts"],"sourcesContent":["import {getProjectCliClient} from '@sanity/cli-core'\nimport {\n type DatasetCreateOptions as ClientCreateOptions,\n type DatasetAclMode,\n type EmbeddingsSettingsBody,\n} from '@sanity/client'\nimport {EventSource} from 'eventsource'\nimport {Observable} from 'rxjs'\n\nexport const DATASET_API_VERSION = 'v2025-09-16'\n\nfunction getDatasetClient(projectId: string) {\n return getProjectCliClient({\n apiVersion: DATASET_API_VERSION,\n projectId,\n requireUser: true,\n })\n}\n\nexport async function listDatasets(projectId: string) {\n const client = await getDatasetClient(projectId)\n return client.datasets.list()\n}\n\nexport interface DatasetAliasDefinition {\n datasetName: string | null\n name: string\n}\n\nexport async function listDatasetAliases(projectId: string): Promise<DatasetAliasDefinition[]> {\n const client = await getDatasetClient(projectId)\n return client.request<DatasetAliasDefinition[]>({uri: '/aliases'})\n}\n\ninterface DeleteDatasetOptions {\n datasetName: string\n projectId: string\n}\n\nexport async function deleteDataset({datasetName, projectId}: DeleteDatasetOptions) {\n const client = await getDatasetClient(projectId)\n return client.datasets.delete(datasetName)\n}\n\ninterface EditDatasetAclOptions {\n aclMode: 'private' | 'public'\n datasetName: string\n projectId: string\n}\n\nexport async function editDatasetAcl({aclMode, datasetName, projectId}: EditDatasetAclOptions) {\n const client = await getDatasetClient(projectId)\n return client.datasets.edit(datasetName, {aclMode})\n}\n\ninterface CreateDatasetOptions {\n datasetName: string\n projectId: string\n\n aclMode?: DatasetAclMode\n embeddings?: EmbeddingsSettingsBody\n}\n\nexport async function createDataset({\n aclMode,\n datasetName,\n embeddings,\n projectId,\n}: CreateDatasetOptions) {\n const client = await getDatasetClient(projectId)\n const options: ClientCreateOptions = {}\n\n if (aclMode) {\n options.aclMode = aclMode\n }\n if (embeddings) {\n options.embeddings = embeddings\n }\n\n return client.datasets.create(datasetName, options)\n}\n\ninterface CopyDatasetOptions {\n projectId: string\n skipHistory: boolean\n sourceDataset: string\n targetDataset: string\n}\n\ninterface CopyDatasetResponse {\n jobId: string\n}\n\nexport async function copyDataset({\n projectId,\n skipHistory,\n sourceDataset,\n targetDataset,\n}: CopyDatasetOptions): Promise<CopyDatasetResponse> {\n const client = await getDatasetClient(projectId)\n return client.request<CopyDatasetResponse>({\n body: {\n skipHistory,\n targetDataset,\n },\n method: 'PUT',\n uri: `/datasets/${sourceDataset}/copy`,\n })\n}\n\ninterface ListDatasetCopyJobsOptions {\n projectId: string\n\n limit?: number\n offset?: number\n}\n\nexport interface DatasetCopyJob {\n createdAt: string\n id: string\n sourceDataset: string\n state: string\n targetDataset: string\n updatedAt: string\n withHistory: boolean\n}\n\nexport async function listDatasetCopyJobs({\n limit,\n offset,\n projectId,\n}: ListDatasetCopyJobsOptions): Promise<DatasetCopyJob[]> {\n const client = await getDatasetClient(projectId)\n const query: {limit?: string; offset?: string} = {}\n\n if (offset !== undefined && offset >= 0) {\n query.offset = `${offset}`\n }\n if (limit !== undefined && limit > 0) {\n query.limit = `${limit}`\n }\n\n return client.request<DatasetCopyJob[]>({\n method: 'GET',\n query,\n uri: `/projects/${projectId}/datasets/copy`,\n })\n}\n\nexport interface CopyJobProgressEvent {\n type: 'reconnect' | string\n\n progress?: number\n state?: 'completed' | 'failed' | 'pending' | 'processing'\n}\n\ninterface FollowCopyJobProgressOptions {\n jobId: string\n projectId: string\n}\n\nasync function getJobListenUrl(projectId: string, jobId: string): Promise<string> {\n const client = await getDatasetClient(projectId)\n const baseUrl = client.config().url || 'https://api.sanity.io'\n return `${baseUrl}/jobs/${jobId}/listen`\n}\n\nexport function followCopyJobProgress({\n jobId,\n projectId,\n}: FollowCopyJobProgressOptions): Observable<CopyJobProgressEvent> {\n return new Observable<CopyJobProgressEvent>((observer) => {\n let progressSource: InstanceType<typeof EventSource> | null = null\n let stopped = false\n\n getJobListenUrl(projectId, jobId)\n .then((url) => {\n progressSource = new EventSource(url)\n\n function onError() {\n if (progressSource) {\n progressSource.close()\n progressSource = null\n }\n\n if (stopped) {\n return\n }\n\n observer.next({type: 'reconnect'})\n progressSource = new EventSource(url)\n attachListeners()\n }\n\n function onChannelError(error: MessageEvent) {\n stopped = true\n if (progressSource) {\n progressSource.close()\n progressSource = null\n }\n const errorMessage = error.data\n ? `Copy job failed: ${error.data}`\n : 'Copy job failed: Connection to server lost. Please check the job status using --list and retry if needed.'\n observer.error(new Error(errorMessage))\n }\n\n function onMessage(event: MessageEvent) {\n let data\n try {\n data = JSON.parse(event.data)\n } catch (error) {\n const message = error instanceof Error ? error.message : 'Unknown error'\n observer.error(new Error(`Invalid JSON received from server: ${message}`))\n return\n }\n\n if (data.state === 'failed') {\n const failureReason = data.message || data.error || 'Unknown reason'\n observer.error(new Error(`Copy job failed: ${failureReason}`))\n } else if (data.state === 'completed') {\n onComplete()\n } else {\n observer.next(data)\n }\n }\n\n function onComplete() {\n if (progressSource) {\n progressSource.removeEventListener('error', onError)\n progressSource.removeEventListener('channel_error', onChannelError)\n progressSource.removeEventListener('job', onMessage)\n progressSource.removeEventListener('done', onComplete)\n progressSource.close()\n progressSource = null\n }\n observer.complete()\n }\n\n function attachListeners() {\n if (progressSource) {\n progressSource.addEventListener('error', onError)\n progressSource.addEventListener('channel_error', onChannelError)\n progressSource.addEventListener('job', onMessage)\n progressSource.addEventListener('done', onComplete)\n }\n }\n\n attachListeners()\n })\n .catch((error) => {\n observer.error(error)\n })\n\n return () => {\n if (stopped) return\n stopped = true\n if (progressSource) {\n progressSource.close()\n progressSource = null\n }\n }\n })\n}\n"],"names":["getProjectCliClient","EventSource","Observable","DATASET_API_VERSION","getDatasetClient","projectId","apiVersion","requireUser","listDatasets","client","datasets","list","listDatasetAliases","request","uri","deleteDataset","datasetName","delete","editDatasetAcl","aclMode","edit","createDataset","embeddings","options","create","copyDataset","skipHistory","sourceDataset","targetDataset","body","method","listDatasetCopyJobs","limit","offset","query","undefined","getJobListenUrl","jobId","baseUrl","config","url","followCopyJobProgress","observer","progressSource","stopped","then","onError","close","next","type","attachListeners","onChannelError","error","errorMessage","data","Error","onMessage","event","JSON","parse","message","state","failureReason","onComplete","removeEventListener","complete","addEventListener","catch"],"mappings":"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"}
|
package/dist/services/docs.js
CHANGED
|
@@ -4,7 +4,7 @@ function isSearchResult(obj) {
|
|
|
4
4
|
return typeof obj === 'object' && obj !== null && 'description' in obj && 'path' in obj && 'title' in obj && typeof obj.description === 'string' && typeof obj.path === 'string' && typeof obj.title === 'string';
|
|
5
5
|
}
|
|
6
6
|
export async function readDoc(options) {
|
|
7
|
-
const url =
|
|
7
|
+
const url = getSanityUrl(`${options.path}.md`);
|
|
8
8
|
const response = await fetch(url, {
|
|
9
9
|
headers: {
|
|
10
10
|
Accept: 'text/plain'
|
|
@@ -22,7 +22,7 @@ export async function readDoc(options) {
|
|
|
22
22
|
}
|
|
23
23
|
export async function searchDocs(options) {
|
|
24
24
|
const { limit = 10, query } = options;
|
|
25
|
-
const baseUrl =
|
|
25
|
+
const baseUrl = getSanityUrl('/docs/api/search/semantic');
|
|
26
26
|
const url = new URL(baseUrl);
|
|
27
27
|
url.searchParams.set('query', query);
|
|
28
28
|
const response = await fetch(url.toString(), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/services/docs.ts"],"sourcesContent":["import {getSanityUrl} from '@sanity/cli-core'\n\nconst DOCS_API_TIMEOUT = 10_000\n\ninterface ReadDocOptions {\n path: string\n}\n\nexport interface SearchResult {\n description: string\n path: string\n title: string\n}\n\ninterface SearchDocsOptions {\n query: string\n\n limit?: number\n}\n\nfunction isSearchResult(obj: unknown): obj is SearchResult {\n return (\n typeof obj === 'object' &&\n obj !== null &&\n 'description' in obj &&\n 'path' in obj &&\n 'title' in obj &&\n typeof (obj as SearchResult).description === 'string' &&\n typeof (obj as SearchResult).path === 'string' &&\n typeof (obj as SearchResult).title === 'string'\n )\n}\n\nexport async function readDoc(options: ReadDocOptions): Promise<string> {\n const url =
|
|
1
|
+
{"version":3,"sources":["../../src/services/docs.ts"],"sourcesContent":["import {getSanityUrl} from '@sanity/cli-core'\n\nconst DOCS_API_TIMEOUT = 10_000\n\ninterface ReadDocOptions {\n path: string\n}\n\nexport interface SearchResult {\n description: string\n path: string\n title: string\n}\n\ninterface SearchDocsOptions {\n query: string\n\n limit?: number\n}\n\nfunction isSearchResult(obj: unknown): obj is SearchResult {\n return (\n typeof obj === 'object' &&\n obj !== null &&\n 'description' in obj &&\n 'path' in obj &&\n 'title' in obj &&\n typeof (obj as SearchResult).description === 'string' &&\n typeof (obj as SearchResult).path === 'string' &&\n typeof (obj as SearchResult).title === 'string'\n )\n}\n\nexport async function readDoc(options: ReadDocOptions): Promise<string> {\n const url = getSanityUrl(`${options.path}.md`)\n\n const response = await fetch(url, {\n headers: {\n Accept: 'text/plain',\n },\n method: 'GET',\n signal: AbortSignal.timeout(DOCS_API_TIMEOUT),\n })\n\n if (!response.ok) {\n if (response.status === 404) {\n throw new Error(`Article not found: ${options.path}`)\n }\n throw new Error('The article API is currently unavailable. Please try again later.')\n }\n\n return response.text()\n}\n\nexport async function searchDocs(options: SearchDocsOptions): Promise<SearchResult[]> {\n const {limit = 10, query} = options\n\n const baseUrl = getSanityUrl('/docs/api/search/semantic')\n const url = new URL(baseUrl)\n url.searchParams.set('query', query)\n\n const response = await fetch(url.toString(), {\n headers: {\n Accept: 'application/json',\n },\n method: 'GET',\n signal: AbortSignal.timeout(DOCS_API_TIMEOUT),\n })\n\n if (!response.ok) {\n throw new Error(\n 'The documentation search API is currently unavailable. Please try again later.',\n )\n }\n\n const results: unknown = await response.json()\n\n if (!Array.isArray(results)) {\n throw new TypeError('Invalid response format from documentation search API')\n }\n\n const validResults = results.filter((item): item is SearchResult => isSearchResult(item))\n return validResults.slice(0, limit)\n}\n"],"names":["getSanityUrl","DOCS_API_TIMEOUT","isSearchResult","obj","description","path","title","readDoc","options","url","response","fetch","headers","Accept","method","signal","AbortSignal","timeout","ok","status","Error","text","searchDocs","limit","query","baseUrl","URL","searchParams","set","toString","results","json","Array","isArray","TypeError","validResults","filter","item","slice"],"mappings":"AAAA,SAAQA,YAAY,QAAO,mBAAkB;AAE7C,MAAMC,mBAAmB;AAkBzB,SAASC,eAAeC,GAAY;IAClC,OACE,OAAOA,QAAQ,YACfA,QAAQ,QACR,iBAAiBA,OACjB,UAAUA,OACV,WAAWA,OACX,OAAO,AAACA,IAAqBC,WAAW,KAAK,YAC7C,OAAO,AAACD,IAAqBE,IAAI,KAAK,YACtC,OAAO,AAACF,IAAqBG,KAAK,KAAK;AAE3C;AAEA,OAAO,eAAeC,QAAQC,OAAuB;IACnD,MAAMC,MAAMT,aAAa,GAAGQ,QAAQH,IAAI,CAAC,GAAG,CAAC;IAE7C,MAAMK,WAAW,MAAMC,MAAMF,KAAK;QAChCG,SAAS;YACPC,QAAQ;QACV;QACAC,QAAQ;QACRC,QAAQC,YAAYC,OAAO,CAAChB;IAC9B;IAEA,IAAI,CAACS,SAASQ,EAAE,EAAE;QAChB,IAAIR,SAASS,MAAM,KAAK,KAAK;YAC3B,MAAM,IAAIC,MAAM,CAAC,mBAAmB,EAAEZ,QAAQH,IAAI,EAAE;QACtD;QACA,MAAM,IAAIe,MAAM;IAClB;IAEA,OAAOV,SAASW,IAAI;AACtB;AAEA,OAAO,eAAeC,WAAWd,OAA0B;IACzD,MAAM,EAACe,QAAQ,EAAE,EAAEC,KAAK,EAAC,GAAGhB;IAE5B,MAAMiB,UAAUzB,aAAa;IAC7B,MAAMS,MAAM,IAAIiB,IAAID;IACpBhB,IAAIkB,YAAY,CAACC,GAAG,CAAC,SAASJ;IAE9B,MAAMd,WAAW,MAAMC,MAAMF,IAAIoB,QAAQ,IAAI;QAC3CjB,SAAS;YACPC,QAAQ;QACV;QACAC,QAAQ;QACRC,QAAQC,YAAYC,OAAO,CAAChB;IAC9B;IAEA,IAAI,CAACS,SAASQ,EAAE,EAAE;QAChB,MAAM,IAAIE,MACR;IAEJ;IAEA,MAAMU,UAAmB,MAAMpB,SAASqB,IAAI;IAE5C,IAAI,CAACC,MAAMC,OAAO,CAACH,UAAU;QAC3B,MAAM,IAAII,UAAU;IACtB;IAEA,MAAMC,eAAeL,QAAQM,MAAM,CAAC,CAACC,OAA+BnC,eAAemC;IACnF,OAAOF,aAAaG,KAAK,CAAC,GAAGf;AAC/B"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { getProjectCliClient } from '@sanity/cli-core';
|
|
2
|
+
export const DOCUMENTS_API_VERSION = 'v2021-03-25';
|
|
3
|
+
function getDocumentsClient({ dataset, projectId }) {
|
|
4
|
+
return getProjectCliClient({
|
|
5
|
+
apiVersion: DOCUMENTS_API_VERSION,
|
|
6
|
+
dataset,
|
|
7
|
+
projectId,
|
|
8
|
+
requireUser: true
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Get the total count of documents in the dataset
|
|
13
|
+
*/ export async function getDocumentCount({ dataset, projectId }) {
|
|
14
|
+
const client = await getDocumentsClient({
|
|
15
|
+
dataset,
|
|
16
|
+
projectId
|
|
17
|
+
});
|
|
18
|
+
return client.fetch('length(*)');
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Export all documents from the dataset as a streaming response
|
|
22
|
+
*/ export async function exportDocuments({ dataset, projectId }) {
|
|
23
|
+
const client = await getDocumentsClient({
|
|
24
|
+
dataset,
|
|
25
|
+
projectId
|
|
26
|
+
});
|
|
27
|
+
const exportUrl = new URL(client.getUrl(`/data/export/${dataset}`, false));
|
|
28
|
+
const { token } = client.config();
|
|
29
|
+
const response = await fetch(exportUrl, {
|
|
30
|
+
// eslint-disable-next-line n/no-unsupported-features/node-builtins -- Headers is stable in modern Node.js
|
|
31
|
+
headers: new Headers({
|
|
32
|
+
...token && {
|
|
33
|
+
Authorization: `Bearer ${token}`
|
|
34
|
+
}
|
|
35
|
+
})
|
|
36
|
+
});
|
|
37
|
+
return response;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Check the availability/existence of documents by their IDs
|
|
41
|
+
*/ export async function checkDocumentAvailability({ dataset, documentIds, projectId }) {
|
|
42
|
+
const client = await getDocumentsClient({
|
|
43
|
+
dataset,
|
|
44
|
+
projectId
|
|
45
|
+
});
|
|
46
|
+
return client.request({
|
|
47
|
+
json: true,
|
|
48
|
+
query: {
|
|
49
|
+
excludeContent: 'true'
|
|
50
|
+
},
|
|
51
|
+
tag: 'documents-availability',
|
|
52
|
+
uri: client.getDataUrl('doc', documentIds.join(','))
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
//# sourceMappingURL=documents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/documents.ts"],"sourcesContent":["import {getProjectCliClient} from '@sanity/cli-core'\n\nexport const DOCUMENTS_API_VERSION = 'v2021-03-25'\n\n/**\n * Response from the document availability endpoint\n */\nexport interface AvailabilityResponse {\n omitted: {id: string; reason: 'existence' | 'permission'}[]\n}\n\ninterface DocumentsClientOptions {\n dataset: string\n projectId: string\n}\n\nfunction getDocumentsClient({dataset, projectId}: DocumentsClientOptions) {\n return getProjectCliClient({\n apiVersion: DOCUMENTS_API_VERSION,\n dataset,\n projectId,\n requireUser: true,\n })\n}\n\ninterface GetDocumentCountOptions {\n dataset: string\n projectId: string\n}\n\n/**\n * Get the total count of documents in the dataset\n */\nexport async function getDocumentCount({\n dataset,\n projectId,\n}: GetDocumentCountOptions): Promise<number> {\n const client = await getDocumentsClient({dataset, projectId})\n return client.fetch('length(*)')\n}\n\ninterface ExportDocumentsOptions {\n dataset: string\n projectId: string\n}\n\n/**\n * Export all documents from the dataset as a streaming response\n */\nexport async function exportDocuments({\n dataset,\n projectId,\n}: ExportDocumentsOptions): Promise<Response> {\n const client = await getDocumentsClient({dataset, projectId})\n const exportUrl = new URL(client.getUrl(`/data/export/${dataset}`, false))\n\n const {token} = client.config()\n const response = await fetch(exportUrl, {\n // eslint-disable-next-line n/no-unsupported-features/node-builtins -- Headers is stable in modern Node.js\n headers: new Headers({...(token && {Authorization: `Bearer ${token}`})}),\n })\n\n return response\n}\n\ninterface CheckDocumentAvailabilityOptions {\n dataset: string\n documentIds: string[]\n projectId: string\n}\n\n/**\n * Check the availability/existence of documents by their IDs\n */\nexport async function checkDocumentAvailability({\n dataset,\n documentIds,\n projectId,\n}: CheckDocumentAvailabilityOptions): Promise<AvailabilityResponse> {\n const client = await getDocumentsClient({dataset, projectId})\n return client.request<AvailabilityResponse>({\n json: true,\n query: {excludeContent: 'true'},\n tag: 'documents-availability',\n uri: client.getDataUrl('doc', documentIds.join(',')),\n })\n}\n"],"names":["getProjectCliClient","DOCUMENTS_API_VERSION","getDocumentsClient","dataset","projectId","apiVersion","requireUser","getDocumentCount","client","fetch","exportDocuments","exportUrl","URL","getUrl","token","config","response","headers","Headers","Authorization","checkDocumentAvailability","documentIds","request","json","query","excludeContent","tag","uri","getDataUrl","join"],"mappings":"AAAA,SAAQA,mBAAmB,QAAO,mBAAkB;AAEpD,OAAO,MAAMC,wBAAwB,cAAa;AAclD,SAASC,mBAAmB,EAACC,OAAO,EAAEC,SAAS,EAAyB;IACtE,OAAOJ,oBAAoB;QACzBK,YAAYJ;QACZE;QACAC;QACAE,aAAa;IACf;AACF;AAOA;;CAEC,GACD,OAAO,eAAeC,iBAAiB,EACrCJ,OAAO,EACPC,SAAS,EACe;IACxB,MAAMI,SAAS,MAAMN,mBAAmB;QAACC;QAASC;IAAS;IAC3D,OAAOI,OAAOC,KAAK,CAAC;AACtB;AAOA;;CAEC,GACD,OAAO,eAAeC,gBAAgB,EACpCP,OAAO,EACPC,SAAS,EACc;IACvB,MAAMI,SAAS,MAAMN,mBAAmB;QAACC;QAASC;IAAS;IAC3D,MAAMO,YAAY,IAAIC,IAAIJ,OAAOK,MAAM,CAAC,CAAC,aAAa,EAAEV,SAAS,EAAE;IAEnE,MAAM,EAACW,KAAK,EAAC,GAAGN,OAAOO,MAAM;IAC7B,MAAMC,WAAW,MAAMP,MAAME,WAAW;QACtC,0GAA0G;QAC1GM,SAAS,IAAIC,QAAQ;YAAC,GAAIJ,SAAS;gBAACK,eAAe,CAAC,OAAO,EAAEL,OAAO;YAAA,CAAC;QAAC;IACxE;IAEA,OAAOE;AACT;AAQA;;CAEC,GACD,OAAO,eAAeI,0BAA0B,EAC9CjB,OAAO,EACPkB,WAAW,EACXjB,SAAS,EACwB;IACjC,MAAMI,SAAS,MAAMN,mBAAmB;QAACC;QAASC;IAAS;IAC3D,OAAOI,OAAOc,OAAO,CAAuB;QAC1CC,MAAM;QACNC,OAAO;YAACC,gBAAgB;QAAM;QAC9BC,KAAK;QACLC,KAAKnB,OAAOoB,UAAU,CAAC,OAAOP,YAAYQ,IAAI,CAAC;IACjD;AACF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { getProjectCliClient } from '@sanity/cli-core';
|
|
2
|
+
import { DATASET_API_VERSION } from './datasets.js';
|
|
3
|
+
function getEmbeddingsClient(projectId) {
|
|
4
|
+
return getProjectCliClient({
|
|
5
|
+
apiVersion: DATASET_API_VERSION,
|
|
6
|
+
projectId,
|
|
7
|
+
requireUser: true
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
export async function getEmbeddingsSettings(projectId, dataset) {
|
|
11
|
+
const client = await getEmbeddingsClient(projectId);
|
|
12
|
+
return client.datasets.getEmbeddingsSettings(dataset);
|
|
13
|
+
}
|
|
14
|
+
export async function setEmbeddingsSettings({ dataset, enabled, projectId, projection }) {
|
|
15
|
+
const client = await getEmbeddingsClient(projectId);
|
|
16
|
+
const body = {
|
|
17
|
+
enabled,
|
|
18
|
+
...projection ? {
|
|
19
|
+
projection
|
|
20
|
+
} : {}
|
|
21
|
+
};
|
|
22
|
+
await client.datasets.editEmbeddingsSettings(dataset, body);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=embeddings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/embeddings.ts"],"sourcesContent":["import {getProjectCliClient} from '@sanity/cli-core'\nimport {type EmbeddingsSettings, type EmbeddingsSettingsBody} from '@sanity/client'\n\nimport {DATASET_API_VERSION} from './datasets.js'\n\nfunction getEmbeddingsClient(projectId: string) {\n return getProjectCliClient({\n apiVersion: DATASET_API_VERSION,\n projectId,\n requireUser: true,\n })\n}\n\nexport async function getEmbeddingsSettings(\n projectId: string,\n dataset: string,\n): Promise<EmbeddingsSettings> {\n const client = await getEmbeddingsClient(projectId)\n return client.datasets.getEmbeddingsSettings(dataset)\n}\n\ninterface SetEmbeddingsOptions {\n dataset: string\n enabled: boolean\n projectId: string\n\n projection?: string\n}\n\nexport async function setEmbeddingsSettings({\n dataset,\n enabled,\n projectId,\n projection,\n}: SetEmbeddingsOptions): Promise<void> {\n const client = await getEmbeddingsClient(projectId)\n const body: EmbeddingsSettingsBody = {enabled, ...(projection ? {projection} : {})}\n await client.datasets.editEmbeddingsSettings(dataset, body)\n}\n"],"names":["getProjectCliClient","DATASET_API_VERSION","getEmbeddingsClient","projectId","apiVersion","requireUser","getEmbeddingsSettings","dataset","client","datasets","setEmbeddingsSettings","enabled","projection","body","editEmbeddingsSettings"],"mappings":"AAAA,SAAQA,mBAAmB,QAAO,mBAAkB;AAGpD,SAAQC,mBAAmB,QAAO,gBAAe;AAEjD,SAASC,oBAAoBC,SAAiB;IAC5C,OAAOH,oBAAoB;QACzBI,YAAYH;QACZE;QACAE,aAAa;IACf;AACF;AAEA,OAAO,eAAeC,sBACpBH,SAAiB,EACjBI,OAAe;IAEf,MAAMC,SAAS,MAAMN,oBAAoBC;IACzC,OAAOK,OAAOC,QAAQ,CAACH,qBAAqB,CAACC;AAC/C;AAUA,OAAO,eAAeG,sBAAsB,EAC1CH,OAAO,EACPI,OAAO,EACPR,SAAS,EACTS,UAAU,EACW;IACrB,MAAMJ,SAAS,MAAMN,oBAAoBC;IACzC,MAAMU,OAA+B;QAACF;QAAS,GAAIC,aAAa;YAACA;QAAU,IAAI,CAAC,CAAC;IAAC;IAClF,MAAMJ,OAAOC,QAAQ,CAACK,sBAAsB,CAACP,SAASM;AACxD"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { createRequester } from '@sanity/cli-core/request';
|
|
2
|
+
const request = createRequester({
|
|
3
|
+
middleware: {
|
|
4
|
+
promise: {
|
|
5
|
+
onlyBody: false
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
/**
|
|
10
|
+
* Gets the headers of a URL
|
|
11
|
+
*
|
|
12
|
+
* @param url - The URL to get the headers from
|
|
13
|
+
* @param headers - The headers to send with the request
|
|
14
|
+
* @returns The headers of the response
|
|
15
|
+
*/ export async function getUrlHeaders(url, headers = {}) {
|
|
16
|
+
const response = await request({
|
|
17
|
+
headers,
|
|
18
|
+
maxRedirects: 0,
|
|
19
|
+
method: 'HEAD',
|
|
20
|
+
url
|
|
21
|
+
});
|
|
22
|
+
return response.headers;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=getUrlHeaders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/getUrlHeaders.ts"],"sourcesContent":["import {createRequester} from '@sanity/cli-core/request'\n\nconst request = createRequester({middleware: {promise: {onlyBody: false}}})\n\n/**\n * Gets the headers of a URL\n *\n * @param url - The URL to get the headers from\n * @param headers - The headers to send with the request\n * @returns The headers of the response\n */\nexport async function getUrlHeaders(url: string, headers = {}): Promise<Record<string, string>> {\n const response = await request({\n headers,\n maxRedirects: 0,\n method: 'HEAD',\n url,\n })\n\n return response.headers\n}\n"],"names":["createRequester","request","middleware","promise","onlyBody","getUrlHeaders","url","headers","response","maxRedirects","method"],"mappings":"AAAA,SAAQA,eAAe,QAAO,2BAA0B;AAExD,MAAMC,UAAUD,gBAAgB;IAACE,YAAY;QAACC,SAAS;YAACC,UAAU;QAAK;IAAC;AAAC;AAEzE;;;;;;CAMC,GACD,OAAO,eAAeC,cAAcC,GAAW,EAAEC,UAAU,CAAC,CAAC;IAC3D,MAAMC,WAAW,MAAMP,QAAQ;QAC7BM;QACAE,cAAc;QACdC,QAAQ;QACRJ;IACF;IAEA,OAAOE,SAASD,OAAO;AACzB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { getGlobalCliClient } from '@sanity/cli-core';
|
|
2
|
+
export const GRANTS_API_VERSION = '2025-01-01';
|
|
3
|
+
export async function getUserGrants() {
|
|
4
|
+
const client = await getGlobalCliClient({
|
|
5
|
+
apiVersion: GRANTS_API_VERSION,
|
|
6
|
+
requireUser: true
|
|
7
|
+
});
|
|
8
|
+
return client.request({
|
|
9
|
+
uri: '/users/me/grants'
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=grants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/grants.ts"],"sourcesContent":["import {getGlobalCliClient} from '@sanity/cli-core'\n\nimport {type UserGrantsResponse} from '../types/grants.js'\n\nexport const GRANTS_API_VERSION = '2025-01-01'\n\nexport async function getUserGrants(): Promise<UserGrantsResponse> {\n const client = await getGlobalCliClient({\n apiVersion: GRANTS_API_VERSION,\n requireUser: true,\n })\n\n return client.request<UserGrantsResponse>({uri: '/users/me/grants'})\n}\n"],"names":["getGlobalCliClient","GRANTS_API_VERSION","getUserGrants","client","apiVersion","requireUser","request","uri"],"mappings":"AAAA,SAAQA,kBAAkB,QAAO,mBAAkB;AAInD,OAAO,MAAMC,qBAAqB,aAAY;AAE9C,OAAO,eAAeC;IACpB,MAAMC,SAAS,MAAMH,mBAAmB;QACtCI,YAAYH;QACZI,aAAa;IACf;IAEA,OAAOF,OAAOG,OAAO,CAAqB;QAACC,KAAK;IAAkB;AACpE"}
|