@wordpress/core-data 7.42.0 → 7.43.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.
Files changed (97) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/private-actions.cjs +10 -0
  3. package/build/private-actions.cjs.map +2 -2
  4. package/build/private-selectors.cjs +20 -3
  5. package/build/private-selectors.cjs.map +2 -2
  6. package/build/queried-data/get-query-parts.cjs +8 -7
  7. package/build/queried-data/get-query-parts.cjs.map +2 -2
  8. package/build/queried-data/reducer.cjs +15 -9
  9. package/build/queried-data/reducer.cjs.map +2 -2
  10. package/build/queried-data/selectors.cjs +3 -6
  11. package/build/queried-data/selectors.cjs.map +2 -2
  12. package/build/reducer.cjs +16 -3
  13. package/build/reducer.cjs.map +2 -2
  14. package/build/resolvers.cjs +16 -8
  15. package/build/resolvers.cjs.map +2 -2
  16. package/build/selectors.cjs +16 -8
  17. package/build/selectors.cjs.map +2 -2
  18. package/build/utils/crdt-blocks.cjs +49 -2
  19. package/build/utils/crdt-blocks.cjs.map +2 -2
  20. package/build/utils/crdt-text.cjs +52 -0
  21. package/build/utils/crdt-text.cjs.map +7 -0
  22. package/build/utils/crdt.cjs +5 -0
  23. package/build/utils/crdt.cjs.map +2 -2
  24. package/build/utils/index.cjs +0 -3
  25. package/build/utils/index.cjs.map +2 -2
  26. package/build-module/private-actions.mjs +9 -0
  27. package/build-module/private-actions.mjs.map +2 -2
  28. package/build-module/private-selectors.mjs +19 -3
  29. package/build-module/private-selectors.mjs.map +2 -2
  30. package/build-module/queried-data/get-query-parts.mjs +8 -7
  31. package/build-module/queried-data/get-query-parts.mjs.map +2 -2
  32. package/build-module/queried-data/reducer.mjs +15 -9
  33. package/build-module/queried-data/reducer.mjs.map +2 -2
  34. package/build-module/queried-data/selectors.mjs +3 -6
  35. package/build-module/queried-data/selectors.mjs.map +2 -2
  36. package/build-module/reducer.mjs +14 -2
  37. package/build-module/reducer.mjs.map +2 -2
  38. package/build-module/resolvers.mjs +14 -7
  39. package/build-module/resolvers.mjs.map +2 -2
  40. package/build-module/selectors.mjs +16 -9
  41. package/build-module/selectors.mjs.map +2 -2
  42. package/build-module/utils/crdt-blocks.mjs +48 -2
  43. package/build-module/utils/crdt-blocks.mjs.map +2 -2
  44. package/build-module/utils/crdt-text.mjs +26 -0
  45. package/build-module/utils/crdt-text.mjs.map +7 -0
  46. package/build-module/utils/crdt.mjs +6 -0
  47. package/build-module/utils/crdt.mjs.map +2 -2
  48. package/build-module/utils/index.mjs +8 -10
  49. package/build-module/utils/index.mjs.map +2 -2
  50. package/build-types/index.d.ts.map +1 -1
  51. package/build-types/private-actions.d.ts +10 -0
  52. package/build-types/private-actions.d.ts.map +1 -1
  53. package/build-types/private-selectors.d.ts +11 -4
  54. package/build-types/private-selectors.d.ts.map +1 -1
  55. package/build-types/queried-data/get-query-parts.d.ts +11 -19
  56. package/build-types/queried-data/get-query-parts.d.ts.map +1 -1
  57. package/build-types/queried-data/reducer.d.ts +11 -5
  58. package/build-types/queried-data/reducer.d.ts.map +1 -1
  59. package/build-types/queried-data/selectors.d.ts.map +1 -1
  60. package/build-types/reducer.d.ts +11 -0
  61. package/build-types/reducer.d.ts.map +1 -1
  62. package/build-types/resolvers.d.ts +3 -0
  63. package/build-types/resolvers.d.ts.map +1 -1
  64. package/build-types/selectors.d.ts +1 -0
  65. package/build-types/selectors.d.ts.map +1 -1
  66. package/build-types/utils/crdt-blocks.d.ts +11 -0
  67. package/build-types/utils/crdt-blocks.d.ts.map +1 -1
  68. package/build-types/utils/crdt-text.d.ts +16 -0
  69. package/build-types/utils/crdt-text.d.ts.map +1 -0
  70. package/build-types/utils/crdt.d.ts.map +1 -1
  71. package/build-types/utils/index.d.ts +0 -1
  72. package/package.json +18 -18
  73. package/src/private-actions.js +18 -0
  74. package/src/private-selectors.ts +37 -4
  75. package/src/queried-data/get-query-parts.js +14 -20
  76. package/src/queried-data/reducer.js +28 -15
  77. package/src/queried-data/selectors.js +4 -14
  78. package/src/queried-data/test/get-query-parts.js +11 -11
  79. package/src/queried-data/test/reducer.js +78 -8
  80. package/src/queried-data/test/selectors.js +22 -9
  81. package/src/reducer.js +20 -0
  82. package/src/resolvers.js +23 -7
  83. package/src/selectors.ts +20 -19
  84. package/src/utils/crdt-blocks.ts +83 -2
  85. package/src/utils/crdt-text.ts +43 -0
  86. package/src/utils/crdt.ts +10 -0
  87. package/src/utils/index.js +0 -1
  88. package/src/utils/test/crdt-blocks.ts +53 -0
  89. package/src/utils/test/crdt.ts +109 -1
  90. package/build/utils/is-raw-attribute.cjs +0 -29
  91. package/build/utils/is-raw-attribute.cjs.map +0 -7
  92. package/build-module/utils/is-raw-attribute.mjs +0 -8
  93. package/build-module/utils/is-raw-attribute.mjs.map +0 -7
  94. package/build-types/utils/is-raw-attribute.d.ts +0 -10
  95. package/build-types/utils/is-raw-attribute.d.ts.map +0 -1
  96. package/src/utils/is-raw-attribute.js +0 -11
  97. package/src/utils/test/is-raw-attribute.js +0 -22
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/crdt.ts"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6/index.js';\n\n/**\n * WordPress dependencies\n */\n// @ts-expect-error No exported types.\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\nimport {\n\ttype CRDTDoc,\n\ttype ObjectData,\n\ttype SyncConfig,\n\tY,\n} from '@wordpress/sync';\n\n/**\n * Internal dependencies\n */\nimport { BaseAwareness } from '../awareness/base-awareness';\nimport {\n\tmergeCrdtBlocks,\n\tmergeRichTextUpdate,\n\ttype Block,\n\ttype YBlock,\n\ttype YBlocks,\n} from './crdt-blocks';\nimport { type Post } from '../entity-types/post';\nimport { CRDT_DOC_META_PERSISTENCE_KEY, CRDT_RECORD_MAP_KEY } from '../sync';\nimport type { WPSelection } from '../types';\nimport {\n\tgetSelectionHistory,\n\tgetShiftedSelection,\n\tupdateSelectionHistory,\n} from './crdt-selection';\nimport {\n\tcreateYMap,\n\tgetRootMap,\n\tisYMap,\n\ttype YMapRecord,\n\ttype YMapWrap,\n} from './crdt-utils';\n\n// Changes that can be applied to a post entity record.\nexport type PostChanges = Partial< Post > & {\n\tblocks?: Block[];\n\tcontent?: Post[ 'content' ] | string;\n\texcerpt?: Post[ 'excerpt' ] | string;\n\tselection?: WPSelection;\n\ttitle?: Post[ 'title' ] | string;\n};\n\n// A post record as represented in the CRDT document (Y.Map).\nexport interface YPostRecord extends YMapRecord {\n\tauthor: number;\n\t// Blocks are undefined when they need to be re-parsed from content.\n\tblocks: YBlocks | undefined;\n\tcontent: Y.Text;\n\tcategories: number[];\n\tcomment_status: string;\n\tdate: string | null;\n\texcerpt: Y.Text;\n\tfeatured_media: number;\n\tformat: string;\n\tmeta: YMapWrap< YMapRecord >;\n\tping_status: string;\n\tslug: string;\n\tstatus: string;\n\tsticky: boolean;\n\ttags: number[];\n\ttemplate: string;\n\ttitle: Y.Text;\n}\n\nexport const POST_META_KEY_FOR_CRDT_DOC_PERSISTENCE = '_crdt_document';\n\n// Post meta keys that should *not* be synced.\nconst disallowedPostMetaKeys = new Set< string >( [\n\tPOST_META_KEY_FOR_CRDT_DOC_PERSISTENCE,\n] );\n\n/**\n * Given a set of local changes to a generic entity record, apply those changes\n * to the local Y.Doc.\n *\n * @param {CRDTDoc} ydoc\n * @param {Partial< ObjectData >} changes\n * @return {void}\n */\nfunction defaultApplyChangesToCRDTDoc(\n\tydoc: CRDTDoc,\n\tchanges: ObjectData\n): void {\n\tconst ymap = getRootMap( ydoc, CRDT_RECORD_MAP_KEY );\n\n\tObject.entries( changes ).forEach( ( [ key, newValue ] ) => {\n\t\t// Cannot serialize function values, so cannot sync them.\n\t\tif ( 'function' === typeof newValue ) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( key ) {\n\t\t\t// Add support for additional data types here.\n\n\t\t\tdefault: {\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tupdateMapValue( ymap, key, currentValue, newValue );\n\t\t\t}\n\t\t}\n\t} );\n}\n\n/**\n * Given a set of local changes to a post record, apply those changes to the\n * local Y.Doc.\n *\n * @param {CRDTDoc} ydoc\n * @param {PostChanges} changes\n * @param {Set<string>} syncedProperties\n * @return {void}\n */\nexport function applyPostChangesToCRDTDoc(\n\tydoc: CRDTDoc,\n\tchanges: PostChanges,\n\tsyncedProperties: Set< string >\n): void {\n\tconst ymap = getRootMap< YPostRecord >( ydoc, CRDT_RECORD_MAP_KEY );\n\n\tObject.keys( changes ).forEach( ( key ) => {\n\t\tif ( ! syncedProperties.has( key ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst newValue = changes[ key ];\n\n\t\t// Cannot serialize function values, so cannot sync them.\n\t\tif ( 'function' === typeof newValue ) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( key ) {\n\t\t\tcase 'blocks': {\n\t\t\t\t// Blocks are undefined when they need to be re-parsed from content.\n\t\t\t\tif ( ! newValue ) {\n\t\t\t\t\t// Set to undefined instead of deleting the key. This is important\n\t\t\t\t\t// since we iterate over the Y.Map keys in getPostChangesFromCRDTDoc.\n\t\t\t\t\tymap.set( key, undefined );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tlet currentBlocks = ymap.get( key );\n\n\t\t\t\t// Initialize.\n\t\t\t\tif ( ! ( currentBlocks instanceof Y.Array ) ) {\n\t\t\t\t\tcurrentBlocks = new Y.Array< YBlock >();\n\t\t\t\t\tymap.set( key, currentBlocks );\n\t\t\t\t}\n\n\t\t\t\t// Block changes from typing are bundled with a 'selection' update.\n\t\t\t\t// Pass the resulting cursor position to the mergeCrdtBlocks function.\n\t\t\t\tconst cursorPosition =\n\t\t\t\t\tchanges.selection?.selectionStart?.offset ?? null;\n\n\t\t\t\t// Merge blocks does not need `setValue` because it is operating on a\n\t\t\t\t// Yjs type that is already in the Y.Doc.\n\t\t\t\tmergeCrdtBlocks( currentBlocks, newValue, cursorPosition );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tcase 'content':\n\t\t\tcase 'excerpt':\n\t\t\tcase 'title': {\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tlet rawValue = getRawValue( newValue );\n\n\t\t\t\t// Copy logic from prePersistPostType to ensure that the \"Auto\n\t\t\t\t// Draft\" template title is not synced.\n\t\t\t\tif (\n\t\t\t\t\tkey === 'title' &&\n\t\t\t\t\t! currentValue?.toString() &&\n\t\t\t\t\t'Auto Draft' === rawValue\n\t\t\t\t) {\n\t\t\t\t\trawValue = '';\n\t\t\t\t}\n\n\t\t\t\tif ( currentValue instanceof Y.Text ) {\n\t\t\t\t\tmergeRichTextUpdate( currentValue, rawValue ?? '' );\n\t\t\t\t} else {\n\t\t\t\t\tconst newYText = new Y.Text( rawValue ?? '' );\n\t\t\t\t\tymap.set( key, newYText );\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// \"Meta\" is overloaded term; here, it refers to post meta.\n\t\t\tcase 'meta': {\n\t\t\t\tlet metaMap = ymap.get( 'meta' );\n\n\t\t\t\t// Initialize.\n\t\t\t\tif ( ! isYMap( metaMap ) ) {\n\t\t\t\t\tmetaMap = createYMap< YMapRecord >();\n\t\t\t\t\tymap.set( 'meta', metaMap );\n\t\t\t\t}\n\n\t\t\t\t// Iterate over each meta property in the new value and merge it if it\n\t\t\t\t// should be synced.\n\t\t\t\tObject.entries( newValue ?? {} ).forEach(\n\t\t\t\t\t( [ metaKey, metaValue ] ) => {\n\t\t\t\t\t\tif ( disallowedPostMetaKeys.has( metaKey ) ) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tupdateMapValue(\n\t\t\t\t\t\t\tmetaMap,\n\t\t\t\t\t\t\tmetaKey,\n\t\t\t\t\t\t\tmetaMap.get( metaKey ), // current value in CRDT\n\t\t\t\t\t\t\tmetaValue // new value from changes\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tcase 'slug': {\n\t\t\t\t// Do not sync an empty slug. This indicates that the post is using\n\t\t\t\t// the default auto-generated slug.\n\t\t\t\tif ( ! newValue ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tupdateMapValue( ymap, key, currentValue, newValue );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// Add support for additional properties here.\n\n\t\t\tdefault: {\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tupdateMapValue( ymap, key, currentValue, newValue );\n\t\t\t}\n\t\t}\n\t} );\n\n\t// Process changes that we don't want to persist to the CRDT document.\n\tif ( changes.selection ) {\n\t\tconst selection = changes.selection;\n\t\t// Persist selection changes at the end of the current event loop.\n\t\t// This allows undo meta to be saved with the current selection before\n\t\t// it is overwritten by the new selection from Gutenberg.\n\t\t// Without this, selection history will already contain the latest\n\t\t// selection (after this change) when the undo stack is saved.\n\t\tsetTimeout( () => {\n\t\t\tupdateSelectionHistory( ydoc, selection );\n\t\t}, 0 );\n\t}\n}\n\nfunction defaultGetChangesFromCRDTDoc( crdtDoc: CRDTDoc ): ObjectData {\n\treturn getRootMap( crdtDoc, CRDT_RECORD_MAP_KEY ).toJSON();\n}\n\n/**\n * Given a local Y.Doc that *may* contain changes from remote peers, compare\n * against the local record and determine if there are changes (edits) we want\n * to dispatch.\n *\n * @param {CRDTDoc} ydoc\n * @param {Post} editedRecord\n * @param {Set<string>} syncedProperties\n * @return {Partial<PostChanges>} The changes that should be applied to the local record.\n */\nexport function getPostChangesFromCRDTDoc(\n\tydoc: CRDTDoc,\n\teditedRecord: Post,\n\tsyncedProperties: Set< string >\n): PostChanges {\n\tconst ymap = getRootMap< YPostRecord >( ydoc, CRDT_RECORD_MAP_KEY );\n\n\tlet allowedMetaChanges: Post[ 'meta' ] = {};\n\n\tconst changes = Object.fromEntries(\n\t\tObject.entries( ymap.toJSON() ).filter( ( [ key, newValue ] ) => {\n\t\t\tif ( ! syncedProperties.has( key ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst currentValue = editedRecord[ key ];\n\n\t\t\tswitch ( key ) {\n\t\t\t\tcase 'blocks': {\n\t\t\t\t\t// When we are passed a persisted CRDT document, make a special\n\t\t\t\t\t// comparison of the content and blocks.\n\t\t\t\t\t//\n\t\t\t\t\t// When other fields (besides `blocks`) are mutated outside the block\n\t\t\t\t\t// editor, the change is caught by an equality check (see other cases\n\t\t\t\t\t// in this `switch` statement). As a transient property, `blocks`\n\t\t\t\t\t// cannot be directly mutated outside the block editor -- only\n\t\t\t\t\t// `content` can.\n\t\t\t\t\t//\n\t\t\t\t\t// Therefore, for this special comparison, we serialize the `blocks`\n\t\t\t\t\t// from the persisted CRDT document and compare that to the content\n\t\t\t\t\t// from the persisted record. If they differ, we know that the content\n\t\t\t\t\t// in the database has changed, and therefore the blocks have changed.\n\t\t\t\t\t//\n\t\t\t\t\t// We cannot directly compare the `blocks` from the CRDT document to\n\t\t\t\t\t// the `blocks` derived from the `content` in the persisted record,\n\t\t\t\t\t// because the latter will have different client IDs.\n\t\t\t\t\tif (\n\t\t\t\t\t\tydoc.meta?.get( CRDT_DOC_META_PERSISTENCE_KEY ) &&\n\t\t\t\t\t\teditedRecord.content\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst blocksJson = ymap.get( 'blocks' )?.toJSON() ?? [];\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t__unstableSerializeAndClean( blocksJson ).trim() !==\n\t\t\t\t\t\t\tgetRawValue( editedRecord.content )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tcase 'date': {\n\t\t\t\t\t// Do not overwrite a \"floating\" date. Borrowing logic from the\n\t\t\t\t\t// isEditedPostDateFloating selector.\n\t\t\t\t\tconst currentDateIsFloating =\n\t\t\t\t\t\tnull === currentValue ||\n\t\t\t\t\t\teditedRecord.modified === currentValue;\n\n\t\t\t\t\tif ( currentDateIsFloating ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn haveValuesChanged( currentValue, newValue );\n\t\t\t\t}\n\n\t\t\t\tcase 'meta': {\n\t\t\t\t\tallowedMetaChanges = Object.fromEntries(\n\t\t\t\t\t\tObject.entries( newValue ?? {} ).filter(\n\t\t\t\t\t\t\t( [ metaKey ] ) =>\n\t\t\t\t\t\t\t\t! disallowedPostMetaKeys.has( metaKey )\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\n\t\t\t\t\t// Merge the allowed meta changes with the current meta values since\n\t\t\t\t\t// not all meta properties are synced.\n\t\t\t\t\tconst mergedValue = {\n\t\t\t\t\t\t...( currentValue as PostChanges[ 'meta' ] ),\n\t\t\t\t\t\t...allowedMetaChanges,\n\t\t\t\t\t};\n\n\t\t\t\t\treturn haveValuesChanged( currentValue, mergedValue );\n\t\t\t\t}\n\n\t\t\t\tcase 'status': {\n\t\t\t\t\t// Do not sync an invalid status.\n\t\t\t\t\tif ( 'auto-draft' === newValue ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn haveValuesChanged( currentValue, newValue );\n\t\t\t\t}\n\n\t\t\t\tcase 'content':\n\t\t\t\tcase 'excerpt':\n\t\t\t\tcase 'title': {\n\t\t\t\t\treturn haveValuesChanged(\n\t\t\t\t\t\tgetRawValue( currentValue ),\n\t\t\t\t\t\tnewValue\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Add support for additional data types here.\n\n\t\t\t\tdefault: {\n\t\t\t\t\treturn haveValuesChanged( currentValue, newValue );\n\t\t\t\t}\n\t\t\t}\n\t\t} )\n\t);\n\n\t// Meta changes must be merged with the edited record since not all meta\n\t// properties are synced.\n\tif ( 'object' === typeof changes.meta ) {\n\t\tchanges.meta = {\n\t\t\t...editedRecord.meta,\n\t\t\t...allowedMetaChanges,\n\t\t};\n\t}\n\n\t// When remote content changes are detected, recalculate the local user's\n\t// selection using Y.RelativePosition to account for text shifts. The ydoc\n\t// has already been updated with remote content at this point, so converting\n\t// relative positions to absolute gives corrected offsets. Including the\n\t// selection in PostChanges ensures it dispatches atomically with content.\n\tconst selectionHistory = getSelectionHistory( ydoc );\n\tconst shiftedSelection = getShiftedSelection( ydoc, selectionHistory );\n\tif ( shiftedSelection ) {\n\t\tchanges.selection = {\n\t\t\t...shiftedSelection,\n\t\t\tinitialPosition: 0,\n\t\t};\n\t}\n\n\treturn changes;\n}\n\n/**\n * This default sync config can be used for entities that are flat maps of\n * primitive values and do not require custom logic to merge changes.\n */\nexport const defaultSyncConfig: SyncConfig = {\n\tapplyChangesToCRDTDoc: defaultApplyChangesToCRDTDoc,\n\tcreateAwareness: ( ydoc: CRDTDoc ) => new BaseAwareness( ydoc ),\n\tgetChangesFromCRDTDoc: defaultGetChangesFromCRDTDoc,\n};\n\n/**\n * Extract the raw string value from a property that may be a string or an object\n * with a `raw` property (`RenderedText`).\n *\n * @param {unknown} value The value to extract from.\n * @return {string|undefined} The raw string value, or undefined if it could not be determined.\n */\nfunction getRawValue( value?: unknown ): string | undefined {\n\t// Value may be a string property or a nested object with a `raw` property.\n\tif ( 'string' === typeof value ) {\n\t\treturn value;\n\t}\n\n\tif (\n\t\tvalue &&\n\t\t'object' === typeof value &&\n\t\t'raw' in value &&\n\t\t'string' === typeof value.raw\n\t) {\n\t\treturn value.raw;\n\t}\n\n\treturn undefined;\n}\n\nfunction haveValuesChanged< ValueType >(\n\tcurrentValue: ValueType | undefined,\n\tnewValue: ValueType | undefined\n): boolean {\n\treturn ! fastDeepEqual( currentValue, newValue );\n}\n\nfunction updateMapValue< T extends YMapRecord, K extends keyof T >(\n\tmap: YMapWrap< T >,\n\tkey: K,\n\tcurrentValue: T[ K ] | undefined,\n\tnewValue: T[ K ] | undefined\n): void {\n\tif ( undefined === newValue ) {\n\t\tmap.delete( key );\n\t\treturn;\n\t}\n\n\tif ( haveValuesChanged< T[ K ] >( currentValue, newValue ) ) {\n\t\tmap.set( key, newValue );\n\t}\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6/index.js';\n\n/**\n * WordPress dependencies\n */\n// @ts-expect-error No exported types.\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\nimport {\n\ttype CRDTDoc,\n\ttype ObjectData,\n\ttype SyncConfig,\n\tY,\n} from '@wordpress/sync';\n\n/**\n * Internal dependencies\n */\nimport { BaseAwareness } from '../awareness/base-awareness';\nimport {\n\tdeserializeBlockAttributes,\n\tmergeCrdtBlocks,\n\tmergeRichTextUpdate,\n\ttype Block,\n\ttype YBlock,\n\ttype YBlocks,\n} from './crdt-blocks';\nimport { type Post } from '../entity-types/post';\nimport { CRDT_DOC_META_PERSISTENCE_KEY, CRDT_RECORD_MAP_KEY } from '../sync';\nimport type { WPSelection } from '../types';\nimport {\n\tgetSelectionHistory,\n\tgetShiftedSelection,\n\tupdateSelectionHistory,\n} from './crdt-selection';\nimport {\n\tcreateYMap,\n\tgetRootMap,\n\tisYMap,\n\ttype YMapRecord,\n\ttype YMapWrap,\n} from './crdt-utils';\n\n// Changes that can be applied to a post entity record.\nexport type PostChanges = Partial< Post > & {\n\tblocks?: Block[];\n\tcontent?: Post[ 'content' ] | string;\n\texcerpt?: Post[ 'excerpt' ] | string;\n\tselection?: WPSelection;\n\ttitle?: Post[ 'title' ] | string;\n};\n\n// A post record as represented in the CRDT document (Y.Map).\nexport interface YPostRecord extends YMapRecord {\n\tauthor: number;\n\t// Blocks are undefined when they need to be re-parsed from content.\n\tblocks: YBlocks | undefined;\n\tcontent: Y.Text;\n\tcategories: number[];\n\tcomment_status: string;\n\tdate: string | null;\n\texcerpt: Y.Text;\n\tfeatured_media: number;\n\tformat: string;\n\tmeta: YMapWrap< YMapRecord >;\n\tping_status: string;\n\tslug: string;\n\tstatus: string;\n\tsticky: boolean;\n\ttags: number[];\n\ttemplate: string;\n\ttitle: Y.Text;\n}\n\nexport const POST_META_KEY_FOR_CRDT_DOC_PERSISTENCE = '_crdt_document';\n\n// Post meta keys that should *not* be synced.\nconst disallowedPostMetaKeys = new Set< string >( [\n\tPOST_META_KEY_FOR_CRDT_DOC_PERSISTENCE,\n] );\n\n/**\n * Given a set of local changes to a generic entity record, apply those changes\n * to the local Y.Doc.\n *\n * @param {CRDTDoc} ydoc\n * @param {Partial< ObjectData >} changes\n * @return {void}\n */\nfunction defaultApplyChangesToCRDTDoc(\n\tydoc: CRDTDoc,\n\tchanges: ObjectData\n): void {\n\tconst ymap = getRootMap( ydoc, CRDT_RECORD_MAP_KEY );\n\n\tObject.entries( changes ).forEach( ( [ key, newValue ] ) => {\n\t\t// Cannot serialize function values, so cannot sync them.\n\t\tif ( 'function' === typeof newValue ) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( key ) {\n\t\t\t// Add support for additional data types here.\n\n\t\t\tdefault: {\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tupdateMapValue( ymap, key, currentValue, newValue );\n\t\t\t}\n\t\t}\n\t} );\n}\n\n/**\n * Given a set of local changes to a post record, apply those changes to the\n * local Y.Doc.\n *\n * @param {CRDTDoc} ydoc\n * @param {PostChanges} changes\n * @param {Set<string>} syncedProperties\n * @return {void}\n */\nexport function applyPostChangesToCRDTDoc(\n\tydoc: CRDTDoc,\n\tchanges: PostChanges,\n\tsyncedProperties: Set< string >\n): void {\n\tconst ymap = getRootMap< YPostRecord >( ydoc, CRDT_RECORD_MAP_KEY );\n\n\tObject.keys( changes ).forEach( ( key ) => {\n\t\tif ( ! syncedProperties.has( key ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst newValue = changes[ key ];\n\n\t\t// Cannot serialize function values, so cannot sync them.\n\t\tif ( 'function' === typeof newValue ) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( key ) {\n\t\t\tcase 'blocks': {\n\t\t\t\t// Blocks are undefined when they need to be re-parsed from content.\n\t\t\t\tif ( ! newValue ) {\n\t\t\t\t\t// Set to undefined instead of deleting the key. This is important\n\t\t\t\t\t// since we iterate over the Y.Map keys in getPostChangesFromCRDTDoc.\n\t\t\t\t\tymap.set( key, undefined );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tlet currentBlocks = ymap.get( key );\n\n\t\t\t\t// Initialize.\n\t\t\t\tif ( ! ( currentBlocks instanceof Y.Array ) ) {\n\t\t\t\t\tcurrentBlocks = new Y.Array< YBlock >();\n\t\t\t\t\tymap.set( key, currentBlocks );\n\t\t\t\t}\n\n\t\t\t\t// Block changes from typing are bundled with a 'selection' update.\n\t\t\t\t// Pass the resulting cursor position to the mergeCrdtBlocks function.\n\t\t\t\tconst cursorPosition =\n\t\t\t\t\tchanges.selection?.selectionStart?.offset ?? null;\n\n\t\t\t\t// Merge blocks does not need `setValue` because it is operating on a\n\t\t\t\t// Yjs type that is already in the Y.Doc.\n\t\t\t\tmergeCrdtBlocks( currentBlocks, newValue, cursorPosition );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tcase 'content':\n\t\t\tcase 'excerpt':\n\t\t\tcase 'title': {\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tlet rawValue = getRawValue( newValue );\n\n\t\t\t\t// Copy logic from prePersistPostType to ensure that the \"Auto\n\t\t\t\t// Draft\" template title is not synced.\n\t\t\t\tif (\n\t\t\t\t\tkey === 'title' &&\n\t\t\t\t\t! currentValue?.toString() &&\n\t\t\t\t\t'Auto Draft' === rawValue\n\t\t\t\t) {\n\t\t\t\t\trawValue = '';\n\t\t\t\t}\n\n\t\t\t\tif ( currentValue instanceof Y.Text ) {\n\t\t\t\t\tmergeRichTextUpdate( currentValue, rawValue ?? '' );\n\t\t\t\t} else {\n\t\t\t\t\tconst newYText = new Y.Text( rawValue ?? '' );\n\t\t\t\t\tymap.set( key, newYText );\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// \"Meta\" is overloaded term; here, it refers to post meta.\n\t\t\tcase 'meta': {\n\t\t\t\tlet metaMap = ymap.get( 'meta' );\n\n\t\t\t\t// Initialize.\n\t\t\t\tif ( ! isYMap( metaMap ) ) {\n\t\t\t\t\tmetaMap = createYMap< YMapRecord >();\n\t\t\t\t\tymap.set( 'meta', metaMap );\n\t\t\t\t}\n\n\t\t\t\t// Iterate over each meta property in the new value and merge it if it\n\t\t\t\t// should be synced.\n\t\t\t\tObject.entries( newValue ?? {} ).forEach(\n\t\t\t\t\t( [ metaKey, metaValue ] ) => {\n\t\t\t\t\t\tif ( disallowedPostMetaKeys.has( metaKey ) ) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tupdateMapValue(\n\t\t\t\t\t\t\tmetaMap,\n\t\t\t\t\t\t\tmetaKey,\n\t\t\t\t\t\t\tmetaMap.get( metaKey ), // current value in CRDT\n\t\t\t\t\t\t\tmetaValue // new value from changes\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tcase 'slug': {\n\t\t\t\t// Do not sync an empty slug. This indicates that the post is using\n\t\t\t\t// the default auto-generated slug.\n\t\t\t\tif ( ! newValue ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tupdateMapValue( ymap, key, currentValue, newValue );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// Add support for additional properties here.\n\n\t\t\tdefault: {\n\t\t\t\tconst currentValue = ymap.get( key );\n\t\t\t\tupdateMapValue( ymap, key, currentValue, newValue );\n\t\t\t}\n\t\t}\n\t} );\n\n\t// Process changes that we don't want to persist to the CRDT document.\n\tif ( changes.selection ) {\n\t\tconst selection = changes.selection;\n\t\t// Persist selection changes at the end of the current event loop.\n\t\t// This allows undo meta to be saved with the current selection before\n\t\t// it is overwritten by the new selection from Gutenberg.\n\t\t// Without this, selection history will already contain the latest\n\t\t// selection (after this change) when the undo stack is saved.\n\t\tsetTimeout( () => {\n\t\t\tupdateSelectionHistory( ydoc, selection );\n\t\t}, 0 );\n\t}\n}\n\nfunction defaultGetChangesFromCRDTDoc( crdtDoc: CRDTDoc ): ObjectData {\n\treturn getRootMap( crdtDoc, CRDT_RECORD_MAP_KEY ).toJSON();\n}\n\n/**\n * Given a local Y.Doc that *may* contain changes from remote peers, compare\n * against the local record and determine if there are changes (edits) we want\n * to dispatch.\n *\n * @param {CRDTDoc} ydoc\n * @param {Post} editedRecord\n * @param {Set<string>} syncedProperties\n * @return {Partial<PostChanges>} The changes that should be applied to the local record.\n */\nexport function getPostChangesFromCRDTDoc(\n\tydoc: CRDTDoc,\n\teditedRecord: Post,\n\tsyncedProperties: Set< string >\n): PostChanges {\n\tconst ymap = getRootMap< YPostRecord >( ydoc, CRDT_RECORD_MAP_KEY );\n\n\tlet allowedMetaChanges: Post[ 'meta' ] = {};\n\n\tconst changes = Object.fromEntries(\n\t\tObject.entries( ymap.toJSON() ).filter( ( [ key, newValue ] ) => {\n\t\t\tif ( ! syncedProperties.has( key ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst currentValue = editedRecord[ key ];\n\n\t\t\tswitch ( key ) {\n\t\t\t\tcase 'blocks': {\n\t\t\t\t\t// When we are passed a persisted CRDT document, make a special\n\t\t\t\t\t// comparison of the content and blocks.\n\t\t\t\t\t//\n\t\t\t\t\t// When other fields (besides `blocks`) are mutated outside the block\n\t\t\t\t\t// editor, the change is caught by an equality check (see other cases\n\t\t\t\t\t// in this `switch` statement). As a transient property, `blocks`\n\t\t\t\t\t// cannot be directly mutated outside the block editor -- only\n\t\t\t\t\t// `content` can.\n\t\t\t\t\t//\n\t\t\t\t\t// Therefore, for this special comparison, we serialize the `blocks`\n\t\t\t\t\t// from the persisted CRDT document and compare that to the content\n\t\t\t\t\t// from the persisted record. If they differ, we know that the content\n\t\t\t\t\t// in the database has changed, and therefore the blocks have changed.\n\t\t\t\t\t//\n\t\t\t\t\t// We cannot directly compare the `blocks` from the CRDT document to\n\t\t\t\t\t// the `blocks` derived from the `content` in the persisted record,\n\t\t\t\t\t// because the latter will have different client IDs.\n\t\t\t\t\tif (\n\t\t\t\t\t\tydoc.meta?.get( CRDT_DOC_META_PERSISTENCE_KEY ) &&\n\t\t\t\t\t\teditedRecord.content\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst blocksJson = ymap.get( 'blocks' )?.toJSON() ?? [];\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t__unstableSerializeAndClean( blocksJson ).trim() !==\n\t\t\t\t\t\t\tgetRawValue( editedRecord.content )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tcase 'date': {\n\t\t\t\t\t// Do not overwrite a \"floating\" date. Borrowing logic from the\n\t\t\t\t\t// isEditedPostDateFloating selector.\n\t\t\t\t\tconst currentDateIsFloating =\n\t\t\t\t\t\tnull === currentValue ||\n\t\t\t\t\t\teditedRecord.modified === currentValue;\n\n\t\t\t\t\tif ( currentDateIsFloating ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn haveValuesChanged( currentValue, newValue );\n\t\t\t\t}\n\n\t\t\t\tcase 'meta': {\n\t\t\t\t\tallowedMetaChanges = Object.fromEntries(\n\t\t\t\t\t\tObject.entries( newValue ?? {} ).filter(\n\t\t\t\t\t\t\t( [ metaKey ] ) =>\n\t\t\t\t\t\t\t\t! disallowedPostMetaKeys.has( metaKey )\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\n\t\t\t\t\t// Merge the allowed meta changes with the current meta values since\n\t\t\t\t\t// not all meta properties are synced.\n\t\t\t\t\tconst mergedValue = {\n\t\t\t\t\t\t...( currentValue as PostChanges[ 'meta' ] ),\n\t\t\t\t\t\t...allowedMetaChanges,\n\t\t\t\t\t};\n\n\t\t\t\t\treturn haveValuesChanged( currentValue, mergedValue );\n\t\t\t\t}\n\n\t\t\t\tcase 'status': {\n\t\t\t\t\t// Do not sync an invalid status.\n\t\t\t\t\tif ( 'auto-draft' === newValue ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn haveValuesChanged( currentValue, newValue );\n\t\t\t\t}\n\n\t\t\t\tcase 'content':\n\t\t\t\tcase 'excerpt':\n\t\t\t\tcase 'title': {\n\t\t\t\t\treturn haveValuesChanged(\n\t\t\t\t\t\tgetRawValue( currentValue ),\n\t\t\t\t\t\tnewValue\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Add support for additional data types here.\n\n\t\t\t\tdefault: {\n\t\t\t\t\treturn haveValuesChanged( currentValue, newValue );\n\t\t\t\t}\n\t\t\t}\n\t\t} )\n\t);\n\n\t// Blocks extracted from the CRDT document have rich-text attributes as\n\t// plain strings (from Y.Text.toJSON()). Convert them back to RichTextData\n\t// so block edit components receive the same types as locally-created blocks.\n\tif ( changes.blocks ) {\n\t\tchanges.blocks = deserializeBlockAttributes(\n\t\t\tchanges.blocks as Block[]\n\t\t);\n\t}\n\n\t// Meta changes must be merged with the edited record since not all meta\n\t// properties are synced.\n\tif ( 'object' === typeof changes.meta ) {\n\t\tchanges.meta = {\n\t\t\t...editedRecord.meta,\n\t\t\t...allowedMetaChanges,\n\t\t};\n\t}\n\n\t// When remote content changes are detected, recalculate the local user's\n\t// selection using Y.RelativePosition to account for text shifts. The ydoc\n\t// has already been updated with remote content at this point, so converting\n\t// relative positions to absolute gives corrected offsets. Including the\n\t// selection in PostChanges ensures it dispatches atomically with content.\n\tconst selectionHistory = getSelectionHistory( ydoc );\n\tconst shiftedSelection = getShiftedSelection( ydoc, selectionHistory );\n\tif ( shiftedSelection ) {\n\t\tchanges.selection = {\n\t\t\t...shiftedSelection,\n\t\t\tinitialPosition: 0,\n\t\t};\n\t}\n\n\treturn changes;\n}\n\n/**\n * This default sync config can be used for entities that are flat maps of\n * primitive values and do not require custom logic to merge changes.\n */\nexport const defaultSyncConfig: SyncConfig = {\n\tapplyChangesToCRDTDoc: defaultApplyChangesToCRDTDoc,\n\tcreateAwareness: ( ydoc: CRDTDoc ) => new BaseAwareness( ydoc ),\n\tgetChangesFromCRDTDoc: defaultGetChangesFromCRDTDoc,\n};\n\n/**\n * Extract the raw string value from a property that may be a string or an object\n * with a `raw` property (`RenderedText`).\n *\n * @param {unknown} value The value to extract from.\n * @return {string|undefined} The raw string value, or undefined if it could not be determined.\n */\nfunction getRawValue( value?: unknown ): string | undefined {\n\t// Value may be a string property or a nested object with a `raw` property.\n\tif ( 'string' === typeof value ) {\n\t\treturn value;\n\t}\n\n\tif (\n\t\tvalue &&\n\t\t'object' === typeof value &&\n\t\t'raw' in value &&\n\t\t'string' === typeof value.raw\n\t) {\n\t\treturn value.raw;\n\t}\n\n\treturn undefined;\n}\n\nfunction haveValuesChanged< ValueType >(\n\tcurrentValue: ValueType | undefined,\n\tnewValue: ValueType | undefined\n): boolean {\n\treturn ! fastDeepEqual( currentValue, newValue );\n}\n\nfunction updateMapValue< T extends YMapRecord, K extends keyof T >(\n\tmap: YMapWrap< T >,\n\tkey: K,\n\tcurrentValue: T[ K ] | undefined,\n\tnewValue: T[ K ] | undefined\n): void {\n\tif ( undefined === newValue ) {\n\t\tmap.delete( key );\n\t\treturn;\n\t}\n\n\tif ( haveValuesChanged< T[ K ] >( currentValue, newValue ) ) {\n\t\tmap.set( key, newValue );\n\t}\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -6,33 +6,31 @@ import { default as default5 } from "./forward-resolver.mjs";
6
6
  import { default as default6 } from "./on-sub-key.mjs";
