@sanity/cli 6.0.0-alpha.8 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +728 -258
- package/bin/run.js +2 -0
- package/dist/SanityHelp.js +51 -23
- package/dist/SanityHelp.js.map +1 -1
- package/dist/actions/auth/authServer.js +28 -22
- package/dist/actions/auth/authServer.js.map +1 -1
- package/dist/actions/auth/login/getProvider.js +49 -38
- package/dist/actions/auth/login/getProvider.js.map +1 -1
- package/dist/actions/auth/login/getSSOProvider.js +25 -19
- package/dist/actions/auth/login/getSSOProvider.js.map +1 -1
- package/dist/actions/auth/login/login.js +24 -37
- package/dist/actions/auth/login/login.js.map +1 -1
- package/dist/actions/auth/types.js.map +1 -1
- package/dist/actions/backup/downloadAsset.js +9 -9
- package/dist/actions/backup/downloadAsset.js.map +1 -1
- package/dist/actions/backup/downloadDocument.js +8 -8
- package/dist/actions/backup/downloadDocument.js.map +1 -1
- package/dist/actions/build/buildApp.js +65 -28
- package/dist/actions/build/buildApp.js.map +1 -1
- package/dist/actions/build/buildStaticFiles.js +3 -2
- package/dist/actions/build/buildStaticFiles.js.map +1 -1
- package/dist/actions/build/buildStudio.js +82 -54
- package/dist/actions/build/buildStudio.js.map +1 -1
- package/dist/actions/build/buildVendorDependencies.js +18 -52
- package/dist/actions/build/buildVendorDependencies.js.map +1 -1
- package/dist/actions/build/checkRequiredDependencies.js +13 -8
- package/dist/actions/build/checkRequiredDependencies.js.map +1 -1
- package/dist/actions/build/checkStudioDependencyVersions.js +19 -17
- package/dist/actions/build/checkStudioDependencyVersions.js.map +1 -1
- package/dist/actions/build/createExternalFromImportMap.js +1 -1
- package/dist/actions/build/createExternalFromImportMap.js.map +1 -1
- package/dist/actions/build/determineBasePath.js +5 -2
- package/dist/actions/build/determineBasePath.js.map +1 -1
- package/dist/actions/build/getStudioEnvironmentVariables.js +1 -1
- package/dist/actions/build/getStudioEnvironmentVariables.js.map +1 -1
- package/dist/actions/build/getViteConfig.js +48 -5
- package/dist/actions/build/getViteConfig.js.map +1 -1
- package/dist/actions/build/handlePrereleaseVersions.js +44 -0
- package/dist/actions/build/handlePrereleaseVersions.js.map +1 -0
- package/dist/actions/build/renderDocument.js +6 -10
- package/dist/actions/build/renderDocument.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js +4 -4
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js +3 -3
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js +1 -0
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js +2 -2
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.js.map +1 -1
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js +1 -1
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.js.map +1 -1
- package/dist/actions/build/shouldAutoUpdate.js +5 -3
- package/dist/actions/build/shouldAutoUpdate.js.map +1 -1
- package/dist/actions/build/types.js.map +1 -1
- package/dist/actions/build/writeFavicons.js +3 -5
- package/dist/actions/build/writeFavicons.js.map +1 -1
- package/dist/actions/build/writeSanityRuntime.js +6 -5
- package/dist/actions/build/writeSanityRuntime.js.map +1 -1
- package/dist/actions/codemods/reactIconsV3.js +2 -2
- package/dist/actions/codemods/reactIconsV3.js.map +1 -1
- package/dist/actions/dataset/create.js +10 -6
- package/dist/actions/dataset/create.js.map +1 -1
- package/dist/actions/dataset/determineDatasetAclMode.js.map +1 -1
- package/dist/actions/dataset/resolveDataset.js +26 -0
- package/dist/actions/dataset/resolveDataset.js.map +1 -0
- package/dist/actions/debug/formatters.js +22 -0
- package/dist/actions/debug/formatters.js.map +1 -0
- package/dist/actions/deploy/createStudioUserApplication.js +17 -4
- package/dist/actions/deploy/createStudioUserApplication.js.map +1 -1
- package/dist/actions/deploy/deployApp.js +52 -22
- package/dist/actions/deploy/deployApp.js.map +1 -1
- package/dist/actions/deploy/deployStudio.js +95 -46
- package/dist/actions/deploy/deployStudio.js.map +1 -1
- package/dist/actions/deploy/deployStudioSchemasAndManifests.js +55 -0
- package/dist/actions/deploy/deployStudioSchemasAndManifests.js.map +1 -0
- package/dist/actions/deploy/deployStudioSchemasAndManifests.worker.js +120 -0
- package/dist/actions/deploy/deployStudioSchemasAndManifests.worker.js.map +1 -0
- package/dist/actions/deploy/findUserApplicationForStudio.js +35 -12
- package/dist/actions/deploy/findUserApplicationForStudio.js.map +1 -1
- package/dist/actions/deploy/types.js +10 -1
- package/dist/actions/deploy/types.js.map +1 -1
- package/dist/actions/deploy/urlUtils.js +21 -0
- package/dist/actions/deploy/urlUtils.js.map +1 -0
- package/dist/actions/dev/getDashboardAppUrl.js +48 -0
- package/dist/actions/dev/getDashboardAppUrl.js.map +1 -0
- package/dist/actions/dev/getDevServerConfig.js +7 -3
- package/dist/actions/dev/getDevServerConfig.js.map +1 -1
- package/dist/actions/dev/startAppDevServer.js +7 -4
- package/dist/actions/dev/startAppDevServer.js.map +1 -1
- package/dist/actions/dev/startStudioDevServer.js +23 -19
- package/dist/actions/dev/startStudioDevServer.js.map +1 -1
- package/dist/actions/doctor/checks/cliInstallation.js +56 -0
- package/dist/actions/doctor/checks/cliInstallation.js.map +1 -0
- package/dist/actions/doctor/checks/index.js +16 -0
- package/dist/actions/doctor/checks/index.js.map +1 -0
- package/dist/actions/doctor/runDoctorChecks.js +56 -0
- package/dist/actions/doctor/runDoctorChecks.js.map +1 -0
- package/dist/actions/doctor/types.js.map +1 -0
- package/dist/actions/documents/types.js.map +1 -1
- package/dist/actions/documents/validate.js +15 -17
- package/dist/actions/documents/validate.js.map +1 -1
- package/dist/{threads/validateDocuments.js → actions/documents/validateDocuments.worker.js} +37 -37
- package/dist/actions/documents/validateDocuments.worker.js.map +1 -0
- package/dist/actions/documents/validation/reporters/jsonReporter.js +1 -1
- package/dist/actions/documents/validation/reporters/jsonReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/ndjsonReporter.js +1 -1
- package/dist/actions/documents/validation/reporters/ndjsonReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js +9 -8
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.js.map +1 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.js.map +1 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/tree.js +108 -0
- package/dist/actions/documents/validation/reporters/prettyReporter/tree.js.map +1 -0
- package/dist/{threads/configClient.js → actions/exec/configClient.worker.js} +2 -2
- package/dist/actions/exec/configClient.worker.js.map +1 -0
- package/dist/actions/exec/execScript.js +29 -25
- package/dist/actions/exec/execScript.js.map +1 -1
- package/dist/{threads/registerBrowserEnv.js → actions/exec/registerBrowserEnv.worker.js} +1 -1
- package/dist/actions/exec/registerBrowserEnv.worker.js.map +1 -0
- package/dist/actions/graphql/SchemaError.js +15 -0
- package/dist/actions/graphql/SchemaError.js.map +1 -0
- package/dist/actions/graphql/__tests__/fixtures/many-self-refs.js +540 -0
- package/dist/actions/graphql/__tests__/fixtures/many-self-refs.js.map +1 -0
- package/dist/actions/graphql/__tests__/fixtures/test-studio.js +1143 -0
- package/dist/actions/graphql/__tests__/fixtures/test-studio.js.map +1 -0
- package/dist/actions/graphql/__tests__/fixtures/union-refs.js +591 -0
- package/dist/actions/graphql/__tests__/fixtures/union-refs.js.map +1 -0
- package/dist/actions/graphql/__tests__/helpers.js +23 -0
- package/dist/actions/graphql/__tests__/helpers.js.map +1 -0
- package/dist/actions/graphql/extractFromSanitySchema.js +659 -0
- package/dist/actions/graphql/extractFromSanitySchema.js.map +1 -0
- package/dist/actions/graphql/extractGraphQLAPIs.js +150 -0
- package/dist/actions/graphql/extractGraphQLAPIs.js.map +1 -0
- package/dist/actions/graphql/extractGraphQLAPIs.worker.js +12 -0
- package/dist/actions/graphql/extractGraphQLAPIs.worker.js.map +1 -0
- package/dist/actions/graphql/gen1/generateTypeFilters.js +226 -0
- package/dist/actions/graphql/gen1/generateTypeFilters.js.map +1 -0
- package/dist/actions/graphql/gen1/generateTypeQueries.js +86 -0
- package/dist/actions/graphql/gen1/generateTypeQueries.js.map +1 -0
- package/dist/actions/graphql/gen1/index.js +19 -0
- package/dist/actions/graphql/gen1/index.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/booleanFilters.js +26 -0
- package/dist/actions/graphql/gen2/filters/booleanFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/dateFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/dateFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/dateTimeFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/dateTimeFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/documentFilters.js +21 -0
- package/dist/actions/graphql/gen2/filters/documentFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/floatFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/floatFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/idFilters.js +44 -0
- package/dist/actions/graphql/gen2/filters/idFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/integerFilters.js +46 -0
- package/dist/actions/graphql/gen2/filters/integerFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/filters/stringFilters.js +49 -0
- package/dist/actions/graphql/gen2/filters/stringFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/generateTypeFilters.js +85 -0
- package/dist/actions/graphql/gen2/generateTypeFilters.js.map +1 -0
- package/dist/actions/graphql/gen2/generateTypeQueries.js +107 -0
- package/dist/actions/graphql/gen2/generateTypeQueries.js.map +1 -0
- package/dist/actions/graphql/gen2/generateTypeSortings.js +70 -0
- package/dist/actions/graphql/gen2/generateTypeSortings.js.map +1 -0
- package/dist/actions/graphql/gen2/index.js +22 -0
- package/dist/actions/graphql/gen2/index.js.map +1 -0
- package/dist/actions/graphql/gen3/filters/documentFilters.js +21 -0
- package/dist/actions/graphql/gen3/filters/documentFilters.js.map +1 -0
- package/dist/actions/graphql/gen3/generateTypeFilters.js +101 -0
- package/dist/actions/graphql/gen3/generateTypeFilters.js.map +1 -0
- package/dist/actions/graphql/gen3/generateTypeQueries.js +103 -0
- package/dist/actions/graphql/gen3/generateTypeQueries.js.map +1 -0
- package/dist/actions/graphql/gen3/generateTypeSortings.js +70 -0
- package/dist/actions/graphql/gen3/generateTypeSortings.js.map +1 -0
- package/dist/actions/graphql/gen3/index.js +30 -0
- package/dist/actions/graphql/gen3/index.js.map +1 -0
- package/dist/actions/graphql/gen3/utils.js +12 -0
- package/dist/actions/graphql/gen3/utils.js.map +1 -0
- package/dist/actions/graphql/getGraphQLAPIs.js +15 -57
- package/dist/actions/graphql/getGraphQLAPIs.js.map +1 -1
- package/dist/actions/graphql/getGraphQLAPIs.worker.js +75 -106
- package/dist/actions/graphql/getGraphQLAPIs.worker.js.map +1 -1
- package/dist/actions/graphql/graphqlDebug.js +4 -0
- package/dist/actions/graphql/graphqlDebug.js.map +1 -0
- package/dist/actions/graphql/helpUrls.js +3 -0
- package/dist/actions/graphql/helpUrls.js.map +1 -0
- package/dist/actions/graphql/helpers.js +24 -0
- package/dist/actions/graphql/helpers.js.map +1 -0
- package/dist/actions/graphql/resolveApiGeneration.js +43 -0
- package/dist/actions/graphql/resolveApiGeneration.js.map +1 -0
- package/dist/actions/graphql/resolveGraphQLApisFromWorkspaces.js +187 -0
- package/dist/actions/graphql/resolveGraphQLApisFromWorkspaces.js.map +1 -0
- package/dist/actions/graphql/types.js.map +1 -1
- package/dist/actions/init/bootstrapLocalTemplate.js +13 -10
- package/dist/actions/init/bootstrapLocalTemplate.js.map +1 -1
- package/dist/actions/init/bootstrapRemoteTemplate.js +6 -5
- package/dist/actions/init/bootstrapRemoteTemplate.js.map +1 -1
- package/dist/actions/init/bootstrapTemplate.js.map +1 -1
- package/dist/actions/init/checkNextJsReactCompatibility.js +1 -1
- package/dist/actions/init/checkNextJsReactCompatibility.js.map +1 -1
- package/dist/actions/init/createAppCliConfig.js.map +1 -1
- package/dist/actions/init/createCliConfig.js.map +1 -1
- package/dist/actions/init/createPackageManifest.js +21 -9
- package/dist/actions/init/createPackageManifest.js.map +1 -1
- package/dist/actions/init/env/createOrAppendEnvVars.js +2 -2
- package/dist/actions/init/env/createOrAppendEnvVars.js.map +1 -1
- package/dist/actions/init/env/writeEnvVarsToFile.js +2 -2
- package/dist/actions/init/env/writeEnvVarsToFile.js.map +1 -1
- package/dist/actions/init/fetchPostInitPrompt.js +2 -2
- package/dist/actions/init/fetchPostInitPrompt.js.map +1 -1
- package/dist/actions/init/remoteTemplate.js +1 -2
- package/dist/actions/init/remoteTemplate.js.map +1 -1
- package/dist/actions/init/resolvePackageManager.js +2 -2
- package/dist/actions/init/resolvePackageManager.js.map +1 -1
- package/dist/actions/init/sdkAppDependencies.js +19 -0
- package/dist/actions/init/sdkAppDependencies.js.map +1 -0
- package/dist/actions/init/studioDependencies.js.map +1 -0
- package/dist/actions/init/templates/appQuickstart.js +1 -22
- package/dist/actions/init/templates/appQuickstart.js.map +1 -1
- package/dist/actions/init/templates/appSanityUi.js +3 -22
- package/dist/actions/init/templates/appSanityUi.js.map +1 -1
- package/dist/actions/init/types.js.map +1 -1
- package/dist/actions/manifest/SchemaIcon.js +6 -4
- package/dist/actions/manifest/SchemaIcon.js.map +1 -1
- package/dist/actions/manifest/blockTypeTransformer.js +67 -0
- package/dist/actions/manifest/blockTypeTransformer.js.map +1 -0
- package/dist/actions/manifest/debug.js +4 -0
- package/dist/actions/manifest/debug.js.map +1 -0
- package/dist/actions/manifest/extractAppManifest.js +39 -22
- package/dist/actions/manifest/extractAppManifest.js.map +1 -1
- package/dist/actions/manifest/extractManifest.js +27 -78
- package/dist/actions/manifest/extractManifest.js.map +1 -1
- package/dist/actions/manifest/extractManifest.worker.js +30 -0
- package/dist/actions/manifest/extractManifest.worker.js.map +1 -0
- package/dist/actions/manifest/extractWorkspaceManifest.js +31 -372
- package/dist/actions/manifest/extractWorkspaceManifest.js.map +1 -1
- package/dist/actions/manifest/iconResolver.js +30 -0
- package/dist/actions/manifest/iconResolver.js.map +1 -0
- package/dist/actions/manifest/referenceTransformer.js +51 -0
- package/dist/actions/manifest/referenceTransformer.js.map +1 -0
- package/dist/actions/manifest/schemaTypeHelpers.js +2 -2
- package/dist/actions/manifest/schemaTypeHelpers.js.map +1 -1
- package/dist/actions/manifest/schemaTypeTransformer.js +168 -0
- package/dist/actions/manifest/schemaTypeTransformer.js.map +1 -0
- package/dist/actions/manifest/transformerUtils.js +40 -0
- package/dist/actions/manifest/transformerUtils.js.map +1 -0
- package/dist/actions/manifest/types.js +5 -0
- package/dist/actions/manifest/types.js.map +1 -1
- package/dist/actions/manifest/validationTransformer.js +84 -0
- package/dist/actions/manifest/validationTransformer.js.map +1 -0
- package/dist/actions/manifest/writeManifestFile.js +30 -0
- package/dist/actions/manifest/writeManifestFile.js.map +1 -0
- package/dist/actions/manifest/writeWorkspaceFiles.js +30 -0
- package/dist/actions/manifest/writeWorkspaceFiles.js.map +1 -0
- package/dist/actions/mcp/detectAvailableEditors.js +75 -58
- package/dist/actions/mcp/detectAvailableEditors.js.map +1 -1
- package/dist/actions/mcp/editorConfigs.js +205 -0
- package/dist/actions/mcp/editorConfigs.js.map +1 -0
- package/dist/actions/mcp/promptForMCPSetup.js +24 -0
- package/dist/actions/mcp/promptForMCPSetup.js.map +1 -0
- package/dist/actions/mcp/setupMCP.js +88 -0
- package/dist/actions/mcp/setupMCP.js.map +1 -0
- package/dist/actions/mcp/types.js +3 -0
- package/dist/actions/mcp/types.js.map +1 -0
- package/dist/actions/mcp/writeMCPConfig.js +35 -28
- package/dist/actions/mcp/writeMCPConfig.js.map +1 -1
- package/dist/actions/media/buildNdjsonIndex.js +32 -0
- package/dist/actions/media/buildNdjsonIndex.js.map +1 -0
- package/dist/actions/media/importAspects.js +2 -11
- package/dist/actions/media/importAspects.js.map +1 -1
- package/dist/actions/media/importMedia.js +24 -20
- package/dist/actions/media/importMedia.js.map +1 -1
- package/dist/actions/organizations/findOrganizationByUserName.js +5 -0
- package/dist/actions/organizations/findOrganizationByUserName.js.map +1 -0
- package/dist/actions/organizations/getOrganization.js +68 -0
- package/dist/actions/organizations/getOrganization.js.map +1 -0
- package/dist/actions/organizations/getOrganizationChoices.js +27 -19
- package/dist/actions/organizations/getOrganizationChoices.js.map +1 -1
- package/dist/actions/organizations/hasProjectAttachGrant.js +1 -1
- package/dist/actions/organizations/hasProjectAttachGrant.js.map +1 -1
- package/dist/actions/organizations/types.js +3 -0
- package/dist/actions/organizations/types.js.map +1 -0
- package/dist/actions/organizations/validateOrganizationName.js +10 -0
- package/dist/actions/organizations/validateOrganizationName.js.map +1 -0
- package/dist/actions/preview/previewAction.js +2 -1
- package/dist/actions/preview/previewAction.js.map +1 -1
- package/dist/actions/projects/getManageUrl.js +6 -0
- package/dist/actions/projects/getManageUrl.js.map +1 -0
- package/dist/actions/projects/validateProjectName.js +11 -0
- package/dist/actions/projects/validateProjectName.js.map +1 -0
- package/dist/actions/schema/deleteSchemaAction.js +16 -32
- package/dist/actions/schema/deleteSchemaAction.js.map +1 -1
- package/dist/actions/schema/deploySchemas.js +22 -91
- package/dist/actions/schema/deploySchemas.js.map +1 -1
- package/dist/actions/schema/extractSanitySchema.worker.js +33 -0
- package/dist/actions/schema/extractSanitySchema.worker.js.map +1 -0
- package/dist/actions/schema/extractSanityWorkspace.worker.js +24 -0
- package/dist/actions/schema/extractSanityWorkspace.worker.js.map +1 -0
- package/dist/actions/schema/extractSchema.js +45 -0
- package/dist/actions/schema/extractSchema.js.map +1 -0
- package/dist/actions/schema/extractSchemaWatcher.js +128 -0
- package/dist/actions/schema/extractSchemaWatcher.js.map +1 -0
- package/dist/actions/schema/formatSchemaValidation.js +22 -6
- package/dist/actions/schema/formatSchemaValidation.js.map +1 -1
- package/dist/actions/schema/getExtractOptions.js +16 -0
- package/dist/actions/schema/getExtractOptions.js.map +1 -0
- package/dist/actions/schema/listSchemas.js +54 -57
- package/dist/actions/schema/listSchemas.js.map +1 -1
- package/dist/actions/schema/matchSchemaPattern.js +22 -0
- package/dist/actions/schema/matchSchemaPattern.js.map +1 -0
- package/dist/actions/schema/metafile.js.map +1 -1
- package/dist/actions/schema/runSchemaExtraction.js +39 -0
- package/dist/actions/schema/runSchemaExtraction.js.map +1 -0
- package/dist/actions/schema/types.js +17 -0
- package/dist/actions/schema/types.js.map +1 -0
- package/dist/actions/schema/uniqueWorkspaces.worker.js +24 -0
- package/dist/actions/schema/uniqueWorkspaces.worker.js.map +1 -0
- package/dist/actions/schema/updateWorkspaceSchema.js +63 -0
- package/dist/actions/schema/updateWorkspaceSchema.js.map +1 -0
- package/dist/actions/schema/uploadSchemaToLexicon.js +87 -0
- package/dist/actions/schema/uploadSchemaToLexicon.js.map +1 -0
- package/dist/actions/schema/utils/SchemaExtractionError.js +10 -0
- package/dist/actions/schema/utils/SchemaExtractionError.js.map +1 -0
- package/dist/actions/schema/utils/debug.js +1 -0
- package/dist/actions/schema/utils/debug.js.map +1 -1
- package/dist/actions/schema/utils/extractValidationFromSchemaError.js +12 -0
- package/dist/actions/schema/utils/extractValidationFromSchemaError.js.map +1 -0
- package/dist/actions/schema/utils/schemaStoreValidation.js +1 -15
- package/dist/actions/schema/utils/schemaStoreValidation.js.map +1 -1
- package/dist/actions/schema/utils/uniqByProjectIdDataset.js +1 -1
- package/dist/actions/schema/utils/uniqByProjectIdDataset.js.map +1 -1
- package/dist/actions/schema/validateAction.js +7 -17
- package/dist/actions/schema/validateAction.js.map +1 -1
- package/dist/{threads/validateSchema.js → actions/schema/validateSchema.worker.js} +28 -26
- package/dist/actions/schema/validateSchema.worker.js.map +1 -0
- package/dist/actions/schema/watchExtractSchema.js +72 -0
- package/dist/actions/schema/watchExtractSchema.js.map +1 -0
- package/dist/actions/telemetry/getLearnMoreMessage.js.map +1 -1
- package/dist/actions/telemetry/getStatusDisplay.js.map +1 -1
- package/dist/actions/telemetry/getStatusMessage.js.map +1 -1
- package/dist/actions/telemetry/isTrueish.js +10 -0
- package/dist/actions/telemetry/isTrueish.js.map +1 -0
- package/dist/actions/telemetry/resolveConsent.js +3 -3
- package/dist/actions/telemetry/resolveConsent.js.map +1 -1
- package/dist/actions/telemetry/setConsent.js +3 -2
- package/dist/actions/telemetry/setConsent.js.map +1 -1
- package/dist/actions/telemetry/telemetryDisclosure.js +3 -3
- package/dist/actions/telemetry/telemetryDisclosure.js.map +1 -1
- package/dist/actions/users/getMembersForProject.js.map +1 -1
- package/dist/actions/users/getPendingInvitations.js +1 -1
- package/dist/actions/users/getPendingInvitations.js.map +1 -1
- package/dist/actions/users/types.js.map +1 -1
- package/dist/actions/versions/filterSanityModules.js.map +1 -1
- package/dist/actions/versions/findSanityModulesVersions.js +2 -3
- package/dist/actions/versions/findSanityModulesVersions.js.map +1 -1
- package/dist/actions/versions/getFormatters.js +3 -3
- package/dist/actions/versions/getFormatters.js.map +1 -1
- package/dist/actions/versions/tryFindLatestVersion.js +1 -1
- package/dist/actions/versions/tryFindLatestVersion.js.map +1 -1
- package/dist/commands/backup/disable.js +26 -10
- package/dist/commands/backup/disable.js.map +1 -1
- package/dist/commands/backup/download.js +26 -17
- package/dist/commands/backup/download.js.map +1 -1
- package/dist/commands/backup/enable.js +25 -10
- package/dist/commands/backup/enable.js.map +1 -1
- package/dist/commands/backup/list.js +20 -8
- package/dist/commands/backup/list.js.map +1 -1
- package/dist/commands/build.js +2 -5
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/cors/add.js +33 -16
- package/dist/commands/cors/add.js.map +1 -1
- package/dist/commands/cors/delete.js +22 -7
- package/dist/commands/cors/delete.js.map +1 -1
- package/dist/commands/cors/list.js +22 -7
- package/dist/commands/cors/list.js.map +1 -1
- package/dist/commands/dataset/alias/create.js +26 -7
- package/dist/commands/dataset/alias/create.js.map +1 -1
- package/dist/commands/dataset/alias/delete.js +20 -7
- package/dist/commands/dataset/alias/delete.js.map +1 -1
- package/dist/commands/dataset/alias/link.js +20 -7
- package/dist/commands/dataset/alias/link.js.map +1 -1
- package/dist/commands/dataset/alias/unlink.js +20 -7
- package/dist/commands/dataset/alias/unlink.js.map +1 -1
- package/dist/commands/dataset/copy.js +51 -35
- package/dist/commands/dataset/copy.js.map +1 -1
- package/dist/commands/dataset/create.js +46 -14
- package/dist/commands/dataset/create.js.map +1 -1
- package/dist/commands/dataset/delete.js +28 -9
- package/dist/commands/dataset/delete.js.map +1 -1
- package/dist/commands/dataset/embeddings/disable.js +77 -0
- package/dist/commands/dataset/embeddings/disable.js.map +1 -0
- package/dist/commands/dataset/embeddings/enable.js +141 -0
- package/dist/commands/dataset/embeddings/enable.js.map +1 -0
- package/dist/commands/dataset/embeddings/status.js +72 -0
- package/dist/commands/dataset/embeddings/status.js.map +1 -0
- package/dist/commands/dataset/export.js +26 -18
- package/dist/commands/dataset/export.js.map +1 -1
- package/dist/commands/dataset/import.js +306 -1
- package/dist/commands/dataset/import.js.map +1 -1
- package/dist/commands/dataset/list.js +22 -7
- package/dist/commands/dataset/list.js.map +1 -1
- package/dist/commands/dataset/visibility/get.js +18 -7
- package/dist/commands/dataset/visibility/get.js.map +1 -1
- package/dist/commands/dataset/visibility/set.js +22 -7
- package/dist/commands/dataset/visibility/set.js.map +1 -1
- package/dist/commands/debug.js +9 -7
- package/dist/commands/debug.js.map +1 -1
- package/dist/commands/deploy.js +22 -11
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/dev.js +7 -6
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/docs/search.js +3 -2
- package/dist/commands/docs/search.js.map +1 -1
- package/dist/commands/doctor.js +125 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/documents/create.js +19 -12
- package/dist/commands/documents/create.js.map +1 -1
- package/dist/commands/documents/delete.js +19 -12
- package/dist/commands/documents/delete.js.map +1 -1
- package/dist/commands/documents/get.js +17 -12
- package/dist/commands/documents/get.js.map +1 -1
- package/dist/commands/documents/query.js +26 -18
- package/dist/commands/documents/query.js.map +1 -1
- package/dist/commands/documents/validate.js +74 -48
- package/dist/commands/documents/validate.js.map +1 -1
- package/dist/commands/graphql/deploy.js +457 -0
- package/dist/commands/graphql/deploy.js.map +1 -0
- package/dist/commands/graphql/list.js +21 -13
- package/dist/commands/graphql/list.js.map +1 -1
- package/dist/commands/graphql/undeploy.js +37 -19
- package/dist/commands/graphql/undeploy.js.map +1 -1
- package/dist/commands/hook/attempt.js +22 -7
- package/dist/commands/hook/attempt.js.map +1 -1
- package/dist/commands/hook/create.js +23 -8
- package/dist/commands/hook/create.js.map +1 -1
- package/dist/commands/hook/delete.js +22 -7
- package/dist/commands/hook/delete.js.map +1 -1
- package/dist/commands/hook/list.js +22 -7
- package/dist/commands/hook/list.js.map +1 -1
- package/dist/commands/hook/logs.js +25 -12
- package/dist/commands/hook/logs.js.map +1 -1
- package/dist/commands/init.js +164 -143
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.js +19 -6
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logout.js +8 -6
- package/dist/commands/logout.js.map +1 -1
- package/dist/commands/manage.js +2 -2
- package/dist/commands/manage.js.map +1 -1
- package/dist/commands/manifest/extract.js +14 -10
- package/dist/commands/manifest/extract.js.map +1 -1
- package/dist/commands/mcp/configure.js +14 -75
- package/dist/commands/mcp/configure.js.map +1 -1
- package/dist/commands/media/create-aspect.js +11 -10
- package/dist/commands/media/create-aspect.js.map +1 -1
- package/dist/commands/media/delete-aspect.js +14 -11
- package/dist/commands/media/delete-aspect.js.map +1 -1
- package/dist/commands/media/deploy-aspect.js +31 -17
- package/dist/commands/media/deploy-aspect.js.map +1 -1
- package/dist/commands/media/export.js +10 -9
- package/dist/commands/media/export.js.map +1 -1
- package/dist/commands/media/import.js +14 -12
- package/dist/commands/media/import.js.map +1 -1
- package/dist/commands/preview.js +12 -28
- package/dist/commands/preview.js.map +1 -1
- package/dist/commands/projects/create.js +181 -0
- package/dist/commands/projects/create.js.map +1 -0
- package/dist/commands/projects/list.js +4 -3
- package/dist/commands/projects/list.js.map +1 -1
- package/dist/commands/schema/delete.js +33 -34
- package/dist/commands/schema/delete.js.map +1 -1
- package/dist/commands/schema/deploy.js +19 -30
- package/dist/commands/schema/deploy.js.map +1 -1
- package/dist/commands/schema/extract.js +34 -11
- package/dist/commands/schema/extract.js.map +1 -1
- package/dist/commands/schema/list.js +10 -31
- package/dist/commands/schema/list.js.map +1 -1
- package/dist/commands/schema/validate.js +10 -2
- package/dist/commands/schema/validate.js.map +1 -1
- package/dist/commands/tokens/add.js +24 -7
- package/dist/commands/tokens/add.js.map +1 -1
- package/dist/commands/tokens/delete.js +20 -7
- package/dist/commands/tokens/delete.js.map +1 -1
- package/dist/commands/tokens/list.js +20 -7
- package/dist/commands/tokens/list.js.map +1 -1
- package/dist/commands/undeploy.js +9 -8
- package/dist/commands/undeploy.js.map +1 -1
- package/dist/commands/users/invite.js +24 -7
- package/dist/commands/users/invite.js.map +1 -1
- package/dist/commands/users/list.js +77 -34
- package/dist/commands/users/list.js.map +1 -1
- package/dist/commands/versions.js +3 -3
- package/dist/commands/versions.js.map +1 -1
- package/dist/config/createCliConfig.js +2 -2
- package/dist/config/createCliConfig.js.map +1 -1
- package/dist/exports/_internal.d.ts +132 -0
- package/dist/exports/_internal.js +4 -0
- package/dist/exports/_internal.js.map +1 -0
- package/dist/exports/index.d.ts +113 -0
- package/dist/exports/index.js +6 -0
- package/dist/exports/index.js.map +1 -0
- package/dist/hooks/init/checkForUpdates.js +14 -0
- package/dist/hooks/init/checkForUpdates.js.map +1 -0
- package/dist/hooks/prerun/flushTelemetry.worker.js +1 -1
- package/dist/hooks/prerun/flushTelemetry.worker.js.map +1 -1
- package/dist/hooks/prerun/injectEnvVariables.js +39 -0
- package/dist/hooks/prerun/injectEnvVariables.js.map +1 -0
- package/dist/hooks/prerun/setupTelemetry.js +14 -7
- package/dist/hooks/prerun/setupTelemetry.js.map +1 -1
- package/dist/hooks/prerun/warnings.js +6 -0
- package/dist/hooks/prerun/warnings.js.map +1 -0
- package/dist/prompts/promptForDefaultConfig.js +12 -0
- package/dist/prompts/promptForDefaultConfig.js.map +1 -0
- package/dist/prompts/promptForOrganizationName.js +11 -0
- package/dist/prompts/promptForOrganizationName.js.map +1 -0
- package/dist/prompts/promptForProject.js +64 -0
- package/dist/prompts/promptForProject.js.map +1 -0
- package/dist/prompts/promptForProjectName.js +11 -0
- package/dist/prompts/promptForProjectName.js.map +1 -0
- package/dist/{actions/auth/login/promptProviders.js → prompts/promptForProviders.js} +3 -3
- package/dist/prompts/promptForProviders.js.map +1 -0
- package/dist/prompts/selectMediaLibrary.js +1 -1
- package/dist/prompts/selectMediaLibrary.js.map +1 -1
- package/dist/server/devServer.js +4 -2
- package/dist/server/devServer.js.map +1 -1
- package/dist/server/previewServer.js +17 -11
- package/dist/server/previewServer.js.map +1 -1
- package/dist/server/vite/plugin-schema-extraction.js +201 -0
- package/dist/server/vite/plugin-schema-extraction.js.map +1 -0
- package/dist/server/vite/plugin-typegen.js +217 -0
- package/dist/server/vite/plugin-typegen.js.map +1 -0
- package/dist/services/auth.js +42 -3
- package/dist/services/auth.js.map +1 -1
- package/dist/services/datasets.js +7 -5
- package/dist/services/datasets.js.map +1 -1
- package/dist/services/docs.js +2 -2
- package/dist/services/docs.js.map +1 -1
- package/dist/services/documents.js +56 -0
- package/dist/services/documents.js.map +1 -0
- package/dist/services/embeddings.js +25 -0
- package/dist/services/embeddings.js.map +1 -0
- package/dist/services/getUrlHeaders.js +25 -0
- package/dist/services/getUrlHeaders.js.map +1 -0
- package/dist/services/grants.js +13 -0
- package/dist/services/grants.js.map +1 -0
- package/dist/services/graphql.js +64 -0
- package/dist/services/graphql.js.map +1 -1
- package/dist/services/mcp.js.map +1 -1
- package/dist/services/organizations.js +1 -1
- package/dist/services/organizations.js.map +1 -1
- package/dist/services/projects.js +4 -2
- package/dist/services/projects.js.map +1 -1
- package/dist/services/schemas.js +1 -1
- package/dist/services/schemas.js.map +1 -1
- package/dist/services/telemetry.js +63 -2
- package/dist/services/telemetry.js.map +1 -1
- package/dist/services/userApplications.js +21 -6
- package/dist/services/userApplications.js.map +1 -1
- package/dist/telemetry/build.telemetry.js +13 -0
- package/dist/telemetry/build.telemetry.js.map +1 -0
- package/dist/telemetry/extractSchema.telemetry.js +18 -0
- package/dist/telemetry/extractSchema.telemetry.js.map +1 -0
- package/dist/telemetry/init.telemetry.js +8 -0
- package/dist/telemetry/init.telemetry.js.map +1 -0
- package/dist/telemetry/login.telemetry.js +8 -0
- package/dist/telemetry/login.telemetry.js.map +1 -0
- package/dist/telemetry/mcp.telemetry.js +8 -0
- package/dist/telemetry/mcp.telemetry.js.map +1 -0
- package/dist/types/grants.js +3 -0
- package/dist/types/grants.js.map +1 -0
- package/dist/types.js +6 -1
- package/dist/types.js.map +1 -1
- package/dist/util/appId.js +5 -5
- package/dist/util/appId.js.map +1 -1
- package/dist/util/checkProjectPermissions.js +21 -0
- package/dist/util/checkProjectPermissions.js.map +1 -0
- package/dist/util/cliClient.js +13 -10
- package/dist/util/cliClient.js.map +1 -1
- package/dist/util/compareDependencyVersions.js +74 -38
- package/dist/util/compareDependencyVersions.js.map +1 -1
- package/dist/util/createExpiringConfig.js +64 -0
- package/dist/util/createExpiringConfig.js.map +1 -0
- package/dist/util/detectFramework.js +135 -0
- package/dist/util/detectFramework.js.map +1 -0
- package/dist/util/errorMessages.js +0 -1
- package/dist/util/errorMessages.js.map +1 -1
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js +1 -2
- package/dist/util/extractDocumentsFromNdjsonOrTarball.js.map +1 -1
- package/dist/util/formatSize.js +2 -2
- package/dist/util/formatSize.js.map +1 -1
- package/dist/util/getCliVersion.js +1 -1
- package/dist/util/getCliVersion.js.map +1 -1
- package/dist/util/getLocalPackageVersion.js +31 -23
- package/dist/util/getLocalPackageVersion.js.map +1 -1
- package/dist/util/getProjectDefaults.js.map +1 -1
- package/dist/util/getSanityEnv.js +3 -0
- package/dist/util/getSanityEnv.js.map +1 -0
- package/dist/util/getSharedServerConfig.js +1 -0
- package/dist/util/getSharedServerConfig.js.map +1 -1
- package/dist/util/getWorkspace.js +1 -1
- package/dist/util/getWorkspace.js.map +1 -1
- package/dist/util/isSchemaError.js +11 -0
- package/dist/util/isSchemaError.js.map +1 -0
- package/dist/util/isTar.js +8 -0
- package/dist/util/isTar.js.map +1 -0
- package/dist/util/loadEnv.js +1 -6
- package/dist/util/loadEnv.js.map +1 -1
- package/dist/util/packageManager/getPeerDependencies.js +44 -0
- package/dist/util/packageManager/getPeerDependencies.js.map +1 -0
- package/dist/util/packageManager/installationInfo/analyzeIssues.js +225 -0
- package/dist/util/packageManager/installationInfo/analyzeIssues.js.map +1 -0
- package/dist/util/packageManager/installationInfo/commands.js +73 -0
- package/dist/util/packageManager/installationInfo/commands.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectCliInstallation.js +66 -0
- package/dist/util/packageManager/installationInfo/detectCliInstallation.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectGlobals.js +295 -0
- package/dist/util/packageManager/installationInfo/detectGlobals.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectPackages.js +190 -0
- package/dist/util/packageManager/installationInfo/detectPackages.js.map +1 -0
- package/dist/util/packageManager/installationInfo/detectWorkspace.js +192 -0
- package/dist/util/packageManager/installationInfo/detectWorkspace.js.map +1 -0
- package/dist/util/packageManager/installationInfo/index.js +4 -0
- package/dist/util/packageManager/installationInfo/index.js.map +1 -0
- package/dist/util/packageManager/installationInfo/readJsonFile.js +14 -0
- package/dist/util/packageManager/installationInfo/readJsonFile.js.map +1 -0
- package/dist/util/packageManager/installationInfo/resolveVersionRange.js +42 -0
- package/dist/util/packageManager/installationInfo/resolveVersionRange.js.map +1 -0
- package/dist/util/packageManager/installationInfo/types.js +3 -0
- package/dist/util/packageManager/installationInfo/types.js.map +1 -0
- package/dist/util/packageManager/packageManagerChoice.js +1 -20
- package/dist/util/packageManager/packageManagerChoice.js.map +1 -1
- package/dist/util/packageManager/upgradePackages.js +4 -1
- package/dist/util/packageManager/upgradePackages.js.map +1 -1
- package/dist/util/promiseRaceWithTimeout.js +28 -0
- package/dist/util/promiseRaceWithTimeout.js.map +1 -0
- package/dist/util/readdirRecursive.js.map +1 -1
- package/dist/util/resolveLatestVersions.js +2 -2
- package/dist/util/resolveLatestVersions.js.map +1 -1
- package/dist/util/sharedFlags.js +54 -0
- package/dist/util/sharedFlags.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/cleanupOldTelemetryFiles.js +1 -1
- package/dist/util/telemetry/cleanupOldTelemetryFiles.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/createTelemetryStore.js +4 -4
- package/dist/util/telemetry/createTelemetryStore.js.map +1 -0
- package/dist/util/telemetry/createTraceId.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/findTelemetryFiles.js +4 -3
- package/dist/util/telemetry/findTelemetryFiles.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/flushTelemetryFiles.js +29 -18
- package/dist/util/telemetry/flushTelemetryFiles.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/generateTelemetryFilePath.js +2 -2
- package/dist/util/telemetry/generateTelemetryFilePath.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/logger.js +7 -2
- package/dist/util/telemetry/logger.js.map +1 -0
- package/dist/util/telemetry/readNDJSON.js +28 -0
- package/dist/util/telemetry/readNDJSON.js.map +1 -0
- package/dist/util/telemetry/telemetryStoreDebug.js +7 -0
- package/dist/util/telemetry/telemetryStoreDebug.js.map +1 -0
- package/dist/{telemetry/store → util/telemetry}/trace.js +2 -2
- package/dist/util/telemetry/trace.js.map +1 -0
- package/dist/util/toForwardSlashes.js +8 -0
- package/dist/util/toForwardSlashes.js.map +1 -0
- package/dist/util/update/fetchLatestVersion.js +21 -0
- package/dist/util/update/fetchLatestVersion.js.map +1 -0
- package/dist/util/update/getUpdateCommand.js +20 -0
- package/dist/util/update/getUpdateCommand.js.map +1 -0
- package/dist/util/update/isInstalledUsingYarn.js +17 -0
- package/dist/util/update/isInstalledUsingYarn.js.map +1 -0
- package/dist/util/update/showNotificationUpdate.js +31 -0
- package/dist/util/update/showNotificationUpdate.js.map +1 -0
- package/dist/util/update/updateChecker.js +60 -0
- package/dist/util/update/updateChecker.js.map +1 -0
- package/dist/util/update/updateCheckerDebug.js +4 -0
- package/dist/util/update/updateCheckerDebug.js.map +1 -0
- package/dist/util/warnAboutMissingAppId.js +6 -2
- package/dist/util/warnAboutMissingAppId.js.map +1 -1
- package/dist/util/warnOnNonProductionEnvironment.js +18 -0
- package/dist/util/warnOnNonProductionEnvironment.js.map +1 -0
- package/oclif.config.js +7 -1
- package/oclif.manifest.json +1129 -146
- package/package.json +83 -78
- package/static/favicons/apple-touch-icon.png +0 -0
- package/static/favicons/favicon-192.png +0 -0
- package/static/favicons/favicon-512.png +0 -0
- package/static/favicons/favicon-96.png +0 -0
- package/static/favicons/favicon.ico +0 -0
- package/static/favicons/favicon.svg +12 -0
- package/dist/SanityHelp.d.ts +0 -4
- package/dist/actions/auth/authServer.d.ts +0 -33
- package/dist/actions/auth/getProviderName.d.ts +0 -8
- package/dist/actions/auth/login/getProvider.d.ts +0 -15
- package/dist/actions/auth/login/getSSOProvider.d.ts +0 -13
- package/dist/actions/auth/login/login.d.ts +0 -20
- package/dist/actions/auth/login/promptProviders.d.ts +0 -10
- package/dist/actions/auth/login/promptProviders.js.map +0 -1
- package/dist/actions/auth/login/samlProviderToLoginProvider.d.ts +0 -9
- package/dist/actions/auth/types.d.ts +0 -26
- package/dist/actions/backup/archiveDir.d.ts +0 -10
- package/dist/actions/backup/assertDatasetExist.d.ts +0 -8
- package/dist/actions/backup/backupDownloadDebug.d.ts +0 -1
- package/dist/actions/backup/cleanupTmpDir.d.ts +0 -6
- package/dist/actions/backup/constants.d.ts +0 -1
- package/dist/actions/backup/downloadAsset.d.ts +0 -9
- package/dist/actions/backup/downloadDocument.d.ts +0 -7
- package/dist/actions/backup/fetchNextBackupPage.d.ts +0 -23
- package/dist/actions/backup/progressSpinner.d.ts +0 -14
- package/dist/actions/build/buildApp.d.ts +0 -7
- package/dist/actions/build/buildDebug.d.ts +0 -1
- package/dist/actions/build/buildStaticFiles.d.ts +0 -35
- package/dist/actions/build/buildStudio.d.ts +0 -7
- package/dist/actions/build/buildVendorDependencies.d.ts +0 -11
- package/dist/actions/build/checkRequiredDependencies.d.ts +0 -22
- package/dist/actions/build/checkStudioDependencyVersions.d.ts +0 -2
- package/dist/actions/build/createExternalFromImportMap.d.ts +0 -11
- package/dist/actions/build/decorateIndexWithAutoGeneratedWarning.d.ts +0 -6
- package/dist/actions/build/decorateIndexWithBridgeScript.d.ts +0 -8
- package/dist/actions/build/determineBasePath.d.ts +0 -7
- package/dist/actions/build/generateWebManifest.d.ts +0 -15
- package/dist/actions/build/getAppEnvVars.d.ts +0 -6
- package/dist/actions/build/getAutoUpdatesImportMap.d.ts +0 -21
- package/dist/actions/build/getEntryModule.d.ts +0 -7
- package/dist/actions/build/getPossibleDocumentComponentLocations.d.ts +0 -4
- package/dist/actions/build/getStudioEnvVars.d.ts +0 -6
- package/dist/actions/build/getStudioEnvironmentVariables.d.ts +0 -52
- package/dist/actions/build/getViteConfig.d.ts +0 -66
- package/dist/actions/build/normalizeBasePath.d.ts +0 -6
- package/dist/actions/build/renderDocument.d.ts +0 -15
- package/dist/actions/build/renderDocument.worker.d.ts +0 -1
- package/dist/actions/build/renderDocumentWorker/addTimestampImportMapScriptToHtml.d.ts +0 -6
- package/dist/actions/build/renderDocumentWorker/components/BasicDocument.d.ts +0 -19
- package/dist/actions/build/renderDocumentWorker/components/DefaultDocument.d.ts +0 -13
- package/dist/actions/build/renderDocumentWorker/components/Favicons.d.ts +0 -2
- package/dist/actions/build/renderDocumentWorker/components/GlobalErrorHandler.d.ts +0 -3
- package/dist/actions/build/renderDocumentWorker/components/NoJavascript.d.ts +0 -3
- package/dist/actions/build/renderDocumentWorker/getDocumentComponent.d.ts +0 -5
- package/dist/actions/build/renderDocumentWorker/getDocumentHtml.d.ts +0 -8
- package/dist/actions/build/renderDocumentWorker/renderDocumentWorker.d.ts +0 -21
- package/dist/actions/build/renderDocumentWorker/tryLoadDocumentComponent.d.ts +0 -8
- package/dist/actions/build/renderDocumentWorker/types.d.ts +0 -8
- package/dist/actions/build/shouldAutoUpdate.d.ts +0 -16
- package/dist/actions/build/types.d.ts +0 -13
- package/dist/actions/build/writeFavicons.d.ts +0 -1
- package/dist/actions/build/writeSanityRuntime.d.ts +0 -19
- package/dist/actions/build/writeWebManifest.d.ts +0 -4
- package/dist/actions/codemods/deskRename.d.ts +0 -2
- package/dist/actions/codemods/index.d.ts +0 -5
- package/dist/actions/codemods/partsTypeDirective.d.ts +0 -2
- package/dist/actions/codemods/reactIconsV3.d.ts +0 -2
- package/dist/actions/codemods/types.d.ts +0 -8
- package/dist/actions/cors/filterAndValidateOrigin.d.ts +0 -7
- package/dist/actions/dataset/create.d.ts +0 -49
- package/dist/actions/dataset/determineDatasetAclMode.d.ts +0 -37
- package/dist/actions/dataset/processAliasName.d.ts +0 -9
- package/dist/actions/dataset/validateDatasetAliasName.d.ts +0 -1
- package/dist/actions/dataset/validateDatasetName.d.ts +0 -13
- package/dist/actions/debug/gatherDebugInfo.d.ts +0 -2
- package/dist/actions/debug/getGlobalConfigLocation.d.ts +0 -1
- package/dist/actions/debug/types.d.ts +0 -30
- package/dist/actions/deploy/checkDir.d.ts +0 -8
- package/dist/actions/deploy/createStudioUserApplication.d.ts +0 -2
- package/dist/actions/deploy/createUserApplicationForApp.d.ts +0 -2
- package/dist/actions/deploy/deployApp.d.ts +0 -7
- package/dist/actions/deploy/deployDebug.d.ts +0 -1
- package/dist/actions/deploy/deployStudio.d.ts +0 -2
- package/dist/actions/deploy/findUserApplicationForApp.d.ts +0 -15
- package/dist/actions/deploy/findUserApplicationForStudio.d.ts +0 -13
- package/dist/actions/deploy/types.d.ts +0 -11
- package/dist/actions/dev/devAction.d.ts +0 -4
- package/dist/actions/dev/devDebug.d.ts +0 -1
- package/dist/actions/dev/getCoreAppUrl.d.ts +0 -5
- package/dist/actions/dev/getCoreAppUrl.js +0 -10
- package/dist/actions/dev/getCoreAppUrl.js.map +0 -1
- package/dist/actions/dev/getDevServerConfig.d.ts +0 -9
- package/dist/actions/dev/startAppDevServer.d.ts +0 -4
- package/dist/actions/dev/startStudioDevServer.d.ts +0 -4
- package/dist/actions/dev/types.d.ts +0 -10
- package/dist/actions/docs/normalizeDocsPath.d.ts +0 -8
- package/dist/actions/documents/constants.d.ts +0 -1
- package/dist/actions/documents/editor.d.ts +0 -11
- package/dist/actions/documents/types.d.ts +0 -2
- package/dist/actions/documents/validate.d.ts +0 -26
- package/dist/actions/documents/validation/reporters/index.d.ts +0 -5
- package/dist/actions/documents/validation/reporters/jsonReporter.d.ts +0 -2
- package/dist/actions/documents/validation/reporters/ndjsonReporter.d.ts +0 -2
- package/dist/actions/documents/validation/reporters/prettyReporter/formatDocumentValidation.d.ts +0 -10
- package/dist/actions/documents/validation/reporters/prettyReporter/index.d.ts +0 -1
- package/dist/actions/documents/validation/reporters/prettyReporter/prettyReporter.d.ts +0 -5
- package/dist/actions/documents/validation/reporters/prettyReporter/util.d.ts +0 -53
- package/dist/actions/exec/execScript.d.ts +0 -11
- package/dist/actions/graphql/getGraphQLAPIs.d.ts +0 -2
- package/dist/actions/graphql/getGraphQLAPIs.worker.d.ts +0 -1
- package/dist/actions/graphql/types.d.ts +0 -68
- package/dist/actions/hook/constants.d.ts +0 -1
- package/dist/actions/hook/formatFailure.d.ts +0 -4
- package/dist/actions/hook/types.d.ts +0 -78
- package/dist/actions/init/bootstrapLocalTemplate.d.ts +0 -13
- package/dist/actions/init/bootstrapRemoteTemplate.d.ts +0 -12
- package/dist/actions/init/bootstrapTemplate.d.ts +0 -18
- package/dist/actions/init/checkNextJsReactCompatibility.d.ts +0 -9
- package/dist/actions/init/constants.d.ts +0 -1
- package/dist/actions/init/countNestedFolders.d.ts +0 -1
- package/dist/actions/init/createAppCliConfig.d.ts +0 -5
- package/dist/actions/init/createCliConfig.d.ts +0 -6
- package/dist/actions/init/createPackageManifest.d.ts +0 -6
- package/dist/actions/init/createStudioConfig.d.ts +0 -13
- package/dist/actions/init/determineAppTemplate.d.ts +0 -9
- package/dist/actions/init/env/createOrAppendEnvVars.d.ts +0 -12
- package/dist/actions/init/env/parseAndUpdateEnvVars.d.ts +0 -9
- package/dist/actions/init/env/writeEnvVarsToFile.d.ts +0 -12
- package/dist/actions/init/fetchPostInitPrompt.d.ts +0 -6
- package/dist/actions/init/git.d.ts +0 -1
- package/dist/actions/init/processTemplate.d.ts +0 -7
- package/dist/actions/init/remoteTemplate.d.ts +0 -20
- package/dist/actions/init/resolvePackageManager.d.ts +0 -10
- package/dist/actions/init/setupMCP.d.ts +0 -21
- package/dist/actions/init/setupMCP.js +0 -258
- package/dist/actions/init/setupMCP.js.map +0 -1
- package/dist/actions/init/templates/appQuickstart.d.ts +0 -3
- package/dist/actions/init/templates/appSanityUi.d.ts +0 -3
- package/dist/actions/init/templates/blog.d.ts +0 -3
- package/dist/actions/init/templates/clean.d.ts +0 -3
- package/dist/actions/init/templates/getStarted.d.ts +0 -3
- package/dist/actions/init/templates/index.d.ts +0 -3
- package/dist/actions/init/templates/moviedb.d.ts +0 -3
- package/dist/actions/init/templates/nextjs/index.d.ts +0 -6
- package/dist/actions/init/templates/nextjs/schemaTypes/blog.d.ts +0 -3
- package/dist/actions/init/templates/quickstart.d.ts +0 -3
- package/dist/actions/init/templates/shopify.d.ts +0 -3
- package/dist/actions/init/templates/shopifyOnline.d.ts +0 -3
- package/dist/actions/init/types.d.ts +0 -15
- package/dist/actions/init/updateInitialTemplateMetadata.d.ts +0 -1
- package/dist/actions/manifest/SchemaIcon.d.ts +0 -9
- package/dist/actions/manifest/extractAppManifest.d.ts +0 -20
- package/dist/actions/manifest/extractManifest.d.ts +0 -14
- package/dist/actions/manifest/extractWorkspaceManifest.d.ts +0 -3
- package/dist/actions/manifest/purifyConfig.d.ts +0 -10
- package/dist/actions/manifest/schemaTypeHelpers.d.ts +0 -17
- package/dist/actions/manifest/types.d.ts +0 -119
- package/dist/actions/mcp/detectAvailableEditors.d.ts +0 -8
- package/dist/actions/mcp/getEditorsWithExistingConfig.d.ts +0 -8
- package/dist/actions/mcp/getEditorsWithExistingConfig.js +0 -29
- package/dist/actions/mcp/getEditorsWithExistingConfig.js.map +0 -1
- package/dist/actions/mcp/writeMCPConfig.d.ts +0 -9
- package/dist/actions/media/getMediaLibraryConfig.d.ts +0 -2
- package/dist/actions/media/importAspects.d.ts +0 -52
- package/dist/actions/media/importMedia.d.ts +0 -55
- package/dist/actions/media/importMediaDebug.d.ts +0 -1
- package/dist/actions/organizations/getOrganizationChoices.d.ts +0 -6
- package/dist/actions/organizations/getOrganizationsWithAttachGrantInfo.d.ts +0 -2
- package/dist/actions/organizations/hasProjectAttachGrant.d.ts +0 -1
- package/dist/actions/preview/getPreviewServerConfig.d.ts +0 -15
- package/dist/actions/preview/previewAction.d.ts +0 -10
- package/dist/actions/preview/types.d.ts +0 -2
- package/dist/actions/schema/deleteSchemaAction.d.ts +0 -23
- package/dist/actions/schema/deploySchemas.d.ts +0 -15
- package/dist/actions/schema/extract.d.ts +0 -7
- package/dist/actions/schema/extract.js +0 -38
- package/dist/actions/schema/extract.js.map +0 -1
- package/dist/actions/schema/formatSchemaValidation.d.ts +0 -3
- package/dist/actions/schema/listSchemas.d.ts +0 -12
- package/dist/actions/schema/metafile.d.ts +0 -21
- package/dist/actions/schema/schemaStoreTypes.d.ts +0 -18
- package/dist/actions/schema/schemaStoreTypes.js +0 -19
- package/dist/actions/schema/schemaStoreTypes.js.map +0 -1
- package/dist/actions/schema/utils/debug.d.ts +0 -2
- package/dist/actions/schema/utils/manifestExtractor.d.ts +0 -9
- package/dist/actions/schema/utils/manifestExtractor.js +0 -33
- package/dist/actions/schema/utils/manifestExtractor.js.map +0 -1
- package/dist/actions/schema/utils/manifestReader.d.ts +0 -17
- package/dist/actions/schema/utils/manifestReader.js +0 -71
- package/dist/actions/schema/utils/manifestReader.js.map +0 -1
- package/dist/actions/schema/utils/schemaStoreOutStrings.d.ts +0 -2
- package/dist/actions/schema/utils/schemaStoreValidation.d.ts +0 -29
- package/dist/actions/schema/utils/uniqByProjectIdDataset.d.ts +0 -14
- package/dist/actions/schema/utils/workspaceSchemaId.d.ts +0 -8
- package/dist/actions/schema/validateAction.d.ts +0 -11
- package/dist/actions/telemetry/fetchTelemetryConsent.d.ts +0 -11
- package/dist/actions/telemetry/fetchTelemetryConsent.js +0 -38
- package/dist/actions/telemetry/fetchTelemetryConsent.js.map +0 -1
- package/dist/actions/telemetry/getLearnMoreMessage.d.ts +0 -2
- package/dist/actions/telemetry/getStatusDisplay.d.ts +0 -2
- package/dist/actions/telemetry/getStatusMessage.d.ts +0 -2
- package/dist/actions/telemetry/isValidApiConsentStatus.d.ts +0 -20
- package/dist/actions/telemetry/isValidApiConsentStatus.js +0 -25
- package/dist/actions/telemetry/isValidApiConsentStatus.js.map +0 -1
- package/dist/actions/telemetry/resolveConsent.d.ts +0 -2
- package/dist/actions/telemetry/setConsent.d.ts +0 -13
- package/dist/actions/telemetry/telemetryDebug.d.ts +0 -1
- package/dist/actions/telemetry/telemetryDisclosure.d.ts +0 -1
- package/dist/actions/telemetry/telemetryLearnMoreMessage.d.ts +0 -2
- package/dist/actions/telemetry/types.d.ts +0 -14
- package/dist/actions/telemetry/types.js.map +0 -1
- package/dist/actions/tokens/constants.d.ts +0 -4
- package/dist/actions/tokens/types.d.ts +0 -32
- package/dist/actions/tokens/validateRole.d.ts +0 -9
- package/dist/actions/undeploy/getStudioOrAppUserApplication.d.ts +0 -9
- package/dist/actions/users/getMembersForProject.d.ts +0 -24
- package/dist/actions/users/getPendingInvitations.d.ts +0 -13
- package/dist/actions/users/types.d.ts +0 -39
- package/dist/actions/users/usersDebug.d.ts +0 -1
- package/dist/actions/users/validateEmail.d.ts +0 -1
- package/dist/actions/versions/buildPackageArray.d.ts +0 -18
- package/dist/actions/versions/filterSanityModules.d.ts +0 -8
- package/dist/actions/versions/findSanityModulesVersions.d.ts +0 -14
- package/dist/actions/versions/getFormatters.d.ts +0 -17
- package/dist/actions/versions/tryFindLatestVersion.d.ts +0 -8
- package/dist/actions/versions/types.d.ts +0 -14
- package/dist/actions/versions/versionsDebug.d.ts +0 -1
- package/dist/commands/backup/disable.d.ts +0 -13
- package/dist/commands/backup/download.d.ts +0 -21
- package/dist/commands/backup/enable.d.ts +0 -12
- package/dist/commands/backup/list.d.ts +0 -19
- package/dist/commands/build.d.ts +0 -18
- package/dist/commands/codemod.d.ts +0 -19
- package/dist/commands/cors/add.d.ts +0 -29
- package/dist/commands/cors/delete.d.ts +0 -13
- package/dist/commands/cors/list.d.ts +0 -9
- package/dist/commands/dataset/alias/create.d.ts +0 -13
- package/dist/commands/dataset/alias/delete.d.ts +0 -16
- package/dist/commands/dataset/alias/link.d.ts +0 -17
- package/dist/commands/dataset/alias/unlink.d.ts +0 -16
- package/dist/commands/dataset/copy.d.ts +0 -27
- package/dist/commands/dataset/create.d.ts +0 -15
- package/dist/commands/dataset/delete.d.ts +0 -15
- package/dist/commands/dataset/export.d.ts +0 -26
- package/dist/commands/dataset/import.d.ts +0 -1
- package/dist/commands/dataset/list.d.ts +0 -9
- package/dist/commands/dataset/visibility/get.d.ts +0 -12
- package/dist/commands/dataset/visibility/set.d.ts +0 -13
- package/dist/commands/debug.d.ts +0 -9
- package/dist/commands/deploy.d.ts +0 -23
- package/dist/commands/dev.d.ts +0 -14
- package/dist/commands/docs/browse.d.ts +0 -6
- package/dist/commands/docs/read.d.ts +0 -15
- package/dist/commands/docs/search.d.ts +0 -15
- package/dist/commands/documents/create.d.ts +0 -39
- package/dist/commands/documents/delete.d.ts +0 -17
- package/dist/commands/documents/get.d.ts +0 -16
- package/dist/commands/documents/query.d.ts +0 -19
- package/dist/commands/documents/validate.d.ts +0 -29
- package/dist/commands/exec.d.ts +0 -19
- package/dist/commands/graphql/list.d.ts +0 -9
- package/dist/commands/graphql/undeploy.d.ts +0 -16
- package/dist/commands/hook/attempt.d.ts +0 -13
- package/dist/commands/hook/create.d.ts +0 -9
- package/dist/commands/hook/delete.d.ts +0 -13
- package/dist/commands/hook/list.d.ts +0 -9
- package/dist/commands/hook/logs.d.ts +0 -19
- package/dist/commands/init.d.ts +0 -65
- package/dist/commands/install.d.ts +0 -10
- package/dist/commands/learn.d.ts +0 -6
- package/dist/commands/login.d.ts +0 -13
- package/dist/commands/logout.d.ts +0 -6
- package/dist/commands/manage.d.ts +0 -6
- package/dist/commands/manifest/extract.d.ts +0 -12
- package/dist/commands/mcp/configure.d.ts +0 -9
- package/dist/commands/media/create-aspect.d.ts +0 -9
- package/dist/commands/media/delete-aspect.d.ts +0 -16
- package/dist/commands/media/deploy-aspect.d.ts +0 -20
- package/dist/commands/media/export.d.ts +0 -21
- package/dist/commands/media/import.d.ts +0 -18
- package/dist/commands/openapi/get.d.ts +0 -17
- package/dist/commands/openapi/list.d.ts +0 -14
- package/dist/commands/preview.d.ts +0 -17
- package/dist/commands/projects/list.d.ts +0 -13
- package/dist/commands/schema/delete.d.ts +0 -16
- package/dist/commands/schema/deploy.d.ts +0 -16
- package/dist/commands/schema/extract.d.ts +0 -15
- package/dist/commands/schema/list.d.ts +0 -15
- package/dist/commands/schema/validate.d.ts +0 -15
- package/dist/commands/telemetry/disable.d.ts +0 -8
- package/dist/commands/telemetry/enable.d.ts +0 -8
- package/dist/commands/telemetry/status.d.ts +0 -8
- package/dist/commands/tokens/add.d.ts +0 -19
- package/dist/commands/tokens/delete.d.ts +0 -17
- package/dist/commands/tokens/list.d.ts +0 -12
- package/dist/commands/undeploy.d.ts +0 -8
- package/dist/commands/users/invite.d.ts +0 -17
- package/dist/commands/users/list.d.ts +0 -16
- package/dist/commands/versions.d.ts +0 -6
- package/dist/config/createCliConfig.d.ts +0 -73
- package/dist/config/defineCliConfig.d.ts +0 -3
- package/dist/hooks/prerun/flushTelemetry.worker.d.ts +0 -2
- package/dist/hooks/prerun/setupTelemetry.d.ts +0 -2
- package/dist/index.d.ts +0 -6
- package/dist/index.js +0 -7
- package/dist/index.js.map +0 -1
- package/dist/prompts/init/nextjs.d.ts +0 -5
- package/dist/prompts/init/promptForTypescript.d.ts +0 -1
- package/dist/prompts/promptForDataset.d.ts +0 -17
- package/dist/prompts/promptForDatasetAclMode.d.ts +0 -9
- package/dist/prompts/promptForDatasetAliasName.d.ts +0 -4
- package/dist/prompts/promptForDatasetName.d.ts +0 -4
- package/dist/prompts/promptForMediaLibrary.d.ts +0 -15
- package/dist/prompts/selectDataset.d.ts +0 -3
- package/dist/prompts/selectMediaLibrary.d.ts +0 -5
- package/dist/server/devServer.d.ts +0 -24
- package/dist/server/gracefulServerDeath.d.ts +0 -3
- package/dist/server/previewServer.d.ts +0 -19
- package/dist/server/serverDebug.d.ts +0 -1
- package/dist/server/vite/plugin-sanity-basepath-redirect.d.ts +0 -2
- package/dist/server/vite/plugin-sanity-build-entries.d.ts +0 -9
- package/dist/server/vite/plugin-sanity-favicons.d.ts +0 -17
- package/dist/server/vite/plugin-sanity-runtime-rewrite.d.ts +0 -2
- package/dist/services/auth.d.ts +0 -2
- package/dist/services/backup.d.ts +0 -37
- package/dist/services/cors.d.ts +0 -23
- package/dist/services/datasetAliases.d.ts +0 -31
- package/dist/services/datasets.d.ts +0 -64
- package/dist/services/docs.d.ts +0 -15
- package/dist/services/getProjectFeatures.d.ts +0 -5
- package/dist/services/graphql.d.ts +0 -23
- package/dist/services/hooks.d.ts +0 -16
- package/dist/services/mcp.d.ts +0 -39
- package/dist/services/mediaLibraries.d.ts +0 -52
- package/dist/services/organizations.d.ts +0 -42
- package/dist/services/plans.d.ts +0 -2
- package/dist/services/projects.d.ts +0 -36
- package/dist/services/schemas.d.ts +0 -4
- package/dist/services/telemetry.d.ts +0 -2
- package/dist/services/tokens.d.ts +0 -43
- package/dist/services/user.d.ts +0 -15
- package/dist/services/userApplications.d.ts +0 -77
- package/dist/studioDependencies.d.ts +0 -16
- package/dist/studioDependencies.js.map +0 -1
- package/dist/telemetry/cli.telemetry.d.ts +0 -20
- package/dist/telemetry/store/cleanupOldTelemetryFiles.d.ts +0 -5
- package/dist/telemetry/store/cleanupOldTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/createTelemetryStore.d.ts +0 -39
- package/dist/telemetry/store/createTelemetryStore.js.map +0 -1
- package/dist/telemetry/store/createTraceId.d.ts +0 -10
- package/dist/telemetry/store/createTraceId.js.map +0 -1
- package/dist/telemetry/store/debug.d.ts +0 -5
- package/dist/telemetry/store/debug.js +0 -7
- package/dist/telemetry/store/debug.js.map +0 -1
- package/dist/telemetry/store/findTelemetryFiles.d.ts +0 -13
- package/dist/telemetry/store/findTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/flushTelemetryFiles.d.ts +0 -20
- package/dist/telemetry/store/flushTelemetryFiles.js.map +0 -1
- package/dist/telemetry/store/generateTelemetryFilePath.d.ts +0 -17
- package/dist/telemetry/store/generateTelemetryFilePath.js.map +0 -1
- package/dist/telemetry/store/getTelemetryBaseInfo.d.ts +0 -27
- package/dist/telemetry/store/getTelemetryBaseInfo.js +0 -34
- package/dist/telemetry/store/getTelemetryBaseInfo.js.map +0 -1
- package/dist/telemetry/store/logger.d.ts +0 -6
- package/dist/telemetry/store/logger.js.map +0 -1
- package/dist/telemetry/store/trace.d.ts +0 -6
- package/dist/telemetry/store/trace.js.map +0 -1
- package/dist/telemetry/utils/readNDJSON.d.ts +0 -10
- package/dist/telemetry/utils/readNDJSON.js +0 -18
- package/dist/telemetry/utils/readNDJSON.js.map +0 -1
- package/dist/threads/configClient.d.ts +0 -1
- package/dist/threads/configClient.js.map +0 -1
- package/dist/threads/registerBrowserEnv.d.ts +0 -1
- package/dist/threads/registerBrowserEnv.js.map +0 -1
- package/dist/threads/validateDocuments.d.ts +0 -45
- package/dist/threads/validateDocuments.js.map +0 -1
- package/dist/threads/validateSchema.d.ts +0 -35
- package/dist/threads/validateSchema.js.map +0 -1
- package/dist/types.d.ts +0 -49
- package/dist/typings/deepSortObject.d.js +0 -2
- package/dist/typings/deepSortObject.d.js.map +0 -1
- package/dist/util/absolutify.d.ts +0 -6
- package/dist/util/appId.d.ts +0 -18
- package/dist/util/canLaunchBrowser.d.ts +0 -1
- package/dist/util/cliClient.d.ts +0 -13
- package/dist/util/compareDependencyVersions.d.ts +0 -35
- package/dist/util/copy.d.ts +0 -5
- package/dist/util/copyDir.d.ts +0 -20
- package/dist/util/detectRuntime.d.ts +0 -8
- package/dist/util/determineIsApp.d.ts +0 -7
- package/dist/util/dirIsEmptyOrNonExistent.d.ts +0 -1
- package/dist/util/ensureTrailingSlash.d.ts +0 -9
- package/dist/util/errorMessages.d.ts +0 -4
- package/dist/util/extractDocumentsFromNdjsonOrTarball.d.ts +0 -6
- package/dist/util/findNdjsonEntry.d.ts +0 -7
- package/dist/util/findNdjsonEntry.js +0 -21
- package/dist/util/findNdjsonEntry.js.map +0 -1
- package/dist/util/formatSize.d.ts +0 -6
- package/dist/util/frameworkPort.d.ts +0 -12
- package/dist/util/fsUtils.d.ts +0 -2
- package/dist/util/getCliVersion.d.ts +0 -7
- package/dist/util/getErrorMessage.d.ts +0 -8
- package/dist/util/getLocalPackageVersion.d.ts +0 -9
- package/dist/util/getProjectDefaults.d.ts +0 -11
- package/dist/util/getSharedServerConfig.d.ts +0 -30
- package/dist/util/getWorkspace.d.ts +0 -3
- package/dist/util/humanFileSize.d.ts +0 -1
- package/dist/util/importStudioConfig.d.ts +0 -1
- package/dist/util/importStudioConfig.js +0 -43
- package/dist/util/importStudioConfig.js.map +0 -1
- package/dist/util/isPathDirName.d.ts +0 -1
- package/dist/util/isSanityDocumentish.d.ts +0 -19
- package/dist/util/isStaging.d.ts +0 -7
- package/dist/util/isStaging.js +0 -10
- package/dist/util/isStaging.js.map +0 -1
- package/dist/util/loadEnv.d.ts +0 -1
- package/dist/util/moduleFormatUtils.d.ts +0 -3
- package/dist/util/packageManager/installPackages.d.ts +0 -18
- package/dist/util/packageManager/packageManagerChoice.d.ts +0 -31
- package/dist/util/packageManager/upgradePackages.d.ts +0 -17
- package/dist/util/parseArguments.d.ts +0 -35
- package/dist/util/pluralize.d.ts +0 -8
- package/dist/util/readModuleVersion.d.ts +0 -8
- package/dist/util/readModuleVersion.js +0 -15
- package/dist/util/readModuleVersion.js.map +0 -1
- package/dist/util/readPackageJson.d.ts +0 -31
- package/dist/util/readPackageJson.js +0 -42
- package/dist/util/readPackageJson.js.map +0 -1
- package/dist/util/readPackageManifest.d.ts +0 -21
- package/dist/util/readPackageManifest.js +0 -46
- package/dist/util/readPackageManifest.js.map +0 -1
- package/dist/util/readdirRecursive.d.ts +0 -5
- package/dist/util/resolveLatestVersions.d.ts +0 -7
- package/dist/util/toInt.d.ts +0 -1
- package/dist/util/trimHashFromVersion.d.ts +0 -5
- package/dist/util/uniqBy.d.ts +0 -1
- package/dist/util/uniqBy.js +0 -14
- package/dist/util/uniqBy.js.map +0 -1
- package/dist/util/validation/validateDocumentsUtils.d.ts +0 -12
- package/dist/util/warnAboutMissingAppId.d.ts +0 -7
- package/dist/util/workerChannels.d.ts +0 -59
- package/dist/util/workerChannels.js +0 -172
- package/dist/util/workerChannels.js.map +0 -1
- /package/dist/actions/{telemetry → doctor}/types.js +0 -0
- /package/dist/{studioDependencies.js → actions/init/studioDependencies.js} +0 -0
- /package/dist/{telemetry/store → util/telemetry}/createTraceId.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/actions/manifest/extractManifest.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/manifest/extractManifest.ts"],"sourcesContent":["import {findProjectRoot, getTimer, studioWorkerTask} from '@sanity/cli-core'\nimport {spinner} from '@sanity/cli-core/ux'\n\nimport {type ExtractSchemaWorkerError} from '../schema/types.js'\nimport {SchemaExtractionError} from '../schema/utils/SchemaExtractionError.js'\nimport {manifestDebug} from './debug.js'\nimport {type CreateWorkspaceManifest, type ExtractManifestWorkerData} from './types'\nimport {writeManifestFile} from './writeManifestFile.js'\n\nconst CREATE_TIMER = 'create-manifest'\n\ninterface ExtractManifestWorkerResult {\n type: 'success'\n workspaceManifests: CreateWorkspaceManifest[]\n}\n\ntype ExtractManifestWorkerMessage = ExtractManifestWorkerResult | ExtractSchemaWorkerError\n\nexport async function extractManifest(outPath: string): Promise<void> {\n const projectRoot = await findProjectRoot(process.cwd())\n\n manifestDebug('Project root %o', projectRoot)\n\n const workDir = projectRoot.directory\n const configPath = projectRoot.path\n\n const timer = getTimer()\n timer.start(CREATE_TIMER)\n const spin = spinner('Extracting manifest').start()\n\n try {\n const result = await studioWorkerTask<ExtractManifestWorkerMessage>(\n new URL('extractManifest.worker.js', import.meta.url),\n {\n name: 'extractManifest',\n studioRootPath: workDir,\n workerData: {configPath, workDir} satisfies ExtractManifestWorkerData,\n },\n )\n\n manifestDebug('Result %o', result)\n\n if (result.type === 'error') {\n throw new SchemaExtractionError(result.error, result.validation)\n }\n\n await writeManifestFile({\n outPath,\n workDir,\n workspaceManifests: result.workspaceManifests,\n })\n\n const manifestDuration = timer.end(CREATE_TIMER)\n\n spin.succeed(`Extracted manifest (${manifestDuration.toFixed(0)}ms)`)\n } catch (err) {\n manifestDebug('Error extracting manifest', err)\n spin.fail()\n\n throw err\n }\n}\n"],"names":["findProjectRoot","getTimer","studioWorkerTask","spinner","SchemaExtractionError","manifestDebug","writeManifestFile","CREATE_TIMER","extractManifest","outPath","projectRoot","process","cwd","workDir","directory","configPath","path","timer","start","spin","result","URL","url","name","studioRootPath","workerData","type","error","validation","workspaceManifests","manifestDuration","end","succeed","toFixed","err","fail"],"mappings":"AAAA,SAAQA,eAAe,EAAEC,QAAQ,EAAEC,gBAAgB,QAAO,mBAAkB;AAC5E,SAAQC,OAAO,QAAO,sBAAqB;AAG3C,SAAQC,qBAAqB,QAAO,2CAA0C;AAC9E,SAAQC,aAAa,QAAO,aAAY;AAExC,SAAQC,iBAAiB,QAAO,yBAAwB;AAExD,MAAMC,eAAe;AASrB,OAAO,eAAeC,gBAAgBC,OAAe;IACnD,MAAMC,cAAc,MAAMV,gBAAgBW,QAAQC,GAAG;IAErDP,cAAc,mBAAmBK;IAEjC,MAAMG,UAAUH,YAAYI,SAAS;IACrC,MAAMC,aAAaL,YAAYM,IAAI;IAEnC,MAAMC,QAAQhB;IACdgB,MAAMC,KAAK,CAACX;IACZ,MAAMY,OAAOhB,QAAQ,uBAAuBe,KAAK;IAEjD,IAAI;QACF,MAAME,SAAS,MAAMlB,iBACnB,IAAImB,IAAI,6BAA6B,YAAYC,GAAG,GACpD;YACEC,MAAM;YACNC,gBAAgBX;YAChBY,YAAY;gBAACV;gBAAYF;YAAO;QAClC;QAGFR,cAAc,aAAae;QAE3B,IAAIA,OAAOM,IAAI,KAAK,SAAS;YAC3B,MAAM,IAAItB,sBAAsBgB,OAAOO,KAAK,EAAEP,OAAOQ,UAAU;QACjE;QAEA,MAAMtB,kBAAkB;YACtBG;YACAI;YACAgB,oBAAoBT,OAAOS,kBAAkB;QAC/C;QAEA,MAAMC,mBAAmBb,MAAMc,GAAG,CAACxB;QAEnCY,KAAKa,OAAO,CAAC,CAAC,oBAAoB,EAAEF,iBAAiBG,OAAO,CAAC,GAAG,GAAG,CAAC;IACtE,EAAE,OAAOC,KAAK;QACZ7B,cAAc,6BAA6B6B;QAC3Cf,KAAKgB,IAAI;QAET,MAAMD;IACR;AACF"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { isMainThread, parentPort, workerData } from 'node:worker_threads';
|
|
2
|
+
import { getStudioWorkspaces, subdebug } from '@sanity/cli-core';
|
|
3
|
+
import { extractValidationFromSchemaError } from '../schema/utils/extractValidationFromSchemaError.js';
|
|
4
|
+
import { extractWorkspaceManifest } from './extractWorkspaceManifest.js';
|
|
5
|
+
import { extractManifestWorkerData } from './types.js';
|
|
6
|
+
if (isMainThread || !parentPort) {
|
|
7
|
+
throw new Error('Should only be run in a worker!');
|
|
8
|
+
}
|
|
9
|
+
const debug = subdebug('extractManifest.worker');
|
|
10
|
+
const { configPath, workDir } = extractManifestWorkerData.parse(workerData);
|
|
11
|
+
try {
|
|
12
|
+
debug('Extracting workspace manifests from config path %s', configPath);
|
|
13
|
+
const workspaces = await getStudioWorkspaces(configPath);
|
|
14
|
+
debug('Workspaces %o', workspaces);
|
|
15
|
+
const workspaceManifests = await extractWorkspaceManifest(workspaces, workDir);
|
|
16
|
+
parentPort.postMessage({
|
|
17
|
+
type: 'success',
|
|
18
|
+
workspaceManifests
|
|
19
|
+
});
|
|
20
|
+
} catch (error) {
|
|
21
|
+
debug('Error extracting workspace manifests', error);
|
|
22
|
+
const validation = await extractValidationFromSchemaError(error, workDir);
|
|
23
|
+
parentPort.postMessage({
|
|
24
|
+
error: error instanceof Error ? error.message : String(error),
|
|
25
|
+
type: 'error',
|
|
26
|
+
validation
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=extractManifest.worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/manifest/extractManifest.worker.ts"],"sourcesContent":["import {isMainThread, parentPort, workerData} from 'node:worker_threads'\n\nimport {getStudioWorkspaces, subdebug} from '@sanity/cli-core'\n\nimport {extractValidationFromSchemaError} from '../schema/utils/extractValidationFromSchemaError.js'\nimport {extractWorkspaceManifest} from './extractWorkspaceManifest.js'\nimport {extractManifestWorkerData} from './types.js'\n\nif (isMainThread || !parentPort) {\n throw new Error('Should only be run in a worker!')\n}\n\nconst debug = subdebug('extractManifest.worker')\n\nconst {configPath, workDir} = extractManifestWorkerData.parse(workerData)\n\ntry {\n debug('Extracting workspace manifests from config path %s', configPath)\n const workspaces = await getStudioWorkspaces(configPath)\n debug('Workspaces %o', workspaces)\n const workspaceManifests = await extractWorkspaceManifest(workspaces, workDir)\n\n parentPort.postMessage({\n type: 'success',\n workspaceManifests,\n })\n} catch (error) {\n debug('Error extracting workspace manifests', error)\n const validation = await extractValidationFromSchemaError(error, workDir)\n parentPort.postMessage({\n error: error instanceof Error ? error.message : String(error),\n type: 'error',\n validation,\n })\n}\n"],"names":["isMainThread","parentPort","workerData","getStudioWorkspaces","subdebug","extractValidationFromSchemaError","extractWorkspaceManifest","extractManifestWorkerData","Error","debug","configPath","workDir","parse","workspaces","workspaceManifests","postMessage","type","error","validation","message","String"],"mappings":"AAAA,SAAQA,YAAY,EAAEC,UAAU,EAAEC,UAAU,QAAO,sBAAqB;AAExE,SAAQC,mBAAmB,EAAEC,QAAQ,QAAO,mBAAkB;AAE9D,SAAQC,gCAAgC,QAAO,sDAAqD;AACpG,SAAQC,wBAAwB,QAAO,gCAA+B;AACtE,SAAQC,yBAAyB,QAAO,aAAY;AAEpD,IAAIP,gBAAgB,CAACC,YAAY;IAC/B,MAAM,IAAIO,MAAM;AAClB;AAEA,MAAMC,QAAQL,SAAS;AAEvB,MAAM,EAACM,UAAU,EAAEC,OAAO,EAAC,GAAGJ,0BAA0BK,KAAK,CAACV;AAE9D,IAAI;IACFO,MAAM,sDAAsDC;IAC5D,MAAMG,aAAa,MAAMV,oBAAoBO;IAC7CD,MAAM,iBAAiBI;IACvB,MAAMC,qBAAqB,MAAMR,yBAAyBO,YAAYF;IAEtEV,WAAWc,WAAW,CAAC;QACrBC,MAAM;QACNF;IACF;AACF,EAAE,OAAOG,OAAO;IACdR,MAAM,wCAAwCQ;IAC9C,MAAMC,aAAa,MAAMb,iCAAiCY,OAAON;IACjEV,WAAWc,WAAW,CAAC;QACrBE,OAAOA,iBAAiBT,QAAQS,MAAME,OAAO,GAAGC,OAAOH;QACvDD,MAAM;QACNE;IACF;AACF"}
|
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const MAX_CUSTOM_PROPERTY_DEPTH = 5;
|
|
11
|
-
export function extractWorkspaceManifest(workspaces) {
|
|
12
|
-
return workspaces.map((workspace)=>{
|
|
13
|
-
const serializedSchema = extractManifestSchemaTypes(workspace.schema);
|
|
14
|
-
const serializedTools = extractManifestTools(workspace.tools);
|
|
15
|
-
return {
|
|
16
|
-
basePath: workspace.basePath,
|
|
17
|
-
dataset: workspace.dataset,
|
|
18
|
-
icon: resolveIcon({
|
|
1
|
+
import { resolveLocalPackage } from '@sanity/cli-core';
|
|
2
|
+
import { resolveIcon } from './iconResolver.js';
|
|
3
|
+
import { transformType } from './schemaTypeTransformer.js';
|
|
4
|
+
/**
|
|
5
|
+
* Extracts manifest data from an array of workspaces
|
|
6
|
+
*/ export function extractWorkspaceManifest(workspaces, workDir) {
|
|
7
|
+
return Promise.all(workspaces.map(async (workspace)=>{
|
|
8
|
+
const [icon, serializedSchema, serializedTools] = await Promise.all([
|
|
9
|
+
resolveIcon({
|
|
19
10
|
icon: workspace.icon,
|
|
20
11
|
subtitle: workspace.subtitle,
|
|
21
|
-
title: workspace.title
|
|
12
|
+
title: workspace.title,
|
|
13
|
+
workDir
|
|
22
14
|
}),
|
|
15
|
+
extractManifestSchemaTypes(workspace.schema, workDir),
|
|
16
|
+
extractManifestTools(workspace.tools, workDir)
|
|
17
|
+
]);
|
|
18
|
+
return {
|
|
19
|
+
basePath: workspace.basePath,
|
|
20
|
+
dataset: workspace.dataset,
|
|
21
|
+
icon,
|
|
23
22
|
mediaLibrary: workspace.mediaLibrary,
|
|
24
23
|
name: workspace.name,
|
|
25
24
|
projectId: workspace.projectId,
|
|
@@ -28,379 +27,39 @@ export function extractWorkspaceManifest(workspaces) {
|
|
|
28
27
|
title: workspace.title,
|
|
29
28
|
tools: serializedTools
|
|
30
29
|
};
|
|
31
|
-
});
|
|
30
|
+
}));
|
|
32
31
|
}
|
|
33
32
|
/**
|
|
34
33
|
* Extracts all serializable properties from userland schema types,
|
|
35
|
-
* so they best-effort can be used as definitions for Schema.compile
|
|
36
|
-
|
|
34
|
+
* so they best-effort can be used as definitions for Schema.compile.
|
|
35
|
+
*
|
|
36
|
+
* @internal
|
|
37
|
+
*/ export async function extractManifestSchemaTypes(schema, workDir) {
|
|
37
38
|
const typeNames = schema.getTypeNames();
|
|
38
39
|
const context = {
|
|
39
40
|
schema
|
|
40
41
|
};
|
|
42
|
+
const { createSchema } = await resolveLocalPackage('sanity', workDir);
|
|
41
43
|
const studioDefaultTypeNames = createSchema({
|
|
42
44
|
name: 'default',
|
|
43
45
|
types: []
|
|
44
46
|
}).getTypeNames();
|
|
45
47
|
return typeNames.filter((typeName)=>!studioDefaultTypeNames.includes(typeName)).map((typeName)=>schema.get(typeName)).filter((type)=>type !== undefined).map((type)=>transformType(type, context));
|
|
46
48
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
const crossDatasetRefProps = isCrossDatasetReference(type) ? transformCrossDatasetReference(type) : {};
|
|
51
|
-
const globalRefProps = isGlobalDocumentReference(type) ? transformGlobalDocumentReference(type) : {};
|
|
52
|
-
const objectFields = type.jsonType === 'object' && type.type && isCustomized(type) ? {
|
|
53
|
-
fields: getCustomFields(type).map((objectField)=>transformField(objectField, context))
|
|
54
|
-
} : {};
|
|
55
|
-
return {
|
|
56
|
-
...retainCustomTypeProps(type),
|
|
57
|
-
...transformValidation(type.validation),
|
|
58
|
-
...ensureString('description', type.description),
|
|
59
|
-
...objectFields,
|
|
60
|
-
...arrayProps,
|
|
61
|
-
...referenceProps,
|
|
62
|
-
...crossDatasetRefProps,
|
|
63
|
-
...globalRefProps,
|
|
64
|
-
...ensureConditional('readOnly', type.readOnly),
|
|
65
|
-
...ensureConditional('hidden', type.hidden),
|
|
66
|
-
...transformFieldsets(type),
|
|
67
|
-
// fieldset prop gets instrumented via getCustomFields
|
|
68
|
-
...ensureString('fieldset', type.fieldset),
|
|
69
|
-
...transformBlockType(type, context)
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
function transformFieldsets(type) {
|
|
73
|
-
if (type.jsonType !== 'object') {
|
|
74
|
-
return {};
|
|
75
|
-
}
|
|
76
|
-
const fieldsets = type.fieldsets?.filter((fs)=>!fs.single).map((fs)=>{
|
|
77
|
-
const options = isRecord(fs.options) ? {
|
|
78
|
-
options: retainSerializableProps(fs.options)
|
|
79
|
-
} : {};
|
|
80
|
-
return {
|
|
81
|
-
name: fs.name,
|
|
82
|
-
...ensureCustomTitle(fs.name, fs.title),
|
|
83
|
-
...ensureString('description', fs.description),
|
|
84
|
-
...ensureConditional('readOnly', fs.readOnly),
|
|
85
|
-
...ensureConditional('hidden', fs.hidden),
|
|
86
|
-
...options
|
|
87
|
-
};
|
|
88
|
-
});
|
|
89
|
-
return fieldsets?.length ? {
|
|
90
|
-
fieldsets
|
|
91
|
-
} : {};
|
|
92
|
-
}
|
|
93
|
-
function transformType(type, context) {
|
|
94
|
-
const typeName = type.type ? type.type.name : type.jsonType;
|
|
95
|
-
return {
|
|
96
|
-
...transformCommonTypeFields(type, typeName, context),
|
|
97
|
-
name: type.name,
|
|
98
|
-
type: typeName,
|
|
99
|
-
...ensureCustomTitle(type.name, type.title)
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
function retainCustomTypeProps(type) {
|
|
103
|
-
const manuallySerializedFields = new Set([
|
|
104
|
-
'__experimental_actions',
|
|
105
|
-
'__experimental_formPreviewTitle',
|
|
106
|
-
'__experimental_omnisearch_visibility',
|
|
107
|
-
'__experimental_search',
|
|
108
|
-
'components',
|
|
109
|
-
'description',
|
|
110
|
-
'fields',
|
|
111
|
-
'fieldsets',
|
|
112
|
-
//only exists on fields
|
|
113
|
-
'group',
|
|
114
|
-
'groups',
|
|
115
|
-
'hidden',
|
|
116
|
-
'icon',
|
|
117
|
-
'jsonType',
|
|
118
|
-
//explicitly added
|
|
119
|
-
'name',
|
|
120
|
-
'of',
|
|
121
|
-
'orderings',
|
|
122
|
-
'preview',
|
|
123
|
-
'readOnly',
|
|
124
|
-
'title',
|
|
125
|
-
'to',
|
|
126
|
-
// not serialized
|
|
127
|
-
'type',
|
|
128
|
-
'validation'
|
|
129
|
-
]);
|
|
130
|
-
const typeWithoutManuallyHandledFields = Object.fromEntries(Object.entries(type).filter(([key])=>!manuallySerializedFields.has(key)));
|
|
131
|
-
return retainSerializableProps(typeWithoutManuallyHandledFields);
|
|
132
|
-
}
|
|
133
|
-
function retainSerializableProps(maybeSerializable, depth = 0) {
|
|
134
|
-
if (depth > MAX_CUSTOM_PROPERTY_DEPTH) {
|
|
135
|
-
return undefined;
|
|
136
|
-
}
|
|
137
|
-
if (!isDefined(maybeSerializable)) {
|
|
138
|
-
return undefined;
|
|
139
|
-
}
|
|
140
|
-
if (isPrimitive(maybeSerializable)) {
|
|
141
|
-
// cull empty strings
|
|
142
|
-
if (maybeSerializable === '') {
|
|
143
|
-
return undefined;
|
|
144
|
-
}
|
|
145
|
-
return maybeSerializable;
|
|
146
|
-
}
|
|
147
|
-
// url-schemes ect..
|
|
148
|
-
if (maybeSerializable instanceof RegExp) {
|
|
149
|
-
return maybeSerializable.toString();
|
|
150
|
-
}
|
|
151
|
-
if (Array.isArray(maybeSerializable)) {
|
|
152
|
-
const arrayItems = maybeSerializable.map((item)=>retainSerializableProps(item, depth + 1)).filter((item)=>isDefined(item));
|
|
153
|
-
return arrayItems.length > 0 ? arrayItems : undefined;
|
|
154
|
-
}
|
|
155
|
-
if (isRecord(maybeSerializable)) {
|
|
156
|
-
const serializableEntries = Object.entries(maybeSerializable).map(([key, value])=>{
|
|
157
|
-
return [
|
|
158
|
-
key,
|
|
159
|
-
retainSerializableProps(value, depth + 1)
|
|
160
|
-
];
|
|
161
|
-
}).filter(([, value])=>isDefined(value));
|
|
162
|
-
return serializableEntries.length > 0 ? Object.fromEntries(serializableEntries) : undefined;
|
|
163
|
-
}
|
|
164
|
-
return undefined;
|
|
165
|
-
}
|
|
166
|
-
function transformField(field, context) {
|
|
167
|
-
const fieldType = field.type;
|
|
168
|
-
const typeName = getDefinedTypeName(fieldType) ?? fieldType.name;
|
|
169
|
-
return {
|
|
170
|
-
...transformCommonTypeFields(fieldType, typeName, context),
|
|
171
|
-
name: field.name,
|
|
172
|
-
type: typeName,
|
|
173
|
-
...ensureCustomTitle(field.name, fieldType.title),
|
|
174
|
-
// this prop gets added synthetically via getCustomFields
|
|
175
|
-
...ensureString('fieldset', field.fieldset)
|
|
176
|
-
};
|
|
177
|
-
}
|
|
178
|
-
function transformArrayMember(arrayMember, context) {
|
|
179
|
-
return {
|
|
180
|
-
of: arrayMember.of.map((type)=>{
|
|
181
|
-
const typeName = getDefinedTypeName(type) ?? type.name;
|
|
182
|
-
return {
|
|
183
|
-
...transformCommonTypeFields(type, typeName, context),
|
|
184
|
-
type: typeName,
|
|
185
|
-
...typeName === type.name ? {} : {
|
|
186
|
-
name: type.name
|
|
187
|
-
},
|
|
188
|
-
...ensureCustomTitle(type.name, type.title)
|
|
189
|
-
};
|
|
190
|
-
})
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
|
-
function transformReference(reference) {
|
|
194
|
-
return {
|
|
195
|
-
to: (reference.to ?? []).map((type)=>{
|
|
196
|
-
return {
|
|
197
|
-
...retainCustomTypeProps(type),
|
|
198
|
-
type: type.name
|
|
199
|
-
};
|
|
200
|
-
})
|
|
201
|
-
};
|
|
202
|
-
}
|
|
203
|
-
function transformCrossDatasetReference(reference) {
|
|
204
|
-
return {
|
|
205
|
-
to: (reference.to ?? []).map((crossDataset)=>{
|
|
206
|
-
const preview = crossDataset.preview?.select ? {
|
|
207
|
-
preview: {
|
|
208
|
-
select: crossDataset.preview.select
|
|
209
|
-
}
|
|
210
|
-
} : {};
|
|
211
|
-
return {
|
|
212
|
-
type: crossDataset.type,
|
|
213
|
-
...ensureCustomTitle(crossDataset.type, crossDataset.title),
|
|
214
|
-
...preview
|
|
215
|
-
};
|
|
216
|
-
})
|
|
217
|
-
};
|
|
218
|
-
}
|
|
219
|
-
function transformGlobalDocumentReference(reference) {
|
|
220
|
-
return {
|
|
221
|
-
to: (reference.to ?? []).map((crossDataset)=>{
|
|
222
|
-
const preview = crossDataset.preview?.select ? {
|
|
223
|
-
preview: {
|
|
224
|
-
select: crossDataset.preview.select
|
|
225
|
-
}
|
|
226
|
-
} : {};
|
|
227
|
-
return {
|
|
228
|
-
type: crossDataset.type,
|
|
229
|
-
...ensureCustomTitle(crossDataset.type, crossDataset.title),
|
|
230
|
-
...preview
|
|
231
|
-
};
|
|
232
|
-
})
|
|
233
|
-
};
|
|
234
|
-
}
|
|
235
|
-
const transformTypeValidationRule = (rule)=>{
|
|
236
|
-
return {
|
|
237
|
-
...rule,
|
|
238
|
-
constraint: 'constraint' in rule && (typeof rule.constraint === 'string' ? rule.constraint.toLowerCase() : retainSerializableProps(rule.constraint))
|
|
239
|
-
};
|
|
240
|
-
};
|
|
241
|
-
const validationRuleTransformers = {
|
|
242
|
-
type: transformTypeValidationRule
|
|
243
|
-
};
|
|
244
|
-
function transformValidation(validation) {
|
|
245
|
-
const validationArray = (Array.isArray(validation) ? validation : [
|
|
246
|
-
validation
|
|
247
|
-
]).filter((value)=>typeof value === 'object' && '_type' in value);
|
|
248
|
-
// we dont want type in the output as that is implicitly given by the typedef itself an will only bloat the payload
|
|
249
|
-
const disallowedFlags = new Set([
|
|
250
|
-
'type'
|
|
251
|
-
]);
|
|
252
|
-
// Validation rules that refer to other fields use symbols, which cannot be serialized. It would
|
|
253
|
-
// be possible to transform these to a serializable type, but we haven't implemented that for now.
|
|
254
|
-
const disallowedConstraintTypes = new Set([
|
|
255
|
-
ConcreteRuleClass.FIELD_REF
|
|
256
|
-
]);
|
|
257
|
-
const serializedValidation = validationArray.map(({ _level, _message, _rules })=>{
|
|
258
|
-
const message = typeof _message === 'string' ? {
|
|
259
|
-
message: _message
|
|
260
|
-
} : {};
|
|
261
|
-
const serializedRules = _rules.filter((rule)=>{
|
|
262
|
-
if (!('constraint' in rule)) {
|
|
263
|
-
return false;
|
|
264
|
-
}
|
|
265
|
-
const { constraint, flag } = rule;
|
|
266
|
-
if (disallowedFlags.has(flag)) {
|
|
267
|
-
return false;
|
|
268
|
-
}
|
|
269
|
-
return !(typeof constraint === 'object' && 'type' in constraint && disallowedConstraintTypes.has(constraint.type));
|
|
270
|
-
}).map((rule)=>{
|
|
271
|
-
const transformer = validationRuleTransformers[rule.flag] ?? ((spec)=>retainSerializableProps(spec));
|
|
272
|
-
const transformedRule = transformer(rule);
|
|
273
|
-
if (!transformedRule) {
|
|
274
|
-
return;
|
|
275
|
-
}
|
|
276
|
-
return transformedRule;
|
|
277
|
-
}).filter((rule)=>rule !== undefined);
|
|
278
|
-
return {
|
|
279
|
-
level: _level,
|
|
280
|
-
rules: serializedRules,
|
|
281
|
-
...message
|
|
282
|
-
};
|
|
283
|
-
}).filter((group)=>group.rules.length > 0);
|
|
284
|
-
return serializedValidation.length > 0 ? {
|
|
285
|
-
validation: serializedValidation
|
|
286
|
-
} : {};
|
|
287
|
-
}
|
|
288
|
-
function ensureCustomTitle(typeName, value) {
|
|
289
|
-
const titleObject = ensureString('title', value);
|
|
290
|
-
const defaultTitle = startCase(typeName);
|
|
291
|
-
// omit title if its the same as default, to reduce payload
|
|
292
|
-
if (titleObject.title === defaultTitle) {
|
|
293
|
-
return {};
|
|
294
|
-
}
|
|
295
|
-
return titleObject;
|
|
296
|
-
}
|
|
297
|
-
function ensureString(key, value) {
|
|
298
|
-
if (typeof value === 'string') {
|
|
299
|
-
return {
|
|
300
|
-
[key]: value
|
|
301
|
-
};
|
|
302
|
-
}
|
|
303
|
-
return {};
|
|
304
|
-
}
|
|
305
|
-
function ensureConditional(key, value) {
|
|
306
|
-
if (typeof value === 'boolean') {
|
|
307
|
-
return {
|
|
308
|
-
[key]: value
|
|
309
|
-
};
|
|
310
|
-
}
|
|
311
|
-
if (typeof value === 'function') {
|
|
312
|
-
return {
|
|
313
|
-
[key]: 'conditional'
|
|
314
|
-
};
|
|
315
|
-
}
|
|
316
|
-
return {};
|
|
317
|
-
}
|
|
318
|
-
function transformBlockType(blockType, context) {
|
|
319
|
-
if (blockType.jsonType !== 'object' || !isType(blockType, 'block')) {
|
|
320
|
-
return {};
|
|
321
|
-
}
|
|
322
|
-
const childrenField = blockType.fields?.find((field)=>field.name === 'children');
|
|
323
|
-
if (!childrenField) {
|
|
324
|
-
return {};
|
|
325
|
-
}
|
|
326
|
-
const ofType = childrenField.type.of;
|
|
327
|
-
if (!ofType) {
|
|
328
|
-
return {};
|
|
329
|
-
}
|
|
330
|
-
const spanType = ofType.find((memberType)=>memberType.name === 'span');
|
|
331
|
-
if (!spanType) {
|
|
332
|
-
return {};
|
|
333
|
-
}
|
|
334
|
-
const inlineObjectTypes = ofType.filter((memberType)=>memberType.name !== 'span') || [];
|
|
335
|
-
return {
|
|
336
|
-
lists: resolveEnabledListItems(blockType),
|
|
337
|
-
marks: {
|
|
338
|
-
annotations: spanType.annotations.map((t)=>transformType(t, context)),
|
|
339
|
-
decorators: resolveEnabledDecorators(spanType)
|
|
340
|
-
},
|
|
341
|
-
of: inlineObjectTypes.map((t)=>transformType(t, context)),
|
|
342
|
-
styles: resolveEnabledStyles(blockType)
|
|
343
|
-
};
|
|
344
|
-
}
|
|
345
|
-
function resolveEnabledStyles(blockType) {
|
|
346
|
-
const styleField = blockType.fields?.find((btField)=>btField.name === 'style');
|
|
347
|
-
return resolveTitleValueArray(styleField?.type?.options?.list);
|
|
348
|
-
}
|
|
349
|
-
function resolveEnabledDecorators(spanType) {
|
|
350
|
-
return 'decorators' in spanType ? resolveTitleValueArray(spanType.decorators) : undefined;
|
|
351
|
-
}
|
|
352
|
-
function resolveEnabledListItems(blockType) {
|
|
353
|
-
const listField = blockType.fields?.find((btField)=>btField.name === 'listItem');
|
|
354
|
-
return resolveTitleValueArray(listField?.type?.options?.list);
|
|
355
|
-
}
|
|
356
|
-
function resolveTitleValueArray(possibleArray) {
|
|
357
|
-
if (!possibleArray || !Array.isArray(possibleArray)) {
|
|
358
|
-
return undefined;
|
|
359
|
-
}
|
|
360
|
-
const titledValues = possibleArray.filter((d)=>isRecord(d) && !!d.value && isString(d.value)).map((item)=>{
|
|
361
|
-
return {
|
|
362
|
-
value: item.value,
|
|
363
|
-
...ensureString('title', item.title)
|
|
364
|
-
};
|
|
365
|
-
});
|
|
366
|
-
if (!titledValues?.length) {
|
|
367
|
-
return undefined;
|
|
368
|
-
}
|
|
369
|
-
return titledValues;
|
|
370
|
-
}
|
|
371
|
-
const extractManifestTools = (tools)=>tools.map((tool)=>{
|
|
49
|
+
/**
|
|
50
|
+
* Extracts tool information from workspace tools
|
|
51
|
+
*/ const extractManifestTools = async (tools, workDir)=>Promise.all(tools.map(async (tool)=>{
|
|
372
52
|
const { __internalApplicationType: type, icon, name, title } = tool;
|
|
373
53
|
return {
|
|
374
|
-
icon: resolveIcon({
|
|
54
|
+
icon: await resolveIcon({
|
|
375
55
|
icon: icon,
|
|
376
|
-
title
|
|
56
|
+
title,
|
|
57
|
+
workDir
|
|
377
58
|
}),
|
|
378
59
|
name,
|
|
379
60
|
title,
|
|
380
61
|
type: type || null
|
|
381
62
|
};
|
|
382
|
-
});
|
|
383
|
-
const resolveIcon = (props)=>{
|
|
384
|
-
const sheet = new ServerStyleSheet();
|
|
385
|
-
try {
|
|
386
|
-
/**
|
|
387
|
-
* You must render the element first so
|
|
388
|
-
* the style-sheet above can be populated
|
|
389
|
-
*/ const element = renderToString(sheet.collectStyles(/*#__PURE__*/ _jsx(SchemaIcon, {
|
|
390
|
-
...props
|
|
391
|
-
})));
|
|
392
|
-
const styleTags = sheet.getStyleTags();
|
|
393
|
-
/**
|
|
394
|
-
* We can then create a single string
|
|
395
|
-
* of HTML combining our styles and element
|
|
396
|
-
* before purifying below.
|
|
397
|
-
*/ const html = `${styleTags}${element}`.trim();
|
|
398
|
-
return DOMPurify.sanitize(html, config);
|
|
399
|
-
} catch {
|
|
400
|
-
return null;
|
|
401
|
-
} finally{
|
|
402
|
-
sheet.seal();
|
|
403
|
-
}
|
|
404
|
-
};
|
|
63
|
+
}));
|
|
405
64
|
|
|
406
65
|
//# sourceMappingURL=extractWorkspaceManifest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/actions/manifest/extractWorkspaceManifest.tsx"],"sourcesContent":["import {\n type ArraySchemaType,\n type BlockDefinition,\n type BooleanSchemaType,\n type CrossDatasetReferenceSchemaType,\n type FileSchemaType,\n type GlobalDocumentReferenceSchemaType,\n type MultiFieldSet,\n type NumberSchemaType,\n type ObjectField,\n type ObjectSchemaType,\n type ReferenceSchemaType,\n type Rule,\n type RuleSpec,\n type Schema,\n type SchemaType,\n type SchemaValidationValue,\n type SpanSchemaType,\n type StringSchemaType,\n} from '@sanity/types'\nimport DOMPurify from 'isomorphic-dompurify'\nimport startCase from 'lodash-es/startCase.js'\nimport {renderToString} from 'react-dom/server'\nimport {ConcreteRuleClass, createSchema, type Workspace} from 'sanity'\nimport {ServerStyleSheet} from 'styled-components'\n\nimport {config} from './purifyConfig.js'\nimport {SchemaIcon, type SchemaIconProps} from './SchemaIcon.js'\nimport {\n getCustomFields,\n getDefinedTypeName,\n isCrossDatasetReference,\n isCustomized,\n isDefined,\n isGlobalDocumentReference,\n isPrimitive,\n isRecord,\n isReference,\n isString,\n isType,\n} from './schemaTypeHelpers.js'\nimport {\n type CreateWorkspaceManifest,\n type ManifestField,\n type ManifestFieldset,\n type ManifestSchemaType,\n type ManifestSerializable,\n type ManifestTitledValue,\n type ManifestTool,\n type ManifestValidationGroup,\n type ManifestValidationRule,\n} from './types'\n\ninterface Context {\n schema: Schema\n}\n\ntype SchemaTypeKey =\n | 'group' // we strip this from fields\n | keyof ArraySchemaType\n | keyof BlockDefinition\n | keyof BooleanSchemaType\n | keyof FileSchemaType\n | keyof NumberSchemaType\n | keyof ObjectSchemaType\n | keyof ReferenceSchemaType\n | keyof StringSchemaType\n\ntype Validation = Record<string, never> | {validation: ManifestValidationGroup[]}\ntype ObjectFields = Record<string, never> | {fields: ManifestField[]}\ntype SerializableProp = ManifestSerializable | ManifestSerializable[] | undefined\ntype ManifestValidationFlag = ManifestValidationRule['flag']\ntype ValidationRuleTransformer = (rule: RuleSpec) => ManifestValidationRule | undefined\n\nconst MAX_CUSTOM_PROPERTY_DEPTH = 5\n\nexport function extractWorkspaceManifest(workspaces: Workspace[]): CreateWorkspaceManifest[] {\n return workspaces.map((workspace) => {\n const serializedSchema = extractManifestSchemaTypes(workspace.schema as Schema)\n const serializedTools = extractManifestTools(workspace.tools)\n\n return {\n basePath: workspace.basePath,\n dataset: workspace.dataset,\n icon: resolveIcon({\n icon: workspace.icon,\n subtitle: workspace.subtitle,\n title: workspace.title,\n }),\n mediaLibrary: workspace.mediaLibrary,\n name: workspace.name,\n projectId: workspace.projectId,\n schema: serializedSchema,\n subtitle: workspace.subtitle,\n title: workspace.title,\n tools: serializedTools,\n }\n })\n}\n\n/**\n * Extracts all serializable properties from userland schema types,\n * so they best-effort can be used as definitions for Schema.compile\n. */\nfunction extractManifestSchemaTypes(schema: Schema): ManifestSchemaType[] {\n const typeNames = schema.getTypeNames()\n const context = {schema}\n\n const studioDefaultTypeNames = createSchema({name: 'default', types: []}).getTypeNames()\n\n return typeNames\n .filter((typeName) => !studioDefaultTypeNames.includes(typeName))\n .map((typeName) => schema.get(typeName))\n .filter((type): type is SchemaType => type !== undefined)\n .map((type) => transformType(type, context))\n}\n\nfunction transformCommonTypeFields(\n type: SchemaType & {fieldset?: string},\n typeName: string,\n context: Context,\n): Omit<ManifestSchemaType, 'name' | 'title' | 'type'> {\n const arrayProps =\n typeName === 'array' && type.jsonType === 'array' ? transformArrayMember(type, context) : {}\n\n const referenceProps = isReference(type) ? transformReference(type) : {}\n const crossDatasetRefProps = isCrossDatasetReference(type)\n ? transformCrossDatasetReference(type)\n : {}\n const globalRefProps = isGlobalDocumentReference(type)\n ? transformGlobalDocumentReference(type)\n : {}\n\n const objectFields: ObjectFields =\n type.jsonType === 'object' && type.type && isCustomized(type)\n ? {\n fields: getCustomFields(type).map((objectField) => transformField(objectField, context)),\n }\n : {}\n\n return {\n ...retainCustomTypeProps(type),\n ...transformValidation(type.validation),\n ...ensureString('description', type.description),\n ...objectFields,\n ...arrayProps,\n ...referenceProps,\n ...crossDatasetRefProps,\n ...globalRefProps,\n ...ensureConditional('readOnly', type.readOnly),\n ...ensureConditional('hidden', type.hidden),\n ...transformFieldsets(type),\n // fieldset prop gets instrumented via getCustomFields\n ...ensureString('fieldset', type.fieldset),\n ...transformBlockType(type, context),\n }\n}\n\nfunction transformFieldsets(\n type: SchemaType,\n): Record<string, never> | {fieldsets: ManifestFieldset[]} {\n if (type.jsonType !== 'object') {\n return {}\n }\n const fieldsets = type.fieldsets\n ?.filter((fs): fs is MultiFieldSet => !fs.single)\n .map((fs) => {\n const options = isRecord(fs.options) ? {options: retainSerializableProps(fs.options)} : {}\n return {\n name: fs.name,\n ...ensureCustomTitle(fs.name, fs.title),\n ...ensureString('description', fs.description),\n ...ensureConditional('readOnly', fs.readOnly),\n ...ensureConditional('hidden', fs.hidden),\n ...options,\n }\n })\n\n return fieldsets?.length ? {fieldsets} : {}\n}\n\nfunction transformType(type: SchemaType, context: Context): ManifestSchemaType {\n const typeName = type.type ? type.type.name : type.jsonType\n\n return {\n ...transformCommonTypeFields(type, typeName, context),\n name: type.name,\n type: typeName,\n ...ensureCustomTitle(type.name, type.title),\n }\n}\n\nfunction retainCustomTypeProps(type: SchemaType): Record<string, SerializableProp> {\n const manuallySerializedFields = new Set<SchemaTypeKey>([\n '__experimental_actions',\n '__experimental_formPreviewTitle',\n '__experimental_omnisearch_visibility',\n '__experimental_search',\n 'components',\n 'description',\n 'fields',\n 'fieldsets',\n //only exists on fields\n 'group',\n 'groups',\n 'hidden',\n 'icon',\n 'jsonType',\n //explicitly added\n 'name',\n 'of',\n 'orderings',\n 'preview',\n 'readOnly',\n 'title',\n 'to',\n // not serialized\n 'type',\n 'validation',\n // we know about these, but let them be generically handled\n // deprecated\n // rows (from text)\n // initialValue\n // options\n // crossDatasetReference props\n ])\n const typeWithoutManuallyHandledFields = Object.fromEntries(\n Object.entries(type).filter(\n ([key]) => !manuallySerializedFields.has(key as unknown as SchemaTypeKey),\n ),\n )\n return retainSerializableProps(typeWithoutManuallyHandledFields) as Record<\n string,\n SerializableProp\n >\n}\n\nfunction retainSerializableProps(maybeSerializable: unknown, depth = 0): SerializableProp {\n if (depth > MAX_CUSTOM_PROPERTY_DEPTH) {\n return undefined\n }\n\n if (!isDefined(maybeSerializable)) {\n return undefined\n }\n\n if (isPrimitive(maybeSerializable)) {\n // cull empty strings\n if (maybeSerializable === '') {\n return undefined\n }\n return maybeSerializable\n }\n\n // url-schemes ect..\n if (maybeSerializable instanceof RegExp) {\n return maybeSerializable.toString()\n }\n\n if (Array.isArray(maybeSerializable)) {\n const arrayItems = maybeSerializable\n .map((item) => retainSerializableProps(item, depth + 1))\n .filter((item): item is ManifestSerializable => isDefined(item))\n return arrayItems.length > 0 ? arrayItems : undefined\n }\n\n if (isRecord(maybeSerializable)) {\n const serializableEntries = Object.entries(maybeSerializable)\n .map(([key, value]) => {\n return [key, retainSerializableProps(value, depth + 1)]\n })\n .filter(([, value]) => isDefined(value))\n return serializableEntries.length > 0 ? Object.fromEntries(serializableEntries) : undefined\n }\n\n return undefined\n}\n\nfunction transformField(field: ObjectField & {fieldset?: string}, context: Context): ManifestField {\n const fieldType = field.type\n const typeName = getDefinedTypeName(fieldType) ?? fieldType.name\n return {\n ...transformCommonTypeFields(fieldType, typeName, context),\n name: field.name,\n type: typeName,\n ...ensureCustomTitle(field.name, fieldType.title),\n // this prop gets added synthetically via getCustomFields\n ...ensureString('fieldset', field.fieldset),\n }\n}\n\nfunction transformArrayMember(\n arrayMember: ArraySchemaType,\n context: Context,\n): Pick<ManifestField, 'of'> {\n return {\n of: arrayMember.of.map((type) => {\n const typeName = getDefinedTypeName(type) ?? type.name\n return {\n ...transformCommonTypeFields(type, typeName, context),\n type: typeName,\n ...(typeName === type.name ? {} : {name: type.name}),\n ...ensureCustomTitle(type.name, type.title),\n }\n }),\n }\n}\n\nfunction transformReference(reference: ReferenceSchemaType): Pick<ManifestSchemaType, 'to'> {\n return {\n to: (reference.to ?? []).map((type) => {\n return {\n ...retainCustomTypeProps(type),\n type: type.name,\n }\n }),\n }\n}\n\nfunction transformCrossDatasetReference(\n reference: CrossDatasetReferenceSchemaType,\n): Pick<ManifestSchemaType, 'preview' | 'to'> {\n return {\n to: (reference.to ?? []).map((crossDataset) => {\n const preview = crossDataset.preview?.select\n ? {preview: {select: crossDataset.preview.select}}\n : {}\n return {\n type: crossDataset.type,\n ...ensureCustomTitle(crossDataset.type, crossDataset.title),\n ...preview,\n }\n }),\n }\n}\n\nfunction transformGlobalDocumentReference(\n reference: GlobalDocumentReferenceSchemaType,\n): Pick<ManifestSchemaType, 'preview' | 'to'> {\n return {\n to: (reference.to ?? []).map((crossDataset) => {\n const preview = crossDataset.preview?.select\n ? {preview: {select: crossDataset.preview.select}}\n : {}\n return {\n type: crossDataset.type,\n ...ensureCustomTitle(crossDataset.type, crossDataset.title),\n ...preview,\n }\n }),\n }\n}\n\nconst transformTypeValidationRule: ValidationRuleTransformer = (rule) => {\n return {\n ...rule,\n constraint:\n 'constraint' in rule &&\n (typeof rule.constraint === 'string'\n ? rule.constraint.toLowerCase()\n : retainSerializableProps(rule.constraint)),\n }\n}\n\nconst validationRuleTransformers: Partial<\n Record<ManifestValidationFlag, ValidationRuleTransformer>\n> = {\n type: transformTypeValidationRule,\n}\n\nfunction transformValidation(validation: SchemaValidationValue): Validation {\n const validationArray = (Array.isArray(validation) ? validation : [validation]).filter(\n (value): value is Rule => typeof value === 'object' && '_type' in value,\n )\n\n // we dont want type in the output as that is implicitly given by the typedef itself an will only bloat the payload\n const disallowedFlags = new Set(['type'])\n\n // Validation rules that refer to other fields use symbols, which cannot be serialized. It would\n // be possible to transform these to a serializable type, but we haven't implemented that for now.\n const disallowedConstraintTypes = new Set<symbol | unknown>([ConcreteRuleClass.FIELD_REF])\n\n const serializedValidation = validationArray\n .map(({_level, _message, _rules}) => {\n const message: Partial<Pick<ManifestValidationGroup, 'message'>> =\n typeof _message === 'string' ? {message: _message} : {}\n\n const serializedRules = _rules\n .filter((rule) => {\n if (!('constraint' in rule)) {\n return false\n }\n\n const {constraint, flag} = rule\n\n if (disallowedFlags.has(flag)) {\n return false\n }\n\n return !(\n typeof constraint === 'object' &&\n 'type' in constraint &&\n disallowedConstraintTypes.has(constraint.type)\n )\n })\n .map((rule) => {\n const transformer: ValidationRuleTransformer =\n validationRuleTransformers[rule.flag] ??\n ((spec) => retainSerializableProps(spec) as ManifestValidationRule)\n\n const transformedRule = transformer(rule)\n\n if (!transformedRule) {\n return\n }\n\n return transformedRule\n })\n .filter((rule) => rule !== undefined)\n\n return {\n level: _level,\n rules: serializedRules,\n ...message,\n }\n })\n .filter((group) => group.rules.length > 0)\n\n return serializedValidation.length > 0 ? {validation: serializedValidation} : {}\n}\n\nfunction ensureCustomTitle(typeName: string, value: unknown) {\n const titleObject = ensureString('title', value)\n\n const defaultTitle = startCase(typeName)\n // omit title if its the same as default, to reduce payload\n if (titleObject.title === defaultTitle) {\n return {}\n }\n return titleObject\n}\n\nfunction ensureString<Key extends string>(key: Key, value: unknown) {\n if (typeof value === 'string') {\n return {\n [key]: value,\n }\n }\n\n return {}\n}\n\nfunction ensureConditional<const Key extends string>(key: Key, value: unknown) {\n if (typeof value === 'boolean') {\n return {\n [key]: value,\n }\n }\n\n if (typeof value === 'function') {\n return {\n [key]: 'conditional',\n }\n }\n\n return {}\n}\n\nfunction transformBlockType(\n blockType: SchemaType,\n context: Context,\n): Pick<ManifestSchemaType, 'lists' | 'marks' | 'of' | 'styles'> | Record<string, never> {\n if (blockType.jsonType !== 'object' || !isType(blockType, 'block')) {\n return {}\n }\n\n const childrenField = blockType.fields?.find((field) => field.name === 'children') as\n | {type: ArraySchemaType}\n | undefined\n\n if (!childrenField) {\n return {}\n }\n const ofType = childrenField.type.of\n if (!ofType) {\n return {}\n }\n const spanType = ofType.find((memberType) => memberType.name === 'span') as\n | ObjectSchemaType\n | undefined\n if (!spanType) {\n return {}\n }\n const inlineObjectTypes = (ofType.filter((memberType) => memberType.name !== 'span') ||\n []) as ObjectSchemaType[]\n\n return {\n lists: resolveEnabledListItems(blockType),\n marks: {\n annotations: (spanType as SpanSchemaType).annotations.map((t) => transformType(t, context)),\n decorators: resolveEnabledDecorators(spanType),\n },\n of: inlineObjectTypes.map((t) => transformType(t, context)),\n styles: resolveEnabledStyles(blockType),\n }\n}\n\nfunction resolveEnabledStyles(blockType: ObjectSchemaType): ManifestTitledValue[] | undefined {\n const styleField = blockType.fields?.find((btField) => btField.name === 'style')\n return resolveTitleValueArray(styleField?.type?.options?.list)\n}\n\nfunction resolveEnabledDecorators(spanType: ObjectSchemaType): ManifestTitledValue[] | undefined {\n return 'decorators' in spanType ? resolveTitleValueArray(spanType.decorators) : undefined\n}\n\nfunction resolveEnabledListItems(blockType: ObjectSchemaType): ManifestTitledValue[] | undefined {\n const listField = blockType.fields?.find((btField) => btField.name === 'listItem')\n return resolveTitleValueArray(listField?.type?.options?.list)\n}\n\nfunction resolveTitleValueArray(possibleArray: unknown): ManifestTitledValue[] | undefined {\n if (!possibleArray || !Array.isArray(possibleArray)) {\n return undefined\n }\n const titledValues = possibleArray\n .filter(\n (d): d is {title?: string; value: string} => isRecord(d) && !!d.value && isString(d.value),\n )\n .map((item) => {\n return {\n value: item.value,\n ...ensureString('title', item.title),\n } satisfies ManifestTitledValue\n })\n if (!titledValues?.length) {\n return undefined\n }\n\n return titledValues\n}\n\nconst extractManifestTools = (tools: Workspace['tools']): ManifestTool[] =>\n tools.map((tool) => {\n const {\n __internalApplicationType: type,\n icon,\n name,\n title,\n } = tool as Workspace['tools'][number] & {__internalApplicationType: string}\n return {\n icon: resolveIcon({\n icon: icon as SchemaIconProps['icon'],\n title,\n }),\n name,\n title,\n type: type || null,\n } satisfies ManifestTool\n })\n\nconst resolveIcon = (props: SchemaIconProps): string | null => {\n const sheet = new ServerStyleSheet()\n\n try {\n /**\n * You must render the element first so\n * the style-sheet above can be populated\n */\n const element = renderToString(sheet.collectStyles(<SchemaIcon {...props} />))\n const styleTags = sheet.getStyleTags()\n\n /**\n * We can then create a single string\n * of HTML combining our styles and element\n * before purifying below.\n */\n const html = `${styleTags}${element}`.trim()\n\n return DOMPurify.sanitize(html, config)\n } catch {\n return null\n } finally {\n sheet.seal()\n }\n}\n"],"names":["DOMPurify","startCase","renderToString","ConcreteRuleClass","createSchema","ServerStyleSheet","config","SchemaIcon","getCustomFields","getDefinedTypeName","isCrossDatasetReference","isCustomized","isDefined","isGlobalDocumentReference","isPrimitive","isRecord","isReference","isString","isType","MAX_CUSTOM_PROPERTY_DEPTH","extractWorkspaceManifest","workspaces","map","workspace","serializedSchema","extractManifestSchemaTypes","schema","serializedTools","extractManifestTools","tools","basePath","dataset","icon","resolveIcon","subtitle","title","mediaLibrary","name","projectId","typeNames","getTypeNames","context","studioDefaultTypeNames","types","filter","typeName","includes","get","type","undefined","transformType","transformCommonTypeFields","arrayProps","jsonType","transformArrayMember","referenceProps","transformReference","crossDatasetRefProps","transformCrossDatasetReference","globalRefProps","transformGlobalDocumentReference","objectFields","fields","objectField","transformField","retainCustomTypeProps","transformValidation","validation","ensureString","description","ensureConditional","readOnly","hidden","transformFieldsets","fieldset","transformBlockType","fieldsets","fs","single","options","retainSerializableProps","ensureCustomTitle","length","manuallySerializedFields","Set","typeWithoutManuallyHandledFields","Object","fromEntries","entries","key","has","maybeSerializable","depth","RegExp","toString","Array","isArray","arrayItems","item","serializableEntries","value","field","fieldType","arrayMember","of","reference","to","crossDataset","preview","select","transformTypeValidationRule","rule","constraint","toLowerCase","validationRuleTransformers","validationArray","disallowedFlags","disallowedConstraintTypes","FIELD_REF","serializedValidation","_level","_message","_rules","message","serializedRules","flag","transformer","spec","transformedRule","level","rules","group","titleObject","defaultTitle","blockType","childrenField","find","ofType","spanType","memberType","inlineObjectTypes","lists","resolveEnabledListItems","marks","annotations","t","decorators","resolveEnabledDecorators","styles","resolveEnabledStyles","styleField","btField","resolveTitleValueArray","list","listField","possibleArray","titledValues","d","tool","__internalApplicationType","props","sheet","element","collectStyles","styleTags","getStyleTags","html","trim","sanitize","seal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/manifest/extractWorkspaceManifest.ts"],"sourcesContent":["import {resolveLocalPackage} from '@sanity/cli-core'\nimport {type Schema} from '@sanity/types'\nimport {type Workspace} from 'sanity'\n\nimport {resolveIcon} from './iconResolver.js'\nimport {type SchemaIconProps} from './SchemaIcon.js'\nimport {transformType} from './schemaTypeTransformer.js'\nimport {type CreateWorkspaceManifest, type ManifestSchemaType, type ManifestTool} from './types.js'\n\n/**\n * Extracts manifest data from an array of workspaces\n */\nexport function extractWorkspaceManifest(\n workspaces: Workspace[],\n workDir: string,\n): Promise<CreateWorkspaceManifest[]> {\n return Promise.all(\n workspaces.map(async (workspace) => {\n const [icon, serializedSchema, serializedTools] = await Promise.all([\n resolveIcon({\n icon: workspace.icon,\n subtitle: workspace.subtitle,\n title: workspace.title,\n workDir,\n }),\n extractManifestSchemaTypes(workspace.schema as Schema, workDir),\n extractManifestTools(workspace.tools, workDir),\n ])\n\n return {\n basePath: workspace.basePath,\n dataset: workspace.dataset,\n icon,\n mediaLibrary: workspace.mediaLibrary,\n name: workspace.name,\n projectId: workspace.projectId,\n schema: serializedSchema,\n subtitle: workspace.subtitle,\n title: workspace.title,\n tools: serializedTools,\n }\n }),\n )\n}\n\n/**\n * Extracts all serializable properties from userland schema types,\n * so they best-effort can be used as definitions for Schema.compile.\n *\n * @internal\n */\nexport async function extractManifestSchemaTypes(\n schema: Schema,\n workDir: string,\n): Promise<ManifestSchemaType[]> {\n const typeNames = schema.getTypeNames()\n const context = {schema}\n\n const {createSchema} = await resolveLocalPackage<typeof import('sanity')>('sanity', workDir)\n\n const studioDefaultTypeNames = createSchema({name: 'default', types: []}).getTypeNames()\n\n return typeNames\n .filter((typeName) => !studioDefaultTypeNames.includes(typeName))\n .map((typeName) => schema.get(typeName))\n .filter((type): type is NonNullable<typeof type> => type !== undefined)\n .map((type) => transformType(type, context))\n}\n\n/**\n * Extracts tool information from workspace tools\n */\nconst extractManifestTools = async (\n tools: Workspace['tools'],\n workDir: string,\n): Promise<ManifestTool[]> =>\n Promise.all(\n tools.map(async (tool) => {\n const {\n __internalApplicationType: type,\n icon,\n name,\n title,\n } = tool as Workspace['tools'][number] & {__internalApplicationType: string}\n return {\n icon: await resolveIcon({\n icon: icon as SchemaIconProps['icon'],\n title,\n workDir,\n }),\n name,\n title,\n type: type || null,\n } satisfies ManifestTool\n }),\n )\n"],"names":["resolveLocalPackage","resolveIcon","transformType","extractWorkspaceManifest","workspaces","workDir","Promise","all","map","workspace","icon","serializedSchema","serializedTools","subtitle","title","extractManifestSchemaTypes","schema","extractManifestTools","tools","basePath","dataset","mediaLibrary","name","projectId","typeNames","getTypeNames","context","createSchema","studioDefaultTypeNames","types","filter","typeName","includes","get","type","undefined","tool","__internalApplicationType"],"mappings":"AAAA,SAAQA,mBAAmB,QAAO,mBAAkB;AAIpD,SAAQC,WAAW,QAAO,oBAAmB;AAE7C,SAAQC,aAAa,QAAO,6BAA4B;AAGxD;;CAEC,GACD,OAAO,SAASC,yBACdC,UAAuB,EACvBC,OAAe;IAEf,OAAOC,QAAQC,GAAG,CAChBH,WAAWI,GAAG,CAAC,OAAOC;QACpB,MAAM,CAACC,MAAMC,kBAAkBC,gBAAgB,GAAG,MAAMN,QAAQC,GAAG,CAAC;YAClEN,YAAY;gBACVS,MAAMD,UAAUC,IAAI;gBACpBG,UAAUJ,UAAUI,QAAQ;gBAC5BC,OAAOL,UAAUK,KAAK;gBACtBT;YACF;YACAU,2BAA2BN,UAAUO,MAAM,EAAYX;YACvDY,qBAAqBR,UAAUS,KAAK,EAAEb;SACvC;QAED,OAAO;YACLc,UAAUV,UAAUU,QAAQ;YAC5BC,SAASX,UAAUW,OAAO;YAC1BV;YACAW,cAAcZ,UAAUY,YAAY;YACpCC,MAAMb,UAAUa,IAAI;YACpBC,WAAWd,UAAUc,SAAS;YAC9BP,QAAQL;YACRE,UAAUJ,UAAUI,QAAQ;YAC5BC,OAAOL,UAAUK,KAAK;YACtBI,OAAON;QACT;IACF;AAEJ;AAEA;;;;;CAKC,GACD,OAAO,eAAeG,2BACpBC,MAAc,EACdX,OAAe;IAEf,MAAMmB,YAAYR,OAAOS,YAAY;IACrC,MAAMC,UAAU;QAACV;IAAM;IAEvB,MAAM,EAACW,YAAY,EAAC,GAAG,MAAM3B,oBAA6C,UAAUK;IAEpF,MAAMuB,yBAAyBD,aAAa;QAACL,MAAM;QAAWO,OAAO,EAAE;IAAA,GAAGJ,YAAY;IAEtF,OAAOD,UACJM,MAAM,CAAC,CAACC,WAAa,CAACH,uBAAuBI,QAAQ,CAACD,WACtDvB,GAAG,CAAC,CAACuB,WAAaf,OAAOiB,GAAG,CAACF,WAC7BD,MAAM,CAAC,CAACI,OAA2CA,SAASC,WAC5D3B,GAAG,CAAC,CAAC0B,OAAShC,cAAcgC,MAAMR;AACvC;AAEA;;CAEC,GACD,MAAMT,uBAAuB,OAC3BC,OACAb,UAEAC,QAAQC,GAAG,CACTW,MAAMV,GAAG,CAAC,OAAO4B;QACf,MAAM,EACJC,2BAA2BH,IAAI,EAC/BxB,IAAI,EACJY,IAAI,EACJR,KAAK,EACN,GAAGsB;QACJ,OAAO;YACL1B,MAAM,MAAMT,YAAY;gBACtBS,MAAMA;gBACNI;gBACAT;YACF;YACAiB;YACAR;YACAoB,MAAMA,QAAQ;QAChB;IACF"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import DOMPurify from 'isomorphic-dompurify';
|
|
3
|
+
import { renderToReadableStream } from 'react-dom/server';
|
|
4
|
+
import { manifestDebug } from './debug.js';
|
|
5
|
+
import { config } from './purifyConfig.js';
|
|
6
|
+
import { SchemaIcon } from './SchemaIcon.js';
|
|
7
|
+
/**
|
|
8
|
+
* Resolves an icon to a sanitized HTML string.
|
|
9
|
+
* Uses react-dom/server to capture styles during SSR.
|
|
10
|
+
*/ export const resolveIcon = async (props)=>{
|
|
11
|
+
try {
|
|
12
|
+
const stream = await renderToReadableStream(/*#__PURE__*/ _jsx(SchemaIcon, {
|
|
13
|
+
...props
|
|
14
|
+
}));
|
|
15
|
+
const reader = stream.getReader();
|
|
16
|
+
const chunks = [];
|
|
17
|
+
while(true){
|
|
18
|
+
const { done, value } = await reader.read();
|
|
19
|
+
if (done) break;
|
|
20
|
+
chunks.push(value);
|
|
21
|
+
}
|
|
22
|
+
const html = new TextDecoder().decode(Buffer.concat(chunks));
|
|
23
|
+
return DOMPurify.sanitize(html.trim(), config);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
manifestDebug('Error resolving icon', error);
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=iconResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/manifest/iconResolver.tsx"],"sourcesContent":["import DOMPurify from 'isomorphic-dompurify'\nimport {renderToReadableStream} from 'react-dom/server'\n\nimport {manifestDebug} from './debug.js'\nimport {config} from './purifyConfig.js'\nimport {SchemaIcon, type SchemaIconProps} from './SchemaIcon.js'\n\n/**\n * Resolves an icon to a sanitized HTML string.\n * Uses react-dom/server to capture styles during SSR.\n */\nexport const resolveIcon = async (props: SchemaIconProps): Promise<string | null> => {\n try {\n const stream = await renderToReadableStream(<SchemaIcon {...props} />)\n\n const reader = stream.getReader()\n const chunks: Uint8Array[] = []\n while (true) {\n const {done, value} = await reader.read()\n if (done) break\n chunks.push(value)\n }\n const html = new TextDecoder().decode(Buffer.concat(chunks))\n return DOMPurify.sanitize(html.trim(), config)\n } catch (error) {\n manifestDebug('Error resolving icon', error)\n return null\n }\n}\n"],"names":["DOMPurify","renderToReadableStream","manifestDebug","config","SchemaIcon","resolveIcon","props","stream","reader","getReader","chunks","done","value","read","push","html","TextDecoder","decode","Buffer","concat","sanitize","trim","error"],"mappings":";AAAA,OAAOA,eAAe,uBAAsB;AAC5C,SAAQC,sBAAsB,QAAO,mBAAkB;AAEvD,SAAQC,aAAa,QAAO,aAAY;AACxC,SAAQC,MAAM,QAAO,oBAAmB;AACxC,SAAQC,UAAU,QAA6B,kBAAiB;AAEhE;;;CAGC,GACD,OAAO,MAAMC,cAAc,OAAOC;IAChC,IAAI;QACF,MAAMC,SAAS,MAAMN,qCAAuB,KAACG;YAAY,GAAGE,KAAK;;QAEjE,MAAME,SAASD,OAAOE,SAAS;QAC/B,MAAMC,SAAuB,EAAE;QAC/B,MAAO,KAAM;YACX,MAAM,EAACC,IAAI,EAAEC,KAAK,EAAC,GAAG,MAAMJ,OAAOK,IAAI;YACvC,IAAIF,MAAM;YACVD,OAAOI,IAAI,CAACF;QACd;QACA,MAAMG,OAAO,IAAIC,cAAcC,MAAM,CAACC,OAAOC,MAAM,CAACT;QACpD,OAAOV,UAAUoB,QAAQ,CAACL,KAAKM,IAAI,IAAIlB;IACzC,EAAE,OAAOmB,OAAO;QACdpB,cAAc,wBAAwBoB;QACtC,OAAO;IACT;AACF,EAAC"}
|