@sanity/cli 5.1.1-next.6 → 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,143 @@
|
|
|
1
|
+
import { access, mkdir, writeFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { Args } from '@oclif/core';
|
|
4
|
+
import { SanityCommand } from '@sanity/cli-core';
|
|
5
|
+
import { chalk, confirm, input, select } from '@sanity/cli-core/ux';
|
|
6
|
+
import { deburr } from 'lodash-es';
|
|
7
|
+
import { getMigrationRootDirectory } from '../../actions/migration/getMigrationRootDirectory.js';
|
|
8
|
+
import { minimalAdvanced, minimalSimple, renameField, renameType, stringToPTE } from '../../actions/migration/templates/index.js';
|
|
9
|
+
import { MIGRATIONS_DIRECTORY } from '../../util/migration/constants.js';
|
|
10
|
+
const TEMPLATES = [
|
|
11
|
+
{
|
|
12
|
+
name: 'Minimalistic migration to get you started',
|
|
13
|
+
template: minimalSimple
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
name: 'Rename an object type',
|
|
17
|
+
template: renameType
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
name: 'Rename a field',
|
|
21
|
+
template: renameField
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'Convert string field to Portable Text',
|
|
25
|
+
template: stringToPTE
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: 'Advanced template using async iterators providing more fine grained control',
|
|
29
|
+
template: minimalAdvanced
|
|
30
|
+
}
|
|
31
|
+
];
|
|
32
|
+
export class CreateMigrationCommand extends SanityCommand {
|
|
33
|
+
static args = {
|
|
34
|
+
title: Args.string({
|
|
35
|
+
description: 'Title of migration',
|
|
36
|
+
required: false
|
|
37
|
+
})
|
|
38
|
+
};
|
|
39
|
+
static description = 'Create a new migration within your project';
|
|
40
|
+
static examples = [
|
|
41
|
+
{
|
|
42
|
+
command: '<%= config.bin %> <%= command.id %>',
|
|
43
|
+
description: 'Create a new migration, prompting for title and options'
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
command: '<%= config.bin %> <%= command.id %> "Rename field from location to address"',
|
|
47
|
+
description: 'Create a new migration with the provided title, prompting for options'
|
|
48
|
+
}
|
|
49
|
+
];
|
|
50
|
+
async run() {
|
|
51
|
+
const { args } = await this.parse(CreateMigrationCommand);
|
|
52
|
+
const workDir = await getMigrationRootDirectory(this.output);
|
|
53
|
+
const title = await this.promptForTitle(args.title);
|
|
54
|
+
const types = await this.promptForDocumentTypes();
|
|
55
|
+
const { template } = await this.promptForTemplate();
|
|
56
|
+
const renderedTemplate = (template || minimalSimple)({
|
|
57
|
+
documentTypes: types.split(',').map((t)=>t.trim()).filter(Boolean),
|
|
58
|
+
migrationName: title
|
|
59
|
+
});
|
|
60
|
+
const sluggedName = deburr(title.toLowerCase()).replaceAll(/\s+/g, '-').replaceAll(/[^a-z0-9-]/g, '');
|
|
61
|
+
const destDir = path.join(workDir, MIGRATIONS_DIRECTORY, sluggedName);
|
|
62
|
+
const definitionFile = path.join(destDir, 'index.ts');
|
|
63
|
+
const dirCreated = await this.createMigrationFile(destDir, definitionFile, renderedTemplate);
|
|
64
|
+
if (dirCreated) {
|
|
65
|
+
this.log();
|
|
66
|
+
this.log(`${chalk.green('✓')} Migration created!`);
|
|
67
|
+
this.log();
|
|
68
|
+
this.log('Next steps:');
|
|
69
|
+
this.log(`Open ${chalk.bold(definitionFile)} in your code editor and write the code for your migration.`);
|
|
70
|
+
this.log(`Dry run the migration with:\n\`${chalk.bold(`sanity migration run ${sluggedName} --project=<projectId> --dataset <dataset> `)}\``);
|
|
71
|
+
this.log(`Run the migration against a dataset with:\n \`${chalk.bold(`sanity migration run ${sluggedName} --project=<projectId> --dataset <dataset> --no-dry-run`)}\``);
|
|
72
|
+
this.log();
|
|
73
|
+
this.log(`👉 Learn more about schema and content migrations at ${chalk.bold('https://www.sanity.io/docs/schema-and-content-migrations')}`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
async createMigrationFile(destDir, definitionFile, renderedTemplate) {
|
|
77
|
+
const dirExists = await access(destDir).then(()=>true).catch(()=>false);
|
|
78
|
+
if (dirExists) {
|
|
79
|
+
const shouldOverwrite = await this.promptForOverwrite(destDir);
|
|
80
|
+
if (!shouldOverwrite) return false;
|
|
81
|
+
}
|
|
82
|
+
try {
|
|
83
|
+
await mkdir(destDir, {
|
|
84
|
+
recursive: true
|
|
85
|
+
});
|
|
86
|
+
} catch (error) {
|
|
87
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
88
|
+
this.error(`Failed to create migration directory: ${message}`, {
|
|
89
|
+
exit: 1
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
try {
|
|
93
|
+
await writeFile(definitionFile, renderedTemplate);
|
|
94
|
+
} catch (error) {
|
|
95
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
96
|
+
this.error(`Failed to create migration file: ${message}`, {
|
|
97
|
+
exit: 1
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
return true;
|
|
101
|
+
}
|
|
102
|
+
async promptForDocumentTypes() {
|
|
103
|
+
return input({
|
|
104
|
+
message: 'Type of documents to migrate. You can add multiple types separated by comma (optional)'
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
async promptForOverwrite(destDir) {
|
|
108
|
+
return confirm({
|
|
109
|
+
default: false,
|
|
110
|
+
message: `Migration directory ${chalk.cyan(destDir)} already exists. Overwrite?`
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
async promptForTemplate() {
|
|
114
|
+
const templatesByName = Object.fromEntries(TEMPLATES.map((t)=>[
|
|
115
|
+
t.name,
|
|
116
|
+
t
|
|
117
|
+
]));
|
|
118
|
+
const templateName = await select({
|
|
119
|
+
choices: TEMPLATES.map((definedTemplate)=>({
|
|
120
|
+
name: definedTemplate.name,
|
|
121
|
+
value: definedTemplate.name
|
|
122
|
+
})),
|
|
123
|
+
message: 'Select a template'
|
|
124
|
+
});
|
|
125
|
+
return templatesByName[templateName];
|
|
126
|
+
}
|
|
127
|
+
async promptForTitle(providedTitle) {
|
|
128
|
+
if (providedTitle?.trim()) {
|
|
129
|
+
return providedTitle;
|
|
130
|
+
}
|
|
131
|
+
return input({
|
|
132
|
+
message: 'Title of migration (e.g. "Rename field from location to address")',
|
|
133
|
+
validate: (value)=>{
|
|
134
|
+
if (!value.trim()) {
|
|
135
|
+
return 'Title cannot be empty';
|
|
136
|
+
}
|
|
137
|
+
return true;
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
//# sourceMappingURL=create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/commands/migration/create.ts"],"sourcesContent":["import {access, mkdir, writeFile} from 'node:fs/promises'\nimport path from 'node:path'\n\nimport {Args} from '@oclif/core'\nimport {SanityCommand} from '@sanity/cli-core'\nimport {chalk, confirm, input, select} from '@sanity/cli-core/ux'\nimport {deburr} from 'lodash-es'\n\nimport {getMigrationRootDirectory} from '../../actions/migration/getMigrationRootDirectory.js'\nimport {\n minimalAdvanced,\n minimalSimple,\n renameField,\n renameType,\n stringToPTE,\n} from '../../actions/migration/templates/index.js'\nimport {MIGRATIONS_DIRECTORY} from '../../util/migration/constants.js'\n\nconst TEMPLATES = [\n {name: 'Minimalistic migration to get you started', template: minimalSimple},\n {name: 'Rename an object type', template: renameType},\n {name: 'Rename a field', template: renameField},\n {name: 'Convert string field to Portable Text', template: stringToPTE},\n {\n name: 'Advanced template using async iterators providing more fine grained control',\n template: minimalAdvanced,\n },\n]\n\nexport class CreateMigrationCommand extends SanityCommand<typeof CreateMigrationCommand> {\n static override args = {\n title: Args.string({\n description: 'Title of migration',\n required: false,\n }),\n }\n\n static override description = 'Create a new migration within your project'\n\n static override examples = [\n {\n command: '<%= config.bin %> <%= command.id %>',\n description: 'Create a new migration, prompting for title and options',\n },\n {\n command: '<%= config.bin %> <%= command.id %> \"Rename field from location to address\"',\n description: 'Create a new migration with the provided title, prompting for options',\n },\n ]\n\n public async run(): Promise<void> {\n const {args} = await this.parse(CreateMigrationCommand)\n const workDir = await getMigrationRootDirectory(this.output)\n\n const title = await this.promptForTitle(args.title)\n const types = await this.promptForDocumentTypes()\n const {template} = await this.promptForTemplate()\n\n const renderedTemplate = (template || minimalSimple)({\n documentTypes: types\n .split(',')\n .map((t) => t.trim())\n .filter(Boolean),\n migrationName: title,\n })\n\n const sluggedName = deburr(title.toLowerCase())\n .replaceAll(/\\s+/g, '-')\n .replaceAll(/[^a-z0-9-]/g, '')\n\n const destDir = path.join(workDir, MIGRATIONS_DIRECTORY, sluggedName)\n const definitionFile = path.join(destDir, 'index.ts')\n\n const dirCreated = await this.createMigrationFile(destDir, definitionFile, renderedTemplate)\n\n if (dirCreated) {\n this.log()\n this.log(`${chalk.green('✓')} Migration created!`)\n this.log()\n this.log('Next steps:')\n this.log(\n `Open ${chalk.bold(\n definitionFile,\n )} in your code editor and write the code for your migration.`,\n )\n this.log(\n `Dry run the migration with:\\n\\`${chalk.bold(\n `sanity migration run ${sluggedName} --project=<projectId> --dataset <dataset> `,\n )}\\``,\n )\n this.log(\n `Run the migration against a dataset with:\\n \\`${chalk.bold(\n `sanity migration run ${sluggedName} --project=<projectId> --dataset <dataset> --no-dry-run`,\n )}\\``,\n )\n this.log()\n this.log(\n `👉 Learn more about schema and content migrations at ${chalk.bold(\n 'https://www.sanity.io/docs/schema-and-content-migrations',\n )}`,\n )\n }\n }\n\n private async createMigrationFile(\n destDir: string,\n definitionFile: string,\n renderedTemplate: string,\n ): Promise<boolean> {\n const dirExists = await access(destDir)\n .then(() => true)\n .catch(() => false)\n\n if (dirExists) {\n const shouldOverwrite = await this.promptForOverwrite(destDir)\n if (!shouldOverwrite) return false\n }\n\n try {\n await mkdir(destDir, {recursive: true})\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n this.error(`Failed to create migration directory: ${message}`, {exit: 1})\n }\n\n try {\n await writeFile(definitionFile, renderedTemplate)\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n this.error(`Failed to create migration file: ${message}`, {exit: 1})\n }\n\n return true\n }\n\n private async promptForDocumentTypes(): Promise<string> {\n return input({\n message:\n 'Type of documents to migrate. You can add multiple types separated by comma (optional)',\n })\n }\n\n private async promptForOverwrite(destDir: string): Promise<boolean> {\n return confirm({\n default: false,\n message: `Migration directory ${chalk.cyan(destDir)} already exists. Overwrite?`,\n })\n }\n\n private async promptForTemplate(): Promise<{\n name: string\n template: (params: {documentTypes: string[]; migrationName: string}) => string\n }> {\n const templatesByName = Object.fromEntries(TEMPLATES.map((t) => [t.name, t]))\n const templateName = await select({\n choices: TEMPLATES.map((definedTemplate) => ({\n name: definedTemplate.name,\n value: definedTemplate.name,\n })),\n message: 'Select a template',\n })\n\n return templatesByName[templateName]\n }\n\n private async promptForTitle(providedTitle?: string): Promise<string> {\n if (providedTitle?.trim()) {\n return providedTitle\n }\n\n return input({\n message: 'Title of migration (e.g. \"Rename field from location to address\")',\n validate: (value) => {\n if (!value.trim()) {\n return 'Title cannot be empty'\n }\n\n return true\n },\n })\n }\n}\n"],"names":["access","mkdir","writeFile","path","Args","SanityCommand","chalk","confirm","input","select","deburr","getMigrationRootDirectory","minimalAdvanced","minimalSimple","renameField","renameType","stringToPTE","MIGRATIONS_DIRECTORY","TEMPLATES","name","template","CreateMigrationCommand","args","title","string","description","required","examples","command","run","parse","workDir","output","promptForTitle","types","promptForDocumentTypes","promptForTemplate","renderedTemplate","documentTypes","split","map","t","trim","filter","Boolean","migrationName","sluggedName","toLowerCase","replaceAll","destDir","join","definitionFile","dirCreated","createMigrationFile","log","green","bold","dirExists","then","catch","shouldOverwrite","promptForOverwrite","recursive","error","message","Error","String","exit","default","cyan","templatesByName","Object","fromEntries","templateName","choices","definedTemplate","value","providedTitle","validate"],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SanityCommand } from '@sanity/cli-core';
|
|
2
|
+
export declare class ListMigrationCommand extends SanityCommand<typeof ListMigrationCommand> {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: {
|
|
5
|
+
command: string;
|
|
6
|
+
description: string;
|
|
7
|
+
}[];
|
|
8
|
+
run(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { SanityCommand, subdebug } from '@sanity/cli-core';
|
|
2
|
+
import { chalk } from '@sanity/cli-core/ux';
|
|
3
|
+
import { Table } from 'console-table-printer';
|
|
4
|
+
import { resolveMigrations } from '../../actions/migration/resolveMigrations.js';
|
|
5
|
+
const listMigrationDebug = subdebug('migration:list');
|
|
6
|
+
export class ListMigrationCommand extends SanityCommand {
|
|
7
|
+
static description = 'List available migrations';
|
|
8
|
+
static examples = [
|
|
9
|
+
{
|
|
10
|
+
command: '<%= config.bin %> <%= command.id %>',
|
|
11
|
+
description: 'List all available migrations in the project'
|
|
12
|
+
}
|
|
13
|
+
];
|
|
14
|
+
async run() {
|
|
15
|
+
const { directory: workDir } = await this.getProjectRoot();
|
|
16
|
+
try {
|
|
17
|
+
const migrations = await resolveMigrations(workDir);
|
|
18
|
+
if (migrations.length === 0) {
|
|
19
|
+
this.log('No migrations found in migrations folder of the project');
|
|
20
|
+
this.log(`\nRun ${chalk.green('`sanity migration create <NAME>`')} to create a new migration`);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const table = new Table({
|
|
24
|
+
columns: [
|
|
25
|
+
{
|
|
26
|
+
alignment: 'left',
|
|
27
|
+
name: 'id',
|
|
28
|
+
title: 'ID'
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
alignment: 'left',
|
|
32
|
+
name: 'title',
|
|
33
|
+
title: 'Title'
|
|
34
|
+
}
|
|
35
|
+
],
|
|
36
|
+
title: `Found ${migrations.length} migrations in project`
|
|
37
|
+
});
|
|
38
|
+
for (const definedMigration of migrations){
|
|
39
|
+
table.addRow({
|
|
40
|
+
id: definedMigration.id,
|
|
41
|
+
title: definedMigration.migration.title
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
table.printTable();
|
|
45
|
+
this.log('\nRun `sanity migration run <ID>` to run a migration');
|
|
46
|
+
listMigrationDebug(`Successfully listed ${migrations.length} migrations`);
|
|
47
|
+
} catch (error) {
|
|
48
|
+
if (error.code === 'ENOENT') {
|
|
49
|
+
this.log('No migrations folder found in the project');
|
|
50
|
+
this.log(`\nRun ${chalk.green('`sanity migration create <NAME>`')} to create a new migration`);
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
listMigrationDebug('Failed to list migrations:', error);
|
|
54
|
+
this.error(`List migrations failed: ${error instanceof Error ? error.message : String(error)}`, {
|
|
55
|
+
exit: 1
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/commands/migration/list.ts"],"sourcesContent":["import {SanityCommand, subdebug} from '@sanity/cli-core'\nimport {chalk} from '@sanity/cli-core/ux'\nimport {Table} from 'console-table-printer'\n\nimport {resolveMigrations} from '../../actions/migration/resolveMigrations.js'\n\nconst listMigrationDebug = subdebug('migration:list')\n\nexport class ListMigrationCommand extends SanityCommand<typeof ListMigrationCommand> {\n static override description = 'List available migrations'\n\n static override examples = [\n {\n command: '<%= config.bin %> <%= command.id %>',\n description: 'List all available migrations in the project',\n },\n ]\n\n public async run(): Promise<void> {\n const {directory: workDir} = await this.getProjectRoot()\n\n try {\n const migrations = await resolveMigrations(workDir)\n\n if (migrations.length === 0) {\n this.log('No migrations found in migrations folder of the project')\n this.log(\n `\\nRun ${chalk.green('`sanity migration create <NAME>`')} to create a new migration`,\n )\n return\n }\n\n const table = new Table({\n columns: [\n {alignment: 'left', name: 'id', title: 'ID'},\n {alignment: 'left', name: 'title', title: 'Title'},\n ],\n title: `Found ${migrations.length} migrations in project`,\n })\n\n for (const definedMigration of migrations) {\n table.addRow({id: definedMigration.id, title: definedMigration.migration.title})\n }\n table.printTable()\n this.log('\\nRun `sanity migration run <ID>` to run a migration')\n listMigrationDebug(`Successfully listed ${migrations.length} migrations`)\n } catch (error) {\n if ((error as NodeJS.ErrnoException).code === 'ENOENT') {\n this.log('No migrations folder found in the project')\n this.log(\n `\\nRun ${chalk.green('`sanity migration create <NAME>`')} to create a new migration`,\n )\n return\n }\n listMigrationDebug('Failed to list migrations:', error)\n this.error(\n `List migrations failed: ${error instanceof Error ? error.message : String(error)}`,\n {\n exit: 1,\n },\n )\n }\n }\n}\n"],"names":["SanityCommand","subdebug","chalk","Table","resolveMigrations","listMigrationDebug","ListMigrationCommand","description","examples","command","run","directory","workDir","getProjectRoot","migrations","length","log","green","table","columns","alignment","name","title","definedMigration","addRow","id","migration","printTable","error","code","Error","message","String","exit"],"mappings":"AAAA,SAAQA,aAAa,EAAEC,QAAQ,QAAO,mBAAkB;AACxD,SAAQC,KAAK,QAAO,sBAAqB;AACzC,SAAQC,KAAK,QAAO,wBAAuB;AAE3C,SAAQC,iBAAiB,QAAO,+CAA8C;AAE9E,MAAMC,qBAAqBJ,SAAS;AAEpC,OAAO,MAAMK,6BAA6BN;IACxC,OAAgBO,cAAc,4BAA2B;IAEzD,OAAgBC,WAAW;QACzB;YACEC,SAAS;YACTF,aAAa;QACf;KACD,CAAA;IAED,MAAaG,MAAqB;QAChC,MAAM,EAACC,WAAWC,OAAO,EAAC,GAAG,MAAM,IAAI,CAACC,cAAc;QAEtD,IAAI;YACF,MAAMC,aAAa,MAAMV,kBAAkBQ;YAE3C,IAAIE,WAAWC,MAAM,KAAK,GAAG;gBAC3B,IAAI,CAACC,GAAG,CAAC;gBACT,IAAI,CAACA,GAAG,CACN,CAAC,MAAM,EAAEd,MAAMe,KAAK,CAAC,oCAAoC,0BAA0B,CAAC;gBAEtF;YACF;YAEA,MAAMC,QAAQ,IAAIf,MAAM;gBACtBgB,SAAS;oBACP;wBAACC,WAAW;wBAAQC,MAAM;wBAAMC,OAAO;oBAAI;oBAC3C;wBAACF,WAAW;wBAAQC,MAAM;wBAASC,OAAO;oBAAO;iBAClD;gBACDA,OAAO,CAAC,MAAM,EAAER,WAAWC,MAAM,CAAC,sBAAsB,CAAC;YAC3D;YAEA,KAAK,MAAMQ,oBAAoBT,WAAY;gBACzCI,MAAMM,MAAM,CAAC;oBAACC,IAAIF,iBAAiBE,EAAE;oBAAEH,OAAOC,iBAAiBG,SAAS,CAACJ,KAAK;gBAAA;YAChF;YACAJ,MAAMS,UAAU;YAChB,IAAI,CAACX,GAAG,CAAC;YACTX,mBAAmB,CAAC,oBAAoB,EAAES,WAAWC,MAAM,CAAC,WAAW,CAAC;QAC1E,EAAE,OAAOa,OAAO;YACd,IAAI,AAACA,MAAgCC,IAAI,KAAK,UAAU;gBACtD,IAAI,CAACb,GAAG,CAAC;gBACT,IAAI,CAACA,GAAG,CACN,CAAC,MAAM,EAAEd,MAAMe,KAAK,CAAC,oCAAoC,0BAA0B,CAAC;gBAEtF;YACF;YACAZ,mBAAmB,8BAA8BuB;YACjD,IAAI,CAACA,KAAK,CACR,CAAC,wBAAwB,EAAEA,iBAAiBE,QAAQF,MAAMG,OAAO,GAAGC,OAAOJ,QAAQ,EACnF;gBACEK,MAAM;YACR;QAEJ;IACF;AACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SanityCommand } from '@sanity/cli-core';
|
|
2
|
+
export type RunMigrationFlags = RunMigrationCommand['flags'];
|
|
3
|
+
export declare class RunMigrationCommand extends SanityCommand<typeof RunMigrationCommand> {
|
|
4
|
+
static args: {
|
|
5
|
+
id: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static description: string;
|
|
8
|
+
static examples: {
|
|
9
|
+
command: string;
|
|
10
|
+
description: string;
|
|
11
|
+
}[];
|
|
12
|
+
static flags: {
|
|
13
|
+
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
concurrency: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
confirm: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
16
|
+
dataset: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
'dry-run': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
18
|
+
'from-export': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
progress: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
20
|
+
project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
};
|
|
22
|
+
run(): Promise<void>;
|
|
23
|
+
private createProgress;
|
|
24
|
+
private dryRunHandler;
|
|
25
|
+
private promptConfirmMigrate;
|
|
26
|
+
}
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { Args, Flags } from '@oclif/core';
|
|
3
|
+
import { SanityCommand, subdebug } from '@sanity/cli-core';
|
|
4
|
+
import { chalk, confirm, spinner } from '@sanity/cli-core/ux';
|
|
5
|
+
import { DEFAULT_MUTATION_CONCURRENCY, dryRun, MAX_MUTATION_CONCURRENCY, run } from '@sanity/migrate';
|
|
6
|
+
import { Table } from 'console-table-printer';
|
|
7
|
+
import { getMigrationRootDirectory } from '../../actions/migration/getMigrationRootDirectory.js';
|
|
8
|
+
import { resolveMigrations } from '../../actions/migration/resolveMigrations.js';
|
|
9
|
+
import { DEFAULT_API_VERSION, MIGRATIONS_DIRECTORY } from '../../util/migration/constants.js';
|
|
10
|
+
import { ensureApiVersionFormat } from '../../util/migration/ensureApiVersionFormat.js';
|
|
11
|
+
import { prettyFormat } from '../../util/migration/prettyMutationFormatter.js';
|
|
12
|
+
import { isLoadableMigrationScript, resolveMigrationScript } from '../../utils/migration/resolveMigrationScript.js';
|
|
13
|
+
const runMigrationDebug = subdebug('migration:run');
|
|
14
|
+
export class RunMigrationCommand extends SanityCommand {
|
|
15
|
+
static args = {
|
|
16
|
+
id: Args.string({
|
|
17
|
+
description: 'ID',
|
|
18
|
+
required: false
|
|
19
|
+
})
|
|
20
|
+
};
|
|
21
|
+
static description = 'Run a migration against a dataset';
|
|
22
|
+
static examples = [
|
|
23
|
+
{
|
|
24
|
+
command: '<%= config.bin %> <%= command.id %> <id>',
|
|
25
|
+
description: 'dry run the migration'
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
command: '<%= config.bin %> <%= command.id %> <id> --no-dry-run --project xyz --dataset staging',
|
|
29
|
+
description: 'execute the migration against a dataset'
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
command: '<%= config.bin %> <%= command.id %> <id> --from-export=production.tar.gz --no-dry-run --project xyz --dataset staging',
|
|
33
|
+
description: 'execute the migration using a dataset export as the source'
|
|
34
|
+
}
|
|
35
|
+
];
|
|
36
|
+
static flags = {
|
|
37
|
+
'api-version': Flags.string({
|
|
38
|
+
description: `API version to use when migrating. Defaults to ${DEFAULT_API_VERSION}.`
|
|
39
|
+
}),
|
|
40
|
+
concurrency: Flags.integer({
|
|
41
|
+
default: DEFAULT_MUTATION_CONCURRENCY,
|
|
42
|
+
description: `How many mutation requests to run in parallel. Must be between 1 and ${MAX_MUTATION_CONCURRENCY}. Default: ${DEFAULT_MUTATION_CONCURRENCY}.`
|
|
43
|
+
}),
|
|
44
|
+
confirm: Flags.boolean({
|
|
45
|
+
allowNo: true,
|
|
46
|
+
default: true,
|
|
47
|
+
description: 'Prompt for confirmation before running the migration (default: true). Use --no-confirm to skip.'
|
|
48
|
+
}),
|
|
49
|
+
dataset: Flags.string({
|
|
50
|
+
description: 'Dataset to migrate. Defaults to the dataset configured in your Sanity CLI config.'
|
|
51
|
+
}),
|
|
52
|
+
'dry-run': Flags.boolean({
|
|
53
|
+
allowNo: true,
|
|
54
|
+
default: true,
|
|
55
|
+
description: 'By default the migration runs in dry mode. Use --no-dry-run to migrate dataset.'
|
|
56
|
+
}),
|
|
57
|
+
'from-export': Flags.string({
|
|
58
|
+
description: 'Use a local dataset export as source for migration instead of calling the Sanity API. Note: this is only supported for dry runs.'
|
|
59
|
+
}),
|
|
60
|
+
progress: Flags.boolean({
|
|
61
|
+
allowNo: true,
|
|
62
|
+
default: true,
|
|
63
|
+
description: 'Display progress during migration (default: true). Use --no-progress to hide output.'
|
|
64
|
+
}),
|
|
65
|
+
project: Flags.string({
|
|
66
|
+
description: 'Project ID of the dataset to migrate. Defaults to the projectId configured in your Sanity CLI config.'
|
|
67
|
+
})
|
|
68
|
+
};
|
|
69
|
+
async run() {
|
|
70
|
+
const { args, flags } = await this.parse(RunMigrationCommand);
|
|
71
|
+
const cliConfig = await this.getCliConfig();
|
|
72
|
+
const projectId = await this.getProjectId();
|
|
73
|
+
const datasetFromConfig = cliConfig.api?.dataset;
|
|
74
|
+
const workDir = await getMigrationRootDirectory(this.output);
|
|
75
|
+
const id = args.id;
|
|
76
|
+
const migrationsDirectoryPath = path.join(workDir, MIGRATIONS_DIRECTORY);
|
|
77
|
+
const fromExport = flags['from-export'];
|
|
78
|
+
const dry = flags['dry-run'];
|
|
79
|
+
const dataset = flags.dataset;
|
|
80
|
+
const project = flags.project;
|
|
81
|
+
const apiVersion = ensureApiVersionFormat(flags['api-version'] ?? DEFAULT_API_VERSION);
|
|
82
|
+
if (dataset && !project || project && !dataset) {
|
|
83
|
+
this.error('If either --dataset or --project is provided, both must be provided', {
|
|
84
|
+
exit: 1
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
if (!project && !projectId) {
|
|
88
|
+
this.error('sanity.cli.js does not contain a project identifier ("api.projectId") and no --project option was provided.', {
|
|
89
|
+
exit: 1
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
if (!dataset && !datasetFromConfig) {
|
|
93
|
+
this.error('sanity.cli.js does not contain a dataset identifier ("api.dataset") and no --dataset option was provided.', {
|
|
94
|
+
exit: 1
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
if (!id) {
|
|
98
|
+
this.warn(chalk.red('Error: Migration ID must be provided'));
|
|
99
|
+
const migrations = await resolveMigrations(workDir);
|
|
100
|
+
const table = new Table({
|
|
101
|
+
columns: [
|
|
102
|
+
{
|
|
103
|
+
alignment: 'left',
|
|
104
|
+
name: 'id',
|
|
105
|
+
title: 'ID'
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
alignment: 'left',
|
|
109
|
+
name: 'title',
|
|
110
|
+
title: 'Title'
|
|
111
|
+
}
|
|
112
|
+
],
|
|
113
|
+
title: `Migrations found in project`
|
|
114
|
+
});
|
|
115
|
+
for (const definedMigration of migrations){
|
|
116
|
+
table.addRow({
|
|
117
|
+
id: definedMigration.id,
|
|
118
|
+
title: definedMigration.migration.title
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
table.printTable();
|
|
122
|
+
this.log('\nRun `sanity migration run <ID>` to run a migration');
|
|
123
|
+
this.exit(1);
|
|
124
|
+
}
|
|
125
|
+
const candidates = await resolveMigrationScript(workDir, id);
|
|
126
|
+
const resolvedScripts = candidates.filter((candidate)=>isLoadableMigrationScript(candidate));
|
|
127
|
+
if (resolvedScripts.length > 1) {
|
|
128
|
+
// todo: consider prompt user about which one to run? note: it's likely a mistake if multiple files resolve to the same name
|
|
129
|
+
this.error(`Found multiple migrations for "${id}" in ${chalk.cyan(migrationsDirectoryPath)}: \n - ${candidates.map((candidate)=>path.relative(migrationsDirectoryPath, candidate.absolutePath)).join('\n - ')}`, {
|
|
130
|
+
exit: 1
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
const script = resolvedScripts[0];
|
|
134
|
+
if (!script) {
|
|
135
|
+
this.error(`No migration found for "${id}" in ${chalk.cyan(chalk.cyan(migrationsDirectoryPath))}. Make sure that the migration file exists and exports a valid migration as its default export.\n
|
|
136
|
+
Tried the following files:\n - ${candidates.map((candidate)=>path.relative(migrationsDirectoryPath, candidate.absolutePath)).join('\n - ')}`, {
|
|
137
|
+
exit: 1
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
const mod = script.mod;
|
|
141
|
+
if ('up' in mod || 'down' in mod) {
|
|
142
|
+
// todo: consider adding support for up/down as separate named exports
|
|
143
|
+
// For now, make sure we reserve the names for future use
|
|
144
|
+
this.error('Only "up" migrations are supported at this time, please use a default export', {
|
|
145
|
+
exit: 1
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
const migration = mod.default;
|
|
149
|
+
if (fromExport && !dry) {
|
|
150
|
+
this.error('Can only dry run migrations from a dataset export file', {
|
|
151
|
+
exit: 1
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
const concurrency = flags.concurrency;
|
|
155
|
+
if (concurrency !== undefined) {
|
|
156
|
+
if (concurrency > MAX_MUTATION_CONCURRENCY) {
|
|
157
|
+
this.error(`Concurrency exceeds the maximum allowed value of ${MAX_MUTATION_CONCURRENCY}`, {
|
|
158
|
+
exit: 1
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
if (concurrency < 1) {
|
|
162
|
+
this.error(`Concurrency must be a positive number, got ${concurrency}`, {
|
|
163
|
+
exit: 1
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
const projectClient = await this.getProjectApiClient({
|
|
168
|
+
apiVersion: apiVersion,
|
|
169
|
+
projectId: project ?? projectId,
|
|
170
|
+
requireUser: true
|
|
171
|
+
});
|
|
172
|
+
const projectConfig = projectClient.config();
|
|
173
|
+
const apiConfig = {
|
|
174
|
+
apiHost: projectConfig.apiHost,
|
|
175
|
+
apiVersion: apiVersion,
|
|
176
|
+
dataset: dataset ?? datasetFromConfig,
|
|
177
|
+
projectId: project ?? projectId,
|
|
178
|
+
token: projectConfig.token
|
|
179
|
+
};
|
|
180
|
+
if (dry) {
|
|
181
|
+
this.dryRunHandler(id, migration, apiConfig, fromExport);
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
this.log(`\n${chalk.yellow(chalk.bold('Note: During migrations, your webhooks stay active.'))}`);
|
|
185
|
+
this.log(`To adjust them, launch the management interface with ${chalk.cyan('sanity manage')}, navigate to the API settings, and toggle the webhooks before and after the migration as needed.\n`);
|
|
186
|
+
if (flags.confirm) {
|
|
187
|
+
await this.promptConfirmMigrate(apiConfig);
|
|
188
|
+
}
|
|
189
|
+
const spin = spinner(`Running migration "${id}"`).start();
|
|
190
|
+
await run({
|
|
191
|
+
api: apiConfig,
|
|
192
|
+
concurrency,
|
|
193
|
+
onProgress: this.createProgress(spin, flags, id, dry, apiConfig, migration)
|
|
194
|
+
}, migration);
|
|
195
|
+
spin.stop();
|
|
196
|
+
}
|
|
197
|
+
createProgress(progressSpinner, flags, id, dry, apiConfig, migration) {
|
|
198
|
+
return function onProgress(progress) {
|
|
199
|
+
if (!flags.progress) {
|
|
200
|
+
progressSpinner.stop();
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
if (progress.done) {
|
|
204
|
+
progressSpinner.text = `Migration "${id}" completed.
|
|
205
|
+
|
|
206
|
+
Project id: ${chalk.bold(apiConfig.projectId)}
|
|
207
|
+
Dataset: ${chalk.bold(apiConfig.dataset)}
|
|
208
|
+
|
|
209
|
+
${progress.documents} documents processed.
|
|
210
|
+
${progress.mutations} mutations generated.
|
|
211
|
+
${chalk.green(progress.completedTransactions.length)} transactions committed.`;
|
|
212
|
+
progressSpinner.stopAndPersist({
|
|
213
|
+
symbol: chalk.green('✔')
|
|
214
|
+
});
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
for (const transaction of [
|
|
218
|
+
null,
|
|
219
|
+
...progress.currentTransactions
|
|
220
|
+
]){
|
|
221
|
+
progressSpinner.text = `Running migration "${id}" ${dry ? 'in dry mode...' : '...'}
|
|
222
|
+
|
|
223
|
+
Project id: ${chalk.bold(apiConfig.projectId)}
|
|
224
|
+
Dataset: ${chalk.bold(apiConfig.dataset)}
|
|
225
|
+
Document type: ${chalk.bold(migration.documentTypes?.join(','))}
|
|
226
|
+
|
|
227
|
+
${progress.documents} documents processed…
|
|
228
|
+
${progress.mutations} mutations generated…
|
|
229
|
+
${chalk.blue(progress.pending)} requests pending…
|
|
230
|
+
${chalk.green(progress.completedTransactions.length)} transactions committed.
|
|
231
|
+
|
|
232
|
+
${transaction && !progress.done ? `» ${prettyFormat({
|
|
233
|
+
indentSize: 2,
|
|
234
|
+
migration,
|
|
235
|
+
subject: transaction
|
|
236
|
+
})}` : ''}`;
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
async dryRunHandler(id, migration, apiConfig, fromExport) {
|
|
241
|
+
this.log(`Running migration "${id}" in dry mode`);
|
|
242
|
+
if (fromExport) {
|
|
243
|
+
this.log(`Using export ${chalk.cyan(fromExport)}`);
|
|
244
|
+
}
|
|
245
|
+
this.log();
|
|
246
|
+
this.log(`Project id: ${chalk.bold(apiConfig.projectId)}`);
|
|
247
|
+
this.log(`Dataset: ${chalk.bold(apiConfig.dataset)}`);
|
|
248
|
+
for await (const mutation of dryRun({
|
|
249
|
+
api: apiConfig,
|
|
250
|
+
exportPath: fromExport
|
|
251
|
+
}, migration)){
|
|
252
|
+
if (!mutation) continue;
|
|
253
|
+
this.log();
|
|
254
|
+
this.log(prettyFormat({
|
|
255
|
+
migration,
|
|
256
|
+
subject: mutation
|
|
257
|
+
}));
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
async promptConfirmMigrate(apiConfig) {
|
|
261
|
+
const response = await confirm({
|
|
262
|
+
message: `This migration will run on the ${chalk.yellow(chalk.bold(apiConfig.dataset))} dataset in ${chalk.yellow(chalk.bold(apiConfig.projectId))} project. Are you sure?`
|
|
263
|
+
});
|
|
264
|
+
if (!response) {
|
|
265
|
+
runMigrationDebug('User aborted migration');
|
|
266
|
+
this.exit(1);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
//# sourceMappingURL=run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/commands/migration/run.ts"],"sourcesContent":["import path from 'node:path'\n\nimport {Args, Flags} from '@oclif/core'\nimport {SanityCommand, subdebug} from '@sanity/cli-core'\nimport {chalk, confirm, spinner} from '@sanity/cli-core/ux'\nimport {\n APIConfig,\n DEFAULT_MUTATION_CONCURRENCY,\n dryRun,\n MAX_MUTATION_CONCURRENCY,\n type Migration,\n type MigrationProgress,\n run,\n} from '@sanity/migrate'\nimport {Table} from 'console-table-printer'\n\nimport {getMigrationRootDirectory} from '../../actions/migration/getMigrationRootDirectory.js'\nimport {resolveMigrations} from '../../actions/migration/resolveMigrations.js'\nimport {DEFAULT_API_VERSION, MIGRATIONS_DIRECTORY} from '../../util/migration/constants.js'\nimport {ensureApiVersionFormat} from '../../util/migration/ensureApiVersionFormat.js'\nimport {prettyFormat} from '../../util/migration/prettyMutationFormatter.js'\nimport {\n isLoadableMigrationScript,\n resolveMigrationScript,\n} from '../../utils/migration/resolveMigrationScript.js'\n\nconst runMigrationDebug = subdebug('migration:run')\n\nexport type RunMigrationFlags = RunMigrationCommand['flags']\n\nexport class RunMigrationCommand extends SanityCommand<typeof RunMigrationCommand> {\n static override args = {\n id: Args.string({\n description: 'ID',\n required: false,\n }),\n }\n\n static override description = 'Run a migration against a dataset'\n\n static override examples = [\n {\n command: '<%= config.bin %> <%= command.id %> <id>',\n description: 'dry run the migration',\n },\n {\n command:\n '<%= config.bin %> <%= command.id %> <id> --no-dry-run --project xyz --dataset staging',\n description: 'execute the migration against a dataset',\n },\n {\n command:\n '<%= config.bin %> <%= command.id %> <id> --from-export=production.tar.gz --no-dry-run --project xyz --dataset staging',\n description: 'execute the migration using a dataset export as the source',\n },\n ]\n\n static override flags = {\n 'api-version': Flags.string({\n description: `API version to use when migrating. Defaults to ${DEFAULT_API_VERSION}.`,\n }),\n concurrency: Flags.integer({\n default: DEFAULT_MUTATION_CONCURRENCY,\n description: `How many mutation requests to run in parallel. Must be between 1 and ${MAX_MUTATION_CONCURRENCY}. Default: ${DEFAULT_MUTATION_CONCURRENCY}.`,\n }),\n confirm: Flags.boolean({\n allowNo: true,\n default: true,\n description:\n 'Prompt for confirmation before running the migration (default: true). Use --no-confirm to skip.',\n }),\n dataset: Flags.string({\n description:\n 'Dataset to migrate. Defaults to the dataset configured in your Sanity CLI config.',\n }),\n 'dry-run': Flags.boolean({\n allowNo: true,\n default: true,\n description:\n 'By default the migration runs in dry mode. Use --no-dry-run to migrate dataset.',\n }),\n 'from-export': Flags.string({\n description:\n 'Use a local dataset export as source for migration instead of calling the Sanity API. Note: this is only supported for dry runs.',\n }),\n progress: Flags.boolean({\n allowNo: true,\n default: true,\n description:\n 'Display progress during migration (default: true). Use --no-progress to hide output.',\n }),\n project: Flags.string({\n description:\n 'Project ID of the dataset to migrate. Defaults to the projectId configured in your Sanity CLI config.',\n }),\n }\n\n public async run(): Promise<void> {\n const {args, flags} = await this.parse(RunMigrationCommand)\n const cliConfig = await this.getCliConfig()\n const projectId = await this.getProjectId()\n const datasetFromConfig = cliConfig.api?.dataset\n\n const workDir = await getMigrationRootDirectory(this.output)\n const id = args.id\n const migrationsDirectoryPath = path.join(workDir, MIGRATIONS_DIRECTORY)\n\n const fromExport = flags['from-export']\n const dry = flags['dry-run']\n const dataset = flags.dataset\n const project = flags.project\n const apiVersion = ensureApiVersionFormat(flags['api-version'] ?? DEFAULT_API_VERSION)\n\n if ((dataset && !project) || (project && !dataset)) {\n this.error('If either --dataset or --project is provided, both must be provided', {exit: 1})\n }\n\n if (!project && !projectId) {\n this.error(\n 'sanity.cli.js does not contain a project identifier (\"api.projectId\") and no --project option was provided.',\n {exit: 1},\n )\n }\n\n if (!dataset && !datasetFromConfig) {\n this.error(\n 'sanity.cli.js does not contain a dataset identifier (\"api.dataset\") and no --dataset option was provided.',\n {exit: 1},\n )\n }\n\n if (!id) {\n this.warn(chalk.red('Error: Migration ID must be provided'))\n\n const migrations = await resolveMigrations(workDir)\n const table = new Table({\n columns: [\n {alignment: 'left', name: 'id', title: 'ID'},\n {alignment: 'left', name: 'title', title: 'Title'},\n ],\n title: `Migrations found in project`,\n })\n\n for (const definedMigration of migrations) {\n table.addRow({id: definedMigration.id, title: definedMigration.migration.title})\n }\n table.printTable()\n this.log('\\nRun `sanity migration run <ID>` to run a migration')\n\n this.exit(1)\n }\n\n const candidates = await resolveMigrationScript(workDir, id)\n const resolvedScripts = candidates.filter((candidate) => isLoadableMigrationScript(candidate))\n\n if (resolvedScripts.length > 1) {\n // todo: consider prompt user about which one to run? note: it's likely a mistake if multiple files resolve to the same name\n this.error(\n `Found multiple migrations for \"${id}\" in ${chalk.cyan(migrationsDirectoryPath)}: \\n - ${candidates\n .map((candidate) => path.relative(migrationsDirectoryPath, candidate.absolutePath))\n .join('\\n - ')}`,\n {exit: 1},\n )\n }\n\n const script = resolvedScripts[0]\n if (!script) {\n this.error(\n `No migration found for \"${id}\" in ${chalk.cyan(chalk.cyan(migrationsDirectoryPath))}. Make sure that the migration file exists and exports a valid migration as its default export.\\n\n Tried the following files:\\n - ${candidates\n .map((candidate) => path.relative(migrationsDirectoryPath, candidate.absolutePath))\n .join('\\n - ')}`,\n {exit: 1},\n )\n }\n\n const mod = script.mod\n if ('up' in mod || 'down' in mod) {\n // todo: consider adding support for up/down as separate named exports\n // For now, make sure we reserve the names for future use\n this.error('Only \"up\" migrations are supported at this time, please use a default export', {\n exit: 1,\n })\n }\n\n const migration: Migration = mod.default\n\n if (fromExport && !dry) {\n this.error('Can only dry run migrations from a dataset export file', {exit: 1})\n }\n\n const concurrency = flags.concurrency\n if (concurrency !== undefined) {\n if (concurrency > MAX_MUTATION_CONCURRENCY) {\n this.error(`Concurrency exceeds the maximum allowed value of ${MAX_MUTATION_CONCURRENCY}`, {\n exit: 1,\n })\n }\n\n if (concurrency < 1) {\n this.error(`Concurrency must be a positive number, got ${concurrency}`, {exit: 1})\n }\n }\n\n const projectClient = await this.getProjectApiClient({\n apiVersion: apiVersion,\n projectId: (project ?? projectId)!,\n requireUser: true,\n })\n const projectConfig = projectClient.config()\n\n const apiConfig: APIConfig = {\n apiHost: projectConfig.apiHost,\n apiVersion: apiVersion,\n dataset: (dataset ?? datasetFromConfig)!,\n projectId: (project ?? projectId)!,\n token: projectConfig.token!,\n } as const\n if (dry) {\n this.dryRunHandler(id, migration, apiConfig, fromExport)\n return\n }\n\n this.log(`\\n${chalk.yellow(chalk.bold('Note: During migrations, your webhooks stay active.'))}`)\n this.log(\n `To adjust them, launch the management interface with ${chalk.cyan('sanity manage')}, navigate to the API settings, and toggle the webhooks before and after the migration as needed.\\n`,\n )\n\n if (flags.confirm) {\n await this.promptConfirmMigrate(apiConfig)\n }\n\n const spin = spinner(`Running migration \"${id}\"`).start()\n await run(\n {\n api: apiConfig,\n concurrency,\n onProgress: this.createProgress(spin, flags, id, dry, apiConfig, migration),\n },\n migration,\n )\n spin.stop()\n }\n\n private createProgress(\n progressSpinner: ReturnType<typeof spinner>,\n flags: RunMigrationFlags,\n id: string,\n dry: boolean,\n apiConfig: APIConfig,\n migration: Migration,\n ) {\n return function onProgress(progress: MigrationProgress) {\n if (!flags.progress) {\n progressSpinner.stop()\n return\n }\n if (progress.done) {\n progressSpinner.text = `Migration \"${id}\" completed.\n\n Project id: ${chalk.bold(apiConfig.projectId)}\n Dataset: ${chalk.bold(apiConfig.dataset)}\n\n ${progress.documents} documents processed.\n ${progress.mutations} mutations generated.\n ${chalk.green(progress.completedTransactions.length)} transactions committed.`\n progressSpinner.stopAndPersist({symbol: chalk.green('✔')})\n return\n }\n\n for (const transaction of [null, ...progress.currentTransactions]) {\n progressSpinner.text = `Running migration \"${id}\" ${dry ? 'in dry mode...' : '...'}\n\n Project id: ${chalk.bold(apiConfig.projectId)}\n Dataset: ${chalk.bold(apiConfig.dataset)}\n Document type: ${chalk.bold(migration.documentTypes?.join(','))}\n\n ${progress.documents} documents processed…\n ${progress.mutations} mutations generated…\n ${chalk.blue(progress.pending)} requests pending…\n ${chalk.green(progress.completedTransactions.length)} transactions committed.\n\n ${\n transaction && !progress.done\n ? `» ${prettyFormat({indentSize: 2, migration, subject: transaction})}`\n : ''\n }`\n }\n }\n }\n\n private async dryRunHandler(\n id: string,\n migration: Migration,\n apiConfig: APIConfig,\n fromExport: string | undefined,\n ) {\n this.log(`Running migration \"${id}\" in dry mode`)\n\n if (fromExport) {\n this.log(`Using export ${chalk.cyan(fromExport)}`)\n }\n\n this.log()\n this.log(`Project id: ${chalk.bold(apiConfig.projectId)}`)\n this.log(`Dataset: ${chalk.bold(apiConfig.dataset)}`)\n\n for await (const mutation of dryRun({api: apiConfig, exportPath: fromExport}, migration)) {\n if (!mutation) continue\n this.log()\n this.log(\n prettyFormat({\n migration,\n subject: mutation,\n }),\n )\n }\n }\n\n private async promptConfirmMigrate(apiConfig: APIConfig) {\n const response = await confirm({\n message: `This migration will run on the ${chalk.yellow(\n chalk.bold(apiConfig.dataset),\n )} dataset in ${chalk.yellow(chalk.bold(apiConfig.projectId))} project. Are you sure?`,\n })\n\n if (!response) {\n runMigrationDebug('User aborted migration')\n this.exit(1)\n }\n }\n}\n"],"names":["path","Args","Flags","SanityCommand","subdebug","chalk","confirm","spinner","DEFAULT_MUTATION_CONCURRENCY","dryRun","MAX_MUTATION_CONCURRENCY","run","Table","getMigrationRootDirectory","resolveMigrations","DEFAULT_API_VERSION","MIGRATIONS_DIRECTORY","ensureApiVersionFormat","prettyFormat","isLoadableMigrationScript","resolveMigrationScript","runMigrationDebug","RunMigrationCommand","args","id","string","description","required","examples","command","flags","concurrency","integer","default","boolean","allowNo","dataset","progress","project","parse","cliConfig","getCliConfig","projectId","getProjectId","datasetFromConfig","api","workDir","output","migrationsDirectoryPath","join","fromExport","dry","apiVersion","error","exit","warn","red","migrations","table","columns","alignment","name","title","definedMigration","addRow","migration","printTable","log","candidates","resolvedScripts","filter","candidate","length","cyan","map","relative","absolutePath","script","mod","undefined","projectClient","getProjectApiClient","requireUser","projectConfig","config","apiConfig","apiHost","token","dryRunHandler","yellow","bold","promptConfirmMigrate","spin","start","onProgress","createProgress","stop","progressSpinner","done","text","documents","mutations","green","completedTransactions","stopAndPersist","symbol","transaction","currentTransactions","documentTypes","blue","pending","indentSize","subject","mutation","exportPath","response","message"],"mappings":"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"}
|