7
7
  import { default as default7 } from "./replace-action.mjs";
8
8
  import { default as default8 } from "./with-weak-map-cache.mjs";
9
- import { default as default9 } from "./is-raw-attribute.mjs";
10
- import { default as default10 } from "./set-nested-value.mjs";
11
- import { default as default11 } from "./get-nested-value.mjs";
12
- import { default as default12 } from "./is-numeric-id.mjs";
9
+ import { default as default9 } from "./set-nested-value.mjs";
10
+ import { default as default10 } from "./get-nested-value.mjs";
11
+ import { default as default11 } from "./is-numeric-id.mjs";
13
12
  import {
14
13
  getUserPermissionCacheKey,
15
14
  getUserPermissionsFromAllowHeader,
16
15
  ALLOWED_RESOURCE_ACTIONS
17
16
  } from "./user-permissions.mjs";
18
17
  import { RECEIVE_INTERMEDIATE_RESULTS } from "./receive-intermediate-results.mjs";
19
- import { default as default13 } from "./normalize-query-for-resolution.mjs";
18
+ import { default as default12 } from "./normalize-query-for-resolution.mjs";
20
19
  export {
21
20
  ALLOWED_RESOURCE_ACTIONS,
22
21
  RECEIVE_INTERMEDIATE_RESULTS,
23
22
  default2 as conservativeMapItem,
24
23
  default5 as forwardResolver,
25
- default11 as getNestedValue,
24
+ default10 as getNestedValue,
26
25
  default3 as getNormalizedCommaSeparable,
27
26
  getUserPermissionCacheKey,
28
27
  getUserPermissionsFromAllowHeader,
29
28
  default4 as ifMatchingAction,
30
- default12 as isNumericID,
31
- default9 as isRawAttribute,
32
- default13 as normalizeQueryForResolution,
29
+ default11 as isNumericID,
30
+ default12 as normalizeQueryForResolution,
33
31
  default6 as onSubKey,
34
32
  default7 as replaceAction,
35
- default10 as setNestedValue,
33
+ default9 as setNestedValue,
36
34
  default8 as withWeakMapCache
37
35
  };
