@atlaskit/editor-synced-block-provider 3.5.5 → 3.6.1

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 (71) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/cjs/clients/block-service/ari.js +12 -1
  3. package/dist/cjs/clients/block-service/blockService.js +35 -2
  4. package/dist/cjs/clients/confluence/sourceInfo.js +150 -19
  5. package/dist/cjs/common/consts.js +7 -0
  6. package/dist/cjs/hooks/useFetchSyncBlockData.js +10 -2
  7. package/dist/cjs/index.js +7 -0
  8. package/dist/cjs/providers/block-service/blockServiceAPI.js +195 -125
  9. package/dist/cjs/providers/syncBlockProvider.js +83 -14
  10. package/dist/cjs/store-manager/referenceSyncBlockStoreManager.js +267 -63
  11. package/dist/cjs/store-manager/sourceSyncBlockStoreManager.js +134 -34
  12. package/dist/cjs/store-manager/syncBlockStoreManager.js +121 -0
  13. package/dist/cjs/utils/errorHandling.js +4 -1
  14. package/dist/cjs/utils/parseResourceId.js +38 -0
  15. package/dist/es2019/clients/block-service/ari.js +11 -0
  16. package/dist/es2019/clients/block-service/blockService.js +12 -1
  17. package/dist/es2019/clients/confluence/sourceInfo.js +70 -2
  18. package/dist/es2019/common/consts.js +1 -0
  19. package/dist/es2019/hooks/useFetchSyncBlockData.js +10 -1
  20. package/dist/es2019/index.js +1 -0
  21. package/dist/es2019/providers/block-service/blockServiceAPI.js +45 -2
  22. package/dist/es2019/providers/syncBlockProvider.js +37 -5
  23. package/dist/es2019/store-manager/referenceSyncBlockStoreManager.js +249 -39
  24. package/dist/es2019/store-manager/sourceSyncBlockStoreManager.js +101 -16
  25. package/dist/es2019/store-manager/syncBlockStoreManager.js +64 -0
  26. package/dist/es2019/utils/errorHandling.js +2 -1
  27. package/dist/es2019/utils/parseResourceId.js +25 -0
  28. package/dist/esm/clients/block-service/ari.js +11 -0
  29. package/dist/esm/clients/block-service/blockService.js +34 -1
  30. package/dist/esm/clients/confluence/sourceInfo.js +149 -18
  31. package/dist/esm/common/consts.js +1 -0
  32. package/dist/esm/hooks/useFetchSyncBlockData.js +10 -2
  33. package/dist/esm/index.js +1 -0
  34. package/dist/esm/providers/block-service/blockServiceAPI.js +195 -125
  35. package/dist/esm/providers/syncBlockProvider.js +81 -12
  36. package/dist/esm/store-manager/referenceSyncBlockStoreManager.js +267 -63
  37. package/dist/esm/store-manager/sourceSyncBlockStoreManager.js +135 -35
  38. package/dist/esm/store-manager/syncBlockStoreManager.js +121 -0
  39. package/dist/esm/utils/errorHandling.js +3 -0
  40. package/dist/esm/utils/parseResourceId.js +31 -0
  41. package/dist/types/clients/block-service/ari.d.ts +1 -0
  42. package/dist/types/clients/block-service/blockService.d.ts +15 -5
  43. package/dist/types/clients/confluence/sourceInfo.d.ts +3 -1
  44. package/dist/types/common/consts.d.ts +1 -0
  45. package/dist/types/common/types.d.ts +27 -1
  46. package/dist/types/hooks/useFetchSyncBlockData.d.ts +6 -1
  47. package/dist/types/index.d.ts +3 -2
  48. package/dist/types/providers/block-service/blockServiceAPI.d.ts +3 -2
  49. package/dist/types/providers/syncBlockProvider.d.ts +3 -2
  50. package/dist/types/providers/types.d.ts +15 -2
  51. package/dist/types/store-manager/referenceSyncBlockStoreManager.d.ts +11 -2
  52. package/dist/types/store-manager/sourceSyncBlockStoreManager.d.ts +7 -2
  53. package/dist/types/store-manager/syncBlockStoreManager.d.ts +4 -0
  54. package/dist/types/utils/errorHandling.d.ts +1 -0
  55. package/dist/types/utils/parseResourceId.d.ts +6 -0
  56. package/dist/types-ts4.5/clients/block-service/ari.d.ts +1 -0
  57. package/dist/types-ts4.5/clients/block-service/blockService.d.ts +15 -5
  58. package/dist/types-ts4.5/clients/confluence/sourceInfo.d.ts +3 -1
  59. package/dist/types-ts4.5/common/consts.d.ts +4 -0
  60. package/dist/types-ts4.5/common/types.d.ts +27 -1
  61. package/dist/types-ts4.5/hooks/useFetchSyncBlockData.d.ts +6 -1
  62. package/dist/types-ts4.5/index.d.ts +3 -2
  63. package/dist/types-ts4.5/providers/block-service/blockServiceAPI.d.ts +3 -2
  64. package/dist/types-ts4.5/providers/syncBlockProvider.d.ts +3 -2
  65. package/dist/types-ts4.5/providers/types.d.ts +15 -2
  66. package/dist/types-ts4.5/store-manager/referenceSyncBlockStoreManager.d.ts +11 -2
  67. package/dist/types-ts4.5/store-manager/sourceSyncBlockStoreManager.d.ts +7 -2
  68. package/dist/types-ts4.5/store-manager/syncBlockStoreManager.d.ts +4 -0
  69. package/dist/types-ts4.5/utils/errorHandling.d.ts +1 -0
  70. package/dist/types-ts4.5/utils/parseResourceId.d.ts +6 -0
  71. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # @atlaskit/editor-synced-block-provider
