@sanity/cli 6.0.0-alpha.7 → 6.0.0-alpha.9
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 +240 -114
- package/dist/actions/auth/login/login.js +13 -5
- package/dist/actions/auth/login/login.js.map +1 -1
- package/dist/actions/build/buildApp.js +12 -12
- package/dist/actions/build/buildApp.js.map +1 -1
- package/dist/actions/build/buildStudio.js +12 -12
- package/dist/actions/build/buildStudio.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 +1 -1
- package/dist/actions/build/getViteConfig.js.map +1 -1
- package/dist/actions/build/renderDocument.js +3 -3
- package/dist/actions/build/renderDocument.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.js +2 -1
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.js.map +1 -1
- package/dist/actions/build/shouldAutoUpdate.js +3 -3
- package/dist/actions/build/shouldAutoUpdate.js.map +1 -1
- package/dist/actions/build/writeSanityRuntime.js +2 -2
- package/dist/actions/build/writeSanityRuntime.js.map +1 -1
- package/dist/actions/dataset/create.js +3 -5
- package/dist/actions/dataset/create.js.map +1 -1
- package/dist/actions/deploy/deployApp.js +11 -7
- package/dist/actions/deploy/deployApp.js.map +1 -1
- package/dist/actions/deploy/deployStudio.js +5 -4
- package/dist/actions/deploy/deployStudio.js.map +1 -1
- package/dist/actions/dev/startAppDevServer.js +5 -2
- package/dist/actions/dev/startAppDevServer.js.map +1 -1
- package/dist/actions/dev/startStudioDevServer.js +10 -6
- package/dist/actions/dev/startStudioDevServer.js.map +1 -1
- package/dist/actions/documents/types.js.map +1 -1
- package/dist/actions/documents/validate.js +4 -15
- package/dist/actions/documents/validate.js.map +1 -1
- package/dist/{threads/validateDocuments.js → actions/documents/validateDocuments.worker.js} +35 -35
- package/dist/actions/documents/validateDocuments.worker.js.map +1 -0
- package/dist/actions/documents/validation/reporters/jsonReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/ndjsonReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js +8 -7
- 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/{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 +37 -0
- package/dist/actions/graphql/SchemaError.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/gen1/generateTypeFilters.js +226 -0
- package/dist/actions/graphql/gen1/generateTypeFilters.js.map +1 -0
- package/dist/actions/graphql/gen1/generateTypeQueries.js +85 -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 +104 -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 +31 -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.worker.js +1 -1
- 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 +11 -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/types.js +1 -1
- package/dist/actions/graphql/types.js.map +1 -1
- package/dist/actions/init/bootstrapLocalTemplate.js +137 -0
- package/dist/actions/init/bootstrapLocalTemplate.js.map +1 -0
- package/dist/actions/init/bootstrapRemoteTemplate.js +109 -0
- package/dist/actions/init/bootstrapRemoteTemplate.js.map +1 -0
- package/dist/actions/init/bootstrapTemplate.js +32 -0
- package/dist/actions/init/bootstrapTemplate.js.map +1 -0
- package/dist/actions/init/checkNextJsReactCompatibility.js +21 -0
- package/dist/actions/init/checkNextJsReactCompatibility.js.map +1 -0
- package/dist/actions/init/countNestedFolders.js +6 -0
- package/dist/actions/init/countNestedFolders.js.map +1 -0
- package/dist/actions/init/createAppCliConfig.js +19 -0
- package/dist/actions/init/createAppCliConfig.js.map +1 -0
- package/dist/actions/init/createCliConfig.js +27 -0
- package/dist/actions/init/createCliConfig.js.map +1 -0
- package/dist/actions/init/createPackageManifest.js +86 -0
- package/dist/actions/init/createPackageManifest.js.map +1 -0
- package/dist/actions/init/createStudioConfig.js +41 -0
- package/dist/actions/init/createStudioConfig.js.map +1 -0
- package/dist/actions/init/env/createOrAppendEnvVars.js +25 -0
- package/dist/actions/init/env/createOrAppendEnvVars.js.map +1 -0
- package/dist/actions/init/env/parseAndUpdateEnvVars.js +42 -0
- package/dist/actions/init/env/parseAndUpdateEnvVars.js.map +1 -0
- package/dist/actions/init/env/writeEnvVarsToFile.js +49 -0
- package/dist/actions/init/env/writeEnvVarsToFile.js.map +1 -0
- package/dist/actions/init/fetchPostInitPrompt.js +30 -0
- package/dist/actions/init/fetchPostInitPrompt.js.map +1 -0
- package/dist/actions/init/git.js +65 -0
- package/dist/actions/init/git.js.map +1 -0
- package/dist/actions/init/processTemplate.js +56 -0
- package/dist/actions/init/processTemplate.js.map +1 -0
- package/dist/actions/init/remoteTemplate.js +2 -40
- package/dist/actions/init/remoteTemplate.js.map +1 -1
- package/dist/actions/init/resolvePackageManager.js +20 -0
- package/dist/actions/init/resolvePackageManager.js.map +1 -0
- package/dist/actions/init/templates/appQuickstart.js +28 -0
- package/dist/actions/init/templates/appQuickstart.js.map +1 -0
- package/dist/actions/init/templates/appSanityUi.js +30 -0
- package/dist/actions/init/templates/appSanityUi.js.map +1 -0
- package/dist/actions/init/templates/blog.js +4 -0
- package/dist/actions/init/templates/blog.js.map +1 -0
- package/dist/actions/init/templates/clean.js +4 -0
- package/dist/actions/init/templates/clean.js.map +1 -0
- package/dist/actions/init/templates/getStarted.js +35 -0
- package/dist/actions/init/templates/getStarted.js.map +1 -0
- package/dist/actions/init/templates/index.js +23 -0
- package/dist/actions/init/templates/index.js.map +1 -0
- package/dist/actions/init/templates/moviedb.js +34 -0
- package/dist/actions/init/templates/moviedb.js.map +1 -0
- package/dist/actions/init/templates/nextjs/index.js +213 -0
- package/dist/actions/init/templates/nextjs/index.js.map +1 -0
- package/dist/actions/init/templates/nextjs/schemaTypes/blog.js +247 -0
- package/dist/actions/init/templates/nextjs/schemaTypes/blog.js.map +1 -0
- package/dist/actions/init/templates/quickstart.js +4 -0
- package/dist/actions/init/templates/quickstart.js.map +1 -0
- package/dist/actions/init/templates/shopify.js +77 -0
- package/dist/actions/init/templates/shopify.js.map +1 -0
- package/dist/actions/init/templates/shopifyOnline.js +49 -0
- package/dist/actions/init/templates/shopifyOnline.js.map +1 -0
- package/dist/actions/init/types.js.map +1 -0
- package/dist/actions/init/updateInitialTemplateMetadata.js +17 -0
- package/dist/actions/init/updateInitialTemplateMetadata.js.map +1 -0
- package/dist/actions/mcp/detectAvailableEditors.js +64 -59
- package/dist/actions/mcp/detectAvailableEditors.js.map +1 -1
- package/dist/actions/mcp/editorConfigs.js +147 -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 +24 -29
- package/dist/actions/mcp/writeMCPConfig.js.map +1 -1
- package/dist/actions/media/importMedia.js +2 -2
- package/dist/actions/media/importMedia.js.map +1 -1
- package/dist/actions/organizations/getOrganization.js +67 -0
- package/dist/actions/organizations/getOrganization.js.map +1 -0
- package/dist/actions/organizations/hasProjectAttachGrant.js +1 -1
- package/dist/actions/organizations/hasProjectAttachGrant.js.map +1 -1
- 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 +7 -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 +2 -2
- package/dist/actions/schema/deleteSchemaAction.js.map +1 -1
- package/dist/actions/schema/deploySchemas.js +5 -5
- package/dist/actions/schema/deploySchemas.js.map +1 -1
- package/dist/actions/schema/extractSanitySchema.worker.js +38 -0
- package/dist/actions/schema/extractSanitySchema.worker.js.map +1 -0
- package/dist/actions/schema/extractSchema.js +77 -0
- package/dist/actions/schema/extractSchema.js.map +1 -0
- package/dist/actions/schema/formatSchemaValidation.js +17 -5
- package/dist/actions/schema/formatSchemaValidation.js.map +1 -1
- package/dist/actions/schema/listSchemas.js +4 -4
- package/dist/actions/schema/listSchemas.js.map +1 -1
- package/dist/actions/schema/metafile.js.map +1 -1
- package/dist/actions/schema/types.js +9 -0
- package/dist/actions/schema/types.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/manifestExtractor.js +2 -2
- package/dist/actions/schema/utils/manifestExtractor.js.map +1 -1
- package/dist/actions/schema/utils/manifestReader.js +2 -2
- package/dist/actions/schema/utils/manifestReader.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} +35 -26
- package/dist/actions/schema/validateSchema.worker.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/resolveConsent.js +1 -2
- package/dist/actions/telemetry/resolveConsent.js.map +1 -1
- package/dist/actions/telemetry/setConsent.js +1 -1
- 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/versions/getFormatters.js +2 -2
- package/dist/actions/versions/getFormatters.js.map +1 -1
- package/dist/commands/backup/disable.js +4 -3
- package/dist/commands/backup/disable.js.map +1 -1
- package/dist/commands/backup/download.js +7 -7
- package/dist/commands/backup/download.js.map +1 -1
- package/dist/commands/backup/enable.js +3 -3
- package/dist/commands/backup/enable.js.map +1 -1
- package/dist/commands/cors/add.js +13 -9
- package/dist/commands/cors/add.js.map +1 -1
- package/dist/commands/dataset/copy.js +6 -5
- package/dist/commands/dataset/copy.js.map +1 -1
- package/dist/commands/dataset/create.js +14 -7
- package/dist/commands/dataset/create.js.map +1 -1
- package/dist/commands/dataset/delete.js +12 -2
- package/dist/commands/dataset/delete.js.map +1 -1
- package/dist/commands/dataset/export.js +1 -2
- package/dist/commands/dataset/export.js.map +1 -1
- package/dist/commands/debug.js +5 -5
- package/dist/commands/debug.js.map +1 -1
- package/dist/commands/dev.js +5 -2
- 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/documents/validate.js +44 -40
- package/dist/commands/documents/validate.js.map +1 -1
- package/dist/commands/graphql/deploy.js +429 -0
- package/dist/commands/graphql/deploy.js.map +1 -0
- package/dist/commands/graphql/list.js +6 -6
- package/dist/commands/graphql/list.js.map +1 -1
- package/dist/commands/hook/logs.js +4 -4
- package/dist/commands/hook/logs.js.map +1 -1
- package/dist/commands/init.js +607 -86
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.js +2 -2
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/manage.js +2 -1
- package/dist/commands/manage.js.map +1 -1
- package/dist/commands/mcp/configure.js +13 -74
- package/dist/commands/mcp/configure.js.map +1 -1
- package/dist/commands/media/create-aspect.js +7 -6
- package/dist/commands/media/create-aspect.js.map +1 -1
- package/dist/commands/media/delete-aspect.js +5 -4
- package/dist/commands/media/delete-aspect.js.map +1 -1
- package/dist/commands/media/deploy-aspect.js +9 -8
- package/dist/commands/media/deploy-aspect.js.map +1 -1
- package/dist/commands/media/export.js +1 -2
- package/dist/commands/media/export.js.map +1 -1
- package/dist/commands/media/import.js +4 -4
- package/dist/commands/media/import.js.map +1 -1
- package/dist/commands/preview.js +10 -24
- 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 +2 -2
- package/dist/commands/projects/list.js.map +1 -1
- package/dist/commands/schema/extract.js +7 -12
- package/dist/commands/schema/extract.js.map +1 -1
- package/dist/commands/schema/validate.js +10 -2
- package/dist/commands/schema/validate.js.map +1 -1
- package/dist/commands/undeploy.js +9 -8
- package/dist/commands/undeploy.js.map +1 -1
- package/dist/commands/users/list.js +3 -3
- package/dist/commands/users/list.js.map +1 -1
- package/dist/commands/versions.js +2 -2
- package/dist/commands/versions.js.map +1 -1
- package/dist/config/createCliConfig.js +1 -0
- package/dist/config/createCliConfig.js.map +1 -1
- 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 +31 -0
- package/dist/hooks/prerun/injectEnvVariables.js.map +1 -0
- package/dist/hooks/prerun/setupTelemetry.js +6 -5
- 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/index.d.ts +2326 -6
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/prompts/init/nextjs.js +56 -0
- package/dist/prompts/init/nextjs.js.map +1 -0
- package/dist/prompts/init/promptForTypescript.js +0 -6
- package/dist/prompts/init/promptForTypescript.js.map +1 -1
- 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/promptForProjectName.js +11 -0
- package/dist/prompts/promptForProjectName.js.map +1 -0
- package/dist/server/previewServer.js +15 -9
- package/dist/server/previewServer.js.map +1 -1
- package/dist/services/documents.js +56 -0
- package/dist/services/documents.js.map +1 -0
- package/dist/services/getUrlHeaders.js +36 -0
- package/dist/services/getUrlHeaders.js.map +1 -0
- package/dist/services/graphql.js +64 -0
- package/dist/services/graphql.js.map +1 -1
- package/dist/services/mcp.js +16 -0
- 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 +37 -0
- package/dist/services/projects.js.map +1 -1
- package/dist/services/telemetry.js +62 -2
- package/dist/services/telemetry.js.map +1 -1
- package/dist/studioDependencies.js +24 -0
- package/dist/studioDependencies.js.map +1 -0
- package/dist/telemetry/build.telemetry.js +13 -0
- package/dist/telemetry/build.telemetry.js.map +1 -0
- package/dist/telemetry/extractSchema.telemetry.js +8 -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.js +3 -1
- package/dist/types.js.map +1 -1
- package/dist/typings/deepSortObject.d.js +2 -0
- package/dist/typings/deepSortObject.d.js.map +1 -0
- package/dist/util/appId.js +5 -5
- package/dist/util/appId.js.map +1 -1
- package/dist/util/cliClient.js +8 -7
- package/dist/util/cliClient.js.map +1 -1
- package/dist/util/copy.js +37 -0
- package/dist/util/copy.js.map +1 -0
- package/dist/util/formatSize.js +2 -2
- package/dist/util/formatSize.js.map +1 -1
- package/dist/util/frameworkPort.js +61 -0
- package/dist/util/frameworkPort.js.map +1 -0
- package/dist/util/fsUtils.js +34 -0
- package/dist/util/fsUtils.js.map +1 -0
- package/dist/util/getProjectDefaults.js +77 -0
- package/dist/util/getProjectDefaults.js.map +1 -0
- package/dist/util/getSanityEnv.js +3 -0
- package/dist/util/getSanityEnv.js.map +1 -0
- package/dist/util/importStudioConfig.js +0 -3
- package/dist/util/importStudioConfig.js.map +1 -1
- package/dist/util/loadEnv.js +1 -6
- package/dist/util/loadEnv.js.map +1 -1
- package/dist/util/packageManager/packageManagerChoice.js +8 -0
- package/dist/util/packageManager/packageManagerChoice.js.map +1 -1
- package/dist/util/readPackageJson.js +3 -1
- package/dist/util/readPackageJson.js.map +1 -1
- package/dist/util/readdirRecursive.js +24 -0
- package/dist/util/readdirRecursive.js.map +1 -0
- package/dist/util/resolveLatestVersions.js +21 -0
- package/dist/util/resolveLatestVersions.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 +6 -1
- package/oclif.manifest.json +200 -3
- package/package.json +48 -35
- 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/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/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/constants.d.ts +0 -1
- package/dist/actions/init/determineAppTemplate.d.ts +0 -9
- package/dist/actions/init/remoteTemplate.d.ts +0 -23
- 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/utils/debug.d.ts +0 -2
- package/dist/actions/schema/utils/manifestExtractor.d.ts +0 -9
- package/dist/actions/schema/utils/manifestReader.d.ts +0 -17
- 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 -55
- 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/prompts/init/promptForTypescript.d.ts +0 -2
- 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 -29
- 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 -33
- 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/telemetry/cli.telemetry.d.ts +0 -20
- package/dist/telemetry/store/cleanupOldTelemetryFiles.d.ts +0 -5
- package/dist/telemetry/store/cleanupOldTelemetryFiles.js +0 -30
- package/dist/telemetry/store/cleanupOldTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/createTelemetryStore.d.ts +0 -39
- package/dist/telemetry/store/createTelemetryStore.js +0 -95
- package/dist/telemetry/store/createTelemetryStore.js.map +0 -1
- package/dist/telemetry/store/createTraceId.d.ts +0 -10
- package/dist/telemetry/store/createTraceId.js +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 +0 -34
- package/dist/telemetry/store/findTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/flushTelemetryFiles.d.ts +0 -20
- package/dist/telemetry/store/flushTelemetryFiles.js +0 -107
- package/dist/telemetry/store/flushTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/generateTelemetryFilePath.d.ts +0 -17
- package/dist/telemetry/store/generateTelemetryFilePath.js +0 -30
- 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 +0 -54
- package/dist/telemetry/store/logger.js.map +0 -1
- package/dist/telemetry/store/trace.d.ts +0 -6
- package/dist/telemetry/store/trace.js +0 -150
- 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 -16
- 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/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/formatSize.d.ts +0 -6
- 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/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/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 -29
- 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/readPackageJson.d.ts +0 -31
- package/dist/util/readPackageManifest.d.ts +0 -21
- 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/validation/validateDocumentsUtils.d.ts +0 -12
- package/dist/util/warnAboutMissingAppId.d.ts +0 -7
- package/dist/util/workerChannels.d.ts +0 -59
- /package/dist/actions/{telemetry → init}/types.js +0 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { createBooleanFilters } from '../gen2/filters/booleanFilters.js';
|
|
2
|
+
import { createDateFilters } from '../gen2/filters/dateFilters.js';
|
|
3
|
+
import { createDateTimeFilters } from '../gen2/filters/dateTimeFilters.js';
|
|
4
|
+
import { createFloatFilters } from '../gen2/filters/floatFilters.js';
|
|
5
|
+
import { createIdFilters } from '../gen2/filters/idFilters.js';
|
|
6
|
+
import { createIntegerFilters } from '../gen2/filters/integerFilters.js';
|
|
7
|
+
import { createStringFilters } from '../gen2/filters/stringFilters.js';
|
|
8
|
+
import { isDocumentType, isNonUnion, isUnion } from '../helpers.js';
|
|
9
|
+
import { createDocumentFilters } from './filters/documentFilters.js';
|
|
10
|
+
import { getFilterFieldName } from './utils.js';
|
|
11
|
+
const typeAliases = {
|
|
12
|
+
Email: 'String',
|
|
13
|
+
Text: 'String',
|
|
14
|
+
Url: 'String'
|
|
15
|
+
};
|
|
16
|
+
const filterCreators = {
|
|
17
|
+
Boolean: createBooleanFilters,
|
|
18
|
+
Date: createDateFilters,
|
|
19
|
+
Datetime: createDateTimeFilters,
|
|
20
|
+
Document: createDocumentFilters,
|
|
21
|
+
Float: createFloatFilters,
|
|
22
|
+
ID: createIdFilters,
|
|
23
|
+
Integer: createIntegerFilters,
|
|
24
|
+
String: createStringFilters
|
|
25
|
+
};
|
|
26
|
+
export function generateTypeFilters(types, options) {
|
|
27
|
+
const { filterSuffix } = options || {};
|
|
28
|
+
const builtInTypeKeys = Object.keys(filterCreators);
|
|
29
|
+
const builtinTypeValues = Object.values(filterCreators);
|
|
30
|
+
const objectTypes = types.filter((type)=>isNonUnion(type)).filter((type)=>type.type === 'Object' && ![
|
|
31
|
+
'Block',
|
|
32
|
+
'Span'
|
|
33
|
+
].includes(type.name) && // TODO: What do we do with blocks?
|
|
34
|
+
!type.interfaces && !builtInTypeKeys.includes(type.type));
|
|
35
|
+
const unionTypes = types.filter((type)=>isUnion(type)).map((type)=>type.name);
|
|
36
|
+
const documentTypes = types.filter((type)=>type.name === 'Document' || isDocumentType(type));
|
|
37
|
+
const builtinTypeFilters = createBuiltinTypeFilters(builtinTypeValues);
|
|
38
|
+
const objectTypeFilters = createObjectTypeFilters(objectTypes, {
|
|
39
|
+
filterSuffix,
|
|
40
|
+
unionTypes
|
|
41
|
+
});
|
|
42
|
+
const documentTypeFilters = createDocumentTypeFilters(documentTypes, {
|
|
43
|
+
filterSuffix,
|
|
44
|
+
unionTypes
|
|
45
|
+
});
|
|
46
|
+
return [
|
|
47
|
+
...builtinTypeFilters,
|
|
48
|
+
...objectTypeFilters,
|
|
49
|
+
...documentTypeFilters
|
|
50
|
+
];
|
|
51
|
+
}
|
|
52
|
+
function createBuiltinTypeFilters(builtinTypeValues) {
|
|
53
|
+
return builtinTypeValues.map((filterCreator)=>filterCreator());
|
|
54
|
+
}
|
|
55
|
+
function createObjectTypeFilters(objectTypes, options) {
|
|
56
|
+
return objectTypes.map((objectType)=>({
|
|
57
|
+
fields: createFieldFilters(objectType, options),
|
|
58
|
+
kind: 'InputObject',
|
|
59
|
+
name: getFilterFieldName(objectType.name, options.filterSuffix)
|
|
60
|
+
}));
|
|
61
|
+
}
|
|
62
|
+
function createDocumentTypeFilters(documentTypes, options) {
|
|
63
|
+
return documentTypes.map((documentType)=>({
|
|
64
|
+
fields: [
|
|
65
|
+
...getDocumentFilters(),
|
|
66
|
+
...createFieldFilters(documentType, options)
|
|
67
|
+
],
|
|
68
|
+
kind: 'InputObject',
|
|
69
|
+
name: getFilterFieldName(documentType.name, options.filterSuffix)
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
function createFieldFilters(objectType, options) {
|
|
73
|
+
const { unionTypes } = options;
|
|
74
|
+
if (!objectType.fields) {
|
|
75
|
+
return [];
|
|
76
|
+
}
|
|
77
|
+
return objectType.fields.filter((field)=>field.type !== 'JSON' && field.kind !== 'List' && !unionTypes.includes(field.type)).map((field)=>{
|
|
78
|
+
const typeName = typeAliases[field.type] || field.type;
|
|
79
|
+
// If the type is default type than don't add a custom suffix
|
|
80
|
+
const filterSuffix = Object.keys({
|
|
81
|
+
...typeAliases,
|
|
82
|
+
...filterCreators
|
|
83
|
+
}).includes(typeName) ? undefined : options.filterSuffix;
|
|
84
|
+
return {
|
|
85
|
+
fieldName: field.fieldName,
|
|
86
|
+
isReference: field.isReference,
|
|
87
|
+
type: getFilterFieldName(typeAliases[field.type] || field.type, filterSuffix)
|
|
88
|
+
};
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function getDocumentFilters() {
|
|
92
|
+
return [
|
|
93
|
+
{
|
|
94
|
+
description: 'Apply filters on document level',
|
|
95
|
+
fieldName: '_',
|
|
96
|
+
type: 'Sanity_DocumentFilter'
|
|
97
|
+
}
|
|
98
|
+
];
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
//# sourceMappingURL=generateTypeFilters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/graphql/gen3/generateTypeFilters.ts"],"sourcesContent":["import {createBooleanFilters} from '../gen2/filters/booleanFilters.js'\nimport {createDateFilters} from '../gen2/filters/dateFilters.js'\nimport {createDateTimeFilters} from '../gen2/filters/dateTimeFilters.js'\nimport {createFloatFilters} from '../gen2/filters/floatFilters.js'\nimport {createIdFilters} from '../gen2/filters/idFilters.js'\nimport {createIntegerFilters} from '../gen2/filters/integerFilters.js'\nimport {createStringFilters} from '../gen2/filters/stringFilters.js'\nimport {isDocumentType, isNonUnion, isUnion} from '../helpers.js'\nimport {\n type ApiCustomizationOptions,\n type ConvertedDocumentType,\n type ConvertedType,\n type ConvertedUnion,\n type InputObjectType,\n} from '../types.js'\nimport {createDocumentFilters} from './filters/documentFilters.js'\nimport {getFilterFieldName} from './utils.js'\n\nconst typeAliases: Record<string, string | undefined> = {\n Email: 'String',\n Text: 'String',\n Url: 'String',\n}\n\ntype FilterCreator = () => InputObjectType\n\nconst filterCreators: Record<string, FilterCreator> = {\n Boolean: createBooleanFilters,\n Date: createDateFilters,\n Datetime: createDateTimeFilters,\n Document: createDocumentFilters,\n Float: createFloatFilters,\n ID: createIdFilters,\n Integer: createIntegerFilters,\n String: createStringFilters,\n}\n\nexport function generateTypeFilters(\n types: (ConvertedType | ConvertedUnion)[],\n options?: ApiCustomizationOptions,\n): InputObjectType[] {\n const {filterSuffix} = options || {}\n const builtInTypeKeys = Object.keys(filterCreators)\n const builtinTypeValues = Object.values(filterCreators)\n const objectTypes = types\n .filter((type) => isNonUnion(type))\n .filter(\n (type) =>\n type.type === 'Object' &&\n !['Block', 'Span'].includes(type.name) && // TODO: What do we do with blocks?\n !type.interfaces &&\n !builtInTypeKeys.includes(type.type),\n )\n\n const unionTypes = types.filter((type) => isUnion(type)).map((type) => type.name)\n const documentTypes = types.filter(\n (type): type is ConvertedDocumentType => type.name === 'Document' || isDocumentType(type),\n )\n\n const builtinTypeFilters = createBuiltinTypeFilters(builtinTypeValues)\n const objectTypeFilters = createObjectTypeFilters(objectTypes, {filterSuffix, unionTypes})\n const documentTypeFilters = createDocumentTypeFilters(documentTypes, {filterSuffix, unionTypes})\n\n return [...builtinTypeFilters, ...objectTypeFilters, ...documentTypeFilters]\n}\n\nfunction createBuiltinTypeFilters(builtinTypeValues: FilterCreator[]): InputObjectType[] {\n return builtinTypeValues.map((filterCreator) => filterCreator())\n}\n\nfunction createObjectTypeFilters(\n objectTypes: ConvertedType[],\n options: {filterSuffix?: string; unionTypes: string[]},\n): InputObjectType[] {\n return objectTypes.map((objectType) => ({\n fields: createFieldFilters(objectType, options),\n kind: 'InputObject',\n name: getFilterFieldName(objectType.name, options.filterSuffix),\n }))\n}\n\nfunction createDocumentTypeFilters(\n documentTypes: ConvertedType[],\n options: {filterSuffix?: string; unionTypes: string[]},\n): InputObjectType[] {\n return documentTypes.map((documentType) => ({\n fields: [...getDocumentFilters(), ...createFieldFilters(documentType, options)],\n kind: 'InputObject',\n name: getFilterFieldName(documentType.name, options.filterSuffix),\n }))\n}\n\nfunction createFieldFilters(\n objectType: ConvertedType,\n options: {filterSuffix?: string; unionTypes: string[]},\n) {\n const {unionTypes} = options\n if (!objectType.fields) {\n return []\n }\n\n return objectType.fields\n .filter(\n (field) => field.type !== 'JSON' && field.kind !== 'List' && !unionTypes.includes(field.type),\n )\n .map((field) => {\n const typeName = typeAliases[field.type] || field.type\n // If the type is default type than don't add a custom suffix\n const filterSuffix = Object.keys({...typeAliases, ...filterCreators}).includes(typeName)\n ? undefined\n : options.filterSuffix\n\n return {\n fieldName: field.fieldName,\n isReference: field.isReference,\n type: getFilterFieldName(typeAliases[field.type] || field.type, filterSuffix),\n }\n })\n}\n\nfunction getDocumentFilters() {\n return [\n {\n description: 'Apply filters on document level',\n fieldName: '_',\n type: 'Sanity_DocumentFilter',\n },\n ]\n}\n"],"names":["createBooleanFilters","createDateFilters","createDateTimeFilters","createFloatFilters","createIdFilters","createIntegerFilters","createStringFilters","isDocumentType","isNonUnion","isUnion","createDocumentFilters","getFilterFieldName","typeAliases","Email","Text","Url","filterCreators","Boolean","Date","Datetime","Document","Float","ID","Integer","String","generateTypeFilters","types","options","filterSuffix","builtInTypeKeys","Object","keys","builtinTypeValues","values","objectTypes","filter","type","includes","name","interfaces","unionTypes","map","documentTypes","builtinTypeFilters","createBuiltinTypeFilters","objectTypeFilters","createObjectTypeFilters","documentTypeFilters","createDocumentTypeFilters","filterCreator","objectType","fields","createFieldFilters","kind","documentType","getDocumentFilters","field","typeName","undefined","fieldName","isReference","description"],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { upperFirst } from 'lodash-es';
|
|
2
|
+
import { isDocumentType, isUnion } from '../helpers.js';
|
|
3
|
+
import { internal } from '../types.js';
|
|
4
|
+
import { getFilterFieldName } from './utils.js';
|
|
5
|
+
export function generateTypeQueries(types, sortings, options) {
|
|
6
|
+
const { filterSuffix } = options || {};
|
|
7
|
+
const queries = [];
|
|
8
|
+
const documentTypes = types.filter((type)=>isDocumentType(type));
|
|
9
|
+
const documentTypeNames = documentTypes.map((docType)=>JSON.stringify(docType.originalName || docType.name));
|
|
10
|
+
const documentsFilter = `_type in [${documentTypeNames.join(', ')}]`;
|
|
11
|
+
const documentInterface = types.find((type)=>type.name === 'Document');
|
|
12
|
+
if (!documentInterface || isUnion(documentInterface)) {
|
|
13
|
+
throw new Error('Failed to find document interface');
|
|
14
|
+
}
|
|
15
|
+
const queryable = [
|
|
16
|
+
...documentTypes,
|
|
17
|
+
documentInterface
|
|
18
|
+
];
|
|
19
|
+
const isSortable = (type)=>sortings.some((sorting)=>sorting.name === `${type.name}Sorting`);
|
|
20
|
+
// Single ID-based result lookup queries
|
|
21
|
+
for (const type of queryable){
|
|
22
|
+
queries.push({
|
|
23
|
+
args: [
|
|
24
|
+
{
|
|
25
|
+
description: `${type.name} document ID`,
|
|
26
|
+
isNullable: false,
|
|
27
|
+
name: 'id',
|
|
28
|
+
type: 'ID'
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
constraints: [
|
|
32
|
+
{
|
|
33
|
+
comparator: 'eq',
|
|
34
|
+
field: '_id',
|
|
35
|
+
value: {
|
|
36
|
+
argName: 'id',
|
|
37
|
+
kind: 'argumentValue'
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
],
|
|
41
|
+
fieldName: type.name,
|
|
42
|
+
type: type.name,
|
|
43
|
+
...getDeprecation(type)
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
// Fetch all of type
|
|
47
|
+
for (const type of queryable){
|
|
48
|
+
const sorting = [];
|
|
49
|
+
if (isSortable(type)) {
|
|
50
|
+
sorting.push({
|
|
51
|
+
name: 'sort',
|
|
52
|
+
type: {
|
|
53
|
+
children: {
|
|
54
|
+
isNullable: false,
|
|
55
|
+
type: `${type.name}Sorting`
|
|
56
|
+
},
|
|
57
|
+
isNullable: true,
|
|
58
|
+
kind: 'List'
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
queries.push({
|
|
63
|
+
args: [
|
|
64
|
+
{
|
|
65
|
+
isFieldFilter: true,
|
|
66
|
+
name: 'where',
|
|
67
|
+
type: getFilterFieldName(type.name, filterSuffix)
|
|
68
|
+
},
|
|
69
|
+
...sorting,
|
|
70
|
+
{
|
|
71
|
+
description: 'Max documents to return',
|
|
72
|
+
isFieldFilter: false,
|
|
73
|
+
name: 'limit',
|
|
74
|
+
type: 'Int'
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
description: 'Offset at which to start returning documents from',
|
|
78
|
+
isFieldFilter: false,
|
|
79
|
+
name: 'offset',
|
|
80
|
+
type: 'Int'
|
|
81
|
+
}
|
|
82
|
+
],
|
|
83
|
+
fieldName: `all${upperFirst(type.name)}`,
|
|
84
|
+
filter: type.name === 'Document' && type.kind === 'Interface' ? documentsFilter : `_type == ${JSON.stringify(type.originalName || type.name)}`,
|
|
85
|
+
type: {
|
|
86
|
+
children: {
|
|
87
|
+
isNullable: false,
|
|
88
|
+
type: type.name
|
|
89
|
+
},
|
|
90
|
+
isNullable: false,
|
|
91
|
+
kind: 'List'
|
|
92
|
+
},
|
|
93
|
+
...getDeprecation(type)
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
return queries;
|
|
97
|
+
}
|
|
98
|
+
function getDeprecation(type) {
|
|
99
|
+
return type[internal]?.deprecationReason ? {
|
|
100
|
+
deprecationReason: type[internal].deprecationReason
|
|
101
|
+
} : {};
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
//# sourceMappingURL=generateTypeQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/graphql/gen3/generateTypeQueries.ts"],"sourcesContent":["import {upperFirst} from 'lodash-es'\n\nimport {isDocumentType, isUnion} from '../helpers.js'\nimport {\n type ApiCustomizationOptions,\n type ConvertedType,\n type ConvertedUnion,\n type Deprecation,\n type InputObjectType,\n internal,\n type QueryDefinition,\n} from '../types.js'\nimport {getFilterFieldName} from './utils.js'\n\nexport function generateTypeQueries(\n types: (ConvertedType | ConvertedUnion)[],\n sortings: InputObjectType[],\n options?: ApiCustomizationOptions,\n): QueryDefinition[] {\n const {filterSuffix} = options || {}\n const queries: QueryDefinition[] = []\n const documentTypes = types.filter((type) => isDocumentType(type))\n\n const documentTypeNames = documentTypes.map((docType) =>\n JSON.stringify(docType.originalName || docType.name),\n )\n const documentsFilter = `_type in [${documentTypeNames.join(', ')}]`\n\n const documentInterface = types.find((type) => type.name === 'Document')\n if (!documentInterface || isUnion(documentInterface)) {\n throw new Error('Failed to find document interface')\n }\n\n const queryable = [...documentTypes, documentInterface]\n const isSortable = (type: ConvertedType) =>\n sortings.some((sorting) => sorting.name === `${type.name}Sorting`)\n\n // Single ID-based result lookup queries\n for (const type of queryable) {\n queries.push({\n args: [\n {\n description: `${type.name} document ID`,\n isNullable: false,\n name: 'id',\n type: 'ID',\n },\n ],\n constraints: [\n {\n comparator: 'eq',\n field: '_id',\n value: {argName: 'id', kind: 'argumentValue'},\n },\n ],\n fieldName: type.name,\n type: type.name,\n ...getDeprecation(type),\n })\n }\n\n // Fetch all of type\n for (const type of queryable) {\n const sorting: QueryDefinition['args'] = []\n if (isSortable(type)) {\n sorting.push({\n name: 'sort',\n type: {\n children: {\n isNullable: false,\n type: `${type.name}Sorting`,\n },\n isNullable: true,\n kind: 'List',\n },\n })\n }\n\n queries.push({\n args: [\n {\n isFieldFilter: true,\n name: 'where',\n type: getFilterFieldName(type.name, filterSuffix),\n },\n ...sorting,\n {\n description: 'Max documents to return',\n isFieldFilter: false,\n name: 'limit',\n type: 'Int',\n },\n {\n description: 'Offset at which to start returning documents from',\n isFieldFilter: false,\n name: 'offset',\n type: 'Int',\n },\n ],\n fieldName: `all${upperFirst(type.name)}`,\n filter:\n type.name === 'Document' && type.kind === 'Interface'\n ? documentsFilter\n : `_type == ${JSON.stringify(type.originalName || type.name)}`,\n type: {\n children: {isNullable: false, type: type.name},\n isNullable: false,\n kind: 'List',\n },\n ...getDeprecation(type),\n })\n }\n\n return queries\n}\n\nfunction getDeprecation(type: ConvertedType): Partial<Deprecation> {\n return type[internal]?.deprecationReason\n ? {\n deprecationReason: type[internal].deprecationReason,\n }\n : {}\n}\n"],"names":["upperFirst","isDocumentType","isUnion","internal","getFilterFieldName","generateTypeQueries","types","sortings","options","filterSuffix","queries","documentTypes","filter","type","documentTypeNames","map","docType","JSON","stringify","originalName","name","documentsFilter","join","documentInterface","find","Error","queryable","isSortable","some","sorting","push","args","description","isNullable","constraints","comparator","field","value","argName","kind","fieldName","getDeprecation","children","isFieldFilter","deprecationReason"],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { isDocumentType, isNonUnion } from '../helpers.js';
|
|
2
|
+
const builtInTypes = new Set([
|
|
3
|
+
'Boolean',
|
|
4
|
+
'Date',
|
|
5
|
+
'Datetime',
|
|
6
|
+
'Email',
|
|
7
|
+
'Float',
|
|
8
|
+
'ID',
|
|
9
|
+
'Integer',
|
|
10
|
+
'String',
|
|
11
|
+
'Text',
|
|
12
|
+
'Url'
|
|
13
|
+
]);
|
|
14
|
+
const builtInSortingEnum = {
|
|
15
|
+
kind: 'Enum',
|
|
16
|
+
name: 'SortOrder',
|
|
17
|
+
values: [
|
|
18
|
+
{
|
|
19
|
+
description: 'Sorts on the value in ascending order.',
|
|
20
|
+
name: 'ASC',
|
|
21
|
+
value: 1
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
description: 'Sorts on the value in descending order.',
|
|
25
|
+
name: 'DESC',
|
|
26
|
+
value: 2
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
};
|
|
30
|
+
export function generateTypeSortings(types) {
|
|
31
|
+
const objectTypes = types.filter((type)=>isNonUnion(type)).filter((type)=>type.type === 'Object' && ![
|
|
32
|
+
'Block',
|
|
33
|
+
'Span'
|
|
34
|
+
].includes(type.name) && // TODO: What do we do with blocks?
|
|
35
|
+
!type.interfaces && !builtInTypes.has(type.name));
|
|
36
|
+
const documentTypes = types.filter((type)=>type.name === 'Document' || isDocumentType(type));
|
|
37
|
+
const hasFields = (type)=>type.fields.length > 0;
|
|
38
|
+
const objectTypeSortings = createObjectTypeSortings(objectTypes);
|
|
39
|
+
const documentTypeSortings = createDocumentTypeSortings(documentTypes);
|
|
40
|
+
const allSortings = [
|
|
41
|
+
...objectTypeSortings,
|
|
42
|
+
...documentTypeSortings
|
|
43
|
+
].filter((type)=>hasFields(type));
|
|
44
|
+
return [
|
|
45
|
+
...allSortings,
|
|
46
|
+
builtInSortingEnum
|
|
47
|
+
];
|
|
48
|
+
}
|
|
49
|
+
function createObjectTypeSortings(objectTypes) {
|
|
50
|
+
return objectTypes.map((objectType)=>({
|
|
51
|
+
fields: objectType.fields.filter((field)=>field.type !== 'JSON' && field.kind !== 'List').filter((field)=>!field.isReference).map((field)=>({
|
|
52
|
+
fieldName: field.fieldName,
|
|
53
|
+
type: builtInTypes.has(field.type) ? builtInSortingEnum.name : `${field.type}Sorting`
|
|
54
|
+
})),
|
|
55
|
+
kind: 'InputObject',
|
|
56
|
+
name: `${objectType.name}Sorting`
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
function createDocumentTypeSortings(documentTypes) {
|
|
60
|
+
return documentTypes.map((documentType)=>({
|
|
61
|
+
fields: documentType.fields.filter((field)=>field.type !== 'JSON' && field.kind !== 'List').filter((field)=>!field.isReference).map((field)=>({
|
|
62
|
+
fieldName: field.fieldName,
|
|
63
|
+
type: builtInTypes.has(field.type) ? builtInSortingEnum.name : `${field.type}Sorting`
|
|
64
|
+
})),
|
|
65
|
+
kind: 'InputObject',
|
|
66
|
+
name: `${documentType.name}Sorting`
|
|
67
|
+
}));
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
//# sourceMappingURL=generateTypeSortings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/graphql/gen3/generateTypeSortings.ts"],"sourcesContent":["import {isDocumentType, isNonUnion} from '../helpers.js'\nimport {\n type ConvertedDocumentType,\n type ConvertedEnum,\n type ConvertedType,\n type ConvertedUnion,\n type InputObjectType,\n} from '../types.js'\n\nconst builtInTypes = new Set([\n 'Boolean',\n 'Date',\n 'Datetime',\n 'Email',\n 'Float',\n 'ID',\n 'Integer',\n 'String',\n 'Text',\n 'Url',\n])\n\nconst builtInSortingEnum: ConvertedEnum = {\n kind: 'Enum',\n name: 'SortOrder',\n values: [\n {\n description: 'Sorts on the value in ascending order.',\n name: 'ASC',\n value: 1,\n },\n {\n description: 'Sorts on the value in descending order.',\n name: 'DESC',\n value: 2,\n },\n ],\n}\n\nexport function generateTypeSortings(\n types: (ConvertedType | ConvertedUnion)[],\n): (ConvertedEnum | InputObjectType)[] {\n const objectTypes = types\n .filter((type) => isNonUnion(type))\n .filter(\n (type) =>\n type.type === 'Object' &&\n !['Block', 'Span'].includes(type.name) && // TODO: What do we do with blocks?\n !type.interfaces &&\n !builtInTypes.has(type.name),\n )\n const documentTypes = types.filter(\n (type): type is ConvertedDocumentType => type.name === 'Document' || isDocumentType(type),\n )\n\n const hasFields = (type: InputObjectType) => type.fields.length > 0\n\n const objectTypeSortings = createObjectTypeSortings(objectTypes)\n const documentTypeSortings = createDocumentTypeSortings(documentTypes)\n const allSortings = [...objectTypeSortings, ...documentTypeSortings].filter((type) =>\n hasFields(type),\n )\n\n return [...allSortings, builtInSortingEnum]\n}\n\nfunction createObjectTypeSortings(objectTypes: ConvertedType[]): InputObjectType[] {\n return objectTypes.map((objectType) => ({\n fields: objectType.fields\n .filter((field) => field.type !== 'JSON' && field.kind !== 'List')\n .filter((field) => !field.isReference)\n .map((field) => ({\n fieldName: field.fieldName,\n type: builtInTypes.has(field.type) ? builtInSortingEnum.name : `${field.type}Sorting`,\n })),\n kind: 'InputObject',\n name: `${objectType.name}Sorting`,\n }))\n}\n\nfunction createDocumentTypeSortings(documentTypes: ConvertedType[]): InputObjectType[] {\n return documentTypes.map((documentType) => ({\n fields: documentType.fields\n .filter((field) => field.type !== 'JSON' && field.kind !== 'List')\n .filter((field) => !field.isReference)\n .map((field) => ({\n fieldName: field.fieldName,\n type: builtInTypes.has(field.type) ? builtInSortingEnum.name : `${field.type}Sorting`,\n })),\n kind: 'InputObject',\n name: `${documentType.name}Sorting`,\n }))\n}\n"],"names":["isDocumentType","isNonUnion","builtInTypes","Set","builtInSortingEnum","kind","name","values","description","value","generateTypeSortings","types","objectTypes","filter","type","includes","interfaces","has","documentTypes","hasFields","fields","length","objectTypeSortings","createObjectTypeSortings","documentTypeSortings","createDocumentTypeSortings","allSortings","map","objectType","field","isReference","fieldName","documentType"],"mappings":"AAAA,SAAQA,cAAc,EAAEC,UAAU,QAAO,gBAAe;AASxD,MAAMC,eAAe,IAAIC,IAAI;IAC3B;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,MAAMC,qBAAoC;IACxCC,MAAM;IACNC,MAAM;IACNC,QAAQ;QACN;YACEC,aAAa;YACbF,MAAM;YACNG,OAAO;QACT;QACA;YACED,aAAa;YACbF,MAAM;YACNG,OAAO;QACT;KACD;AACH;AAEA,OAAO,SAASC,qBACdC,KAAyC;IAEzC,MAAMC,cAAcD,MACjBE,MAAM,CAAC,CAACC,OAASb,WAAWa,OAC5BD,MAAM,CACL,CAACC,OACCA,KAAKA,IAAI,KAAK,YACd,CAAC;YAAC;YAAS;SAAO,CAACC,QAAQ,CAACD,KAAKR,IAAI,KAAK,mCAAmC;QAC7E,CAACQ,KAAKE,UAAU,IAChB,CAACd,aAAae,GAAG,CAACH,KAAKR,IAAI;IAEjC,MAAMY,gBAAgBP,MAAME,MAAM,CAChC,CAACC,OAAwCA,KAAKR,IAAI,KAAK,cAAcN,eAAec;IAGtF,MAAMK,YAAY,CAACL,OAA0BA,KAAKM,MAAM,CAACC,MAAM,GAAG;IAElE,MAAMC,qBAAqBC,yBAAyBX;IACpD,MAAMY,uBAAuBC,2BAA2BP;IACxD,MAAMQ,cAAc;WAAIJ;WAAuBE;KAAqB,CAACX,MAAM,CAAC,CAACC,OAC3EK,UAAUL;IAGZ,OAAO;WAAIY;QAAatB;KAAmB;AAC7C;AAEA,SAASmB,yBAAyBX,WAA4B;IAC5D,OAAOA,YAAYe,GAAG,CAAC,CAACC,aAAgB,CAAA;YACtCR,QAAQQ,WAAWR,MAAM,CACtBP,MAAM,CAAC,CAACgB,QAAUA,MAAMf,IAAI,KAAK,UAAUe,MAAMxB,IAAI,KAAK,QAC1DQ,MAAM,CAAC,CAACgB,QAAU,CAACA,MAAMC,WAAW,EACpCH,GAAG,CAAC,CAACE,QAAW,CAAA;oBACfE,WAAWF,MAAME,SAAS;oBAC1BjB,MAAMZ,aAAae,GAAG,CAACY,MAAMf,IAAI,IAAIV,mBAAmBE,IAAI,GAAG,GAAGuB,MAAMf,IAAI,CAAC,OAAO,CAAC;gBACvF,CAAA;YACFT,MAAM;YACNC,MAAM,GAAGsB,WAAWtB,IAAI,CAAC,OAAO,CAAC;QACnC,CAAA;AACF;AAEA,SAASmB,2BAA2BP,aAA8B;IAChE,OAAOA,cAAcS,GAAG,CAAC,CAACK,eAAkB,CAAA;YAC1CZ,QAAQY,aAAaZ,MAAM,CACxBP,MAAM,CAAC,CAACgB,QAAUA,MAAMf,IAAI,KAAK,UAAUe,MAAMxB,IAAI,KAAK,QAC1DQ,MAAM,CAAC,CAACgB,QAAU,CAACA,MAAMC,WAAW,EACpCH,GAAG,CAAC,CAACE,QAAW,CAAA;oBACfE,WAAWF,MAAME,SAAS;oBAC1BjB,MAAMZ,aAAae,GAAG,CAACY,MAAMf,IAAI,IAAIV,mBAAmBE,IAAI,GAAG,GAAGuB,MAAMf,IAAI,CAAC,OAAO,CAAC;gBACvF,CAAA;YACFT,MAAM;YACNC,MAAM,GAAG0B,aAAa1B,IAAI,CAAC,OAAO,CAAC;QACrC,CAAA;AACF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { isUnion } from '../helpers.js';
|
|
2
|
+
import { generateTypeFilters } from './generateTypeFilters.js';
|
|
3
|
+
import { generateTypeQueries } from './generateTypeQueries.js';
|
|
4
|
+
import { generateTypeSortings } from './generateTypeSortings.js';
|
|
5
|
+
const gen3 = (extracted, options)=>{
|
|
6
|
+
const documentInterface = extracted.interfaces.find((iface)=>iface.name === 'Document');
|
|
7
|
+
if (!documentInterface || isUnion(documentInterface)) {
|
|
8
|
+
throw new Error('Failed to find document interface');
|
|
9
|
+
}
|
|
10
|
+
const types = [
|
|
11
|
+
...extracted.types,
|
|
12
|
+
documentInterface
|
|
13
|
+
];
|
|
14
|
+
const filters = generateTypeFilters(types, options);
|
|
15
|
+
const sortings = generateTypeSortings(types);
|
|
16
|
+
const queries = generateTypeQueries(types, sortings.filter((node)=>node.kind === 'InputObject'), options);
|
|
17
|
+
const graphqlTypes = [
|
|
18
|
+
...extracted.types,
|
|
19
|
+
...filters,
|
|
20
|
+
...sortings
|
|
21
|
+
];
|
|
22
|
+
return {
|
|
23
|
+
generation: 'gen3',
|
|
24
|
+
interfaces: extracted.interfaces,
|
|
25
|
+
queries,
|
|
26
|
+
types: graphqlTypes
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export default gen3;
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/graphql/gen3/index.ts"],"sourcesContent":["import {isUnion} from '../helpers.js'\nimport {\n type ApiCustomizationOptions,\n type ApiSpecification,\n type ConvertedType,\n type GeneratedApiSpecification,\n type InputObjectType,\n} from '../types.js'\nimport {generateTypeFilters} from './generateTypeFilters.js'\nimport {generateTypeQueries} from './generateTypeQueries.js'\nimport {generateTypeSortings} from './generateTypeSortings.js'\n\nconst gen3 = (\n extracted: ApiSpecification,\n options?: ApiCustomizationOptions,\n): GeneratedApiSpecification => {\n const documentInterface = extracted.interfaces.find((iface) => iface.name === 'Document')\n if (!documentInterface || isUnion(documentInterface)) {\n throw new Error('Failed to find document interface')\n }\n\n const types = [...extracted.types, documentInterface as ConvertedType]\n\n const filters = generateTypeFilters(types, options)\n const sortings = generateTypeSortings(types)\n const queries = generateTypeQueries(\n types,\n sortings.filter((node): node is InputObjectType => node.kind === 'InputObject'),\n options,\n )\n const graphqlTypes = [...extracted.types, ...filters, ...sortings]\n\n return {generation: 'gen3', interfaces: extracted.interfaces, queries, types: graphqlTypes}\n}\n\nexport default gen3\n"],"names":["isUnion","generateTypeFilters","generateTypeQueries","generateTypeSortings","gen3","extracted","options","documentInterface","interfaces","find","iface","name","Error","types","filters","sortings","queries","filter","node","kind","graphqlTypes","generation"],"mappings":"AAAA,SAAQA,OAAO,QAAO,gBAAe;AAQrC,SAAQC,mBAAmB,QAAO,2BAA0B;AAC5D,SAAQC,mBAAmB,QAAO,2BAA0B;AAC5D,SAAQC,oBAAoB,QAAO,4BAA2B;AAE9D,MAAMC,OAAO,CACXC,WACAC;IAEA,MAAMC,oBAAoBF,UAAUG,UAAU,CAACC,IAAI,CAAC,CAACC,QAAUA,MAAMC,IAAI,KAAK;IAC9E,IAAI,CAACJ,qBAAqBP,QAAQO,oBAAoB;QACpD,MAAM,IAAIK,MAAM;IAClB;IAEA,MAAMC,QAAQ;WAAIR,UAAUQ,KAAK;QAAEN;KAAmC;IAEtE,MAAMO,UAAUb,oBAAoBY,OAAOP;IAC3C,MAAMS,WAAWZ,qBAAqBU;IACtC,MAAMG,UAAUd,oBACdW,OACAE,SAASE,MAAM,CAAC,CAACC,OAAkCA,KAAKC,IAAI,KAAK,gBACjEb;IAEF,MAAMc,eAAe;WAAIf,UAAUQ,KAAK;WAAKC;WAAYC;KAAS;IAElE,OAAO;QAACM,YAAY;QAAQb,YAAYH,UAAUG,UAAU;QAAEQ;QAASH,OAAOO;IAAY;AAC5F;AAEA,eAAehB,KAAI"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a filter field name for a given field name.
|
|
3
|
+
*
|
|
4
|
+
* @internal
|
|
5
|
+
*
|
|
6
|
+
* @param fieldName - The field name to generate a filter field name for.
|
|
7
|
+
* @param suffix - The suffix to append to the field name. Default is `Filter`.
|
|
8
|
+
*/ export function getFilterFieldName(fieldName, suffix = 'Filter') {
|
|
9
|
+
return `${fieldName}${suffix}`;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/graphql/gen3/utils.ts"],"sourcesContent":["/**\n * Generates a filter field name for a given field name.\n *\n * @internal\n *\n * @param fieldName - The field name to generate a filter field name for.\n * @param suffix - The suffix to append to the field name. Default is `Filter`.\n */\nexport function getFilterFieldName(fieldName: string, suffix = 'Filter'): string {\n return `${fieldName}${suffix}`\n}\n"],"names":["getFilterFieldName","fieldName","suffix"],"mappings":"AAAA;;;;;;;CAOC,GACD,OAAO,SAASA,mBAAmBC,SAAiB,EAAEC,SAAS,QAAQ;IACrE,OAAO,GAAGD,YAAYC,QAAQ;AAChC"}
|
|
@@ -5,7 +5,7 @@ async function main() {
|
|
|
5
5
|
if (isMainThread || !parentPort) {
|
|
6
6
|
throw new Error('This module must be run as a worker thread');
|
|
7
7
|
}
|
|
8
|
-
await getGraphQLAPIsForked(parentPort)
|
|
8
|
+
await getGraphQLAPIsForked(parentPort);
|
|
9
9
|
}
|
|
10
10
|
await main();
|
|
11
11
|
async function getGraphQLAPIsForked(parent) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/actions/graphql/getGraphQLAPIs.worker.ts"],"sourcesContent":["import {isMainThread, type MessagePort, parentPort, workerData} from 'node:worker_threads'\n\nimport {type Schema} from '@sanity/types'\nimport {isPlainObject} from 'lodash-es'\nimport {oneline} from 'oneline'\n\nimport {\n type GraphQLAPIConfig,\n type SchemaDefinitionish,\n type TypeResolvedGraphQLAPI,\n} from './types.js'\n\ninterface Source {\n dataset: string\n name: string\n projectId: string\n schema: Schema\n}\n\ninterface Workspace extends Source {\n unstable_sources: Source[]\n}\n\nasync function main() {\n if (isMainThread || !parentPort) {\n throw new Error('This module must be run as a worker thread')\n }\n\n await getGraphQLAPIsForked(parentPort)
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/graphql/getGraphQLAPIs.worker.ts"],"sourcesContent":["import {isMainThread, type MessagePort, parentPort, workerData} from 'node:worker_threads'\n\nimport {type Schema} from '@sanity/types'\nimport {isPlainObject} from 'lodash-es'\nimport {oneline} from 'oneline'\n\nimport {\n type GraphQLAPIConfig,\n type SchemaDefinitionish,\n type TypeResolvedGraphQLAPI,\n} from './types.js'\n\ninterface Source {\n dataset: string\n name: string\n projectId: string\n schema: Schema\n}\n\ninterface Workspace extends Source {\n unstable_sources: Source[]\n}\n\nasync function main() {\n if (isMainThread || !parentPort) {\n throw new Error('This module must be run as a worker thread')\n }\n\n await getGraphQLAPIsForked(parentPort)\n}\n\nawait main()\n\nasync function getGraphQLAPIsForked(parent: MessagePort): Promise<void> {\n const {cliConfig, workspaces} = workerData\n const resolved = await resolveGraphQLApis({cliConfig, workspaces})\n parent.postMessage(resolved)\n}\n\ninterface ResolveGraphQLApisOptions {\n workspaces: Workspace[]\n\n cliConfig?: {graphql?: GraphQLAPIConfig[]}\n}\n\nasync function resolveGraphQLApis({\n cliConfig,\n workspaces,\n}: ResolveGraphQLApisOptions): Promise<TypeResolvedGraphQLAPI[]> {\n const numSources = workspaces.reduce(\n (count, workspace) => count + workspace.unstable_sources.length,\n 0,\n )\n const multiSource = numSources > 1\n const multiWorkspace = workspaces.length > 1\n const hasGraphQLConfig = Boolean(cliConfig?.graphql)\n\n if (workspaces.length === 0) {\n throw new Error('No studio configuration found')\n }\n\n if (numSources === 0) {\n throw new Error('No sources (project ID / dataset) configured')\n }\n\n // We can only automatically configure if there is a single workspace + source in play\n if ((multiWorkspace || multiSource) && !hasGraphQLConfig) {\n throw new Error(oneline`\n Multiple workspaces/sources configured.\n You must define an array of GraphQL APIs in \\`sanity.cli.ts\\` or \\`sanity.cli.js\\`\n and specify which workspace/source to use.\n `)\n }\n\n // No config is defined, but we have a single workspace + source, so use that\n if (!hasGraphQLConfig) {\n const {dataset, projectId, schema} = workspaces[0].unstable_sources[0]\n return [{dataset, projectId, schemaTypes: getStrippedSchemaTypes(schema)}]\n }\n\n // Explicity defined config\n const apiDefs = validateCliConfig(cliConfig?.graphql || [])\n return resolveGraphQLAPIsFromConfig(apiDefs, workspaces)\n}\n\nfunction resolveGraphQLAPIsFromConfig(\n apiDefs: GraphQLAPIConfig[],\n workspaces: Workspace[],\n): TypeResolvedGraphQLAPI[] {\n const resolvedApis: TypeResolvedGraphQLAPI[] = []\n\n for (const apiDef of apiDefs) {\n const {source: sourceName, workspace: workspaceName} = apiDef\n if (!workspaceName && workspaces.length > 1) {\n throw new Error(\n 'Must define `workspace` name in GraphQL API config when multiple workspaces are defined',\n )\n }\n\n // If we only have a single workspace defined, we can assume that is the intended one,\n // even if no `workspace` is defined for the GraphQL API\n const workspace =\n !workspaceName && workspaces.length === 1\n ? workspaces[0]\n : workspaces.find((space) => space.name === (workspaceName || 'default'))\n\n if (!workspace) {\n throw new Error(`Workspace \"${workspaceName || 'default'}\" not found`)\n }\n\n // If we only have a single source defined, we can assume that is the intended one,\n // even if no `source` is defined for the GraphQL API\n const source =\n !sourceName && workspace.unstable_sources.length === 1\n ? workspace.unstable_sources[0]\n : workspace.unstable_sources.find((src) => src.name === (sourceName || 'default'))\n\n if (!source) {\n throw new Error(\n `Source \"${sourceName || 'default'}\" not found in workspace \"${\n workspaceName || 'default'\n }\"`,\n )\n }\n\n resolvedApis.push({\n ...apiDef,\n dataset: source.dataset,\n projectId: source.projectId,\n schemaTypes: getStrippedSchemaTypes(source.schema),\n })\n }\n\n return resolvedApis\n}\n\nfunction validateCliConfig(\n config: GraphQLAPIConfig[],\n configPath = 'sanity.cli.js',\n): GraphQLAPIConfig[] {\n if (!Array.isArray(config)) {\n throw new TypeError(`\"graphql\" key in \"${configPath}\" must be an array if defined`)\n }\n\n if (config.length === 0) {\n throw new Error(`No GraphQL APIs defined in \"${configPath}\"`)\n }\n\n return config\n}\n\nfunction getStrippedSchemaTypes(schema: Schema): SchemaDefinitionish[] {\n const schemaDef = schema._original || {types: []}\n return schemaDef.types.map((type) => stripType(type))\n}\n\nfunction stripType(input: unknown): SchemaDefinitionish {\n return strip(input) as SchemaDefinitionish\n}\n\nfunction strip(input: unknown): unknown {\n if (Array.isArray(input)) {\n return input.map((item) => strip(item)).filter((item) => item !== undefined)\n }\n\n if (isPlainishObject(input)) {\n const stripped: Record<string, unknown> = {}\n for (const key of Object.keys(input)) {\n stripped[key] = strip(input[key])\n }\n return stripped\n }\n\n return isBasicType(input) ? input : undefined\n}\n\nfunction isPlainishObject(input: unknown): input is Record<string, unknown> {\n return isPlainObject(input)\n}\n\nfunction isBasicType(input: unknown): boolean {\n const type = typeof input\n if (type === 'boolean' || type === 'number' || type === 'string') {\n return true\n }\n\n if (type !== 'object') {\n return false\n }\n\n return Array.isArray(input) || input === null || isPlainishObject(input)\n}\n"],"names":["isMainThread","parentPort","workerData","isPlainObject","oneline","main","Error","getGraphQLAPIsForked","parent","cliConfig","workspaces","resolved","resolveGraphQLApis","postMessage","numSources","reduce","count","workspace","unstable_sources","length","multiSource","multiWorkspace","hasGraphQLConfig","Boolean","graphql","dataset","projectId","schema","schemaTypes","getStrippedSchemaTypes","apiDefs","validateCliConfig","resolveGraphQLAPIsFromConfig","resolvedApis","apiDef","source","sourceName","workspaceName","find","space","name","src","push","config","configPath","Array","isArray","TypeError","schemaDef","_original","types","map","type","stripType","input","strip","item","filter","undefined","isPlainishObject","stripped","key","Object","keys","isBasicType"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/graphql/graphqlDebug.ts"],"sourcesContent":["import {subdebug} from '@sanity/cli-core'\n\nexport const graphqlDebug = subdebug('graphql')\n"],"names":["subdebug","graphqlDebug"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,mBAAkB;AAEzC,OAAO,MAAMC,eAAeD,SAAS,WAAU"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/graphql/helpUrls.ts"],"sourcesContent":["export const SCHEMA_LIFT_ANONYMOUS_OBJECT_TYPE = 'schema-lift-anonymous-object-type'\n"],"names":["SCHEMA_LIFT_ANONYMOUS_OBJECT_TYPE"],"mappings":"AAAA,OAAO,MAAMA,oCAAoC,oCAAmC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function isUnion(type) {
|
|
2
|
+
return type.kind === 'Union';
|
|
3
|
+
}
|
|
4
|
+
export function isNonUnion(type) {
|
|
5
|
+
return !isUnion(type) && 'type' in type;
|
|
6
|
+
}
|
|
7
|
+
export function isDocumentType(type) {
|
|
8
|
+
return isNonUnion(type) && type.type === 'Object' && Array.isArray(type.interfaces) && type.interfaces.includes('Document');
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/graphql/helpers.ts"],"sourcesContent":["import {\n type ConvertedDocumentType,\n type ConvertedInterface,\n type ConvertedType,\n type ConvertedUnion,\n} from './types.js'\n\nexport function isUnion(\n type: ConvertedInterface | ConvertedType | ConvertedUnion,\n): type is ConvertedUnion {\n return type.kind === 'Union'\n}\n\nexport function isNonUnion(\n type: ConvertedInterface | ConvertedType | ConvertedUnion,\n): type is ConvertedType {\n return !isUnion(type) && 'type' in type\n}\n\nexport function isDocumentType(\n type: ConvertedInterface | ConvertedType | ConvertedUnion,\n): type is ConvertedDocumentType {\n return (\n isNonUnion(type) &&\n type.type === 'Object' &&\n Array.isArray(type.interfaces) &&\n type.interfaces.includes('Document')\n )\n}\n"],"names":["isUnion","type","kind","isNonUnion","isDocumentType","Array","isArray","interfaces","includes"],"mappings":"AAOA,OAAO,SAASA,QACdC,IAAyD;IAEzD,OAAOA,KAAKC,IAAI,KAAK;AACvB;AAEA,OAAO,SAASC,WACdF,IAAyD;IAEzD,OAAO,CAACD,QAAQC,SAAS,UAAUA;AACrC;AAEA,OAAO,SAASG,eACdH,IAAyD;IAEzD,OACEE,WAAWF,SACXA,KAAKA,IAAI,KAAK,YACdI,MAAMC,OAAO,CAACL,KAAKM,UAAU,KAC7BN,KAAKM,UAAU,CAACC,QAAQ,CAAC;AAE7B"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { CLIError } from '@oclif/core/errors';
|
|
2
|
+
import { isInteractive } from '@sanity/cli-core';
|
|
3
|
+
import { confirm } from '@sanity/cli-core/ux';
|
|
4
|
+
import { oneline } from 'oneline';
|
|
5
|
+
import { graphqlDebug } from './graphqlDebug.js';
|
|
6
|
+
const LATEST_GENERATION = 'gen3';
|
|
7
|
+
export async function resolveApiGeneration({ currentGeneration, force, index, output, specifiedGeneration }) {
|
|
8
|
+
// a) If no API is currently deployed:
|
|
9
|
+
// use the specificed one from config, or use whichever generation is the latest
|
|
10
|
+
// b) If an API generation is specified explicitly:
|
|
11
|
+
// use the given one, but _prompt_ if it differs from the current one
|
|
12
|
+
// c) If no API generation is specified explicitly:
|
|
13
|
+
// use whichever is already deployed, but warn if differs from latest
|
|
14
|
+
if (!currentGeneration) {
|
|
15
|
+
const generation = specifiedGeneration || LATEST_GENERATION;
|
|
16
|
+
graphqlDebug('There is no current generation deployed, using %s (%s)', generation, specifiedGeneration ? 'specified' : 'default');
|
|
17
|
+
return generation;
|
|
18
|
+
}
|
|
19
|
+
if (specifiedGeneration && specifiedGeneration !== currentGeneration) {
|
|
20
|
+
if (!force && !isInteractive()) {
|
|
21
|
+
throw new CLIError(oneline`
|
|
22
|
+
Specified generation (${specifiedGeneration}) for API at index ${index} differs from the one currently deployed (${currentGeneration}).
|
|
23
|
+
Re-run the command with \`--force\` to force deployment.
|
|
24
|
+
`, {
|
|
25
|
+
exit: 1
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
output.warn(`Specified generation (${specifiedGeneration}) for API at index ${index} differs from the one currently deployed (${currentGeneration}).`);
|
|
29
|
+
const confirmDeploy = force || await confirm({
|
|
30
|
+
default: false,
|
|
31
|
+
message: 'Are you sure you want to deploy?'
|
|
32
|
+
});
|
|
33
|
+
return confirmDeploy ? specifiedGeneration : undefined;
|
|
34
|
+
}
|
|
35
|
+
if (specifiedGeneration) {
|
|
36
|
+
graphqlDebug('Using specified (%s) generation', specifiedGeneration);
|
|
37
|
+
return specifiedGeneration;
|
|
38
|
+
}
|
|
39
|
+
graphqlDebug('Using the currently deployed version (%s)', currentGeneration);
|
|
40
|
+
return currentGeneration;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=resolveApiGeneration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/graphql/resolveApiGeneration.ts"],"sourcesContent":["import {CLIError} from '@oclif/core/errors'\nimport {isInteractive, type Output} from '@sanity/cli-core'\nimport {confirm} from '@sanity/cli-core/ux'\nimport {oneline} from 'oneline'\n\nimport {graphqlDebug} from './graphqlDebug.js'\n\nconst LATEST_GENERATION = 'gen3'\n\nexport async function resolveApiGeneration({\n currentGeneration,\n force,\n index,\n output,\n specifiedGeneration,\n}: {\n currentGeneration?: string\n force?: boolean\n index: number\n output: Output\n specifiedGeneration?: string\n}): Promise<string | undefined> {\n // a) If no API is currently deployed:\n // use the specificed one from config, or use whichever generation is the latest\n // b) If an API generation is specified explicitly:\n // use the given one, but _prompt_ if it differs from the current one\n // c) If no API generation is specified explicitly:\n // use whichever is already deployed, but warn if differs from latest\n if (!currentGeneration) {\n const generation = specifiedGeneration || LATEST_GENERATION\n graphqlDebug(\n 'There is no current generation deployed, using %s (%s)',\n generation,\n specifiedGeneration ? 'specified' : 'default',\n )\n return generation\n }\n\n if (specifiedGeneration && specifiedGeneration !== currentGeneration) {\n if (!force && !isInteractive()) {\n throw new CLIError(\n oneline`\n Specified generation (${specifiedGeneration}) for API at index ${index} differs from the one currently deployed (${currentGeneration}).\n Re-run the command with \\`--force\\` to force deployment.\n `,\n {exit: 1},\n )\n }\n\n output.warn(\n `Specified generation (${specifiedGeneration}) for API at index ${index} differs from the one currently deployed (${currentGeneration}).`,\n )\n\n const confirmDeploy =\n force ||\n (await confirm({\n default: false,\n message: 'Are you sure you want to deploy?',\n }))\n\n return confirmDeploy ? specifiedGeneration : undefined\n }\n\n if (specifiedGeneration) {\n graphqlDebug('Using specified (%s) generation', specifiedGeneration)\n return specifiedGeneration\n }\n\n graphqlDebug('Using the currently deployed version (%s)', currentGeneration)\n return currentGeneration\n}\n"],"names":["CLIError","isInteractive","confirm","oneline","graphqlDebug","LATEST_GENERATION","resolveApiGeneration","currentGeneration","force","index","output","specifiedGeneration","generation","exit","warn","confirmDeploy","default","message","undefined"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,qBAAoB;AAC3C,SAAQC,aAAa,QAAoB,mBAAkB;AAC3D,SAAQC,OAAO,QAAO,sBAAqB;AAC3C,SAAQC,OAAO,QAAO,UAAS;AAE/B,SAAQC,YAAY,QAAO,oBAAmB;AAE9C,MAAMC,oBAAoB;AAE1B,OAAO,eAAeC,qBAAqB,EACzCC,iBAAiB,EACjBC,KAAK,EACLC,KAAK,EACLC,MAAM,EACNC,mBAAmB,EAOpB;IACC,sCAAsC;IACtC,mFAAmF;IACnF,mDAAmD;IACnD,wEAAwE;IACxE,mDAAmD;IACnD,wEAAwE;IACxE,IAAI,CAACJ,mBAAmB;QACtB,MAAMK,aAAaD,uBAAuBN;QAC1CD,aACE,0DACAQ,YACAD,sBAAsB,cAAc;QAEtC,OAAOC;IACT;IAEA,IAAID,uBAAuBA,wBAAwBJ,mBAAmB;QACpE,IAAI,CAACC,SAAS,CAACP,iBAAiB;YAC9B,MAAM,IAAID,SACRG,OAAO,CAAC;8BACc,EAAEQ,oBAAoB,mBAAmB,EAAEF,MAAM,0CAA0C,EAAEF,kBAAkB;;MAEvI,CAAC,EACC;gBAACM,MAAM;YAAC;QAEZ;QAEAH,OAAOI,IAAI,CACT,CAAC,sBAAsB,EAAEH,oBAAoB,mBAAmB,EAAEF,MAAM,0CAA0C,EAAEF,kBAAkB,EAAE,CAAC;QAG3I,MAAMQ,gBACJP,SACC,MAAMN,QAAQ;YACbc,SAAS;YACTC,SAAS;QACX;QAEF,OAAOF,gBAAgBJ,sBAAsBO;IAC/C;IAEA,IAAIP,qBAAqB;QACvBP,aAAa,mCAAmCO;QAChD,OAAOA;IACT;IAEAP,aAAa,6CAA6CG;IAC1D,OAAOA;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/actions/graphql/types.ts"],"sourcesContent":["import {type Schema} from '@sanity/types'\n\nexport interface GraphQLAPIConfig {\n /**\n * Dataset name for this API\n */\n dataset?: string\n\n /**\n * Generation of API to deploy\n *\n * Optional, defaults to `gen3` (which is the only option, currently)\n */\n generation?: 'gen1' | 'gen2' | 'gen3'\n\n /**\n * ID of GraphQL API. Only (currently) required when using the `--api` flag\n * for `sanity graphql deploy`, in order to only deploy a specific API.\n */\n id?: string\n\n /**\n * Whether or not to enable the GraphQL v2021-10-21 query semantics\n */\n nonNullDocumentFields?: boolean\n\n /**\n * Whether or not to enable the GraphQL Playground for this API\n *\n * Optional, defaults to `true` in development mode, `false` otherwise\n */\n playground?: boolean\n\n /**\n * Project ID for this API\n */\n projectId?: string\n\n /**\n * Name of source containing the schema to deploy, within the configured workspace\n *\n * Optional, defaults to `default` (eg the one used if no `name` is defined)\n */\n source?: string\n\n /**\n * API tag for this API - allows deploying multiple different APIs to a single dataset\n *\n * Optional, defaults to `default`\n */\n tag?: string\n\n /**\n * Name of workspace containing the schema to deploy\n *\n * Optional, defaults to `default` (eg the one used if no `name` is defined)\n */\n workspace?: string\n}\nexport interface SchemaDefinitionish {\n name: string\n type: string\n\n fields?: SchemaDefinitionish[]\n}\n\ninterface ResolvedSerializableProperties {\n dataset: string\n projectId: string\n schemaTypes: SchemaDefinitionish[]\n}\n\nexport interface ResolvedSourceProperties {\n dataset: string\n projectId: string\n schema: Schema\n}\n\nexport type TypeResolvedGraphQLAPI = Omit<GraphQLAPIConfig, 'source' | 'workspace'> &\n ResolvedSerializableProperties\n\nexport type ResolvedGraphQLAPI = Omit<GraphQLAPIConfig, 'source' | 'workspace'> &\n ResolvedSourceProperties\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/graphql/types.ts"],"sourcesContent":["import {type Schema} from '@sanity/types'\n\nexport const internal = Symbol('internal')\n\nexport interface Deprecation {\n deprecationReason: string\n}\n\nexport interface ApiSpecification {\n interfaces: ConvertedInterface[]\n types: (ConvertedType | ConvertedUnion)[]\n}\n\nexport interface GraphQLAPIConfig {\n /**\n * Dataset name for this API\n */\n dataset?: string\n\n /**\n * Suffix to use for generated filter types.\n *\n * Optional, Defaults to `Filter`.\n *\n */\n filterSuffix?: string\n\n /**\n * Generation of API to deploy\n *\n * Optional, defaults to `gen3` (which is the only option, currently)\n */\n generation?: 'gen1' | 'gen2' | 'gen3'\n\n /**\n * ID of GraphQL API. Only (currently) required when using the `--api` flag\n * for `sanity graphql deploy`, in order to only deploy a specific API.\n */\n id?: string\n\n /**\n * Whether or not to enable the GraphQL v2021-10-21 query semantics\n */\n nonNullDocumentFields?: boolean\n\n /**\n * Whether or not to enable the GraphQL Playground for this API\n *\n * Optional, defaults to `true` in development mode, `false` otherwise\n */\n playground?: boolean\n\n /**\n * Project ID for this API\n */\n projectId?: string\n\n /**\n * Name of source containing the schema to deploy, within the configured workspace\n *\n * Optional, defaults to `default` (eg the one used if no `name` is defined)\n */\n source?: string\n\n /**\n * API tag for this API - allows deploying multiple different APIs to a single dataset\n *\n * Optional, defaults to `default`\n */\n tag?: string\n\n /**\n * Name of workspace containing the schema to deploy\n *\n * Optional, defaults to `default` (eg the one used if no `name` is defined)\n */\n workspace?: string\n}\n\nexport interface DeployResponse {\n location: string\n}\n\ninterface ApiChange {\n description: string\n type: string\n}\n\nexport interface ValidationResponse {\n breakingChanges: ApiChange[]\n dangerousChanges: ApiChange[]\n validationError: string\n}\n\nexport interface SchemaDefinitionish {\n name: string\n type: string\n\n fields?: SchemaDefinitionish[]\n}\n\ninterface ResolvedSerializableProperties {\n dataset: string\n projectId: string\n schemaTypes: SchemaDefinitionish[]\n}\n\nexport interface ResolvedSourceProperties {\n dataset: string\n projectId: string\n schema: Schema\n}\n\nexport type TypeResolvedGraphQLAPI = Omit<GraphQLAPIConfig, 'source' | 'workspace'> &\n ResolvedSerializableProperties\n\nexport type ResolvedGraphQLAPI = Omit<GraphQLAPIConfig, 'source' | 'workspace'> &\n ResolvedSourceProperties\n\ninterface ConvertedNode {\n description: string\n fields: ConvertedFieldDefinition[]\n kind: 'Interface' | 'List' | 'Type' | 'Union'\n name: string\n type: string\n}\n\ntype FieldArg =\n | {isFieldFilter?: boolean; name: string; type: string}\n | {name: string; type: ConvertedNode}\n\nexport interface ConvertedField extends Partial<Deprecation> {\n fieldName: string\n type: string\n\n args?: FieldArg[]\n description?: string\n filter?: string\n isNullable?: boolean\n isRawAlias?: boolean\n isReference?: boolean\n kind?: 'List'\n originalName?: string\n}\n\ninterface ConvertedListField extends ConvertedField {\n children: {\n inlineObjects?: string[]\n type: string\n }\n kind: 'List'\n}\n\nexport interface ApiCustomizationOptions {\n filterSuffix?: string\n}\n\nexport type InputFilterField =\n | ListDefinition\n | {\n constraint: {\n comparator: string\n field?: string\n }\n description?: string\n fieldName: string\n type: string\n }\n\nexport type ConvertedFieldDefinition = ConvertedField | ConvertedListField\n\ninterface ListDefinition {\n children: {isNullable?: boolean; type: string}\n kind: 'List'\n\n isNullable?: boolean\n}\n\nexport interface ConvertedEnum {\n kind: 'Enum'\n name: string\n values: {\n description?: string\n name: string\n value: unknown\n }[]\n}\n\nexport interface ConvertedInterface {\n fields: ConvertedFieldDefinition[]\n kind: 'Interface'\n name: string\n\n description?: string\n}\n\nexport interface ConvertedUnion {\n kind: 'Union'\n name: string\n types: string[]\n\n interfaces?: string[]\n}\n\nexport interface ConvertedDocumentType extends ConvertedType {\n interfaces: ['Document', ...string[]]\n}\n\nexport interface ConvertedType extends Partial<Deprecation> {\n fields: ConvertedFieldDefinition[]\n kind: 'Interface' | 'Type'\n name: string\n type: string\n\n crossDatasetReferenceMetadata?: {\n dataset: string\n typeNames: string[]\n }\n description?: string\n interfaces?: string[]\n [internal]?: Partial<Deprecation>\n isReference?: boolean\n originalName?: string\n}\n\nexport interface InputObjectType {\n fields: unknown[] // @todo\n kind: 'InputObject'\n name: string\n\n isConstraintFilter?: boolean\n}\n\nexport interface QueryDefinition extends Partial<Deprecation> {\n args: {\n description?: string\n isFieldFilter?: boolean\n isNullable?: boolean\n name: string\n type: ListDefinition | string\n }[]\n fieldName: string\n\n type: ListDefinition | string\n\n constraints?: {\n comparator: string\n field?: string\n value?: {argName: string; kind: 'argumentValue'}\n }[]\n\n filter?: string\n}\n\nexport interface GeneratedApiSpecification {\n generation: string\n interfaces: ConvertedInterface[]\n queries: QueryDefinition[]\n types: (ConvertedEnum | ConvertedType | ConvertedUnion | InputObjectType)[]\n}\n"],"names":["internal","Symbol"],"mappings":"AAEA,OAAO,MAAMA,WAAWC,OAAO,YAAW"}
|