@atlaskit/editor-plugin-synced-block 6.0.20 → 6.0.22

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.
package/AGENTS.md CHANGED
@@ -1,10 +1,12 @@
1
1
  # Synced Blocks — Developer Agent Guide
2
2
 
3
3
  > **Purpose**: This guide helps AI agents and developers implement features, fix bugs, and clean up
4
- > feature gates in the Synced Blocks codebase. It provides architectural context, key file locations,
5
- > common patterns, and debugging guidance.
4
+ > feature gates in the Synced Blocks codebase. It provides architectural context, key file
5
+ > locations, common patterns, and debugging guidance.
6
6
  >
7
- > **Full Knowledge Base**: [Synced Blocks — Comprehensive Knowledge Base](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6679548384) (Confluence)
7
+ > **Full Knowledge Base**:
8
+ > [Synced Blocks — Comprehensive Knowledge Base](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6679548384)
9
+ > (Confluence)
8
10
 
9
11
  ---
10
12
 
@@ -15,6 +17,7 @@ Confluence pages and Jira issue descriptions. Edits to the source propagate to a
15
17
  near real-time via the Block Service backend and AGG GraphQL WebSocket subscriptions.
16
18
 
17
19
  **Two ADF node types:**
20
+
18
21
  - `bodiedSyncBlock` — **Source** sync block (contains the editable content)
19
22
  - `syncBlock` — **Reference** sync block (renders content fetched from block service)
20
23
 
@@ -24,63 +27,70 @@ near real-time via the Block Service backend and AGG GraphQL WebSocket subscript
24
27
 
25
28
  ### Platform (shared across products)
26
29
 
27
- | Package | Path | Purpose |
28
- |---------|------|---------|
29
- | **Plugin** | `platform/packages/editor/editor-plugin-synced-block/` | Core editor plugin — registers nodes, toolbar, commands, block menu integration |
30
- | **Provider** | `platform/packages/editor/editor-synced-block-provider/` | Data layer — store managers, block service API client, ARI generation, permissions, media tokens |
31
- | **Renderer** | `platform/packages/editor/editor-synced-block-renderer/` | View-mode rendering of reference sync blocks using nested renderer |
32
- | **Plugin Tests** | `platform/packages/editor/editor-plugin-synced-block-tests/` | Integration tests for the plugin |
33
- | **Provider Tests** | `platform/packages/editor/editor-synced-block-provider-tests/` | Tests for store managers and provider hooks |
34
- | **Renderer Tests** | `platform/packages/editor/editor-synced-block-renderer-tests/` | Tests for renderer components |
30
+ | Package | Path | Purpose |
31
+ | ------------------ | -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
32
+ | **Plugin** | `platform/packages/editor/editor-plugin-synced-block/` | Core editor plugin — registers nodes, toolbar, commands, block menu integration |
33
+ | **Provider** | `platform/packages/editor/editor-synced-block-provider/` | Data layer — store managers, block service API client, ARI generation, permissions, media tokens |
34
+ | **Renderer** | `platform/packages/editor/editor-synced-block-renderer/` | View-mode rendering of reference sync blocks using nested renderer |
35
+ | **Plugin Tests** | `platform/packages/editor/editor-plugin-synced-block-tests/` | Integration tests for the plugin |
36
+ | **Provider Tests** | `platform/packages/editor/editor-synced-block-provider-tests/` | Tests for store managers and provider hooks |
37
+ | **Renderer Tests** | `platform/packages/editor/editor-synced-block-renderer-tests/` | Tests for renderer components |
35
38
 
36
39
  Also touches:
40
+
37
41
  - `platform/packages/editor/editor-common` — shared types
38
42
  - `platform/packages/editor/editor-core` — plugin registration
39
43
  - `platform/packages/renderer` — reference rendering in view mode
40
44
 
41
45
  ### Confluence
42
46
 