2
2
 
3
+ ## 3.6.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`f0124a523d8f1`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f0124a523d8f1) -
8
+ [ux] [EDITOR-2845] Implement synced location for source and reference sync block
9
+ - Updated dependencies
10
+
11
+ ## 3.6.0
12
+
13
+ ### Minor Changes
14
+
15
+ - [`8100ae00326b4`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/8100ae00326b4) -
16
+ EDITOR-2850-add media ssr support for sync blocks
17
+
18
+ ### Patch Changes
19
+
20
+ - [`fff45a651440a`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/fff45a651440a) -
21
+ EDITOR-1665 add experience tracking analytics for sync block save, fetch and delete
22
+ - Updated dependencies
23
+
3
24
  ## 3.5.5
4
25
 
5
26
  ### Patch Changes
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getLocalIdFromBlockResourceId = exports.generateBlockAriFromReference = exports.generateBlockAri = void 0;
6
+ exports.getProductFromSourceAri = exports.getLocalIdFromBlockResourceId = exports.generateBlockAriFromReference = exports.generateBlockAri = void 0;
7
7
  /* eslint-disable require-unicode-regexp */
8
8
 
9
9
  /**
@@ -45,4 +45,15 @@ var getLocalIdFromBlockResourceId = exports.getLocalIdFromBlockResourceId = func
45
45
  return match[1];
46
46
  }
47
47
  throw new Error("Invalid page ARI: ".concat(ari));
48
+ };
49
+ var getProductFromSourceAri = exports.getProductFromSourceAri = function getProductFromSourceAri(ari) {
50
+ var jiraMatch = ari === null || ari === void 0 ? void 0 : ari.search(/ari:cloud:jira:.*/);
51
+ if (jiraMatch !== -1) {
52
+ return 'jira-work-item';
53
+ }
54
+ var confluenceMatch = ari === null || ari === void 0 ? void 0 : ari.search(/ari:cloud:confluence:.*/);
55
+ if (confluenceMatch !== -1) {
56
+ return 'confluence-page';
57
+ }
58
+ return undefined;
48
59
  };
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.updateSyncedBlock = exports.updateReferenceSyncedBlockOnDocument = exports.isBlockContentResponse = exports.getSyncedBlockContent = exports.getReferenceSyncedBlocks = exports.deleteSyncedBlock = exports.createSyncedBlock = exports.batchRetrieveSyncedBlocks = exports.BlockError = void 0;
7
+ exports.updateSyncedBlock = exports.updateReferenceSyncedBlockOnDocument = exports.isBlockContentResponse = exports.getSyncedBlockContent = exports.getReferenceSyncedBlocksByBlockAri = exports.getReferenceSyncedBlocks = exports.deleteSyncedBlock = exports.createSyncedBlock = exports.batchRetrieveSyncedBlocks = exports.BlockError = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
@@ -173,7 +173,6 @@ var getSyncedBlockContent = exports.getSyncedBlockContent = /*#__PURE__*/functio
173
173
  return _ref3.apply(this, arguments);
174
174
  };
175
175
  }();
176
- ;
177
176
 
