@sanity/cli 5.9.0-next.8 → 6.0.0-alpha.11
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/LICENSE +1 -1
- package/README.md +3212 -2
- package/bin/run.cmd +3 -0
- package/bin/run.js +33 -0
- package/codemods/deskRename.js +115 -96
- package/codemods/partsTypeDirective.js +7 -7
- package/codemods/reactIconsV3.js +78 -51
- package/dist/SanityHelp.js +43 -0
- package/dist/SanityHelp.js.map +1 -0
- package/dist/actions/auth/authServer.js +153 -0
- package/dist/actions/auth/authServer.js.map +1 -0
- package/dist/actions/auth/getProviderName.js +15 -0
- package/dist/actions/auth/getProviderName.js.map +1 -0
- package/dist/actions/auth/login/getProvider.js +54 -0
- package/dist/actions/auth/login/getProvider.js.map +1 -0
- package/dist/actions/auth/login/getSSOProvider.js +30 -0
- package/dist/actions/auth/login/getSSOProvider.js.map +1 -0
- package/dist/actions/auth/login/login.js +101 -0
- package/dist/actions/auth/login/login.js.map +1 -0
- package/dist/actions/auth/login/promptProviders.js +23 -0
- package/dist/actions/auth/login/promptProviders.js.map +1 -0
- package/dist/actions/auth/login/samlProviderToLoginProvider.js +15 -0
- package/dist/actions/auth/login/samlProviderToLoginProvider.js.map +1 -0
- package/dist/actions/auth/types.js +7 -0
- package/dist/actions/auth/types.js.map +1 -0
- package/dist/actions/backup/archiveDir.js +43 -0
- package/dist/actions/backup/archiveDir.js.map +1 -0
- package/dist/actions/backup/assertDatasetExist.js +16 -0
- package/dist/actions/backup/assertDatasetExist.js.map +1 -0
- package/dist/actions/backup/backupDownloadDebug.js +4 -0
- package/dist/actions/backup/backupDownloadDebug.js.map +1 -0
- package/dist/actions/backup/cleanupTmpDir.js +19 -0
- package/dist/actions/backup/cleanupTmpDir.js.map +1 -0
- package/dist/actions/backup/constants.js +3 -0
- package/dist/actions/backup/constants.js.map +1 -0
- package/dist/actions/backup/downloadAsset.js +54 -0
- package/dist/actions/backup/downloadAsset.js.map +1 -0
- package/dist/actions/backup/downloadDocument.js +32 -0
- package/dist/actions/backup/downloadDocument.js.map +1 -0
- package/dist/actions/backup/fetchNextBackupPage.js +48 -0
- package/dist/actions/backup/fetchNextBackupPage.js.map +1 -0
- package/dist/actions/backup/progressSpinner.js +40 -0
- package/dist/actions/backup/progressSpinner.js.map +1 -0
- package/dist/actions/build/buildApp.js +159 -0
- package/dist/actions/build/buildApp.js.map +1 -0
- package/dist/actions/build/buildDebug.js +4 -0
- package/dist/actions/build/buildDebug.js.map +1 -0
- package/dist/actions/build/buildStaticFiles.js +82 -0
- package/dist/actions/build/buildStaticFiles.js.map +1 -0
- package/dist/actions/build/buildStudio.js +202 -0
- package/dist/actions/build/buildStudio.js.map +1 -0
- package/dist/actions/build/buildVendorDependencies.js +179 -0
- package/dist/actions/build/buildVendorDependencies.js.map +1 -0
- package/dist/actions/build/checkRequiredDependencies.js +122 -0
- package/dist/actions/build/checkRequiredDependencies.js.map +1 -0
- package/dist/actions/build/checkStudioDependencyVersions.js +154 -0
- package/dist/actions/build/checkStudioDependencyVersions.js.map +1 -0
- package/dist/actions/build/createExternalFromImportMap.js +11 -0
- package/dist/actions/build/createExternalFromImportMap.js.map +1 -0
- package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.js +13 -0
- package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.js.map +1 -0
- package/dist/actions/build/decorateIndexWithBridgeScript.js +17 -0
- package/dist/actions/build/decorateIndexWithBridgeScript.js.map +1 -0
- package/dist/actions/build/determineBasePath.js +20 -0
- package/dist/actions/build/determineBasePath.js.map +1 -0
- package/dist/actions/build/generateWebManifest.js +27 -0
- package/dist/actions/build/generateWebManifest.js.map +1 -0
- package/dist/actions/build/getAppEnvVars.js +9 -0
- package/dist/actions/build/getAppEnvVars.js.map +1 -0
- package/dist/actions/build/getAutoUpdatesImportMap.js +57 -0
- package/dist/actions/build/getAutoUpdatesImportMap.js.map +1 -0
- package/dist/actions/build/getEntryModule.js +46 -0
- package/dist/actions/build/getEntryModule.js.map +1 -0
- package/dist/actions/build/getPossibleDocumentComponentLocations.js +11 -0
- package/dist/actions/build/getPossibleDocumentComponentLocations.js.map +1 -0
- package/dist/actions/build/getStudioEnvVars.js +9 -0
- package/dist/actions/build/getStudioEnvVars.js.map +1 -0
- package/dist/actions/build/getStudioEnvironmentVariables.js +58 -0
- package/dist/actions/build/getStudioEnvironmentVariables.js.map +1 -0
- package/dist/actions/build/getViteConfig.js +180 -0
- package/dist/actions/build/getViteConfig.js.map +1 -0
- package/dist/actions/build/normalizeBasePath.js +9 -0
- package/dist/actions/build/normalizeBasePath.js.map +1 -0
- package/dist/actions/build/renderDocument.js +54 -0
- package/dist/actions/build/renderDocument.js.map +1 -0
- package/dist/actions/build/renderDocument.worker.js +9 -0
- package/dist/actions/build/renderDocument.worker.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/addTimestampImportMapScriptToHtml.js +59 -0
- package/dist/actions/build/renderDocumentWorker/addTimestampImportMapScriptToHtml.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js +61 -0
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js +165 -0
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/components/Favicons.js +28 -0
- package/dist/actions/build/renderDocumentWorker/components/Favicons.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js +177 -0
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/components/NoJavascript.js +51 -0
- package/dist/actions/build/renderDocumentWorker/components/NoJavascript.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js +41 -0
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/getDocumentHtml.js +55 -0
- package/dist/actions/build/renderDocumentWorker/getDocumentHtml.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js +31 -0
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.js +30 -0
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/types.js +5 -0
- package/dist/actions/build/renderDocumentWorker/types.js.map +1 -0
- package/dist/actions/build/shouldAutoUpdate.js +35 -0
- package/dist/actions/build/shouldAutoUpdate.js.map +1 -0
- package/dist/actions/build/types.js +3 -0
- package/dist/actions/build/types.js.map +1 -0
- package/dist/actions/build/writeFavicons.js +26 -0
- package/dist/actions/build/writeFavicons.js.map +1 -0
- package/dist/actions/build/writeSanityRuntime.js +61 -0
- package/dist/actions/build/writeSanityRuntime.js.map +1 -0
- package/dist/actions/build/writeWebManifest.js +12 -0
- package/dist/actions/build/writeWebManifest.js.map +1 -0
- package/dist/actions/codemods/deskRename.js +18 -0
- package/dist/actions/codemods/deskRename.js.map +1 -0
- package/dist/actions/codemods/index.js +10 -0
- package/dist/actions/codemods/index.js.map +1 -0
- package/dist/actions/codemods/partsTypeDirective.js +27 -0
- package/dist/actions/codemods/partsTypeDirective.js.map +1 -0
- package/dist/actions/codemods/reactIconsV3.js +30 -0
- package/dist/actions/codemods/reactIconsV3.js.map +1 -0
- package/dist/actions/codemods/types.js +3 -0
- package/dist/actions/codemods/types.js.map +1 -0
- package/dist/actions/cors/filterAndValidateOrigin.js +38 -0
- package/dist/actions/cors/filterAndValidateOrigin.js.map +1 -0
- package/dist/actions/dataset/create.js +46 -0
- package/dist/actions/dataset/create.js.map +1 -0
- package/dist/actions/dataset/determineDatasetAclMode.js +36 -0
- package/dist/actions/dataset/determineDatasetAclMode.js.map +1 -0
- package/dist/actions/dataset/processAliasName.js +20 -0
- package/dist/actions/dataset/processAliasName.js.map +1 -0
- package/dist/actions/dataset/validateDatasetAliasName.js +28 -0
- package/dist/actions/dataset/validateDatasetAliasName.js.map +1 -0
- package/dist/actions/dataset/validateDatasetName.js +39 -0
- package/dist/actions/dataset/validateDatasetName.js.map +1 -0
- package/dist/actions/debug/gatherDebugInfo.js +104 -0
- package/dist/actions/debug/gatherDebugInfo.js.map +1 -0
- package/dist/actions/debug/getGlobalConfigLocation.js +7 -0
- package/dist/actions/debug/getGlobalConfigLocation.js.map +1 -0
- package/dist/actions/debug/types.js +3 -0
- package/dist/actions/debug/types.js.map +1 -0
- package/dist/actions/deploy/checkDir.js +31 -0
- package/dist/actions/deploy/checkDir.js.map +1 -0
- package/dist/actions/deploy/createStudioUserApplication.js +59 -0
- package/dist/actions/deploy/createStudioUserApplication.js.map +1 -0
- package/dist/actions/deploy/createUserApplicationForApp.js +56 -0
- package/dist/actions/deploy/createUserApplicationForApp.js.map +1 -0
- package/dist/actions/deploy/deployApp.js +162 -0
- package/dist/actions/deploy/deployApp.js.map +1 -0
- package/dist/actions/deploy/deployDebug.js +4 -0
- package/dist/actions/deploy/deployDebug.js.map +1 -0
- package/dist/actions/deploy/deployStudio.js +134 -0
- package/dist/actions/deploy/deployStudio.js.map +1 -0
- package/dist/actions/deploy/findUserApplicationForApp.js +110 -0
- package/dist/actions/deploy/findUserApplicationForApp.js.map +1 -0
- package/dist/actions/deploy/findUserApplicationForStudio.js +143 -0
- package/dist/actions/deploy/findUserApplicationForStudio.js.map +1 -0
- package/dist/actions/deploy/types.js +3 -0
- package/dist/actions/deploy/types.js.map +1 -0
- package/dist/actions/dev/devAction.js +7 -0
- package/dist/actions/dev/devAction.js.map +1 -0
- package/dist/actions/dev/devDebug.js +4 -0
- package/dist/actions/dev/devDebug.js.map +1 -0
- package/dist/actions/dev/getCoreAppUrl.js +10 -0
- package/dist/actions/dev/getCoreAppUrl.js.map +1 -0
- package/dist/actions/dev/getDevServerConfig.js +28 -0
- package/dist/actions/dev/getDevServerConfig.js.map +1 -0
- package/dist/actions/dev/startAppDevServer.js +57 -0
- package/dist/actions/dev/startAppDevServer.js.map +1 -0
- package/dist/actions/dev/startStudioDevServer.js +154 -0
- package/dist/actions/dev/startStudioDevServer.js.map +1 -0
- package/dist/actions/dev/types.js +3 -0
- package/dist/actions/dev/types.js.map +1 -0
- package/dist/actions/docs/normalizeDocsPath.js +15 -0
- package/dist/actions/docs/normalizeDocsPath.js.map +1 -0
- package/dist/actions/documents/constants.js +3 -0
- package/dist/actions/documents/constants.js.map +1 -0
- package/dist/actions/documents/editor.js +26 -0
- package/dist/actions/documents/editor.js.map +1 -0
- package/dist/actions/documents/types.js +3 -0
- package/dist/actions/documents/types.js.map +1 -0
- package/dist/actions/documents/validate.js +60 -0
- package/dist/actions/documents/validate.js.map +1 -0
- package/dist/actions/documents/validateDocuments.worker.js +251 -0
- package/dist/actions/documents/validateDocuments.worker.js.map +1 -0
- package/dist/actions/documents/validation/reporters/index.js +10 -0
- package/dist/actions/documents/validation/reporters/index.js.map +1 -0
- package/dist/actions/documents/validation/reporters/jsonReporter.js +25 -0
- package/dist/actions/documents/validation/reporters/jsonReporter.js.map +1 -0
- package/dist/actions/documents/validation/reporters/ndjsonReporter.js +18 -0
- package/dist/actions/documents/validation/reporters/ndjsonReporter.js.map +1 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js +62 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js.map +1 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/index.js +3 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/index.js.map +1 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.js +92 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.js.map +1 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/util.js +45 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/util.js.map +1 -0
- package/dist/actions/exec/configClient.worker.js +9 -0
- package/dist/actions/exec/configClient.worker.js.map +1 -0
- package/dist/actions/exec/execScript.js +77 -0
- package/dist/actions/exec/execScript.js.map +1 -0
- package/dist/actions/exec/registerBrowserEnv.worker.js +17 -0
- 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.js +65 -0
- package/dist/actions/graphql/getGraphQLAPIs.js.map +1 -0
- package/dist/actions/graphql/getGraphQLAPIs.worker.js +126 -0
- package/dist/actions/graphql/getGraphQLAPIs.worker.js.map +1 -0
- 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 +3 -0
- package/dist/actions/graphql/types.js.map +1 -0
- package/dist/actions/hook/constants.js +3 -0
- package/dist/actions/hook/constants.js.map +1 -0
- package/dist/actions/hook/formatFailure.js +29 -0
- package/dist/actions/hook/formatFailure.js.map +1 -0
- package/dist/actions/hook/types.js +3 -0
- package/dist/actions/hook/types.js.map +1 -0
- 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/constants.js +3 -0
- package/dist/actions/init/constants.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/determineAppTemplate.js +16 -0
- package/dist/actions/init/determineAppTemplate.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 +211 -0
- package/dist/actions/init/remoteTemplate.js.map +1 -0
- 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 +3 -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/manifest/SchemaIcon.js +21 -0
- package/dist/actions/manifest/SchemaIcon.js.map +1 -0
- package/dist/actions/manifest/extractAppManifest.js +51 -0
- package/dist/actions/manifest/extractAppManifest.js.map +1 -0
- package/dist/actions/manifest/extractManifest.js +93 -0
- package/dist/actions/manifest/extractManifest.js.map +1 -0
- package/dist/actions/manifest/extractWorkspaceManifest.js +406 -0
- package/dist/actions/manifest/extractWorkspaceManifest.js.map +1 -0
- package/dist/actions/manifest/purifyConfig.js +307 -0
- package/dist/actions/manifest/purifyConfig.js.map +1 -0
- package/dist/actions/manifest/schemaTypeHelpers.js +110 -0
- package/dist/actions/manifest/schemaTypeHelpers.js.map +1 -0
- package/dist/actions/manifest/types.js +5 -0
- package/dist/actions/manifest/types.js.map +1 -0
- package/dist/actions/mcp/detectAvailableEditors.js +75 -0
- package/dist/actions/mcp/detectAvailableEditors.js.map +1 -0
- 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 +41 -0
- package/dist/actions/mcp/writeMCPConfig.js.map +1 -0
- package/dist/actions/media/__tests__/createMockClient.js +32 -0
- package/dist/actions/media/__tests__/createMockClient.js.map +1 -0
- package/dist/actions/media/getMediaLibraryConfig.js +5 -0
- package/dist/actions/media/getMediaLibraryConfig.js.map +1 -0
- package/dist/actions/media/importAspects.js +112 -0
- package/dist/actions/media/importAspects.js.map +1 -0
- package/dist/actions/media/importMedia.js +213 -0
- package/dist/actions/media/importMedia.js.map +1 -0
- package/dist/actions/media/importMediaDebug.js +4 -0
- package/dist/actions/media/importMediaDebug.js.map +1 -0
- package/dist/actions/organizations/getOrganization.js +67 -0
- package/dist/actions/organizations/getOrganization.js.map +1 -0
- package/dist/actions/organizations/getOrganizationChoices.js +23 -0
- package/dist/actions/organizations/getOrganizationChoices.js.map +1 -0
- package/dist/actions/organizations/getOrganizationsWithAttachGrantInfo.js +9 -0
- package/dist/actions/organizations/getOrganizationsWithAttachGrantInfo.js.map +1 -0
- package/dist/actions/organizations/hasProjectAttachGrant.js +24 -0
- package/dist/actions/organizations/hasProjectAttachGrant.js.map +1 -0
- package/dist/actions/organizations/validateOrganizationName.js +10 -0
- package/dist/actions/organizations/validateOrganizationName.js.map +1 -0
- package/dist/actions/preview/getPreviewServerConfig.js +16 -0
- package/dist/actions/preview/getPreviewServerConfig.js.map +1 -0
- package/dist/actions/preview/previewAction.js +20 -0
- package/dist/actions/preview/previewAction.js.map +1 -0
- package/dist/actions/preview/types.js +3 -0
- package/dist/actions/preview/types.js.map +1 -0
- 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 +101 -0
- package/dist/actions/schema/deleteSchemaAction.js.map +1 -0
- package/dist/actions/schema/deploySchemas.js +98 -0
- package/dist/actions/schema/deploySchemas.js.map +1 -0
- 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 +74 -0
- package/dist/actions/schema/formatSchemaValidation.js.map +1 -0
- package/dist/actions/schema/listSchemas.js +119 -0
- package/dist/actions/schema/listSchemas.js.map +1 -0
- package/dist/actions/schema/metafile.js +51 -0
- package/dist/actions/schema/metafile.js.map +1 -0
- package/dist/actions/schema/schemaStoreTypes.js +19 -0
- package/dist/actions/schema/schemaStoreTypes.js.map +1 -0
- package/dist/actions/schema/types.js +9 -0
- package/dist/actions/schema/types.js.map +1 -0
- package/dist/actions/schema/utils/debug.js +6 -0
- package/dist/actions/schema/utils/debug.js.map +1 -0
- 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 +33 -0
- package/dist/actions/schema/utils/manifestExtractor.js.map +1 -0
- package/dist/actions/schema/utils/manifestReader.js +71 -0
- package/dist/actions/schema/utils/manifestReader.js.map +1 -0
- package/dist/actions/schema/utils/schemaStoreOutStrings.js +11 -0
- package/dist/actions/schema/utils/schemaStoreOutStrings.js.map +1 -0
- package/dist/actions/schema/utils/schemaStoreValidation.js +108 -0
- package/dist/actions/schema/utils/schemaStoreValidation.js.map +1 -0
- package/dist/actions/schema/utils/uniqByProjectIdDataset.js +9 -0
- package/dist/actions/schema/utils/uniqByProjectIdDataset.js.map +1 -0
- package/dist/actions/schema/utils/workspaceSchemaId.js +23 -0
- package/dist/actions/schema/utils/workspaceSchemaId.js.map +1 -0
- package/dist/actions/schema/validateAction.js +71 -0
- package/dist/actions/schema/validateAction.js.map +1 -0
- package/dist/actions/schema/validateSchema.worker.js +124 -0
- package/dist/actions/schema/validateSchema.worker.js.map +1 -0
- package/dist/actions/telemetry/getLearnMoreMessage.js +15 -0
- package/dist/actions/telemetry/getLearnMoreMessage.js.map +1 -0
- package/dist/actions/telemetry/getStatusDisplay.js +26 -0
- package/dist/actions/telemetry/getStatusDisplay.js.map +1 -0
- package/dist/actions/telemetry/getStatusMessage.js +36 -0
- package/dist/actions/telemetry/getStatusMessage.js.map +1 -0
- package/dist/actions/telemetry/resolveConsent.js +48 -0
- package/dist/actions/telemetry/resolveConsent.js.map +1 -0
- package/dist/actions/telemetry/setConsent.js +83 -0
- package/dist/actions/telemetry/setConsent.js.map +1 -0
- package/dist/actions/telemetry/telemetryDebug.js +4 -0
- package/dist/actions/telemetry/telemetryDebug.js.map +1 -0
- package/dist/actions/telemetry/telemetryDisclosure.js +33 -0
- package/dist/actions/telemetry/telemetryDisclosure.js.map +1 -0
- package/dist/actions/telemetry/telemetryLearnMoreMessage.js +15 -0
- package/dist/actions/telemetry/telemetryLearnMoreMessage.js.map +1 -0
- package/dist/actions/tokens/constants.js +5 -0
- package/dist/actions/tokens/constants.js.map +1 -0
- package/dist/actions/tokens/types.js +3 -0
- package/dist/actions/tokens/types.js.map +1 -0
- package/dist/actions/tokens/validateRole.js +23 -0
- package/dist/actions/tokens/validateRole.js.map +1 -0
- package/dist/actions/undeploy/getStudioOrAppUserApplication.js +36 -0
- package/dist/actions/undeploy/getStudioOrAppUserApplication.js.map +1 -0
- package/dist/actions/users/getMembersForProject.js +47 -0
- package/dist/actions/users/getMembersForProject.js.map +1 -0
- package/dist/actions/users/getPendingInvitations.js +15 -0
- package/dist/actions/users/getPendingInvitations.js.map +1 -0
- package/dist/actions/users/types.js +3 -0
- package/dist/actions/users/types.js.map +1 -0
- package/dist/actions/users/usersDebug.js +4 -0
- package/dist/actions/users/usersDebug.js.map +1 -0
- package/dist/actions/users/validateEmail.js +14 -0
- package/dist/actions/users/validateEmail.js.map +1 -0
- package/dist/actions/versions/buildPackageArray.js +44 -0
- package/dist/actions/versions/buildPackageArray.js.map +1 -0
- package/dist/actions/versions/filterSanityModules.js +20 -0
- package/dist/actions/versions/filterSanityModules.js.map +1 -0
- package/dist/actions/versions/findSanityModulesVersions.js +47 -0
- package/dist/actions/versions/findSanityModulesVersions.js.map +1 -0
- package/dist/actions/versions/getFormatters.js +30 -0
- package/dist/actions/versions/getFormatters.js.map +1 -0
- package/dist/actions/versions/tryFindLatestVersion.js +21 -0
- package/dist/actions/versions/tryFindLatestVersion.js.map +1 -0
- package/dist/actions/versions/types.js +5 -0
- package/dist/actions/versions/types.js.map +1 -0
- package/dist/actions/versions/versionsDebug.js +4 -0
- package/dist/actions/versions/versionsDebug.js.map +1 -0
- package/dist/commands/backup/disable.js +94 -0
- package/dist/commands/backup/disable.js.map +1 -0
- package/dist/commands/backup/download.js +291 -0
- package/dist/commands/backup/download.js.map +1 -0
- package/dist/commands/backup/enable.js +99 -0
- package/dist/commands/backup/enable.js.map +1 -0
- package/dist/commands/backup/list.js +187 -0
- package/dist/commands/backup/list.js.map +1 -0
- package/dist/commands/build.js +82 -0
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/codemod.js +141 -0
- package/dist/commands/codemod.js.map +1 -0
- package/dist/commands/cors/add.js +154 -0
- package/dist/commands/cors/add.js.map +1 -0
- package/dist/commands/cors/delete.js +90 -0
- package/dist/commands/cors/delete.js.map +1 -0
- package/dist/commands/cors/list.js +40 -0
- package/dist/commands/cors/list.js.map +1 -0
- package/dist/commands/dataset/alias/create.js +118 -0
- package/dist/commands/dataset/alias/create.js.map +1 -0
- package/dist/commands/dataset/alias/delete.js +88 -0
- package/dist/commands/dataset/alias/delete.js.map +1 -0
- package/dist/commands/dataset/alias/link.js +137 -0
- package/dist/commands/dataset/alias/link.js.map +1 -0
- package/dist/commands/dataset/alias/unlink.js +98 -0
- package/dist/commands/dataset/alias/unlink.js.map +1 -0
- package/dist/commands/dataset/copy.js +369 -0
- package/dist/commands/dataset/copy.js.map +1 -0
- package/dist/commands/dataset/create.js +106 -0
- package/dist/commands/dataset/create.js.map +1 -0
- package/dist/commands/dataset/delete.js +104 -0
- package/dist/commands/dataset/delete.js.map +1 -0
- package/dist/commands/dataset/export.js +271 -0
- package/dist/commands/dataset/export.js.map +1 -0
- package/dist/commands/dataset/import.js +3 -0
- package/dist/commands/dataset/import.js.map +1 -0
- package/dist/commands/dataset/list.js +50 -0
- package/dist/commands/dataset/list.js.map +1 -0
- package/dist/commands/dataset/visibility/get.js +55 -0
- package/dist/commands/dataset/visibility/get.js.map +1 -0
- package/dist/commands/dataset/visibility/set.js +88 -0
- package/dist/commands/dataset/visibility/set.js.map +1 -0
- package/dist/commands/debug.js +93 -0
- package/dist/commands/debug.js.map +1 -0
- package/dist/commands/deploy.js +115 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/dev.js +65 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/docs/browse.js +15 -0
- package/dist/commands/docs/browse.js.map +1 -0
- package/dist/commands/docs/read.js +81 -0
- package/dist/commands/docs/read.js.map +1 -0
- package/dist/commands/docs/search.js +111 -0
- package/dist/commands/docs/search.js.map +1 -0
- package/dist/commands/documents/create.js +338 -0
- package/dist/commands/documents/create.js.map +1 -0
- package/dist/commands/documents/delete.js +104 -0
- package/dist/commands/documents/delete.js.map +1 -0
- package/dist/commands/documents/get.js +85 -0
- package/dist/commands/documents/get.js.map +1 -0
- package/dist/commands/documents/query.js +105 -0
- package/dist/commands/documents/query.js.map +1 -0
- package/dist/commands/documents/validate.js +142 -0
- package/dist/commands/documents/validate.js.map +1 -0
- package/dist/commands/exec.js +54 -0
- package/dist/commands/exec.js.map +1 -0
- package/dist/commands/graphql/deploy.js +429 -0
- package/dist/commands/graphql/deploy.js.map +1 -0
- package/dist/commands/graphql/list.js +53 -0
- package/dist/commands/graphql/list.js.map +1 -0
- package/dist/commands/graphql/undeploy.js +143 -0
- package/dist/commands/graphql/undeploy.js.map +1 -0
- package/dist/commands/hook/attempt.js +66 -0
- package/dist/commands/hook/attempt.js.map +1 -0
- package/dist/commands/hook/create.js +46 -0
- package/dist/commands/hook/create.js.map +1 -0
- package/dist/commands/hook/delete.js +86 -0
- package/dist/commands/hook/delete.js.map +1 -0
- package/dist/commands/hook/list.js +46 -0
- package/dist/commands/hook/list.js.map +1 -0
- package/dist/commands/hook/logs.js +184 -0
- package/dist/commands/hook/logs.js.map +1 -0
- package/dist/commands/init.js +1389 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/install.js +43 -0
- package/dist/commands/install.js.map +1 -0
- package/dist/commands/learn.js +15 -0
- package/dist/commands/learn.js.map +1 -0
- package/dist/commands/login.js +50 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/logout.js +37 -0
- package/dist/commands/logout.js.map +1 -0
- package/dist/commands/manage.js +29 -0
- package/dist/commands/manage.js.map +1 -0
- package/dist/commands/manifest/extract.js +43 -0
- package/dist/commands/manifest/extract.js.map +1 -0
- package/dist/commands/mcp/configure.js +28 -0
- package/dist/commands/mcp/configure.js.map +1 -0
- package/dist/commands/media/create-aspect.js +88 -0
- package/dist/commands/media/create-aspect.js.map +1 -0
- package/dist/commands/media/delete-aspect.js +85 -0
- package/dist/commands/media/delete-aspect.js.map +1 -0
- package/dist/commands/media/deploy-aspect.js +151 -0
- package/dist/commands/media/deploy-aspect.js.map +1 -0
- package/dist/commands/media/export.js +210 -0
- package/dist/commands/media/export.js.map +1 -0
- package/dist/commands/media/import.js +160 -0
- package/dist/commands/media/import.js.map +1 -0
- package/dist/commands/openapi/get.js +83 -0
- package/dist/commands/openapi/get.js.map +1 -0
- package/dist/commands/openapi/list.js +80 -0
- package/dist/commands/openapi/list.js.map +1 -0
- package/dist/commands/preview.js +60 -0
- package/dist/commands/preview.js.map +1 -0
- package/dist/commands/projects/create.js +181 -0
- package/dist/commands/projects/create.js.map +1 -0
- package/dist/commands/projects/list.js +76 -0
- package/dist/commands/projects/list.js.map +1 -0
- package/dist/commands/schema/delete.js +91 -0
- package/dist/commands/schema/delete.js.map +1 -0
- package/dist/commands/schema/deploy.js +98 -0
- package/dist/commands/schema/deploy.js.map +1 -0
- package/dist/commands/schema/extract.js +46 -0
- package/dist/commands/schema/extract.js.map +1 -0
- package/dist/commands/schema/list.js +104 -0
- package/dist/commands/schema/list.js.map +1 -0
- package/dist/commands/schema/validate.js +73 -0
- package/dist/commands/schema/validate.js.map +1 -0
- package/dist/commands/telemetry/disable.js +33 -0
- package/dist/commands/telemetry/disable.js.map +1 -0
- package/dist/commands/telemetry/enable.js +33 -0
- package/dist/commands/telemetry/enable.js.map +1 -0
- package/dist/commands/telemetry/status.js +25 -0
- package/dist/commands/telemetry/status.js.map +1 -0
- package/dist/commands/tokens/add.js +135 -0
- package/dist/commands/tokens/add.js.map +1 -0
- package/dist/commands/tokens/delete.js +107 -0
- package/dist/commands/tokens/delete.js.map +1 -0
- package/dist/commands/tokens/list.js +92 -0
- package/dist/commands/tokens/list.js.map +1 -0
- package/dist/commands/undeploy.js +93 -0
- package/dist/commands/undeploy.js.map +1 -0
- package/dist/commands/users/invite.js +100 -0
- package/dist/commands/users/invite.js.map +1 -0
- package/dist/commands/users/list.js +101 -0
- package/dist/commands/users/list.js.map +1 -0
- package/dist/commands/versions.js +27 -0
- package/dist/commands/versions.js.map +1 -0
- package/dist/config/createCliConfig.js +9 -0
- package/dist/config/createCliConfig.js.map +1 -0
- package/dist/config/defineCliConfig.js +5 -0
- package/dist/config/defineCliConfig.js.map +1 -0
- package/dist/hooks/prerun/flushTelemetry.worker.js +22 -0
- package/dist/hooks/prerun/flushTelemetry.worker.js.map +1 -0
- package/dist/hooks/prerun/injectEnvVariables.js +31 -0
- package/dist/hooks/prerun/injectEnvVariables.js.map +1 -0
- package/dist/hooks/prerun/setupTelemetry.js +72 -0
- package/dist/hooks/prerun/setupTelemetry.js.map +1 -0
- package/dist/hooks/prerun/warnings.js +6 -0
- package/dist/hooks/prerun/warnings.js.map +1 -0
- package/dist/index.d.ts +2326 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/init/nextjs.js +56 -0
- package/dist/prompts/init/nextjs.js.map +1 -0
- package/dist/prompts/init/promptForTypescript.js +9 -0
- package/dist/prompts/init/promptForTypescript.js.map +1 -0
- package/dist/prompts/promptForDataset.js +32 -0
- package/dist/prompts/promptForDataset.js.map +1 -0
- package/dist/prompts/promptForDatasetAclMode.js +27 -0
- package/dist/prompts/promptForDatasetAclMode.js.map +1 -0
- package/dist/prompts/promptForDatasetAliasName.js +17 -0
- package/dist/prompts/promptForDatasetAliasName.js.map +1 -0
- package/dist/prompts/promptForDatasetName.js +20 -0
- package/dist/prompts/promptForDatasetName.js.map +1 -0
- package/dist/prompts/promptForDefaultConfig.js +12 -0
- package/dist/prompts/promptForDefaultConfig.js.map +1 -0
- package/dist/prompts/promptForMediaLibrary.js +37 -0
- package/dist/prompts/promptForMediaLibrary.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/prompts/selectDataset.js +12 -0
- package/dist/prompts/selectDataset.js.map +1 -0
- package/dist/prompts/selectMediaLibrary.js +34 -0
- package/dist/prompts/selectMediaLibrary.js.map +1 -0
- package/dist/server/devServer.js +53 -0
- package/dist/server/devServer.js.map +1 -0
- package/dist/server/gracefulServerDeath.js +12 -0
- package/dist/server/gracefulServerDeath.js.map +1 -0
- package/dist/server/previewServer.js +93 -0
- package/dist/server/previewServer.js.map +1 -0
- package/dist/server/serverDebug.js +4 -0
- package/dist/server/serverDebug.js.map +1 -0
- package/dist/server/vite/plugin-sanity-basepath-redirect.js +25 -0
- package/dist/server/vite/plugin-sanity-basepath-redirect.js.map +1 -0
- package/dist/server/vite/plugin-sanity-build-entries.js +65 -0
- package/dist/server/vite/plugin-sanity-build-entries.js.map +1 -0
- package/dist/server/vite/plugin-sanity-favicons.js +72 -0
- package/dist/server/vite/plugin-sanity-favicons.js.map +1 -0
- package/dist/server/vite/plugin-sanity-runtime-rewrite.js +18 -0
- package/dist/server/vite/plugin-sanity-runtime-rewrite.js.map +1 -0
- package/dist/services/auth.js +13 -0
- package/dist/services/auth.js.map +1 -0
- package/dist/services/backup.js +51 -0
- package/dist/services/backup.js.map +1 -0
- package/dist/services/cors.js +38 -0
- package/dist/services/cors.js.map +1 -0
- package/dist/services/datasetAliases.js +64 -0
- package/dist/services/datasetAliases.js.map +1 -0
- package/dist/services/datasets.js +153 -0
- package/dist/services/datasets.js.map +1 -0
- package/dist/services/docs.js +46 -0
- package/dist/services/docs.js.map +1 -0
- package/dist/services/documents.js +56 -0
- package/dist/services/documents.js.map +1 -0
- package/dist/services/getProjectFeatures.js +16 -0
- package/dist/services/getProjectFeatures.js.map +1 -0
- package/dist/services/getUrlHeaders.js +36 -0
- package/dist/services/getUrlHeaders.js.map +1 -0
- package/dist/services/graphql.js +96 -0
- package/dist/services/graphql.js.map +1 -0
- package/dist/services/hooks.js +59 -0
- package/dist/services/hooks.js.map +1 -0
- package/dist/services/mcp.js +50 -0
- package/dist/services/mcp.js.map +1 -0
- package/dist/services/mediaLibraries.js +74 -0
- package/dist/services/mediaLibraries.js.map +1 -0
- package/dist/services/organizations.js +42 -0
- package/dist/services/organizations.js.map +1 -0
- package/dist/services/plans.js +37 -0
- package/dist/services/plans.js.map +1 -0
- package/dist/services/projects.js +119 -0
- package/dist/services/projects.js.map +1 -0
- package/dist/services/schemas.js +40 -0
- package/dist/services/schemas.js.map +1 -0
- package/dist/services/telemetry.js +80 -0
- package/dist/services/telemetry.js.map +1 -0
- package/dist/services/tokens.js +72 -0
- package/dist/services/tokens.js.map +1 -0
- package/dist/services/user.js +35 -0
- package/dist/services/user.js.map +1 -0
- package/dist/services/userApplications.js +164 -0
- package/dist/services/userApplications.js.map +1 -0
- 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/cli.telemetry.js +8 -0
- package/dist/telemetry/cli.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 +5 -0
- package/dist/types.js.map +1 -0
- package/dist/typings/deepSortObject.d.js +2 -0
- package/dist/typings/deepSortObject.d.js.map +1 -0
- package/dist/util/absolutify.js +26 -0
- package/dist/util/absolutify.js.map +1 -0
- package/dist/util/appId.js +58 -0
- package/dist/util/appId.js.map +1 -0
- package/dist/util/canLaunchBrowser.js +14 -0
- package/dist/util/canLaunchBrowser.js.map +1 -0
- package/dist/util/cliClient.js +41 -0
- package/dist/util/cliClient.js.map +1 -0
- package/dist/util/compareDependencyVersions.js +73 -0
- package/dist/util/compareDependencyVersions.js.map +1 -0
- package/dist/util/copy.js +37 -0
- package/dist/util/copy.js.map +1 -0
- package/dist/util/copyDir.js +63 -0
- package/dist/util/copyDir.js.map +1 -0
- package/dist/util/detectRuntime.js +20 -0
- package/dist/util/detectRuntime.js.map +1 -0
- package/dist/util/determineIsApp.js +9 -0
- package/dist/util/determineIsApp.js.map +1 -0
- package/dist/util/dirIsEmptyOrNonExistent.js +18 -0
- package/dist/util/dirIsEmptyOrNonExistent.js.map +1 -0
- package/dist/util/ensureTrailingSlash.js +12 -0
- package/dist/util/ensureTrailingSlash.js.map +1 -0
- package/dist/util/errorMessages.js +6 -0
- package/dist/util/errorMessages.js.map +1 -0
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js +88 -0
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js.map +1 -0
- package/dist/util/findNdjsonEntry.js +21 -0
- package/dist/util/findNdjsonEntry.js.map +1 -0
- package/dist/util/formatSize.js +10 -0
- package/dist/util/formatSize.js.map +1 -0
- 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/getCliVersion.js +28 -0
- package/dist/util/getCliVersion.js.map +1 -0
- package/dist/util/getErrorMessage.js +19 -0
- package/dist/util/getErrorMessage.js.map +1 -0
- package/dist/util/getLocalPackageVersion.js +32 -0
- package/dist/util/getLocalPackageVersion.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/getSharedServerConfig.js +31 -0
- package/dist/util/getSharedServerConfig.js.map +1 -0
- package/dist/util/getWorkspace.js +18 -0
- package/dist/util/getWorkspace.js.map +1 -0
- package/dist/util/humanFileSize.js +12 -0
- package/dist/util/humanFileSize.js.map +1 -0
- package/dist/util/importStudioConfig.js +40 -0
- package/dist/util/importStudioConfig.js.map +1 -0
- package/dist/util/isPathDirName.js +6 -0
- package/dist/util/isPathDirName.js.map +1 -0
- package/dist/util/isSanityDocumentish.js +20 -0
- package/dist/util/isSanityDocumentish.js.map +1 -0
- package/dist/util/loadEnv.js +3 -0
- package/dist/util/loadEnv.js.map +1 -0
- package/dist/util/moduleFormatUtils.js +18 -0
- package/dist/util/moduleFormatUtils.js.map +1 -0
- package/dist/util/packageManager/installPackages.js +87 -0
- package/dist/util/packageManager/installPackages.js.map +1 -0
- package/dist/util/packageManager/packageManagerChoice.js +181 -0
- package/dist/util/packageManager/packageManagerChoice.js.map +1 -0
- package/dist/util/packageManager/upgradePackages.js +69 -0
- package/dist/util/packageManager/upgradePackages.js.map +1 -0
- package/dist/util/parseArguments.js +42 -0
- package/dist/util/parseArguments.js.map +1 -0
- package/dist/util/pluralize.js +11 -0
- package/dist/util/pluralize.js.map +1 -0
- package/dist/util/readModuleVersion.js +15 -0
- package/dist/util/readModuleVersion.js.map +1 -0
- package/dist/util/readPackageJson.js +44 -0
- package/dist/util/readPackageJson.js.map +1 -0
- package/dist/util/readPackageManifest.js +46 -0
- package/dist/util/readPackageManifest.js.map +1 -0
- 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/toInt.js +9 -0
- package/dist/util/toInt.js.map +1 -0
- package/dist/util/trimHashFromVersion.js +8 -0
- package/dist/util/trimHashFromVersion.js.map +1 -0
- package/dist/util/uniqBy.js +14 -0
- package/dist/util/uniqBy.js.map +1 -0
- package/dist/util/validation/validateDocumentsUtils.js +33 -0
- package/dist/util/validation/validateDocumentsUtils.js.map +1 -0
- package/dist/util/warnAboutMissingAppId.js +15 -0
- package/dist/util/warnAboutMissingAppId.js.map +1 -0
- package/dist/util/warnOnNonProductionEnvironment.js +18 -0
- package/dist/util/warnOnNonProductionEnvironment.js.map +1 -0
- package/dist/util/workerChannels.js +172 -0
- package/dist/util/workerChannels.js.map +1 -0
- package/oclif.config.js +21 -0
- package/oclif.manifest.json +4154 -0
- package/package.json +138 -98
- package/templates/app-quickstart/src/App.css +3 -1
- package/templates/app-quickstart/src/App.tsx +1 -1
- package/templates/app-sanity-ui/src/App.tsx +2 -2
- package/templates/app-sanity-ui/src/ExampleComponent.tsx +2 -1
- package/templates/get-started/plugins/sanity-plugin-tutorial/GetStartedTutorial.tsx +3 -3
- package/templates/get-started/plugins/sanity-plugin-tutorial/index.ts +2 -2
- package/templates/shopify/components/hotspots/ProductTooltip.tsx +1 -1
- package/templates/shopify/components/icons/Shopify.tsx +0 -2
- package/templates/shopify/components/inputs/CollectionHidden.tsx +0 -1
- package/templates/shopify/components/media/ColorTheme.tsx +1 -1
- package/templates/shopify/constants.ts +4 -4
- package/templates/shopify/plugins/customDocumentActions/index.ts +2 -2
- package/templates/shopify/plugins/customDocumentActions/shopifyDelete.tsx +1 -1
- package/templates/shopify/schemaTypes/documents/collection.tsx +1 -2
- package/templates/shopify/schemaTypes/documents/page.ts +1 -1
- package/templates/shopify/schemaTypes/documents/product.tsx +1 -1
- package/templates/shopify/schemaTypes/documents/productVariant.tsx +2 -3
- package/templates/shopify/schemaTypes/objects/customProductOption/customProductOptionColorObjectType.tsx +0 -1
- package/templates/shopify/schemaTypes/objects/hotspot/productHotspotsType.tsx +1 -3
- package/templates/shopify/schemaTypes/objects/module/collectionReferenceType.tsx +0 -1
- package/templates/shopify/schemaTypes/objects/shopify/placeholderStringType.ts +2 -3
- package/templates/shopify/schemaTypes/objects/shopify/productWithVariantType.tsx +1 -1
- package/templates/shopify/schemaTypes/objects/shopify/shopifyCollectionType.ts +1 -2
- package/templates/shopify/schemaTypes/objects/shopify/shopifyProductType.ts +1 -2
- package/templates/shopify/schemaTypes/portableText/portableTextType.tsx +7 -7
- package/templates/shopify/schemaTypes/singletons/homeType.ts +8 -8
- package/templates/shopify/structure/collectionStructure.ts +4 -1
- package/templates/shopify/structure/colorThemeStructure.ts +1 -1
- package/templates/shopify/structure/homeStructure.ts +2 -2
- package/templates/shopify/structure/index.ts +1 -1
- package/templates/shopify/structure/pageStructure.ts +2 -2
- package/templates/shopify/structure/productStructure.ts +7 -7
- package/templates/shopify/structure/settingStructure.ts +1 -1
- package/templates/shopify/utils/defineStructure.ts +1 -1
- package/templates/shopify-online-storefront/plugins/shopifyDocumentActions/index.ts +1 -1
- package/templates/shopify-online-storefront/plugins/shopifyDocumentActions/shopifyDelete.tsx +1 -1
- package/templates/shopify-online-storefront/structure/collectionStructure.ts +4 -1
- package/templates/shopify-online-storefront/structure/productStructure.ts +4 -4
- package/templates/shopify-online-storefront/utils/defineStructure.ts +1 -1
- package/bin/dev.js +0 -30
- package/bin/sanity +0 -14
- package/lib/_chunks-cjs/cli.js +0 -70870
- package/lib/_chunks-cjs/cli.js.map +0 -1
- package/lib/_chunks-cjs/cliWorker.js +0 -19
- package/lib/_chunks-cjs/cliWorker.js.map +0 -1
- package/lib/_chunks-cjs/generateAction.js +0 -128
- package/lib/_chunks-cjs/generateAction.js.map +0 -1
- package/lib/_chunks-cjs/getCliConfig.js +0 -89
- package/lib/_chunks-cjs/getCliConfig.js.map +0 -1
- package/lib/_chunks-cjs/index.js +0 -31
- package/lib/_chunks-cjs/index.js.map +0 -1
- package/lib/_chunks-cjs/journeyConfig.js +0 -113
- package/lib/_chunks-cjs/journeyConfig.js.map +0 -1
- package/lib/_chunks-cjs/loadEnv.js +0 -347
- package/lib/_chunks-cjs/loadEnv.js.map +0 -1
- package/lib/_chunks-dts/types.d.ts +0 -432
- package/lib/cli.d.ts +0 -7
- package/lib/cli.js +0 -10
- package/lib/cli.js.map +0 -1
- package/lib/index.d.ts +0 -44
- package/lib/index.js +0 -46
- package/lib/index.js.map +0 -1
- package/lib/run.d.ts +0 -1
- package/lib/run.js +0 -8
- package/lib/run.js.map +0 -1
- package/lib/workers/getAndWriteJourneySchema.d.ts +0 -1
- package/lib/workers/getAndWriteJourneySchema.js +0 -4
- package/lib/workers/getAndWriteJourneySchema.js.map +0 -1
- package/lib/workers/getCliConfig.d.ts +0 -1
- package/lib/workers/getCliConfig.js +0 -10
- package/lib/workers/getCliConfig.js.map +0 -1
- package/lib/workers/typegenGenerate.d.ts +0 -18
- package/lib/workers/typegenGenerate.js +0 -47
- package/lib/workers/typegenGenerate.js.map +0 -1
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export function getStatusDisplay(status) {
|
|
2
|
+
switch(status){
|
|
3
|
+
case 'denied':
|
|
4
|
+
{
|
|
5
|
+
return 'Disabled';
|
|
6
|
+
}
|
|
7
|
+
case 'granted':
|
|
8
|
+
{
|
|
9
|
+
return 'Enabled';
|
|
10
|
+
}
|
|
11
|
+
case 'undetermined':
|
|
12
|
+
{
|
|
13
|
+
return 'Undetermined';
|
|
14
|
+
}
|
|
15
|
+
case 'unset':
|
|
16
|
+
{
|
|
17
|
+
return 'Not set';
|
|
18
|
+
}
|
|
19
|
+
default:
|
|
20
|
+
{
|
|
21
|
+
return 'Unknown';
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=getStatusDisplay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/telemetry/getStatusDisplay.ts"],"sourcesContent":["import {type ConsentInformation} from '@sanity/cli-core'\n\nexport function getStatusDisplay(status: ConsentInformation['status']): string {\n switch (status) {\n case 'denied': {\n return 'Disabled'\n }\n case 'granted': {\n return 'Enabled'\n }\n case 'undetermined': {\n return 'Undetermined'\n }\n case 'unset': {\n return 'Not set'\n }\n default: {\n return 'Unknown'\n }\n }\n}\n"],"names":["getStatusDisplay","status"],"mappings":"AAEA,OAAO,SAASA,iBAAiBC,MAAoC;IACnE,OAAQA;QACN,KAAK;YAAU;gBACb,OAAO;YACT;QACA,KAAK;YAAW;gBACd,OAAO;YACT;QACA,KAAK;YAAgB;gBACnB,OAAO;YACT;QACA,KAAK;YAAS;gBACZ,OAAO;YACT;QACA;YAAS;gBACP,OAAO;YACT;IACF;AACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { getStatusDisplay } from './getStatusDisplay.js';
|
|
2
|
+
export function getStatusMessage(consentInfo) {
|
|
3
|
+
const { reason, status } = consentInfo;
|
|
4
|
+
switch(true){
|
|
5
|
+
case status === 'undetermined' && reason === 'unauthenticated':
|
|
6
|
+
{
|
|
7
|
+
return 'You need to log in first to see telemetry status.';
|
|
8
|
+
}
|
|
9
|
+
case status === 'undetermined' && reason === 'fetchError':
|
|
10
|
+
{
|
|
11
|
+
return 'Could not fetch telemetry consent status.';
|
|
12
|
+
}
|
|
13
|
+
case status === 'denied' && reason === 'localOverride':
|
|
14
|
+
{
|
|
15
|
+
return `Status: ${getStatusDisplay(status)}\n\nYou've opted out of telemetry data collection.\nNo data will be collected from your machine.\n\nUsing DO_NOT_TRACK environment variable.`;
|
|
16
|
+
}
|
|
17
|
+
case status === 'denied':
|
|
18
|
+
{
|
|
19
|
+
return `Status: ${getStatusDisplay(status)}\n\nYou've opted out of telemetry data collection.\nNo data will be collected from your Sanity account.`;
|
|
20
|
+
}
|
|
21
|
+
case status === 'granted':
|
|
22
|
+
{
|
|
23
|
+
return `Status: ${getStatusDisplay(status)}\n\nTelemetry data on general usage and errors is collected to help us improve Sanity.`;
|
|
24
|
+
}
|
|
25
|
+
case status === 'unset':
|
|
26
|
+
{
|
|
27
|
+
return `Status: ${getStatusDisplay(status)}\n\nYou've not set your preference for telemetry collection.\n\nRun 'npx sanity telemetry enable/disable' to opt in or out.\nYou can also use the DO_NOT_TRACK environment variable to opt out.`;
|
|
28
|
+
}
|
|
29
|
+
default:
|
|
30
|
+
{
|
|
31
|
+
return `Status: ${getStatusDisplay(status)}`;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=getStatusMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/telemetry/getStatusMessage.ts"],"sourcesContent":["import {type ConsentInformation} from '@sanity/cli-core'\n\nimport {getStatusDisplay} from './getStatusDisplay.js'\n\nexport function getStatusMessage(consentInfo: ConsentInformation): string {\n const {reason, status} = consentInfo\n\n switch (true) {\n case status === 'undetermined' && reason === 'unauthenticated': {\n return 'You need to log in first to see telemetry status.'\n }\n\n case status === 'undetermined' && reason === 'fetchError': {\n return 'Could not fetch telemetry consent status.'\n }\n\n case status === 'denied' && reason === 'localOverride': {\n return `Status: ${getStatusDisplay(status)}\\n\\nYou've opted out of telemetry data collection.\\nNo data will be collected from your machine.\\n\\nUsing DO_NOT_TRACK environment variable.`\n }\n\n case status === 'denied': {\n return `Status: ${getStatusDisplay(status)}\\n\\nYou've opted out of telemetry data collection.\\nNo data will be collected from your Sanity account.`\n }\n\n case status === 'granted': {\n return `Status: ${getStatusDisplay(status)}\\n\\nTelemetry data on general usage and errors is collected to help us improve Sanity.`\n }\n\n case status === 'unset': {\n return `Status: ${getStatusDisplay(status)}\\n\\nYou've not set your preference for telemetry collection.\\n\\nRun 'npx sanity telemetry enable/disable' to opt in or out.\\nYou can also use the DO_NOT_TRACK environment variable to opt out.`\n }\n\n default: {\n return `Status: ${getStatusDisplay(status)}`\n }\n }\n}\n"],"names":["getStatusDisplay","getStatusMessage","consentInfo","reason","status"],"mappings":"AAEA,SAAQA,gBAAgB,QAAO,wBAAuB;AAEtD,OAAO,SAASC,iBAAiBC,WAA+B;IAC9D,MAAM,EAACC,MAAM,EAAEC,MAAM,EAAC,GAAGF;IAEzB,OAAQ;QACN,KAAKE,WAAW,kBAAkBD,WAAW;YAAmB;gBAC9D,OAAO;YACT;QAEA,KAAKC,WAAW,kBAAkBD,WAAW;YAAc;gBACzD,OAAO;YACT;QAEA,KAAKC,WAAW,YAAYD,WAAW;YAAiB;gBACtD,OAAO,CAAC,QAAQ,EAAEH,iBAAiBI,QAAQ,4IAA4I,CAAC;YAC1L;QAEA,KAAKA,WAAW;YAAU;gBACxB,OAAO,CAAC,QAAQ,EAAEJ,iBAAiBI,QAAQ,uGAAuG,CAAC;YACrJ;QAEA,KAAKA,WAAW;YAAW;gBACzB,OAAO,CAAC,QAAQ,EAAEJ,iBAAiBI,QAAQ,sFAAsF,CAAC;YACpI;QAEA,KAAKA,WAAW;YAAS;gBACvB,OAAO,CAAC,QAAQ,EAAEJ,iBAAiBI,QAAQ,+LAA+L,CAAC;YAC7O;QAEA;YAAS;gBACP,OAAO,CAAC,QAAQ,EAAEJ,iBAAiBI,SAAS;YAC9C;IACF;AACF"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { getCliToken, isCi, isTrueish } from '@sanity/cli-core';
|
|
2
|
+
import { fetchTelemetryConsent, isValidApiConsentStatus, VALID_API_STATUSES } from '../../services/telemetry.js';
|
|
3
|
+
import { telemetryDebug } from './telemetryDebug.js';
|
|
4
|
+
function parseApiConsentStatus(value) {
|
|
5
|
+
if (typeof value === 'string' && isValidApiConsentStatus(value)) {
|
|
6
|
+
return value;
|
|
7
|
+
}
|
|
8
|
+
throw new Error(`Invalid consent status. Must be one of: ${VALID_API_STATUSES.join(', ')}`);
|
|
9
|
+
}
|
|
10
|
+
export async function resolveConsent() {
|
|
11
|
+
telemetryDebug('Resolving consent…');
|
|
12
|
+
if (isCi()) {
|
|
13
|
+
telemetryDebug('CI environment detected, treating telemetry consent as denied');
|
|
14
|
+
return {
|
|
15
|
+
status: 'denied'
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
if (isTrueish(process.env.DO_NOT_TRACK)) {
|
|
19
|
+
telemetryDebug('DO_NOT_TRACK is set, consent is denied');
|
|
20
|
+
return {
|
|
21
|
+
reason: 'localOverride',
|
|
22
|
+
status: 'denied'
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
const token = await getCliToken();
|
|
26
|
+
if (!token) {
|
|
27
|
+
telemetryDebug('User is not logged in, consent is undetermined');
|
|
28
|
+
return {
|
|
29
|
+
reason: 'unauthenticated',
|
|
30
|
+
status: 'undetermined'
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
try {
|
|
34
|
+
const response = await fetchTelemetryConsent();
|
|
35
|
+
telemetryDebug('User consent status is %s', response.status);
|
|
36
|
+
return {
|
|
37
|
+
status: parseApiConsentStatus(response.status)
|
|
38
|
+
};
|
|
39
|
+
} catch (err) {
|
|
40
|
+
telemetryDebug('Failed to fetch user consent status, treating it as "undetermined": %s', err);
|
|
41
|
+
return {
|
|
42
|
+
reason: 'fetchError',
|
|
43
|
+
status: 'undetermined'
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=resolveConsent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/telemetry/resolveConsent.ts"],"sourcesContent":["import {type ConsentInformation, getCliToken, isCi, isTrueish} from '@sanity/cli-core'\n\nimport {\n fetchTelemetryConsent,\n isValidApiConsentStatus,\n VALID_API_STATUSES,\n type ValidApiConsentStatus,\n} from '../../services/telemetry.js'\nimport {telemetryDebug} from './telemetryDebug.js'\n\nfunction parseApiConsentStatus(value: unknown): ValidApiConsentStatus {\n if (typeof value === 'string' && isValidApiConsentStatus(value)) {\n return value\n }\n throw new Error(`Invalid consent status. Must be one of: ${VALID_API_STATUSES.join(', ')}`)\n}\n\nexport async function resolveConsent(): Promise<ConsentInformation> {\n telemetryDebug('Resolving consent…')\n if (isCi()) {\n telemetryDebug('CI environment detected, treating telemetry consent as denied')\n return {status: 'denied'}\n }\n\n if (isTrueish(process.env.DO_NOT_TRACK)) {\n telemetryDebug('DO_NOT_TRACK is set, consent is denied')\n return {\n reason: 'localOverride',\n status: 'denied',\n }\n }\n\n const token = await getCliToken()\n if (!token) {\n telemetryDebug('User is not logged in, consent is undetermined')\n return {\n reason: 'unauthenticated',\n status: 'undetermined',\n }\n }\n\n try {\n const response = await fetchTelemetryConsent()\n\n telemetryDebug('User consent status is %s', response.status)\n return {status: parseApiConsentStatus(response.status)}\n } catch (err) {\n telemetryDebug('Failed to fetch user consent status, treating it as \"undetermined\": %s', err)\n return {\n reason: 'fetchError',\n status: 'undetermined',\n }\n }\n}\n"],"names":["getCliToken","isCi","isTrueish","fetchTelemetryConsent","isValidApiConsentStatus","VALID_API_STATUSES","telemetryDebug","parseApiConsentStatus","value","Error","join","resolveConsent","status","process","env","DO_NOT_TRACK","reason","token","response","err"],"mappings":"AAAA,SAAiCA,WAAW,EAAEC,IAAI,EAAEC,SAAS,QAAO,mBAAkB;AAEtF,SACEC,qBAAqB,EACrBC,uBAAuB,EACvBC,kBAAkB,QAEb,8BAA6B;AACpC,SAAQC,cAAc,QAAO,sBAAqB;AAElD,SAASC,sBAAsBC,KAAc;IAC3C,IAAI,OAAOA,UAAU,YAAYJ,wBAAwBI,QAAQ;QAC/D,OAAOA;IACT;IACA,MAAM,IAAIC,MAAM,CAAC,wCAAwC,EAAEJ,mBAAmBK,IAAI,CAAC,OAAO;AAC5F;AAEA,OAAO,eAAeC;IACpBL,eAAe;IACf,IAAIL,QAAQ;QACVK,eAAe;QACf,OAAO;YAACM,QAAQ;QAAQ;IAC1B;IAEA,IAAIV,UAAUW,QAAQC,GAAG,CAACC,YAAY,GAAG;QACvCT,eAAe;QACf,OAAO;YACLU,QAAQ;YACRJ,QAAQ;QACV;IACF;IAEA,MAAMK,QAAQ,MAAMjB;IACpB,IAAI,CAACiB,OAAO;QACVX,eAAe;QACf,OAAO;YACLU,QAAQ;YACRJ,QAAQ;QACV;IACF;IAEA,IAAI;QACF,MAAMM,WAAW,MAAMf;QAEvBG,eAAe,6BAA6BY,SAASN,MAAM;QAC3D,OAAO;YAACA,QAAQL,sBAAsBW,SAASN,MAAM;QAAC;IACxD,EAAE,OAAOO,KAAK;QACZb,eAAe,0EAA0Ea;QACzF,OAAO;YACLH,QAAQ;YACRJ,QAAQ;QACV;IACF;AACF"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { getGlobalCliClient, getUserConfig, isCi, isTrueish } from '@sanity/cli-core';
|
|
2
|
+
import { TELEMETRY_CONSENT_CONFIG_KEY } from '../../services/telemetry.js';
|
|
3
|
+
import { resolveConsent } from './resolveConsent.js';
|
|
4
|
+
import { telemetryDebug } from './telemetryDebug.js';
|
|
5
|
+
// Type guard for error objects with HTTP properties
|
|
6
|
+
function isHttpError(error) {
|
|
7
|
+
return typeof error === 'object' && error !== null && 'statusCode' in error && 'message' in error;
|
|
8
|
+
}
|
|
9
|
+
export async function setConsent({ status }) {
|
|
10
|
+
telemetryDebug('Setting telemetry consent to "%s"', status);
|
|
11
|
+
// Check current consent status first
|
|
12
|
+
const currentConsent = await resolveConsent();
|
|
13
|
+
// Handle various blocking conditions
|
|
14
|
+
if (isCi()) {
|
|
15
|
+
return {
|
|
16
|
+
changed: false,
|
|
17
|
+
currentStatus: currentConsent,
|
|
18
|
+
message: 'Cannot set telemetry consent in CI environment'
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
if (isTrueish(process.env.DO_NOT_TRACK) && status === 'granted') {
|
|
22
|
+
return {
|
|
23
|
+
changed: false,
|
|
24
|
+
currentStatus: currentConsent,
|
|
25
|
+
message: 'Cannot enable telemetry while DO_NOT_TRACK environment variable is set. Unset DO_NOT_TRACK to enable telemetry.'
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
// Check if already at desired status
|
|
29
|
+
if (currentConsent.status === status) {
|
|
30
|
+
const message = status === 'granted' ? "You've already enabled telemetry data collection to help us improve Sanity." : currentConsent.reason === 'localOverride' ? "You've already opted out of telemetry data collection.\nNo data is collected from your machine.\n\nUsing DO_NOT_TRACK environment variable." : "You've already opted out of telemetry data collection.\nNo data is collected from your Sanity account.";
|
|
31
|
+
return {
|
|
32
|
+
changed: false,
|
|
33
|
+
currentStatus: currentConsent,
|
|
34
|
+
message
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
// User must be logged in to set consent
|
|
38
|
+
if (currentConsent.status === 'undetermined' && currentConsent.reason === 'unauthenticated') {
|
|
39
|
+
return {
|
|
40
|
+
changed: false,
|
|
41
|
+
currentStatus: currentConsent,
|
|
42
|
+
message: 'You need to log in first to set telemetry preferences.'
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
try {
|
|
46
|
+
const client = await getGlobalCliClient({
|
|
47
|
+
apiVersion: '2023-12-18',
|
|
48
|
+
requireUser: true
|
|
49
|
+
});
|
|
50
|
+
const uri = `/users/me/consents/telemetry/status/${status}`;
|
|
51
|
+
telemetryDebug('Sending telemetry consent status to %s', uri);
|
|
52
|
+
await client.request({
|
|
53
|
+
method: 'PUT',
|
|
54
|
+
uri
|
|
55
|
+
});
|
|
56
|
+
// Clear cached telemetry consent
|
|
57
|
+
const userConfig = getUserConfig();
|
|
58
|
+
userConfig.delete(TELEMETRY_CONSENT_CONFIG_KEY);
|
|
59
|
+
const successMessage = status === 'granted' ? "You've now enabled telemetry data collection to help us improve Sanity." : "You've opted out of telemetry data collection.\nNo data will be collected from your Sanity account.";
|
|
60
|
+
const newConsent = await resolveConsent();
|
|
61
|
+
return {
|
|
62
|
+
changed: true,
|
|
63
|
+
currentStatus: newConsent,
|
|
64
|
+
message: successMessage
|
|
65
|
+
};
|
|
66
|
+
} catch (err) {
|
|
67
|
+
const errorMessage = `Failed to ${status === 'granted' ? 'enable' : 'disable'} telemetry`;
|
|
68
|
+
if (isHttpError(err) && err.statusCode === 403) {
|
|
69
|
+
// Create a new error without stack trace from original error
|
|
70
|
+
const message = err.response?.body?.message ? `${errorMessage}: ${err.response.body.message}` : errorMessage;
|
|
71
|
+
throw new Error(message);
|
|
72
|
+
}
|
|
73
|
+
if (isHttpError(err)) {
|
|
74
|
+
// For other errors, preserve the original error but update the message
|
|
75
|
+
err.message = err.response?.body?.message ? `${errorMessage}: ${err.response.body.message}` : errorMessage;
|
|
76
|
+
throw err;
|
|
77
|
+
}
|
|
78
|
+
// For non-HTTP errors, wrap in a new error
|
|
79
|
+
throw new Error(errorMessage);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
//# sourceMappingURL=setConsent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/telemetry/setConsent.ts"],"sourcesContent":["import {\n type ConsentInformation,\n getGlobalCliClient,\n getUserConfig,\n isCi,\n isTrueish,\n} from '@sanity/cli-core'\n\nimport {TELEMETRY_CONSENT_CONFIG_KEY, type ValidApiConsentStatus} from '../../services/telemetry.js'\nimport {resolveConsent} from './resolveConsent.js'\nimport {telemetryDebug} from './telemetryDebug.js'\n\ntype SettableConsentStatus = Extract<ValidApiConsentStatus, 'denied' | 'granted'>\n\n// Type guard for error objects with HTTP properties\nfunction isHttpError(error: unknown): error is {\n message: string\n response?: {body?: {message?: string}}\n statusCode: number\n} {\n return typeof error === 'object' && error !== null && 'statusCode' in error && 'message' in error\n}\n\ninterface SetConsentOptions {\n status: SettableConsentStatus\n}\n\ninterface SetConsentResult {\n changed: boolean\n currentStatus: ConsentInformation\n message: string\n}\n\nexport async function setConsent({status}: SetConsentOptions): Promise<SetConsentResult> {\n telemetryDebug('Setting telemetry consent to \"%s\"', status)\n\n // Check current consent status first\n const currentConsent = await resolveConsent()\n\n // Handle various blocking conditions\n if (isCi()) {\n return {\n changed: false,\n currentStatus: currentConsent,\n message: 'Cannot set telemetry consent in CI environment',\n }\n }\n\n if (isTrueish(process.env.DO_NOT_TRACK) && status === 'granted') {\n return {\n changed: false,\n currentStatus: currentConsent,\n message:\n 'Cannot enable telemetry while DO_NOT_TRACK environment variable is set. Unset DO_NOT_TRACK to enable telemetry.',\n }\n }\n\n // Check if already at desired status\n if (currentConsent.status === status) {\n const message =\n status === 'granted'\n ? \"You've already enabled telemetry data collection to help us improve Sanity.\"\n : currentConsent.reason === 'localOverride'\n ? \"You've already opted out of telemetry data collection.\\nNo data is collected from your machine.\\n\\nUsing DO_NOT_TRACK environment variable.\"\n : \"You've already opted out of telemetry data collection.\\nNo data is collected from your Sanity account.\"\n\n return {\n changed: false,\n currentStatus: currentConsent,\n message,\n }\n }\n\n // User must be logged in to set consent\n if (currentConsent.status === 'undetermined' && currentConsent.reason === 'unauthenticated') {\n return {\n changed: false,\n currentStatus: currentConsent,\n message: 'You need to log in first to set telemetry preferences.',\n }\n }\n\n try {\n const client = await getGlobalCliClient({\n apiVersion: '2023-12-18',\n requireUser: true,\n })\n\n const uri = `/users/me/consents/telemetry/status/${status}`\n telemetryDebug('Sending telemetry consent status to %s', uri)\n\n await client.request({\n method: 'PUT',\n uri,\n })\n\n // Clear cached telemetry consent\n const userConfig = getUserConfig()\n userConfig.delete(TELEMETRY_CONSENT_CONFIG_KEY)\n\n const successMessage =\n status === 'granted'\n ? \"You've now enabled telemetry data collection to help us improve Sanity.\"\n : \"You've opted out of telemetry data collection.\\nNo data will be collected from your Sanity account.\"\n\n const newConsent = await resolveConsent()\n\n return {\n changed: true,\n currentStatus: newConsent,\n message: successMessage,\n }\n } catch (err: unknown) {\n const errorMessage = `Failed to ${status === 'granted' ? 'enable' : 'disable'} telemetry`\n\n if (isHttpError(err) && err.statusCode === 403) {\n // Create a new error without stack trace from original error\n const message = err.response?.body?.message\n ? `${errorMessage}: ${err.response.body.message}`\n : errorMessage\n throw new Error(message)\n }\n\n if (isHttpError(err)) {\n // For other errors, preserve the original error but update the message\n err.message = err.response?.body?.message\n ? `${errorMessage}: ${err.response.body.message}`\n : errorMessage\n throw err\n }\n\n // For non-HTTP errors, wrap in a new error\n throw new Error(errorMessage)\n }\n}\n"],"names":["getGlobalCliClient","getUserConfig","isCi","isTrueish","TELEMETRY_CONSENT_CONFIG_KEY","resolveConsent","telemetryDebug","isHttpError","error","setConsent","status","currentConsent","changed","currentStatus","message","process","env","DO_NOT_TRACK","reason","client","apiVersion","requireUser","uri","request","method","userConfig","delete","successMessage","newConsent","err","errorMessage","statusCode","response","body","Error"],"mappings":"AAAA,SAEEA,kBAAkB,EAClBC,aAAa,EACbC,IAAI,EACJC,SAAS,QACJ,mBAAkB;AAEzB,SAAQC,4BAA4B,QAAmC,8BAA6B;AACpG,SAAQC,cAAc,QAAO,sBAAqB;AAClD,SAAQC,cAAc,QAAO,sBAAqB;AAIlD,oDAAoD;AACpD,SAASC,YAAYC,KAAc;IAKjC,OAAO,OAAOA,UAAU,YAAYA,UAAU,QAAQ,gBAAgBA,SAAS,aAAaA;AAC9F;AAYA,OAAO,eAAeC,WAAW,EAACC,MAAM,EAAoB;IAC1DJ,eAAe,qCAAqCI;IAEpD,qCAAqC;IACrC,MAAMC,iBAAiB,MAAMN;IAE7B,qCAAqC;IACrC,IAAIH,QAAQ;QACV,OAAO;YACLU,SAAS;YACTC,eAAeF;YACfG,SAAS;QACX;IACF;IAEA,IAAIX,UAAUY,QAAQC,GAAG,CAACC,YAAY,KAAKP,WAAW,WAAW;QAC/D,OAAO;YACLE,SAAS;YACTC,eAAeF;YACfG,SACE;QACJ;IACF;IAEA,qCAAqC;IACrC,IAAIH,eAAeD,MAAM,KAAKA,QAAQ;QACpC,MAAMI,UACJJ,WAAW,YACP,gFACAC,eAAeO,MAAM,KAAK,kBACxB,gJACA;QAER,OAAO;YACLN,SAAS;YACTC,eAAeF;YACfG;QACF;IACF;IAEA,wCAAwC;IACxC,IAAIH,eAAeD,MAAM,KAAK,kBAAkBC,eAAeO,MAAM,KAAK,mBAAmB;QAC3F,OAAO;YACLN,SAAS;YACTC,eAAeF;YACfG,SAAS;QACX;IACF;IAEA,IAAI;QACF,MAAMK,SAAS,MAAMnB,mBAAmB;YACtCoB,YAAY;YACZC,aAAa;QACf;QAEA,MAAMC,MAAM,CAAC,oCAAoC,EAAEZ,QAAQ;QAC3DJ,eAAe,0CAA0CgB;QAEzD,MAAMH,OAAOI,OAAO,CAAC;YACnBC,QAAQ;YACRF;QACF;QAEA,iCAAiC;QACjC,MAAMG,aAAaxB;QACnBwB,WAAWC,MAAM,CAACtB;QAElB,MAAMuB,iBACJjB,WAAW,YACP,4EACA;QAEN,MAAMkB,aAAa,MAAMvB;QAEzB,OAAO;YACLO,SAAS;YACTC,eAAee;YACfd,SAASa;QACX;IACF,EAAE,OAAOE,KAAc;QACrB,MAAMC,eAAe,CAAC,UAAU,EAAEpB,WAAW,YAAY,WAAW,UAAU,UAAU,CAAC;QAEzF,IAAIH,YAAYsB,QAAQA,IAAIE,UAAU,KAAK,KAAK;YAC9C,6DAA6D;YAC7D,MAAMjB,UAAUe,IAAIG,QAAQ,EAAEC,MAAMnB,UAChC,GAAGgB,aAAa,EAAE,EAAED,IAAIG,QAAQ,CAACC,IAAI,CAACnB,OAAO,EAAE,GAC/CgB;YACJ,MAAM,IAAII,MAAMpB;QAClB;QAEA,IAAIP,YAAYsB,MAAM;YACpB,uEAAuE;YACvEA,IAAIf,OAAO,GAAGe,IAAIG,QAAQ,EAAEC,MAAMnB,UAC9B,GAAGgB,aAAa,EAAE,EAAED,IAAIG,QAAQ,CAACC,IAAI,CAACnB,OAAO,EAAE,GAC/CgB;YACJ,MAAMD;QACR;QAEA,2CAA2C;QAC3C,MAAM,IAAIK,MAAMJ;IAClB;AACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/telemetry/telemetryDebug.ts"],"sourcesContent":["import {subdebug} from '@sanity/cli-core'\n\nexport const telemetryDebug = subdebug('telemetry')\n"],"names":["subdebug","telemetryDebug"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,mBAAkB;AAEzC,OAAO,MAAMC,iBAAiBD,SAAS,aAAY"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { styleText } from 'node:util';
|
|
2
|
+
import { ux } from '@oclif/core';
|
|
3
|
+
import { getUserConfig, isCi } from '@sanity/cli-core';
|
|
4
|
+
import { boxen } from '@sanity/cli-core/ux';
|
|
5
|
+
import { telemetryDebug } from './telemetryDebug.js';
|
|
6
|
+
import { telemetryLearnMoreMessage } from './telemetryLearnMoreMessage.js';
|
|
7
|
+
const TELEMETRY_DISCLOSED_CONFIG_KEY = 'telemetryDisclosed';
|
|
8
|
+
export function telemetryDisclosure() {
|
|
9
|
+
const userConfig = getUserConfig();
|
|
10
|
+
if (isCi()) {
|
|
11
|
+
telemetryDebug('CI environment detected, skipping telemetry disclosure');
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
if (userConfig.get(TELEMETRY_DISCLOSED_CONFIG_KEY)) {
|
|
15
|
+
telemetryDebug('Telemetry disclosure has already been shown');
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
// Print to stderr to prevent garbling command output
|
|
19
|
+
ux.stderr(boxen(`The Sanity CLI now collects telemetry data on general usage and errors.
|
|
20
|
+
This helps us improve Sanity and prioritize features.
|
|
21
|
+
|
|
22
|
+
To opt in/out, run ${styleText('cyan', 'npx sanity telemetry enable/disable')}.
|
|
23
|
+
|
|
24
|
+
${telemetryLearnMoreMessage('unset')}`, {
|
|
25
|
+
borderColor: 'yellow',
|
|
26
|
+
borderStyle: 'round',
|
|
27
|
+
margin: 1,
|
|
28
|
+
padding: 1
|
|
29
|
+
}));
|
|
30
|
+
userConfig.set(TELEMETRY_DISCLOSED_CONFIG_KEY, Date.now());
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=telemetryDisclosure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/telemetry/telemetryDisclosure.ts"],"sourcesContent":["import {styleText} from 'node:util'\n\nimport {ux} from '@oclif/core'\nimport {getUserConfig, isCi} from '@sanity/cli-core'\nimport {boxen} from '@sanity/cli-core/ux'\n\nimport {telemetryDebug} from './telemetryDebug.js'\nimport {telemetryLearnMoreMessage} from './telemetryLearnMoreMessage.js'\n\nconst TELEMETRY_DISCLOSED_CONFIG_KEY = 'telemetryDisclosed'\n\nexport function telemetryDisclosure(): void {\n const userConfig = getUserConfig()\n\n if (isCi()) {\n telemetryDebug('CI environment detected, skipping telemetry disclosure')\n return\n }\n\n if (userConfig.get(TELEMETRY_DISCLOSED_CONFIG_KEY)) {\n telemetryDebug('Telemetry disclosure has already been shown')\n return\n }\n\n // Print to stderr to prevent garbling command output\n ux.stderr(\n boxen(\n `The Sanity CLI now collects telemetry data on general usage and errors.\nThis helps us improve Sanity and prioritize features.\n\nTo opt in/out, run ${styleText('cyan', 'npx sanity telemetry enable/disable')}.\n\n${telemetryLearnMoreMessage('unset')}`,\n {\n borderColor: 'yellow',\n borderStyle: 'round',\n margin: 1,\n padding: 1,\n },\n ),\n )\n\n userConfig.set(TELEMETRY_DISCLOSED_CONFIG_KEY, Date.now())\n}\n"],"names":["styleText","ux","getUserConfig","isCi","boxen","telemetryDebug","telemetryLearnMoreMessage","TELEMETRY_DISCLOSED_CONFIG_KEY","telemetryDisclosure","userConfig","get","stderr","borderColor","borderStyle","margin","padding","set","Date","now"],"mappings":"AAAA,SAAQA,SAAS,QAAO,YAAW;AAEnC,SAAQC,EAAE,QAAO,cAAa;AAC9B,SAAQC,aAAa,EAAEC,IAAI,QAAO,mBAAkB;AACpD,SAAQC,KAAK,QAAO,sBAAqB;AAEzC,SAAQC,cAAc,QAAO,sBAAqB;AAClD,SAAQC,yBAAyB,QAAO,iCAAgC;AAExE,MAAMC,iCAAiC;AAEvC,OAAO,SAASC;IACd,MAAMC,aAAaP;IAEnB,IAAIC,QAAQ;QACVE,eAAe;QACf;IACF;IAEA,IAAII,WAAWC,GAAG,CAACH,iCAAiC;QAClDF,eAAe;QACf;IACF;IAEA,qDAAqD;IACrDJ,GAAGU,MAAM,CACPP,MACE,CAAC;;;mBAGY,EAAEJ,UAAU,QAAQ,uCAAuC;;AAE9E,EAAEM,0BAA0B,UAAU,EAChC;QACEM,aAAa;QACbC,aAAa;QACbC,QAAQ;QACRC,SAAS;IACX;IAIJN,WAAWO,GAAG,CAACT,gCAAgCU,KAAKC,GAAG;AACzD"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export function telemetryLearnMoreMessage(status) {
|
|
2
|
+
const url = 'https://www.sanity.io/telemetry';
|
|
3
|
+
switch(status){
|
|
4
|
+
case 'granted':
|
|
5
|
+
{
|
|
6
|
+
return `Learn more about the data being collected here:\n${url}`;
|
|
7
|
+
}
|
|
8
|
+
default:
|
|
9
|
+
{
|
|
10
|
+
return `Learn more here:\n${url}`;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=telemetryLearnMoreMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/telemetry/telemetryLearnMoreMessage.ts"],"sourcesContent":["import {type ConsentStatus} from '@sanity/telemetry'\n\nexport function telemetryLearnMoreMessage(status: ConsentStatus): string {\n const url = 'https://www.sanity.io/telemetry'\n\n switch (status) {\n case 'granted': {\n return `Learn more about the data being collected here:\\n${url}`\n }\n default: {\n return `Learn more here:\\n${url}`\n }\n }\n}\n"],"names":["telemetryLearnMoreMessage","status","url"],"mappings":"AAEA,OAAO,SAASA,0BAA0BC,MAAqB;IAC7D,MAAMC,MAAM;IAEZ,OAAQD;QACN,KAAK;YAAW;gBACd,OAAO,CAAC,iDAAiD,EAAEC,KAAK;YAClE;QACA;YAAS;gBACP,OAAO,CAAC,kBAAkB,EAAEA,KAAK;YACnC;IACF;AACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/tokens/constants.ts"],"sourcesContent":["/**\n * API version for tokens endpoints\n */\nexport const TOKENS_API_VERSION = 'v2025-08-18'\n"],"names":["TOKENS_API_VERSION"],"mappings":"AAAA;;CAEC,GACD,OAAO,MAAMA,qBAAqB,cAAa"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/tokens/types.ts"],"sourcesContent":["interface TokenRole {\n name: string\n title: string\n}\n\nexport interface Token {\n createdAt: string\n createdBy: string\n id: string\n label: string\n lastUsedAt: string | null\n permissions: string[]\n projectId: string\n projectUserId: string\n roles: TokenRole[]\n}\n\nexport interface TokenResponse {\n id: string\n key: string\n label: string\n projectUserId: string\n roles: TokenRole[]\n}\n\nexport interface ProjectRole {\n appliesToRobots: boolean\n appliesToUsers: boolean\n description: string\n isCustom: boolean\n name: string\n projectId: string\n title: string\n}\n"],"names":[],"mappings":"AAyBA,WAQC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ux } from '@oclif/core';
|
|
2
|
+
import { getTokenRoles } from '../../services/tokens.js';
|
|
3
|
+
/**
|
|
4
|
+
* Validate a role name
|
|
5
|
+
* @param roleName - The role name to validate
|
|
6
|
+
* @param projectId - The project ID
|
|
7
|
+
* @returns A promise that resolves to the validated role name
|
|
8
|
+
*
|
|
9
|
+
* @internal
|
|
10
|
+
*/ export async function validateRole(roleName, projectId) {
|
|
11
|
+
const roles = await getTokenRoles(projectId);
|
|
12
|
+
const robotRoles = roles.filter((role)=>role.appliesToRobots);
|
|
13
|
+
const role = robotRoles.find((r)=>r.name === roleName);
|
|
14
|
+
if (role) {
|
|
15
|
+
return roleName;
|
|
16
|
+
}
|
|
17
|
+
const availableRoles = robotRoles.map((r)=>r.name).join(', ');
|
|
18
|
+
ux.error(`Invalid role "${roleName}". Available roles: ${availableRoles}`, {
|
|
19
|
+
exit: 1
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=validateRole.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/tokens/validateRole.ts"],"sourcesContent":["import {ux} from '@oclif/core'\n\nimport {getTokenRoles} from '../../services/tokens.js'\n\n/**\n * Validate a role name\n * @param roleName - The role name to validate\n * @param projectId - The project ID\n * @returns A promise that resolves to the validated role name\n *\n * @internal\n */\nexport async function validateRole(roleName: string, projectId: string): Promise<string> {\n const roles = await getTokenRoles(projectId)\n const robotRoles = roles.filter((role) => role.appliesToRobots)\n\n const role = robotRoles.find((r) => r.name === roleName)\n if (role) {\n return roleName\n }\n\n const availableRoles = robotRoles.map((r) => r.name).join(', ')\n ux.error(`Invalid role \"${roleName}\". Available roles: ${availableRoles}`, {exit: 1})\n}\n"],"names":["ux","getTokenRoles","validateRole","roleName","projectId","roles","robotRoles","filter","role","appliesToRobots","find","r","name","availableRoles","map","join","error","exit"],"mappings":"AAAA,SAAQA,EAAE,QAAO,cAAa;AAE9B,SAAQC,aAAa,QAAO,2BAA0B;AAEtD;;;;;;;CAOC,GACD,OAAO,eAAeC,aAAaC,QAAgB,EAAEC,SAAiB;IACpE,MAAMC,QAAQ,MAAMJ,cAAcG;IAClC,MAAME,aAAaD,MAAME,MAAM,CAAC,CAACC,OAASA,KAAKC,eAAe;IAE9D,MAAMD,OAAOF,WAAWI,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAKT;IAC/C,IAAIK,MAAM;QACR,OAAOL;IACT;IAEA,MAAMU,iBAAiBP,WAAWQ,GAAG,CAAC,CAACH,IAAMA,EAAEC,IAAI,EAAEG,IAAI,CAAC;IAC1Df,GAAGgB,KAAK,CAAC,CAAC,cAAc,EAAEb,SAAS,oBAAoB,EAAEU,gBAAgB,EAAE;QAACI,MAAM;IAAC;AACrF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { getUserApplication } from '../../services/userApplications.js';
|
|
2
|
+
import { getAppId } from '../../util/appId.js';
|
|
3
|
+
import { determineIsApp } from '../../util/determineIsApp.js';
|
|
4
|
+
import { NO_PROJECT_ID } from '../../util/errorMessages.js';
|
|
5
|
+
export const NO_APP_ID = 'NO_APP_ID';
|
|
6
|
+
export const NO_APP_ID_OR_STUDIO_HOST = 'NO_APP_ID_OR_STUDIO_HOST';
|
|
7
|
+
// Used only in undeploy flow
|
|
8
|
+
export async function getStudioOrAppUserApplication(options) {
|
|
9
|
+
const { cliConfig } = options;
|
|
10
|
+
const projectId = cliConfig.api?.projectId;
|
|
11
|
+
const isApp = determineIsApp(cliConfig);
|
|
12
|
+
if (isApp) {
|
|
13
|
+
const appId = getAppId(cliConfig);
|
|
14
|
+
if (!appId) {
|
|
15
|
+
throw new Error(NO_APP_ID);
|
|
16
|
+
}
|
|
17
|
+
return getUserApplication({
|
|
18
|
+
appId,
|
|
19
|
+
isSdkApp: true
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (!cliConfig.studioHost && !cliConfig.deployment?.appId) {
|
|
23
|
+
throw new Error(NO_APP_ID_OR_STUDIO_HOST);
|
|
24
|
+
}
|
|
25
|
+
if (!projectId) {
|
|
26
|
+
throw new Error(NO_PROJECT_ID);
|
|
27
|
+
}
|
|
28
|
+
return getUserApplication({
|
|
29
|
+
appHost: cliConfig.studioHost,
|
|
30
|
+
appId: cliConfig.deployment?.appId,
|
|
31
|
+
isSdkApp: false,
|
|
32
|
+
projectId
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=getStudioOrAppUserApplication.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/undeploy/getStudioOrAppUserApplication.ts"],"sourcesContent":["import {type CliConfig, type Output} from '@sanity/cli-core'\n\nimport {getUserApplication} from '../../services/userApplications.js'\nimport {getAppId} from '../../util/appId.js'\nimport {determineIsApp} from '../../util/determineIsApp.js'\nimport {NO_PROJECT_ID} from '../../util/errorMessages.js'\n\ninterface GetStudioOrAppUserApplicationOptions {\n cliConfig: CliConfig\n output: Output\n}\n\nexport const NO_APP_ID = 'NO_APP_ID'\nexport const NO_APP_ID_OR_STUDIO_HOST = 'NO_APP_ID_OR_STUDIO_HOST'\n\n// Used only in undeploy flow\nexport async function getStudioOrAppUserApplication(options: GetStudioOrAppUserApplicationOptions) {\n const {cliConfig} = options\n const projectId = cliConfig.api?.projectId\n const isApp = determineIsApp(cliConfig)\n\n if (isApp) {\n const appId = getAppId(cliConfig)\n if (!appId) {\n throw new Error(NO_APP_ID)\n }\n\n return getUserApplication({appId, isSdkApp: true})\n }\n\n if (!cliConfig.studioHost && !cliConfig.deployment?.appId) {\n throw new Error(NO_APP_ID_OR_STUDIO_HOST)\n }\n\n if (!projectId) {\n throw new Error(NO_PROJECT_ID)\n }\n\n return getUserApplication({\n appHost: cliConfig.studioHost,\n appId: cliConfig.deployment?.appId,\n isSdkApp: false,\n projectId,\n })\n}\n"],"names":["getUserApplication","getAppId","determineIsApp","NO_PROJECT_ID","NO_APP_ID","NO_APP_ID_OR_STUDIO_HOST","getStudioOrAppUserApplication","options","cliConfig","projectId","api","isApp","appId","Error","isSdkApp","studioHost","deployment","appHost"],"mappings":"AAEA,SAAQA,kBAAkB,QAAO,qCAAoC;AACrE,SAAQC,QAAQ,QAAO,sBAAqB;AAC5C,SAAQC,cAAc,QAAO,+BAA8B;AAC3D,SAAQC,aAAa,QAAO,8BAA6B;AAOzD,OAAO,MAAMC,YAAY,YAAW;AACpC,OAAO,MAAMC,2BAA2B,2BAA0B;AAElE,6BAA6B;AAC7B,OAAO,eAAeC,8BAA8BC,OAA6C;IAC/F,MAAM,EAACC,SAAS,EAAC,GAAGD;IACpB,MAAME,YAAYD,UAAUE,GAAG,EAAED;IACjC,MAAME,QAAQT,eAAeM;IAE7B,IAAIG,OAAO;QACT,MAAMC,QAAQX,SAASO;QACvB,IAAI,CAACI,OAAO;YACV,MAAM,IAAIC,MAAMT;QAClB;QAEA,OAAOJ,mBAAmB;YAACY;YAAOE,UAAU;QAAI;IAClD;IAEA,IAAI,CAACN,UAAUO,UAAU,IAAI,CAACP,UAAUQ,UAAU,EAAEJ,OAAO;QACzD,MAAM,IAAIC,MAAMR;IAClB;IAEA,IAAI,CAACI,WAAW;QACd,MAAM,IAAII,MAAMV;IAClB;IAEA,OAAOH,mBAAmB;QACxBiB,SAAST,UAAUO,UAAU;QAC7BH,OAAOJ,UAAUQ,UAAU,EAAEJ;QAC7BE,UAAU;QACVL;IACF;AACF"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { getProjectById, getProjectInvites } from '../../services/projects.js';
|
|
2
|
+
import { getMembers } from '../../services/user.js';
|
|
3
|
+
import { getPendingInvitations } from './getPendingInvitations.js';
|
|
4
|
+
import { usersDebug } from './usersDebug.js';
|
|
5
|
+
function getUserProps(user) {
|
|
6
|
+
const { createdAt: date, displayName: name } = user || {};
|
|
7
|
+
return {
|
|
8
|
+
date: date || '',
|
|
9
|
+
name: name || ''
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Get all members for a project
|
|
14
|
+
*
|
|
15
|
+
* @returns A list of all members for a project
|
|
16
|
+
*/ export async function getMembersForProject({ includeInvitations, includeRobots, projectId }) {
|
|
17
|
+
try {
|
|
18
|
+
const [pendingInvitations, project] = await Promise.all([
|
|
19
|
+
includeInvitations ? getProjectInvites(projectId).then(getPendingInvitations) : [],
|
|
20
|
+
getProjectById(projectId)
|
|
21
|
+
]);
|
|
22
|
+
const memberIds = project.members// Filter all the robot users if the robots flag is not set
|
|
23
|
+
.filter((member)=>!member.isRobot || includeRobots).map((member)=>member.id);
|
|
24
|
+
const users = await getMembers(memberIds).then((user)=>Array.isArray(user) ? user : [
|
|
25
|
+
user
|
|
26
|
+
]);
|
|
27
|
+
const projectMembers = project.members.map((member)=>{
|
|
28
|
+
return {
|
|
29
|
+
...member,
|
|
30
|
+
...getUserProps(users.find((candidate)=>candidate.id === member.id))
|
|
31
|
+
};
|
|
32
|
+
}).filter((member)=>!member.isRobot || includeRobots);
|
|
33
|
+
const members = [
|
|
34
|
+
...projectMembers,
|
|
35
|
+
...pendingInvitations
|
|
36
|
+
];
|
|
37
|
+
usersDebug(`Found ${projectMembers.length} project members for ${projectId}`);
|
|
38
|
+
usersDebug(`Found ${pendingInvitations.length} pending invitations for ${projectId}`);
|
|
39
|
+
return members;
|
|
40
|
+
} catch (error) {
|
|
41
|
+
throw new Error(`Error fetching members for ${projectId}`, {
|
|
42
|
+
cause: error
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
//# sourceMappingURL=getMembersForProject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/users/getMembersForProject.ts"],"sourcesContent":["import {getProjectById, getProjectInvites} from '../../services/projects.js'\nimport {getMembers} from '../../services/user.js'\nimport {getPendingInvitations} from './getPendingInvitations.js'\nimport {type User} from './types.js'\nimport {usersDebug} from './usersDebug.js'\n\ninterface GetMembersForProjectOptions {\n projectId: string\n\n /**\n * Whether to include pending invitations in the response\n */\n includeInvitations?: boolean\n\n /**\n * Whether to include robots in the response\n */\n includeRobots?: boolean\n}\n\nfunction getUserProps(user: User | undefined) {\n const {createdAt: date, displayName: name} = user || {}\n return {date: date || '', name: name || ''}\n}\n\ninterface MemberList {\n date: string\n id: string\n name: string\n role: string\n}\n\n/**\n * Get all members for a project\n *\n * @returns A list of all members for a project\n */\nexport async function getMembersForProject({\n includeInvitations,\n includeRobots,\n projectId,\n}: GetMembersForProjectOptions): Promise<MemberList[]> {\n try {\n const [pendingInvitations, project] = await Promise.all([\n includeInvitations ? getProjectInvites(projectId).then(getPendingInvitations) : [],\n getProjectById(projectId),\n ])\n\n const memberIds = project.members\n // Filter all the robot users if the robots flag is not set\n .filter((member) => !member.isRobot || includeRobots)\n .map((member) => member.id)\n\n const users = await getMembers(memberIds).then((user) => (Array.isArray(user) ? user : [user]))\n\n const projectMembers = project.members\n .map((member) => {\n return {\n ...member,\n ...getUserProps(users.find((candidate) => candidate.id === member.id)),\n }\n })\n .filter((member) => !member.isRobot || includeRobots)\n\n const members = [...projectMembers, ...pendingInvitations]\n\n usersDebug(`Found ${projectMembers.length} project members for ${projectId}`)\n usersDebug(`Found ${pendingInvitations.length} pending invitations for ${projectId}`)\n return members\n } catch (error) {\n throw new Error(`Error fetching members for ${projectId}`, {cause: error})\n }\n}\n"],"names":["getProjectById","getProjectInvites","getMembers","getPendingInvitations","usersDebug","getUserProps","user","createdAt","date","displayName","name","getMembersForProject","includeInvitations","includeRobots","projectId","pendingInvitations","project","Promise","all","then","memberIds","members","filter","member","isRobot","map","id","users","Array","isArray","projectMembers","find","candidate","length","error","Error","cause"],"mappings":"AAAA,SAAQA,cAAc,EAAEC,iBAAiB,QAAO,6BAA4B;AAC5E,SAAQC,UAAU,QAAO,yBAAwB;AACjD,SAAQC,qBAAqB,QAAO,6BAA4B;AAEhE,SAAQC,UAAU,QAAO,kBAAiB;AAgB1C,SAASC,aAAaC,IAAsB;IAC1C,MAAM,EAACC,WAAWC,IAAI,EAAEC,aAAaC,IAAI,EAAC,GAAGJ,QAAQ,CAAC;IACtD,OAAO;QAACE,MAAMA,QAAQ;QAAIE,MAAMA,QAAQ;IAAE;AAC5C;AASA;;;;CAIC,GACD,OAAO,eAAeC,qBAAqB,EACzCC,kBAAkB,EAClBC,aAAa,EACbC,SAAS,EACmB;IAC5B,IAAI;QACF,MAAM,CAACC,oBAAoBC,QAAQ,GAAG,MAAMC,QAAQC,GAAG,CAAC;YACtDN,qBAAqBX,kBAAkBa,WAAWK,IAAI,CAAChB,yBAAyB,EAAE;YAClFH,eAAec;SAChB;QAED,MAAMM,YAAYJ,QAAQK,OAAO,AAC/B,2DAA2D;SAC1DC,MAAM,CAAC,CAACC,SAAW,CAACA,OAAOC,OAAO,IAAIX,eACtCY,GAAG,CAAC,CAACF,SAAWA,OAAOG,EAAE;QAE5B,MAAMC,QAAQ,MAAMzB,WAAWkB,WAAWD,IAAI,CAAC,CAACb,OAAUsB,MAAMC,OAAO,CAACvB,QAAQA,OAAO;gBAACA;aAAK;QAE7F,MAAMwB,iBAAiBd,QAAQK,OAAO,CACnCI,GAAG,CAAC,CAACF;YACJ,OAAO;gBACL,GAAGA,MAAM;gBACT,GAAGlB,aAAasB,MAAMI,IAAI,CAAC,CAACC,YAAcA,UAAUN,EAAE,KAAKH,OAAOG,EAAE,EAAE;YACxE;QACF,GACCJ,MAAM,CAAC,CAACC,SAAW,CAACA,OAAOC,OAAO,IAAIX;QAEzC,MAAMQ,UAAU;eAAIS;eAAmBf;SAAmB;QAE1DX,WAAW,CAAC,MAAM,EAAE0B,eAAeG,MAAM,CAAC,qBAAqB,EAAEnB,WAAW;QAC5EV,WAAW,CAAC,MAAM,EAAEW,mBAAmBkB,MAAM,CAAC,yBAAyB,EAAEnB,WAAW;QACpF,OAAOO;IACT,EAAE,OAAOa,OAAO;QACd,MAAM,IAAIC,MAAM,CAAC,2BAA2B,EAAErB,WAAW,EAAE;YAACsB,OAAOF;QAAK;IAC1E;AACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get pending invitations
|
|
3
|
+
* @param invitations - List of invitations
|
|
4
|
+
* @returns List of pending invitations
|
|
5
|
+
* @internal
|
|
6
|
+
*/ export function getPendingInvitations(invitations) {
|
|
7
|
+
return invitations.filter((invite)=>!invite.isAccepted && !invite.isRevoked && !invite.acceptedByUserId).map((invite)=>({
|
|
8
|
+
date: invite.createdAt,
|
|
9
|
+
id: '<pending>',
|
|
10
|
+
name: invite.email,
|
|
11
|
+
role: invite.role
|
|
12
|
+
}));
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=getPendingInvitations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/users/getPendingInvitations.ts"],"sourcesContent":["import {type Invite} from './types.js'\n\n/**\n * Get pending invitations\n * @param invitations - List of invitations\n * @returns List of pending invitations\n * @internal\n */\nexport function getPendingInvitations(invitations: Invite[]) {\n return invitations\n .filter((invite) => !invite.isAccepted && !invite.isRevoked && !invite.acceptedByUserId)\n .map((invite) => ({\n date: invite.createdAt,\n id: '<pending>',\n name: invite.email,\n role: invite.role,\n }))\n}\n"],"names":["getPendingInvitations","invitations","filter","invite","isAccepted","isRevoked","acceptedByUserId","map","date","createdAt","id","name","email","role"],"mappings":"AAEA;;;;;CAKC,GACD,OAAO,SAASA,sBAAsBC,WAAqB;IACzD,OAAOA,YACJC,MAAM,CAAC,CAACC,SAAW,CAACA,OAAOC,UAAU,IAAI,CAACD,OAAOE,SAAS,IAAI,CAACF,OAAOG,gBAAgB,EACtFC,GAAG,CAAC,CAACJ,SAAY,CAAA;YAChBK,MAAML,OAAOM,SAAS;YACtBC,IAAI;YACJC,MAAMR,OAAOS,KAAK;YAClBC,MAAMV,OAAOU,IAAI;QACnB,CAAA;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/users/types.ts"],"sourcesContent":["export interface Invite {\n acceptedByUserId: string | null\n createdAt: string\n email: string\n isAccepted: boolean\n isRevoked: boolean\n role: string\n}\n\nexport interface User {\n createdAt: string\n displayName: string\n familyName: string | null\n\n givenName: string | null\n id: string\n imageUrl: string | null\n middleName: string | null\n\n projectId: string\n\n provider: string\n updatedAt: string | null\n}\n\nexport interface Role {\n appliesToRobots: boolean\n appliesToUsers: boolean\n grants: Record<string, Grant[] | undefined>\n isCustom: boolean\n name: string\n projectId: string\n title: string\n\n description?: string\n}\n\ninterface Grant {\n grants: unknown[]\n id: string\n isCustom: boolean\n name: string\n title: string\n\n description?: string\n}\n"],"names":[],"mappings":"AAyBA,WAUC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/users/usersDebug.ts"],"sourcesContent":["import {subdebug} from '@sanity/cli-core'\n\nexport const usersDebug = subdebug('users')\n"],"names":["subdebug","usersDebug"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,mBAAkB;AAEzC,OAAO,MAAMC,aAAaD,SAAS,SAAQ"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export function validateEmail(email) {
|
|
3
|
+
const trimmedEmail = email.trim();
|
|
4
|
+
if (!trimmedEmail) {
|
|
5
|
+
return 'Email is required';
|
|
6
|
+
}
|
|
7
|
+
const validatedEmail = z.string().email().safeParse(trimmedEmail);
|
|
8
|
+
if (!validatedEmail.success) {
|
|
9
|
+
return 'Please enter a valid email address';
|
|
10
|
+
}
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=validateEmail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/users/validateEmail.ts"],"sourcesContent":["import {z} from 'zod'\n\nexport function validateEmail(email: string): string | true {\n const trimmedEmail = email.trim()\n if (!trimmedEmail) {\n return 'Email is required'\n }\n\n const validatedEmail = z.string().email().safeParse(trimmedEmail)\n if (!validatedEmail.success) {\n return 'Please enter a valid email address'\n }\n\n return true\n}\n"],"names":["z","validateEmail","email","trimmedEmail","trim","validatedEmail","string","safeParse","success"],"mappings":"AAAA,SAAQA,CAAC,QAAO,MAAK;AAErB,OAAO,SAASC,cAAcC,KAAa;IACzC,MAAMC,eAAeD,MAAME,IAAI;IAC/B,IAAI,CAACD,cAAc;QACjB,OAAO;IACT;IAEA,MAAME,iBAAiBL,EAAEM,MAAM,GAAGJ,KAAK,GAAGK,SAAS,CAACJ;IACpD,IAAI,CAACE,eAAeG,OAAO,EAAE;QAC3B,OAAO;IACT;IAEA,OAAO;AACT"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import semver from 'semver';
|
|
2
|
+
import { getLocalPackageVersion } from '../../util/getLocalPackageVersion.js';
|
|
3
|
+
import { trimHashFromVersion } from '../../util/trimHashFromVersion.js';
|
|
4
|
+
import { tryFindLatestVersion } from './tryFindLatestVersion.js';
|
|
5
|
+
/**
|
|
6
|
+
* Check if a version is pinned.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
*/ function isPinnedVersion(version) {
|
|
10
|
+
return !!semver.valid(version);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Build an array of package versions.
|
|
14
|
+
*
|
|
15
|
+
* @internal
|
|
16
|
+
*/ export function buildPackageArray(packages, workDir, cliVersion) {
|
|
17
|
+
const modules = [];
|
|
18
|
+
const latest = tryFindLatestVersion('@sanity/cli');
|
|
19
|
+
modules.push({
|
|
20
|
+
declared: `^${cliVersion}`,
|
|
21
|
+
installed: Promise.resolve(trimHashFromVersion(cliVersion)),
|
|
22
|
+
isGlobal: true,
|
|
23
|
+
isPinned: false,
|
|
24
|
+
latest: latest.then((version)=>version),
|
|
25
|
+
name: '@sanity/cli'
|
|
26
|
+
});
|
|
27
|
+
return [
|
|
28
|
+
...modules,
|
|
29
|
+
...Object.keys(packages).map((pkgName)=>{
|
|
30
|
+
const latest = tryFindLatestVersion(pkgName);
|
|
31
|
+
const localVersion = getLocalPackageVersion(pkgName, workDir);
|
|
32
|
+
return {
|
|
33
|
+
declared: packages[pkgName],
|
|
34
|
+
installed: localVersion.then((version)=>version ? trimHashFromVersion(version) : undefined),
|
|
35
|
+
isGlobal: false,
|
|
36
|
+
isPinned: isPinnedVersion(packages[pkgName]),
|
|
37
|
+
latest: latest.then((version)=>version),
|
|
38
|
+
name: pkgName
|
|
39
|
+
};
|
|
40
|
+
})
|
|
41
|
+
];
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=buildPackageArray.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/versions/buildPackageArray.ts"],"sourcesContent":["import semver from 'semver'\n\nimport {getLocalPackageVersion} from '../../util/getLocalPackageVersion.js'\nimport {trimHashFromVersion} from '../../util/trimHashFromVersion.js'\nimport {tryFindLatestVersion} from './tryFindLatestVersion.js'\n\n/**\n * Check if a version is pinned.\n *\n * @internal\n */\nfunction isPinnedVersion(version: string): boolean {\n return !!semver.valid(version)\n}\n\n/**\n * @internal\n */\ninterface PromisedModuleVersionInfo {\n declared: string\n installed: Promise<string | undefined>\n isGlobal: boolean\n isPinned: boolean\n latest: Promise<string | undefined>\n name: string\n}\n\n/**\n * Build an array of package versions.\n *\n * @internal\n */\nexport function buildPackageArray(\n packages: Record<string, string>,\n workDir: string,\n cliVersion: string,\n): PromisedModuleVersionInfo[] {\n const modules = []\n const latest = tryFindLatestVersion('@sanity/cli')\n modules.push({\n declared: `^${cliVersion}`,\n installed: Promise.resolve(trimHashFromVersion(cliVersion)),\n isGlobal: true,\n isPinned: false,\n latest: latest.then((version) => version),\n name: '@sanity/cli',\n })\n\n return [\n ...modules,\n ...Object.keys(packages).map((pkgName) => {\n const latest = tryFindLatestVersion(pkgName)\n const localVersion = getLocalPackageVersion(pkgName, workDir)\n return {\n declared: packages[pkgName],\n installed: localVersion.then((version) =>\n version ? trimHashFromVersion(version) : undefined,\n ),\n isGlobal: false,\n isPinned: isPinnedVersion(packages[pkgName]),\n latest: latest.then((version) => version),\n name: pkgName,\n }\n }),\n ]\n}\n"],"names":["semver","getLocalPackageVersion","trimHashFromVersion","tryFindLatestVersion","isPinnedVersion","version","valid","buildPackageArray","packages","workDir","cliVersion","modules","latest","push","declared","installed","Promise","resolve","isGlobal","isPinned","then","name","Object","keys","map","pkgName","localVersion","undefined"],"mappings":"AAAA,OAAOA,YAAY,SAAQ;AAE3B,SAAQC,sBAAsB,QAAO,uCAAsC;AAC3E,SAAQC,mBAAmB,QAAO,oCAAmC;AACrE,SAAQC,oBAAoB,QAAO,4BAA2B;AAE9D;;;;CAIC,GACD,SAASC,gBAAgBC,OAAe;IACtC,OAAO,CAAC,CAACL,OAAOM,KAAK,CAACD;AACxB;AAcA;;;;CAIC,GACD,OAAO,SAASE,kBACdC,QAAgC,EAChCC,OAAe,EACfC,UAAkB;IAElB,MAAMC,UAAU,EAAE;IAClB,MAAMC,SAAST,qBAAqB;IACpCQ,QAAQE,IAAI,CAAC;QACXC,UAAU,CAAC,CAAC,EAAEJ,YAAY;QAC1BK,WAAWC,QAAQC,OAAO,CAACf,oBAAoBQ;QAC/CQ,UAAU;QACVC,UAAU;QACVP,QAAQA,OAAOQ,IAAI,CAAC,CAACf,UAAYA;QACjCgB,MAAM;IACR;IAEA,OAAO;WACFV;WACAW,OAAOC,IAAI,CAACf,UAAUgB,GAAG,CAAC,CAACC;YAC5B,MAAMb,SAAST,qBAAqBsB;YACpC,MAAMC,eAAezB,uBAAuBwB,SAAShB;YACrD,OAAO;gBACLK,UAAUN,QAAQ,CAACiB,QAAQ;gBAC3BV,WAAWW,aAAaN,IAAI,CAAC,CAACf,UAC5BA,UAAUH,oBAAoBG,WAAWsB;gBAE3CT,UAAU;gBACVC,UAAUf,gBAAgBI,QAAQ,CAACiB,QAAQ;gBAC3Cb,QAAQA,OAAOQ,IAAI,CAAC,CAACf,UAAYA;gBACjCgB,MAAMI;YACR;QACF;KACD;AACH"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Filter the sanity modules from the package.json.
|
|
3
|
+
*
|
|
4
|
+
* @param manifest - The package.json manifest.
|
|
5
|
+
* @returns The filtered sanity modules.
|
|
6
|
+
*/ export function filterSanityModules(manifest) {
|
|
7
|
+
const dependencies = {
|
|
8
|
+
...manifest.dependencies,
|
|
9
|
+
...manifest.devDependencies
|
|
10
|
+
};
|
|
11
|
+
const filteredDependencies = {};
|
|
12
|
+
for(const mod in dependencies){
|
|
13
|
+
if (mod.startsWith('@sanity/') || mod === 'sanity') {
|
|
14
|
+
filteredDependencies[mod] = dependencies[mod];
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return filteredDependencies;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=filterSanityModules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/versions/filterSanityModules.ts"],"sourcesContent":["import {type PackageJson} from '../../util/readPackageJson.js'\n\n/**\n * Filter the sanity modules from the package.json.\n *\n * @param manifest - The package.json manifest.\n * @returns The filtered sanity modules.\n */\nexport function filterSanityModules(manifest: Partial<PackageJson>): Record<string, string> {\n const dependencies = {\n ...manifest.dependencies,\n ...manifest.devDependencies,\n }\n\n const filteredDependencies: Record<string, string> = {}\n\n for (const mod in dependencies) {\n if (mod.startsWith('@sanity/') || mod === 'sanity') {\n filteredDependencies[mod] = dependencies[mod]\n }\n }\n\n return filteredDependencies\n}\n"],"names":["filterSanityModules","manifest","dependencies","devDependencies","filteredDependencies","mod","startsWith"],"mappings":"AAEA;;;;;CAKC,GACD,OAAO,SAASA,oBAAoBC,QAA8B;IAChE,MAAMC,eAAe;QACnB,GAAGD,SAASC,YAAY;QACxB,GAAGD,SAASE,eAAe;IAC7B;IAEA,MAAMC,uBAA+C,CAAC;IAEtD,IAAK,MAAMC,OAAOH,aAAc;QAC9B,IAAIG,IAAIC,UAAU,CAAC,eAAeD,QAAQ,UAAU;YAClDD,oBAAoB,CAACC,IAAI,GAAGH,YAAY,CAACG,IAAI;QAC/C;IACF;IAEA,OAAOD;AACT"}
|