@wordpress/core-data 7.40.2-next.v.202602271551.0 → 7.41.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 (67) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/actions.cjs +1 -1
  3. package/build/actions.cjs.map +2 -2
  4. package/build/awareness/types.cjs.map +1 -1
  5. package/build/entities.cjs +2 -2
  6. package/build/entities.cjs.map +2 -2
  7. package/build/hooks/use-post-editor-awareness-state.cjs +38 -0
  8. package/build/hooks/use-post-editor-awareness-state.cjs.map +2 -2
  9. package/build/private-actions.cjs +7 -2
  10. package/build/private-actions.cjs.map +2 -2
  11. package/build/private-apis.cjs +4 -1
  12. package/build/private-apis.cjs.map +2 -2
  13. package/build/private-selectors.cjs +7 -2
  14. package/build/private-selectors.cjs.map +2 -2
  15. package/build/reducer.cjs +11 -1
  16. package/build/reducer.cjs.map +2 -2
  17. package/build/selectors.cjs.map +2 -2
  18. package/build/sync.cjs +6 -3
  19. package/build/sync.cjs.map +2 -2
  20. package/build-module/actions.mjs +1 -1
  21. package/build-module/actions.mjs.map +2 -2
  22. package/build-module/entities.mjs +2 -2
  23. package/build-module/entities.mjs.map +2 -2
  24. package/build-module/hooks/use-post-editor-awareness-state.mjs +37 -0
  25. package/build-module/hooks/use-post-editor-awareness-state.mjs.map +2 -2
  26. package/build-module/private-actions.mjs +5 -1
  27. package/build-module/private-actions.mjs.map +2 -2
  28. package/build-module/private-apis.mjs +6 -2
  29. package/build-module/private-apis.mjs.map +2 -2
  30. package/build-module/private-selectors.mjs +5 -1
  31. package/build-module/private-selectors.mjs.map +2 -2
  32. package/build-module/reducer.mjs +10 -1
  33. package/build-module/reducer.mjs.map +2 -2
  34. package/build-module/selectors.mjs.map +2 -2
  35. package/build-module/sync.mjs +4 -2
  36. package/build-module/sync.mjs.map +2 -2
  37. package/build-types/awareness/types.d.ts +5 -0
  38. package/build-types/awareness/types.d.ts.map +1 -1
  39. package/build-types/entities.d.ts +1 -1
  40. package/build-types/entities.d.ts.map +1 -1
  41. package/build-types/hooks/use-post-editor-awareness-state.d.ts +10 -1
  42. package/build-types/hooks/use-post-editor-awareness-state.d.ts.map +1 -1
  43. package/build-types/index.d.ts.map +1 -1
  44. package/build-types/private-actions.d.ts +1 -0
  45. package/build-types/private-actions.d.ts.map +1 -1
  46. package/build-types/private-apis.d.ts.map +1 -1
  47. package/build-types/private-selectors.d.ts +7 -0
  48. package/build-types/private-selectors.d.ts.map +1 -1
  49. package/build-types/reducer.d.ts +15 -0
  50. package/build-types/reducer.d.ts.map +1 -1
  51. package/build-types/selectors.d.ts +1 -0
  52. package/build-types/selectors.d.ts.map +1 -1
  53. package/build-types/sync.d.ts +2 -2
  54. package/build-types/sync.d.ts.map +1 -1
  55. package/package.json +18 -18
  56. package/src/actions.js +2 -2
  57. package/src/awareness/types.ts +6 -0
  58. package/src/entities.js +3 -3
  59. package/src/hooks/use-post-editor-awareness-state.ts +70 -0
  60. package/src/private-actions.js +13 -0
  61. package/src/private-apis.js +4 -0
  62. package/src/private-selectors.ts +10 -0
  63. package/src/reducer.js +21 -0
  64. package/src/selectors.ts +1 -0
  65. package/src/sync.ts +2 -0
  66. package/src/test/entities.js +19 -15
  67. package/src/utils/test/crdt-blocks.ts +347 -0
@@ -59,4 +59,9 @@ export type SerializableYItem = Pick<Y.Item, 'id' | 'length' | 'origin' | 'right
59
59
  right: SerializableYItemRef | null;
60
60
  };
61
61
  export type EqualityFieldCheck<State, FieldName extends keyof State> = (value1?: State[FieldName], value2?: State[FieldName]) => boolean;