43
- | File/Package | Path | Purpose |
44
- |-------------|------|---------|
45
- | SyncedBlockProvider | `confluence/next/packages/fabric-providers/src/SyncedBlockProvider.ts` | Wraps platform provider with Confluence config (AGG endpoint, media tokens, permissions) |
46
- | SyncedBlockPreload | `confluence/next/packages/fabric-providers/src/SyncedBlockPreload.ts` | Preloads sync block data for SSR |
47
- | SSR Data Loading | `confluence/next/packages/fabric-providers/src/SyncedBlockLoadSSRData.ts` | Loads SSR data |
48
- | Edit Page Preload | `confluence/next/packages/load-edit-page/src/preload/preloadSyncedBlocksData.ts` | Preloads data for edit page |
49
- | Editor Preload | `confluence/next/packages/load-edit-page/src/preload/preloadEditorSyncedBlocksData.ts` | Editor-specific preloading |
50
- | Full Page Editor | `confluence/next/packages/full-page-editor/src/FullPageEditorComponent.tsx` | Integrates sync block plugin into editor |
47
+ | File/Package | Path | Purpose |
48
+ | ------------------- | -------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
49
+ | SyncedBlockProvider | `confluence/next/packages/fabric-providers/src/SyncedBlockProvider.ts` | Wraps platform provider with Confluence config (AGG endpoint, media tokens, permissions) |
50
+ | SyncedBlockPreload | `confluence/next/packages/fabric-providers/src/SyncedBlockPreload.ts` | Preloads sync block data for SSR |
51
+ | SSR Data Loading | `confluence/next/packages/fabric-providers/src/SyncedBlockLoadSSRData.ts` | Loads SSR data |
52
+ | Edit Page Preload | `confluence/next/packages/load-edit-page/src/preload/preloadSyncedBlocksData.ts` | Preloads data for edit page |
53
+ | Editor Preload | `confluence/next/packages/load-edit-page/src/preload/preloadEditorSyncedBlocksData.ts` | Editor-specific preloading |
54
+ | Full Page Editor | `confluence/next/packages/full-page-editor/src/FullPageEditorComponent.tsx` | Integrates sync block plugin into editor |
51
55
 
52
56
  ### Jira
53
57
 
54
- | File/Package | Path | Purpose |
55
- |-------------|------|---------|
56
- | Provider Package | `jira/src/packages/issue/issue-view-synced-block-provider/` | Core Jira integration package |
57
- | Node Component Hook | `src/useSyncedBlockProviderNodeComponent.tsx` | Creates synced block node components for Jira |
58
- | Editor HOC | `src/withSyncedBlockProviderEditor.tsx` | Wraps Jira editor with sync block support |
59
- | Renderer HOC | `src/withSyncedBlockProviderRenderer.tsx` | Wraps Jira renderer with sync block support |
60
- | Prefetch | `src/prefetchSyncedBlocks.ts` | Prefetches sync block data in issue view |
61
- | Relay Fetch | `src/useRelaySyncBlockFetchProvider.tsx` | Real-time updates via Relay subscriptions |
58
+ | File/Package | Path | Purpose |
59
+ | ------------------- | ----------------------------------------------------------- | --------------------------------------------- |
60
+ | Provider Package | `jira/src/packages/issue/issue-view-synced-block-provider/` | Core Jira integration package |
61
+ | Node Component Hook | `src/useSyncedBlockProviderNodeComponent.tsx` | Creates synced block node components for Jira |
62
+ | Editor HOC | `src/withSyncedBlockProviderEditor.tsx` | Wraps Jira editor with sync block support |
63
+ | Renderer HOC | `src/withSyncedBlockProviderRenderer.tsx` | Wraps Jira renderer with sync block support |
64
+ | Prefetch | `src/prefetchSyncedBlocks.ts` | Prefetches sync block data in issue view |
65
+ | Relay Fetch | `src/useRelaySyncBlockFetchProvider.tsx` | Real-time updates via Relay subscriptions |
62
66
 
63
67
  ---
64
68
 
65
69
  ## Key Concepts
66
70
 
67
71
  ### Source vs Reference
72
+
68
73
  - **Source** (`bodiedSyncBlock`): The original content block. Content is stored in the page ADF AND
69
74
  in the Block Service. Editable inline.
70
75
  - **Reference** (`syncBlock`): A read-only copy that fetches content from Block Service. Rendered
71
76
  via nested renderer. Shows "Synced from [page]" label.