178
177
  /**
179
178
  * Batch retrieves multiple synced blocks by their ARIs.
@@ -370,4 +369,38 @@ var updateReferenceSyncedBlockOnDocument = exports.updateReferenceSyncedBlockOnD
370
369
  return function updateReferenceSyncedBlockOnDocument(_x7) {
371
370
  return _ref11.apply(this, arguments);
372
371
  };
372
+ }();
373
+ var getReferenceSyncedBlocksByBlockAri = exports.getReferenceSyncedBlocksByBlockAri = /*#__PURE__*/function () {
374
+ var _ref13 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(_ref12) {
375
+ var blockAri, response;
376
+ return _regenerator.default.wrap(function _callee8$(_context8) {
377
+ while (1) switch (_context8.prev = _context8.next) {
378
+ case 0:
379
+ blockAri = _ref12.blockAri;
380
+ _context8.next = 3;
381
+ return (0, _retry.fetchWithRetry)("".concat(BLOCK_SERVICE_API_URL, "/reference/batch-retrieve/").concat(encodeURIComponent(blockAri)), {
382
+ method: 'GET',
383
+ headers: COMMON_HEADERS
384
+ });
385
+ case 3:
386
+ response = _context8.sent;
387
+ if (response.ok) {
388
+ _context8.next = 6;
389
+ break;
390
+ }
391
+ throw new BlockError(response.status);
392
+ case 6:
393
+ _context8.next = 8;
394
+ return response.json();
395
+ case 8:
396
+ return _context8.abrupt("return", _context8.sent);
397
+ case 9:
398
+ case "end":
399
+ return _context8.stop();
400
+ }
401
+ }, _callee8);
402
+ }));
403
+ return function getReferenceSyncedBlocksByBlockAri(_x8) {
404
+ return _ref13.apply(this, arguments);
405
+ };
373
406
  }();
@@ -4,11 +4,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.fetchConfluencePageInfo = void 0;
7
+ exports.fetchConfluencePageInfoOld = exports.fetchConfluencePageInfoNew = exports.fetchConfluencePageInfo = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
11
  var _monitoring = require("@atlaskit/editor-common/monitoring");
12
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
12
13
  var _errorHandling = require("../../utils/errorHandling");
13
14
  var _retry = require("../../utils/retry");
14
15
  var _ari = require("./ari");
@@ -71,23 +72,69 @@ var getConfluenceSourceInfo = /*#__PURE__*/function () {
71
72
  return _ref.apply(this, arguments);
72
73
  };
73
74
  }();