38
36
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/index.js"],
4
- "sourcesContent": ["export { default as conservativeMapItem } from './conservative-map-item';\nexport { default as getNormalizedCommaSeparable } from './get-normalized-comma-separable';\nexport { default as ifMatchingAction } from './if-matching-action';\nexport { default as forwardResolver } from './forward-resolver';\nexport { default as onSubKey } from './on-sub-key';\nexport { default as replaceAction } from './replace-action';\nexport { default as withWeakMapCache } from './with-weak-map-cache';\nexport { default as isRawAttribute } from './is-raw-attribute';\nexport { default as setNestedValue } from './set-nested-value';\nexport { default as getNestedValue } from './get-nested-value';\nexport { default as isNumericID } from './is-numeric-id';\nexport {\n\tgetUserPermissionCacheKey,\n\tgetUserPermissionsFromAllowHeader,\n\tALLOWED_RESOURCE_ACTIONS,\n} from './user-permissions';\nexport { RECEIVE_INTERMEDIATE_RESULTS } from './receive-intermediate-results';\nexport { default as normalizeQueryForResolution } from './normalize-query-for-resolution';\n"],
5
- "mappings": ";AAAA,SAAoB,WAAXA,gBAAsC;AAC/C,SAAoB,WAAXA,gBAA8C;AACvD,SAAoB,WAAXA,gBAAmC;AAC5C,SAAoB,WAAXA,gBAAkC;AAC3C,SAAoB,WAAXA,gBAA2B;AACpC,SAAoB,WAAXA,gBAAgC;AACzC,SAAoB,WAAXA,gBAAmC;AAC5C,SAAoB,WAAXA,gBAAiC;AAC1C,SAAoB,WAAXA,iBAAiC;AAC1C,SAAoB,WAAXA,iBAAiC;AAC1C,SAAoB,WAAXA,iBAA8B;AACvC;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,OACM;AACP,SAAS,oCAAoC;AAC7C,SAAoB,WAAXA,iBAA8C;",
4
+ "sourcesContent": ["export { default as conservativeMapItem } from './conservative-map-item';\nexport { default as getNormalizedCommaSeparable } from './get-normalized-comma-separable';\nexport { default as ifMatchingAction } from './if-matching-action';\nexport { default as forwardResolver } from './forward-resolver';\nexport { default as onSubKey } from './on-sub-key';\nexport { default as replaceAction } from './replace-action';\nexport { default as withWeakMapCache } from './with-weak-map-cache';\nexport { default as setNestedValue } from './set-nested-value';\nexport { default as getNestedValue } from './get-nested-value';\nexport { default as isNumericID } from './is-numeric-id';\nexport {\n\tgetUserPermissionCacheKey,\n\tgetUserPermissionsFromAllowHeader,\n\tALLOWED_RESOURCE_ACTIONS,\n} from './user-permissions';\nexport { RECEIVE_INTERMEDIATE_RESULTS } from './receive-intermediate-results';\nexport { default as normalizeQueryForResolution } from './normalize-query-for-resolution';\n"],
5
+ "mappings": ";AAAA,SAAoB,WAAXA,gBAAsC;AAC/C,SAAoB,WAAXA,gBAA8C;AACvD,SAAoB,WAAXA,gBAAmC;AAC5C,SAAoB,WAAXA,gBAAkC;AAC3C,SAAoB,WAAXA,gBAA2B;AACpC,SAAoB,WAAXA,gBAAgC;AACzC,SAAoB,WAAXA,gBAAmC;AAC5C,SAAoB,WAAXA,gBAAiC;AAC1C,SAAoB,WAAXA,iBAAiC;AAC1C,SAAoB,WAAXA,iBAA8B;AACvC;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,OACM;AACP,SAAS,oCAAoC;AAC7C,SAAoB,WAAXA,iBAA8C;",
6
6
  "names": ["default"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"AA6HA;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;4CAoBg9uB,OAAO;;;yBAAr/pB,YAAO,EAAC,YAAO,EAAC,yBAAW,EAAC,iBAAQ,EAAC;;;KAA4D,MAAe;;;KAA4B;uBAAi0E,YAAK,EAAC,YAAK,EAAC,yBAAS,EAAC,UAAM,EAAC;;KAAa;6BAA8qG,YAAK,EAAC,YAAK,EAAC,yBAAS;iBAAs4B;;;KAAqB;iBAA4R;;;KAAqB;;uBAAutC,YAAO,EAAC,YAAO,EAAC,WAAS,EAAC;;;;KAA4F,MAAe;;;;KAAoC;0BAAmrN,eAAS;6BAAgtC,YAAK,EAAC,YAAK,EAAC,aAAS,EAAC,yBAAQ,MAAc;;;;KAAoC;6CAAslC,YAAK,EAAC,YAAK,EAAC,yBAAS,EAAC,kBAAY,EAAC,YAAQ,MAAc;;;;KAAoC;uBAAgzJ,YAAK,EAAC,YAAK,EAAC,0BAAU,EAAC,oBAAQ,EAAC,iBAAM,EAAC,6CAAwB,EAAC,gBAAK,MAAc;;;KAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAlxU,sBAAc,EAAC,YAAc,EAAC,YAAc,EAAC,oCAA4B;iCAAu9B,sBAAc,EAAC,YAAc,EAAC,YAAc,EAAC,oCAA4B;;;;;;;;;;;;;;;;;;;;mBAAykqB,sBAAc,EAAC,YAAc,EAAC,YAAc,EAAC,0BAA4B,EAAC,qCAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IApB1tpC;;;;;;;;;;;2BAzHxC,aAAa"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"AA6HA;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;4CAoBg9uB,OAAO;;;yBAAr/pB,YAAO,EAAC,YAAO,EAAC,yBAAW,EAAC,iBAAQ,EAAC;;;KAA4D,MAAe;;;KAA4B;uBAAi0E,YAAK,EAAC,YAAK,EAAC,yBAAS,EAAC,UAAM,EAAC;;KAAa;6BAA8qG,YAAK,EAAC,YAAK,EAAC,yBAAS;iBAAs4B;;;KAAqB;iBAA4R;;;KAAqB;;uBAAutC,YAAO,EAAC,YAAO,EAAC,WAAS,EAAC;;;;KAA4F,MAAe;;;;KAAoC;0BAAmrN,eAAS;6BAAgtC,YAAK,EAAC,YAAK,EAAC,aAAS,EAAC,yBAAQ,MAAc;;;;KAAoC;6CAAslC,YAAK,EAAC,YAAK,EAAC,yBAAS,EAAC,kBAAY,EAAC,YAAQ,MAAc;;;;KAAoC;uBAAgzJ,YAAK,EAAC,YAAK,EAAC,0BAAU,EAAC,oBAAQ,EAAC,iBAAM,EAAC,6CAAwB,EAAC,gBAAK,MAAc;;;KAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAnrU,sBAAc,EAAC,YAAc,EAAC,YAAc,EAAC,oCAA4B;iCAAu9B,sBAAc,EAAC,YAAc,EAAC,YAAc,EAAC,oCAA4B;;;;;;;;;;;;;;;;;;;;mBAAykqB,sBAAc,EAAC,YAAc,EAAC,YAAc,EAAC,0BAA4B,EAAC,qCAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IApBzzpC;;;;;;;;;;;2BAzHxC,aAAa"}