72
77
 
73
78
  ### Data Flow
74
- 1. **Create source** → Content saved to Block Service via API → ARI generated from page ID + local ID
79
+
80
+ 1. **Create source** → Content saved to Block Service via API → ARI generated from page ID + local
81
+ ID
75
82
  2. **Create reference** → Copy source link → Paste → `syncBlock` node inserted with `resourceId`
76
- 3. **Edit source** → Content pushed to Block Service → AGG subscription notifies references → References re-fetch and re-render
83
+ 3. **Edit source** → Content pushed to Block Service → AGG subscription notifies references →
84
+ References re-fetch and re-render
77
85
  4. **SSR** → On page load, Confluence/Jira preloads sync block data from Block Service in bulk
78
86
 
79
87
  ### ARI Format
88
+
80
89
  - Confluence: `ari:cloud:block::{cloudId}/confluence-page:{pageId}/{localId}`
81
90
  - Jira: `ari:cloud:block::{cloudId}/jira-work-item:{issueId}/{localId}`
82
91
 
83
92
  ### Store Managers
93
+
84
94
  - `SyncBlockStoreManager` — Manages source sync block state (create, update, delete, flush)
85
95
  - `ReferenceSyncBlockStoreManager` — Manages reference sync block state (fetch, subscribe, cache)
86
96
  - `SyncBlockInMemorySessionCache` — Caches data for view→edit transitions
@@ -123,12 +133,16 @@ syncedBlockPlugin.tsx ← Top-level: registers nodes, commands, UI, pm-
123
133
  ### Key Code Patterns
124
134
 
125
135
  **Creating a sync block** (flow through the code):
126
- 1. User triggers via toolbar/block menu/slash command → `ui/toolbar-components.tsx` or `ui/block-menu-components.tsx`
136
+
137
+ 1. User triggers via toolbar/block menu/slash command → `ui/toolbar-components.tsx` or
138
+ `ui/block-menu-components.tsx`
127
139
  2. Calls `editor-commands/createSyncedBlock` → inserts `bodiedSyncBlock` node into document
128
- 3. `pm-plugins/main.ts` detects new node → `handle-bodied-sync-block-creation.ts` → calls `SyncBlockStoreManager.create()` → Block Service API
140
+ 3. `pm-plugins/main.ts` detects new node → `handle-bodied-sync-block-creation.ts` → calls
141
+ `SyncBlockStoreManager.create()` → Block Service API
129
142
  4. `menu-and-toolbar-experiences.ts` fires experience event
130
143
 
131
144
  **Reference rendering** (flow through the code):
145
+
132
146
  1. `nodeviews/syncedBlock.tsx` mounts for each `syncBlock` node
133
147
  2. Calls `ReferenceSyncBlockStoreManager.fetch(resourceId)` → Block Service API
134
148
  3. Renders content via nested renderer from `editor-synced-block-renderer`
@@ -141,23 +155,31 @@ syncedBlockPlugin.tsx ← Top-level: registers nodes, commands, UI, pm-
141
155
  ### Implementing a new feature in sync blocks
142
156
 
143
157
  1. **Identify scope**: Does it affect source, reference, or both? Editor, renderer, or both?
144
- 2. **Platform first**: Make changes in `editor-plugin-synced-block` or `editor-synced-block-provider`
145
- 3. **Product integration**: Update Confluence (`fabric-providers`) and/or Jira (`issue-view-synced-block-provider`)
146
- 4. **Feature gate**: Use a DnH **Experiment** (not a feature gate) for production changes. See [Experiment and gates page](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6390978659)
158
+ 2. **Platform first**: Make changes in `editor-plugin-synced-block` or
159
+ `editor-synced-block-provider`
160
+ 3. **Product integration**: Update Confluence (`fabric-providers`) and/or Jira
161
+ (`issue-view-synced-block-provider`)
162
+ 4. **Feature gate**: Use a DnH **Experiment** (not a feature gate) for production changes. See
163
+ [Experiment and gates page](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6390978659)
147
164
  5. **Analytics**: Add experience tracking events (see `EDITOR-1665` pattern)
148
165
  6. **Test**: Add tests in the corresponding test package