74
- var fetchConfluencePageInfo = exports.fetchConfluencePageInfo = /*#__PURE__*/function () {
75
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(pageAri, localId, fireAnalyticsEvent) {
76
- var _response$data, _contentData$space, _getPageIdAndTypeFrom, pageType, response, contentData, title, url, _ref3, base;
75
+ var resolveNoAccessPageInfo = /*#__PURE__*/function () {
76
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(ari) {
77
+ var response, _payload$data, _payload$data2, payload, url, title;
77
78
  return _regenerator.default.wrap(function _callee2$(_context2) {
78
79
  while (1) switch (_context2.prev = _context2.next) {
79
80
  case 0:
80
- _context2.prev = 0;
81
+ _context2.next = 2;
82
+ return fetch('/gateway/api/object-resolver/resolve/ari', {
83
+ method: 'POST',
84
+ headers: {
85
+ 'Content-Type': 'application/json',
86
+ Accept: 'application/json'
87
+ },
88
+ body: JSON.stringify({
89
+ ari: ari
90
+ })
91
+ });
92
+ case 2:
93
+ response = _context2.sent;
94
+ if (!response.ok) {
95
+ _context2.next = 12;
96
+ break;
97
+ }
98
+ _context2.next = 6;
99
+ return response.json();
100
+ case 6:
101
+ payload = _context2.sent;
102
+ url = payload === null || payload === void 0 || (_payload$data = payload.data) === null || _payload$data === void 0 ? void 0 : _payload$data.url;
103
+ title = payload === null || payload === void 0 || (_payload$data2 = payload.data) === null || _payload$data2 === void 0 ? void 0 : _payload$data2.name;
104
+ return _context2.abrupt("return", {
105
+ url: typeof url === 'string' ? url : undefined,
106
+ title: typeof title === 'string' ? title : undefined,
107
+ sourceAri: ari
108
+ });
109
+ case 12:
110
+ throw new Error("Failed to resolve ari: ".concat(response.statusText));
111
+ case 13:
112
+ case "end":
113
+ return _context2.stop();
114
+ }
115
+ }, _callee2);
116
+ }));
117
+ return function resolveNoAccessPageInfo(_x2) {
118
+ return _ref2.apply(this, arguments);
119
+ };
120
+ }();
121
+ var fetchConfluencePageInfoOld = exports.fetchConfluencePageInfoOld = /*#__PURE__*/function () {
122
+ var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(pageAri, localId, fireAnalyticsEvent) {
123
+ var _response$data, _contentData$space, _getPageIdAndTypeFrom, pageType, response, contentData, title, url, _ref4, base;
124
+ return _regenerator.default.wrap(function _callee3$(_context3) {
125
+ while (1) switch (_context3.prev = _context3.next) {
126
+ case 0:
127
+ _context3.prev = 0;
81
128
  _getPageIdAndTypeFrom = (0, _ari.getPageIdAndTypeFromConfluencePageAri)({
82
129
  ari: pageAri
83
130
  }), pageType = _getPageIdAndTypeFrom.type;
84
- _context2.next = 4;
131
+ _context3.next = 4;
85
132
  return getConfluenceSourceInfo(pageAri);
86
133
  case 4:
87
- response = _context2.sent;
134
+ response = _context3.sent;
88
135
  contentData = (_response$data = response.data) === null || _response$data === void 0 || (_response$data = _response$data.content) === null || _response$data === void 0 || (_response$data = _response$data.nodes) === null || _response$data === void 0 ? void 0 : _response$data[0];
89
136
  title = contentData === null || contentData === void 0 ? void 0 : contentData.title;
90
- _ref3 = (contentData === null || contentData === void 0 ? void 0 : contentData.links) || {}, base = _ref3.base;
137
+ _ref4 = (contentData === null || contentData === void 0 ? void 0 : contentData.links) || {}, base = _ref4.base;
91
138
  if (base && contentData !== null && contentData !== void 0 && (_contentData$space = contentData.space) !== null && _contentData$space !== void 0 && _contentData$space.key && contentData !== null && contentData !== void 0 && contentData.id) {
92
139
  if ((0, _utils.isBlogPageType)(pageType)) {
93
140
  url = "".concat(base, "/spaces/").concat(contentData.space.key, "/blog/edit-v2/").concat(contentData.id);
@@ -101,25 +148,109 @@ var fetchConfluencePageInfo = exports.fetchConfluencePageInfo = /*#__PURE__*/fun
101
148
  if (!title || !url) {
102
149
  fireAnalyticsEvent === null || fireAnalyticsEvent === void 0 || fireAnalyticsEvent((0, _errorHandling.getSourceInfoErrorPayload)('Failed to get confluence page source info'));
103
150
  }
104
- return _context2.abrupt("return", Promise.resolve({
151
+ return _context3.abrupt("return", Promise.resolve({
105
152
  title: title,
106
- url: url
153
+ url: url,
154
+ sourceAri: pageAri
107
155
  }));
108
156
  case 14:
109
- _context2.prev = 14;
110
- _context2.t0 = _context2["catch"](0);
111
- (0, _monitoring.logException)(_context2.t0, {
157
+ _context3.prev = 14;
158
+ _context3.t0 = _context3["catch"](0);
159
+ (0, _monitoring.logException)(_context3.t0, {
112
160
  location: 'editor-synced-block-provider/sourceInfo'
113
161
  });
114
- fireAnalyticsEvent === null || fireAnalyticsEvent === void 0 || fireAnalyticsEvent((0, _errorHandling.getSourceInfoErrorPayload)(_context2.t0.message));
115
- return _context2.abrupt("return", Promise.resolve(undefined));
162
+ fireAnalyticsEvent === null || fireAnalyticsEvent === void 0 || fireAnalyticsEvent((0, _errorHandling.getSourceInfoErrorPayload)(_context3.t0.message));
163
+ return _context3.abrupt("return", Promise.resolve(undefined));
116
164
  case 19:
117
165
  case "end":
118
- return _context2.stop();
166
+ return _context3.stop();
119
167
  }
120
- }, _callee2, null, [[0, 14]]);
168
+ }, _callee3, null, [[0, 14]]);
121
169
  }));
122
- return function fetchConfluencePageInfo(_x2, _x3, _x4) {
123
- return _ref2.apply(this, arguments);
170
+ return function fetchConfluencePageInfoOld(_x3, _x4, _x5) {
171
+ return _ref3.apply(this, arguments);
172
+ };
173
+ }();
174
+ var fetchConfluencePageInfoNew = exports.fetchConfluencePageInfoNew = /*#__PURE__*/function () {
175
+ var _ref5 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(pageAri, hasAccess, urlType, localId) {
176
+ var _response$data2, _contentData$space2, _getPageIdAndTypeFrom2, pageType, response, contentData, _ref6, title, subType, url, _ref7, base;
177
+ return _regenerator.default.wrap(function _callee4$(_context4) {
178
+ while (1) switch (_context4.prev = _context4.next) {
179
+ case 0:
180
+ if (!hasAccess) {
181
+ _context4.next = 13;
182
+ break;
183
+ }
184
+ _getPageIdAndTypeFrom2 = (0, _ari.getPageIdAndTypeFromConfluencePageAri)({
185
+ ari: pageAri
186
+ }), pageType = _getPageIdAndTypeFrom2.type;
187
+ _context4.next = 4;
188
+ return getConfluenceSourceInfo(pageAri);
189
+ case 4:
190
+ response = _context4.sent;
191
+ contentData = (_response$data2 = response.data) === null || _response$data2 === void 0 || (_response$data2 = _response$data2.content) === null || _response$data2 === void 0 || (_response$data2 = _response$data2.nodes) === null || _response$data2 === void 0 ? void 0 : _response$data2[0];
192
+ _ref6 = contentData || {}, title = _ref6.title, subType = _ref6.subType;
193
+ _ref7 = (contentData === null || contentData === void 0 ? void 0 : contentData.links) || {}, base = _ref7.base;
194
+ if (base && contentData !== null && contentData !== void 0 && (_contentData$space2 = contentData.space) !== null && _contentData$space2 !== void 0 && _contentData$space2.key && contentData !== null && contentData !== void 0 && contentData.id) {
195
+ if ((0, _utils.isBlogPageType)(pageType)) {
196
+ url = "".concat(base, "/spaces/").concat(contentData.space.key, "/blog").concat(urlType === 'edit' ? '/edit-v2' : '', "/").concat(contentData.id);
197
+ } else if (contentData.subType === 'live') {
198
+ url = "".concat(base, "/spaces/").concat(contentData.space.key, "/pages/").concat(contentData.id);
199
+ } else {
200
+ url = "".concat(base, "/spaces/").concat(contentData.space.key, "/pages").concat(urlType === 'edit' ? '/edit-v2' : '', "/").concat(contentData.id);
201
+ }
202
+ }
203
+ url = url && localId ? "".concat(url, "#block-").concat(localId) : url;
204
+ return _context4.abrupt("return", Promise.resolve({
205
+ title: title,
206
+ url: url,
207
+ sourceAri: pageAri,
208
+ subType: subType
209
+ }));
210
+ case 13:
211
+ _context4.next = 15;
212
+ return resolveNoAccessPageInfo(pageAri);
213
+ case 15:
214
+ return _context4.abrupt("return", _context4.sent);
215
+ case 16:
216
+ case "end":
217
+ return _context4.stop();
218
+ }
219
+ }, _callee4);
220
+ }));
221
+ return function fetchConfluencePageInfoNew(_x6, _x7, _x8, _x9) {
222
+ return _ref5.apply(this, arguments);
223
+ };
224
+ }();
225
+ var fetchConfluencePageInfo = exports.fetchConfluencePageInfo = /*#__PURE__*/function () {
226
+ var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(pageAri, hasAccess, urlType, localId, fireAnalyticsEvent) {
227
+ return _regenerator.default.wrap(function _callee5$(_context5) {
228
+ while (1) switch (_context5.prev = _context5.next) {
229
+ case 0:
230
+ if (!(0, _platformFeatureFlags.fg)('platform_synced_block_dogfooding')) {
231
+ _context5.next = 6;
232
+ break;
233
+ }
234
+ _context5.next = 3;
235
+ return fetchConfluencePageInfoNew(pageAri, hasAccess, urlType, localId);
236
+ case 3:
237
+ _context5.t0 = _context5.sent;
238
+ _context5.next = 9;
239
+ break;
240
+ case 6:
241
+ _context5.next = 8;
242
+ return fetchConfluencePageInfoOld(pageAri, localId, fireAnalyticsEvent);
243
+ case 8:
244
+ _context5.t0 = _context5.sent;
245
+ case 9:
246
+ return _context5.abrupt("return", _context5.t0);
247
+ case 10:
248
+ case "end":
249
+ return _context5.stop();
250
+ }
251
+ }, _callee5);
252
+ }));
253
+ return function fetchConfluencePageInfo(_x0, _x1, _x10, _x11, _x12) {
254
+ return _ref8.apply(this, arguments);
124
255
  };
125
256
  }();
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SYNC_BLOCK_PRODUCTS = void 0;
7
+ var SYNC_BLOCK_PRODUCTS = exports.SYNC_BLOCK_PRODUCTS = ['confluence-page', 'jira-work-item'];
@@ -11,6 +11,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
11
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
12
  var _react = require("react");