@@ -24,6 +24,16 @@ export function receiveEditorSettings(settings: any): any;
24
24
  * @return {Object} Action object.
25
25
  */
26
26
  export function receiveEditorAssets(assets: any): any;
27
+ /**
28
+ * Returns an action object used to receive view config.
29
+ *
30
+ * @param {string} kind Entity kind.
31
+ * @param {string} name Entity name.
32
+ * @param {Object} config View config object.
33
+ *
34
+ * @return {Object} Action object.
35
+ */
36
+ export function receiveViewConfig(kind: string, name: string, config: any): any;
27
37
  export function editMediaEntity(recordId: string, edits?: Edits, { __unstableFetch, throwOnError }?: {
28
38
  __unstableFetch: Function;
29
39
  throwOnError: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"private-actions.d.ts","sourceRoot":"","sources":["../src/private-actions.js"],"names":[],"mappings":"AAUA;;;;;;;;GAQG;AACH,oDALW,MAAM,gCAWhB;AA8GD;;;;;;GAMG;AACH,0DAKC;AAED;;;;;;GAMG;AACH,sDAKC;AA/GM,0CARI,MAAM,UACN,KAAK,sCAEb;IAA0B,eAAe;IACf,YAAY,EAA9B,OAAO;CAEf,gBAqFD;AAqCK,qDAJI,OAAO,OAQhB"}
1
+ {"version":3,"file":"private-actions.d.ts","sourceRoot":"","sources":["../src/private-actions.js"],"names":[],"mappings":"AAUA;;;;;;;;GAQG;AACH,oDALW,MAAM,gCAWhB;AA8GD;;;;;;GAMG;AACH,0DAKC;AAED;;;;;;GAMG;AACH,sDAKC;AAeD;;;;;;;;GAQG;AACH,wCANW,MAAM,QACN,MAAM,oBAYhB;AA9IM,0CARI,MAAM,UACN,KAAK,sCAEb;IAA0B,eAAe;IACf,YAAY,EAA9B,OAAO;CAEf,gBAqFD;AAqCK,qDAJI,OAAO,OAQhB"}
@@ -71,10 +71,7 @@ export declare function getEntityRecordPermissions(state: State, kind: string, n
71
71
  */
72
72
  export declare function getRegisteredPostMeta(state: State, postType: string): Object;
73
73
  export declare const getHomePage: {
74
- (): {
75
- postType: string;
76
- postId: any;
77
- } | null;
74
+ (): {} | null;
78
75
  isRegistrySelector?: boolean;
79
76
  registry?: any;
80
77
  };
@@ -109,5 +106,15 @@ export declare function getEditorAssets(state: State): Record<string, any> | nul
109
106
  * @return Whether collaboration is supported.
110
107
  */
111
108
  export declare function isCollaborationSupported(state: State): boolean;
109
+ /**
110
+ * Returns the view configuration for the given entity type.
111
+ *
112
+ * @param state Data state.
113
+ * @param kind Entity kind.
114
+ * @param name Entity name.
115
+ *
116
+ * @return The view configuration or undefined if not loaded.
117
+ */
118
+ export declare function getViewConfig(state: State, kind: string, name: string): Record<string, any> | undefined;
112
119
  export {};
113
120
  //# sourceMappingURL=private-selectors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"private-selectors.d.ts","sourceRoot":"","sources":["../src/private-selectors.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,OAAO,EAAyC,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAMhF,KAAK,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAE,KAAK,EAAE,KAAK,6FAG3C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,KAAK,GACV,eAAe,GAAG,SAAS,CAE7B;AAED,eAAO,MAAM,2BAA2B;;;;CAcvC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;CAwBvC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM;;;EAIV;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,UAEpE;AAqBD,eAAO,MAAM,WAAW;;;;;;;CAuCvB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;CAQxB,CAAC;AAEJ,eAAO,MAAM,aAAa;;;;CAmFzB,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,KAAK,GACV,MAAM,CAAE,MAAM,EAAE,GAAG,CAAE,GAAG,IAAI,CAE9B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAE,KAAK,EAAE,KAAK,GAAI,MAAM,CAAE,MAAM,EAAE,GAAG,CAAE,GAAG,IAAI,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAE,KAAK,EAAE,KAAK,GAAI,OAAO,CAEhE"}
1
+ {"version":3,"file":"private-selectors.d.ts","sourceRoot":"","sources":["../src/private-selectors.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,OAAO,EAAyC,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAMhF,KAAK,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AAIvC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAE,KAAK,EAAE,KAAK,6FAG3C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,KAAK,GACV,eAAe,GAAG,SAAS,CAE7B;AAED,eAAO,MAAM,2BAA2B;;;;CAcvC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;CAwBvC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM;;;EAIV;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,UAEpE;AAqBD,eAAO,MAAM,WAAW;;;;CA8CvB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;CAQxB,CAAC;AAEJ,eAAO,MAAM,aAAa;;;;CAmFzB,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,KAAK,GACV,MAAM,CAAE,MAAM,EAAE,GAAG,CAAE,GAAG,IAAI,CAE9B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAE,KAAK,EAAE,KAAK,GAAI,MAAM,CAAE,MAAM,EAAE,GAAG,CAAE,GAAG,IAAI,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAE,KAAK,EAAE,KAAK,GAAI,OAAO,CAEhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACV,MAAM,CAAE,MAAM,EAAE,GAAG,CAAE,GAAG,SAAS,CASnC"}
@@ -5,15 +5,11 @@
5
5
  *
6
6
  * @property {number} page The query page (1-based index, default 1).
7
7
  * @property {number} perPage Items per page for query (default 10).
8
- * @property {number} offset Absolute item offset (default undefined).
9
- * When present, also encoded into stableKey.
10
- * @property {string} stableKey An encoded stable string of all non-
11
- * pagination, non-fields query parameters.
12
- * @property {?(string[])} fields Target subset of fields to derive from
13
- * item objects.
14
- * @property {?(number[])} include Specific item IDs to include.
15
- * @property {string} context Scope under which the request is made;
16
- * determines returned fields in response.
8
+ * @property {?number} offset Absolute item offset (default null).
9
+ * @property {string} stableKey An encoded stable string of all non-pagination, non-fields query parameters.
10
+ * @property {?(string[])} fields Target subset of fields to derive from item objects (default null).
11
+ * @property {?(number[])} include Specific item IDs to include (default null).
12
+ * @property {string} context Scope under which the request is made; determines returned fields in response.
17
13
  */
18
14
  /**
19
15
  * Given a query object, returns an object of parts, including pagination
@@ -40,27 +36,23 @@ export type WPQueriedDataQueryParts = {
40
36
  */
41
37
  perPage: number;
42
38
  /**
43
- * Absolute item offset (default undefined).
44
- * When present, also encoded into stableKey.
39
+ * Absolute item offset (default null).
45
40
  */
46
- offset: number;
41
+ offset: number | null;
47
42
  /**
48
- * An encoded stable string of all non-
49
- * pagination, non-fields query parameters.
43
+ * An encoded stable string of all non-pagination, non-fields query parameters.
50
44
  */
51
45
  stableKey: string;
52
46
  /**
53
- * Target subset of fields to derive from
54
- * item objects.
47
+ * Target subset of fields to derive from item objects (default null).
55
48
  */
56
49
  fields: (string[]) | null;
57
50
  /**
58
- * Specific item IDs to include.
51
+ * Specific item IDs to include (default null).
59
52
  */
60
53
  include: (number[]) | null;
61
54
  /**
62
- * Scope under which the request is made;
63
- * determines returned fields in response.
55
+ * Scope under which the request is made; determines returned fields in response.
64
56
  */
65
57
  context: string;
66
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-query-parts.d.ts","sourceRoot":"","sources":["../../src/queried-data/get-query-parts.js"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;GAQG;AACH,2CAFY,uBAAuB,CAoFlC;;;;;;;;;;UAxGa,MAAM;;;;aACN,MAAM;;;;;YACN,MAAM;;;;;eAEN,MAAM;;;;;YAEL,CAAC,MAAM,EAAE,CAAC,OAAA;;;;aAEV,CAAC,MAAM,EAAE,CAAC,OAAA;;;;;aACX,MAAM"}
1
+ {"version":3,"file":"get-query-parts.d.ts","sourceRoot":"","sources":["../../src/queried-data/get-query-parts.js"],"names":[],"mappings":"AAUA;;;;;;;;;;;;GAYG;AAEH;;;;;;;;GAQG;AACH,2CAFY,uBAAuB,CAkFlC;;;;;;;;;;UAlGa,MAAM;;;;aACN,MAAM;;;;YACL,MAAM,OAAA;;;;eACP,MAAM;;;;YACL,CAAC,MAAM,EAAE,CAAC,OAAA;;;;aACV,CAAC,MAAM,EAAE,CAAC,OAAA;;;;aACX,MAAM"}
@@ -2,14 +2,20 @@
2
2
  * Returns a merged array of item IDs, given details of the received paginated
3
3
  * items. The array is sparse-like with `undefined` entries where holes exist.
4
4
  *
5
- * @param {?Array<number>} itemIds Original item IDs (default empty array).
6
- * @param {number[]} nextItemIds Item IDs to merge.
7
- * @param {number} page Page of items merged.
8
- * @param {number} perPage Number of items per page.
5
+ * @param {number[]|undefined} itemIds Original item IDs (default empty array).
6
+ * @param {number[]} nextItemIds Item IDs to merge.
7
+ * @param {Object} options Options object.
8
+ * @param {number} [options.page] Page of items merged.
9
+ * @param {number} [options.offset] Offset of items merged.
10
+ * @param {number} options.perPage Number of items per page.
9
11
  *
10
12
  * @return {number[]} Merged array of item IDs.
11
13
  */
12
- export function getMergedItemIds(itemIds: Array<number> | null, nextItemIds: number[], page: number, perPage: number): number[];
14
+ export function getMergedItemIds(itemIds: number[] | undefined, nextItemIds: number[], { page, offset, perPage }?: {
15
+ page?: number | undefined;
16
+ offset?: number | undefined;
17
+ perPage: number;
18
+ }): number[];
13
19
  /**
14
20
  * Reducer tracking items state, keyed by ID. Items are assumed to be normal,
15
21
  * where identifiers are common across all queries.
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../src/queried-data/reducer.js"],"names":[],"mappings":"AA4BA;;;;;;;;;;GAUG;AACH,0CAPY,KAAK,CAAC,MAAM,CAAC,OAAA,eACd,MAAM,EAAE,QACR,MAAM,WACN,MAAM,GAEL,MAAM,EAAE,CA+BnB;AAyBD;;;;;;;;GAQG;AACH,oDAiCC;AAED;;;;;;;;;;;GAWG;AACH;;;;;;;;EA8CC"}
1
+ {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../src/queried-data/reducer.js"],"names":[],"mappings":"AA4BA;;;;;;;;;;;;GAYG;AACH,0CATW,MAAM,EAAE,GAAC,SAAS,eAClB,MAAM,EAAE,8BAEhB;IAAqC,IAAI;IACJ,MAAM;IACP,OAAO,EAAnC,MAAM;CAEd,GAAS,MAAM,EAAE,CAuCnB;AAyBD;;;;;;;;GAQG;AACH,oDAiCC;AAED;;;;;;;;;;;GAWG;AACH;;;;;;;;EA8CC"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../src/queried-data/selectors.js"],"names":[],"mappings":"AAwJA,kEAIC;AAED,kEAIC;AAxCD;;;;;;;;;;;;GAYG;AACH,qGAeI"}
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../src/queried-data/selectors.js"],"names":[],"mappings":"AA8IA,kEAIC;AAED,kEAIC;AAxCD;;;;;;;;;;;;GAYG;AACH,qGAeI"}
@@ -167,6 +167,15 @@ export function syncConnectionStatuses(state: any, action: any): any;
167
167
  * @return {boolean} Updated state.
168
168
  */
169
169
  export function collaborationSupported(state: boolean | undefined, action: any): boolean;
170
+ /**
171
+ * Reducer managing view configs, keyed by `kind/name`.
172
+ *
173
+ * @param {Object} state Current state.
174
+ * @param {Object} action Dispatched action.
175
+ *
176
+ * @return {Object} Updated state.
177
+ */
178
+ export function viewConfigs(state: any, action: any): any;
170
179
  export function entities(state: any, action: any): any;
171
180
  declare const _default: import("redux").Reducer<{
172
181
  users: any;
@@ -192,6 +201,7 @@ declare const _default: import("redux").Reducer<{
192
201
  editorAssets: any;
193
202
  syncConnectionStatuses: any;
194
203
  collaborationSupported: boolean;
204
+ viewConfigs: any;
195
205
  }, any, Partial<{
196
206
  users: any;
197
207
  currentTheme: string | undefined;
@@ -216,6 +226,7 @@ declare const _default: import("redux").Reducer<{
216
226
  editorAssets: any;
217
227
  syncConnectionStatuses: any;
218
228
  collaborationSupported: boolean | undefined;
229
+ viewConfigs: any;
219
230
  }>>;
220
231
  export default _default;
221
232
  export type AnyFunction = import("./types").AnyFunction;
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../src/reducer.js"],"names":[],"mappings":"AAoBA,2DAA2D;AAE3D;;;;;;;GAOG;AACH,oDAuBC;AAED;;;;;;;GAOG;AACH,0DAOC;AAED;;;;;;;GAOG;AACH,oCALW,MAAM,GAAC,SAAS,gBAGf,MAAM,GAAC,SAAS,CAS3B;AAED;;;;;;;GAOG;AACH,6CALW,MAAM,GAAC,SAAS,gBAGf,MAAM,GAAC,SAAS,CAS3B;AAED;;;;;;;GAOG;AACH,6CALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAED;;;;;;;GAOG;AACH,kDALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAoND;;;;;;;GAOG;AACH,6DAOC;AAoFD;;GAEG;AACH,oJAEC;AAED,uEAQC;AAED;;;;;;;GAOG;AACH,4DAUC;AAED;;;;;;;;GAQG;AACH,8DAeC;AAED;;;;;;;GAOG;AACH,wDAYC;AAED,0EAOC;AAED,mFAOC;AAED,kFAMC;AAED,gFAOC;AAED;;;;;;;GAOG;AACH,iDALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAED;;;;;;;GAOG;AACH,wCALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAED;;;;;;;GAOG;AACH,iEASC;AAED;;;;;;;GAOG;AACH,6DAMC;AAED;;;;;;;GAOG;AACH,2DAMC;AAED;;;;;;;;GAQG;AACH,qEAgBC;AAED;;;;;;;;;;;GAWG;AACH,8CALW,OAAO,4BAGN,OAAO,CAkBlB;AApVM,uDAwEN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAjba,OAAO,SAAS,EAAE,WAAW"}
1
+ {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../src/reducer.js"],"names":[],"mappings":"AAoBA,2DAA2D;AAE3D;;;;;;;GAOG;AACH,oDAuBC;AAED;;;;;;;GAOG;AACH,0DAOC;AAED;;;;;;;GAOG;AACH,oCALW,MAAM,GAAC,SAAS,gBAGf,MAAM,GAAC,SAAS,CAS3B;AAED;;;;;;;GAOG;AACH,6CALW,MAAM,GAAC,SAAS,gBAGf,MAAM,GAAC,SAAS,CAS3B;AAED;;;;;;;GAOG;AACH,6CALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAED;;;;;;;GAOG;AACH,kDALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAoND;;;;;;;GAOG;AACH,6DAOC;AAoFD;;GAEG;AACH,oJAEC;AAED,uEAQC;AAED;;;;;;;GAOG;AACH,4DAUC;AAED;;;;;;;;GAQG;AACH,8DAeC;AAED;;;;;;;GAOG;AACH,wDAYC;AAED,0EAOC;AAED,mFAOC;AAED,kFAMC;AAED,gFAOC;AAED;;;;;;;GAOG;AACH,iDALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAED;;;;;;;GAOG;AACH,wCALW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,4BAGrB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjC;AAED;;;;;;;GAOG;AACH,iEASC;AAED;;;;;;;GAOG;AACH,6DAMC;AAED;;;;;;;GAOG;AACH,2DAMC;AAED;;;;;;;;GAQG;AACH,qEAgBC;AAED;;;;;;;;;;;GAWG;AACH,8CALW,OAAO,4BAGN,OAAO,CAkBlB;AAED;;;;;;;GAOG;AACH,0DASC;AAvWM,uDAwEN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAjba,OAAO,SAAS,EAAE,WAAW"}
@@ -131,4 +131,7 @@ export function getEditorSettings(): ({ dispatch }: {
131
131
  export function getEditorAssets(): ({ dispatch }: {
132
132
  dispatch: any;
133
133
  }) => Promise<void>;
134
+ export function getViewConfig(kind: string, name: string): ({ dispatch }: {
135
+ dispatch: any;
136
+ }) => Promise<void>;
134
137
  //# sourceMappingURL=resolvers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../src/resolvers.js"],"names":[],"mappings":"AAqCO,kCAHI,MAAO,SAAS,IAKlB;;CAAY,mBAOnB;AAKK,mCAEE;;CAAY,mBAGnB;AAYK,sCAPI,MAAM,QACN,MAAM,OACN,MAAM,GAAC,MAAM,qBACb,MAAO,SAAS,IAMlB;;;;;CAA6C,mBAoOpD;;IAIF,kEAcC;;AAED;;GAEG;AACH,0CAAuE;AAEvE;;GAEG;AACH,6CAA0E;AAUnE,uCALI,MAAM,QACN,MAAM,UACN,UAAO,IAKT;;;;CAAqC,mBAqP5C;;IAEF,kEAOC;;AAED;;GAEG;AACH,kDAAgF;AAEhF;;GAEG;AACH,kDAAgF;AAKzE,oCAEE;;;CAA2B,mBAQlC;AAEF;;GAEG;AACH,wCAAqE;AAO9D,qCAFI,MAAM,IAIR;;CAAY,mBAUnB;AAYK,yCANI,MAAM,YAEN,MAAM,MAAO,MAEZ,MAAM,OAAA,IAIT;;;;CAAqC,mBAiF5C;AAUK,8CAJI,MAAM,QACN,MAAM,YACN,MAAM,GAAC,MAAM,IAIf;;CAAY,mBAEnB;AAQK,uCAHI,MAAM,UACN,MAAM,IAIR;;;CAA2B,mBAiBlC;AAWK,sCAHI,MAAM,UACN,MAAM,IAIR;;CAAiB,mBAExB;AAEK,2DAEE;;;CAA2B,mBAqBlC;AAEK,kEAEE;;;CAA2B,mBAUlC;AAEK,wEAEE;;;CAA2B,mBAUlC;AAKK,yDAEE;;;CAA2B,mBA6BlC;;IAEF,gDAOC;;AAEM,qCAEE;;CAAY,mBAGnB;AAEK,8CAEE;;CAAY,mBAKnB;AAEK,6CAEE;;;CAA2B,mBAsBlC;AAEK,4CAEE;;;;CAA8B,mBAwCrC;AAEK,mDAEE;;;;CAAqC,mBA+B5C;;IAEF,gDAMC;;AAYM,mCAPI,MAAM,QACN,MAAM,aACN,MAAM,GAAC,MAAM,UACb,MAAO,SAAS,IAMlB;;;;CAAqC,mBA8G5C;;IAGF,sFAK8B;;AAavB,kCARI,MAAM,QACN,MAAM,aACN,MAAM,GAAC,MAAM,eACb,MAAM,GAAC,MAAM,SACb,MAAO,SAAS,IAMlB;;;;CAAmC,mBAwE1C;AAOK,gDAFI,MAAM,IAIR;;;CAA2B,mBAsBlC;AAOK,wCAFI,MAAM,IAIR;;CAAY,mBAmBnB;AAKK,sCAEE;;CAAY,mBAKnB;AAKK,oCAEE;;CAAY,mBAKnB"}
1
+ {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../src/resolvers.js"],"names":[],"mappings":"AAqCO,kCAHI,MAAO,SAAS,IAKlB;;CAAY,mBAOnB;AAKK,mCAEE;;CAAY,mBAGnB;AAYK,sCAPI,MAAM,QACN,MAAM,OACN,MAAM,GAAC,MAAM,qBACb,MAAO,SAAS,IAMlB;;;;;CAA6C,mBAoOpD;;IAIF,kEAcC;;AAED;;GAEG;AACH,0CAAuE;AAEvE;;GAEG;AACH,6CAA0E;AAUnE,uCALI,MAAM,QACN,MAAM,UACN,UAAO,IAKT;;;;CAAqC,mBAqP5C;;IAEF,kEAOC;;AAED;;GAEG;AACH,kDAAgF;AAEhF;;GAEG;AACH,kDAAgF;AAKzE,oCAEE;;;CAA2B,mBAQlC;AAEF;;GAEG;AACH,wCAAqE;AAO9D,qCAFI,MAAM,IAIR;;CAAY,mBAUnB;AAYK,yCANI,MAAM,YAEN,MAAM,MAAO,MAEZ,MAAM,OAAA,IAIT;;;;CAAqC,mBAiF5C;AAUK,8CAJI,MAAM,QACN,MAAM,YACN,MAAM,GAAC,MAAM,IAIf;;CAAY,mBAEnB;AAQK,uCAHI,MAAM,UACN,MAAM,IAIR;;;CAA2B,mBAiBlC;AAWK,sCAHI,MAAM,UACN,MAAM,IAIR;;CAAiB,mBAExB;AAEK,2DAEE;;;CAA2B,mBAqBlC;AAEK,kEAEE;;;CAA2B,mBAUlC;AAEK,wEAEE;;;CAA2B,mBAUlC;AAKK,yDAEE;;;CAA2B,mBA6BlC;;IAEF,gDAOC;;AAEM,qCAEE;;CAAY,mBAGnB;AAEK,8CAEE;;CAAY,mBAKnB;AAEK,6CAEE;;;CAA2B,mBAsBlC;AAEK,4CAEE;;;;CAA8B,mBAwCrC;AAEK,mDAEE;;;;CAAqC,mBAgC5C;;IAEF,gDAMC;;AAYM,mCAPI,MAAM,QACN,MAAM,aACN,MAAM,GAAC,MAAM,UACb,MAAO,SAAS,IAMlB;;;;CAAqC,mBA8G5C;;IAGF,sFAK8B;;AAavB,kCARI,MAAM,QACN,MAAM,aACN,MAAM,GAAC,MAAM,eACb,MAAM,GAAC,MAAM,SACb,MAAO,SAAS,IAMlB;;;;CAAmC,mBAwE1C;AAOK,gDAFI,MAAM,IAIR;;;CAA2B,mBAsBlC;AAOK,wCAFI,MAAM,IAIR;;CAAY,mBAmBnB;AAKK,sCAEE;;CAAY,mBAKnB;AAKK,oCAEE;;CAAY,mBAKnB;AAQK,oCAHI,MAAM,QACN,MAAM,IAIR;;CAAY,mBAKnB"}
@@ -26,6 +26,7 @@ export interface State {
26
26
  editorAssets: Record<string, any> | null;
27
27
  syncConnectionStatuses?: Record<string, ConnectionStatus>;
28
28
  collaborationSupported: boolean;
29
+ viewConfigs: Record<string, Record<string, any>>;
29
30
  }
30
31
  type EntityRecordKey = string | number;
31
32
  interface EntitiesState {
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,17 @@ export interface YBlockRecord extends YMapRecord {
26
26
  export type YBlock = YMapWrap<YBlockRecord>;
27
27
  export type YBlocks = Y.Array<YBlock>;
28
28
  export type YBlockAttributes = Y.Map<Y.Text | unknown>;
29
+ /**
30
+ * Convert blocks from their CRDT-serialized form back to the runtime form
31
+ * expected by the block editor. Rich-text attributes are stored as Y.Text in
32
+ * the CRDT document, which serializes to plain strings via toJSON(). This
33
+ * function restores them to RichTextData instances so that block edit
34
+ * components that rely on RichTextData methods (e.g. `.text`) work correctly.
35
+ *
36
+ * @param blocks Blocks as extracted from the CRDT document via toJSON().
37
+ * @return Blocks with rich-text attributes restored to RichTextData.
38
+ */
39
+ export declare function deserializeBlockAttributes(blocks: Block[]): Block[];
29
40
  /**
30
41
  * Merge incoming block data into the local Y.Doc.
31
42
  * This function is called to sync local block changes to a shared Y.Doc.
@@ -1 +1 @@
1
- {"version":3,"file":"crdt-blocks.d.ts","sourceRoot":"","sources":["../../src/utils/crdt-blocks.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAEpC;;GAEG;AACH,OAAO,EAAc,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG1E,UAAU,eAAe;IACxB,CAAE,GAAG,EAAE,MAAM,GAAI,OAAO,CAAC;CACzB;AAaD,MAAM,WAAW,KAAK;IACrB,UAAU,EAAE,eAAe,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,KAAK,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAGD,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC/C,UAAU,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAE,YAAY,CAAE,CAAC;AAC9C,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAE,MAAM,CAAE,CAAC;AAIxC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAE,CAAC,CAAC,IAAI,GAAG,OAAO,CAAE,CAAC;AAoKzD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,KAAK,EAAE,EACvB,cAAc,EAAE,MAAM,GAAG,IAAI,GAC3B,IAAI,CAqLN;AA0ID;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,CAAC,CAAC,IAAI,EAClB,YAAY,EAAE,MAAM,EACpB,cAAc,GAAE,MAAM,GAAG,IAAW,GAClC,IAAI,CA4BN"}
1
+ {"version":3,"file":"crdt-blocks.d.ts","sourceRoot":"","sources":["../../src/utils/crdt-blocks.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAEpC;;GAEG;AACH,OAAO,EAAc,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAI1E,UAAU,eAAe;IACxB,CAAE,GAAG,EAAE,MAAM,GAAI,OAAO,CAAC;CACzB;AAcD,MAAM,WAAW,KAAK;IACrB,UAAU,EAAE,eAAe,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,KAAK,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAGD,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC/C,UAAU,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAE,YAAY,CAAE,CAAC;AAC9C,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAE,MAAM,CAAE,CAAC;AAIxC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAE,CAAC,CAAC,IAAI,GAAG,OAAO,CAAE,CAAC;AA2GzD;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CAAE,MAAM,EAAE,KAAK,EAAE,GAAI,KAAK,EAAE,CAwBrE;AAsGD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,KAAK,EAAE,EACvB,cAAc,EAAE,MAAM,GAAG,IAAI,GAC3B,IAAI,CAqLN;AA0ID;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,CAAC,CAAC,IAAI,EAClB,YAAY,EAAE,MAAM,EACpB,cAAc,GAAE,MAAM,GAAG,IAAW,GAClC,IAAI,CA4BN"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { RichTextData } from '@wordpress/rich-text';
5
+ /**
6
+ * Returns a function that converts HTML strings to RichTextData instances,
7
+ * using a FIFO cache bounded by `maxSize` to avoid re-parsing identical
8
+ * strings. Repeated calls with the same string return the cached instance
9
+ * without re-running the HTML parser and DOM traversal.
10
+ *
11
+ * @param maxSize Maximum number of entries to hold in the cache.
12
+ * @return A cached version of RichTextData.fromHTMLString.
13
+ */
14
+ export declare function createRichTextDataCache(maxSize: number): (value: string) => RichTextData;
15
+ export declare const getCachedRichTextData: (value: string) => RichTextData;
16
+ //# sourceMappingURL=crdt-text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crdt-text.d.ts","sourceRoot":"","sources":["../../src/utils/crdt-text.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIpD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACtC,OAAO,EAAE,MAAM,GACb,CAAE,KAAK,EAAE,MAAM,KAAM,YAAY,CAoBnC;AAED,eAAO,MAAM,qBAAqB,UAtBtB,MAAM,KAAM,YAwBvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"crdt.d.ts","sourceRoot":"","sources":["../../src/utils/crdt.ts"],"names":[],"mappings":"AAUA,OAAO,EACN,KAAK,OAAO,EAEZ,KAAK,UAAU,EACf,CAAC,EACD,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAGN,KAAK,KAAK,EAEV,KAAK,OAAO,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAM5C,OAAO,EAIN,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,MAAM,cAAc,CAAC;AAGtB,MAAM,MAAM,WAAW,GAAG,OAAO,CAAE,IAAI,CAAE,GAAG;IAC3C,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAE,SAAS,CAAE,GAAG,MAAM,CAAC;IACrC,OAAO,CAAC,EAAE,IAAI,CAAE,SAAS,CAAE,GAAG,MAAM,CAAC;IACrC,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,KAAK,CAAC,EAAE,IAAI,CAAE,OAAO,CAAE,GAAG,MAAM,CAAC;CACjC,CAAC;AAGF,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC9C,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,QAAQ,CAAE,UAAU,CAAE,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;CACd;AAED,eAAO,MAAM,sCAAsC,mBAAmB,CAAC;AAsCvE;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,EACpB,gBAAgB,EAAE,GAAG,CAAE,MAAM,CAAE,GAC7B,IAAI,CAoIN;AAMD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,OAAO,EACb,YAAY,EAAE,IAAI,EAClB,gBAAgB,EAAE,GAAG,CAAE,MAAM,CAAE,GAC7B,WAAW,CAkIb;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,UAI/B,CAAC"}
1
+ {"version":3,"file":"crdt.d.ts","sourceRoot":"","sources":["../../src/utils/crdt.ts"],"names":[],"mappings":"AAUA,OAAO,EACN,KAAK,OAAO,EAEZ,KAAK,UAAU,EACf,CAAC,EACD,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAIN,KAAK,KAAK,EAEV,KAAK,OAAO,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAM5C,OAAO,EAIN,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,MAAM,cAAc,CAAC;AAGtB,MAAM,MAAM,WAAW,GAAG,OAAO,CAAE,IAAI,CAAE,GAAG;IAC3C,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAE,SAAS,CAAE,GAAG,MAAM,CAAC;IACrC,OAAO,CAAC,EAAE,IAAI,CAAE,SAAS,CAAE,GAAG,MAAM,CAAC;IACrC,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,KAAK,CAAC,EAAE,IAAI,CAAE,OAAO,CAAE,GAAG,MAAM,CAAC;CACjC,CAAC;AAGF,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC9C,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,QAAQ,CAAE,UAAU,CAAE,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;CACd;AAED,eAAO,MAAM,sCAAsC,mBAAmB,CAAC;AAsCvE;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,WAAW,EACpB,gBAAgB,EAAE,GAAG,CAAE,MAAM,CAAE,GAC7B,IAAI,CAoIN;AAMD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,OAAO,EACb,YAAY,EAAE,IAAI,EAClB,gBAAgB,EAAE,GAAG,CAAE,MAAM,CAAE,GAC7B,WAAW,CA2Ib;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,UAI/B,CAAC"}
@@ -5,7 +5,6 @@ export { default as forwardResolver } from "./forward-resolver";
5
5
  export { default as onSubKey } from "./on-sub-key";
6
6
  export { default as replaceAction } from "./replace-action";
7
7
  export { default as withWeakMapCache } from "./with-weak-map-cache";
8
- export { default as isRawAttribute } from "./is-raw-attribute";
9
8
  export { default as setNestedValue } from "./set-nested-value";
10
9
  export { default as getNestedValue } from "./get-nested-value";
11
10
  export { default as isNumericID } from "./is-numeric-id";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/core-data",
3
- "version": "7.42.0",
3
+ "version": "7.43.0",
4
4
  "description": "Access to and manipulation of core WordPress entities.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -49,22 +49,22 @@
49
49
  "build-module/index.mjs"
50
50
  ],
51
51
  "dependencies": {
52
- "@wordpress/api-fetch": "^7.42.0",
53
- "@wordpress/block-editor": "^15.15.0",
54
- "@wordpress/blocks": "^15.15.0",
55
- "@wordpress/compose": "^7.42.0",
56
- "@wordpress/data": "^10.42.0",
57
- "@wordpress/deprecated": "^4.42.0",
58
- "@wordpress/element": "^6.42.0",
59
- "@wordpress/html-entities": "^4.42.0",
60
- "@wordpress/i18n": "^6.15.0",
61
- "@wordpress/is-shallow-equal": "^5.42.0",
62
- "@wordpress/private-apis": "^1.42.0",
63
- "@wordpress/rich-text": "^7.42.0",
64
- "@wordpress/sync": "^1.42.0",
65
- "@wordpress/undo-manager": "^1.42.0",
66
- "@wordpress/url": "^4.42.0",
67
- "@wordpress/warning": "^3.42.0",
52
+ "@wordpress/api-fetch": "^7.43.0",
53
+ "@wordpress/block-editor": "^15.16.0",
54
+ "@wordpress/blocks": "^15.16.0",
55
+ "@wordpress/compose": "^7.43.0",
56
+ "@wordpress/data": "^10.43.0",
57
+ "@wordpress/deprecated": "^4.43.0",
58
+ "@wordpress/element": "^6.43.0",
59
+ "@wordpress/html-entities": "^4.43.0",
60
+ "@wordpress/i18n": "^6.16.0",
61
+ "@wordpress/is-shallow-equal": "^5.43.0",
62
+ "@wordpress/private-apis": "^1.43.0",
63
+ "@wordpress/rich-text": "^7.43.0",
64
+ "@wordpress/sync": "^1.43.0",
65
+ "@wordpress/undo-manager": "^1.43.0",
66
+ "@wordpress/url": "^4.43.0",
67
+ "@wordpress/warning": "^3.43.0",
68
68
  "change-case": "^4.1.2",
69
69
  "equivalent-key-map": "^0.2.2",
70
70
  "fast-deep-equal": "^3.1.3",
@@ -84,5 +84,5 @@
84
84
  "publishConfig": {
85
85
  "access": "public"
86
86
  },
87
- "gitHead": "c20787b1778ae64c2db65643b1c236309d68e6ba"
87
+ "gitHead": "2cea90674d11aa521ec3f71652fb3a6a4c383969"
88
88
  }
@@ -173,3 +173,21 @@ export const setCollaborationSupported =
173
173
  ( { dispatch } ) => {
174
174
  dispatch( { type: 'SET_COLLABORATION_SUPPORTED', supported } );
175
175
  };
176
+
177
+ /**
178
+ * Returns an action object used to receive view config.
179
+ *
180
+ * @param {string} kind Entity kind.
181
+ * @param {string} name Entity name.
182
+ * @param {Object} config View config object.
183
+ *
184
+ * @return {Object} Action object.
185
+ */
186
+ export function receiveViewConfig( kind, name, config ) {
187
+ return {
188
+ type: 'RECEIVE_VIEW_CONFIG',
189
+ kind,
190
+ name,
191
+ config,
192
+ };
193
+ }