62
+ export interface PostSaveEvent {
63
+ savedAt: number;
64
+ savedByClientId: number;
65
+ postStatus: string | undefined;
66
+ }
62
67
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/awareness/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAEzC;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAClC,IAAI,CAAE,MAAM,CAAE,EACd,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CACtC,GAAG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACzB,gBAAgB,EAAE,gBAAgB,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,SAAS,EAAE,cAAc,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,SAAS;IACjD,WAAW,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CAAE,KAAK,IAAK,KAAK,GAAG;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;CACd,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,aAAa,CAAE,eAAe,CAAE,CAAC;AAGxE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAE,gBAAgB,EAAE,MAAM,CAAE,GAAG;IACtE,QAAQ,EAAE,gBAAgB,CAAE,IAAI,CAAE,CAAC;CACnC,CAAC;AAEF,MAAM,WAAW,aAAa;IAC7B,GAAG,EAAE,MAAM,CAAE,MAAM,EAAE,OAAO,CAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAE,MAAM,EAAE,KAAK,CAAE,iBAAiB,CAAE,CAAE,CAAC;IACtD,eAAe,EAAE,MAAM,CAAE,MAAM,EAAE,qBAAqB,CAAE,CAAC;CACzD;AAGD,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACtC,CAAC,CAAC,IAAI,EACN,IAAI,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CACtC,CAAC;AAGF,MAAM,MAAM,iBAAiB,GAAG,IAAI,CACnC,CAAC,CAAC,IAAI,EACJ,IAAI,GACJ,QAAQ,GACR,QAAQ,GACR,aAAa,GACb,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,SAAS,GACT,MAAM,CACR,GAAG;IACH,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAClC,KAAK,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAE,KAAK,EAAE,SAAS,SAAS,MAAM,KAAK,IAAK,CACxE,MAAM,CAAC,EAAE,KAAK,CAAE,SAAS,CAAE,EAC3B,MAAM,CAAC,EAAE,KAAK,CAAE,SAAS,CAAE,KACvB,OAAO,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/awareness/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAEzC;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAClC,IAAI,CAAE,MAAM,CAAE,EACd,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CACtC,GAAG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACzB,gBAAgB,EAAE,gBAAgB,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,SAAS,EAAE,cAAc,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,SAAS;IACjD,WAAW,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CAAE,KAAK,IAAK,KAAK,GAAG;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;CACd,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,aAAa,CAAE,eAAe,CAAE,CAAC;AAGxE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAE,gBAAgB,EAAE,MAAM,CAAE,GAAG;IACtE,QAAQ,EAAE,gBAAgB,CAAE,IAAI,CAAE,CAAC;CACnC,CAAC;AAEF,MAAM,WAAW,aAAa;IAC7B,GAAG,EAAE,MAAM,CAAE,MAAM,EAAE,OAAO,CAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAE,MAAM,EAAE,KAAK,CAAE,iBAAiB,CAAE,CAAE,CAAC;IACtD,eAAe,EAAE,MAAM,CAAE,MAAM,EAAE,qBAAqB,CAAE,CAAC;CACzD;AAGD,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACtC,CAAC,CAAC,IAAI,EACN,IAAI,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CACtC,CAAC;AAGF,MAAM,MAAM,iBAAiB,GAAG,IAAI,CACnC,CAAC,CAAC,IAAI,EACJ,IAAI,GACJ,QAAQ,GACR,QAAQ,GACR,aAAa,GACb,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,SAAS,GACT,MAAM,CACR,GAAG;IACH,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAClC,KAAK,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAE,KAAK,EAAE,SAAS,SAAS,MAAM,KAAK,IAAK,CACxE,MAAM,CAAC,EAAE,KAAK,CAAE,SAAS,CAAE,EAC3B,MAAM,CAAC,EAAE,KAAK,CAAE,SAAS,CAAE,KACvB,OAAO,CAAC;AAEb,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B"}
@@ -327,7 +327,7 @@ export const additionalEntityConfigLoaders: ({
327
327
  plural: string;
328
328
  loadEntities: typeof loadSiteEntity;
329
329
  })[];
330
- export function prePersistPostType(persistedRecord: any, edits: any, name: string, isTemplate: boolean): any;
330
+ export function prePersistPostType(persistedRecord: any, edits: any, name: string, isTemplate: boolean): Promise<any>;
331
331
  export function getMethodName(kind: string, name: string, prefix?: string): string;