149
166
 
150
167
  ### Fixing a bug
151
168
 
152
- 1. **Check supported node types**: [Edit at source](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5926568979) | [Edit anywhere](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5864526866)
153
- 2. **Check unsupported content handling**: [Unsupported content](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5687277297)
154
- 3. **Debug with analytics**: [HOW-TO: Use analytics to debug errors](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6342760320)
169
+ 1. **Check supported node types**:
170
+ [Edit at source](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5926568979) |
171
+ [Edit anywhere](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5864526866)
172
+ 2. **Check unsupported content handling**:
173
+ [Unsupported content](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5687277297)
174
+ 3. **Debug with analytics**:
175
+ [HOW-TO: Use analytics to debug errors](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6342760320)
155
176
  4. **Gate the fix**: Use DnH Experiment, not a feature gate
156
177
  5. **Test on staging**: Verify on Hello (hello.atlassian.net) with experiment enabled
157
178
 
158
179
  ### Cleaning up a feature gate
159
180
 
160
- 1. Find the gate key in [Experiment and gates](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6390978659)
181
+ 1. Find the gate key in
182
+ [Experiment and gates](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6390978659)
161
183
  2. Search codebase: `grep -r "gate_key_name" platform/ confluence/ jira/`
162
184
  3. Remove conditional logic, keep the "enabled" code path
163
185
  4. Remove the Switcheroo/Statsig configuration
@@ -165,7 +187,8 @@ syncedBlockPlugin.tsx ← Top-level: registers nodes, commands, UI, pm-
165
187
 
166
188
  ### Adding support for a new node type in sync blocks
167
189
 
