@wordpress/editor 14.41.2-next.v.202603161435.0 → 14.42.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 (154) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/build/components/collaborators-overlay/compute-selection.cjs +10 -10
  3. package/build/components/collaborators-overlay/compute-selection.cjs.map +2 -2
  4. package/build/components/collaborators-overlay/overlay.cjs +11 -0
  5. package/build/components/collaborators-overlay/overlay.cjs.map +2 -2
  6. package/build/components/collaborators-overlay/timing-utils.cjs +46 -0
  7. package/build/components/collaborators-overlay/timing-utils.cjs.map +7 -0
  8. package/build/components/collaborators-overlay/use-render-cursors.cjs +1 -1
  9. package/build/components/collaborators-overlay/use-render-cursors.cjs.map +2 -2
  10. package/build/components/post-locked-modal/index.cjs +16 -3
  11. package/build/components/post-locked-modal/index.cjs.map +2 -2
  12. package/build/components/post-revisions-preview/block-diff.cjs +39 -11
  13. package/build/components/post-revisions-preview/block-diff.cjs.map +2 -2
  14. package/build/components/post-revisions-preview/diff-markers.cjs +2 -2
  15. package/build/components/post-revisions-preview/diff-markers.cjs.map +2 -2
  16. package/build/components/post-revisions-preview/revisions-canvas.cjs +1 -1
  17. package/build/components/post-revisions-preview/revisions-canvas.cjs.map +2 -2
  18. package/build/components/post-template/block-theme.cjs +7 -4
  19. package/build/components/post-template/block-theme.cjs.map +2 -2
  20. package/build/components/post-template/hooks.cjs +39 -2
  21. package/build/components/post-template/hooks.cjs.map +2 -2
  22. package/build/components/post-template/panel.cjs +5 -42
  23. package/build/components/post-template/panel.cjs.map +3 -3
  24. package/build/components/provider/use-block-editor-settings.cjs +2 -0
  25. package/build/components/provider/use-block-editor-settings.cjs.map +3 -3
  26. package/build/components/revision-block-diff/index.cjs +84 -0
  27. package/build/components/revision-block-diff/index.cjs.map +7 -0
  28. package/build/components/sidebar/dataform-post-summary.cjs +17 -2
  29. package/build/components/sidebar/dataform-post-summary.cjs.map +2 -2
  30. package/build/components/sidebar/index.cjs +5 -1
  31. package/build/components/sidebar/index.cjs.map +3 -3
  32. package/build/components/{sync-connection-modal → sync-connection-error-modal}/index.cjs +87 -78
  33. package/build/components/sync-connection-error-modal/index.cjs.map +7 -0
  34. package/build/components/{sync-connection-modal → sync-connection-error-modal}/use-retry-countdown.cjs +14 -27
  35. package/build/components/sync-connection-error-modal/use-retry-countdown.cjs.map +7 -0
  36. package/build/components/visual-editor/index.cjs +2 -2
  37. package/build/components/visual-editor/index.cjs.map +2 -2
  38. package/build/store/actions.cjs +1 -3
  39. package/build/store/actions.cjs.map +2 -2
  40. package/build/utils/media-finalize/index.cjs +43 -0
  41. package/build/utils/media-finalize/index.cjs.map +7 -0
  42. package/build/utils/sync-error-messages.cjs +29 -16
  43. package/build/utils/sync-error-messages.cjs.map +3 -3
  44. package/build-module/components/collaborators-overlay/compute-selection.mjs +10 -10
  45. package/build-module/components/collaborators-overlay/compute-selection.mjs.map +2 -2
  46. package/build-module/components/collaborators-overlay/overlay.mjs +11 -0
  47. package/build-module/components/collaborators-overlay/overlay.mjs.map +2 -2
  48. package/build-module/components/collaborators-overlay/timing-utils.mjs +21 -0
  49. package/build-module/components/collaborators-overlay/timing-utils.mjs.map +7 -0
  50. package/build-module/components/collaborators-overlay/use-render-cursors.mjs +1 -1
  51. package/build-module/components/collaborators-overlay/use-render-cursors.mjs.map +2 -2
  52. package/build-module/components/post-locked-modal/index.mjs +16 -3
  53. package/build-module/components/post-locked-modal/index.mjs.map +2 -2
  54. package/build-module/components/post-revisions-preview/block-diff.mjs +39 -11
  55. package/build-module/components/post-revisions-preview/block-diff.mjs.map +2 -2
  56. package/build-module/components/post-revisions-preview/diff-markers.mjs +2 -2
  57. package/build-module/components/post-revisions-preview/diff-markers.mjs.map +2 -2
  58. package/build-module/components/post-revisions-preview/revisions-canvas.mjs +1 -1
  59. package/build-module/components/post-revisions-preview/revisions-canvas.mjs.map +2 -2
  60. package/build-module/components/post-template/block-theme.mjs +7 -4
  61. package/build-module/components/post-template/block-theme.mjs.map +2 -2
  62. package/build-module/components/post-template/hooks.mjs +37 -1
  63. package/build-module/components/post-template/hooks.mjs.map +2 -2
  64. package/build-module/components/post-template/panel.mjs +5 -42
  65. package/build-module/components/post-template/panel.mjs.map +2 -2
  66. package/build-module/components/provider/use-block-editor-settings.mjs +2 -0
  67. package/build-module/components/provider/use-block-editor-settings.mjs.map +2 -2
  68. package/build-module/components/revision-block-diff/index.mjs +53 -0
  69. package/build-module/components/revision-block-diff/index.mjs.map +7 -0
  70. package/build-module/components/sidebar/dataform-post-summary.mjs +17 -2
  71. package/build-module/components/sidebar/dataform-post-summary.mjs.map +2 -2
  72. package/build-module/components/sidebar/index.mjs +5 -1
  73. package/build-module/components/sidebar/index.mjs.map +2 -2
  74. package/build-module/components/sync-connection-error-modal/index.mjs +177 -0
  75. package/build-module/components/sync-connection-error-modal/index.mjs.map +7 -0
  76. package/build-module/components/sync-connection-error-modal/use-retry-countdown.mjs +36 -0
  77. package/build-module/components/sync-connection-error-modal/use-retry-countdown.mjs.map +7 -0
  78. package/build-module/components/visual-editor/index.mjs +2 -2
  79. package/build-module/components/visual-editor/index.mjs.map +2 -2
  80. package/build-module/store/actions.mjs +1 -3
  81. package/build-module/store/actions.mjs.map +2 -2
  82. package/build-module/utils/media-finalize/index.mjs +12 -0
  83. package/build-module/utils/media-finalize/index.mjs.map +7 -0
  84. package/build-module/utils/sync-error-messages.mjs +24 -16
  85. package/build-module/utils/sync-error-messages.mjs.map +3 -3
  86. package/build-style/style-rtl.css +24 -8
  87. package/build-style/style.css +24 -8
  88. package/build-types/components/collaborators-overlay/overlay.d.ts.map +1 -1
  89. package/build-types/components/collaborators-overlay/timing-utils.d.ts +11 -0
  90. package/build-types/components/collaborators-overlay/timing-utils.d.ts.map +1 -0
  91. package/build-types/components/post-locked-modal/index.d.ts +2 -2
  92. package/build-types/components/post-locked-modal/index.d.ts.map +1 -1
  93. package/build-types/components/post-revisions-preview/block-diff.d.ts.map +1 -1
  94. package/build-types/components/post-template/block-theme.d.ts +1 -3
  95. package/build-types/components/post-template/block-theme.d.ts.map +1 -1
  96. package/build-types/components/post-template/hooks.d.ts +1 -0
  97. package/build-types/components/post-template/hooks.d.ts.map +1 -1
  98. package/build-types/components/post-template/panel.d.ts.map +1 -1
  99. package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
  100. package/build-types/components/revision-block-diff/index.d.ts +6 -0
  101. package/build-types/components/revision-block-diff/index.d.ts.map +1 -0
  102. package/build-types/components/sidebar/dataform-post-summary.d.ts.map +1 -1
  103. package/build-types/components/sidebar/index.d.ts.map +1 -1
  104. package/build-types/components/sync-connection-error-modal/index.d.ts +22 -0
  105. package/build-types/components/sync-connection-error-modal/index.d.ts.map +1 -0
  106. package/build-types/components/sync-connection-error-modal/use-retry-countdown.d.ts +11 -0
  107. package/build-types/components/sync-connection-error-modal/use-retry-countdown.d.ts.map +1 -0
  108. package/build-types/store/actions.d.ts.map +1 -1
  109. package/build-types/utils/media-finalize/index.d.ts +2 -0
  110. package/build-types/utils/media-finalize/index.d.ts.map +1 -0
  111. package/build-types/utils/sync-error-messages.d.ts +17 -3
  112. package/build-types/utils/sync-error-messages.d.ts.map +1 -1
  113. package/package.json +44 -44
  114. package/src/components/collaborators-overlay/compute-selection.ts +13 -13
  115. package/src/components/collaborators-overlay/overlay.tsx +19 -0
  116. package/src/components/collaborators-overlay/timing-utils.ts +30 -0
  117. package/src/components/collaborators-overlay/use-render-cursors.ts +1 -1
  118. package/src/components/post-locked-modal/index.js +21 -3
  119. package/src/components/post-revisions-preview/block-diff.js +59 -20
  120. package/src/components/post-revisions-preview/diff-markers.js +2 -2
  121. package/src/components/post-revisions-preview/revisions-canvas.js +1 -1
  122. package/src/components/post-revisions-preview/test/block-diff.js +69 -31
  123. package/src/components/post-template/block-theme.js +4 -1
  124. package/src/components/post-template/hooks.js +42 -0
  125. package/src/components/post-template/panel.js +5 -59
  126. package/src/components/provider/use-block-editor-settings.js +2 -0
  127. package/src/components/revision-block-diff/index.js +74 -0
  128. package/src/components/revision-block-diff/style.scss +13 -0
  129. package/src/components/sidebar/dataform-post-summary.js +37 -13
  130. package/src/components/sidebar/index.js +2 -0
  131. package/src/components/sync-connection-error-modal/index.tsx +265 -0
  132. package/src/components/sync-connection-error-modal/style.scss +14 -0
  133. package/src/components/sync-connection-error-modal/use-retry-countdown.ts +57 -0
  134. package/src/components/visual-editor/index.js +2 -2
  135. package/src/store/actions.js +1 -4
  136. package/src/style.scss +2 -1
  137. package/src/utils/media-finalize/index.js +11 -0
  138. package/src/utils/media-finalize/test/index.js +34 -0
  139. package/src/utils/sync-error-messages.ts +72 -0
  140. package/src/utils/test/sync-error-messages.js +9 -32
  141. package/build/components/sync-connection-modal/index.cjs.map +0 -7
  142. package/build/components/sync-connection-modal/use-retry-countdown.cjs.map +0 -7
  143. package/build-module/components/sync-connection-modal/index.mjs +0 -170
  144. package/build-module/components/sync-connection-modal/index.mjs.map +0 -7
  145. package/build-module/components/sync-connection-modal/use-retry-countdown.mjs +0 -49
  146. package/build-module/components/sync-connection-modal/use-retry-countdown.mjs.map +0 -7
  147. package/build-types/components/sync-connection-modal/index.d.ts +0 -8
  148. package/build-types/components/sync-connection-modal/index.d.ts.map +0 -1
  149. package/build-types/components/sync-connection-modal/use-retry-countdown.d.ts +0 -9
  150. package/build-types/components/sync-connection-modal/use-retry-countdown.d.ts.map +0 -1
  151. package/src/components/sync-connection-modal/index.js +0 -206
  152. package/src/components/sync-connection-modal/style.scss +0 -14
  153. package/src/components/sync-connection-modal/use-retry-countdown.js +0 -70
  154. package/src/utils/sync-error-messages.js +0 -58