332
332
  /**
333
333
  * Returns the list of post type entities.
@@ -1 +1 @@
1
- {"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../src/entities.js"],"names":[],"mappings":"AAwBA,iCAAkC,IAAI,CAAC;AAYvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiNI;;;;;;;;;;;;AAcJ;;;;;;;;;;KASE;AAWK,2EAJI,MAAM,cACN,OAAO,OA8CjB;AA2LM,oCANI,MAAM,QACN,MAAM,WACN,MAAM,GAEL,MAAM,CAMjB;AA7LD;;;;GAIG;AACH,sDAoGC;AA6BD;;;;GAIG;AACH,gDA0BC"}
1
+ {"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../src/entities.js"],"names":[],"mappings":"AAwBA,iCAAkC,IAAI,CAAC;AAYvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiNI;;;;;;;;;;;;AAcJ;;;;;;;;;;KASE;AAWK,2EAJI,MAAM,cACN,OAAO,GACN,OAAO,KAAU,CA6C5B;AA2LM,oCANI,MAAM,QACN,MAAM,WACN,MAAM,GAEL,MAAM,CAMjB;AA7LD;;;;GAIG;AACH,sDAoGC;AA6BD;;;;GAIG;AACH,gDA0BC"}
@@ -1,4 +1,4 @@
1
- import type { PostEditorAwarenessState as ActiveCollaborator, YDocDebugData } from '../awareness/types';
1
+ import type { PostEditorAwarenessState as ActiveCollaborator, PostSaveEvent, YDocDebugData } from '../awareness/types';
2
2
  import type { SelectionState } from '../types';
3
3
  interface ResolvedSelection {
4
4
  textIndex: number | null;
@@ -36,5 +36,14 @@ export declare function useGetDebugData(postId: number | null, postType: string
36
36
  * @return {boolean} Whether the current collaborator is disconnected.
37
37
  */
38
38
  export declare function useIsDisconnected(postId: number | null, postType: string | null): boolean;
39
+ /**
40
+ * Hook that subscribes to the CRDT state map and returns the most recent
41
+ * save event (timestamp + client ID). The state map is updated by
42
+ * `markEntityAsSaved` in `@wordpress/sync`
43
+ *
44
+ * @param postId The ID of the post.
45
+ * @param postType The type of the post.
46
+ */
47
+ export declare function useLastPostSave(postId: number | null, postType: string | null): PostSaveEvent | null;
39
48
  export {};
40
49
  //# sourceMappingURL=use-post-editor-awareness-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-post-editor-awareness-state.d.ts","sourceRoot":"","sources":["../../src/hooks/use-post-editor-awareness-state.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACX,wBAAwB,IAAI,kBAAkB,EAC9C,aAAa,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/C,UAAU,iBAAiB;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAmFD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,kBAAkB,EAAE,CAEtB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,CAAE,SAAS,EAAE,cAAc,KAAM,iBAAiB,CAEpD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,aAAa,CAEf;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,OAAO,CAGT"}
