From 084da7f7fcf5035ba228fc9711bdb3330d49088c Mon Sep 17 00:00:00 2001 From: Espen Hovlandsdal Date: Fri, 3 Apr 2026 11:42:18 -0700 Subject: [PATCH 1/2] feat(sdk-value): expose `ValueSyncPlugin` --- packages/plugin-sdk-value/src/index.ts | 2 +- packages/plugin-sdk-value/src/plugin.sdk-value.tsx | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/plugin-sdk-value/src/index.ts b/packages/plugin-sdk-value/src/index.ts index aeb399774..88a7f7e2a 100644 --- a/packages/plugin-sdk-value/src/index.ts +++ b/packages/plugin-sdk-value/src/index.ts @@ -1 +1 @@ -export {SDKValuePlugin} from './plugin.sdk-value' +export {SDKValuePlugin, ValueSyncPlugin} from './plugin.sdk-value' diff --git a/packages/plugin-sdk-value/src/plugin.sdk-value.tsx b/packages/plugin-sdk-value/src/plugin.sdk-value.tsx index c396adba8..49f8e76e4 100644 --- a/packages/plugin-sdk-value/src/plugin.sdk-value.tsx +++ b/packages/plugin-sdk-value/src/plugin.sdk-value.tsx @@ -339,12 +339,25 @@ export function SDKValuePlugin(props: SDKValuePluginProps) { ) } +/** + * @internal + */ type ValueSyncConfig = { getRemoteValue: () => PortableTextBlock[] | null | undefined pushValue: (value: PortableTextBlock[]) => void onRemoteValueChange: (callback: () => void) => () => void } +/** + * NOTE: You are probably looking for SDKValuePlugin instead of this. + * This is a lower-level plugin that only handles syncing the value + * between the editor and a remote source. It does not know anything + * about Sanity documents or how to fetch/update them. + * + * May be removed in the future, do not rely on this directly. + * + * @internal + */ export function ValueSyncPlugin(props: ValueSyncConfig) { const {getRemoteValue, pushValue, onRemoteValueChange} = props const editor = useEditor() From 7360855eeaa16f9830fc7d534b0e36da92aa3d82 Mon Sep 17 00:00:00 2001 From: Espen Hovlandsdal Date: Sat, 4 Apr 2026 00:15:37 +0200 Subject: [PATCH 2/2] chore: add expose-value-sync-plugin changeset --- .changeset/expose-value-sync-plugin.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/expose-value-sync-plugin.md diff --git a/.changeset/expose-value-sync-plugin.md b/.changeset/expose-value-sync-plugin.md new file mode 100644 index 000000000..cde05cb7c --- /dev/null +++ b/.changeset/expose-value-sync-plugin.md @@ -0,0 +1,5 @@ +--- +"@portabletext/plugin-sdk-value": patch +--- + +feat(sdk-value): expose `ValueSyncPlugin`