From 6f2041b71cfb09d7dd0d73de141daa7bba1356d7 Mon Sep 17 00:00:00 2001 From: Ash Date: Fri, 31 Jan 2025 16:37:51 +0000 Subject: [PATCH 1/4] refactor(sanity): add missing return type --- .../sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx b/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx index 5dab17dfd36..667ea34a9bc 100644 --- a/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx +++ b/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx @@ -1,8 +1,10 @@ +import {type ComponentType} from 'react' + import {type LayoutProps} from '../../config' import {AddonDatasetProvider} from '../../studio' import {ReleasesMetadataProvider} from '../contexts/ReleasesMetadataProvider' -export function ReleasesStudioLayout(props: LayoutProps) { +export const ReleasesStudioLayout: ComponentType = (props) => { // TODO: Replace for useReleasesEnabled const {enabled} = {enabled: true} From 29bc9c3939a2e2161e868453e6a71abdae6fbd4f Mon Sep 17 00:00:00 2001 From: Ash Date: Fri, 31 Jan 2025 16:38:51 +0000 Subject: [PATCH 2/4] refactor(sanity): remove unnecessary logic in `ReleasesStudioLayout` The plugin is only executed if it is enabled. Therefore, it is unnecessary to check whether it's enabled in the `ReleasesStudioLayout` component, which is part of the plugin. --- .../releases/plugin/ReleasesStudioLayout.tsx | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx b/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx index 667ea34a9bc..f8b5ad67fb0 100644 --- a/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx +++ b/packages/sanity/src/core/releases/plugin/ReleasesStudioLayout.tsx @@ -4,17 +4,8 @@ import {type LayoutProps} from '../../config' import {AddonDatasetProvider} from '../../studio' import {ReleasesMetadataProvider} from '../contexts/ReleasesMetadataProvider' -export const ReleasesStudioLayout: ComponentType = (props) => { - // TODO: Replace for useReleasesEnabled - const {enabled} = {enabled: true} - - if (!enabled) { - return props.renderDefault(props) - } - - return ( - - {props.renderDefault(props)} - - ) -} +export const ReleasesStudioLayout: ComponentType = (props) => ( + + {props.renderDefault(props)} + +) From 551b64272c9977308f1f82a6cfafdc7c8228564b Mon Sep 17 00:00:00 2001 From: Ash Date: Fri, 31 Jan 2025 16:41:41 +0000 Subject: [PATCH 3/4] feat(sanity): make Content Releases opt-in --- packages/sanity/src/core/config/resolveDefaultPlugins.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sanity/src/core/config/resolveDefaultPlugins.ts b/packages/sanity/src/core/config/resolveDefaultPlugins.ts index 7fb2e887263..166da75b177 100644 --- a/packages/sanity/src/core/config/resolveDefaultPlugins.ts +++ b/packages/sanity/src/core/config/resolveDefaultPlugins.ts @@ -46,8 +46,8 @@ export function getDefaultPluginsOptions( ...workspace.scheduledPublishing, }, releases: { - enabled: true, ...workspace.releases, + enabled: workspace.releases?.enabled ?? false, }, } } From bc5e3bd7ef2ba5aafe881f32322adfd4a5ed4919 Mon Sep 17 00:00:00 2001 From: Ash Date: Fri, 31 Jan 2025 16:42:45 +0000 Subject: [PATCH 4/4] feat(test-studio): enable Content Releases --- dev/test-studio/sanity.config.ts | 42 ++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/dev/test-studio/sanity.config.ts b/dev/test-studio/sanity.config.ts index 5f9e1121add..ae9ddbca81d 100644 --- a/dev/test-studio/sanity.config.ts +++ b/dev/test-studio/sanity.config.ts @@ -179,6 +179,9 @@ const defaultWorkspace = defineConfig({ tasks: { enabled: true, }, + releases: { + enabled: true, + }, }) export default defineConfig([ @@ -208,6 +211,9 @@ export default defineConfig([ unstable_tasks: { enabled: false, }, + releases: { + enabled: true, + }, }, { name: 'tsdoc', @@ -216,6 +222,9 @@ export default defineConfig([ dataset: 'tsdoc-2', plugins: [sharedSettings()], basePath: '/tsdoc', + releases: { + enabled: true, + }, }, { name: 'playground', @@ -230,6 +239,9 @@ export default defineConfig([ releases: true, }, }, + releases: { + enabled: true, + }, }, { name: 'listener-events', @@ -239,6 +251,9 @@ export default defineConfig([ dataset: 'data-loss', plugins: [sharedSettings()], basePath: '/listener-events', + releases: { + enabled: true, + }, }, { name: 'playground-partial-indexing', @@ -248,6 +263,9 @@ export default defineConfig([ dataset: 'playground-partial-indexing', plugins: [sharedSettings()], basePath: '/playground-partial-indexing', + releases: { + enabled: true, + }, }, { name: 'staging', @@ -264,6 +282,9 @@ export default defineConfig([ unstable_tasks: { enabled: true, }, + releases: { + enabled: true, + }, }, { name: 'custom-components', @@ -298,6 +319,9 @@ export default defineConfig([ toolMenu: CustomToolMenu, }, }, + releases: { + enabled: true, + }, }, { name: 'google-theme', @@ -308,6 +332,9 @@ export default defineConfig([ basePath: '/google', theme: googleTheme, icon: GoogleLogo, + releases: { + enabled: true, + }, }, { name: 'vercel-theme', @@ -318,6 +345,9 @@ export default defineConfig([ basePath: '/vercel', theme: vercelTheme, icon: VercelLogo, + releases: { + enabled: true, + }, }, { name: 'tailwind-theme', @@ -328,6 +358,9 @@ export default defineConfig([ basePath: '/tailwind', theme: tailwindTheme, icon: TailwindLogo, + releases: { + enabled: true, + }, }, { name: 'ai-assist', @@ -336,6 +369,9 @@ export default defineConfig([ dataset: 'test', plugins: [sharedSettings(), assist()], basePath: '/ai-assist', + releases: { + enabled: true, + }, }, { name: 'stega', @@ -349,6 +385,9 @@ export default defineConfig([ input: StegaDebugger, }, }, + releases: { + enabled: true, + }, }, { name: 'presentation', @@ -368,5 +407,8 @@ export default defineConfig([ sharedSettings(), ], basePath: '/presentation', + releases: { + enabled: true, + }, }, ]) as WorkspaceOptions[]