1
+ {"version":3,"file":"use-post-editor-awareness-state.d.ts","sourceRoot":"","sources":["../../src/hooks/use-post-editor-awareness-state.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACX,wBAAwB,IAAI,kBAAkB,EAC9C,aAAa,EACb,aAAa,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/C,UAAU,iBAAiB;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAmFD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,kBAAkB,EAAE,CAEtB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,CAAE,SAAS,EAAE,cAAc,KAAM,iBAAiB,CAEpD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,aAAa,CAEf;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,OAAO,CAGT;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,aAAa,GAAG,IAAI,CAuDtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"AA6HA;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;4CAmBg1uB,OAAO;;;yBAAn6pB,YAAO,EAAC,YAAO,EAAC,yBAAW,EAAC,iBAAQ,EAAC;;;KAA4D,MAAe;;;KAA4B;uBAAi0E,YAAK,EAAC,YAAK,EAAC,yBAAS,EAAC,UAAM,EAAC;;KAAa;6BAA65F,YAAK,EAAC,YAAK,EAAC,yBAAS;iBAAs4B;;;KAAqB;iBAA4R;;;KAAqB;;uBAAutC,YAAO,EAAC,YAAO,EAAC,WAAS,EAAC;;;;KAA4F,MAAe;;;;KAAoC;0BAAk3N,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAtoU,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAnBtupC;;;;;;;;;;2BAzHxC,aAAa"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"AA6HA;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;4CAmB01uB,OAAO;;;yBAA76pB,YAAO,EAAC,YAAO,EAAC,yBAAW,EAAC,iBAAQ,EAAC;;;KAA4D,MAAe;;;KAA4B;uBAAi0E,YAAK,EAAC,YAAK,EAAC,yBAAS,EAAC,UAAM,EAAC;;KAAa;6BAA65F,YAAK,EAAC,YAAK,EAAC,yBAAS;iBAAs4B;;;KAAqB;iBAA4R;;;KAAqB;;uBAAutC,YAAO,EAAC,YAAO,EAAC,WAAS,EAAC;;;;KAA4F,MAAe;;;;KAAoC;0BAA43N,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAA9mU,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAnBxwpC;;;;;;;;;;2BAzHxC,aAAa"}
@@ -28,6 +28,7 @@ export function editMediaEntity(recordId: string, edits?: Edits, { __unstableFet
28
28
  __unstableFetch: Function;
29
29
  throwOnError: boolean;
30
30
  }): Promise<any>;
31
+ export function setCollaborationSupported(supported: boolean): any;
31
32
  export type Modifier = {
32
33
  /**
33
34
  * - The type of modifier.
@@ -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"}
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 +1 @@
1
- {"version":3,"file":"private-apis.d.ts","sourceRoot":"","sources":["../src/private-apis.js"],"names":[],"mappings":"AAWA,6BAA8B"}
1
+ {"version":3,"file":"private-apis.d.ts","sourceRoot":"","sources":["../src/private-apis.js"],"names":[],"mappings":"AAaA,6BAA8B"}
@@ -102,5 +102,12 @@ export declare function getEditorSettings(state: State): Record<string, any> | n
102
102
  * @return Editor assets object or null if not loaded.
103
103
  */
104
104
  export declare function getEditorAssets(state: State): Record<string, any> | null;
105
+ /**
106
+ * Returns whether collaboration is supported.
107
+ *
108
+ * @param state Data state.
109
+ * @return Whether collaboration is supported.
110
+ */
111
+ export declare function isCollaborationSupported(state: State): boolean;
105
112
  export {};
106
113
  //# 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"}
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"}
@@ -154,6 +154,19 @@ export function editorAssets(state: any, action: any): any;
154
154
  * @return {Object} Updated state.
155
155
  */
156
156
  export function syncConnectionStatuses(state: any, action: any): any;
157
+ /**
158
+ * Reducer managing whether collaboration is supported.
159
+ *
160
+ * Default to true, as collaboration is supported by default
161
+ * unless explicitly disabled due to unsupported conditions
162
+ * such as metaboxes.
163
+ *
164
+ * @param {boolean} state Current state.
165
+ * @param {Object} action Dispatched action.
166
+ *
167
+ * @return {boolean} Updated state.
168
+ */
169
+ export function collaborationSupported(state: boolean | undefined, action: any): boolean;
157
170
  export function entities(state: any, action: any): any;
158
171
  declare const _default: import("redux").Reducer<{
159
172
  users: any;
@@ -178,6 +191,7 @@ declare const _default: import("redux").Reducer<{
178
191
  editorSettings: any;
179
192
  editorAssets: any;
180
193
  syncConnectionStatuses: any;
194
+ collaborationSupported: boolean;
181
195
  }, any, Partial<{
182
196
  users: any;
183
197
  currentTheme: string | undefined;
@@ -201,6 +215,7 @@ declare const _default: import("redux").Reducer<{
201
215
  editorSettings: any;
202
216
  editorAssets: any;
203
217
  syncConnectionStatuses: any;
218
+ collaborationSupported: boolean | undefined;
204
219
  }>>;
205
220
  export default _default;
206
221
  export type AnyFunction = import("./types").AnyFunction;
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../src/reducer.js"],"names":[],"mappings":"AAmBA,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;AAiND;;;;;;;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;AAtTM,uDAwEN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA9aa,OAAO,SAAS,EAAE,WAAW"}
1
+ {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../src/reducer.js"],"names":[],"mappings":"AAmBA,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;AAiND;;;;;;;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,CAQlB;AA1UM,uDAwEN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA9aa,OAAO,SAAS,EAAE,WAAW"}
@@ -25,6 +25,7 @@ export interface State {
25
25
  editorSettings: Record<string, any> | null;
26
26
  editorAssets: Record<string, any> | null;
27
27
  syncConnectionStatuses?: Record<string, ConnectionStatus>;
28
+ collaborationSupported: boolean;
28
29
  }
29
30
  type EntityRecordKey = string | number;
30
31
  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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"}
@@ -2,7 +2,7 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { type SyncManager } from '@wordpress/sync';
5
- declare const Delta: any, CRDT_DOC_META_PERSISTENCE_KEY: any, CRDT_RECORD_MAP_KEY: any, LOCAL_EDITOR_ORIGIN: any;
6
- export { Delta, CRDT_DOC_META_PERSISTENCE_KEY, CRDT_RECORD_MAP_KEY, LOCAL_EDITOR_ORIGIN, };
5
+ declare const Delta: any, CRDT_DOC_META_PERSISTENCE_KEY: any, CRDT_RECORD_MAP_KEY: any, LOCAL_EDITOR_ORIGIN: any, retrySyncConnection: any;
6
+ export { Delta, CRDT_DOC_META_PERSISTENCE_KEY, CRDT_RECORD_MAP_KEY, LOCAL_EDITOR_ORIGIN, retrySyncConnection, };
7
7
  export declare function getSyncManager(): SyncManager | undefined;
8
8
  //# sourceMappingURL=sync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAEN,KAAK,WAAW,EAChB,MAAM,iBAAiB,CAAC;AAOzB,QAAA,MAEC,KAAK,OACL,6BAA6B,OAC7B,mBAAmB,OACnB,mBAAmB,KACS,CAAC;AAE9B,OAAO,EACN,KAAK,EACL,6BAA6B,EAC7B,mBAAmB,EACnB,mBAAmB,GACnB,CAAC;AAIF,wBAAgB,cAAc,IAAI,WAAW,GAAG,SAAS,CAQxD"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAEN,KAAK,WAAW,EAChB,MAAM,iBAAiB,CAAC;AAOzB,QAAA,MAEC,KAAK,OACL,6BAA6B,OAC7B,mBAAmB,OACnB,mBAAmB,OACnB,mBAAmB,KACS,CAAC;AAE9B,OAAO,EACN,KAAK,EACL,6BAA6B,EAC7B,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACnB,CAAC;AAIF,wBAAgB,cAAc,IAAI,WAAW,GAAG,SAAS,CAQxD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/core-data",
3
- "version": "7.40.2-next.v.202602271551.0+464abe399",
3
+ "version": "7.41.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.40.1-next.v.202602271551.0+464abe399",
53
- "@wordpress/block-editor": "^15.13.2-next.v.202602271551.0+464abe399",
54
- "@wordpress/blocks": "^15.13.1-next.v.202602271551.0+464abe399",
55
- "@wordpress/compose": "^7.40.1-next.v.202602271551.0+464abe399",
56
- "@wordpress/data": "^10.40.1-next.v.202602271551.0+464abe399",
57
- "@wordpress/deprecated": "^4.40.1-next.v.202602271551.0+464abe399",
58
- "@wordpress/element": "^6.40.1-next.v.202602271551.0+464abe399",
59
- "@wordpress/html-entities": "^4.40.1-next.v.202602271551.0+464abe399",
60
- "@wordpress/i18n": "^6.13.1-next.v.202602271551.0+464abe399",
61
- "@wordpress/is-shallow-equal": "^5.40.1-next.v.202602271551.0+464abe399",
62
- "@wordpress/private-apis": "^1.40.1-next.v.202602271551.0+464abe399",
63
- "@wordpress/rich-text": "^7.40.1-next.v.202602271551.0+464abe399",
64
- "@wordpress/sync": "^1.40.1-next.v.202602271551.0+464abe399",
65
- "@wordpress/undo-manager": "^1.40.1-next.v.202602271551.0+464abe399",
66
- "@wordpress/url": "^4.40.1-next.v.202602271551.0+464abe399",
67
- "@wordpress/warning": "^3.40.1-next.v.202602271551.0+464abe399",
52
+ "@wordpress/api-fetch": "^7.41.0",
53
+ "@wordpress/block-editor": "^15.14.0",
54
+ "@wordpress/blocks": "^15.14.0",
55
+ "@wordpress/compose": "^7.41.0",
56
+ "@wordpress/data": "^10.41.0",
57
+ "@wordpress/deprecated": "^4.41.0",
58
+ "@wordpress/element": "^6.41.0",
59
+ "@wordpress/html-entities": "^4.41.0",
60
+ "@wordpress/i18n": "^6.14.0",
61
+ "@wordpress/is-shallow-equal": "^5.41.0",
62
+ "@wordpress/private-apis": "^1.41.0",
63
+ "@wordpress/rich-text": "^7.41.0",
64
+ "@wordpress/sync": "^1.41.0",
65
+ "@wordpress/undo-manager": "^1.41.0",
66
+ "@wordpress/url": "^4.41.0",
67
+ "@wordpress/warning": "^3.41.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": "95aa7055a5757219e2d96a91efc69f7dd1b2d4c3"
87
+ "gitHead": "8bfc179b9aed74c0a6dd6e8edf7a49e40e4f87cc"
88
88
  }
package/src/actions.js CHANGED
@@ -773,10 +773,10 @@ export const saveEntityRecord =
773
773
  if ( entityConfig.__unstablePrePersist ) {
774
774
  edits = {
775
775
  ...edits,
776
- ...entityConfig.__unstablePrePersist(
776
+ ...( await entityConfig.__unstablePrePersist(
777
777
  persistedRecord,
778
778
  edits
779
- ),
779
+ ) ),
780
780
  };
781
781
  }
782
782
  updatedRecord = await __unstableFetch( {
@@ -94,3 +94,9 @@ export type EqualityFieldCheck< State, FieldName extends keyof State > = (
94
94
  value1?: State[ FieldName ],
95
95
  value2?: State[ FieldName ]
96
96
  ) => boolean;
97
+
98
+ export interface PostSaveEvent {
99
+ savedAt: number;
100
+ savedByClientId: number;
101
+ postStatus: string | undefined;
102
+ }
package/src/entities.js CHANGED
@@ -275,9 +275,9 @@ export const additionalEntityConfigLoaders = [
275
275
  * @param {Object} edits Edits.
276
276
  * @param {string} name Post type name.
277
277
  * @param {boolean} isTemplate Whether the post type is a template.
278
- * @return {Object} Updated edits.
278
+ * @return {Promise< Object >} Updated edits.
279
279
  */
280
- export const prePersistPostType = (
280
+ export const prePersistPostType = async (
281
281
  persistedRecord,
282
282
  edits,
283
283
  name,
@@ -306,7 +306,7 @@ export const prePersistPostType = (
306
306
  if ( persistedRecord ) {
307
307
  const objectType = `postType/${ name }`;
308
308
  const objectId = persistedRecord.id;
309
- const serializedDoc = getSyncManager()?.createPersistedCRDTDoc(
309
+ const serializedDoc = await getSyncManager()?.createPersistedCRDTDoc(
310
310
  objectType,
311
311
  objectId
312
312
  );
@@ -2,6 +2,7 @@
2
2
  * External dependencies
3
3
  */
4
4
  import { useEffect, useState } from '@wordpress/element';
5
+ import type { Y } from '@wordpress/sync';
5
6
 
6
7
  /**
7
8
  * Internal dependencies
@@ -9,6 +10,7 @@ import { useEffect, useState } from '@wordpress/element';
9
10
  import { getSyncManager } from '../sync';
10
11
  import type {
11
12
  PostEditorAwarenessState as ActiveCollaborator,
13
+ PostSaveEvent,
12
14
  YDocDebugData,
13
15
  } from '../awareness/types';
14
16
  import type { SelectionState } from '../types';
@@ -156,3 +158,71 @@ export function useIsDisconnected(
156
158
  return usePostEditorAwarenessState( postId, postType )
157
159
  .isCurrentCollaboratorDisconnected;
158
160
  }
161
+
162
+ /**
163
+ * Hook that subscribes to the CRDT state map and returns the most recent
164
+ * save event (timestamp + client ID). The state map is updated by
165
+ * `markEntityAsSaved` in `@wordpress/sync`
166
+ *
167
+ * @param postId The ID of the post.
168
+ * @param postType The type of the post.
169
+ */
170
+ export function useLastPostSave(
171
+ postId: number | null,
172
+ postType: string | null
173
+ ): PostSaveEvent | null {
174
+ const [ lastSave, setLastSave ] = useState< PostSaveEvent | null >( null );
175
+
176
+ useEffect( () => {
177
+ if ( null === postId || null === postType ) {
178
+ setLastSave( null );
179
+ return;
180
+ }
181
+
182
+ const awareness = getSyncManager()?.getAwareness< PostEditorAwareness >(
183
+ `postType/${ postType }`,
184
+ postId.toString()
185
+ );
186
+
187
+ if ( ! awareness ) {
188
+ setLastSave( null );
189
+ return;
190
+ }
191
+
192
+ awareness.setUp();
193
+
194
+ const stateMap = awareness.doc.getMap( 'state' );
195
+ const recordMap = awareness.doc.getMap( 'document' );
196
+
197
+ // Only notify for saves that occur after the observer is
198
+ // set up. This prevents false notifications when the Y.Doc
199
+ // syncs historical state on page load or peer reconnect.
200
+ const setupTime = Date.now();
201
+
202
+ const observer = ( event: Y.YMapEvent< unknown > ) => {
203
+ if ( event.keysChanged.has( 'savedAt' ) ) {
204
+ const savedAt = stateMap.get( 'savedAt' ) as number;
205
+ const savedByClientId = stateMap.get( 'savedBy' ) as number;
206
+
207
+ if (
208
+ typeof savedAt === 'number' &&
209
+ typeof savedByClientId === 'number' &&
210
+ savedAt > setupTime
211
+ ) {
212
+ const postStatus = recordMap.get( 'status' ) as
213
+ | string
214
+ | undefined;
215
+ setLastSave( { savedAt, savedByClientId, postStatus } );
216
+ }
217
+ }
218
+ };
219
+
220
+ stateMap.observe( observer );
221
+
222
+ return () => {
223
+ stateMap.unobserve( observer );
224
+ };
225
+ }, [ postId, postType ] );
226
+
227
+ return lastSave;
228
+ }
@@ -160,3 +160,16 @@ export function receiveEditorAssets( assets ) {
160
160
  assets,
161
161
  };
162
162
  }
163
+
164
+ /**
165
+ * Returns an action object used to set whether collaboration is supported.
166
+ *
167
+ * @param {boolean} supported Whether collaboration is supported.
168
+ *
169
+ * @return {Object} Action object.
170
+ */
171
+ export const setCollaborationSupported =
172
+ ( supported ) =>
173
+ ( { dispatch } ) => {
174
+ dispatch( { type: 'SET_COLLABORATION_SUPPORTED', supported } );
175
+ };
@@ -6,13 +6,17 @@ import { RECEIVE_INTERMEDIATE_RESULTS } from './utils';
6
6
  import {
7
7
  useActiveCollaborators,
8
8
  useResolvedSelection,
9
+ useLastPostSave,
9
10
  } from './hooks/use-post-editor-awareness-state';
10
11
  import { lock } from './lock-unlock';
12
+ import { retrySyncConnection } from './sync';
11
13
 
12
14
  export const privateApis = {};
13
15
  lock( privateApis, {
14
16
  useEntityRecordsWithPermissions,
15
17
  RECEIVE_INTERMEDIATE_RESULTS,
18
+ retrySyncConnection,
16
19
  useActiveCollaborators,
17
20
  useResolvedSelection,
21
+ useLastPostSave,
18
22
  } );
@@ -304,3 +304,13 @@ export function getEditorSettings(
304
304
  export function getEditorAssets( state: State ): Record< string, any > | null {
305
305
  return state.editorAssets;
306
306
  }
307
+
308
+ /**
309
+ * Returns whether collaboration is supported.
310
+ *
311
+ * @param state Data state.
312
+ * @return Whether collaboration is supported.
313
+ */
314
+ export function isCollaborationSupported( state: State ): boolean {
315
+ return state.collaborationSupported;
316
+ }
package/src/reducer.js CHANGED
@@ -687,6 +687,26 @@ export function syncConnectionStatuses( state = {}, action ) {
687
687
  return state;
688
688
  }
689
689
 
690
+ /**
691
+ * Reducer managing whether collaboration is supported.
692
+ *
693
+ * Default to true, as collaboration is supported by default
694
+ * unless explicitly disabled due to unsupported conditions
695
+ * such as metaboxes.
696
+ *
697
+ * @param {boolean} state Current state.
698
+ * @param {Object} action Dispatched action.
699
+ *
700
+ * @return {boolean} Updated state.
701
+ */
702
+ export function collaborationSupported( state = true, action ) {
703
+ switch ( action.type ) {
704
+ case 'SET_COLLABORATION_SUPPORTED':
705
+ return action.supported;
706
+ }
707
+ return state;
708
+ }
709
+
690
710
  export default combineReducers( {
691
711
  users,
692
712
  currentTheme,
@@ -710,4 +730,5 @@ export default combineReducers( {
710
730
  editorSettings,
711
731
  editorAssets,
712
732
  syncConnectionStatuses,
733
+ collaborationSupported,
713
734
  } );
package/src/selectors.ts CHANGED
@@ -54,6 +54,7 @@ export interface State {
54
54
  editorSettings: Record< string, any > | null;
55
55
  editorAssets: Record< string, any > | null;
56
56
  syncConnectionStatuses?: Record< string, ConnectionStatus >;
57
+ collaborationSupported: boolean;
57
58
  }
58
59
 
59
60
  type EntityRecordKey = string | number;
package/src/sync.ts CHANGED
@@ -17,6 +17,7 @@ const {
17
17
  CRDT_DOC_META_PERSISTENCE_KEY,
18
18
  CRDT_RECORD_MAP_KEY,
19
19
  LOCAL_EDITOR_ORIGIN,
20
+ retrySyncConnection,
20
21
  } = unlock( syncPrivateApis );
21
22
 
22
23
  export {
@@ -24,6 +25,7 @@ export {
24
25
  CRDT_DOC_META_PERSISTENCE_KEY,
25
26
  CRDT_RECORD_MAP_KEY,
26
27
  LOCAL_EDITOR_ORIGIN,
28
+ retrySyncConnection,
27
29
  };
28
30
 
29
31
  let syncManager: SyncManager;
@@ -51,12 +51,14 @@ describe( 'getMethodName', () => {
51
51
  } );
52
52
 
53
53
  describe( 'prePersistPostType', () => {
54
- it( 'set the status to draft and empty the title when saving auto-draft posts', () => {
54
+ it( 'set the status to draft and empty the title when saving auto-draft posts', async () => {
55
55
  let record = {
56
56
  status: 'auto-draft',
57
57
  };
58
58
  const edits = {};
59
- expect( prePersistPostType( record, edits, 'post', false ) ).toEqual( {
59
+ expect(
60
+ await prePersistPostType( record, edits, 'post', false )
61
+ ).toEqual( {
60
62
  status: 'draft',
61
63
  title: '',
62
64
  } );
@@ -64,15 +66,17 @@ describe( 'prePersistPostType', () => {
64
66
  record = {
65
67
  status: 'publish',
66
68
  };
67
- expect( prePersistPostType( record, edits, 'post', false ) ).toEqual(
68
- {}
69
- );
69
+ expect(
70
+ await prePersistPostType( record, edits, 'post', false )
71
+ ).toEqual( {} );
70
72
 
71
73
  record = {
72
74
  status: 'auto-draft',
73
75
  title: 'Auto Draft',
74
76
  };
75
- expect( prePersistPostType( record, edits, 'post', false ) ).toEqual( {
77
+ expect(
78
+ await prePersistPostType( record, edits, 'post', false )
79
+ ).toEqual( {
76
80
  status: 'draft',
77
81
  title: '',
78
82
  } );
@@ -81,23 +85,23 @@ describe( 'prePersistPostType', () => {
81
85
  status: 'publish',
82
86
  title: 'My Title',
83
87
  };
84
- expect( prePersistPostType( record, edits, 'post', false ) ).toEqual(
85
- {}
86
- );
88
+ expect(
89
+ await prePersistPostType( record, edits, 'post', false )
90
+ ).toEqual( {} );
87
91
  } );
88
92
 
89
- it( 'does not set the status to draft and empty the title when saving templates', () => {
93
+ it( 'does not set the status to draft and empty the title when saving templates', async () => {
90
94
  const record = {
91
95
  status: 'auto-draft',
92
96
  title: 'Auto Draft',
93
97
  };
94
98
  const edits = {};
95
- expect( prePersistPostType( record, edits, 'post', true ) ).toEqual(
96
- {}
97
- );
99
+ expect(
100
+ await prePersistPostType( record, edits, 'post', true )
101
+ ).toEqual( {} );
98
102
  } );
99
103
 
100
- it( 'adds meta with serialized CRDT doc when createPersistedCRDTDoc returns a value', () => {
104
+ it( 'adds meta with serialized CRDT doc when createPersistedCRDTDoc returns a value', async () => {
101
105
  const mockSerializedDoc = 'serialized-crdt-doc-data';
102
106
  getSyncManager.mockReturnValue( {
103
107
  createPersistedCRDTDoc: jest
@@ -107,7 +111,7 @@ describe( 'prePersistPostType', () => {
107
111
 
108
112
  const record = { id: 123, status: 'publish' };
109
113
  const edits = {};
110
- const result = prePersistPostType( record, edits, 'post', false );
114
+ const result = await prePersistPostType( record, edits, 'post', false );
111
115
 
112
116
  expect( result.meta ).toEqual( {
113
117
  [ POST_META_KEY_FOR_CRDT_DOC_PERSISTENCE ]: mockSerializedDoc,