@@ -119,7 +119,7 @@
119
119
  }
120
120
 
121
121
  .admin-ui-page__header {
122
- padding: var(--wpds-dimension-padding-lg, 16px) var(--wpds-dimension-padding-2xl, 24px);
122
+ padding: var(--wpds-dimension-padding-md, 12px) var(--wpds-dimension-padding-2xl, 24px);
123
123
  border-bottom: var(--wpds-border-width-xs, 1px) solid var(--wpds-color-stroke-surface-neutral-weak, #e0e0e0);
124
124
  background: var(--wpds-color-bg-surface-neutral-strong, #ffffff);
125
125
  position: sticky;
@@ -129,9 +129,9 @@
129
129
 
130
130
  .admin-ui-page__header-title {
131
131
  font-family: var(--wpds-font-family-heading, -apple-system, system-ui, "Segoe UI", "Roboto", "Oxygen-Sans", "Ubuntu", "Cantarell", "Helvetica Neue", sans-serif);
132
- font-size: var(--wpds-font-size-xl, 20px);
132
+ font-size: var(--wpds-font-size-lg, 15px);
133
133
  font-weight: var(--wpds-font-weight-medium, 499);
134
- line-height: var(--wpds-font-line-height-xl, 32px);
134
+ line-height: var(--wpds-font-line-height-lg, 28px);
135
135
  margin: 0;
136
136
  overflow: hidden;
137
137
  text-overflow: ellipsis;
@@ -221,13 +221,15 @@
221
221
  * These variables do not appear to be used anywhere else.
222
222
  */
223
223
  .admin-ui-breadcrumbs__list {
224
+ font-family: var(--wpds-font-family-heading, -apple-system, system-ui, "Segoe UI", "Roboto", "Oxygen-Sans", "Ubuntu", "Cantarell", "Helvetica Neue", sans-serif);
225
+ font-size: var(--wpds-font-size-lg, 15px);
226
+ font-weight: var(--wpds-font-weight-medium, 499);
227
+ line-height: var(--wpds-font-line-height-lg, 28px);
224
228
  list-style: none;
225
229
  padding: 0;
226
230
  margin: 0;
227
231
  gap: 0;
228
- font-size: 15px;
229
232
  min-height: 32px;
230
- font-weight: 500;
231
233
  }
232
234
 
233
235
  .admin-ui-breadcrumbs__list li:not(:last-child)::after {
@@ -6699,6 +6701,20 @@ fieldset.fields__media-edit .fields__media-edit-expanded:not(.is-empty) .fields_
6699
6701
  outline-offset: -2px;
6700
6702
  }
6701
6703
 
6704
+ .editor-revision-fields-diff__value {
6705
+ word-break: break-word;
6706
+ }
6707
+
6708
+ .editor-revision-fields-diff__added {
6709
+ background-color: color-mix(in srgb, currentColor 5%, #00a32a 15%);
6710
+ text-decoration: none;
6711
+ }
6712
+
6713
+ .editor-revision-fields-diff__removed {
6714
+ text-decoration: line-through;
6715
+ color: #d63638;
6716
+ }
6717
+
6702
6718
  .editor-post-saved-state {
6703
6719
  display: flex;
6704
6720
  align-items: center;
@@ -6813,15 +6829,15 @@ fieldset.fields__media-edit .fields__media-edit-expanded:not(.is-empty) .fields_
6813
6829
  margin-left: 8px;
6814
6830
  }
6815
6831
 
6816
- .editor-sync-connection-modal {
6832
+ .editor-sync-connection-error-modal {
6817
6833
  z-index: 1000001;
6818
6834
  }
6819
6835
 
6820
- .editor-sync-connection-modal p {
6836
+ .editor-sync-connection-error-modal p {
6821
6837
  margin: 0;
6822
6838
  }
6823
6839
 
6824
- .editor-sync-connection-modal__retry-countdown {
6840
+ .editor-sync-connection-error-modal__retry-countdown {
6825
6841
  color: #757575;
6826
6842
  }
6827
6843
 
@@ -119,7 +119,7 @@
119
119
  }
120
120
 
121
121
  .admin-ui-page__header {
122
- padding: var(--wpds-dimension-padding-lg, 16px) var(--wpds-dimension-padding-2xl, 24px);
122
+ padding: var(--wpds-dimension-padding-md, 12px) var(--wpds-dimension-padding-2xl, 24px);
123
123
  border-bottom: var(--wpds-border-width-xs, 1px) solid var(--wpds-color-stroke-surface-neutral-weak, #e0e0e0);
124
124
  background: var(--wpds-color-bg-surface-neutral-strong, #ffffff);
125
125
  position: sticky;
@@ -129,9 +129,9 @@
129
129
 
130
130
  .admin-ui-page__header-title {
131
131
  font-family: var(--wpds-font-family-heading, -apple-system, system-ui, "Segoe UI", "Roboto", "Oxygen-Sans", "Ubuntu", "Cantarell", "Helvetica Neue", sans-serif);
132
- font-size: var(--wpds-font-size-xl, 20px);
132
+ font-size: var(--wpds-font-size-lg, 15px);
133
133
  font-weight: var(--wpds-font-weight-medium, 499);
134
- line-height: var(--wpds-font-line-height-xl, 32px);
134
+ line-height: var(--wpds-font-line-height-lg, 28px);
135
135
  margin: 0;
136
136
  overflow: hidden;
137
137
  text-overflow: ellipsis;
@@ -221,13 +221,15 @@
221
221
  * These variables do not appear to be used anywhere else.
222
222
  */
223
223
  .admin-ui-breadcrumbs__list {
224
+ font-family: var(--wpds-font-family-heading, -apple-system, system-ui, "Segoe UI", "Roboto", "Oxygen-Sans", "Ubuntu", "Cantarell", "Helvetica Neue", sans-serif);
225
+ font-size: var(--wpds-font-size-lg, 15px);
226
+ font-weight: var(--wpds-font-weight-medium, 499);
227
+ line-height: var(--wpds-font-line-height-lg, 28px);
224
228
  list-style: none;
225
229
  padding: 0;
226
230
  margin: 0;
227
231
  gap: 0;
228
- font-size: 15px;
229
232
  min-height: 32px;
230
- font-weight: 500;
231
233
  }
232
234
 
233
235
  .admin-ui-breadcrumbs__list li:not(:last-child)::after {
@@ -6704,6 +6706,20 @@ fieldset.fields__media-edit .fields__media-edit-expanded:not(.is-empty) .fields_
6704
6706
  outline-offset: -2px;
6705
6707
  }
6706
6708
 
6709
+ .editor-revision-fields-diff__value {
6710
+ word-break: break-word;
6711
+ }
6712
+
6713
+ .editor-revision-fields-diff__added {
6714
+ background-color: color-mix(in srgb, currentColor 5%, #00a32a 15%);
6715
+ text-decoration: none;
6716
+ }
6717
+
6718
+ .editor-revision-fields-diff__removed {
6719
+ text-decoration: line-through;
6720
+ color: #d63638;
6721
+ }
6722
+
6707
6723
  .editor-post-saved-state {
6708
6724
  display: flex;
6709
6725
  align-items: center;
@@ -6818,15 +6834,15 @@ fieldset.fields__media-edit .fields__media-edit-expanded:not(.is-empty) .fields_
6818
6834
  margin-right: 8px;
6819
6835
  }
6820
6836
 
6821
- .editor-sync-connection-modal {
6837
+ .editor-sync-connection-error-modal {
6822
6838
  z-index: 1000001;
6823
6839
  }
6824
6840
 
6825
- .editor-sync-connection-modal p {
6841
+ .editor-sync-connection-error-modal p {
6826
6842
  margin: 0;
6827
6843
  }
6828
6844
 
6829
- .editor-sync-connection-modal__retry-countdown {
6845
+ .editor-sync-connection-error-modal__retry-countdown {
6830
6846
  color: #757575;
6831
6847
  }
6832
6848
 
@@ -1 +1 @@
1
- {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/components/collaborators-overlay/overlay.tsx"],"names":[],"mappings":"AAYA,UAAU,YAAY;IACrB,mBAAmB,CAAC,EAAE,QAAQ,CAAC;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAE,EACxB,mBAAmB,EACnB,MAAM,EACN,QAAQ,GACR,EAAE,YAAY,+BA+Gd"}
1
+ {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../src/components/collaborators-overlay/overlay.tsx"],"names":[],"mappings":"AAoBA,UAAU,YAAY;IACrB,mBAAmB,CAAC,EAAE,QAAQ,CAAC;IAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAE,EACxB,mBAAmB,EACnB,MAAM,EACN,QAAQ,GACR,EAAE,YAAY,+BA0Hd"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Like setInterval but chains setTimeout calls, so the delay is measured from
3
+ * the end of one run to the start of the next. This prevents callbacks from
4
+ * stacking up when the main thread is busy.
5
+ *
6
+ * @param callback The function to call repeatedly.
7
+ * @param delayMs Milliseconds between runs.
8
+ * @return A cleanup function that stops the timer.
9
+ */
10
+ export declare function setDelayedInterval(callback: () => void, delayMs: number): () => void;
11
+ //# sourceMappingURL=timing-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timing-utils.d.ts","sourceRoot":"","sources":["../../../src/components/collaborators-overlay/timing-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,OAAO,EAAE,MAAM,cAoBxE"}
@@ -1,4 +1,4 @@
1
- declare const _default: typeof PostLockedModal | {
1
+ declare const _default: {
2
2
  new (props: {
3
3
  [key: string]: any;
4
4
  }): {
@@ -48,7 +48,7 @@ declare const _default: typeof PostLockedModal | {
48
48
  UNSAFE_componentWillUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): void;
49
49
  }[];
50
50
  contextType?: import("react").Context<any> | undefined;
51
- };
51
+ } | typeof PostLockedModal;
52
52
  export default _default;
53
53
  declare function PostLockedModal(): import("react").JSX.Element | null;
54
54
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/post-locked-modal/index.js"],"names":[],"mappings":";;;;;;;;wJAyDQ,CAAC;4BAGL,CAAC;;;;;;6BAQuB,CAAC;yBAGrB,CAAC;+BAGH,CAAC;0BAED,CAAC,2DACmB,CAAC;0BACtB,CAAC;iCAEL,CAAA;iCAIM,CAAC;wCAGL,CAAH;2BAEG,CAAA;kCAGK,CAAC;;;;;;;wJAiBJ,CAAC;4BAIH,CAAH;;;;;;6BAQM,CAAH;yBAIC,CAAC;+BAIF,CAAC;0BAMW,CAAC,2DAEZ,CAAA;0BAGsB,CAAC;iCACI,CAAC;iCACR,CAAC;wCAEH,CAAC;2BAGjB,CAAC;kCAEkC,CAAC;;;;;AA3G1C,uEAsQC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/post-locked-modal/index.js"],"names":[],"mappings":";;;;;;;;wJAsDgE,CAAA;4BAC7D,CAAD;;;;;;6BAQ+C,CAAC;yBAOzC,CAAC;+BAKF,CAAA;0BAIL,CAAF,2DAEkB,CAAC;0BAET,CAAC;iCAER,CAAC;iCACc,CAAC;wCAEiC,CAAC;2BAGnD,CAAH;kCAEmD,CAAC;;;;;;;wJAclB,CAAA;4BAER,CAAC;;;;;;6BAYyC,CAAC;yBAGlE,CAAF;+BAGG,CAAC;0BAIa,CAAC,2DAC2B,CAAC;0BAG1C,CAAJ;iCAEI,CAAJ;iCAC8B,CAAC;wCAIb,CAAC;2BAGH,CAAC;kCAQX,CAAC;;;;;AA7FR,uEAsQC"}
@@ -1 +1 @@
1
- {"version":3,"file":"block-diff.d.ts","sourceRoot":"","sources":["../../../src/components/post-revisions-preview/block-diff.js"],"names":[],"mappings":"AAyiBA;;;;;;GAMG;AACH,oDAJW,MAAM,mBACN,MAAM,SAqBhB"}
1
+ {"version":3,"file":"block-diff.d.ts","sourceRoot":"","sources":["../../../src/components/post-revisions-preview/block-diff.js"],"names":[],"mappings":"AAglBA;;;;;;GAMG;AACH,oDAJW,MAAM,mBACN,MAAM,SAqBhB"}
@@ -1,4 +1,2 @@
1
- export default function BlockThemeControl({ id }: {
2
- id: any;
3
- }): import("react").JSX.Element | null;
1
+ export default function BlockThemeControl(): import("react").JSX.Element | null;
4
2
  //# sourceMappingURL=block-theme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"block-theme.d.ts","sourceRoot":"","sources":["../../../src/components/post-template/block-theme.js"],"names":[],"mappings":"AA2BA;;uCAwLC"}
1
+ {"version":3,"file":"block-theme.d.ts","sourceRoot":"","sources":["../../../src/components/post-template/block-theme.js"],"names":[],"mappings":"AA2BA,gFA2LC"}
@@ -4,5 +4,6 @@ export function useEditedPostContext(): {
4
4
  };
5
5
  export function useAllowSwitchingTemplates(): boolean;
6
6
  export function useAvailableTemplates(postType: any): false | (import("@wordpress/core-data").UnstableBase<any> | import("@wordpress/core-data").Attachment<any> | import("@wordpress/core-data").Comment<any> | import("@wordpress/core-data").FontCollection<any> | import("@wordpress/core-data").GlobalStylesRevision<any> | import("@wordpress/core-data").Icon<any> | import("@wordpress/core-data").MenuLocation<any> | import("@wordpress/core-data").NavMenu<any> | import("@wordpress/core-data").NavMenuItem<any> | import("@wordpress/core-data").Page<any> | import("@wordpress/core-data").Plugin<any> | import("@wordpress/core-data").Post<any> | import("@wordpress/core-data").PostStatusObject<any> | import("@wordpress/core-data").PostRevision<any> | import("@wordpress/core-data").Settings<any> | import("@wordpress/core-data").Sidebar<any> | import("@wordpress/core-data").Taxonomy<any> | import("@wordpress/core-data").Term<any> | import("@wordpress/core-data").Theme<any> | import("@wordpress/core-data").User<any> | import("@wordpress/core-data").Type<any> | import("@wordpress/core-data").Widget<any> | import("@wordpress/core-data").WidgetType<any> | import("@wordpress/core-data").WpFontFamily<any> | import("@wordpress/core-data").WpTemplate<any> | import("@wordpress/core-data").WpTemplatePart<any> | Partial<import("@wordpress/core-data").UnstableBase<any> | import("@wordpress/core-data").Attachment<any> | import("@wordpress/core-data").Comment<any> | import("@wordpress/core-data").FontCollection<any> | import("@wordpress/core-data").GlobalStylesRevision<any> | import("@wordpress/core-data").Icon<any> | import("@wordpress/core-data").MenuLocation<any> | import("@wordpress/core-data").NavMenu<any> | import("@wordpress/core-data").NavMenuItem<any> | import("@wordpress/core-data").Page<any> | import("@wordpress/core-data").Plugin<any> | import("@wordpress/core-data").Post<any> | import("@wordpress/core-data").PostStatusObject<any> | import("@wordpress/core-data").PostRevision<any> | import("@wordpress/core-data").Settings<any> | import("@wordpress/core-data").Sidebar<any> | import("@wordpress/core-data").Taxonomy<any> | import("@wordpress/core-data").Term<any> | import("@wordpress/core-data").Theme<any> | import("@wordpress/core-data").User<any> | import("@wordpress/core-data").Type<any> | import("@wordpress/core-data").Widget<any> | import("@wordpress/core-data").WidgetType<any> | import("@wordpress/core-data").WpFontFamily<any> | import("@wordpress/core-data").WpTemplate<any> | import("@wordpress/core-data").WpTemplatePart<any>>)[] | undefined;
7
+ export function usePostTemplatePanelMode(): "classic" | "block-theme" | null;
7
8
  export function useCurrentTemplateSlug(): any;
8
9
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/components/post-template/hooks.js"],"names":[],"mappings":"AAYA;;;EAQC;AACD,sDA8BC;AAeD,+gFAeC;AAED,8CAuBC"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/components/post-template/hooks.js"],"names":[],"mappings":"AAYA;;;EAQC;AACD,sDA8BC;AAeD,+gFAeC;AAED,6EAwCC;AAED,8CAuBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../src/components/post-template/panel.js"],"names":[],"mappings":"AAaA;;;;GAIG;AACH,6CAFY,KAAK,CAAC,SAAS,CA2D1B"}
1
+ {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../src/components/post-template/panel.js"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,6CAFY,KAAK,CAAC,SAAS,CAW1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-block-editor-settings.d.ts","sourceRoot":"","sources":["../../../src/components/provider/use-block-editor-settings.js"],"names":[],"mappings":";AA8GA;;;;;;;;;GASG;AACH,kDAPW,MAAM,YACN,MAAM,UACN,MAAM,iBACN,MAAM,GAEL,MAAM,CAmUjB"}
1
+ {"version":3,"file":"use-block-editor-settings.d.ts","sourceRoot":"","sources":["../../../src/components/provider/use-block-editor-settings.js"],"names":[],"mappings":";AA+GA;;;;;;;;;GASG;AACH,kDAPW,MAAM,YACN,MAAM,UACN,MAAM,iBACN,MAAM,GAEL,MAAM,CAoUjB"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Panel that shows changed block attributes for the selected block
3
+ * when viewing revisions.
4
+ */
5
+ export default function RevisionBlockDiffPanel(): import("react").JSX.Element | null;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/revision-block-diff/index.js"],"names":[],"mappings":"AAaA;;;GAGG;AACH,qFAwDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dataform-post-summary.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/dataform-post-summary.js"],"names":[],"mappings":"AAsEA;;gCAmGC"}
1
+ {"version":3,"file":"dataform-post-summary.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/dataform-post-summary.js"],"names":[],"mappings":"AAuEA;;gCA0HC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/index.js"],"names":[],"mappings":";AAyJA;;;gCAkEC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/index.js"],"names":[],"mappings":";AA2JA;;;gCAkEC"}
@@ -0,0 +1,22 @@
1
+ import { type ConnectionError } from '@wordpress/core-data';
2
+ export interface SyncConnectionErrorModalProps {
3
+ description: string;
4
+ error?: ConnectionError;
5
+ manualRetry?: () => void;
6
+ postType?: {
7
+ slug?: string;
8
+ labels?: {
9
+ name?: string;
10
+ };
11
+ } | null;
12
+ secondsRemainingUntilAutoRetry?: number;
13
+ title: string;
14
+ }
15
+ /**
16
+ * Sync connection modal that displays when any entity reports a disconnection.
17
+ * Uses BlockCanvasCover.Fill to render in the block canvas.
18
+ *
19
+ * @return The modal component or null if not disconnected.
20
+ */
21
+ export declare function SyncConnectionErrorModal(): import("react").JSX.Element | null;
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/sync-connection-error-modal/index.tsx"],"names":[],"mappings":"AAOA,OAAO,EAGN,KAAK,eAAe,EACpB,MAAM,sBAAsB,CAAC;AAgC9B,MAAM,WAAW,6BAA6B;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAChE,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;CACd;AA+HD;;;;;GAKG;AACH,wBAAgB,wBAAwB,uCAiFvC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import type { ConnectionStatus } from '@wordpress/core-data';
5
+ interface UseRetryCountdownResult {
6
+ onManualRetry: () => void;
7
+ secondsRemaining?: number;
8
+ }
9
+ export declare function useRetryCountdown(connectionStatus?: ConnectionStatus | null): UseRetryCountdownResult;
10
+ export {};
11
+ //# sourceMappingURL=use-retry-countdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-retry-countdown.d.ts","sourceRoot":"","sources":["../../../src/components/sync-connection-error-modal/use-retry-countdown.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,UAAU,uBAAuB;IAChC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAChC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,GACxC,uBAAuB,CA2CzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/store/actions.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/store/actions.js"],"names":[],"mappings":"AAyEA;;;;;;;GAOG;AACH,gDAFY,MAAM,CAUjB;AAED;;;;;GAKG;AACH;;EAOC;AAED;;;;;;GAMG;AACH,8BAHY,MAAM,CAWjB;AAED;;;;;;GAMG;AACH,uCAFW,MAAM,UAQhB;AAED;;;;;;;GAOG;AACH,wCALW,MAAM,UACN,MAAM,GAEL,MAAM,CAQjB;AA0PD;;;;GAIG;AACH;;EAOC;AAwGD;;;;GAIG;AACH;;EAOC;AAED;;;;;GAKG;AACH,qCAHW,MAAM,GACL,MAAM,CAOjB;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,yCAxCW,MAAM,GAsCL,MAAM,CAOjB;AAED;;;;;;;;;;;;GAYG;AACH,2CAVW,MAAM,GAQL,MAAM,CAOjB;AAED;;;;;;;;;;;;GAYG;AACH,6CAVW,MAAM,GAQL,MAAM,CAOjB;AAED;;;;;;;;;;;;GAYG;AACH,+CAVW,MAAM,GAQL,MAAM,CAOjB;AA6CD;;;EAKC;AA0BD;;;;;;GAMG;AACH,0CAJW,MAAM,GAEL,MAAM,CAOjB;AAiED;;;;;;GAMG;AACH,6CAJW,MAAM,GAEL,MAAM,CAOjB;AAsCD;;;;;GAKG;AACH,4CAHW,OAAO,GACN,MAAM,CAOjB;AAiLD;;;;;GAKG;AACH,sCAFY,MAAM,CAMjB;AAED;;;;;GAKG;AACH,uCAFY,MAAM,CAMjB;AAED;;;;GAIG;AACH,wCAFY,MAAM,CAMjB;AAniCM,kCAJI,MAAM,SACN,MAAM,sBAKd;;CAAY,UA6Bb;AAkGK,gCAXI,MAAM,YACN,MAAM,GAQL,MAAM,CAShB;AAOK,mCAFI,MAAM,IAIR;;;;CAA8B,mBAkIrC;AAwGK,8BAEE;;;;CAA8B,mBAwBrC;AAWK,iDAFJ;IAA0B,KAAK;CACjC,IAGQ;;;CAAoB,mBAY3B;AAUK,mEAJJ;IAAyB,mBAAmB,EAApC,OAAO;CAEf,YAoBD;AAKK,yBAEJ;;CAAY,UAEb;AAKK,yBAEJ;;CAAY,UAEb;AAgCK,yCAEJ;;CAAY,UAIb;AAKK,0CAEJ;;CAAY,UAIb;AAsHK,2DAFI,MAAM,IAId;;;;CAA8B,UA0B/B;AAwBK,uCAFI,MAAM,IAId;;;;CAA8B,UAY/B;AAuBK,oDAJI,MAAM,GAEL,MAAM,CA0BhB;AAOK,mDAFI,MAAM,IAId;;CAAY,UAqBb;AAgCK,2CAbI,OAAO,GAAC,MAAM,GAWb,MAAM,CAoBhB;AAuBK,yDAFJ;IAA0B,YAAY;CACxC,IAGE;;;CAAsB,UA8DvB;AAKK,wCAEJ;;CAAY,UA4Bb;AAKK,qCAEJ;;CAAY,UA6Bb;AAOK,uCAFI,MAAM,IAId;;;CAAsB,UAqBvB;AA2CD,8CACE;;CAAY,UAQb;AATD,gDACE;;CAAY,UAQb;AATD,8CACE;;CAAY,UAQb;AATD,wDACE;;CAAY,UAQb;AATD,8CACE;;CAAY,UAQb;AATD,mDACE;;CAAY,UAQb;AATD,kDACE;;CAAY,UAQb;AATD,8CACE;;CAAY,UAQb;AATD,qDACE;;CAAY,UAQb;AATD,kDACE;;CAAY,UAQb;AATD,gDACE;;CAAY,UAQb;AATD,+CACE;;CAAY,UAQb;AATD,iDACE;;CAAY,UAQb;AATD,+CACE;;CAAY,UAQb;AATD,sDACE;;CAAY,UAQb;AATD,8CACE;;CAAY,UAQb;AATD,+CACE;;CAAY,UAQb;AATD,qDACE;;CAAY,UAQb;AATD,qDACE;;CAAY,UAQb;AATD,sDACE;;CAAY,UAQb;AATD,sDACE;;CAAY,UAQb;AATD,8CACE;;CAAY,UAQb;AATD,+CACE;;CAAY,UAQb;AATD,8CACE;;CAAY,UAQb;AATD,kDACE;;CAAY,UAQb;AATD,8CACE;;CAAY,UAQb;AATD,6CACE;;CAAY,UAQb;AATD,qDACE;;CAAY,UAQb;AATD,oDACE;;CAAY,UAQb;AATD,qDACE;;CAAY,UAQb;AATD,0DACE;;CAAY,UAQb"}
@@ -0,0 +1,2 @@
1
+ export default function mediaFinalize(id: any): Promise<void>;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/media-finalize/index.js"],"names":[],"mappings":"AAKA,8DAKC"}
@@ -1,10 +1,24 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { type ConnectionError } from '@wordpress/core-data';
5
+ export declare const AUTHENTICATION_FAILED = "authentication-failed";
6
+ export declare const CONNECTION_EXPIRED = "connection-expired";
7
+ export declare const CONNECTION_LIMIT_EXCEEDED = "connection-limit-exceeded";
8
+ export declare const DOCUMENT_SIZE_LIMIT_EXCEEDED = "document-size-limit-exceeded";
9
+ export declare const UNKNOWN_ERROR = "unknown-error";
10
+ interface ConnectionErrorMessages {
11
+ description: string;
12
+ title: string;
13
+ }
1
14
  /**
2
15
  * Get user-facing title and description from a sync connection error.
3
16
  *
4
17
  * Provides default messages based on error.code.
5
18
  *
6
- * @param {Object} error - Connection error object.
7
- * @return {Object} Object with title, description, and canRetry flag.
19
+ * @param error - Connection error.
20
+ * @return Object with title, description, and canRetry flag.
8
21
  */
9
- export function getSyncErrorMessages(error: Object): Object;
22
+ export declare function getSyncErrorMessages(error?: ConnectionError): ConnectionErrorMessages;
23
+ export {};
10
24
  //# sourceMappingURL=sync-error-messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync-error-messages.d.ts","sourceRoot":"","sources":["../../src/utils/sync-error-messages.js"],"names":[],"mappings":"AA2CA;;;;;;;GAOG;AACH,4CAHW,MAAM,GACL,MAAM,CAQjB"}
1
+ {"version":3,"file":"sync-error-messages.d.ts","sourceRoot":"","sources":["../../src/utils/sync-error-messages.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAK5D,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AACvD,eAAO,MAAM,yBAAyB,8BAA8B,CAAC;AACrE,eAAO,MAAM,4BAA4B,iCAAiC,CAAC;AAC3E,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAE7C,UAAU,uBAAuB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACd;AAsCD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CACnC,KAAK,CAAC,EAAE,eAAe,GACrB,uBAAuB,CAMzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/editor",
3
- "version": "14.41.2-next.v.202603161435.0+ab4981c4f",
3
+ "version": "14.42.0",
4
4
  "description": "Enhanced block editor for WordPress posts.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -61,48 +61,48 @@
61
61
  ],
62
62
  "dependencies": {
63
63
  "@floating-ui/react-dom": "2.0.8",
64
- "@wordpress/a11y": "^4.41.1-next.v.202603161435.0+ab4981c4f",
65
- "@wordpress/api-fetch": "^7.41.1-next.v.202603161435.0+ab4981c4f",
66
- "@wordpress/base-styles": "^6.17.1-next.v.202603161435.0+ab4981c4f",
67
- "@wordpress/blob": "^4.41.1-next.v.202603161435.0+ab4981c4f",
68
- "@wordpress/block-editor": "^15.14.1-next.v.202603161435.0+ab4981c4f",
69
- "@wordpress/block-serialization-default-parser": "^5.41.1-next.v.202603161435.0+ab4981c4f",
70
- "@wordpress/blocks": "^15.14.1-next.v.202603161435.0+ab4981c4f",
71
- "@wordpress/commands": "^1.41.1-next.v.202603161435.0+ab4981c4f",
72
- "@wordpress/components": "^32.4.1-next.v.202603161435.0+ab4981c4f",
73
- "@wordpress/compose": "^7.41.1-next.v.202603161435.0+ab4981c4f",
74
- "@wordpress/core-data": "^7.41.2-next.v.202603161435.0+ab4981c4f",
75
- "@wordpress/data": "^10.41.1-next.v.202603161435.0+ab4981c4f",
76
- "@wordpress/dataviews": "^13.1.1-next.v.202603161435.0+ab4981c4f",
77
- "@wordpress/date": "^5.41.1-next.v.202603161435.0+ab4981c4f",
78
- "@wordpress/deprecated": "^4.41.1-next.v.202603161435.0+ab4981c4f",
79
- "@wordpress/dom": "^4.41.1-next.v.202603161435.0+ab4981c4f",
80
- "@wordpress/element": "^6.41.1-next.v.202603161435.0+ab4981c4f",
81
- "@wordpress/fields": "^0.33.1-next.v.202603161435.0+ab4981c4f",
82
- "@wordpress/global-styles-engine": "^1.8.1-next.v.202603161435.0+ab4981c4f",
83
- "@wordpress/global-styles-ui": "^1.8.1-next.v.202603161435.0+ab4981c4f",
84
- "@wordpress/hooks": "^4.41.1-next.v.202603161435.0+ab4981c4f",
85
- "@wordpress/html-entities": "^4.41.1-next.v.202603161435.0+ab4981c4f",
86
- "@wordpress/i18n": "^6.14.1-next.v.202603161435.0+ab4981c4f",
87
- "@wordpress/icons": "^12.0.1-next.v.202603161435.0+ab4981c4f",
88
- "@wordpress/interface": "^9.26.1-next.v.202603161435.0+ab4981c4f",
89
- "@wordpress/keyboard-shortcuts": "^5.41.1-next.v.202603161435.0+ab4981c4f",
90
- "@wordpress/keycodes": "^4.41.1-next.v.202603161435.0+ab4981c4f",
91
- "@wordpress/media-editor": "^0.4.1-next.v.202603161435.0+ab4981c4f",
92
- "@wordpress/media-fields": "^0.6.1-next.v.202603161435.0+ab4981c4f",
93
- "@wordpress/media-utils": "^5.41.1-next.v.202603161435.0+ab4981c4f",
94
- "@wordpress/notices": "^5.41.1-next.v.202603161435.0+ab4981c4f",
95
- "@wordpress/patterns": "^2.41.1-next.v.202603161435.0+ab4981c4f",
96
- "@wordpress/plugins": "^7.41.1-next.v.202603161435.0+ab4981c4f",
97
- "@wordpress/preferences": "^4.41.1-next.v.202603161435.0+ab4981c4f",
98
- "@wordpress/private-apis": "^1.41.1-next.v.202603161435.0+ab4981c4f",
99
- "@wordpress/reusable-blocks": "^5.41.1-next.v.202603161435.0+ab4981c4f",
100
- "@wordpress/rich-text": "^7.41.1-next.v.202603161435.0+ab4981c4f",
101
- "@wordpress/server-side-render": "^6.17.1-next.v.202603161435.0+ab4981c4f",
102
- "@wordpress/upload-media": "^0.26.1-next.v.202603161435.0+ab4981c4f",
103
- "@wordpress/url": "^4.41.1-next.v.202603161435.0+ab4981c4f",
104
- "@wordpress/warning": "^3.41.1-next.v.202603161435.0+ab4981c4f",
105
- "@wordpress/wordcount": "^4.41.1-next.v.202603161435.0+ab4981c4f",
64
+ "@wordpress/a11y": "^4.42.0",
65
+ "@wordpress/api-fetch": "^7.42.0",
66
+ "@wordpress/base-styles": "^6.18.0",
67
+ "@wordpress/blob": "^4.42.0",
68
+ "@wordpress/block-editor": "^15.15.0",
69
+ "@wordpress/block-serialization-default-parser": "^5.42.0",
70
+ "@wordpress/blocks": "^15.15.0",
71
+ "@wordpress/commands": "^1.42.0",
72
+ "@wordpress/components": "^32.4.0",
73
+ "@wordpress/compose": "^7.42.0",
74
+ "@wordpress/core-data": "^7.42.0",
75
+ "@wordpress/data": "^10.42.0",
76
+ "@wordpress/dataviews": "^13.1.0",
77
+ "@wordpress/date": "^5.42.0",
78
+ "@wordpress/deprecated": "^4.42.0",
79
+ "@wordpress/dom": "^4.42.0",
80
+ "@wordpress/element": "^6.42.0",
81
+ "@wordpress/fields": "^0.34.0",
82
+ "@wordpress/global-styles-engine": "^1.9.0",
83
+ "@wordpress/global-styles-ui": "^1.9.0",
84
+ "@wordpress/hooks": "^4.42.0",
85
+ "@wordpress/html-entities": "^4.42.0",
86
+ "@wordpress/i18n": "^6.15.0",
87
+ "@wordpress/icons": "^12.0.0",
88
+ "@wordpress/interface": "^9.27.0",
89
+ "@wordpress/keyboard-shortcuts": "^5.42.0",
90
+ "@wordpress/keycodes": "^4.42.0",
91
+ "@wordpress/media-editor": "^0.5.0",
92
+ "@wordpress/media-fields": "^0.7.0",
93
+ "@wordpress/media-utils": "^5.42.0",
94
+ "@wordpress/notices": "^5.42.0",
95
+ "@wordpress/patterns": "^2.42.0",
96
+ "@wordpress/plugins": "^7.42.0",
97
+ "@wordpress/preferences": "^4.42.0",
98
+ "@wordpress/private-apis": "^1.42.0",
99
+ "@wordpress/reusable-blocks": "^5.42.0",
100
+ "@wordpress/rich-text": "^7.42.0",
101
+ "@wordpress/server-side-render": "^6.18.0",
102
+ "@wordpress/upload-media": "^0.27.0",
103
+ "@wordpress/url": "^4.42.0",
104
+ "@wordpress/warning": "^3.42.0",
105
+ "@wordpress/wordcount": "^4.42.0",
106
106
  "change-case": "^4.1.2",
107
107
  "client-zip": "^2.4.5",
108
108
  "clsx": "^2.1.1",
@@ -125,5 +125,5 @@
125
125
  "publishConfig": {
126
126
  "access": "public"
127
127
  },
128
- "gitHead": "748f4e4564fcc0e6ae90200d90bb993a3cef5828"
128
+ "gitHead": "c20787b1778ae64c2db65643b1c236309d68e6ba"
129
129
  }
@@ -89,7 +89,7 @@ function computeCursorOnly(
89
89
  );
90
90
  return {
91
91
  coords: getCursorPosition(
92
- start.textIndex,
92
+ start.richTextOffset,
93
93
  blockElement,
94
94
  overlayContext.editorDocument,
95
95
  overlayContext.overlayRect
@@ -116,8 +116,8 @@ function computeTextSelection(
116
116
  if (
117
117
  ! start.localClientId ||
118
118
  ! end.localClientId ||
119
- start.textIndex === null ||
120
- end.textIndex === null
119
+ start.richTextOffset === null ||
120
+ end.richTextOffset === null
121
121
  ) {
122
122
  return {};
123
123
  }
@@ -147,7 +147,7 @@ function computeTextSelection(
147
147
  if ( allRects.length > 0 ) {
148
148
  return {
149
149
  coords: getCursorPosition(
150
- activeEnd.textIndex,
150
+ activeEnd.richTextOffset,
151
151
  activeEndBlock,
152
152
  overlayContext.editorDocument,
153
153
  overlayContext.overlayRect
@@ -164,7 +164,7 @@ function computeTextSelection(
164
164
 
165
165
  return {
166
166
  coords: getCursorPosition(
167
- start.textIndex,
167
+ start.richTextOffset,
168
168
  startBlock,
169
169
  overlayContext.editorDocument,
170
170
  overlayContext.overlayRect
@@ -191,8 +191,8 @@ function computeSingleBlockRects(
191
191
  );
192
192
  if (
193
193
  ! blockElement ||
194
- start.textIndex === null ||
195
- end.textIndex === null
194
+ start.richTextOffset === null ||
195
+ end.richTextOffset === null
196
196
  ) {
197
197
  return { rects: [], blockElement: null };
198
198
  }
@@ -200,8 +200,8 @@ function computeSingleBlockRects(
200
200
  rects:
201
201
  getSelectionRects(
202
202
  blockElement,
203
- start.textIndex,
204
- end.textIndex,
203
+ start.richTextOffset,
204
+ end.richTextOffset,
205
205
  overlayContext.editorDocument,
206
206
  overlayContext.overlayRect
207
207
  ) ?? [],
@@ -244,8 +244,8 @@ function computeMultiBlockRects(
244
244
  if (
245
245
  ! firstBlock ||
246
246
  ! lastBlock ||
247
- docFirst.textIndex === null ||
248
- docLast.textIndex === null ||
247
+ docFirst.richTextOffset === null ||
248
+ docLast.richTextOffset === null ||
249
249
  ! docFirst.localClientId ||
250
250
  ! docLast.localClientId
251
251
  ) {
@@ -262,7 +262,7 @@ function computeMultiBlockRects(
262
262
  // First block: from start offset to end of block.
263
263
  const startRects = getSelectionRects(
264
264
  firstBlock,
265
- docFirst.textIndex,
265
+ docFirst.richTextOffset,
266
266
  Number.MAX_SAFE_INTEGER,
267
267
  overlayContext.editorDocument,
268
268
  overlayContext.overlayRect
@@ -290,7 +290,7 @@ function computeMultiBlockRects(
290
290
  const endRects = getSelectionRects(
291
291
  lastBlock,
292
292
  0,
293
- docLast.textIndex,
293
+ docLast.richTextOffset,
294
294
  overlayContext.editorDocument,
295
295
  overlayContext.overlayRect
296
296
  );
@@ -5,11 +5,19 @@ import { __ } from '@wordpress/i18n';
5
5
  import Avatar from '../collaborators-presence/avatar';
6
6
  import { AVATAR_IFRAME_STYLES } from './avatar-iframe-styles';
7
7
  import { OVERLAY_IFRAME_STYLES } from './overlay-iframe-styles';
8
+ import { setDelayedInterval } from './timing-utils';
8
9
  import { useBlockHighlighting } from './use-block-highlighting';
9
10
  import { useRenderCursors } from './use-render-cursors';
10
11
 
12
+ // Milliseconds to wait after a change before recomputing cursor positions.
11
13
  const RERENDER_DELAY_MS = 500;
12
14
 
15
+ // Periodically recompute cursor positions to account for DOM layout
16
+ // changes that don't trigger awareness state updates (e.g. a collaborator
17
+ // applying formatting shifts text but the cursor's logical position is
18
+ // unchanged). Only active when remote cursors are visible.
19
+ const CURSOR_REDRAW_INTERVAL_MS = 10_000;
20
+
13
21
  interface OverlayProps {
14
22
  blockEditorDocument?: Document;
15
23
  postId: number | null;
@@ -68,6 +76,17 @@ export function Overlay( {
68
76
  };
69
77
  }, [ rerenderCursorsAfterDelay, rerenderHighlightsAfterDelay ] );
70
78
 
79
+ useEffect( () => {
80
+ if ( cursors.length === 0 ) {
81
+ return;
82
+ }
83
+
84
+ return setDelayedInterval(
85
+ rerenderCursorsAfterDelay,
86
+ CURSOR_REDRAW_INTERVAL_MS
87
+ );
88
+ }, [ cursors.length, rerenderCursorsAfterDelay ] );
89
+
71
90
  // Merge the refs to use the same element for both overlay and resize observation
72
91
  const mergedRef = useMergeRefs< HTMLDivElement | null >( [
73
92
  setOverlayElement,
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Like setInterval but chains setTimeout calls, so the delay is measured from
3
+ * the end of one run to the start of the next. This prevents callbacks from
4
+ * stacking up when the main thread is busy.
5
+ *
6
+ * @param callback The function to call repeatedly.
7
+ * @param delayMs Milliseconds between runs.
8
+ * @return A cleanup function that stops the timer.
9
+ */
10
+ export function setDelayedInterval( callback: () => void, delayMs: number ) {
11
+ let timerHandle: ReturnType< typeof setTimeout > | null = null;
12
+
13
+ const runner = () => {
14
+ try {
15
+ callback();
16
+ } catch ( error ) {
17
+ // Do nothing
18
+ }
19
+
20
+ timerHandle = setTimeout( runner, delayMs );
21
+ };
22
+
23
+ timerHandle = setTimeout( runner, delayMs );
24
+
25
+ return () => {
26
+ if ( timerHandle ) {
27
+ clearTimeout( timerHandle );
28
+ }
29
+ };
30
+ }