@sanity/cli 5.1.1-next.5 → 6.0.0-alpha.3
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 +288 -2
- package/bin/run.cmd +3 -0
- package/bin/run.js +31 -0
- package/codemods/deskRename.js +115 -96
- package/codemods/partsTypeDirective.js +7 -7
- package/codemods/reactIconsV3.js +78 -51
- package/dist/SanityHelp.d.ts +4 -0
- package/dist/SanityHelp.js +43 -0
- package/dist/SanityHelp.js.map +1 -0
- package/dist/actions/auth/authServer.d.ts +33 -0
- package/dist/actions/auth/authServer.js +153 -0
- package/dist/actions/auth/authServer.js.map +1 -0
- package/dist/actions/auth/getProviderName.d.ts +8 -0
- package/dist/actions/auth/getProviderName.js +15 -0
- package/dist/actions/auth/getProviderName.js.map +1 -0
- package/dist/actions/auth/login/getProvider.d.ts +15 -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.d.ts +13 -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/index.d.ts +20 -0
- package/dist/actions/auth/login/index.js +93 -0
- package/dist/actions/auth/login/index.js.map +1 -0
- package/dist/actions/auth/login/promptProviders.d.ts +10 -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.d.ts +9 -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.d.ts +26 -0
- package/dist/actions/auth/types.js +7 -0
- package/dist/actions/auth/types.js.map +1 -0
- package/dist/actions/backup/archiveDir.d.ts +10 -0
- package/dist/actions/backup/archiveDir.js +43 -0
- package/dist/actions/backup/archiveDir.js.map +1 -0
- package/dist/actions/backup/assertDatasetExist.d.ts +8 -0
- package/dist/actions/backup/assertDatasetExist.js +16 -0
- package/dist/actions/backup/assertDatasetExist.js.map +1 -0
- package/dist/actions/backup/backupDownloadDebug.d.ts +1 -0
- package/dist/actions/backup/backupDownloadDebug.js +4 -0
- package/dist/actions/backup/backupDownloadDebug.js.map +1 -0
- package/dist/actions/backup/cleanupTmpDir.d.ts +6 -0
- package/dist/actions/backup/cleanupTmpDir.js +19 -0
- package/dist/actions/backup/cleanupTmpDir.js.map +1 -0
- package/dist/actions/backup/constants.d.ts +1 -0
- package/dist/actions/backup/constants.js +3 -0
- package/dist/actions/backup/constants.js.map +1 -0
- package/dist/actions/backup/downloadAsset.d.ts +9 -0
- package/dist/actions/backup/downloadAsset.js +54 -0
- package/dist/actions/backup/downloadAsset.js.map +1 -0
- package/dist/actions/backup/downloadDocument.d.ts +7 -0
- package/dist/actions/backup/downloadDocument.js +32 -0
- package/dist/actions/backup/downloadDocument.js.map +1 -0
- package/dist/actions/backup/fetchNextBackupPage.d.ts +23 -0
- package/dist/actions/backup/fetchNextBackupPage.js +48 -0
- package/dist/actions/backup/fetchNextBackupPage.js.map +1 -0
- package/dist/actions/backup/progressSpinner.d.ts +14 -0
- package/dist/actions/backup/progressSpinner.js +40 -0
- package/dist/actions/backup/progressSpinner.js.map +1 -0
- package/dist/actions/build/__tests__/buildApp.test.js +367 -0
- package/dist/actions/build/__tests__/buildApp.test.js.map +1 -0
- package/dist/actions/build/__tests__/buildStudio.test.js +561 -0
- package/dist/actions/build/__tests__/buildStudio.test.js.map +1 -0
- package/dist/actions/build/__tests__/checkRequiredDependencies.test.js +233 -0
- package/dist/actions/build/__tests__/checkRequiredDependencies.test.js.map +1 -0
- package/dist/actions/build/__tests__/checkStudioDependencyVersions.test.js +414 -0
- package/dist/actions/build/__tests__/checkStudioDependencyVersions.test.js.map +1 -0
- package/dist/actions/build/__tests__/determineBasePath.test.js +24 -0
- package/dist/actions/build/__tests__/determineBasePath.test.js.map +1 -0
- package/dist/actions/build/__tests__/getAutoUpdatesImportMap.test.js +109 -0
- package/dist/actions/build/__tests__/getAutoUpdatesImportMap.test.js.map +1 -0
- package/dist/actions/build/__tests__/getViteConfig.test.js +493 -0
- package/dist/actions/build/__tests__/getViteConfig.test.js.map +1 -0
- package/dist/actions/build/__tests__/renderDocument.test.js +278 -0
- package/dist/actions/build/__tests__/renderDocument.test.js.map +1 -0
- package/dist/actions/build/__tests__/shouldAutoUpdate.test.js +153 -0
- package/dist/actions/build/__tests__/shouldAutoUpdate.test.js.map +1 -0
- package/dist/actions/build/buildApp.d.ts +7 -0
- package/dist/actions/build/buildApp.js +159 -0
- package/dist/actions/build/buildApp.js.map +1 -0
- package/dist/actions/build/buildDebug.d.ts +1 -0
- package/dist/actions/build/buildDebug.js +4 -0
- package/dist/actions/build/buildDebug.js.map +1 -0
- package/dist/actions/build/buildStaticFiles.d.ts +35 -0
- package/dist/actions/build/buildStaticFiles.js +82 -0
- package/dist/actions/build/buildStaticFiles.js.map +1 -0
- package/dist/actions/build/buildStudio.d.ts +7 -0
- package/dist/actions/build/buildStudio.js +202 -0
- package/dist/actions/build/buildStudio.js.map +1 -0
- package/dist/actions/build/buildVendorDependencies.d.ts +11 -0
- package/dist/actions/build/buildVendorDependencies.js +179 -0
- package/dist/actions/build/buildVendorDependencies.js.map +1 -0
- package/dist/actions/build/checkRequiredDependencies.d.ts +22 -0
- package/dist/actions/build/checkRequiredDependencies.js +122 -0
- package/dist/actions/build/checkRequiredDependencies.js.map +1 -0
- package/dist/actions/build/checkStudioDependencyVersions.d.ts +2 -0
- package/dist/actions/build/checkStudioDependencyVersions.js +154 -0
- package/dist/actions/build/checkStudioDependencyVersions.js.map +1 -0
- package/dist/actions/build/createExternalFromImportMap.d.ts +11 -0
- package/dist/actions/build/createExternalFromImportMap.js +11 -0
- package/dist/actions/build/createExternalFromImportMap.js.map +1 -0
- package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.d.ts +6 -0
- package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.js +13 -0
- package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.js.map +1 -0
- package/dist/actions/build/decorateIndexWithBridgeScript.d.ts +8 -0
- package/dist/actions/build/decorateIndexWithBridgeScript.js +17 -0
- package/dist/actions/build/decorateIndexWithBridgeScript.js.map +1 -0
- package/dist/actions/build/determineBasePath.d.ts +7 -0
- package/dist/actions/build/determineBasePath.js +20 -0
- package/dist/actions/build/determineBasePath.js.map +1 -0
- package/dist/actions/build/generateWebManifest.d.ts +15 -0
- package/dist/actions/build/generateWebManifest.js +27 -0
- package/dist/actions/build/generateWebManifest.js.map +1 -0
- package/dist/actions/build/getAppEnvVars.d.ts +6 -0
- package/dist/actions/build/getAppEnvVars.js +9 -0
- package/dist/actions/build/getAppEnvVars.js.map +1 -0
- package/dist/actions/build/getAutoUpdatesImportMap.d.ts +21 -0
- package/dist/actions/build/getAutoUpdatesImportMap.js +57 -0
- package/dist/actions/build/getAutoUpdatesImportMap.js.map +1 -0
- package/dist/actions/build/getEntryModule.d.ts +7 -0
- package/dist/actions/build/getEntryModule.js +46 -0
- package/dist/actions/build/getEntryModule.js.map +1 -0
- package/dist/actions/build/getPossibleDocumentComponentLocations.d.ts +4 -0
- package/dist/actions/build/getPossibleDocumentComponentLocations.js +11 -0
- package/dist/actions/build/getPossibleDocumentComponentLocations.js.map +1 -0
- package/dist/actions/build/getStudioEnvVars.d.ts +6 -0
- package/dist/actions/build/getStudioEnvVars.js +9 -0
- package/dist/actions/build/getStudioEnvVars.js.map +1 -0
- package/dist/actions/build/getStudioEnvironmentVariables.d.ts +52 -0
- package/dist/actions/build/getStudioEnvironmentVariables.js +58 -0
- package/dist/actions/build/getStudioEnvironmentVariables.js.map +1 -0
- package/dist/actions/build/getViteConfig.d.ts +66 -0
- package/dist/actions/build/getViteConfig.js +180 -0
- package/dist/actions/build/getViteConfig.js.map +1 -0
- package/dist/actions/build/normalizeBasePath.d.ts +6 -0
- package/dist/actions/build/normalizeBasePath.js +9 -0
- package/dist/actions/build/normalizeBasePath.js.map +1 -0
- package/dist/actions/build/renderDocument.d.ts +15 -0
- package/dist/actions/build/renderDocument.js +54 -0
- package/dist/actions/build/renderDocument.js.map +1 -0
- package/dist/actions/build/renderDocument.worker.d.ts +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/__tests__/renderDocumentWorker.test.js +657 -0
- package/dist/actions/build/renderDocumentWorker/__tests__/renderDocumentWorker.test.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/addTimestampImportMapScriptToHtml.d.ts +6 -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.d.ts +19 -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.d.ts +13 -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.d.ts +2 -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.d.ts +3 -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.d.ts +3 -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.d.ts +5 -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.d.ts +8 -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.d.ts +21 -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.d.ts +8 -0
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.js +29 -0
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.js.map +1 -0
- package/dist/actions/build/renderDocumentWorker/types.d.ts +8 -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.d.ts +16 -0
- package/dist/actions/build/shouldAutoUpdate.js +35 -0
- package/dist/actions/build/shouldAutoUpdate.js.map +1 -0
- package/dist/actions/build/types.d.ts +13 -0
- package/dist/actions/build/types.js +3 -0
- package/dist/actions/build/types.js.map +1 -0
- package/dist/actions/build/writeFavicons.d.ts +1 -0
- package/dist/actions/build/writeFavicons.js +26 -0
- package/dist/actions/build/writeFavicons.js.map +1 -0
- package/dist/actions/build/writeSanityRuntime.d.ts +19 -0
- package/dist/actions/build/writeSanityRuntime.js +61 -0
- package/dist/actions/build/writeSanityRuntime.js.map +1 -0
- package/dist/actions/build/writeWebManifest.d.ts +4 -0
- package/dist/actions/build/writeWebManifest.js +12 -0
- package/dist/actions/build/writeWebManifest.js.map +1 -0
- package/dist/actions/codemods/deskRename.d.ts +2 -0
- package/dist/actions/codemods/deskRename.js +18 -0
- package/dist/actions/codemods/deskRename.js.map +1 -0
- package/dist/actions/codemods/index.d.ts +5 -0
- package/dist/actions/codemods/index.js +10 -0
- package/dist/actions/codemods/index.js.map +1 -0
- package/dist/actions/codemods/partsTypeDirective.d.ts +2 -0
- package/dist/actions/codemods/partsTypeDirective.js +27 -0
- package/dist/actions/codemods/partsTypeDirective.js.map +1 -0
- package/dist/actions/codemods/reactIconsV3.d.ts +2 -0
- package/dist/actions/codemods/reactIconsV3.js +30 -0
- package/dist/actions/codemods/reactIconsV3.js.map +1 -0
- package/dist/actions/codemods/types.d.ts +8 -0
- package/dist/actions/codemods/types.js +3 -0
- package/dist/actions/codemods/types.js.map +1 -0
- package/dist/actions/cors/constants.d.ts +1 -0
- package/dist/actions/cors/constants.js +3 -0
- package/dist/actions/cors/constants.js.map +1 -0
- package/dist/actions/cors/filterAndValidateOrigin.d.ts +7 -0
- package/dist/actions/cors/filterAndValidateOrigin.js +38 -0
- package/dist/actions/cors/filterAndValidateOrigin.js.map +1 -0
- package/dist/actions/cors/types.d.ts +9 -0
- package/dist/actions/cors/types.js +3 -0
- package/dist/actions/cors/types.js.map +1 -0
- package/dist/actions/dataset/__tests__/validateDatasetName.test.js +182 -0
- package/dist/actions/dataset/__tests__/validateDatasetName.test.js.map +1 -0
- package/dist/actions/dataset/processAliasName.d.ts +9 -0
- package/dist/actions/dataset/processAliasName.js +20 -0
- package/dist/actions/dataset/processAliasName.js.map +1 -0
- package/dist/actions/dataset/validateDatasetAliasName.d.ts +1 -0
- package/dist/actions/dataset/validateDatasetAliasName.js +28 -0
- package/dist/actions/dataset/validateDatasetAliasName.js.map +1 -0
- package/dist/actions/dataset/validateDatasetName.d.ts +13 -0
- package/dist/actions/dataset/validateDatasetName.js +39 -0
- package/dist/actions/dataset/validateDatasetName.js.map +1 -0
- package/dist/actions/debug/gatherDebugInfo.d.ts +2 -0
- package/dist/actions/debug/gatherDebugInfo.js +110 -0
- package/dist/actions/debug/gatherDebugInfo.js.map +1 -0
- package/dist/actions/debug/getGlobalConfigLocation.d.ts +1 -0
- package/dist/actions/debug/getGlobalConfigLocation.js +7 -0
- package/dist/actions/debug/getGlobalConfigLocation.js.map +1 -0
- package/dist/actions/debug/types.d.ts +32 -0
- package/dist/actions/debug/types.js +3 -0
- package/dist/actions/debug/types.js.map +1 -0
- package/dist/actions/deploy/__tests__/checkDir.test.js +120 -0
- package/dist/actions/deploy/__tests__/checkDir.test.js.map +1 -0
- package/dist/actions/deploy/checkDir.d.ts +8 -0
- package/dist/actions/deploy/checkDir.js +31 -0
- package/dist/actions/deploy/checkDir.js.map +1 -0
- package/dist/actions/deploy/createStudioUserApplication.d.ts +2 -0
- package/dist/actions/deploy/createStudioUserApplication.js +59 -0
- package/dist/actions/deploy/createStudioUserApplication.js.map +1 -0
- package/dist/actions/deploy/createUserApplicationForApp.d.ts +2 -0
- package/dist/actions/deploy/createUserApplicationForApp.js +56 -0
- package/dist/actions/deploy/createUserApplicationForApp.js.map +1 -0
- package/dist/actions/deploy/deployApp.d.ts +7 -0
- package/dist/actions/deploy/deployApp.js +145 -0
- package/dist/actions/deploy/deployApp.js.map +1 -0
- package/dist/actions/deploy/deployDebug.d.ts +1 -0
- package/dist/actions/deploy/deployDebug.js +4 -0
- package/dist/actions/deploy/deployDebug.js.map +1 -0
- package/dist/actions/deploy/deployStudio.d.ts +2 -0
- package/dist/actions/deploy/deployStudio.js +133 -0
- package/dist/actions/deploy/deployStudio.js.map +1 -0
- package/dist/actions/deploy/findUserApplicationForApp.d.ts +15 -0
- package/dist/actions/deploy/findUserApplicationForApp.js +110 -0
- package/dist/actions/deploy/findUserApplicationForApp.js.map +1 -0
- package/dist/actions/deploy/findUserApplicationForStudio.d.ts +13 -0
- package/dist/actions/deploy/findUserApplicationForStudio.js +143 -0
- package/dist/actions/deploy/findUserApplicationForStudio.js.map +1 -0
- package/dist/actions/deploy/types.d.ts +11 -0
- package/dist/actions/deploy/types.js +3 -0
- package/dist/actions/deploy/types.js.map +1 -0
- package/dist/actions/dev/devAction.d.ts +4 -0
- package/dist/actions/dev/devAction.js +7 -0
- package/dist/actions/dev/devAction.js.map +1 -0
- package/dist/actions/dev/devDebug.d.ts +1 -0
- package/dist/actions/dev/devDebug.js +4 -0
- package/dist/actions/dev/devDebug.js.map +1 -0
- package/dist/actions/dev/getCoreAppUrl.d.ts +5 -0
- package/dist/actions/dev/getCoreAppUrl.js +10 -0
- package/dist/actions/dev/getCoreAppUrl.js.map +1 -0
- package/dist/actions/dev/getDevServerConfig.d.ts +9 -0
- package/dist/actions/dev/getDevServerConfig.js +28 -0
- package/dist/actions/dev/getDevServerConfig.js.map +1 -0
- package/dist/actions/dev/startAppDevServer.d.ts +4 -0
- package/dist/actions/dev/startAppDevServer.js +54 -0
- package/dist/actions/dev/startAppDevServer.js.map +1 -0
- package/dist/actions/dev/startStudioDevServer.d.ts +4 -0
- package/dist/actions/dev/startStudioDevServer.js +155 -0
- package/dist/actions/dev/startStudioDevServer.js.map +1 -0
- package/dist/actions/dev/types.d.ts +12 -0
- package/dist/actions/dev/types.js +3 -0
- package/dist/actions/dev/types.js.map +1 -0
- package/dist/actions/docs/__tests__/normalizeDocsPath.test.js +16 -0
- package/dist/actions/docs/__tests__/normalizeDocsPath.test.js.map +1 -0
- package/dist/actions/docs/normalizeDocsPath.d.ts +8 -0
- package/dist/actions/docs/normalizeDocsPath.js +15 -0
- package/dist/actions/docs/normalizeDocsPath.js.map +1 -0
- package/dist/actions/documents/constants.d.ts +1 -0
- package/dist/actions/documents/constants.js +3 -0
- package/dist/actions/documents/constants.js.map +1 -0
- package/dist/actions/documents/editor.d.ts +11 -0
- package/dist/actions/documents/editor.js +26 -0
- package/dist/actions/documents/editor.js.map +1 -0
- package/dist/actions/documents/types.d.ts +2 -0
- package/dist/actions/documents/types.js +3 -0
- package/dist/actions/documents/types.js.map +1 -0
- package/dist/actions/documents/validate.d.ts +28 -0
- package/dist/actions/documents/validate.js +51 -0
- package/dist/actions/documents/validate.js.map +1 -0
- package/dist/actions/documents/validation/reporters/index.d.ts +5 -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.d.ts +2 -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.d.ts +2 -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/__tests__/formatDocumentValidation.test.js +124 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/__tests__/formatDocumentValidation.test.js.map +1 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.d.ts +10 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js +61 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js.map +1 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/index.d.ts +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.d.ts +5 -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.d.ts +53 -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/execScript.d.ts +11 -0
- package/dist/actions/exec/execScript.js +73 -0
- package/dist/actions/exec/execScript.js.map +1 -0
- package/dist/actions/graphql/__tests__/getGraphQLAPIs.test.js +274 -0
- package/dist/actions/graphql/__tests__/getGraphQLAPIs.test.js.map +1 -0
- package/dist/actions/graphql/getGraphQLAPIs.d.ts +2 -0
- package/dist/actions/graphql/getGraphQLAPIs.js +65 -0
- package/dist/actions/graphql/getGraphQLAPIs.js.map +1 -0
- package/dist/actions/graphql/getGraphQLAPIs.worker.d.ts +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/types.d.ts +68 -0
- package/dist/actions/graphql/types.js +3 -0
- package/dist/actions/graphql/types.js.map +1 -0
- package/dist/actions/hook/constants.d.ts +1 -0
- package/dist/actions/hook/constants.js +3 -0
- package/dist/actions/hook/constants.js.map +1 -0
- package/dist/actions/hook/formatFailure.d.ts +4 -0
- package/dist/actions/hook/formatFailure.js +29 -0
- package/dist/actions/hook/formatFailure.js.map +1 -0
- package/dist/actions/hook/types.d.ts +78 -0
- package/dist/actions/hook/types.js +3 -0
- package/dist/actions/hook/types.js.map +1 -0
- package/dist/actions/init/constants.d.ts +1 -0
- package/dist/actions/init/constants.js +3 -0
- package/dist/actions/init/constants.js.map +1 -0
- package/dist/actions/init/determineAppTemplate.d.ts +9 -0
- package/dist/actions/init/determineAppTemplate.js +16 -0
- package/dist/actions/init/determineAppTemplate.js.map +1 -0
- package/dist/actions/init/remoteTemplate.d.ts +23 -0
- package/dist/actions/init/remoteTemplate.js +249 -0
- package/dist/actions/init/remoteTemplate.js.map +1 -0
- package/dist/actions/manifest/SchemaIcon.d.ts +9 -0
- package/dist/actions/manifest/SchemaIcon.js +21 -0
- package/dist/actions/manifest/SchemaIcon.js.map +1 -0
- package/dist/actions/manifest/extractManifest.d.ts +14 -0
- package/dist/actions/manifest/extractManifest.js +96 -0
- package/dist/actions/manifest/extractManifest.js.map +1 -0
- package/dist/actions/manifest/extractWorkspaceManifest.d.ts +3 -0
- package/dist/actions/manifest/extractWorkspaceManifest.js +406 -0
- package/dist/actions/manifest/extractWorkspaceManifest.js.map +1 -0
- package/dist/actions/manifest/purifyConfig.d.ts +10 -0
- package/dist/actions/manifest/purifyConfig.js +307 -0
- package/dist/actions/manifest/purifyConfig.js.map +1 -0
- package/dist/actions/manifest/schemaTypeHelpers.d.ts +17 -0
- package/dist/actions/manifest/schemaTypeHelpers.js +110 -0
- package/dist/actions/manifest/schemaTypeHelpers.js.map +1 -0
- package/dist/actions/manifest/types.d.ts +114 -0
- package/dist/actions/manifest/types.js +5 -0
- package/dist/actions/manifest/types.js.map +1 -0
- package/dist/actions/mcp/detectAvailableEditors.d.ts +8 -0
- package/dist/actions/mcp/detectAvailableEditors.js +70 -0
- package/dist/actions/mcp/detectAvailableEditors.js.map +1 -0
- package/dist/actions/mcp/getEditorsWithExistingConfig.d.ts +8 -0
- package/dist/actions/mcp/getEditorsWithExistingConfig.js +29 -0
- package/dist/actions/mcp/getEditorsWithExistingConfig.js.map +1 -0
- package/dist/actions/mcp/writeMCPConfig.d.ts +9 -0
- package/dist/actions/mcp/writeMCPConfig.js +46 -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/__tests__/importMedia.test.js +182 -0
- package/dist/actions/media/__tests__/importMedia.test.js.map +1 -0
- package/dist/actions/media/getMediaLibraryConfig.d.ts +2 -0
- package/dist/actions/media/getMediaLibraryConfig.js +5 -0
- package/dist/actions/media/getMediaLibraryConfig.js.map +1 -0
- package/dist/actions/media/importAspects.d.ts +52 -0
- package/dist/actions/media/importAspects.js +111 -0
- package/dist/actions/media/importAspects.js.map +1 -0
- package/dist/actions/media/importMedia.d.ts +55 -0
- package/dist/actions/media/importMedia.js +213 -0
- package/dist/actions/media/importMedia.js.map +1 -0
- package/dist/actions/media/importMediaDebug.d.ts +1 -0
- package/dist/actions/media/importMediaDebug.js +4 -0
- package/dist/actions/media/importMediaDebug.js.map +1 -0
- package/dist/actions/migration/getMigrationRootDirectory.d.ts +2 -0
- package/dist/actions/migration/getMigrationRootDirectory.js +14 -0
- package/dist/actions/migration/getMigrationRootDirectory.js.map +1 -0
- package/dist/actions/migration/resolveMigrations.d.ts +19 -0
- package/dist/actions/migration/resolveMigrations.js +43 -0
- package/dist/actions/migration/resolveMigrations.js.map +1 -0
- package/dist/actions/migration/templates/__tests__/minimalAdvanced.test.js +65 -0
- package/dist/actions/migration/templates/__tests__/minimalAdvanced.test.js.map +1 -0
- package/dist/actions/migration/templates/__tests__/minimalSimple.test.js +145 -0
- package/dist/actions/migration/templates/__tests__/minimalSimple.test.js.map +1 -0
- package/dist/actions/migration/templates/__tests__/renameField.test.js +63 -0
- package/dist/actions/migration/templates/__tests__/renameField.test.js.map +1 -0
- package/dist/actions/migration/templates/__tests__/renameType.test.js +61 -0
- package/dist/actions/migration/templates/__tests__/renameType.test.js.map +1 -0
- package/dist/actions/migration/templates/__tests__/stringToPTE.test.js +87 -0
- package/dist/actions/migration/templates/__tests__/stringToPTE.test.js.map +1 -0
- package/dist/actions/migration/templates/index.d.ts +5 -0
- package/dist/actions/migration/templates/index.js +7 -0
- package/dist/actions/migration/templates/index.js.map +1 -0
- package/dist/actions/migration/templates/minimalAdvanced.d.ts +4 -0
- package/dist/actions/migration/templates/minimalAdvanced.js +21 -0
- package/dist/actions/migration/templates/minimalAdvanced.js.map +1 -0
- package/dist/actions/migration/templates/minimalSimple.d.ts +4 -0
- package/dist/actions/migration/templates/minimalSimple.js +61 -0
- package/dist/actions/migration/templates/minimalSimple.js.map +1 -0
- package/dist/actions/migration/templates/renameField.d.ts +4 -0
- package/dist/actions/migration/templates/renameField.js +20 -0
- package/dist/actions/migration/templates/renameField.js.map +1 -0
- package/dist/actions/migration/templates/renameType.d.ts +4 -0
- package/dist/actions/migration/templates/renameType.js +19 -0
- package/dist/actions/migration/templates/renameType.js.map +1 -0
- package/dist/actions/migration/templates/stringToPTE.d.ts +4 -0
- package/dist/actions/migration/templates/stringToPTE.js +32 -0
- package/dist/actions/migration/templates/stringToPTE.js.map +1 -0
- package/dist/actions/preview/getPreviewServerConfig.d.ts +15 -0
- package/dist/actions/preview/getPreviewServerConfig.js +16 -0
- package/dist/actions/preview/getPreviewServerConfig.js.map +1 -0
- package/dist/actions/preview/previewAction.d.ts +10 -0
- package/dist/actions/preview/previewAction.js +19 -0
- package/dist/actions/preview/previewAction.js.map +1 -0
- package/dist/actions/preview/types.d.ts +2 -0
- package/dist/actions/preview/types.js +3 -0
- package/dist/actions/preview/types.js.map +1 -0
- package/dist/actions/schema/__tests__/deleteSchemaAction.test.js +294 -0
- package/dist/actions/schema/__tests__/deleteSchemaAction.test.js.map +1 -0
- package/dist/actions/schema/__tests__/formatSchemaValidation.test.js +174 -0
- package/dist/actions/schema/__tests__/formatSchemaValidation.test.js.map +1 -0
- package/dist/actions/schema/__tests__/validateAction.test.js +281 -0
- package/dist/actions/schema/__tests__/validateAction.test.js.map +1 -0
- package/dist/actions/schema/deleteSchemaAction.d.ts +15 -0
- package/dist/actions/schema/deleteSchemaAction.js +106 -0
- package/dist/actions/schema/deleteSchemaAction.js.map +1 -0
- package/dist/actions/schema/extract.d.ts +7 -0
- package/dist/actions/schema/extract.js +38 -0
- package/dist/actions/schema/extract.js.map +1 -0
- package/dist/actions/schema/formatSchemaValidation.d.ts +3 -0
- package/dist/actions/schema/formatSchemaValidation.js +62 -0
- package/dist/actions/schema/formatSchemaValidation.js.map +1 -0
- package/dist/actions/schema/metafile.d.ts +21 -0
- package/dist/actions/schema/metafile.js +51 -0
- package/dist/actions/schema/metafile.js.map +1 -0
- package/dist/actions/schema/schemaStoreConstants.d.ts +1 -0
- package/dist/actions/schema/schemaStoreConstants.js +4 -0
- package/dist/actions/schema/schemaStoreConstants.js.map +1 -0
- package/dist/actions/schema/schemaStoreTypes.d.ts +29 -0
- package/dist/actions/schema/schemaStoreTypes.js +19 -0
- package/dist/actions/schema/schemaStoreTypes.js.map +1 -0
- package/dist/actions/schema/utils/manifestExtractor.d.ts +14 -0
- package/dist/actions/schema/utils/manifestExtractor.js +38 -0
- package/dist/actions/schema/utils/manifestExtractor.js.map +1 -0
- package/dist/actions/schema/utils/manifestReader.d.ts +24 -0
- package/dist/actions/schema/utils/manifestReader.js +77 -0
- package/dist/actions/schema/utils/manifestReader.js.map +1 -0
- package/dist/actions/schema/utils/schemaActionHelpers.d.ts +1 -0
- package/dist/actions/schema/utils/schemaActionHelpers.js +5 -0
- package/dist/actions/schema/utils/schemaActionHelpers.js.map +1 -0
- package/dist/actions/schema/utils/schemaApiClient.d.ts +6 -0
- package/dist/actions/schema/utils/schemaApiClient.js +17 -0
- package/dist/actions/schema/utils/schemaApiClient.js.map +1 -0
- package/dist/actions/schema/utils/schemaStoreOutStrings.d.ts +3 -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.d.ts +81 -0
- package/dist/actions/schema/utils/schemaStoreValidation.js +195 -0
- package/dist/actions/schema/utils/schemaStoreValidation.js.map +1 -0
- package/dist/actions/schema/utils/workspaceSchemaId.d.ts +8 -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.d.ts +11 -0
- package/dist/actions/schema/validateAction.js +81 -0
- package/dist/actions/schema/validateAction.js.map +1 -0
- package/dist/actions/telemetry/__tests__/fetchTelemetryConsent.test.js +27 -0
- package/dist/actions/telemetry/__tests__/fetchTelemetryConsent.test.js.map +1 -0
- package/dist/actions/telemetry/fetchTelemetryConsent.d.ts +11 -0
- package/dist/actions/telemetry/fetchTelemetryConsent.js +38 -0
- package/dist/actions/telemetry/fetchTelemetryConsent.js.map +1 -0
- package/dist/actions/telemetry/getLearnMoreMessage.d.ts +2 -0
- package/dist/actions/telemetry/getLearnMoreMessage.js +15 -0
- package/dist/actions/telemetry/getLearnMoreMessage.js.map +1 -0
- package/dist/actions/telemetry/getStatusDisplay.d.ts +2 -0
- package/dist/actions/telemetry/getStatusDisplay.js +26 -0
- package/dist/actions/telemetry/getStatusDisplay.js.map +1 -0
- package/dist/actions/telemetry/getStatusMessage.d.ts +2 -0
- package/dist/actions/telemetry/getStatusMessage.js +36 -0
- package/dist/actions/telemetry/getStatusMessage.js.map +1 -0
- package/dist/actions/telemetry/isValidApiConsentStatus.d.ts +20 -0
- package/dist/actions/telemetry/isValidApiConsentStatus.js +25 -0
- package/dist/actions/telemetry/isValidApiConsentStatus.js.map +1 -0
- package/dist/actions/telemetry/resolveConsent.d.ts +10 -0
- package/dist/actions/telemetry/resolveConsent.js +49 -0
- package/dist/actions/telemetry/resolveConsent.js.map +1 -0
- package/dist/actions/telemetry/setConsent.d.ts +16 -0
- package/dist/actions/telemetry/setConsent.js +87 -0
- package/dist/actions/telemetry/setConsent.js.map +1 -0
- package/dist/actions/telemetry/telemetryDebug.d.ts +1 -0
- package/dist/actions/telemetry/telemetryDebug.js +4 -0
- package/dist/actions/telemetry/telemetryDebug.js.map +1 -0
- package/dist/actions/telemetry/telemetryDisclosure.d.ts +1 -0
- package/dist/actions/telemetry/telemetryDisclosure.js +33 -0
- package/dist/actions/telemetry/telemetryDisclosure.js.map +1 -0
- package/dist/actions/telemetry/telemetryLearnMoreMessage.d.ts +2 -0
- package/dist/actions/telemetry/telemetryLearnMoreMessage.js +15 -0
- package/dist/actions/telemetry/telemetryLearnMoreMessage.js.map +1 -0
- package/dist/actions/telemetry/types.d.ts +14 -0
- package/dist/actions/telemetry/types.js +3 -0
- package/dist/actions/telemetry/types.js.map +1 -0
- package/dist/actions/tokens/constants.d.ts +4 -0
- package/dist/actions/tokens/constants.js +5 -0
- package/dist/actions/tokens/constants.js.map +1 -0
- package/dist/actions/tokens/types.d.ts +32 -0
- package/dist/actions/tokens/types.js +3 -0
- package/dist/actions/tokens/types.js.map +1 -0
- package/dist/actions/tokens/validateRole.d.ts +9 -0
- package/dist/actions/tokens/validateRole.js +23 -0
- package/dist/actions/tokens/validateRole.js.map +1 -0
- package/dist/actions/undeploy/getStudioOrAppUserApplication.d.ts +9 -0
- package/dist/actions/undeploy/getStudioOrAppUserApplication.js +36 -0
- package/dist/actions/undeploy/getStudioOrAppUserApplication.js.map +1 -0
- package/dist/actions/users/__tests__/validateEmail.test.js +16 -0
- package/dist/actions/users/__tests__/validateEmail.test.js.map +1 -0
- package/dist/actions/users/apiVersion.d.ts +6 -0
- package/dist/actions/users/apiVersion.js +7 -0
- package/dist/actions/users/apiVersion.js.map +1 -0
- package/dist/actions/users/getMembersForProject.d.ts +26 -0
- package/dist/actions/users/getMembersForProject.js +58 -0
- package/dist/actions/users/getMembersForProject.js.map +1 -0
- package/dist/actions/users/getPendingInvitations.d.ts +13 -0
- package/dist/actions/users/getPendingInvitations.js +15 -0
- package/dist/actions/users/getPendingInvitations.js.map +1 -0
- package/dist/actions/users/types.d.ts +50 -0
- package/dist/actions/users/types.js +3 -0
- package/dist/actions/users/types.js.map +1 -0
- package/dist/actions/users/usersDebug.d.ts +1 -0
- package/dist/actions/users/usersDebug.js +4 -0
- package/dist/actions/users/usersDebug.js.map +1 -0
- package/dist/actions/users/validateEmail.d.ts +1 -0
- package/dist/actions/users/validateEmail.js +14 -0
- package/dist/actions/users/validateEmail.js.map +1 -0
- package/dist/actions/versions/buildPackageArray.d.ts +18 -0
- package/dist/actions/versions/buildPackageArray.js +44 -0
- package/dist/actions/versions/buildPackageArray.js.map +1 -0
- package/dist/actions/versions/filterSanityModules.d.ts +8 -0
- package/dist/actions/versions/filterSanityModules.js +20 -0
- package/dist/actions/versions/filterSanityModules.js.map +1 -0
- package/dist/actions/versions/findSanityModulesVersions.d.ts +14 -0
- package/dist/actions/versions/findSanityModulesVersions.js +47 -0
- package/dist/actions/versions/findSanityModulesVersions.js.map +1 -0
- package/dist/actions/versions/getFormatters.d.ts +17 -0
- package/dist/actions/versions/getFormatters.js +30 -0
- package/dist/actions/versions/getFormatters.js.map +1 -0
- package/dist/actions/versions/tryFindLatestVersion.d.ts +8 -0
- package/dist/actions/versions/tryFindLatestVersion.js +21 -0
- package/dist/actions/versions/tryFindLatestVersion.js.map +1 -0
- package/dist/actions/versions/types.d.ts +14 -0
- package/dist/actions/versions/types.js +5 -0
- package/dist/actions/versions/types.js.map +1 -0
- package/dist/actions/versions/versionsDebug.d.ts +1 -0
- package/dist/actions/versions/versionsDebug.js +4 -0
- package/dist/actions/versions/versionsDebug.js.map +1 -0
- package/dist/commands/__tests__/blueprints.test.js +54 -0
- package/dist/commands/__tests__/blueprints.test.js.map +1 -0
- package/dist/commands/__tests__/build.test.js +132 -0
- package/dist/commands/__tests__/build.test.js.map +1 -0
- package/dist/commands/__tests__/codemod.test.js +271 -0
- package/dist/commands/__tests__/codemod.test.js.map +1 -0
- package/dist/commands/__tests__/debug.test.js +697 -0
- package/dist/commands/__tests__/debug.test.js.map +1 -0
- package/dist/commands/__tests__/deploy.test.js +1913 -0
- package/dist/commands/__tests__/deploy.test.js.map +1 -0
- package/dist/commands/__tests__/dev.test.js +410 -0
- package/dist/commands/__tests__/dev.test.js.map +1 -0
- package/dist/commands/__tests__/exec.test.js +207 -0
- package/dist/commands/__tests__/exec.test.js.map +1 -0
- package/dist/commands/__tests__/init.test.js +411 -0
- package/dist/commands/__tests__/init.test.js.map +1 -0
- package/dist/commands/__tests__/install.test.js +258 -0
- package/dist/commands/__tests__/install.test.js.map +1 -0
- package/dist/commands/__tests__/learn.test.js +29 -0
- package/dist/commands/__tests__/learn.test.js.map +1 -0
- package/dist/commands/__tests__/logout.test.js +88 -0
- package/dist/commands/__tests__/logout.test.js.map +1 -0
- package/dist/commands/__tests__/manage.test.js +105 -0
- package/dist/commands/__tests__/manage.test.js.map +1 -0
- package/dist/commands/__tests__/preview.test.js +261 -0
- package/dist/commands/__tests__/preview.test.js.map +1 -0
- package/dist/commands/__tests__/start.test.js +253 -0
- package/dist/commands/__tests__/start.test.js.map +1 -0
- package/dist/commands/__tests__/undeploy.test.js +382 -0
- package/dist/commands/__tests__/undeploy.test.js.map +1 -0
- package/dist/commands/__tests__/versions.test.js +134 -0
- package/dist/commands/__tests__/versions.test.js.map +1 -0
- package/dist/commands/backup/__tests__/disable.test.js +207 -0
- package/dist/commands/backup/__tests__/disable.test.js.map +1 -0
- package/dist/commands/backup/__tests__/download.test.js +679 -0
- package/dist/commands/backup/__tests__/download.test.js.map +1 -0
- package/dist/commands/backup/__tests__/enable.test.js +317 -0
- package/dist/commands/backup/__tests__/enable.test.js.map +1 -0
- package/dist/commands/backup/__tests__/list.test.js +321 -0
- package/dist/commands/backup/__tests__/list.test.js.map +1 -0
- package/dist/commands/backup/disable.d.ts +13 -0
- package/dist/commands/backup/disable.js +99 -0
- package/dist/commands/backup/disable.js.map +1 -0
- package/dist/commands/backup/download.d.ts +21 -0
- package/dist/commands/backup/download.js +291 -0
- package/dist/commands/backup/download.js.map +1 -0
- package/dist/commands/backup/enable.d.ts +12 -0
- package/dist/commands/backup/enable.js +105 -0
- package/dist/commands/backup/enable.js.map +1 -0
- package/dist/commands/backup/list.d.ts +19 -0
- package/dist/commands/backup/list.js +188 -0
- package/dist/commands/backup/list.js.map +1 -0
- package/dist/commands/build.d.ts +18 -0
- package/dist/commands/build.js +82 -0
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/codemod.d.ts +19 -0
- package/dist/commands/codemod.js +141 -0
- package/dist/commands/codemod.js.map +1 -0
- package/dist/commands/cors/__tests__/add.test.js +346 -0
- package/dist/commands/cors/__tests__/add.test.js.map +1 -0
- package/dist/commands/cors/__tests__/delete.test.js +293 -0
- package/dist/commands/cors/__tests__/delete.test.js.map +1 -0
- package/dist/commands/cors/__tests__/list.test.js +218 -0
- package/dist/commands/cors/__tests__/list.test.js.map +1 -0
- package/dist/commands/cors/add.d.ts +29 -0
- package/dist/commands/cors/add.js +158 -0
- package/dist/commands/cors/add.js.map +1 -0
- package/dist/commands/cors/delete.d.ts +13 -0
- package/dist/commands/cors/delete.js +98 -0
- package/dist/commands/cors/delete.js.map +1 -0
- package/dist/commands/cors/list.d.ts +9 -0
- package/dist/commands/cors/list.js +48 -0
- package/dist/commands/cors/list.js.map +1 -0
- package/dist/commands/dataset/__tests__/copy.test.js +520 -0
- package/dist/commands/dataset/__tests__/copy.test.js.map +1 -0
- package/dist/commands/dataset/__tests__/create.test.js +312 -0
- package/dist/commands/dataset/__tests__/create.test.js.map +1 -0
- package/dist/commands/dataset/__tests__/delete.test.js +224 -0
- package/dist/commands/dataset/__tests__/delete.test.js.map +1 -0
- package/dist/commands/dataset/__tests__/export.test.js +561 -0
- package/dist/commands/dataset/__tests__/export.test.js.map +1 -0
- package/dist/commands/dataset/__tests__/import.test.js +53 -0
- package/dist/commands/dataset/__tests__/import.test.js.map +1 -0
- package/dist/commands/dataset/__tests__/list.test.js +174 -0
- package/dist/commands/dataset/__tests__/list.test.js.map +1 -0
- package/dist/commands/dataset/alias/__tests__/create.test.js +299 -0
- package/dist/commands/dataset/alias/__tests__/create.test.js.map +1 -0
- package/dist/commands/dataset/alias/__tests__/delete.test.js +236 -0
- package/dist/commands/dataset/alias/__tests__/delete.test.js.map +1 -0
- package/dist/commands/dataset/alias/__tests__/link.test.js +336 -0
- package/dist/commands/dataset/alias/__tests__/link.test.js.map +1 -0
- package/dist/commands/dataset/alias/__tests__/unlink.test.js +298 -0
- package/dist/commands/dataset/alias/__tests__/unlink.test.js.map +1 -0
- package/dist/commands/dataset/alias/create.d.ts +13 -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.d.ts +16 -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.d.ts +17 -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.d.ts +16 -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.d.ts +27 -0
- package/dist/commands/dataset/copy.js +368 -0
- package/dist/commands/dataset/copy.js.map +1 -0
- package/dist/commands/dataset/create.d.ts +17 -0
- package/dist/commands/dataset/create.js +145 -0
- package/dist/commands/dataset/create.js.map +1 -0
- package/dist/commands/dataset/delete.d.ts +15 -0
- package/dist/commands/dataset/delete.js +94 -0
- package/dist/commands/dataset/delete.js.map +1 -0
- package/dist/commands/dataset/export.d.ts +26 -0
- package/dist/commands/dataset/export.js +272 -0
- package/dist/commands/dataset/export.js.map +1 -0
- package/dist/commands/dataset/import.d.ts +1 -0
- package/dist/commands/dataset/import.js +3 -0
- package/dist/commands/dataset/import.js.map +1 -0
- package/dist/commands/dataset/list.d.ts +9 -0
- package/dist/commands/dataset/list.js +50 -0
- package/dist/commands/dataset/list.js.map +1 -0
- package/dist/commands/dataset/visibility/__tests__/get.test.js +147 -0
- package/dist/commands/dataset/visibility/__tests__/get.test.js.map +1 -0
- package/dist/commands/dataset/visibility/__tests__/set.test.js +245 -0
- package/dist/commands/dataset/visibility/__tests__/set.test.js.map +1 -0
- package/dist/commands/dataset/visibility/get.d.ts +12 -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.d.ts +13 -0
- package/dist/commands/dataset/visibility/set.js +88 -0
- package/dist/commands/dataset/visibility/set.js.map +1 -0
- package/dist/commands/debug.d.ts +9 -0
- package/dist/commands/debug.js +97 -0
- package/dist/commands/debug.js.map +1 -0
- package/dist/commands/deploy.d.ts +23 -0
- package/dist/commands/deploy.js +115 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/dev.d.ts +14 -0
- package/dist/commands/dev.js +63 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/docs/__tests__/browse.test.js +29 -0
- package/dist/commands/docs/__tests__/browse.test.js.map +1 -0
- package/dist/commands/docs/__tests__/read.test.js +78 -0
- package/dist/commands/docs/__tests__/read.test.js.map +1 -0
- package/dist/commands/docs/__tests__/search.test.js +254 -0
- package/dist/commands/docs/__tests__/search.test.js.map +1 -0
- package/dist/commands/docs/browse.d.ts +6 -0
- package/dist/commands/docs/browse.js +15 -0
- package/dist/commands/docs/browse.js.map +1 -0
- package/dist/commands/docs/read.d.ts +15 -0
- package/dist/commands/docs/read.js +81 -0
- package/dist/commands/docs/read.js.map +1 -0
- package/dist/commands/docs/search.d.ts +15 -0
- package/dist/commands/docs/search.js +110 -0
- package/dist/commands/docs/search.js.map +1 -0
- package/dist/commands/documents/__tests__/create.test.js +967 -0
- package/dist/commands/documents/__tests__/create.test.js.map +1 -0
- package/dist/commands/documents/__tests__/delete.test.js +268 -0
- package/dist/commands/documents/__tests__/delete.test.js.map +1 -0
- package/dist/commands/documents/__tests__/get.test.js +209 -0
- package/dist/commands/documents/__tests__/get.test.js.map +1 -0
- package/dist/commands/documents/__tests__/query.test.js +405 -0
- package/dist/commands/documents/__tests__/query.test.js.map +1 -0
- package/dist/commands/documents/__tests__/validate.test.js +226 -0
- package/dist/commands/documents/__tests__/validate.test.js.map +1 -0
- package/dist/commands/documents/create.d.ts +38 -0
- package/dist/commands/documents/create.js +337 -0
- package/dist/commands/documents/create.js.map +1 -0
- package/dist/commands/documents/delete.d.ts +17 -0
- package/dist/commands/documents/delete.js +105 -0
- package/dist/commands/documents/delete.js.map +1 -0
- package/dist/commands/documents/get.d.ts +16 -0
- package/dist/commands/documents/get.js +86 -0
- package/dist/commands/documents/get.js.map +1 -0
- package/dist/commands/documents/query.d.ts +19 -0
- package/dist/commands/documents/query.js +106 -0
- package/dist/commands/documents/query.js.map +1 -0
- package/dist/commands/documents/validate.d.ts +29 -0
- package/dist/commands/documents/validate.js +158 -0
- package/dist/commands/documents/validate.js.map +1 -0
- package/dist/commands/exec.d.ts +19 -0
- package/dist/commands/exec.js +54 -0
- package/dist/commands/exec.js.map +1 -0
- package/dist/commands/graphql/__tests__/list.test.js +228 -0
- package/dist/commands/graphql/__tests__/list.test.js.map +1 -0
- package/dist/commands/graphql/__tests__/undeploy.test.js +384 -0
- package/dist/commands/graphql/__tests__/undeploy.test.js.map +1 -0
- package/dist/commands/graphql/list.d.ts +9 -0
- package/dist/commands/graphql/list.js +53 -0
- package/dist/commands/graphql/list.js.map +1 -0
- package/dist/commands/graphql/undeploy.d.ts +16 -0
- package/dist/commands/graphql/undeploy.js +148 -0
- package/dist/commands/graphql/undeploy.js.map +1 -0
- package/dist/commands/hook/__tests__/attempt.test.js +260 -0
- package/dist/commands/hook/__tests__/attempt.test.js.map +1 -0
- package/dist/commands/hook/__tests__/create.test.js +121 -0
- package/dist/commands/hook/__tests__/create.test.js.map +1 -0
- package/dist/commands/hook/__tests__/delete.test.js +220 -0
- package/dist/commands/hook/__tests__/delete.test.js.map +1 -0
- package/dist/commands/hook/__tests__/list.test.js +138 -0
- package/dist/commands/hook/__tests__/list.test.js.map +1 -0
- package/dist/commands/hook/__tests__/logs.test.js +770 -0
- package/dist/commands/hook/__tests__/logs.test.js.map +1 -0
- package/dist/commands/hook/attempt.d.ts +13 -0
- package/dist/commands/hook/attempt.js +66 -0
- package/dist/commands/hook/attempt.js.map +1 -0
- package/dist/commands/hook/create.d.ts +9 -0
- package/dist/commands/hook/create.js +50 -0
- package/dist/commands/hook/create.js.map +1 -0
- package/dist/commands/hook/delete.d.ts +13 -0
- package/dist/commands/hook/delete.js +98 -0
- package/dist/commands/hook/delete.js.map +1 -0
- package/dist/commands/hook/list.d.ts +9 -0
- package/dist/commands/hook/list.js +52 -0
- package/dist/commands/hook/list.js.map +1 -0
- package/dist/commands/hook/logs.d.ts +19 -0
- package/dist/commands/hook/logs.js +184 -0
- package/dist/commands/hook/logs.js.map +1 -0
- package/dist/commands/init.d.ts +46 -0
- package/dist/commands/init.js +397 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/install.d.ts +10 -0
- package/dist/commands/install.js +43 -0
- package/dist/commands/install.js.map +1 -0
- package/dist/commands/learn.d.ts +6 -0
- package/dist/commands/learn.js +15 -0
- package/dist/commands/learn.js.map +1 -0
- package/dist/commands/login.d.ts +13 -0
- package/dist/commands/login.js +50 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/logout.d.ts +6 -0
- package/dist/commands/logout.js +37 -0
- package/dist/commands/logout.js.map +1 -0
- package/dist/commands/manage.d.ts +6 -0
- package/dist/commands/manage.js +28 -0
- package/dist/commands/manage.js.map +1 -0
- package/dist/commands/manifest/__tests__/extract.test.js +123 -0
- package/dist/commands/manifest/__tests__/extract.test.js.map +1 -0
- package/dist/commands/manifest/extract.d.ts +12 -0
- package/dist/commands/manifest/extract.js +44 -0
- package/dist/commands/manifest/extract.js.map +1 -0
- package/dist/commands/mcp/__tests__/configure.test.js +397 -0
- package/dist/commands/mcp/__tests__/configure.test.js.map +1 -0
- package/dist/commands/mcp/configure.d.ts +9 -0
- package/dist/commands/mcp/configure.js +89 -0
- package/dist/commands/mcp/configure.js.map +1 -0
- package/dist/commands/media/__tests__/create-aspect.test.js +160 -0
- package/dist/commands/media/__tests__/create-aspect.test.js.map +1 -0
- package/dist/commands/media/__tests__/delete-aspect.test.js +333 -0
- package/dist/commands/media/__tests__/delete-aspect.test.js.map +1 -0
- package/dist/commands/media/__tests__/deploy-aspect.test.js +632 -0
- package/dist/commands/media/__tests__/deploy-aspect.test.js.map +1 -0
- package/dist/commands/media/__tests__/export.test.js +398 -0
- package/dist/commands/media/__tests__/export.test.js.map +1 -0
- package/dist/commands/media/__tests__/import.test.js +281 -0
- package/dist/commands/media/__tests__/import.test.js.map +1 -0
- package/dist/commands/media/create-aspect.d.ts +9 -0
- package/dist/commands/media/create-aspect.js +87 -0
- package/dist/commands/media/create-aspect.js.map +1 -0
- package/dist/commands/media/delete-aspect.d.ts +16 -0
- package/dist/commands/media/delete-aspect.js +84 -0
- package/dist/commands/media/delete-aspect.js.map +1 -0
- package/dist/commands/media/deploy-aspect.d.ts +20 -0
- package/dist/commands/media/deploy-aspect.js +150 -0
- package/dist/commands/media/deploy-aspect.js.map +1 -0
- package/dist/commands/media/export.d.ts +21 -0
- package/dist/commands/media/export.js +211 -0
- package/dist/commands/media/export.js.map +1 -0
- package/dist/commands/media/import.d.ts +18 -0
- package/dist/commands/media/import.js +160 -0
- package/dist/commands/media/import.js.map +1 -0
- package/dist/commands/migration/__tests__/create.test.js +296 -0
- package/dist/commands/migration/__tests__/create.test.js.map +1 -0
- package/dist/commands/migration/__tests__/list.test.js +166 -0
- package/dist/commands/migration/__tests__/list.test.js.map +1 -0
- package/dist/commands/migration/__tests__/run.test.js +481 -0
- package/dist/commands/migration/__tests__/run.test.js.map +1 -0
- package/dist/commands/migration/create.d.ts +17 -0
- package/dist/commands/migration/create.js +143 -0
- package/dist/commands/migration/create.js.map +1 -0
- package/dist/commands/migration/list.d.ts +9 -0
- package/dist/commands/migration/list.js +61 -0
- package/dist/commands/migration/list.js.map +1 -0
- package/dist/commands/migration/run.d.ts +26 -0
- package/dist/commands/migration/run.js +271 -0
- package/dist/commands/migration/run.js.map +1 -0
- package/dist/commands/openapi/__tests__/get.test.js +149 -0
- package/dist/commands/openapi/__tests__/get.test.js.map +1 -0
- package/dist/commands/openapi/__tests__/list.test.js +113 -0
- package/dist/commands/openapi/__tests__/list.test.js.map +1 -0
- package/dist/commands/openapi/get.d.ts +17 -0
- package/dist/commands/openapi/get.js +83 -0
- package/dist/commands/openapi/get.js.map +1 -0
- package/dist/commands/openapi/list.d.ts +14 -0
- package/dist/commands/openapi/list.js +80 -0
- package/dist/commands/openapi/list.js.map +1 -0
- package/dist/commands/preview.d.ts +17 -0
- package/dist/commands/preview.js +74 -0
- package/dist/commands/preview.js.map +1 -0
- package/dist/commands/projects/__tests__/list.test.js +153 -0
- package/dist/commands/projects/__tests__/list.test.js.map +1 -0
- package/dist/commands/projects/list.d.ts +13 -0
- package/dist/commands/projects/list.js +80 -0
- package/dist/commands/projects/list.js.map +1 -0
- package/dist/commands/schema/__tests__/delete.test.js +209 -0
- package/dist/commands/schema/__tests__/delete.test.js.map +1 -0
- package/dist/commands/schema/__tests__/extract.test.js +113 -0
- package/dist/commands/schema/__tests__/extract.test.js.map +1 -0
- package/dist/commands/schema/__tests__/validate.test.js +104 -0
- package/dist/commands/schema/__tests__/validate.test.js.map +1 -0
- package/dist/commands/schema/delete.d.ts +16 -0
- package/dist/commands/schema/delete.js +94 -0
- package/dist/commands/schema/delete.js.map +1 -0
- package/dist/commands/schema/extract.d.ts +15 -0
- package/dist/commands/schema/extract.js +51 -0
- package/dist/commands/schema/extract.js.map +1 -0
- package/dist/commands/schema/validate.d.ts +15 -0
- package/dist/commands/schema/validate.js +65 -0
- package/dist/commands/schema/validate.js.map +1 -0
- package/dist/commands/telemetry/__tests__/disable.test.js +145 -0
- package/dist/commands/telemetry/__tests__/disable.test.js.map +1 -0
- package/dist/commands/telemetry/__tests__/enable.test.js +131 -0
- package/dist/commands/telemetry/__tests__/enable.test.js.map +1 -0
- package/dist/commands/telemetry/__tests__/status.test.js +153 -0
- package/dist/commands/telemetry/__tests__/status.test.js.map +1 -0
- package/dist/commands/telemetry/disable.d.ts +8 -0
- package/dist/commands/telemetry/disable.js +34 -0
- package/dist/commands/telemetry/disable.js.map +1 -0
- package/dist/commands/telemetry/enable.d.ts +8 -0
- package/dist/commands/telemetry/enable.js +34 -0
- package/dist/commands/telemetry/enable.js.map +1 -0
- package/dist/commands/telemetry/status.d.ts +8 -0
- package/dist/commands/telemetry/status.js +27 -0
- package/dist/commands/telemetry/status.js.map +1 -0
- package/dist/commands/tokens/__tests__/add.test.js +420 -0
- package/dist/commands/tokens/__tests__/add.test.js.map +1 -0
- package/dist/commands/tokens/__tests__/delete.test.js +375 -0
- package/dist/commands/tokens/__tests__/delete.test.js.map +1 -0
- package/dist/commands/tokens/__tests__/list.test.js +368 -0
- package/dist/commands/tokens/__tests__/list.test.js.map +1 -0
- package/dist/commands/tokens/add.d.ts +19 -0
- package/dist/commands/tokens/add.js +137 -0
- package/dist/commands/tokens/add.js.map +1 -0
- package/dist/commands/tokens/delete.d.ts +17 -0
- package/dist/commands/tokens/delete.js +107 -0
- package/dist/commands/tokens/delete.js.map +1 -0
- package/dist/commands/tokens/list.d.ts +12 -0
- package/dist/commands/tokens/list.js +92 -0
- package/dist/commands/tokens/list.js.map +1 -0
- package/dist/commands/undeploy.d.ts +8 -0
- package/dist/commands/undeploy.js +92 -0
- package/dist/commands/undeploy.js.map +1 -0
- package/dist/commands/users/__tests__/invite.test.js +341 -0
- package/dist/commands/users/__tests__/invite.test.js.map +1 -0
- package/dist/commands/users/__tests__/list.test.js +401 -0
- package/dist/commands/users/__tests__/list.test.js.map +1 -0
- package/dist/commands/users/invite.d.ts +17 -0
- package/dist/commands/users/invite.js +111 -0
- package/dist/commands/users/invite.js.map +1 -0
- package/dist/commands/users/list.d.ts +16 -0
- package/dist/commands/users/list.js +104 -0
- package/dist/commands/users/list.js.map +1 -0
- package/dist/commands/versions.d.ts +6 -0
- package/dist/commands/versions.js +27 -0
- package/dist/commands/versions.js.map +1 -0
- package/dist/config/createCliConfig.d.ts +64 -0
- package/dist/config/createCliConfig.js +8 -0
- package/dist/config/createCliConfig.js.map +1 -0
- package/dist/config/defineCliConfig.d.ts +3 -0
- package/dist/config/defineCliConfig.js +5 -0
- package/dist/config/defineCliConfig.js.map +1 -0
- package/dist/hooks/prerun/__tests__/setupTelemetry.test.js +77 -0
- package/dist/hooks/prerun/__tests__/setupTelemetry.test.js.map +1 -0
- package/dist/hooks/prerun/setupTelemetry.d.ts +2 -0
- package/dist/hooks/prerun/setupTelemetry.js +7 -0
- package/dist/hooks/prerun/setupTelemetry.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/promptForDataset.d.ts +17 -0
- package/dist/prompts/promptForDataset.js +32 -0
- package/dist/prompts/promptForDataset.js.map +1 -0
- package/dist/prompts/promptForDatasetAliasName.d.ts +4 -0
- package/dist/prompts/promptForDatasetAliasName.js +17 -0
- package/dist/prompts/promptForDatasetAliasName.js.map +1 -0
- package/dist/prompts/promptForDatasetName.d.ts +4 -0
- package/dist/prompts/promptForDatasetName.js +17 -0
- package/dist/prompts/promptForDatasetName.js.map +1 -0
- package/dist/prompts/promptForMediaLibrary.d.ts +15 -0
- package/dist/prompts/promptForMediaLibrary.js +37 -0
- package/dist/prompts/promptForMediaLibrary.js.map +1 -0
- package/dist/prompts/selectDataset.d.ts +3 -0
- package/dist/prompts/selectDataset.js +12 -0
- package/dist/prompts/selectDataset.js.map +1 -0
- package/dist/prompts/selectMediaLibrary.d.ts +5 -0
- package/dist/prompts/selectMediaLibrary.js +34 -0
- package/dist/prompts/selectMediaLibrary.js.map +1 -0
- package/dist/server/devServer.d.ts +24 -0
- package/dist/server/devServer.js +53 -0
- package/dist/server/devServer.js.map +1 -0
- package/dist/server/gracefulServerDeath.d.ts +3 -0
- package/dist/server/gracefulServerDeath.js +12 -0
- package/dist/server/gracefulServerDeath.js.map +1 -0
- package/dist/server/previewServer.d.ts +19 -0
- package/dist/server/previewServer.js +87 -0
- package/dist/server/previewServer.js.map +1 -0
- package/dist/server/serverDebug.d.ts +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.d.ts +2 -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.d.ts +9 -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.d.ts +17 -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.d.ts +2 -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/__tests__/datasetAliases.test.js +131 -0
- package/dist/services/__tests__/datasetAliases.test.js.map +1 -0
- package/dist/services/__tests__/datasets.test.js +436 -0
- package/dist/services/__tests__/datasets.test.js.map +1 -0
- package/dist/services/__tests__/graphql.test.js +43 -0
- package/dist/services/__tests__/graphql.test.js.map +1 -0
- package/dist/services/__tests__/mediaLibraries.test.js +88 -0
- package/dist/services/__tests__/mediaLibraries.test.js.map +1 -0
- package/dist/services/__tests__/projects.test.js +41 -0
- package/dist/services/__tests__/projects.test.js.map +1 -0
- package/dist/services/__tests__/userApplications.test.js +113 -0
- package/dist/services/__tests__/userApplications.test.js.map +1 -0
- package/dist/services/auth.d.ts +2 -0
- package/dist/services/auth.js +13 -0
- package/dist/services/auth.js.map +1 -0
- package/dist/services/backup.d.ts +29 -0
- package/dist/services/backup.js +32 -0
- package/dist/services/backup.js.map +1 -0
- package/dist/services/datasetAliases.d.ts +31 -0
- package/dist/services/datasetAliases.js +64 -0
- package/dist/services/datasetAliases.js.map +1 -0
- package/dist/services/datasets.d.ts +64 -0
- package/dist/services/datasets.js +153 -0
- package/dist/services/datasets.js.map +1 -0
- package/dist/services/docs.d.ts +15 -0
- package/dist/services/docs.js +46 -0
- package/dist/services/docs.js.map +1 -0
- package/dist/services/getProjectFeatures.d.ts +5 -0
- package/dist/services/getProjectFeatures.js +16 -0
- package/dist/services/getProjectFeatures.js.map +1 -0
- package/dist/services/graphql.d.ts +16 -0
- package/dist/services/graphql.js +21 -0
- package/dist/services/graphql.js.map +1 -0
- package/dist/services/hooks.d.ts +14 -0
- package/dist/services/hooks.js +40 -0
- package/dist/services/hooks.js.map +1 -0
- package/dist/services/mcp.d.ts +29 -0
- package/dist/services/mcp.js +34 -0
- package/dist/services/mcp.js.map +1 -0
- package/dist/services/mediaLibraries.d.ts +52 -0
- package/dist/services/mediaLibraries.js +74 -0
- package/dist/services/mediaLibraries.js.map +1 -0
- package/dist/services/plans.d.ts +2 -0
- package/dist/services/plans.js +37 -0
- package/dist/services/plans.js.map +1 -0
- package/dist/services/projects.d.ts +2 -0
- package/dist/services/projects.js +12 -0
- package/dist/services/projects.js.map +1 -0
- package/dist/services/tokens.d.ts +43 -0
- package/dist/services/tokens.js +72 -0
- package/dist/services/tokens.js.map +1 -0
- package/dist/services/userApplications.d.ts +75 -0
- package/dist/services/userApplications.js +160 -0
- package/dist/services/userApplications.js.map +1 -0
- package/dist/threads/configClient.d.ts +1 -0
- package/dist/threads/configClient.js +9 -0
- package/dist/threads/configClient.js.map +1 -0
- package/dist/threads/registerBrowserEnv.d.ts +1 -0
- package/dist/threads/registerBrowserEnv.js +17 -0
- package/dist/threads/registerBrowserEnv.js.map +1 -0
- package/dist/threads/validateDocuments.d.ts +45 -0
- package/dist/threads/validateDocuments.js +251 -0
- package/dist/threads/validateDocuments.js.map +1 -0
- package/dist/threads/validateSchema.d.ts +35 -0
- package/dist/threads/validateSchema.js +115 -0
- package/dist/threads/validateSchema.js.map +1 -0
- package/dist/types.d.ts +16 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/util/__tests__/appId.test.js +31 -0
- package/dist/util/__tests__/appId.test.js.map +1 -0
- package/dist/util/__tests__/cliClient.test.js +184 -0
- package/dist/util/__tests__/cliClient.test.js.map +1 -0
- package/dist/util/__tests__/compareDependencyVersions.test.js +426 -0
- package/dist/util/__tests__/compareDependencyVersions.test.js.map +1 -0
- package/dist/util/__tests__/extractDocumentsFromNdjsonOrTarball.test.js +74 -0
- package/dist/util/__tests__/extractDocumentsFromNdjsonOrTarball.test.js.map +1 -0
- package/dist/util/__tests__/findNdjsonEntry.test.js +54 -0
- package/dist/util/__tests__/findNdjsonEntry.test.js.map +1 -0
- package/dist/util/__tests__/getCliVersion.test.js +28 -0
- package/dist/util/__tests__/getCliVersion.test.js.map +1 -0
- package/dist/util/__tests__/getLocalPackageVersion.test.js +84 -0
- package/dist/util/__tests__/getLocalPackageVersion.test.js.map +1 -0
- package/dist/util/__tests__/getWorkspace.test.js +37 -0
- package/dist/util/__tests__/getWorkspace.test.js.map +1 -0
- package/dist/util/__tests__/readPackageJson.test.js +69 -0
- package/dist/util/__tests__/readPackageJson.test.js.map +1 -0
- package/dist/util/__tests__/warnAboutMissingAppId.test.js +28 -0
- package/dist/util/__tests__/warnAboutMissingAppId.test.js.map +1 -0
- package/dist/util/absolutify.d.ts +6 -0
- package/dist/util/absolutify.js +26 -0
- package/dist/util/absolutify.js.map +1 -0
- package/dist/util/appId.d.ts +18 -0
- package/dist/util/appId.js +58 -0
- package/dist/util/appId.js.map +1 -0
- package/dist/util/canLaunchBrowser.d.ts +1 -0
- package/dist/util/canLaunchBrowser.js +14 -0
- package/dist/util/canLaunchBrowser.js.map +1 -0
- package/dist/util/cliClient.d.ts +13 -0
- package/dist/util/cliClient.js +40 -0
- package/dist/util/cliClient.js.map +1 -0
- package/dist/util/compareDependencyVersions.d.ts +35 -0
- package/dist/util/compareDependencyVersions.js +73 -0
- package/dist/util/compareDependencyVersions.js.map +1 -0
- package/dist/util/copyDir.d.ts +20 -0
- package/dist/util/copyDir.js +63 -0
- package/dist/util/copyDir.js.map +1 -0
- package/dist/util/determineIsApp.d.ts +7 -0
- package/dist/util/determineIsApp.js +9 -0
- package/dist/util/determineIsApp.js.map +1 -0
- package/dist/util/dirIsEmptyOrNonExistent.d.ts +1 -0
- package/dist/util/dirIsEmptyOrNonExistent.js +18 -0
- package/dist/util/dirIsEmptyOrNonExistent.js.map +1 -0
- package/dist/util/ensureTrailingSlash.d.ts +9 -0
- package/dist/util/ensureTrailingSlash.js +12 -0
- package/dist/util/ensureTrailingSlash.js.map +1 -0
- package/dist/util/errorMessages.d.ts +3 -0
- package/dist/util/errorMessages.js +5 -0
- package/dist/util/errorMessages.js.map +1 -0
- package/dist/util/extractDocumentsFromNdjsonOrTarball.d.ts +6 -0
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js +88 -0
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js.map +1 -0
- package/dist/util/findNdjsonEntry.d.ts +7 -0
- package/dist/util/findNdjsonEntry.js +21 -0
- package/dist/util/findNdjsonEntry.js.map +1 -0
- package/dist/util/formatSize.d.ts +6 -0
- package/dist/util/formatSize.js +10 -0
- package/dist/util/formatSize.js.map +1 -0
- package/dist/util/getCliVersion.d.ts +7 -0
- package/dist/util/getCliVersion.js +28 -0
- package/dist/util/getCliVersion.js.map +1 -0
- package/dist/util/getErrorMessage.d.ts +8 -0
- package/dist/util/getErrorMessage.js +19 -0
- package/dist/util/getErrorMessage.js.map +1 -0
- package/dist/util/getLocalPackageVersion.d.ts +9 -0
- package/dist/util/getLocalPackageVersion.js +32 -0
- package/dist/util/getLocalPackageVersion.js.map +1 -0
- package/dist/util/getSharedServerConfig.d.ts +30 -0
- package/dist/util/getSharedServerConfig.js +31 -0
- package/dist/util/getSharedServerConfig.js.map +1 -0
- package/dist/util/getWorkspace.d.ts +3 -0
- package/dist/util/getWorkspace.js +18 -0
- package/dist/util/getWorkspace.js.map +1 -0
- package/dist/util/humanFileSize.d.ts +1 -0
- package/dist/util/humanFileSize.js +12 -0
- package/dist/util/humanFileSize.js.map +1 -0
- package/dist/util/importStudioConfig.d.ts +1 -0
- package/dist/util/importStudioConfig.js +43 -0
- package/dist/util/importStudioConfig.js.map +1 -0
- package/dist/util/isPathDirName.d.ts +1 -0
- package/dist/util/isPathDirName.js +6 -0
- package/dist/util/isPathDirName.js.map +1 -0
- package/dist/util/isSanityDocumentish.d.ts +19 -0
- package/dist/util/isSanityDocumentish.js +20 -0
- package/dist/util/isSanityDocumentish.js.map +1 -0
- package/dist/util/loadEnv.d.ts +1 -0
- package/dist/util/loadEnv.js +8 -0
- package/dist/util/loadEnv.js.map +1 -0
- package/dist/util/migration/constants.d.ts +3 -0
- package/dist/util/migration/constants.js +10 -0
- package/dist/util/migration/constants.js.map +1 -0
- package/dist/util/migration/ensureApiVersionFormat.d.ts +9 -0
- package/dist/util/migration/ensureApiVersionFormat.js +16 -0
- package/dist/util/migration/ensureApiVersionFormat.js.map +1 -0
- package/dist/util/migration/prettyMutationFormatter.d.ts +8 -0
- package/dist/util/migration/prettyMutationFormatter.js +141 -0
- package/dist/util/migration/prettyMutationFormatter.js.map +1 -0
- package/dist/util/moduleFormatUtils.d.ts +3 -0
- package/dist/util/moduleFormatUtils.js +18 -0
- package/dist/util/moduleFormatUtils.js.map +1 -0
- package/dist/util/packageManager/__tests__/installPackages.test.js +388 -0
- package/dist/util/packageManager/__tests__/installPackages.test.js.map +1 -0
- package/dist/util/packageManager/installPackages.d.ts +18 -0
- package/dist/util/packageManager/installPackages.js +87 -0
- package/dist/util/packageManager/installPackages.js.map +1 -0
- package/dist/util/packageManager/packageManagerChoice.d.ts +29 -0
- package/dist/util/packageManager/packageManagerChoice.js +173 -0
- package/dist/util/packageManager/packageManagerChoice.js.map +1 -0
- package/dist/util/packageManager/upgradePackages.d.ts +17 -0
- package/dist/util/packageManager/upgradePackages.js +69 -0
- package/dist/util/packageManager/upgradePackages.js.map +1 -0
- package/dist/util/pluralize.d.ts +8 -0
- package/dist/util/pluralize.js +11 -0
- package/dist/util/pluralize.js.map +1 -0
- package/dist/util/readModuleVersion.d.ts +8 -0
- package/dist/util/readModuleVersion.js +15 -0
- package/dist/util/readModuleVersion.js.map +1 -0
- package/dist/util/readPackageJson.d.ts +45 -0
- package/dist/util/readPackageJson.js +42 -0
- package/dist/util/readPackageJson.js.map +1 -0
- package/dist/util/readPackageManifest.d.ts +21 -0
- package/dist/util/readPackageManifest.js +46 -0
- package/dist/util/readPackageManifest.js.map +1 -0
- package/dist/util/toInt.d.ts +1 -0
- package/dist/util/toInt.js +9 -0
- package/dist/util/toInt.js.map +1 -0
- package/dist/util/trimHashFromVersion.d.ts +5 -0
- package/dist/util/trimHashFromVersion.js +8 -0
- package/dist/util/trimHashFromVersion.js.map +1 -0
- package/dist/util/validation/ __tests__/validateDocuments.test.js +274 -0
- package/dist/util/validation/ __tests__/validateDocuments.test.js.map +1 -0
- package/dist/util/validation/validateDocumentsUtils.d.ts +12 -0
- package/dist/util/validation/validateDocumentsUtils.js +33 -0
- package/dist/util/validation/validateDocumentsUtils.js.map +1 -0
- package/dist/util/warnAboutMissingAppId.d.ts +7 -0
- package/dist/util/warnAboutMissingAppId.js +11 -0
- package/dist/util/warnAboutMissingAppId.js.map +1 -0
- package/dist/util/workerChannels.d.ts +59 -0
- package/dist/util/workerChannels.js +172 -0
- package/dist/util/workerChannels.js.map +1 -0
- package/dist/utils/migration/resolveMigrationScript.d.ts +44 -0
- package/dist/utils/migration/resolveMigrationScript.js +74 -0
- package/dist/utils/migration/resolveMigrationScript.js.map +1 -0
- package/oclif.config.js +11 -0
- package/oclif.manifest.json +3957 -0
- package/package.json +120 -100
- package/bin/dev.js +0 -30
- package/bin/sanity +0 -14
- package/lib/_chunks-cjs/cli.js +0 -70981
- 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 -162
- 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/cli.d.ts +0 -28
- package/lib/cli.js +0 -10
- package/lib/cli.js.map +0 -1
- package/lib/index.d.ts +0 -512
- package/lib/index.js +0 -44
- 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 -23
- package/lib/workers/typegenGenerate.js +0 -47
- package/lib/workers/typegenGenerate.js.map +0 -1
- package/templates/app-quickstart/src/App.css +0 -18
- package/templates/app-quickstart/src/App.tsx +0 -25
- package/templates/app-quickstart/src/ExampleComponent.css +0 -90
- package/templates/app-quickstart/src/ExampleComponent.tsx +0 -37
- package/templates/app-sanity-ui/src/App.tsx +0 -34
- package/templates/app-sanity-ui/src/ExampleComponent.tsx +0 -33
- package/templates/app-sanity-ui/src/SanityUI.tsx +0 -23
- package/templates/blog/README.md +0 -11
- package/templates/blog/schemaTypes/author.js +0 -50
- package/templates/blog/schemaTypes/blockContent.js +0 -67
- package/templates/blog/schemaTypes/category.js +0 -19
- package/templates/blog/schemaTypes/index.js +0 -6
- package/templates/blog/schemaTypes/post.js +0 -65
- package/templates/blog/static/.gitkeep +0 -1
- package/templates/clean/README.md +0 -9
- package/templates/clean/schemaTypes/index.js +0 -1
- package/templates/clean/static/.gitkeep +0 -1
- package/templates/ecommerce/README.md +0 -11
- package/templates/ecommerce/plugins/.gitkeep +0 -1
- package/templates/ecommerce/plugins/barcode-input/BarcodeInput.js +0 -62
- package/templates/ecommerce/plugins/barcode-input/index.js +0 -9
- package/templates/ecommerce/plugins/barcode-input/schemaType.js +0 -60
- package/templates/ecommerce/schemaTypes/blockContent.js +0 -67
- package/templates/ecommerce/schemaTypes/category.js +0 -39
- package/templates/ecommerce/schemaTypes/index.js +0 -23
- package/templates/ecommerce/schemaTypes/locale/localeBlockContent.js +0 -19
- package/templates/ecommerce/schemaTypes/locale/localeString.js +0 -19
- package/templates/ecommerce/schemaTypes/locale/localeText.js +0 -19
- package/templates/ecommerce/schemaTypes/locale/supportedLanguages.js +0 -5
- package/templates/ecommerce/schemaTypes/product.js +0 -83
- package/templates/ecommerce/schemaTypes/productVariant.js +0 -52
- package/templates/ecommerce/schemaTypes/vendor.js +0 -39
- package/templates/ecommerce/static/.gitkeep +0 -1
- package/templates/get-started/README.md +0 -9
- package/templates/get-started/plugins/.gitkeep +0 -1
- package/templates/get-started/plugins/sanity-plugin-tutorial/CustomDefaultLayout.tsx +0 -16
- package/templates/get-started/plugins/sanity-plugin-tutorial/GetStartedTutorial.tsx +0 -104
- package/templates/get-started/plugins/sanity-plugin-tutorial/index.ts +0 -11
- package/templates/get-started/schemaTypes/index.ts +0 -1
- package/templates/get-started/static/.gitkeep +0 -1
- package/templates/moviedb/README.md +0 -10
- package/templates/moviedb/schemaTypes/blockContent.js +0 -67
- package/templates/moviedb/schemaTypes/castMember.js +0 -37
- package/templates/moviedb/schemaTypes/crewMember.js +0 -52
- package/templates/moviedb/schemaTypes/index.js +0 -22
- package/templates/moviedb/schemaTypes/movie.js +0 -85
- package/templates/moviedb/schemaTypes/person.js +0 -37
- package/templates/moviedb/schemaTypes/plotSummaries.js +0 -20
- package/templates/moviedb/schemaTypes/plotSummary.js +0 -24
- package/templates/moviedb/schemaTypes/screening.js +0 -81
- package/templates/moviedb/static/.gitkeep +0 -1
- package/templates/quickstart/README.md +0 -9
- package/templates/quickstart/schemaTypes/index.js +0 -1
- package/templates/quickstart/static/.gitkeep +0 -1
- package/templates/shared/gitignore.txt +0 -29
- package/templates/shared/tsconfig.json +0 -17
- package/templates/shopify/LICENSE +0 -21
- package/templates/shopify/README.md +0 -85
- package/templates/shopify/components/hotspots/ProductTooltip.tsx +0 -38
- package/templates/shopify/components/icons/Shopify.tsx +0 -22
- package/templates/shopify/components/inputs/CollectionHidden.tsx +0 -24
- package/templates/shopify/components/inputs/PlaceholderString.tsx +0 -20
- package/templates/shopify/components/inputs/ProductHidden.tsx +0 -64
- package/templates/shopify/components/inputs/ProductVariantHidden.tsx +0 -24
- package/templates/shopify/components/inputs/ProxyString.tsx +0 -32
- package/templates/shopify/components/media/ColorTheme.tsx +0 -38
- package/templates/shopify/components/media/ShopifyDocumentStatus.tsx +0 -82
- package/templates/shopify/components/studio/Navbar.tsx +0 -29
- package/templates/shopify/constants.ts +0 -61
- package/templates/shopify/docs/features.md +0 -158
- package/templates/shopify/plugins/customDocumentActions/index.ts +0 -55
- package/templates/shopify/plugins/customDocumentActions/shopifyDelete.tsx +0 -144
- package/templates/shopify/plugins/customDocumentActions/shopifyLink.ts +0 -39
- package/templates/shopify/plugins/customDocumentActions/types.ts +0 -14
- package/templates/shopify/schemaTypes/documents/collection.tsx +0 -143
- package/templates/shopify/schemaTypes/documents/colorTheme.tsx +0 -44
- package/templates/shopify/schemaTypes/documents/page.ts +0 -70
- package/templates/shopify/schemaTypes/documents/product.tsx +0 -132
- package/templates/shopify/schemaTypes/documents/productVariant.tsx +0 -68
- package/templates/shopify/schemaTypes/index.ts +0 -108
- package/templates/shopify/schemaTypes/objects/collection/collectionGroupType.ts +0 -27
- package/templates/shopify/schemaTypes/objects/collection/collectionLinksType.ts +0 -16
- package/templates/shopify/schemaTypes/objects/customProductOption/customProductOptionColorObjectType.tsx +0 -49
- package/templates/shopify/schemaTypes/objects/customProductOption/customProductOptionColorType.tsx +0 -50
- package/templates/shopify/schemaTypes/objects/customProductOption/customProductOptionSizeObjectType.ts +0 -40
- package/templates/shopify/schemaTypes/objects/customProductOption/customProductOptionSizeType.ts +0 -49
- package/templates/shopify/schemaTypes/objects/global/footerType.ts +0 -22
- package/templates/shopify/schemaTypes/objects/global/menuLinksType.ts +0 -21
- package/templates/shopify/schemaTypes/objects/global/menuType.ts +0 -17
- package/templates/shopify/schemaTypes/objects/global/notFoundPageType.ts +0 -37
- package/templates/shopify/schemaTypes/objects/hotspot/imageWithProductHotspotsType.ts +0 -48
- package/templates/shopify/schemaTypes/objects/hotspot/productHotspotsType.tsx +0 -19
- package/templates/shopify/schemaTypes/objects/hotspot/spotType.tsx +0 -60
- package/templates/shopify/schemaTypes/objects/link/linkEmailType.tsx +0 -34
- package/templates/shopify/schemaTypes/objects/link/linkExternalType.tsx +0 -37
- package/templates/shopify/schemaTypes/objects/link/linkInternalType.tsx +0 -33
- package/templates/shopify/schemaTypes/objects/link/linkProductType.tsx +0 -60
- package/templates/shopify/schemaTypes/objects/module/accordionGroupType.ts +0 -33
- package/templates/shopify/schemaTypes/objects/module/accordionType.ts +0 -28
- package/templates/shopify/schemaTypes/objects/module/callToActionType.tsx +0 -85
- package/templates/shopify/schemaTypes/objects/module/calloutType.ts +0 -38
- package/templates/shopify/schemaTypes/objects/module/collectionReferenceType.tsx +0 -48
- package/templates/shopify/schemaTypes/objects/module/gridItemType.ts +0 -41
- package/templates/shopify/schemaTypes/objects/module/gridType.ts +0 -28
- package/templates/shopify/schemaTypes/objects/module/heroType.tsx +0 -40
- package/templates/shopify/schemaTypes/objects/module/imageCallToActionType.tsx +0 -19
- package/templates/shopify/schemaTypes/objects/module/imageFeatureType.ts +0 -80
- package/templates/shopify/schemaTypes/objects/module/imageFeaturesType.tsx +0 -51
- package/templates/shopify/schemaTypes/objects/module/instagramType.ts +0 -35
- package/templates/shopify/schemaTypes/objects/module/productFeaturesType.tsx +0 -50
- package/templates/shopify/schemaTypes/objects/module/productReferenceType.tsx +0 -42
- package/templates/shopify/schemaTypes/objects/seoType.ts +0 -31
- package/templates/shopify/schemaTypes/objects/shopify/collectionRuleType.tsx +0 -37
- package/templates/shopify/schemaTypes/objects/shopify/inventoryType.ts +0 -25
- package/templates/shopify/schemaTypes/objects/shopify/optionType.tsx +0 -31
- package/templates/shopify/schemaTypes/objects/shopify/placeholderStringType.ts +0 -12
- package/templates/shopify/schemaTypes/objects/shopify/priceRangeType.ts +0 -20
- package/templates/shopify/schemaTypes/objects/shopify/productWithVariantType.tsx +0 -142
- package/templates/shopify/schemaTypes/objects/shopify/proxyStringType.ts +0 -12
- package/templates/shopify/schemaTypes/objects/shopify/shopType.ts +0 -15
- package/templates/shopify/schemaTypes/objects/shopify/shopifyCollectionType.ts +0 -85
- package/templates/shopify/schemaTypes/objects/shopify/shopifyProductType.ts +0 -132
- package/templates/shopify/schemaTypes/objects/shopify/shopifyProductVariantType.ts +0 -121
- package/templates/shopify/schemaTypes/portableText/portableTextSimpleType.tsx +0 -45
- package/templates/shopify/schemaTypes/portableText/portableTextType.tsx +0 -52
- package/templates/shopify/schemaTypes/singletons/homeType.ts +0 -49
- package/templates/shopify/schemaTypes/singletons/settingsType.ts +0 -96
- package/templates/shopify/static/.gitkeep +0 -1
- package/templates/shopify/structure/collectionStructure.ts +0 -6
- package/templates/shopify/structure/colorThemeStructure.ts +0 -9
- package/templates/shopify/structure/homeStructure.ts +0 -9
- package/templates/shopify/structure/index.ts +0 -57
- package/templates/shopify/structure/pageStructure.ts +0 -11
- package/templates/shopify/structure/productStructure.ts +0 -51
- package/templates/shopify/structure/settingStructure.ts +0 -9
- package/templates/shopify/utils/blocksToText.ts +0 -20
- package/templates/shopify/utils/defineStructure.ts +0 -11
- package/templates/shopify/utils/getPriceRange.ts +0 -24
- package/templates/shopify/utils/shopifyUrls.ts +0 -22
- package/templates/shopify/utils/validateSlug.ts +0 -18
- package/templates/shopify-online-storefront/README.md +0 -54
- package/templates/shopify-online-storefront/components/icons/Shopify.tsx +0 -22
- package/templates/shopify-online-storefront/components/inputs/CollectionHidden.tsx +0 -23
- package/templates/shopify-online-storefront/components/inputs/PlaceholderString.tsx +0 -25
- package/templates/shopify-online-storefront/components/inputs/ProductHidden.tsx +0 -66
- package/templates/shopify-online-storefront/components/inputs/ProductVariantHidden.tsx +0 -25
- package/templates/shopify-online-storefront/components/inputs/ProxyString.tsx +0 -38
- package/templates/shopify-online-storefront/components/media/ShopifyDocumentStatus.tsx +0 -83
- package/templates/shopify-online-storefront/constants.ts +0 -18
- package/templates/shopify-online-storefront/plugins/shopifyDocumentActions/index.ts +0 -45
- package/templates/shopify-online-storefront/plugins/shopifyDocumentActions/shopifyDelete.tsx +0 -144
- package/templates/shopify-online-storefront/plugins/shopifyDocumentActions/shopifyLink.ts +0 -39
- package/templates/shopify-online-storefront/plugins/shopifyDocumentActions/types.ts +0 -14
- package/templates/shopify-online-storefront/schemaTypes/blocks/blockContent.ts +0 -32
- package/templates/shopify-online-storefront/schemaTypes/documents/collection.tsx +0 -83
- package/templates/shopify-online-storefront/schemaTypes/documents/product.tsx +0 -102
- package/templates/shopify-online-storefront/schemaTypes/documents/productVariant.tsx +0 -82
- package/templates/shopify-online-storefront/schemaTypes/index.ts +0 -43
- package/templates/shopify-online-storefront/schemaTypes/objects/accordion.ts +0 -31
- package/templates/shopify-online-storefront/schemaTypes/objects/accordionGroup.ts +0 -35
- package/templates/shopify-online-storefront/schemaTypes/objects/callout.ts +0 -40
- package/templates/shopify-online-storefront/schemaTypes/objects/inventory.ts +0 -30
- package/templates/shopify-online-storefront/schemaTypes/objects/option.ts +0 -30
- package/templates/shopify-online-storefront/schemaTypes/objects/priceRange.ts +0 -22
- package/templates/shopify-online-storefront/schemaTypes/objects/proxyString.ts +0 -11
- package/templates/shopify-online-storefront/schemaTypes/objects/shopifyCollection.ts +0 -109
- package/templates/shopify-online-storefront/schemaTypes/objects/shopifyCollectionRule.tsx +0 -45
- package/templates/shopify-online-storefront/schemaTypes/objects/shopifyProduct.ts +0 -165
- package/templates/shopify-online-storefront/schemaTypes/objects/shopifyProductVariant.ts +0 -151
- package/templates/shopify-online-storefront/structure/collectionStructure.ts +0 -6
- package/templates/shopify-online-storefront/structure/index.ts +0 -37
- package/templates/shopify-online-storefront/structure/productStructure.ts +0 -35
- package/templates/shopify-online-storefront/utils/defineStructure.ts +0 -11
- package/templates/shopify-online-storefront/utils/getPriceRange.ts +0 -24
- package/templates/shopify-online-storefront/utils/shopifyUrls.ts +0 -22
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/commands/documents/__tests__/create.test.ts"],"sourcesContent":["import {randomUUID} from 'node:crypto'\nimport fs from 'node:fs/promises'\nimport os from 'node:os'\nimport path from 'node:path'\n\nimport {runCommand} from '@oclif/test'\nimport {getCliConfig, getProjectCliClient} from '@sanity/cli-core'\nimport {testCommand} from '@sanity/cli-test'\nimport {watch as chokidarWatch} from 'chokidar'\nimport {execa, execaSync} from 'execa'\nimport json5 from 'json5'\nimport {afterEach, describe, expect, test, vi} from 'vitest'\n\nimport {NO_PROJECT_ID} from '../../../util/errorMessages.js'\nimport {CreateDocumentCommand} from '../create.js'\n\nvi.mock('node:fs/promises')\nvi.mock('node:os')\nvi.mock('chokidar', () => ({\n watch: vi.fn(),\n}))\nvi.mock('execa')\nvi.mock('json5')\n\nvi.mock('node:crypto', async () => {\n return {\n randomUUID: vi.fn(),\n }\n})\n\nvi.mock('../../../../../cli-core/src/config/findProjectRoot.js', () => ({\n findProjectRoot: vi.fn().mockResolvedValue({\n directory: '/test/path',\n root: '/test/path',\n type: 'studio',\n }),\n}))\n\nvi.mock('../../../../../cli-core/src/config/cli/getCliConfig.js', () => ({\n getCliConfig: vi.fn(),\n}))\n\nvi.mock('../../../../../cli-core/src/services/getCliToken.js', () => ({\n getCliToken: vi.fn().mockResolvedValue('test-token'),\n}))\n\nvi.mock('../../../../../cli-core/src/services/apiClient.js', () => ({\n getProjectCliClient: vi.fn(),\n}))\n\nconst mockGetCliConfig = vi.mocked(getCliConfig)\nconst mockGetProjectCliClient = vi.mocked(getProjectCliClient)\nconst mockFs = vi.mocked(fs)\nconst mockOs = vi.mocked(os)\nconst mockChokidarWatch = vi.mocked(chokidarWatch)\nconst mockExeca = vi.mocked(execa)\nconst mockExecaSync = vi.mocked(execaSync)\nconst mockJson5 = vi.mocked(json5)\nconst mockRandomUUID = vi.mocked(randomUUID)\n\nconst testProjectId = 'test-project'\nconst testDataset = 'production'\n\n// Helper to set environment variable for tests\nfunction withEditorEnv(testFn: () => Promise<void>) {\n return async () => {\n vi.stubEnv('EDITOR', 'vim')\n try {\n await testFn()\n } finally {\n vi.unstubAllEnvs()\n }\n }\n}\n\n// Base configuration used across tests\nconst baseConfig = {\n api: {\n dataset: testDataset,\n projectId: testProjectId,\n },\n}\n\n// Helper functions moved to outer scope to fix linting\nconst setupBaseMocks = (additionalConfig = {}) => {\n mockGetCliConfig.mockResolvedValue({...baseConfig, ...additionalConfig})\n}\n\nconst setupMocks = () => {\n setupBaseMocks()\n const mockClient = {\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'create'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n return mockClient\n}\n\nconst setupEditorMocks = () => {\n setupBaseMocks()\n mockOs.tmpdir.mockReturnValue('/tmp')\n mockFs.mkdir.mockResolvedValue(undefined)\n mockFs.writeFile.mockResolvedValue(undefined)\n mockFs.unlink.mockResolvedValue(undefined)\n mockExecaSync.mockReturnValue(undefined as never)\n}\n\nconst setupWatchMocks = () => {\n setupBaseMocks()\n mockOs.tmpdir.mockReturnValue('/tmp')\n mockFs.mkdir.mockResolvedValue(undefined)\n mockFs.writeFile.mockResolvedValue(undefined)\n mockFs.unlink.mockResolvedValue(undefined)\n}\n\ndescribe('#documents:create', () => {\n afterEach(() => {\n vi.clearAllMocks()\n })\n\n test('--help works', async () => {\n const {stdout} = await runCommand(['documents create', '--help'])\n\n expect(stdout).toMatchInlineSnapshot(`\n \"Create one or more documents\n\n USAGE\n $ sanity documents create [FILE] [-d <value>] [--id <value>] [--json5]\n [--missing] [--replace] [--watch]\n\n ARGUMENTS\n [FILE] JSON file to create document(s) from\n\n FLAGS\n -d, --dataset=<value> Dataset to create document(s) in (overrides config)\n --id=<value> Specify a document ID to use. Will fetch remote\n document ID and populate editor.\n --json5 Use JSON5 file type to allow a \"simplified\" version of\n JSON\n --missing On duplicate document IDs, don't modify the target\n document(s)\n --replace On duplicate document IDs, replace existing document\n with specified document(s)\n --watch Write the documents whenever the target file or buffer\n changes\n\n DESCRIPTION\n Create one or more documents\n\n EXAMPLES\n Create the document specified in \"myDocument.json\"\n\n $ sanity documents create myDocument.json\n\n Open configured $EDITOR and create the specified document(s)\n\n $ sanity documents create\n\n Fetch document with the ID \"myDocId\" and open configured $EDITOR with the\n current document content (if any). Replace document with the edited version\n when the editor closes\n\n $ sanity documents create --id myDocId --replace\n\n Open configured $EDITOR and replace the document with the given content on\n each save. Use JSON5 file extension and parser for simplified syntax.\n\n $ sanity documents create --id myDocId --watch --replace --json5\n\n \"\n `)\n })\n\n test('creates document from JSON file and displays success message', async () => {\n const mockDoc = {\n _id: 'test-doc',\n _type: 'post',\n title: 'Test Post',\n }\n\n const mockTransaction = {\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'create'}],\n }),\n }\n\n mockGetCliConfig.mockResolvedValue({\n api: {\n dataset: testDataset,\n projectId: testProjectId,\n },\n })\n\n const mockClient = {\n transaction: vi.fn().mockReturnValue(mockTransaction),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDoc))\n mockJson5.parse.mockReturnValue(mockDoc)\n\n const {stdout} = await testCommand(CreateDocumentCommand, ['test-doc.json'])\n\n expect(stdout).toContain('Created:')\n expect(stdout).toContain('test-doc')\n expect(mockFs.readFile).toHaveBeenCalledWith(\n path.resolve(process.cwd(), 'test-doc.json'),\n 'utf8',\n )\n expect(mockClient.transaction).toHaveBeenCalledWith([{create: mockDoc}])\n })\n\n test('creates document with replace flag', async () => {\n const mockDoc = {\n _id: 'test-doc',\n _type: 'post',\n title: 'Test Post',\n }\n\n const mockTransaction = {\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'update'}],\n }),\n }\n\n mockGetCliConfig.mockResolvedValue({\n api: {\n dataset: testDataset,\n projectId: testProjectId,\n },\n })\n\n const mockClient = {\n transaction: vi.fn().mockReturnValue(mockTransaction),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDoc))\n mockJson5.parse.mockReturnValue(mockDoc)\n\n const {stdout} = await testCommand(CreateDocumentCommand, ['test-doc.json', '--replace'])\n\n expect(stdout).toContain('Upserted:')\n expect(stdout).toContain('test-doc')\n expect(mockClient.transaction).toHaveBeenCalledWith([{createOrReplace: mockDoc}])\n })\n\n test('creates document with missing flag', async () => {\n const mockDoc = {\n _id: 'test-doc',\n _type: 'post',\n title: 'Test Post',\n }\n\n const mockTransaction = {\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'update'}],\n }),\n }\n\n mockGetCliConfig.mockResolvedValue({\n api: {\n dataset: testDataset,\n projectId: testProjectId,\n },\n })\n\n const mockClient = {\n transaction: vi.fn().mockReturnValue(mockTransaction),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDoc))\n mockJson5.parse.mockReturnValue(mockDoc)\n\n const {stdout} = await testCommand(CreateDocumentCommand, ['test-doc.json', '--missing'])\n\n expect(stdout).toContain('Skipped (already exists):')\n expect(stdout).toContain('test-doc')\n expect(mockClient.transaction).toHaveBeenCalledWith([{createIfNotExists: mockDoc}])\n })\n\n test(\n 'opens editor when no file specified and creates document from editor content',\n withEditorEnv(async () => {\n mockGetCliConfig.mockResolvedValue({\n api: {\n dataset: testDataset,\n projectId: testProjectId,\n },\n })\n\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(null),\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'generated-id', operation: 'create'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n mockOs.tmpdir.mockReturnValue('/tmp')\n mockFs.mkdir.mockResolvedValue(undefined)\n mockFs.writeFile.mockResolvedValue(undefined)\n mockFs.readFile.mockResolvedValue('{\"_id\": \"generated-id\", \"_type\": \"updated-type\"}')\n mockFs.unlink.mockResolvedValue(undefined)\n mockJson5.stringify.mockReturnValue('{\"_id\": \"generated-id\", \"_type\": \"specify-me\"}')\n mockJson5.parse.mockReturnValue({_id: 'generated-id', _type: 'updated-type'})\n mockExecaSync.mockReturnValue(undefined as never)\n\n const {stdout} = await testCommand(CreateDocumentCommand, [])\n\n expect(stdout).toContain('Created:')\n expect(mockFs.mkdir).toHaveBeenCalledWith('/tmp/sanity-cli', {\n mode: 0o700,\n recursive: true,\n })\n expect(mockExecaSync).toHaveBeenCalled()\n }),\n )\n\n test('uses custom dataset from --dataset flag instead of config', async () => {\n const mockDoc = {\n _id: 'test-doc',\n _type: 'post',\n title: 'Test Post',\n }\n\n setupMocks()\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDoc))\n mockJson5.parse.mockReturnValue(mockDoc)\n\n const {stdout} = await testCommand(CreateDocumentCommand, [\n 'test-doc.json',\n '--dataset',\n 'staging',\n ])\n\n expect(stdout).toContain('Created:')\n expect(mockGetProjectCliClient).toHaveBeenCalledWith(\n expect.objectContaining({\n dataset: 'staging',\n }),\n )\n })\n\n test('throws error when both --replace and --missing flags are used', async () => {\n setupBaseMocks()\n\n const {error} = await testCommand(CreateDocumentCommand, [\n 'test-doc.json',\n '--replace',\n '--missing',\n ])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Cannot use both --replace and --missing')\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test('throws error when --id and file path are both provided', async () => {\n setupBaseMocks()\n\n const {error} = await testCommand(CreateDocumentCommand, ['test-doc.json', '--id', 'myDocId'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Cannot use --id when specifying a file path')\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test('throws error when no project ID is configured', async () => {\n mockGetCliConfig.mockResolvedValue({\n api: {\n dataset: 'production',\n projectId: undefined,\n },\n })\n\n const {error} = await testCommand(CreateDocumentCommand, ['test-doc.json'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toEqual(NO_PROJECT_ID)\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test('throws error when no dataset is configured and none provided', async () => {\n mockGetCliConfig.mockResolvedValue({\n api: {\n dataset: undefined,\n projectId: testProjectId,\n },\n })\n\n const {error} = await testCommand(CreateDocumentCommand, ['test-doc.json'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('No dataset specified')\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test('displays error message when file cannot be read', async () => {\n setupBaseMocks()\n mockGetProjectCliClient.mockResolvedValue({} as never)\n mockFs.readFile.mockRejectedValue(new Error('File not found'))\n\n const {error} = await testCommand(CreateDocumentCommand, ['nonexistent.json'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Failed to create documents')\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test('validates document has required _type property', async () => {\n const invalidDoc = {title: 'Test Post'} // Missing _type\n\n setupBaseMocks()\n mockGetProjectCliClient.mockResolvedValue({} as never)\n mockFs.readFile.mockResolvedValue(JSON.stringify(invalidDoc))\n mockJson5.parse.mockReturnValue(invalidDoc)\n\n const {error} = await testCommand(CreateDocumentCommand, ['invalid-doc.json'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Failed to create documents')\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test(\n 'uses JSON5 when --json5 flag is provided',\n withEditorEnv(async () => {\n mockGetCliConfig.mockResolvedValue({\n api: {\n dataset: testDataset,\n projectId: testProjectId,\n },\n })\n\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(null),\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'generated-id', operation: 'create'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n mockOs.tmpdir.mockReturnValue('/tmp')\n mockFs.mkdir.mockResolvedValue(undefined)\n mockFs.writeFile.mockResolvedValue(undefined)\n mockFs.readFile.mockResolvedValue('{\"_id\": \"generated-id\", \"_type\": \"updated-type\"}')\n mockFs.unlink.mockResolvedValue(undefined)\n mockJson5.stringify.mockReturnValue('{\"_id\": \"generated-id\", \"_type\": \"specify-me\"}')\n mockJson5.parse.mockReturnValue({_id: 'generated-id', _type: 'updated-type'})\n mockExecaSync.mockReturnValue(undefined as never)\n\n await testCommand(CreateDocumentCommand, ['--json5'])\n\n expect(mockJson5.stringify).toHaveBeenCalled()\n expect(mockFs.writeFile).toHaveBeenCalledWith(\n expect.stringContaining('.json5'),\n expect.any(String),\n {\n encoding: 'utf8',\n mode: 0o600,\n },\n )\n }),\n )\n\n describe('validation', () => {\n test.each([\n ['non-object document', 'not an object', 'Document must be an object'],\n [\n 'document without _type',\n {title: 'Test'},\n 'Document must have a `_type` property of type string',\n ],\n ['document with empty _type', {_type: '', title: 'Test'}, 'Document _type cannot be empty'],\n [\n 'document with invalid _type format (starts with number)',\n {_type: '1invalid', title: 'Test'},\n 'Document _type must start with a letter',\n ],\n [\n 'document with invalid _type format (special chars)',\n {_type: 'invalid@type', title: 'Test'},\n 'Document _type must start with a letter and contain only alphanumeric characters',\n ],\n [\n 'document with empty _id',\n {_id: ' ', _type: 'test', title: 'Test'},\n 'Document _id cannot be empty',\n ],\n [\n 'document with invalid _id format',\n {_id: 'invalid@id', _type: 'test', title: 'Test'},\n 'Document _id can only contain alphanumeric characters',\n ],\n [\n 'document with _id too long',\n {_id: 'a'.repeat(201), _type: 'test', title: 'Test'},\n 'Document _id cannot be longer than 200 characters',\n ],\n ])('validates %s', async (description, doc, expectedErrorSubstring) => {\n setupMocks()\n mockFs.readFile.mockResolvedValue(JSON.stringify(doc))\n mockJson5.parse.mockReturnValue(doc)\n\n const {error} = await testCommand(CreateDocumentCommand, ['invalid-doc.json'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain(expectedErrorSubstring)\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test.each([\n [\n 'multiple documents with invalid first document',\n [{title: 'Invalid'}, {_type: 'valid', title: 'Valid'}],\n 'Document at index 0 must have a `_type` property of type string',\n ],\n [\n 'multiple documents with invalid second document',\n [{_type: 'valid', title: 'Valid'}, {title: 'Invalid'}],\n 'Document at index 1 must have a `_type` property of type string',\n ],\n ])('validates %s', async (description, docs, expectedErrorSubstring) => {\n setupMocks()\n mockFs.readFile.mockResolvedValue(JSON.stringify(docs))\n mockJson5.parse.mockReturnValue(docs)\n\n const {error} = await testCommand(CreateDocumentCommand, ['invalid-docs.json'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain(expectedErrorSubstring)\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test('allows documents with reserved fields but logs debug warning', async () => {\n const docWithReservedFields = {\n _createdAt: '2024-01-01T00:00:00Z',\n _id: 'test-doc',\n _rev: 'some-revision',\n _type: 'post',\n _updatedAt: '2024-01-02T00:00:00Z',\n title: 'Test Post',\n }\n\n setupMocks()\n const mockClient = {\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'create'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n mockFs.readFile.mockResolvedValue(JSON.stringify(docWithReservedFields))\n mockJson5.parse.mockReturnValue(docWithReservedFields)\n\n // Should not throw error, but should proceed with document creation\n const {stdout} = await testCommand(CreateDocumentCommand, ['doc.json'])\n\n expect(stdout).toContain('Created:')\n expect(stdout).toContain('test-doc')\n expect(mockClient.transaction).toHaveBeenCalledWith([{create: docWithReservedFields}])\n })\n\n test('validates empty document array throws error', async () => {\n const emptyArray: unknown[] = []\n\n setupMocks()\n mockFs.readFile.mockResolvedValue(JSON.stringify(emptyArray))\n mockJson5.parse.mockReturnValue(emptyArray)\n\n const {error} = await testCommand(CreateDocumentCommand, ['empty-docs.json'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('No documents provided')\n expect(error?.oclif?.exit).toBe(1)\n })\n })\n\n describe('batch operations', () => {\n test.each([\n ['create', 'create', 'Created:'],\n ['createOrReplace', 'replace', 'Upserted:'],\n ['createIfNotExists', 'missing', 'Skipped (already exists):'],\n ])('handles multiple documents with %s operation', async (operation, flag, expectedMessage) => {\n const mockDocs = [\n {_id: 'doc1', _type: 'post', title: 'Post 1'},\n {_id: 'doc2', _type: 'post', title: 'Post 2'},\n ]\n\n const mockTransaction = {\n commit: vi.fn().mockResolvedValue({\n results: [\n {id: 'doc1', operation: operation === 'createIfNotExists' ? 'update' : 'create'},\n {id: 'doc2', operation: operation === 'createIfNotExists' ? 'update' : 'create'},\n ],\n }),\n }\n\n setupMocks()\n const mockClient = {\n transaction: vi.fn().mockReturnValue(mockTransaction),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDocs))\n mockJson5.parse.mockReturnValue(mockDocs)\n\n const args = ['docs.json']\n if (flag !== 'create') args.push(`--${flag}`)\n\n const {stdout} = await testCommand(CreateDocumentCommand, args)\n\n expect(stdout).toContain(expectedMessage)\n expect(stdout).toContain('doc1')\n expect(stdout).toContain('doc2')\n\n const expectedMutations = mockDocs.map((doc) => ({[operation]: doc}))\n expect(mockClient.transaction).toHaveBeenCalledWith(expectedMutations)\n })\n\n test('handles mixed results for createIfNotExists', async () => {\n const mockDocs = [\n {_id: 'doc1', _type: 'post', title: 'Post 1'},\n {_id: 'doc2', _type: 'post', title: 'Post 2'},\n {_id: 'doc3', _type: 'post', title: 'Post 3'},\n ]\n\n const mockTransaction = {\n commit: vi.fn().mockResolvedValue({\n results: [\n {id: 'doc1', operation: 'create'}, // Created\n {id: 'doc2', operation: 'update'}, // Skipped (already exists)\n {id: 'doc3', operation: 'create'}, // Created\n ],\n }),\n }\n\n setupMocks()\n const mockClient = {\n transaction: vi.fn().mockReturnValue(mockTransaction),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDocs))\n mockJson5.parse.mockReturnValue(mockDocs)\n\n const {stdout} = await testCommand(CreateDocumentCommand, ['docs.json', '--missing'])\n\n expect(stdout).toContain('Created:')\n expect(stdout).toContain('doc1')\n expect(stdout).toContain('doc3')\n expect(stdout).toContain('Skipped (already exists):')\n expect(stdout).toContain('doc2')\n })\n })\n\n describe('editor workflow', () => {\n test(\n 'fetches existing document with --id flag',\n withEditorEnv(async () => {\n const existingDoc = {\n _id: 'existing-doc',\n _type: 'post',\n title: 'Existing Post',\n }\n\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(existingDoc),\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'existing-doc', operation: 'update'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n setupEditorMocks()\n mockFs.readFile.mockResolvedValue(JSON.stringify({...existingDoc, title: 'Updated Post'}))\n mockJson5.parse.mockReturnValue({...existingDoc, title: 'Updated Post'})\n mockJson5.stringify.mockReturnValue(JSON.stringify(existingDoc, null, 2))\n\n const {stdout} = await testCommand(CreateDocumentCommand, ['--id', 'existing-doc'])\n\n expect(mockClient.getDocument).toHaveBeenCalledWith('existing-doc')\n expect(mockFs.writeFile).toHaveBeenCalledWith(\n expect.stringContaining('existing-doc.json'),\n JSON.stringify(existingDoc, null, 2),\n expect.objectContaining({mode: 0o600}),\n )\n expect(stdout).toContain('Created:')\n }),\n )\n\n test(\n 'handles no changes made in editor',\n withEditorEnv(async () => {\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(null),\n transaction: vi.fn(),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n setupEditorMocks()\n\n // Set up a predictable UUID so the test can verify no changes were made\n const testUuid = '123e4567-e89b-12d3-a456-426614174000'\n mockRandomUUID.mockReturnValue(testUuid)\n\n const defaultDoc = {\n _id: testUuid,\n _type: 'specify-me',\n }\n\n // First mock the writeFile call for initial template\n const writeFileContent = JSON.stringify(defaultDoc, null, 2)\n mockJson5.stringify.mockReturnValue(writeFileContent)\n\n // Set up the file read to return the exact same content structure\n mockFs.readFile.mockResolvedValue(writeFileContent)\n // Return the exact same object structure that was written\n mockJson5.parse.mockReturnValue(defaultDoc)\n\n await testCommand(CreateDocumentCommand, [])\n\n // The key test - transaction should not have been called since no changes were made\n expect(mockClient.transaction).not.toHaveBeenCalled()\n }),\n )\n\n test(\n 'handles write error with already exists hint',\n withEditorEnv(async () => {\n const mockDoc = {\n _id: 'test-doc',\n _type: 'post',\n title: 'Test Post',\n }\n\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(null),\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockRejectedValue(new Error('Document already exists')),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n setupEditorMocks()\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDoc))\n mockJson5.parse.mockReturnValue(mockDoc)\n mockJson5.stringify.mockReturnValue(\n JSON.stringify({_id: 'test-doc', _type: 'specify-me'}, null, 2),\n )\n\n const {error} = await testCommand(CreateDocumentCommand, [])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Failed to write documents: Document already exists')\n expect(error?.message).toContain('Perhaps you want to use `--replace` or `--missing`?')\n expect(error?.oclif?.exit).toBe(1)\n }),\n )\n\n test(\n 'handles file cleanup errors silently',\n withEditorEnv(async () => {\n const mockDoc = {\n _id: 'test-doc',\n _type: 'post',\n title: 'Test Post',\n }\n\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(null),\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'create'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n setupEditorMocks()\n // Mock unlink to throw an error (should be caught silently)\n mockFs.unlink.mockRejectedValue(new Error('Permission denied'))\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDoc))\n mockJson5.parse.mockReturnValue(mockDoc)\n mockJson5.stringify.mockReturnValue(\n JSON.stringify({_id: 'test-doc', _type: 'specify-me'}, null, 2),\n )\n\n const {stdout} = await testCommand(CreateDocumentCommand, [])\n\n // Should still succeed despite file cleanup error\n expect(stdout).toContain('Created:')\n expect(stdout).toContain('test-doc')\n expect(mockFs.unlink).toHaveBeenCalled()\n }),\n )\n })\n\n describe('watch mode', () => {\n test(\n 'enables watch mode and logs appropriate messages',\n withEditorEnv(async () => {\n const mockWatcher = {\n on: vi.fn().mockReturnThis(),\n }\n mockChokidarWatch.mockReturnValue(mockWatcher as never)\n\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(null),\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'create'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n setupWatchMocks()\n mockJson5.stringify.mockReturnValue(\n JSON.stringify({_id: 'test-doc', _type: 'specify-me'}, null, 2),\n )\n mockExeca.mockResolvedValue({} as never)\n\n const {stdout} = await testCommand(CreateDocumentCommand, ['--watch'])\n\n expect(stdout).toContain('Watch mode:')\n expect(stdout).toContain('Will write documents on each save.')\n expect(stdout).toContain('Press Ctrl + C to cancel watch mode.')\n expect(mockWatcher.on).toHaveBeenCalledWith('change', expect.any(Function))\n expect(mockExeca).toHaveBeenCalledWith('vim', expect.any(Array), {stdio: 'inherit'})\n expect(mockChokidarWatch).toHaveBeenCalledWith(expect.stringContaining('.json'))\n }),\n )\n\n test(\n 'handles file change events in watch mode',\n withEditorEnv(async () => {\n const mockDoc = {\n _id: 'test-doc',\n _type: 'post',\n title: 'Updated Post',\n }\n\n let changeHandler: () => Promise<void>\n const mockWatcher = {\n on: vi.fn().mockImplementation((event: string, handler: () => Promise<void>) => {\n if (event === 'change') {\n changeHandler = handler\n }\n return mockWatcher\n }),\n }\n mockChokidarWatch.mockReturnValue(mockWatcher as never)\n\n const mockClient = {\n getDocument: vi.fn().mockResolvedValue(null),\n transaction: vi.fn().mockReturnValue({\n commit: vi.fn().mockResolvedValue({\n results: [{id: 'test-doc', operation: 'create'}],\n }),\n }),\n }\n mockGetProjectCliClient.mockResolvedValue(mockClient as never)\n\n setupWatchMocks()\n mockJson5.stringify.mockReturnValue(\n JSON.stringify({_id: 'test-doc', _type: 'specify-me'}, null, 2),\n )\n mockExeca.mockResolvedValue({} as never)\n\n // Mock file read to return different content for file change\n mockFs.readFile.mockResolvedValue(JSON.stringify(mockDoc))\n mockJson5.parse.mockReturnValue(mockDoc)\n\n await testCommand(CreateDocumentCommand, ['--watch'])\n\n // Simulate file change\n expect(changeHandler!).toBeDefined()\n await changeHandler!()\n\n expect(mockClient.transaction).toHaveBeenCalledWith([{create: mockDoc}])\n }),\n )\n })\n})\n"],"names":["randomUUID","fs","os","path","runCommand","getCliConfig","getProjectCliClient","testCommand","watch","chokidarWatch","execa","execaSync","json5","afterEach","describe","expect","test","vi","NO_PROJECT_ID","CreateDocumentCommand","mock","fn","findProjectRoot","mockResolvedValue","directory","root","type","getCliToken","mockGetCliConfig","mocked","mockGetProjectCliClient","mockFs","mockOs","mockChokidarWatch","mockExeca","mockExecaSync","mockJson5","mockRandomUUID","testProjectId","testDataset","withEditorEnv","testFn","stubEnv","unstubAllEnvs","baseConfig","api","dataset","projectId","setupBaseMocks","additionalConfig","setupMocks","mockClient","transaction","mockReturnValue","commit","results","id","operation","setupEditorMocks","tmpdir","mkdir","undefined","writeFile","unlink","setupWatchMocks","clearAllMocks","stdout","toMatchInlineSnapshot","mockDoc","_id","_type","title","mockTransaction","readFile","JSON","stringify","parse","toContain","toHaveBeenCalledWith","resolve","process","cwd","create","createOrReplace","createIfNotExists","getDocument","mode","recursive","toHaveBeenCalled","objectContaining","error","toBeInstanceOf","Error","message","oclif","exit","toBe","toEqual","mockRejectedValue","invalidDoc","stringContaining","any","String","encoding","each","repeat","description","doc","expectedErrorSubstring","docs","docWithReservedFields","_createdAt","_rev","_updatedAt","emptyArray","flag","expectedMessage","mockDocs","args","push","expectedMutations","map","existingDoc","testUuid","defaultDoc","writeFileContent","not","mockWatcher","on","mockReturnThis","Function","Array","stdio","changeHandler","mockImplementation","event","handler","toBeDefined"],"mappings":"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"}
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
import { runCommand } from '@oclif/test';
|
|
2
|
+
import { getCliConfig, getProjectCliClient } from '@sanity/cli-core';
|
|
3
|
+
import { testCommand } from '@sanity/cli-test';
|
|
4
|
+
import { afterEach, beforeEach, describe, expect, test, vi } from 'vitest';
|
|
5
|
+
import { NO_PROJECT_ID } from '../../../util/errorMessages.js';
|
|
6
|
+
import { DeleteDocumentCommand } from '../delete.js';
|
|
7
|
+
// Mock the config functions
|
|
8
|
+
vi.mock('../../../../../cli-core/src/config/findProjectRoot.js', ()=>({
|
|
9
|
+
findProjectRoot: vi.fn().mockResolvedValue({
|
|
10
|
+
directory: '/test/path',
|
|
11
|
+
root: '/test/path',
|
|
12
|
+
type: 'studio'
|
|
13
|
+
})
|
|
14
|
+
}));
|
|
15
|
+
vi.mock('../../../../../cli-core/src/config/cli/getCliConfig.js', ()=>({
|
|
16
|
+
getCliConfig: vi.fn().mockResolvedValue({
|
|
17
|
+
api: {
|
|
18
|
+
dataset: 'production',
|
|
19
|
+
projectId: 'test-project'
|
|
20
|
+
}
|
|
21
|
+
})
|
|
22
|
+
}));
|
|
23
|
+
vi.mock('../../../../../cli-core/src/services/apiClient.js', ()=>({
|
|
24
|
+
getProjectCliClient: vi.fn()
|
|
25
|
+
}));
|
|
26
|
+
vi.mock('../../../../../cli-core/src/services/getCliToken.js', ()=>({
|
|
27
|
+
getCliToken: vi.fn().mockResolvedValue('test-token')
|
|
28
|
+
}));
|
|
29
|
+
// Mock the project API client
|
|
30
|
+
const mockTransaction = vi.fn();
|
|
31
|
+
const mockCommit = vi.fn();
|
|
32
|
+
const mockDelete = vi.fn();
|
|
33
|
+
// Get the mocked functions
|
|
34
|
+
const mockedGetCliConfig = vi.mocked(getCliConfig);
|
|
35
|
+
const mockedGetProjectCliClient = vi.mocked(getProjectCliClient);
|
|
36
|
+
describe('documents delete', ()=>{
|
|
37
|
+
beforeEach(()=>{
|
|
38
|
+
// Setup transaction chain
|
|
39
|
+
mockDelete.mockReturnValue({
|
|
40
|
+
commit: mockCommit,
|
|
41
|
+
delete: mockDelete
|
|
42
|
+
});
|
|
43
|
+
mockTransaction.mockReturnValue({
|
|
44
|
+
commit: mockCommit,
|
|
45
|
+
delete: mockDelete
|
|
46
|
+
});
|
|
47
|
+
mockedGetProjectCliClient.mockResolvedValue({
|
|
48
|
+
transaction: mockTransaction
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
afterEach(()=>{
|
|
52
|
+
vi.clearAllMocks();
|
|
53
|
+
mockTransaction.mockReset();
|
|
54
|
+
mockCommit.mockReset();
|
|
55
|
+
mockDelete.mockReset();
|
|
56
|
+
});
|
|
57
|
+
test('--help works', async ()=>{
|
|
58
|
+
const { stdout } = await runCommand([
|
|
59
|
+
'documents delete',
|
|
60
|
+
'--help'
|
|
61
|
+
]);
|
|
62
|
+
expect(stdout).toMatchInlineSnapshot(`
|
|
63
|
+
"Delete one or more documents from the projects configured dataset
|
|
64
|
+
|
|
65
|
+
USAGE
|
|
66
|
+
$ sanity documents delete ID... [IDS...] [--dataset <value>]
|
|
67
|
+
|
|
68
|
+
ARGUMENTS
|
|
69
|
+
ID... Document ID to delete
|
|
70
|
+
[IDS...] Additional document IDs to delete
|
|
71
|
+
|
|
72
|
+
FLAGS
|
|
73
|
+
--dataset=<value> NAME to override dataset
|
|
74
|
+
|
|
75
|
+
DESCRIPTION
|
|
76
|
+
Delete one or more documents from the projects configured dataset
|
|
77
|
+
|
|
78
|
+
EXAMPLES
|
|
79
|
+
Delete the document with the ID "myDocId"
|
|
80
|
+
|
|
81
|
+
$ sanity documents delete myDocId
|
|
82
|
+
|
|
83
|
+
ID wrapped in double or single quote works equally well
|
|
84
|
+
|
|
85
|
+
$ sanity documents delete 'myDocId'
|
|
86
|
+
|
|
87
|
+
Delete document with ID "someDocId" from dataset "blog"
|
|
88
|
+
|
|
89
|
+
$ sanity documents delete --dataset=blog someDocId
|
|
90
|
+
|
|
91
|
+
Delete the document with ID "doc1" and "doc2"
|
|
92
|
+
|
|
93
|
+
$ sanity documents delete doc1 doc2
|
|
94
|
+
|
|
95
|
+
"
|
|
96
|
+
`);
|
|
97
|
+
});
|
|
98
|
+
test('deletes a single document successfully', async ()=>{
|
|
99
|
+
mockCommit.mockResolvedValue({
|
|
100
|
+
results: [
|
|
101
|
+
{
|
|
102
|
+
id: 'test-doc',
|
|
103
|
+
operation: 'delete'
|
|
104
|
+
}
|
|
105
|
+
]
|
|
106
|
+
});
|
|
107
|
+
const { stdout } = await testCommand(DeleteDocumentCommand, [
|
|
108
|
+
'test-doc'
|
|
109
|
+
]);
|
|
110
|
+
expect(stdout).toContain('Deleted 1 document');
|
|
111
|
+
expect(mockDelete).toHaveBeenCalledWith('test-doc');
|
|
112
|
+
expect(mockCommit).toHaveBeenCalled();
|
|
113
|
+
});
|
|
114
|
+
test('deletes multiple documents successfully', async ()=>{
|
|
115
|
+
mockCommit.mockResolvedValue({
|
|
116
|
+
results: [
|
|
117
|
+
{
|
|
118
|
+
id: 'doc1',
|
|
119
|
+
operation: 'delete'
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
id: 'doc2',
|
|
123
|
+
operation: 'delete'
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
id: 'doc3',
|
|
127
|
+
operation: 'delete'
|
|
128
|
+
}
|
|
129
|
+
]
|
|
130
|
+
});
|
|
131
|
+
const { stdout } = await testCommand(DeleteDocumentCommand, [
|
|
132
|
+
'doc1',
|
|
133
|
+
'doc2',
|
|
134
|
+
'doc3'
|
|
135
|
+
]);
|
|
136
|
+
expect(stdout).toContain('Deleted 3 documents');
|
|
137
|
+
expect(mockDelete).toHaveBeenCalledWith('doc1');
|
|
138
|
+
expect(mockDelete).toHaveBeenCalledWith('doc2');
|
|
139
|
+
expect(mockDelete).toHaveBeenCalledWith('doc3');
|
|
140
|
+
expect(mockCommit).toHaveBeenCalled();
|
|
141
|
+
});
|
|
142
|
+
test('handles documents not found', async ()=>{
|
|
143
|
+
mockCommit.mockResolvedValue({
|
|
144
|
+
results: [
|
|
145
|
+
{
|
|
146
|
+
id: 'doc1',
|
|
147
|
+
operation: 'delete'
|
|
148
|
+
}
|
|
149
|
+
]
|
|
150
|
+
});
|
|
151
|
+
const { error } = await testCommand(DeleteDocumentCommand, [
|
|
152
|
+
'doc1',
|
|
153
|
+
'nonexistent-doc'
|
|
154
|
+
]);
|
|
155
|
+
expect(error).toBeInstanceOf(Error);
|
|
156
|
+
expect(error?.message).toContain('Document not found: nonexistent-doc');
|
|
157
|
+
expect(mockDelete).toHaveBeenCalledWith('doc1');
|
|
158
|
+
expect(mockDelete).toHaveBeenCalledWith('nonexistent-doc');
|
|
159
|
+
expect(mockCommit).toHaveBeenCalled();
|
|
160
|
+
});
|
|
161
|
+
test('uses custom dataset when --dataset flag is provided', async ()=>{
|
|
162
|
+
mockCommit.mockResolvedValue({
|
|
163
|
+
results: [
|
|
164
|
+
{
|
|
165
|
+
id: 'test-doc',
|
|
166
|
+
operation: 'delete'
|
|
167
|
+
}
|
|
168
|
+
]
|
|
169
|
+
});
|
|
170
|
+
await testCommand(DeleteDocumentCommand, [
|
|
171
|
+
'test-doc',
|
|
172
|
+
'--dataset',
|
|
173
|
+
'staging'
|
|
174
|
+
]);
|
|
175
|
+
expect(mockDelete).toHaveBeenCalledWith('test-doc');
|
|
176
|
+
// Verify that the getProjectCliClient was called with the staging dataset
|
|
177
|
+
expect(mockedGetProjectCliClient).toHaveBeenCalledWith(expect.objectContaining({
|
|
178
|
+
dataset: 'staging',
|
|
179
|
+
projectId: 'test-project'
|
|
180
|
+
}));
|
|
181
|
+
});
|
|
182
|
+
test('throws error when no project ID is configured', async ()=>{
|
|
183
|
+
mockedGetCliConfig.mockResolvedValue({
|
|
184
|
+
api: {
|
|
185
|
+
dataset: 'production',
|
|
186
|
+
projectId: undefined
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
const { error } = await testCommand(DeleteDocumentCommand, [
|
|
190
|
+
'test-doc'
|
|
191
|
+
]);
|
|
192
|
+
expect(error).toBeInstanceOf(Error);
|
|
193
|
+
expect(error?.message).toEqual(NO_PROJECT_ID);
|
|
194
|
+
expect(error?.oclif?.exit).toBe(1);
|
|
195
|
+
// Restore the original mock for other tests
|
|
196
|
+
mockedGetCliConfig.mockResolvedValue({
|
|
197
|
+
api: {
|
|
198
|
+
dataset: 'production',
|
|
199
|
+
projectId: 'test-project'
|
|
200
|
+
}
|
|
201
|
+
});
|
|
202
|
+
});
|
|
203
|
+
test('throws error when no dataset is configured and none provided', async ()=>{
|
|
204
|
+
mockedGetCliConfig.mockResolvedValueOnce({
|
|
205
|
+
api: {
|
|
206
|
+
dataset: undefined,
|
|
207
|
+
projectId: 'test-project'
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
const { error } = await testCommand(DeleteDocumentCommand, [
|
|
211
|
+
'test-doc'
|
|
212
|
+
]);
|
|
213
|
+
expect(error).toBeInstanceOf(Error);
|
|
214
|
+
expect(error?.message).toContain('No dataset specified');
|
|
215
|
+
expect(error?.oclif?.exit).toBe(1);
|
|
216
|
+
});
|
|
217
|
+
test('handles transaction errors gracefully', async ()=>{
|
|
218
|
+
mockCommit.mockRejectedValue(new Error('Transaction failed'));
|
|
219
|
+
const { error } = await testCommand(DeleteDocumentCommand, [
|
|
220
|
+
'test-doc'
|
|
221
|
+
]);
|
|
222
|
+
expect(error).toBeInstanceOf(Error);
|
|
223
|
+
expect(error?.message).toContain('Failed to delete 1 document: Transaction failed');
|
|
224
|
+
expect(error?.oclif?.exit).toBe(1);
|
|
225
|
+
expect(mockDelete).toHaveBeenCalledWith('test-doc');
|
|
226
|
+
});
|
|
227
|
+
test('requires document ID argument', async ()=>{
|
|
228
|
+
const { error } = await testCommand(DeleteDocumentCommand, []);
|
|
229
|
+
expect(error).toBeInstanceOf(Error);
|
|
230
|
+
expect(error?.message).toContain('Missing 1 required arg');
|
|
231
|
+
});
|
|
232
|
+
test('shows singular message when deleting one document', async ()=>{
|
|
233
|
+
mockCommit.mockResolvedValue({
|
|
234
|
+
results: [
|
|
235
|
+
{
|
|
236
|
+
id: 'test-doc',
|
|
237
|
+
operation: 'delete'
|
|
238
|
+
}
|
|
239
|
+
]
|
|
240
|
+
});
|
|
241
|
+
const { stdout } = await testCommand(DeleteDocumentCommand, [
|
|
242
|
+
'test-doc'
|
|
243
|
+
]);
|
|
244
|
+
expect(stdout).toContain('Deleted 1 document');
|
|
245
|
+
expect(stdout).not.toContain('documents');
|
|
246
|
+
});
|
|
247
|
+
test('shows plural message when deleting multiple documents', async ()=>{
|
|
248
|
+
mockCommit.mockResolvedValue({
|
|
249
|
+
results: [
|
|
250
|
+
{
|
|
251
|
+
id: 'doc1',
|
|
252
|
+
operation: 'delete'
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
id: 'doc2',
|
|
256
|
+
operation: 'delete'
|
|
257
|
+
}
|
|
258
|
+
]
|
|
259
|
+
});
|
|
260
|
+
const { stdout } = await testCommand(DeleteDocumentCommand, [
|
|
261
|
+
'doc1',
|
|
262
|
+
'doc2'
|
|
263
|
+
]);
|
|
264
|
+
expect(stdout).toContain('Deleted 2 documents');
|
|
265
|
+
});
|
|
266
|
+
});
|
|
267
|
+
|
|
268
|
+
//# sourceMappingURL=delete.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/commands/documents/__tests__/delete.test.ts"],"sourcesContent":["import {runCommand} from '@oclif/test'\nimport {getCliConfig, getProjectCliClient} from '@sanity/cli-core'\nimport {testCommand} from '@sanity/cli-test'\nimport {afterEach, beforeEach, describe, expect, test, vi} from 'vitest'\n\nimport {NO_PROJECT_ID} from '../../../util/errorMessages.js'\nimport {DeleteDocumentCommand} from '../delete.js'\n\n// Mock the config functions\nvi.mock('../../../../../cli-core/src/config/findProjectRoot.js', () => ({\n findProjectRoot: vi.fn().mockResolvedValue({\n directory: '/test/path',\n root: '/test/path',\n type: 'studio',\n }),\n}))\n\nvi.mock('../../../../../cli-core/src/config/cli/getCliConfig.js', () => ({\n getCliConfig: vi.fn().mockResolvedValue({\n api: {\n dataset: 'production',\n projectId: 'test-project',\n },\n }),\n}))\n\nvi.mock('../../../../../cli-core/src/services/apiClient.js', () => ({\n getProjectCliClient: vi.fn(),\n}))\n\nvi.mock('../../../../../cli-core/src/services/getCliToken.js', () => ({\n getCliToken: vi.fn().mockResolvedValue('test-token'),\n}))\n\n// Mock the project API client\nconst mockTransaction = vi.fn()\nconst mockCommit = vi.fn()\nconst mockDelete = vi.fn()\n\n// Get the mocked functions\nconst mockedGetCliConfig = vi.mocked(getCliConfig)\nconst mockedGetProjectCliClient = vi.mocked(getProjectCliClient)\n\ndescribe('documents delete', () => {\n beforeEach(() => {\n // Setup transaction chain\n mockDelete.mockReturnValue({\n commit: mockCommit,\n delete: mockDelete,\n })\n mockTransaction.mockReturnValue({\n commit: mockCommit,\n delete: mockDelete,\n })\n\n mockedGetProjectCliClient.mockResolvedValue({\n transaction: mockTransaction,\n } as never)\n })\n\n afterEach(() => {\n vi.clearAllMocks()\n mockTransaction.mockReset()\n mockCommit.mockReset()\n mockDelete.mockReset()\n })\n\n test('--help works', async () => {\n const {stdout} = await runCommand(['documents delete', '--help'])\n\n expect(stdout).toMatchInlineSnapshot(`\n \"Delete one or more documents from the projects configured dataset\n\n USAGE\n $ sanity documents delete ID... [IDS...] [--dataset <value>]\n\n ARGUMENTS\n ID... Document ID to delete\n [IDS...] Additional document IDs to delete\n\n FLAGS\n --dataset=<value> NAME to override dataset\n\n DESCRIPTION\n Delete one or more documents from the projects configured dataset\n\n EXAMPLES\n Delete the document with the ID \"myDocId\"\n\n $ sanity documents delete myDocId\n\n ID wrapped in double or single quote works equally well\n\n $ sanity documents delete 'myDocId'\n\n Delete document with ID \"someDocId\" from dataset \"blog\"\n\n $ sanity documents delete --dataset=blog someDocId\n\n Delete the document with ID \"doc1\" and \"doc2\"\n\n $ sanity documents delete doc1 doc2\n\n \"\n `)\n })\n\n test('deletes a single document successfully', async () => {\n mockCommit.mockResolvedValue({\n results: [{id: 'test-doc', operation: 'delete'}],\n })\n\n const {stdout} = await testCommand(DeleteDocumentCommand, ['test-doc'])\n\n expect(stdout).toContain('Deleted 1 document')\n expect(mockDelete).toHaveBeenCalledWith('test-doc')\n expect(mockCommit).toHaveBeenCalled()\n })\n\n test('deletes multiple documents successfully', async () => {\n mockCommit.mockResolvedValue({\n results: [\n {id: 'doc1', operation: 'delete'},\n {id: 'doc2', operation: 'delete'},\n {id: 'doc3', operation: 'delete'},\n ],\n })\n\n const {stdout} = await testCommand(DeleteDocumentCommand, ['doc1', 'doc2', 'doc3'])\n\n expect(stdout).toContain('Deleted 3 documents')\n expect(mockDelete).toHaveBeenCalledWith('doc1')\n expect(mockDelete).toHaveBeenCalledWith('doc2')\n expect(mockDelete).toHaveBeenCalledWith('doc3')\n expect(mockCommit).toHaveBeenCalled()\n })\n\n test('handles documents not found', async () => {\n mockCommit.mockResolvedValue({\n results: [{id: 'doc1', operation: 'delete'}],\n })\n\n const {error} = await testCommand(DeleteDocumentCommand, ['doc1', 'nonexistent-doc'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Document not found: nonexistent-doc')\n expect(mockDelete).toHaveBeenCalledWith('doc1')\n expect(mockDelete).toHaveBeenCalledWith('nonexistent-doc')\n expect(mockCommit).toHaveBeenCalled()\n })\n\n test('uses custom dataset when --dataset flag is provided', async () => {\n mockCommit.mockResolvedValue({\n results: [{id: 'test-doc', operation: 'delete'}],\n })\n\n await testCommand(DeleteDocumentCommand, ['test-doc', '--dataset', 'staging'])\n\n expect(mockDelete).toHaveBeenCalledWith('test-doc')\n // Verify that the getProjectCliClient was called with the staging dataset\n expect(mockedGetProjectCliClient).toHaveBeenCalledWith(\n expect.objectContaining({\n dataset: 'staging',\n projectId: 'test-project',\n }),\n )\n })\n\n test('throws error when no project ID is configured', async () => {\n mockedGetCliConfig.mockResolvedValue({\n api: {\n dataset: 'production',\n projectId: undefined,\n },\n })\n\n const {error} = await testCommand(DeleteDocumentCommand, ['test-doc'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toEqual(NO_PROJECT_ID)\n expect(error?.oclif?.exit).toBe(1)\n\n // Restore the original mock for other tests\n mockedGetCliConfig.mockResolvedValue({\n api: {\n dataset: 'production',\n projectId: 'test-project',\n },\n })\n })\n\n test('throws error when no dataset is configured and none provided', async () => {\n mockedGetCliConfig.mockResolvedValueOnce({\n api: {\n dataset: undefined,\n projectId: 'test-project',\n },\n })\n\n const {error} = await testCommand(DeleteDocumentCommand, ['test-doc'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('No dataset specified')\n expect(error?.oclif?.exit).toBe(1)\n })\n\n test('handles transaction errors gracefully', async () => {\n mockCommit.mockRejectedValue(new Error('Transaction failed'))\n\n const {error} = await testCommand(DeleteDocumentCommand, ['test-doc'])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Failed to delete 1 document: Transaction failed')\n expect(error?.oclif?.exit).toBe(1)\n expect(mockDelete).toHaveBeenCalledWith('test-doc')\n })\n\n test('requires document ID argument', async () => {\n const {error} = await testCommand(DeleteDocumentCommand, [])\n\n expect(error).toBeInstanceOf(Error)\n expect(error?.message).toContain('Missing 1 required arg')\n })\n\n test('shows singular message when deleting one document', async () => {\n mockCommit.mockResolvedValue({\n results: [{id: 'test-doc', operation: 'delete'}],\n })\n\n const {stdout} = await testCommand(DeleteDocumentCommand, ['test-doc'])\n\n expect(stdout).toContain('Deleted 1 document')\n expect(stdout).not.toContain('documents')\n })\n\n test('shows plural message when deleting multiple documents', async () => {\n mockCommit.mockResolvedValue({\n results: [\n {id: 'doc1', operation: 'delete'},\n {id: 'doc2', operation: 'delete'},\n ],\n })\n\n const {stdout} = await testCommand(DeleteDocumentCommand, ['doc1', 'doc2'])\n\n expect(stdout).toContain('Deleted 2 documents')\n })\n})\n"],"names":["runCommand","getCliConfig","getProjectCliClient","testCommand","afterEach","beforeEach","describe","expect","test","vi","NO_PROJECT_ID","DeleteDocumentCommand","mock","findProjectRoot","fn","mockResolvedValue","directory","root","type","api","dataset","projectId","getCliToken","mockTransaction","mockCommit","mockDelete","mockedGetCliConfig","mocked","mockedGetProjectCliClient","mockReturnValue","commit","delete","transaction","clearAllMocks","mockReset","stdout","toMatchInlineSnapshot","results","id","operation","toContain","toHaveBeenCalledWith","toHaveBeenCalled","error","toBeInstanceOf","Error","message","objectContaining","undefined","toEqual","oclif","exit","toBe","mockResolvedValueOnce","mockRejectedValue","not"],"mappings":"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"}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { runCommand } from '@oclif/test';
|
|
2
|
+
import { getCliConfig, getProjectCliClient } from '@sanity/cli-core';
|
|
3
|
+
import { chalk } from '@sanity/cli-core/ux';
|
|
4
|
+
import { testCommand } from '@sanity/cli-test';
|
|
5
|
+
import { afterEach, describe, expect, test, vi } from 'vitest';
|
|
6
|
+
import { NO_PROJECT_ID } from '../../../util/errorMessages.js';
|
|
7
|
+
import { GetDocumentCommand } from '../get.js';
|
|
8
|
+
// Mock the config functions
|
|
9
|
+
vi.mock('../../../../../cli-core/src/config/findProjectRoot.js', ()=>({
|
|
10
|
+
findProjectRoot: vi.fn().mockResolvedValue({
|
|
11
|
+
directory: '/test/path',
|
|
12
|
+
root: '/test/path',
|
|
13
|
+
type: 'studio'
|
|
14
|
+
})
|
|
15
|
+
}));
|
|
16
|
+
vi.mock('../../../../../cli-core/src/config/cli/getCliConfig.js', ()=>({
|
|
17
|
+
getCliConfig: vi.fn()
|
|
18
|
+
}));
|
|
19
|
+
vi.mock('../../../../../cli-core/src/services/getCliToken.js', ()=>({
|
|
20
|
+
getCliToken: vi.fn().mockResolvedValue('test-token')
|
|
21
|
+
}));
|
|
22
|
+
vi.mock('../../../../../cli-core/src/services/apiClient.js', ()=>({
|
|
23
|
+
getProjectCliClient: vi.fn()
|
|
24
|
+
}));
|
|
25
|
+
const mockGetCliConfig = vi.mocked(getCliConfig);
|
|
26
|
+
const mockGetProjectCliClient = vi.mocked(getProjectCliClient);
|
|
27
|
+
const testProjectId = 'test-project';
|
|
28
|
+
const testDataset = 'production';
|
|
29
|
+
describe('#documents:get', ()=>{
|
|
30
|
+
afterEach(()=>{
|
|
31
|
+
vi.clearAllMocks();
|
|
32
|
+
});
|
|
33
|
+
test('--help works', async ()=>{
|
|
34
|
+
const { stdout } = await runCommand([
|
|
35
|
+
'documents get',
|
|
36
|
+
'--help'
|
|
37
|
+
]);
|
|
38
|
+
expect(stdout).toContain('Get and print a document by ID');
|
|
39
|
+
expect(stdout).toContain('ARGUMENTS');
|
|
40
|
+
expect(stdout).toContain('DOCUMENTID');
|
|
41
|
+
});
|
|
42
|
+
test('retrieves and displays a document successfully', async ()=>{
|
|
43
|
+
const mockDoc = {
|
|
44
|
+
_id: 'test-doc',
|
|
45
|
+
_type: 'post',
|
|
46
|
+
content: 'This is a test post',
|
|
47
|
+
title: 'Test Post'
|
|
48
|
+
};
|
|
49
|
+
mockGetCliConfig.mockResolvedValue({
|
|
50
|
+
api: {
|
|
51
|
+
dataset: testDataset,
|
|
52
|
+
projectId: testProjectId
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
// Mock the getProjectApiClient to return a mock client with getDocument
|
|
56
|
+
const mockGetDocument = vi.fn().mockResolvedValue(mockDoc);
|
|
57
|
+
mockGetProjectCliClient.mockResolvedValue({
|
|
58
|
+
getDocument: mockGetDocument
|
|
59
|
+
});
|
|
60
|
+
const { stdout } = await testCommand(GetDocumentCommand, [
|
|
61
|
+
'test-doc'
|
|
62
|
+
]);
|
|
63
|
+
expect(stdout).toContain('"_id": "test-doc"');
|
|
64
|
+
expect(stdout).toContain('"title": "Test Post"');
|
|
65
|
+
expect(mockGetDocument).toHaveBeenCalledWith('test-doc');
|
|
66
|
+
});
|
|
67
|
+
test('displays colorized output when --pretty flag is used', async ()=>{
|
|
68
|
+
const mockDoc = {
|
|
69
|
+
_id: 'test-doc',
|
|
70
|
+
_type: 'post',
|
|
71
|
+
title: 'Test Post'
|
|
72
|
+
};
|
|
73
|
+
mockGetCliConfig.mockResolvedValue({
|
|
74
|
+
api: {
|
|
75
|
+
dataset: testDataset,
|
|
76
|
+
projectId: testProjectId
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
// Mock the getProjectApiClient to return a mock client with getDocument
|
|
80
|
+
const mockGetDocument = vi.fn().mockResolvedValue(mockDoc);
|
|
81
|
+
mockGetProjectCliClient.mockResolvedValue({
|
|
82
|
+
getDocument: mockGetDocument
|
|
83
|
+
});
|
|
84
|
+
const originalChalkLevel = chalk.level;
|
|
85
|
+
// Force colorization
|
|
86
|
+
chalk.level = 3;
|
|
87
|
+
const { stdout } = await testCommand(GetDocumentCommand, [
|
|
88
|
+
'test-doc',
|
|
89
|
+
'--pretty'
|
|
90
|
+
], {
|
|
91
|
+
capture: {
|
|
92
|
+
stripAnsi: false
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
// Reset chalk level
|
|
96
|
+
chalk.level = originalChalkLevel;
|
|
97
|
+
// Check that the output contains the document data
|
|
98
|
+
expect(stdout).toContain('test-doc');
|
|
99
|
+
expect(stdout).toContain('Test Post');
|
|
100
|
+
expect(stdout).toContain('_id');
|
|
101
|
+
expect(stdout).toContain('_type');
|
|
102
|
+
expect(stdout).toContain('title');
|
|
103
|
+
// eslint-disable-next-line no-control-regex
|
|
104
|
+
expect(stdout).toMatch(/\u001B\[\d+m/);
|
|
105
|
+
expect(mockGetDocument).toHaveBeenCalledWith('test-doc');
|
|
106
|
+
});
|
|
107
|
+
test('uses custom dataset when --dataset flag is provided', async ()=>{
|
|
108
|
+
const mockDoc = {
|
|
109
|
+
_id: 'test-doc',
|
|
110
|
+
_type: 'post',
|
|
111
|
+
title: 'Test Post'
|
|
112
|
+
};
|
|
113
|
+
mockGetCliConfig.mockResolvedValue({
|
|
114
|
+
api: {
|
|
115
|
+
dataset: testDataset,
|
|
116
|
+
projectId: testProjectId
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
// Mock the getProjectApiClient to return a mock client with getDocument
|
|
120
|
+
const mockGetDocument = vi.fn().mockResolvedValue(mockDoc);
|
|
121
|
+
mockGetProjectCliClient.mockResolvedValue({
|
|
122
|
+
getDocument: mockGetDocument
|
|
123
|
+
});
|
|
124
|
+
const { stdout } = await testCommand(GetDocumentCommand, [
|
|
125
|
+
'test-doc',
|
|
126
|
+
'--dataset',
|
|
127
|
+
'staging'
|
|
128
|
+
]);
|
|
129
|
+
expect(stdout).toContain('"_id": "test-doc"');
|
|
130
|
+
expect(stdout).toContain('"title": "Test Post"');
|
|
131
|
+
expect(mockGetDocument).toHaveBeenCalledWith('test-doc');
|
|
132
|
+
});
|
|
133
|
+
test('throws error when document is not found', async ()=>{
|
|
134
|
+
mockGetCliConfig.mockResolvedValue({
|
|
135
|
+
api: {
|
|
136
|
+
dataset: testDataset,
|
|
137
|
+
projectId: testProjectId
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
// Mock the getProjectApiClient to return a mock client with getDocument returning null
|
|
141
|
+
const mockGetDocument = vi.fn().mockResolvedValue(null);
|
|
142
|
+
mockGetProjectCliClient.mockResolvedValue({
|
|
143
|
+
getDocument: mockGetDocument
|
|
144
|
+
});
|
|
145
|
+
const { error } = await testCommand(GetDocumentCommand, [
|
|
146
|
+
'nonexistent-doc'
|
|
147
|
+
]);
|
|
148
|
+
expect(error).toBeInstanceOf(Error);
|
|
149
|
+
expect(error?.message).toContain('Document "nonexistent-doc" not found');
|
|
150
|
+
expect(error?.oclif?.exit).toBe(1);
|
|
151
|
+
expect(mockGetDocument).toHaveBeenCalledWith('nonexistent-doc');
|
|
152
|
+
});
|
|
153
|
+
test('throws error when no project ID is configured', async ()=>{
|
|
154
|
+
mockGetCliConfig.mockResolvedValue({
|
|
155
|
+
api: {
|
|
156
|
+
dataset: 'production',
|
|
157
|
+
projectId: undefined
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
const { error } = await testCommand(GetDocumentCommand, [
|
|
161
|
+
'test-doc'
|
|
162
|
+
]);
|
|
163
|
+
expect(error).toBeInstanceOf(Error);
|
|
164
|
+
expect(error?.message).toEqual(NO_PROJECT_ID);
|
|
165
|
+
expect(error?.oclif?.exit).toBe(1);
|
|
166
|
+
});
|
|
167
|
+
test('throws error when no dataset is configured and none provided', async ()=>{
|
|
168
|
+
mockGetCliConfig.mockResolvedValue({
|
|
169
|
+
api: {
|
|
170
|
+
dataset: undefined,
|
|
171
|
+
projectId: testProjectId
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
const { error } = await testCommand(GetDocumentCommand, [
|
|
175
|
+
'test-doc'
|
|
176
|
+
]);
|
|
177
|
+
expect(error).toBeInstanceOf(Error);
|
|
178
|
+
expect(error?.message).toContain('No dataset specified');
|
|
179
|
+
expect(error?.oclif?.exit).toBe(1);
|
|
180
|
+
});
|
|
181
|
+
test('handles client errors gracefully', async ()=>{
|
|
182
|
+
mockGetCliConfig.mockResolvedValue({
|
|
183
|
+
api: {
|
|
184
|
+
dataset: testDataset,
|
|
185
|
+
projectId: testProjectId
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
// Mock the getProjectApiClient to return a mock client with getDocument throwing an error
|
|
189
|
+
const mockGetDocument = vi.fn().mockRejectedValue(new Error('Network error'));
|
|
190
|
+
mockGetProjectCliClient.mockResolvedValue({
|
|
191
|
+
getDocument: mockGetDocument
|
|
192
|
+
});
|
|
193
|
+
const { error } = await testCommand(GetDocumentCommand, [
|
|
194
|
+
'test-doc'
|
|
195
|
+
]);
|
|
196
|
+
expect(error).toBeInstanceOf(Error);
|
|
197
|
+
expect(error?.message).toContain('Failed to fetch document');
|
|
198
|
+
expect(error?.oclif?.exit).toBe(1);
|
|
199
|
+
expect(mockGetDocument).toHaveBeenCalledWith('test-doc');
|
|
200
|
+
});
|
|
201
|
+
test('requires document ID argument', async ()=>{
|
|
202
|
+
const { error } = await testCommand(GetDocumentCommand, []);
|
|
203
|
+
expect(error).toBeInstanceOf(Error);
|
|
204
|
+
expect(error?.message).toContain('Missing 1 required arg');
|
|
205
|
+
expect(error?.oclif?.exit).toBe(2);
|
|
206
|
+
});
|
|
207
|
+
});
|
|
208
|
+
|
|
209
|
+
//# sourceMappingURL=get.test.js.map
|