13
13
  var _monitoring = require("@atlaskit/editor-common/monitoring");
14
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
14
15
  var _types = require("../common/types");
15
16
  var _errorHandling = require("../utils/errorHandling");
16
17
  var _utils = require("../utils/utils");
@@ -41,7 +42,7 @@ var useFetchSyncBlockData = exports.useFetchSyncBlockData = function useFetchSyn
41
42
  isLoading = _useState2$.isLoading,
42
43
  setFetchState = _useState2[1];
43
44
  var reloadData = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
44
- var syncBlockNode;
45
+ var syncBlockNode, _manager$referenceMan2;
45
46
  return _regenerator.default.wrap(function _callee$(_context) {
46
47
  while (1) switch (_context.prev = _context.next) {
47
48
  case 0:
@@ -77,7 +78,13 @@ var useFetchSyncBlockData = exports.useFetchSyncBlockData = function useFetchSyn
77
78
  (0, _monitoring.logException)(_context.t0, {
78
79
  location: 'editor-synced-block-provider/useFetchSyncBlockData'
79
80
  });
80
- fireAnalyticsEvent === null || fireAnalyticsEvent === void 0 || fireAnalyticsEvent((0, _errorHandling.fetchErrorPayload)(_context.t0.message));
81
+ if ((0, _platformFeatureFlags.fg)('platform_synced_block_dogfooding')) {
82
+ manager === null || manager === void 0 || (_manager$referenceMan2 = manager.referenceManager) === null || _manager$referenceMan2 === void 0 || (_manager$referenceMan2 = _manager$referenceMan2.fetchExperience) === null || _manager$referenceMan2 === void 0 || _manager$referenceMan2.failure({
83
+ reason: _context.t0.message
84
+ });
85
+ } else {
86
+ fireAnalyticsEvent === null || fireAnalyticsEvent === void 0 || fireAnalyticsEvent((0, _errorHandling.fetchErrorPayload)(_context.t0.message));
87
+ }
81
88
 
82
89
  // Set error state if fetching fails
83
90
  setFetchState({
@@ -113,6 +120,7 @@ var useFetchSyncBlockData = exports.useFetchSyncBlockData = function useFetchSyn
113
120
  }, [localId, manager.referenceManager, resourceId]);
114
121
  return {
115
122
  isLoading: isLoading,
123
+ ssrProviders: resourceId ? manager.referenceManager.getSSRProviders(resourceId) : null,
116
124
  providerFactory: manager.referenceManager.getProviderFactory(resourceId || ''),
117
125
  reloadData: reloadData,
118
126
  syncBlockInstance: syncBlockInstance
package/dist/cjs/index.js CHANGED
@@ -117,6 +117,12 @@ Object.defineProperty(exports, "getPageIdAndTypeFromConfluencePageAri", {
117
117
  return _ari2.getPageIdAndTypeFromConfluencePageAri;
118
118
  }
119
119
  });
120
+ Object.defineProperty(exports, "parseResourceId", {
121
+ enumerable: true,
122
+ get: function get() {
123
+ return _parseResourceId.parseResourceId;
124
+ }
125
+ });
120
126
  Object.defineProperty(exports, "rebaseTransaction", {
121
127
  enumerable: true,
122
128
  get: function get() {
@@ -185,5 +191,6 @@ var _sourceInfo = require("./clients/confluence/sourceInfo");
185
191
  var _syncBlockProvider = require("./providers/syncBlockProvider");
186
192
  var _syncBlockStoreManager = require("./store-manager/syncBlockStoreManager");
187
193
  var _resolveSyncBlockInstance = require("./utils/resolveSyncBlockInstance");
194
+ var _parseResourceId = require("./utils/parseResourceId");
188
195
  var _utils = require("./utils/utils");
189
196
  var _errorHandling = require("./utils/errorHandling");