168
- 1. Check if node is in the supported list: [Supported node types](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5926568979)
190
+ 1. Check if node is in the supported list:
191
+ [Supported node types](https://hello.atlassian.net/wiki/spaces/egcuc/pages/5926568979)
169
192
  2. For **source**: Update the allowed node schema in `editor-plugin-synced-block`
170
193
  3. For **reference**: Ensure nested renderer in `editor-synced-block-renderer` can render the node
171
194
  4. Test in both classic pages and live pages
@@ -177,31 +200,40 @@ syncedBlockPlugin.tsx ← Top-level: registers nodes, commands, UI, pm-
177
200
 
178
201
  - **VC90**: Sync blocks can regress VC90 due to content shift (CLS). Reference blocks fetch content
179
202
  async and shift the page. Use SSR preloading to mitigate.
180
- - **SSR**: Bulk fetch endpoint reduces waterfall. Configurable via `platform_editor_sync_block_ssr_config`.
181
- - **View→Edit transition**: Cache sync block data in session storage (see `SyncBlockInMemorySessionCache`)
182
- - **Criterion tests**: [Perf test page](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6498888237)
203
+ - **SSR**: Bulk fetch endpoint reduces waterfall. Configurable via
204
+ `platform_editor_sync_block_ssr_config`.
205
+ - **View→Edit transition**: Cache sync block data in session storage (see
206
+ `SyncBlockInMemorySessionCache`)
207
+ - **Criterion tests**:
208
+ [Perf test page](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6498888237)
183
209
 
184
210
  ---
185
211
 
186
212
  ## Analytics Events Quick Reference
187
213
 
188
214
  **Experience events** (SLO-driving): `asyncOperation` type
215
+
189
216
  - `fetchSyncedBlock`, `fetchSyncedBlockSourceInfo`, `fetchSyncedBlockReferencesInfo`
190
217
  - `syncedBlockCreate`, `syncedBlockUpdate`, `syncedBlockDelete`
191
218
  - `referenceSyncedBlockUpdate`
192
219
 
193
220
  **Menu/toolbar events**: `menuAction` and `toolbarAction` types
221
+
194
222
  - `syncedBlockCreate` (quickInsertMenu, blockMenu, primaryToolbar)
195
223
  - `syncedBlockDelete`, `referenceSyncedBlockDelete` (syncedBlockToolbar)
196
224
  - `syncedBlockUnsync`, `referenceSyncedBlockUnsync` (syncedBlockToolbar)
197
225
  - `syncedBlockViewLocations`, `syncedBlockEditSource` (syncedBlockToolbar)
198
226
 
199
227
  **Standard analytics events**: Track individual sync block operations
228
+
200
229
  - `fetched/fetchSyncedBlock` — attributes: `resourceId`, `blockInstanceId`, `sourceProduct`
201
- - `rendered/renderSyncedBlock` — attributes: `resourceId`, `sourceProduct`, state (`loaded`/`error`/`permissionDenied`/`missingSource`)
202
- - `inserted/documentInserted` (page save) — attributes: `numberOfSyncedBlocks`, `numberOfReferencedSyncedBlocks`
230
+ - `rendered/renderSyncedBlock` — attributes: `resourceId`, `sourceProduct`, state
231
+ (`loaded`/`error`/`permissionDenied`/`missingSource`)
232
+ - `inserted/documentInserted` (page save) — attributes: `numberOfSyncedBlocks`,
233
+ `numberOfReferencedSyncedBlocks`
203
234
 
204
- Full catalogue: [Synced Block Analytics Catalogue](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6332253480)
235
+ Full catalogue:
236
+ [Synced Block Analytics Catalogue](https://hello.atlassian.net/wiki/spaces/egcuc/pages/6332253480)
205
237
 
206
238
  ---
207
239
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @atlaskit/editor-plugin-synced-block
2
2
 
3
+ ## 6.0.22
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
9
+ ## 6.0.21
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies
14
+
3
15
  ## 6.0.20
4
16
 
5
17
  ### Patch Changes
@@ -85,7 +85,7 @@ var SyncBlock = exports.SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
85
85
  dispatchAnalyticsEvent: (_this$api2 = this.api) === null || _this$api2 === void 0 || (_this$api2 = _this$api2.analytics) === null || _this$api2 === void 0 ? void 0 : _this$api2.actions.fireAnalyticsEvent,
86
86
  fallbackComponent: null
87
87
  }, /*#__PURE__*/_react.default.createElement(_syncBlock.SyncBlockActionsProvider
88
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
88
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
89
89
  , {
90
90
  removeSyncBlock: function removeSyncBlock() {
91
91
  var pos = getPos();
@@ -93,7 +93,7 @@ var SyncBlock = exports.SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
93
93
  (0, _editorCommands.removeSyncedBlockAtPos)(_this2.api, pos);
94
94
  }
95
95
  }
96
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
96
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
97
97
  ,
98
98
  fetchSyncBlockSourceInfo: function fetchSyncBlockSourceInfo(sourceAri) {
99
99
  return syncBlockStore.referenceManager.fetchSyncBlockSourceInfoBySourceAri(sourceAri);
@@ -101,12 +101,12 @@ var SyncBlock = exports.SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
101
101
  }, /*#__PURE__*/_react.default.createElement(_SyncBlockRendererWrapper.SyncBlockRendererWrapper, {
102
102
  localId: this.node.attrs.localId,
103
103
  syncedBlockRenderer: (_this$options2 = this.options) === null || _this$options2 === void 0 ? void 0 : _this$options2.syncedBlockRenderer
104
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
104
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
105
105
  ,
106
106
  useFetchSyncBlockTitle: function useFetchSyncBlockTitle() {
107
107
  return (0, _editorSyncedBlockProvider.useFetchSyncBlockTitle)(syncBlockStore, _this2.node);
108
108
  }
109
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
109
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
110
110
  ,
111
111
  useFetchSyncBlockData: function useFetchSyncBlockData() {
112
112
  var _this2$api;
@@ -54,7 +54,7 @@ export class SyncBlock extends ReactNodeView {
54
54
  dispatchAnalyticsEvent: (_this$api2 = this.api) === null || _this$api2 === void 0 ? void 0 : (_this$api2$analytics = _this$api2.analytics) === null || _this$api2$analytics === void 0 ? void 0 : _this$api2$analytics.actions.fireAnalyticsEvent,
55
55
  fallbackComponent: null
56
56
  }, /*#__PURE__*/React.createElement(SyncBlockActionsProvider
57
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
57
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
58
58
  , {
59
59
  removeSyncBlock: () => {
60
60
  const pos = getPos();
@@ -62,16 +62,16 @@ export class SyncBlock extends ReactNodeView {
62
62
  removeSyncedBlockAtPos(this.api, pos);
63
63
  }
64
64
  }
65
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
65
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
66
66
  ,
67
67
  fetchSyncBlockSourceInfo: sourceAri => syncBlockStore.referenceManager.fetchSyncBlockSourceInfoBySourceAri(sourceAri)
68
68
  }, /*#__PURE__*/React.createElement(SyncBlockRendererWrapper, {
69
69
  localId: this.node.attrs.localId,
70
70
  syncedBlockRenderer: (_this$options2 = this.options) === null || _this$options2 === void 0 ? void 0 : _this$options2.syncedBlockRenderer
71
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
71
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
72
72
  ,
73
73
  useFetchSyncBlockTitle: () => useFetchSyncBlockTitle(syncBlockStore, this.node)
74
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
74
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
75
75
  ,
76
76
  useFetchSyncBlockData: () => {
77
77
  var _this$api3, _this$api3$analytics, _this$api3$analytics$;
@@ -78,7 +78,7 @@ export var SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
78
78
  dispatchAnalyticsEvent: (_this$api2 = this.api) === null || _this$api2 === void 0 || (_this$api2 = _this$api2.analytics) === null || _this$api2 === void 0 ? void 0 : _this$api2.actions.fireAnalyticsEvent,
79
79
  fallbackComponent: null
80
80
  }, /*#__PURE__*/React.createElement(SyncBlockActionsProvider
81
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
81
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
82
82
  , {
83
83
  removeSyncBlock: function removeSyncBlock() {
84
84
  var pos = getPos();
@@ -86,7 +86,7 @@ export var SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
86
86
  removeSyncedBlockAtPos(_this2.api, pos);
87
87
  }
88
88
  }
89
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
89
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
90
90
  ,
91
91
  fetchSyncBlockSourceInfo: function fetchSyncBlockSourceInfo(sourceAri) {
92
92
  return syncBlockStore.referenceManager.fetchSyncBlockSourceInfoBySourceAri(sourceAri);
@@ -94,12 +94,12 @@ export var SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
94
94
  }, /*#__PURE__*/React.createElement(SyncBlockRendererWrapper, {
95
95
  localId: this.node.attrs.localId,
96
96
  syncedBlockRenderer: (_this$options2 = this.options) === null || _this$options2 === void 0 ? void 0 : _this$options2.syncedBlockRenderer
97
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
97
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
98
98
  ,
99
99
  useFetchSyncBlockTitle: function useFetchSyncBlockTitle() {
100
100
  return _useFetchSyncBlockTitle(syncBlockStore, _this2.node);
101
101
  }
102
- // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
102
+ // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
103
103
  ,
104
104
  useFetchSyncBlockData: function useFetchSyncBlockData() {
105
105
  var _this2$api;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-synced-block",
3
- "version": "6.0.20",
3
+ "version": "6.0.22",
4
4
  "description": "SyncedBlock plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -54,8 +54,8 @@
54
54
  "@atlaskit/platform-feature-flags": "^1.1.0",
55
55
  "@atlaskit/primitives": "^18.0.0",
56
56
  "@atlaskit/spinner": "19.0.11",
57
- "@atlaskit/tmp-editor-statsig": "^44.0.0",
58
- "@atlaskit/tokens": "11.1.1",
57
+ "@atlaskit/tmp-editor-statsig": "^45.0.0",
58
+ "@atlaskit/tokens": "11.2.0",
59
59
  "@atlaskit/tooltip": "^21.0.0",
60
60
  "@atlaskit/visually-hidden": "^3.0.0",
61
61
  "@babel/runtime": "^7.0.0",
@@ -65,7 +65,7 @@
65
65
  "react-intl-next": "npm:react-intl@^5.18.1"
66
66
  },
67
67
  "peerDependencies": {
68
- "@atlaskit/editor-common": "^112.7.0",
68
+ "@atlaskit/editor-common": "^112.8.0",
69
69
  "react": "^18.2.0"
70
70
  },
71
71
  "devDependencies": {