@portabletext/editor 1.47.5 → 1.47.7

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.
@@ -101,8 +101,7 @@ function parseTextBlock({
101
101
  context,
102
102
  options
103
103
  })).filter((child) => child !== void 0), parsedBlock = {
104
- // Spread the entire block to allow custom properties on it
105
- ...block,
104
+ _type: context.schema.block.name,
106
105
  _key,
107
106
  children: children.length > 0 ? children : [{
108
107
  _key: context.keyGenerator(),
@@ -112,11 +111,13 @@ function parseTextBlock({
112
111
  }],
113
112
  markDefs
114
113
  };
115
- if (typeof parsedBlock.style != "string" || !context.schema.styles.find((style) => style.name === block.style)) {
114
+ if (typeof block.style == "string" && context.schema.styles.find((style) => style.name === block.style))
115
+ parsedBlock.style = block.style;
116
+ else {
116
117
  const defaultStyle = context.schema.styles.at(0)?.name;
117
- defaultStyle !== void 0 ? parsedBlock.style = defaultStyle : delete parsedBlock.style;
118
+ defaultStyle !== void 0 ? parsedBlock.style = defaultStyle : console.error("Expected default style");
118
119
  }
119
- return (typeof parsedBlock.listItem != "string" || !context.schema.lists.find((list) => list.name === block.listItem)) && delete parsedBlock.listItem, typeof parsedBlock.level != "number" && delete parsedBlock.level, parsedBlock;
120
+ return typeof block.listItem == "string" && context.schema.lists.find((list) => list.name === block.listItem) && (parsedBlock.listItem = block.listItem), typeof block.level == "number" && (parsedBlock.level = block.level), parsedBlock;
120
121
  }
121
122
  function parseSpan({
122
123
  span,
@@ -133,8 +134,6 @@ function parseSpan({
133
134
  return markDefKey !== void 0 ? [markDefKey] : context.schema.decorators.some((decorator) => decorator.name === mark) ? [mark] : [];
134
135
  });
135
136
  return {
136
- // Spread the entire span to allow custom properties on it
137
- ...span,
138
137
  _type: "span",
139
138
  _key: options.refreshKeys ? context.keyGenerator() : typeof span._key == "string" ? span._key : context.keyGenerator(),
140
139
  text: typeof span.text == "string" ? span.text : "",
@@ -1 +1 @@
1
- {"version":3,"file":"parse-blocks.js","sources":["../../src/internal-utils/asserters.ts","../../src/internal-utils/parse-blocks.ts"],"sourcesContent":["import type {TypedObject} from '@sanity/types'\n\nexport function isTypedObject(object: unknown): object is TypedObject {\n return isRecord(object) && typeof object._type === 'string'\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return !!value && (typeof value === 'object' || typeof value === 'function')\n}\n","import type {\n PortableTextBlock,\n PortableTextObject,\n PortableTextSpan,\n PortableTextTextBlock,\n TypedObject,\n} from '@sanity/types'\nimport type {EditorSchema} from '../editor/editor-schema'\nimport type {EditorContext} from '../editor/editor-snapshot'\nimport {isTypedObject} from './asserters'\n\nexport function parseBlocks({\n context,\n blocks,\n options,\n}: {\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n blocks: unknown\n options: {\n refreshKeys: boolean\n }\n}): Array<PortableTextBlock> {\n if (!Array.isArray(blocks)) {\n return []\n }\n\n return blocks.flatMap((block) => {\n const parsedBlock = parseBlock({context, block, options})\n\n return parsedBlock ? [parsedBlock] : []\n })\n}\n\nexport function parseBlock({\n context,\n block,\n options,\n}: {\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n block: unknown\n options: {\n refreshKeys: boolean\n }\n}): PortableTextBlock | undefined {\n return (\n parseTextBlock({block, context, options}) ??\n parseBlockObject({blockObject: block, context, options})\n )\n}\n\nfunction parseBlockObject({\n blockObject,\n context,\n options,\n}: {\n blockObject: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextObject | undefined {\n if (!isTypedObject(blockObject)) {\n return undefined\n }\n\n const schemaType = context.schema.blockObjects.find(\n ({name}) => name === blockObject._type,\n )\n\n if (!schemaType) {\n return undefined\n }\n\n return parseObject({\n object: blockObject,\n context: {\n keyGenerator: context.keyGenerator,\n schemaType,\n },\n options,\n })\n}\n\nexport function isTextBlock(\n schema: EditorSchema,\n block: unknown,\n): block is PortableTextTextBlock {\n return (\n parseTextBlock({\n block,\n context: {schema, keyGenerator: () => ''},\n options: {refreshKeys: false},\n }) !== undefined\n )\n}\n\nfunction parseTextBlock({\n block,\n context,\n options,\n}: {\n block: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextTextBlock | undefined {\n if (!isTypedObject(block)) {\n return undefined\n }\n\n if (block._type !== context.schema.block.name) {\n return undefined\n }\n\n const _key = options.refreshKeys\n ? context.keyGenerator()\n : typeof block._key === 'string'\n ? block._key\n : context.keyGenerator()\n\n const unparsedMarkDefs: Array<unknown> = Array.isArray(block.markDefs)\n ? block.markDefs\n : []\n const markDefKeyMap = new Map<string, string>()\n const markDefs = unparsedMarkDefs.flatMap((markDef) => {\n if (!isTypedObject(markDef)) {\n return []\n }\n\n const schemaType = context.schema.annotations.find(\n ({name}) => name === markDef._type,\n )\n\n if (!schemaType) {\n return []\n }\n\n if (typeof markDef._key !== 'string') {\n // If the `markDef` doesn't have a `_key` then we don't know what spans\n // it belongs to and therefore we have to discard it.\n return []\n }\n\n const parsedAnnotation = parseObject({\n object: markDef,\n context: {\n schemaType,\n keyGenerator: context.keyGenerator,\n },\n options,\n })\n\n if (!parsedAnnotation) {\n return []\n }\n\n markDefKeyMap.set(markDef._key, parsedAnnotation._key)\n\n return [parsedAnnotation]\n })\n\n const unparsedChildren: Array<unknown> = Array.isArray(block.children)\n ? block.children\n : []\n\n const children = unparsedChildren\n .map(\n (child) =>\n parseSpan({span: child, context, markDefKeyMap, options}) ??\n parseInlineObject({inlineObject: child, context, options}),\n )\n .filter((child) => child !== undefined)\n\n const parsedBlock: PortableTextTextBlock = {\n // Spread the entire block to allow custom properties on it\n ...block,\n _key,\n children:\n children.length > 0\n ? children\n : [\n {\n _key: context.keyGenerator(),\n _type: context.schema.span.name,\n text: '',\n marks: [],\n },\n ],\n markDefs,\n }\n\n /**\n * Reset text block .style if it's somehow set to an invalid type\n */\n if (\n typeof parsedBlock.style !== 'string' ||\n !context.schema.styles.find((style) => style.name === block.style)\n ) {\n const defaultStyle = context.schema.styles.at(0)?.name\n\n if (defaultStyle !== undefined) {\n parsedBlock.style = defaultStyle\n } else {\n delete parsedBlock.style\n }\n }\n\n /**\n * Reset text block .listItem if it's somehow set to an invalid type\n */\n if (\n typeof parsedBlock.listItem !== 'string' ||\n !context.schema.lists.find((list) => list.name === block.listItem)\n ) {\n delete parsedBlock.listItem\n }\n\n /**\n * Reset text block .level if it's somehow set to an invalid type\n */\n if (typeof parsedBlock.level !== 'number') {\n delete parsedBlock.level\n }\n\n return parsedBlock\n}\n\nexport function isSpan(\n schema: EditorSchema,\n child: PortableTextSpan | PortableTextObject,\n): child is PortableTextSpan {\n return (\n parseSpan({\n span: child,\n markDefKeyMap: new Map(),\n context: {schema, keyGenerator: () => ''},\n options: {refreshKeys: false},\n }) !== undefined\n )\n}\n\nexport function parseSpan({\n span,\n context,\n markDefKeyMap,\n options,\n}: {\n span: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n markDefKeyMap: Map<string, string>\n options: {refreshKeys: boolean}\n}): PortableTextSpan | undefined {\n if (!isTypedObject(span)) {\n return undefined\n }\n\n // In reality, the span schema name is always 'span', but we only the check here anyway\n if (span._type !== context.schema.span.name || span._type !== 'span') {\n return undefined\n }\n\n const unparsedMarks: Array<unknown> = Array.isArray(span.marks)\n ? span.marks\n : []\n const marks = unparsedMarks.flatMap((mark) => {\n if (typeof mark !== 'string') {\n return []\n }\n\n const markDefKey = markDefKeyMap.get(mark)\n\n if (markDefKey !== undefined) {\n return [markDefKey]\n }\n\n if (\n context.schema.decorators.some((decorator) => decorator.name === mark)\n ) {\n return [mark]\n }\n\n return []\n })\n\n return {\n // Spread the entire span to allow custom properties on it\n ...span,\n _type: 'span',\n _key: options.refreshKeys\n ? context.keyGenerator()\n : typeof span._key === 'string'\n ? span._key\n : context.keyGenerator(),\n text: typeof span.text === 'string' ? span.text : '',\n marks,\n }\n}\n\nexport function parseInlineObject({\n inlineObject,\n context,\n options,\n}: {\n inlineObject: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextObject | undefined {\n if (!isTypedObject(inlineObject)) {\n return undefined\n }\n\n const schemaType = context.schema.inlineObjects.find(\n ({name}) => name === inlineObject._type,\n )\n\n if (!schemaType) {\n return undefined\n }\n\n return parseObject({\n object: inlineObject,\n context: {\n keyGenerator: context.keyGenerator,\n schemaType,\n },\n options,\n })\n}\n\nexport function parseAnnotation({\n annotation,\n context,\n options,\n}: {\n annotation: TypedObject\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextObject | undefined {\n if (!isTypedObject(annotation)) {\n return undefined\n }\n\n const schemaType = context.schema.annotations.find(\n ({name}) => name === annotation._type,\n )\n\n if (!schemaType) {\n return undefined\n }\n\n return parseObject({\n object: annotation,\n context: {\n keyGenerator: context.keyGenerator,\n schemaType,\n },\n options,\n })\n}\n\nfunction parseObject({\n object,\n context,\n options,\n}: {\n object: TypedObject\n context: Pick<EditorContext, 'keyGenerator'> & {\n schemaType: EditorSchema['blockObjects'][0]\n }\n options: {refreshKeys: boolean}\n}): PortableTextObject {\n // Validates all props on the object and only takes those that match\n // the name of a field\n const values = context.schemaType.fields.reduce<Record<string, unknown>>(\n (fieldValues, field) => {\n const fieldValue = object[field.name]\n\n if (fieldValue !== undefined) {\n fieldValues[field.name] = fieldValue\n }\n\n return fieldValues\n },\n {},\n )\n\n return {\n _type: context.schemaType.name,\n _key: options.refreshKeys\n ? context.keyGenerator()\n : typeof object._key === 'string'\n ? object._key\n : context.keyGenerator(),\n ...values,\n }\n}\n"],"names":["isTypedObject","object","isRecord","_type","value","parseBlocks","context","blocks","options","Array","isArray","flatMap","block","parsedBlock","parseBlock","parseTextBlock","parseBlockObject","blockObject","schemaType","schema","blockObjects","find","name","parseObject","keyGenerator","isTextBlock","refreshKeys","undefined","_key","unparsedMarkDefs","markDefs","markDefKeyMap","Map","markDef","annotations","parsedAnnotation","set","children","map","child","parseSpan","span","parseInlineObject","inlineObject","filter","length","text","marks","style","styles","defaultStyle","at","listItem","lists","list","level","mark","markDefKey","get","decorators","some","decorator","inlineObjects","parseAnnotation","annotation","values","fields","reduce","fieldValues","field","fieldValue"],"mappings":"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"}
1
+ {"version":3,"file":"parse-blocks.js","sources":["../../src/internal-utils/asserters.ts","../../src/internal-utils/parse-blocks.ts"],"sourcesContent":["import type {TypedObject} from '@sanity/types'\n\nexport function isTypedObject(object: unknown): object is TypedObject {\n return isRecord(object) && typeof object._type === 'string'\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return !!value && (typeof value === 'object' || typeof value === 'function')\n}\n","import type {\n PortableTextBlock,\n PortableTextObject,\n PortableTextSpan,\n PortableTextTextBlock,\n TypedObject,\n} from '@sanity/types'\nimport type {EditorSchema} from '../editor/editor-schema'\nimport type {EditorContext} from '../editor/editor-snapshot'\nimport {isTypedObject} from './asserters'\n\nexport function parseBlocks({\n context,\n blocks,\n options,\n}: {\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n blocks: unknown\n options: {\n refreshKeys: boolean\n }\n}): Array<PortableTextBlock> {\n if (!Array.isArray(blocks)) {\n return []\n }\n\n return blocks.flatMap((block) => {\n const parsedBlock = parseBlock({context, block, options})\n\n return parsedBlock ? [parsedBlock] : []\n })\n}\n\nexport function parseBlock({\n context,\n block,\n options,\n}: {\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n block: unknown\n options: {\n refreshKeys: boolean\n }\n}): PortableTextBlock | undefined {\n return (\n parseTextBlock({block, context, options}) ??\n parseBlockObject({blockObject: block, context, options})\n )\n}\n\nfunction parseBlockObject({\n blockObject,\n context,\n options,\n}: {\n blockObject: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextObject | undefined {\n if (!isTypedObject(blockObject)) {\n return undefined\n }\n\n const schemaType = context.schema.blockObjects.find(\n ({name}) => name === blockObject._type,\n )\n\n if (!schemaType) {\n return undefined\n }\n\n return parseObject({\n object: blockObject,\n context: {\n keyGenerator: context.keyGenerator,\n schemaType,\n },\n options,\n })\n}\n\nexport function isTextBlock(\n schema: EditorSchema,\n block: unknown,\n): block is PortableTextTextBlock {\n return (\n parseTextBlock({\n block,\n context: {schema, keyGenerator: () => ''},\n options: {refreshKeys: false},\n }) !== undefined\n )\n}\n\nfunction parseTextBlock({\n block,\n context,\n options,\n}: {\n block: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextTextBlock | undefined {\n if (!isTypedObject(block)) {\n return undefined\n }\n\n if (block._type !== context.schema.block.name) {\n return undefined\n }\n\n const _key = options.refreshKeys\n ? context.keyGenerator()\n : typeof block._key === 'string'\n ? block._key\n : context.keyGenerator()\n\n const unparsedMarkDefs: Array<unknown> = Array.isArray(block.markDefs)\n ? block.markDefs\n : []\n const markDefKeyMap = new Map<string, string>()\n const markDefs = unparsedMarkDefs.flatMap((markDef) => {\n if (!isTypedObject(markDef)) {\n return []\n }\n\n const schemaType = context.schema.annotations.find(\n ({name}) => name === markDef._type,\n )\n\n if (!schemaType) {\n return []\n }\n\n if (typeof markDef._key !== 'string') {\n // If the `markDef` doesn't have a `_key` then we don't know what spans\n // it belongs to and therefore we have to discard it.\n return []\n }\n\n const parsedAnnotation = parseObject({\n object: markDef,\n context: {\n schemaType,\n keyGenerator: context.keyGenerator,\n },\n options,\n })\n\n if (!parsedAnnotation) {\n return []\n }\n\n markDefKeyMap.set(markDef._key, parsedAnnotation._key)\n\n return [parsedAnnotation]\n })\n\n const unparsedChildren: Array<unknown> = Array.isArray(block.children)\n ? block.children\n : []\n\n const children = unparsedChildren\n .map(\n (child) =>\n parseSpan({span: child, context, markDefKeyMap, options}) ??\n parseInlineObject({inlineObject: child, context, options}),\n )\n .filter((child) => child !== undefined)\n\n const parsedBlock: PortableTextTextBlock = {\n _type: context.schema.block.name,\n _key,\n children:\n children.length > 0\n ? children\n : [\n {\n _key: context.keyGenerator(),\n _type: context.schema.span.name,\n text: '',\n marks: [],\n },\n ],\n markDefs,\n }\n\n if (\n typeof block.style === 'string' &&\n context.schema.styles.find((style) => style.name === block.style)\n ) {\n parsedBlock.style = block.style\n } else {\n const defaultStyle = context.schema.styles.at(0)?.name\n\n if (defaultStyle !== undefined) {\n parsedBlock.style = defaultStyle\n } else {\n console.error('Expected default style')\n }\n }\n\n if (\n typeof block.listItem === 'string' &&\n context.schema.lists.find((list) => list.name === block.listItem)\n ) {\n parsedBlock.listItem = block.listItem\n }\n\n if (typeof block.level === 'number') {\n parsedBlock.level = block.level\n }\n\n return parsedBlock\n}\n\nexport function isSpan(\n schema: EditorSchema,\n child: PortableTextSpan | PortableTextObject,\n): child is PortableTextSpan {\n return (\n parseSpan({\n span: child,\n markDefKeyMap: new Map(),\n context: {schema, keyGenerator: () => ''},\n options: {refreshKeys: false},\n }) !== undefined\n )\n}\n\nexport function parseSpan({\n span,\n context,\n markDefKeyMap,\n options,\n}: {\n span: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n markDefKeyMap: Map<string, string>\n options: {refreshKeys: boolean}\n}): PortableTextSpan | undefined {\n if (!isTypedObject(span)) {\n return undefined\n }\n\n // In reality, the span schema name is always 'span', but we only the check here anyway\n if (span._type !== context.schema.span.name || span._type !== 'span') {\n return undefined\n }\n\n const unparsedMarks: Array<unknown> = Array.isArray(span.marks)\n ? span.marks\n : []\n const marks = unparsedMarks.flatMap((mark) => {\n if (typeof mark !== 'string') {\n return []\n }\n\n const markDefKey = markDefKeyMap.get(mark)\n\n if (markDefKey !== undefined) {\n return [markDefKey]\n }\n\n if (\n context.schema.decorators.some((decorator) => decorator.name === mark)\n ) {\n return [mark]\n }\n\n return []\n })\n\n return {\n _type: 'span',\n _key: options.refreshKeys\n ? context.keyGenerator()\n : typeof span._key === 'string'\n ? span._key\n : context.keyGenerator(),\n text: typeof span.text === 'string' ? span.text : '',\n marks,\n }\n}\n\nexport function parseInlineObject({\n inlineObject,\n context,\n options,\n}: {\n inlineObject: unknown\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextObject | undefined {\n if (!isTypedObject(inlineObject)) {\n return undefined\n }\n\n const schemaType = context.schema.inlineObjects.find(\n ({name}) => name === inlineObject._type,\n )\n\n if (!schemaType) {\n return undefined\n }\n\n return parseObject({\n object: inlineObject,\n context: {\n keyGenerator: context.keyGenerator,\n schemaType,\n },\n options,\n })\n}\n\nexport function parseAnnotation({\n annotation,\n context,\n options,\n}: {\n annotation: TypedObject\n context: Pick<EditorContext, 'keyGenerator' | 'schema'>\n options: {refreshKeys: boolean}\n}): PortableTextObject | undefined {\n if (!isTypedObject(annotation)) {\n return undefined\n }\n\n const schemaType = context.schema.annotations.find(\n ({name}) => name === annotation._type,\n )\n\n if (!schemaType) {\n return undefined\n }\n\n return parseObject({\n object: annotation,\n context: {\n keyGenerator: context.keyGenerator,\n schemaType,\n },\n options,\n })\n}\n\nfunction parseObject({\n object,\n context,\n options,\n}: {\n object: TypedObject\n context: Pick<EditorContext, 'keyGenerator'> & {\n schemaType: EditorSchema['blockObjects'][0]\n }\n options: {refreshKeys: boolean}\n}): PortableTextObject {\n // Validates all props on the object and only takes those that match\n // the name of a field\n const values = context.schemaType.fields.reduce<Record<string, unknown>>(\n (fieldValues, field) => {\n const fieldValue = object[field.name]\n\n if (fieldValue !== undefined) {\n fieldValues[field.name] = fieldValue\n }\n\n return fieldValues\n },\n {},\n )\n\n return {\n _type: context.schemaType.name,\n _key: options.refreshKeys\n ? context.keyGenerator()\n : typeof object._key === 'string'\n ? object._key\n : context.keyGenerator(),\n ...values,\n }\n}\n"],"names":["isTypedObject","object","isRecord","_type","value","parseBlocks","context","blocks","options","Array","isArray","flatMap","block","parsedBlock","parseBlock","parseTextBlock","parseBlockObject","blockObject","schemaType","schema","blockObjects","find","name","parseObject","keyGenerator","isTextBlock","refreshKeys","undefined","_key","unparsedMarkDefs","markDefs","markDefKeyMap","Map","markDef","annotations","parsedAnnotation","set","children","map","child","parseSpan","span","parseInlineObject","inlineObject","filter","length","text","marks","style","styles","defaultStyle","at","console","error","listItem","lists","list","level","mark","markDefKey","get","decorators","some","decorator","inlineObjects","parseAnnotation","annotation","values","fields","reduce","fieldValues","field","fieldValue"],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import type {Patch} from '@portabletext/patches'
2
- import {KeyedSegment, PortableTextBlock} from '@sanity/types'
3
2
  import type {
3
+ ArraySchemaType,
4
+ BlockDecoratorDefinition,
5
+ BlockListDefinition,
6
+ BlockStyleDefinition,
7
+ ObjectSchemaType,
4
8
  Path,
5
9
  PortableTextChild,
6
10
  PortableTextListBlock,
@@ -8,6 +12,7 @@ import type {
8
12
  PortableTextSpan,
9
13
  PortableTextTextBlock,
10
14
  } from '@sanity/types'
15
+ import {KeyedSegment, PortableTextBlock} from '@sanity/types'
11
16
  import type {
12
17
  FocusEvent as FocusEvent_2,
13
18
  KeyboardEvent as KeyboardEvent_2,
@@ -8778,6 +8783,7 @@ declare const editorMachine: StateMachine<
8778
8783
  {
8779
8784
  behaviors: Set<Behavior>
8780
8785
  converters: Set<Converter>
8786
+ getLegacySchema: () => PortableTextMemberSchemaTypes
8781
8787
  keyGenerator: () => string
8782
8788
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
8783
8789
  schema: EditorSchema
@@ -9011,6 +9017,7 @@ declare const editorMachine: StateMachine<
9011
9017
  {
9012
9018
  behaviors?: Array<Behavior>
9013
9019
  converters?: Array<Converter>
9020
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9014
9021
  keyGenerator: () => string
9015
9022
  maxBlocks?: number
9016
9023
  readOnly?: boolean
@@ -9096,6 +9103,7 @@ declare const editorMachine: StateMachine<
9096
9103
  input: {
9097
9104
  behaviors?: Array<Behavior>
9098
9105
  converters?: Array<Converter>
9106
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9099
9107
  keyGenerator: () => string
9100
9108
  maxBlocks?: number
9101
9109
  readOnly?: boolean
@@ -9107,6 +9115,7 @@ declare const editorMachine: StateMachine<
9107
9115
  {
9108
9116
  behaviors: Set<Behavior>
9109
9117
  converters: Set<Converter>
9118
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9110
9119
  keyGenerator: () => string
9111
9120
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9112
9121
  schema: EditorSchema
@@ -9386,6 +9395,7 @@ declare const editorMachine: StateMachine<
9386
9395
  }) => {
9387
9396
  behaviors: Set<Behavior>
9388
9397
  converters: Set<Converter>
9398
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9389
9399
  keyGenerator: () => string
9390
9400
  pendingEvents: never[]
9391
9401
  schema: EditorSchema
@@ -9400,6 +9410,7 @@ declare const editorMachine: StateMachine<
9400
9410
  {
9401
9411
  behaviors: Set<Behavior>
9402
9412
  converters: Set<Converter>
9413
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9403
9414
  keyGenerator: () => string
9404
9415
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9405
9416
  schema: EditorSchema
@@ -9603,6 +9614,7 @@ declare const editorMachine: StateMachine<
9603
9614
  {
9604
9615
  behaviors: Set<Behavior>
9605
9616
  converters: Set<Converter>
9617
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9606
9618
  keyGenerator: () => string
9607
9619
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9608
9620
  schema: EditorSchema
@@ -9805,6 +9817,7 @@ declare const editorMachine: StateMachine<
9805
9817
  {
9806
9818
  behaviors: Set<Behavior>
9807
9819
  converters: Set<Converter>
9820
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9808
9821
  keyGenerator: () => string
9809
9822
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9810
9823
  schema: EditorSchema
@@ -10010,6 +10023,7 @@ declare const editorMachine: StateMachine<
10010
10023
  {
10011
10024
  behaviors: Set<Behavior>
10012
10025
  converters: Set<Converter>
10026
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10013
10027
  keyGenerator: () => string
10014
10028
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10015
10029
  schema: EditorSchema
@@ -10214,6 +10228,7 @@ declare const editorMachine: StateMachine<
10214
10228
  {
10215
10229
  behaviors: Set<Behavior>
10216
10230
  converters: Set<Converter>
10231
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10217
10232
  keyGenerator: () => string
10218
10233
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10219
10234
  schema: EditorSchema
@@ -10418,6 +10433,7 @@ declare const editorMachine: StateMachine<
10418
10433
  {
10419
10434
  behaviors: Set<Behavior>
10420
10435
  converters: Set<Converter>
10436
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10421
10437
  keyGenerator: () => string
10422
10438
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10423
10439
  schema: EditorSchema
@@ -10573,6 +10589,7 @@ declare const editorMachine: StateMachine<
10573
10589
  {
10574
10590
  behaviors: Set<Behavior>
10575
10591
  converters: Set<Converter>
10592
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10576
10593
  keyGenerator: () => string
10577
10594
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10578
10595
  schema: EditorSchema
@@ -10777,6 +10794,7 @@ declare const editorMachine: StateMachine<
10777
10794
  {
10778
10795
  behaviors: Set<Behavior>
10779
10796
  converters: Set<Converter>
10797
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10780
10798
  keyGenerator: () => string
10781
10799
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10782
10800
  schema: EditorSchema
@@ -10980,6 +10998,7 @@ declare const editorMachine: StateMachine<
10980
10998
  {
10981
10999
  behaviors: Set<Behavior>
10982
11000
  converters: Set<Converter>
11001
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10983
11002
  keyGenerator: () => string
10984
11003
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10985
11004
  schema: EditorSchema
@@ -11182,6 +11201,7 @@ declare const editorMachine: StateMachine<
11182
11201
  {
11183
11202
  behaviors: Set<Behavior>
11184
11203
  converters: Set<Converter>
11204
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11185
11205
  keyGenerator: () => string
11186
11206
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11187
11207
  schema: EditorSchema
@@ -11391,6 +11411,7 @@ declare const editorMachine: StateMachine<
11391
11411
  {
11392
11412
  behaviors: Set<Behavior>
11393
11413
  converters: Set<Converter>
11414
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11394
11415
  keyGenerator: () => string
11395
11416
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11396
11417
  schema: EditorSchema
@@ -11594,6 +11615,7 @@ declare const editorMachine: StateMachine<
11594
11615
  {
11595
11616
  behaviors: Set<Behavior>
11596
11617
  converters: Set<Converter>
11618
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11597
11619
  keyGenerator: () => string
11598
11620
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11599
11621
  schema: EditorSchema
@@ -11754,6 +11776,7 @@ declare const editorMachine: StateMachine<
11754
11776
  {
11755
11777
  behaviors: Set<Behavior>
11756
11778
  converters: Set<Converter>
11779
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11757
11780
  keyGenerator: () => string
11758
11781
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11759
11782
  schema: EditorSchema
@@ -11911,6 +11934,7 @@ declare const editorMachine: StateMachine<
11911
11934
  {
11912
11935
  behaviors: Set<Behavior>
11913
11936
  converters: Set<Converter>
11937
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11914
11938
  keyGenerator: () => string
11915
11939
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11916
11940
  schema: EditorSchema
@@ -12080,6 +12104,7 @@ declare const editorMachine: StateMachine<
12080
12104
  {
12081
12105
  behaviors: Set<Behavior>
12082
12106
  converters: Set<Converter>
12107
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12083
12108
  keyGenerator: () => string
12084
12109
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12085
12110
  schema: EditorSchema
@@ -12116,6 +12141,7 @@ declare const editorMachine: StateMachine<
12116
12141
  {
12117
12142
  behaviors: Set<Behavior>
12118
12143
  converters: Set<Converter>
12144
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12119
12145
  keyGenerator: () => string
12120
12146
  pendingEvents: Array<
12121
12147
  InternalPatchEvent | MutationEvent
@@ -12151,6 +12177,7 @@ declare const editorMachine: StateMachine<
12151
12177
  {
12152
12178
  behaviors: Set<Behavior>
12153
12179
  converters: Set<Converter>
12180
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12154
12181
  keyGenerator: () => string
12155
12182
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12156
12183
  schema: EditorSchema
@@ -12185,6 +12212,7 @@ declare const editorMachine: StateMachine<
12185
12212
  {
12186
12213
  behaviors: Set<Behavior>
12187
12214
  converters: Set<Converter>
12215
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12188
12216
  keyGenerator: () => string
12189
12217
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12190
12218
  schema: EditorSchema
@@ -12219,6 +12247,7 @@ declare const editorMachine: StateMachine<
12219
12247
  {
12220
12248
  behaviors: Set<Behavior>
12221
12249
  converters: Set<Converter>
12250
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12222
12251
  keyGenerator: () => string
12223
12252
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12224
12253
  schema: EditorSchema
@@ -12383,6 +12412,7 @@ declare const editorMachine: StateMachine<
12383
12412
  {
12384
12413
  behaviors: Set<Behavior>
12385
12414
  converters: Set<Converter>
12415
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12386
12416
  keyGenerator: () => string
12387
12417
  pendingEvents: Array<
12388
12418
  InternalPatchEvent | MutationEvent
@@ -12574,6 +12604,7 @@ declare const editorMachine: StateMachine<
12574
12604
  {
12575
12605
  behaviors: Set<Behavior>
12576
12606
  converters: Set<Converter>
12607
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12577
12608
  keyGenerator: () => string
12578
12609
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12579
12610
  schema: EditorSchema
@@ -12846,6 +12877,7 @@ declare const editorMachine: StateMachine<
12846
12877
  {
12847
12878
  behaviors: Set<Behavior>
12848
12879
  converters: Set<Converter>
12880
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12849
12881
  keyGenerator: () => string
12850
12882
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12851
12883
  schema: EditorSchema
@@ -13560,6 +13592,21 @@ declare type PickFromUnion_2<
13560
13592
  TPickedTags extends TUnion[TTagKey],
13561
13593
  > = TUnion extends Record<TTagKey, TPickedTags> ? TUnion : never
13562
13594
 
13595
+ /** @beta */
13596
+ declare type PortableTextMemberSchemaTypes = {
13597
+ annotations: (ObjectSchemaType & {
13598
+ i18nTitleKey?: string
13599
+ })[]
13600
+ block: ObjectSchemaType
13601
+ blockObjects: ObjectSchemaType[]
13602
+ decorators: BlockDecoratorDefinition[]
13603
+ inlineObjects: ObjectSchemaType[]
13604
+ portableText: ArraySchemaType<PortableTextBlock>
13605
+ span: ObjectSchemaType
13606
+ styles: BlockStyleDefinition[]
13607
+ lists: BlockListDefinition[]
13608
+ }
13609
+
13563
13610
  declare interface PortableTextSlateEditor extends ReactEditor {
13564
13611
  _key: 'editor'
13565
13612
  _type: 'editor'
@@ -1,6 +1,10 @@
1
1
  import type {Patch} from '@portabletext/patches'
2
- import {KeyedSegment, PortableTextBlock} from '@sanity/types'
3
2
  import type {
3
+ ArraySchemaType,
4
+ BlockDecoratorDefinition,
5
+ BlockListDefinition,
6
+ BlockStyleDefinition,
7
+ ObjectSchemaType,
4
8
  Path,
5
9
  PortableTextChild,
6
10
  PortableTextListBlock,
@@ -8,6 +12,7 @@ import type {
8
12
  PortableTextSpan,
9
13
  PortableTextTextBlock,
10
14
  } from '@sanity/types'
15
+ import {KeyedSegment, PortableTextBlock} from '@sanity/types'
11
16
  import type {
12
17
  FocusEvent as FocusEvent_2,
13
18
  KeyboardEvent as KeyboardEvent_2,
@@ -8778,6 +8783,7 @@ declare const editorMachine: StateMachine<
8778
8783
  {
8779
8784
  behaviors: Set<Behavior>
8780
8785
  converters: Set<Converter>
8786
+ getLegacySchema: () => PortableTextMemberSchemaTypes
8781
8787
  keyGenerator: () => string
8782
8788
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
8783
8789
  schema: EditorSchema
@@ -9011,6 +9017,7 @@ declare const editorMachine: StateMachine<
9011
9017
  {
9012
9018
  behaviors?: Array<Behavior>
9013
9019
  converters?: Array<Converter>
9020
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9014
9021
  keyGenerator: () => string
9015
9022
  maxBlocks?: number
9016
9023
  readOnly?: boolean
@@ -9096,6 +9103,7 @@ declare const editorMachine: StateMachine<
9096
9103
  input: {
9097
9104
  behaviors?: Array<Behavior>
9098
9105
  converters?: Array<Converter>
9106
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9099
9107
  keyGenerator: () => string
9100
9108
  maxBlocks?: number
9101
9109
  readOnly?: boolean
@@ -9107,6 +9115,7 @@ declare const editorMachine: StateMachine<
9107
9115
  {
9108
9116
  behaviors: Set<Behavior>
9109
9117
  converters: Set<Converter>
9118
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9110
9119
  keyGenerator: () => string
9111
9120
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9112
9121
  schema: EditorSchema
@@ -9386,6 +9395,7 @@ declare const editorMachine: StateMachine<
9386
9395
  }) => {
9387
9396
  behaviors: Set<Behavior>
9388
9397
  converters: Set<Converter>
9398
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9389
9399
  keyGenerator: () => string
9390
9400
  pendingEvents: never[]
9391
9401
  schema: EditorSchema
@@ -9400,6 +9410,7 @@ declare const editorMachine: StateMachine<
9400
9410
  {
9401
9411
  behaviors: Set<Behavior>
9402
9412
  converters: Set<Converter>
9413
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9403
9414
  keyGenerator: () => string
9404
9415
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9405
9416
  schema: EditorSchema
@@ -9603,6 +9614,7 @@ declare const editorMachine: StateMachine<
9603
9614
  {
9604
9615
  behaviors: Set<Behavior>
9605
9616
  converters: Set<Converter>
9617
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9606
9618
  keyGenerator: () => string
9607
9619
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9608
9620
  schema: EditorSchema
@@ -9805,6 +9817,7 @@ declare const editorMachine: StateMachine<
9805
9817
  {
9806
9818
  behaviors: Set<Behavior>
9807
9819
  converters: Set<Converter>
9820
+ getLegacySchema: () => PortableTextMemberSchemaTypes
9808
9821
  keyGenerator: () => string
9809
9822
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
9810
9823
  schema: EditorSchema
@@ -10010,6 +10023,7 @@ declare const editorMachine: StateMachine<
10010
10023
  {
10011
10024
  behaviors: Set<Behavior>
10012
10025
  converters: Set<Converter>
10026
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10013
10027
  keyGenerator: () => string
10014
10028
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10015
10029
  schema: EditorSchema
@@ -10214,6 +10228,7 @@ declare const editorMachine: StateMachine<
10214
10228
  {
10215
10229
  behaviors: Set<Behavior>
10216
10230
  converters: Set<Converter>
10231
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10217
10232
  keyGenerator: () => string
10218
10233
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10219
10234
  schema: EditorSchema
@@ -10418,6 +10433,7 @@ declare const editorMachine: StateMachine<
10418
10433
  {
10419
10434
  behaviors: Set<Behavior>
10420
10435
  converters: Set<Converter>
10436
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10421
10437
  keyGenerator: () => string
10422
10438
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10423
10439
  schema: EditorSchema
@@ -10573,6 +10589,7 @@ declare const editorMachine: StateMachine<
10573
10589
  {
10574
10590
  behaviors: Set<Behavior>
10575
10591
  converters: Set<Converter>
10592
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10576
10593
  keyGenerator: () => string
10577
10594
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10578
10595
  schema: EditorSchema
@@ -10777,6 +10794,7 @@ declare const editorMachine: StateMachine<
10777
10794
  {
10778
10795
  behaviors: Set<Behavior>
10779
10796
  converters: Set<Converter>
10797
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10780
10798
  keyGenerator: () => string
10781
10799
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10782
10800
  schema: EditorSchema
@@ -10980,6 +10998,7 @@ declare const editorMachine: StateMachine<
10980
10998
  {
10981
10999
  behaviors: Set<Behavior>
10982
11000
  converters: Set<Converter>
11001
+ getLegacySchema: () => PortableTextMemberSchemaTypes
10983
11002
  keyGenerator: () => string
10984
11003
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
10985
11004
  schema: EditorSchema
@@ -11182,6 +11201,7 @@ declare const editorMachine: StateMachine<
11182
11201
  {
11183
11202
  behaviors: Set<Behavior>
11184
11203
  converters: Set<Converter>
11204
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11185
11205
  keyGenerator: () => string
11186
11206
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11187
11207
  schema: EditorSchema
@@ -11391,6 +11411,7 @@ declare const editorMachine: StateMachine<
11391
11411
  {
11392
11412
  behaviors: Set<Behavior>
11393
11413
  converters: Set<Converter>
11414
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11394
11415
  keyGenerator: () => string
11395
11416
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11396
11417
  schema: EditorSchema
@@ -11594,6 +11615,7 @@ declare const editorMachine: StateMachine<
11594
11615
  {
11595
11616
  behaviors: Set<Behavior>
11596
11617
  converters: Set<Converter>
11618
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11597
11619
  keyGenerator: () => string
11598
11620
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11599
11621
  schema: EditorSchema
@@ -11754,6 +11776,7 @@ declare const editorMachine: StateMachine<
11754
11776
  {
11755
11777
  behaviors: Set<Behavior>
11756
11778
  converters: Set<Converter>
11779
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11757
11780
  keyGenerator: () => string
11758
11781
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11759
11782
  schema: EditorSchema
@@ -11911,6 +11934,7 @@ declare const editorMachine: StateMachine<
11911
11934
  {
11912
11935
  behaviors: Set<Behavior>
11913
11936
  converters: Set<Converter>
11937
+ getLegacySchema: () => PortableTextMemberSchemaTypes
11914
11938
  keyGenerator: () => string
11915
11939
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
11916
11940
  schema: EditorSchema
@@ -12080,6 +12104,7 @@ declare const editorMachine: StateMachine<
12080
12104
  {
12081
12105
  behaviors: Set<Behavior>
12082
12106
  converters: Set<Converter>
12107
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12083
12108
  keyGenerator: () => string
12084
12109
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12085
12110
  schema: EditorSchema
@@ -12116,6 +12141,7 @@ declare const editorMachine: StateMachine<
12116
12141
  {
12117
12142
  behaviors: Set<Behavior>
12118
12143
  converters: Set<Converter>
12144
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12119
12145
  keyGenerator: () => string
12120
12146
  pendingEvents: Array<
12121
12147
  InternalPatchEvent | MutationEvent
@@ -12151,6 +12177,7 @@ declare const editorMachine: StateMachine<
12151
12177
  {
12152
12178
  behaviors: Set<Behavior>
12153
12179
  converters: Set<Converter>
12180
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12154
12181
  keyGenerator: () => string
12155
12182
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12156
12183
  schema: EditorSchema
@@ -12185,6 +12212,7 @@ declare const editorMachine: StateMachine<
12185
12212
  {
12186
12213
  behaviors: Set<Behavior>
12187
12214
  converters: Set<Converter>
12215
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12188
12216
  keyGenerator: () => string
12189
12217
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12190
12218
  schema: EditorSchema
@@ -12219,6 +12247,7 @@ declare const editorMachine: StateMachine<
12219
12247
  {
12220
12248
  behaviors: Set<Behavior>
12221
12249
  converters: Set<Converter>
12250
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12222
12251
  keyGenerator: () => string
12223
12252
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12224
12253
  schema: EditorSchema
@@ -12383,6 +12412,7 @@ declare const editorMachine: StateMachine<
12383
12412
  {
12384
12413
  behaviors: Set<Behavior>
12385
12414
  converters: Set<Converter>
12415
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12386
12416
  keyGenerator: () => string
12387
12417
  pendingEvents: Array<
12388
12418
  InternalPatchEvent | MutationEvent
@@ -12574,6 +12604,7 @@ declare const editorMachine: StateMachine<
12574
12604
  {
12575
12605
  behaviors: Set<Behavior>
12576
12606
  converters: Set<Converter>
12607
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12577
12608
  keyGenerator: () => string
12578
12609
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12579
12610
  schema: EditorSchema
@@ -12846,6 +12877,7 @@ declare const editorMachine: StateMachine<
12846
12877
  {
12847
12878
  behaviors: Set<Behavior>
12848
12879
  converters: Set<Converter>
12880
+ getLegacySchema: () => PortableTextMemberSchemaTypes
12849
12881
  keyGenerator: () => string
12850
12882
  pendingEvents: Array<InternalPatchEvent | MutationEvent>
12851
12883
  schema: EditorSchema
@@ -13560,6 +13592,21 @@ declare type PickFromUnion_2<
13560
13592
  TPickedTags extends TUnion[TTagKey],
13561
13593
  > = TUnion extends Record<TTagKey, TPickedTags> ? TUnion : never
13562
13594
 
13595
+ /** @beta */
13596
+ declare type PortableTextMemberSchemaTypes = {
13597
+ annotations: (ObjectSchemaType & {
13598
+ i18nTitleKey?: string
13599
+ })[]
13600
+ block: ObjectSchemaType
13601
+ blockObjects: ObjectSchemaType[]
13602
+ decorators: BlockDecoratorDefinition[]
13603
+ inlineObjects: ObjectSchemaType[]
13604
+ portableText: ArraySchemaType<PortableTextBlock>
13605
+ span: ObjectSchemaType
13606
+ styles: BlockStyleDefinition[]
13607
+ lists: BlockListDefinition[]
13608
+ }
13609
+
13563
13610
  declare interface PortableTextSlateEditor extends ReactEditor {
13564
13611
  _key: 'editor'
13565
13612
  _type: 'editor'