@atlaskit/editor-synced-block-provider 3.2.0 → 3.2.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 (50) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/cjs/clients/block-service/ari.js +13 -16
  3. package/dist/cjs/clients/confluence/ari.js +7 -40
  4. package/dist/cjs/clients/confluence/sourceInfo.js +3 -1
  5. package/dist/cjs/clients/jira/ari.js +5 -2
  6. package/dist/cjs/index.js +2 -27
  7. package/dist/cjs/providers/block-service/blockServiceAPI.js +71 -28
  8. package/dist/cjs/providers/syncBlockProvider.js +57 -38
  9. package/dist/cjs/store-manager/sourceSyncBlockStoreManager.js +5 -8
  10. package/dist/es2019/clients/block-service/ari.js +15 -16
  11. package/dist/es2019/clients/confluence/ari.js +11 -37
  12. package/dist/es2019/clients/confluence/sourceInfo.js +3 -1
  13. package/dist/es2019/clients/jira/ari.js +9 -2
  14. package/dist/es2019/index.js +2 -3
  15. package/dist/es2019/providers/block-service/blockServiceAPI.js +75 -28
  16. package/dist/es2019/providers/syncBlockProvider.js +45 -25
  17. package/dist/es2019/store-manager/sourceSyncBlockStoreManager.js +5 -8
  18. package/dist/esm/clients/block-service/ari.js +13 -16
  19. package/dist/esm/clients/confluence/ari.js +6 -39
  20. package/dist/esm/clients/confluence/sourceInfo.js +3 -1
  21. package/dist/esm/clients/jira/ari.js +5 -2
  22. package/dist/esm/index.js +2 -3
  23. package/dist/esm/providers/block-service/blockServiceAPI.js +70 -27
  24. package/dist/esm/providers/syncBlockProvider.js +57 -38
  25. package/dist/esm/store-manager/sourceSyncBlockStoreManager.js +4 -8
  26. package/dist/types/clients/block-service/ari.d.ts +14 -4
  27. package/dist/types/clients/confluence/ari.d.ts +8 -21
  28. package/dist/types/clients/jira/ari.d.ts +7 -2
  29. package/dist/types/index.d.ts +5 -6
  30. package/dist/types/providers/block-service/blockServiceAPI.d.ts +31 -6
  31. package/dist/types/providers/syncBlockProvider.d.ts +14 -13
  32. package/dist/types/providers/types.d.ts +9 -6
  33. package/dist/types-ts4.5/clients/block-service/ari.d.ts +14 -4
  34. package/dist/types-ts4.5/clients/confluence/ari.d.ts +8 -21
  35. package/dist/types-ts4.5/clients/jira/ari.d.ts +7 -2
  36. package/dist/types-ts4.5/index.d.ts +5 -6
  37. package/dist/types-ts4.5/providers/block-service/blockServiceAPI.d.ts +31 -6
  38. package/dist/types-ts4.5/providers/syncBlockProvider.d.ts +14 -13
  39. package/dist/types-ts4.5/providers/types.d.ts +9 -6
  40. package/package.json +1 -1
  41. package/dist/cjs/clients/confluence/contentProperty.js +0 -284
  42. package/dist/cjs/providers/confluence/confluenceContentAPI.js +0 -446
  43. package/dist/es2019/clients/confluence/contentProperty.js +0 -288
  44. package/dist/es2019/providers/confluence/confluenceContentAPI.js +0 -310
  45. package/dist/esm/clients/confluence/contentProperty.js +0 -277
  46. package/dist/esm/providers/confluence/confluenceContentAPI.js +0 -440
  47. package/dist/types/clients/confluence/contentProperty.d.ts +0 -139
  48. package/dist/types/providers/confluence/confluenceContentAPI.d.ts +0 -44
  49. package/dist/types-ts4.5/clients/confluence/contentProperty.d.ts +0 -139
  50. package/dist/types-ts4.5/providers/confluence/confluenceContentAPI.d.ts +0 -44
@@ -1,446 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.useMemoizedContentAPIProviders = exports.createContentAPIProvidersWithDefaultKey = void 0;
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
14
- var _react = require("react");
15
- var _ari = require("../../clients/confluence/ari");
16
- var _contentProperty3 = require("../../clients/confluence/contentProperty");
17
- var _utils = require("../../clients/confluence/utils");
18
- var _types = require("../../common/types");
19
- var _errorHandling = require("../../utils/errorHandling");
20
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22
- /**
23
- * Configuration for Content API providers
24
- */
25
-
26
- var getContentPropertyKey = function getContentPropertyKey(contentPropertyKey, localId) {
27
- return contentPropertyKey + '-' + localId;
28
- };
29
- var parseSyncedBlockContentPropertyValue = function parseSyncedBlockContentPropertyValue(value) {
30
- try {
31
- if (value !== '') {
32
- var parsedValue = JSON.parse(value);
33
- if ((0, _typeof2.default)(parsedValue.content) === 'object') {
34
- return parsedValue;
35
- }
36
- throw new Error('Cannot parse synced block data: required properties missing in value');
37
- } else {
38
- throw new Error('Cannot parse synced block data: value is empty');
39
- }
40
- } catch (error) {
41
- throw new Error("Failed to parse synced block data: ".concat(error));
42
- }
43
- };
44
- var getResponseError = function getResponseError(contentProperty) {
45
- var _content$properties;
46
- var content = 'blogPost' in contentProperty.data.confluence ? contentProperty.data.confluence.blogPost : contentProperty.data.confluence.page;
47
- if (!content) {
48
- return _types.SyncBlockError.Forbidden;
49
- }
50
- if (!((_content$properties = content.properties) !== null && _content$properties !== void 0 && _content$properties[0])) {
51
- return _types.SyncBlockError.NotFound;
52
- }
53
- return _types.SyncBlockError.Errored;
54
- };
55
-
56
- /**
57
- * ADFFetchProvider implementation that fetches synced block data from Confluence Content API
58
- */
59
- var ConfluenceADFFetchProvider = /*#__PURE__*/function () {
60
- function ConfluenceADFFetchProvider(config) {
61
- (0, _classCallCheck2.default)(this, ConfluenceADFFetchProvider);
62
- this.config = config;
63
- }
64
- return (0, _createClass2.default)(ConfluenceADFFetchProvider, [{
65
- key: "fetchData",
66
- value: function () {
67
- var _fetchData = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(resourceId) {
68
- var _getPageIdAndTypeFrom, pageId, pageType, localId, key, options, error, value, _contentProperty$data, contentProperty, _contentProperty$data2, _contentProperty, syncedBlockData;
69
- return _regenerator.default.wrap(function _callee$(_context) {
70
- while (1) switch (_context.prev = _context.next) {
71
- case 0:
72
- _getPageIdAndTypeFrom = (0, _ari.getPageIdAndTypeFromConfluencePageAri)(resourceId), pageId = _getPageIdAndTypeFrom.id, pageType = _getPageIdAndTypeFrom.type;
73
- localId = (0, _ari.getLocalIdFromContentPropertyResourceId)(resourceId);
74
- _context.prev = 2;
75
- key = getContentPropertyKey(this.config.contentPropertyKey, localId);
76
- options = {
77
- pageId: pageId,
78
- key: key,
79
- cloudId: this.config.cloudId,
80
- pageType: pageType
81
- };
82
- if (!(0, _utils.isBlogPageType)(pageType)) {
83
- _context.next = 13;
84
- break;
85
- }
86
- _context.next = 8;
87
- return (0, _contentProperty3.getContentProperty)(options);
88
- case 8:
89
- contentProperty = _context.sent;
90
- value = (_contentProperty$data = contentProperty.data.confluence.blogPost) === null || _contentProperty$data === void 0 || (_contentProperty$data = _contentProperty$data.properties) === null || _contentProperty$data === void 0 || (_contentProperty$data = _contentProperty$data[0]) === null || _contentProperty$data === void 0 ? void 0 : _contentProperty$data.value;
91
- error = getResponseError(contentProperty);
92
- _context.next = 18;
93
- break;
94
- case 13:
95
- _context.next = 15;
96
- return (0, _contentProperty3.getContentProperty)(options);
97
- case 15:
98
- _contentProperty = _context.sent;
99
- value = (_contentProperty$data2 = _contentProperty.data.confluence.page) === null || _contentProperty$data2 === void 0 || (_contentProperty$data2 = _contentProperty$data2.properties) === null || _contentProperty$data2 === void 0 || (_contentProperty$data2 = _contentProperty$data2[0]) === null || _contentProperty$data2 === void 0 ? void 0 : _contentProperty$data2.value;
100
- error = getResponseError(_contentProperty);
101
- case 18:
102
- if (value) {
103
- _context.next = 20;
104
- break;
105
- }
106
- return _context.abrupt("return", {
107
- error: error,
108
- resourceId: resourceId
109
- });
110
- case 20:
111
- // Parse the synced block content from the property value
112
- syncedBlockData = parseSyncedBlockContentPropertyValue(value);
113
- return _context.abrupt("return", {
114
- data: {
115
- content: syncedBlockData.content,
116
- // If the block instance ID is not set, use the local ID from the fetch data request
117
- // This is a fallback for the case where the block instance ID is not set in the synced block data (old data)
118
- blockInstanceId: syncedBlockData.blockInstanceId || localId,
119
- // If the resource ID is not set, use the resource ID from the fetch data request
120
- // This is a fallback for the case where the resource ID is not set in the synced block data (old data)
121
- resourceId: syncedBlockData.resourceId || resourceId,
122
- // If the product is not set, use the default product 'confluence-page'
123
- // This is a fallback for the case where the product is not set in the synced block data (old data)
124
- product: syncedBlockData.product || 'confluence-page',
125
- // If the source Ari is not set, use the resource ID as the source Ari
126
- // This is a fallback for the case where the source Ari is not set in the synced block data (old data)
127
- sourceAri: syncedBlockData.sourceAri || resourceId
128
- },
129
- resourceId: resourceId
130
- });
131
- case 24:
132
- _context.prev = 24;
133
- _context.t0 = _context["catch"](2);
134
- return _context.abrupt("return", {
135
- error: _types.SyncBlockError.Errored,
136
- resourceId: resourceId
137
- });
138
- case 27:
139
- case "end":
140
- return _context.stop();
141
- }
142
- }, _callee, this, [[2, 24]]);
143
- }));
144
- function fetchData(_x) {
145
- return _fetchData.apply(this, arguments);
146
- }
147
- return fetchData;
148
- }()
149
- }]);
150
- }();
151
- /**
152
- * ADFWriteProvider implementation that writes synced block data to Confluence Content API
153
- */
154
- var ConfluenceADFWriteProvider = /*#__PURE__*/function () {
155
- function ConfluenceADFWriteProvider(config) {
156
- var _this = this;
157
- (0, _classCallCheck2.default)(this, ConfluenceADFWriteProvider);
158
- (0, _defineProperty2.default)(this, "product", 'confluence-page');
159
- (0, _defineProperty2.default)(this, "createNewContentProperty", /*#__PURE__*/function () {
160
- var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(pageId, key, value, pageType) {
161
- var options, _contentProperty$data3, contentProperty, _contentProperty2$dat, _contentProperty2;
162
- return _regenerator.default.wrap(function _callee2$(_context2) {
163
- while (1) switch (_context2.prev = _context2.next) {
164
- case 0:
165
- options = {
166
- pageId: pageId,
167
- key: key,
168
- value: value,
169
- cloudId: _this.config.cloudId,
170
- pageType: pageType
171
- };
172
- if (!(0, _utils.isBlogPageType)(pageType)) {
173
- _context2.next = 12;
174
- break;
175
- }
176
- _context2.next = 4;
177
- return (0, _contentProperty3.createContentProperty)(options);
178
- case 4:
179
- contentProperty = _context2.sent;
180
- if (!(((_contentProperty$data3 = contentProperty.data.confluence.createBlogPostProperty.blogPostProperty) === null || _contentProperty$data3 === void 0 ? void 0 : _contentProperty$data3.key) === key)) {
181
- _context2.next = 9;
182
- break;
183
- }
184
- return _context2.abrupt("return", key);
185
- case 9:
186
- return _context2.abrupt("return", Promise.reject('Failed to create blog post content property'));
187
- case 10:
188
- _context2.next = 20;
189
- break;
190
- case 12:
191
- _context2.next = 14;
192
- return (0, _contentProperty3.createContentProperty)(options);
193
- case 14:
194
- _contentProperty2 = _context2.sent;
195
- if (!(((_contentProperty2$dat = _contentProperty2.data.confluence.createPageProperty.pageProperty) === null || _contentProperty2$dat === void 0 ? void 0 : _contentProperty2$dat.key) === key)) {
196
- _context2.next = 19;
197
- break;
198
- }
199
- return _context2.abrupt("return", key);
200
- case 19:
201
- return _context2.abrupt("return", Promise.reject('Failed to create page content property'));
202
- case 20:
203
- case "end":
204
- return _context2.stop();
205
- }
206
- }, _callee2);
207
- }));
208
- return function (_x2, _x3, _x4, _x5) {
209
- return _ref.apply(this, arguments);
210
- };
211
- }());
212
- this.config = config;
213
- }
214
- return (0, _createClass2.default)(ConfluenceADFWriteProvider, [{
215
- key: "writeData",
216
- value: function () {
217
- var _writeData = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(syncBlockData) {
218
- var match, resourceId, _match, pageId, pageType, localId, key, sourceAri, syncBlockDataWithSourceDocumentAri, options, updatePayload, updateResult;
219
- return _regenerator.default.wrap(function _callee3$(_context3) {
220
- while (1) switch (_context3.prev = _context3.next) {
221
- case 0:
222
- resourceId = syncBlockData.resourceId;
223
- _context3.prev = 1;
224
- match = (0, _ari.getPageIdAndTypeFromConfluencePageAri)(resourceId);
225
- _context3.next = 8;
226
- break;
227
- case 5:
228
- _context3.prev = 5;
229
- _context3.t0 = _context3["catch"](1);
230
- return _context3.abrupt("return", {
231
- error: (0, _errorHandling.stringifyError)(_context3.t0)
232
- });
233
- case 8:
234
- _match = match, pageId = _match.id, pageType = _match.type;
235
- _context3.prev = 9;
236
- // Update existing content property
237
- localId = (0, _ari.getLocalIdFromContentPropertyResourceId)(resourceId);
238
- key = getContentPropertyKey(this.config.contentPropertyKey, localId);
239
- sourceAri = (0, _ari.getConfluencePageAri)(pageId, this.config.cloudId, pageType);
240
- syncBlockDataWithSourceDocumentAri = _objectSpread(_objectSpread({}, syncBlockData), {}, {
241
- product: 'confluence-page',
242
- sourceAri: sourceAri
243
- });
244
- options = {
245
- pageId: pageId,
246
- key: key,
247
- value: syncBlockDataWithSourceDocumentAri,
248
- cloudId: this.config.cloudId,
249
- pageType: pageType
250
- };
251
- _context3.next = 17;
252
- return (0, _contentProperty3.updateContentProperty)(options);
253
- case 17:
254
- updatePayload = _context3.sent;
255
- updateResult = (0, _utils.isBlogPageType)(pageType) ? updatePayload.data.confluence.updateValueBlogPostProperty.blogPostProperty : updatePayload.data.confluence.updateValuePageProperty.pageProperty;
256
- if (!((updateResult === null || updateResult === void 0 ? void 0 : updateResult.key) === key)) {
257
- _context3.next = 23;
258
- break;
259
- }
260
- return _context3.abrupt("return", {
261
- resourceId: resourceId
262
- });
263
- case 23:
264
- return _context3.abrupt("return", {
265
- error: "Failed to update ".concat(pageType, " content property")
266
- });
267
- case 24:
268
- _context3.next = 29;
269
- break;
270
- case 26:
271
- _context3.prev = 26;
272
- _context3.t1 = _context3["catch"](9);
273
- return _context3.abrupt("return", {
274
- error: "Failed to write ".concat(pageType)
275
- });
276
- case 29:
277
- case "end":
278
- return _context3.stop();
279
- }
280
- }, _callee3, this, [[1, 5], [9, 26]]);
281
- }));
282
- function writeData(_x6) {
283
- return _writeData.apply(this, arguments);
284
- }
285
- return writeData;
286
- }()
287
- }, {
288
- key: "createData",
289
- value: function () {
290
- var _createData = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(syncBlockData) {
291
- var match, resourceId, _match2, pageId, pageType, localId, key, sourceAri, syncBlockDataWithSourceDocumentAri;
292
- return _regenerator.default.wrap(function _callee4$(_context4) {
293
- while (1) switch (_context4.prev = _context4.next) {
294
- case 0:
295
- resourceId = syncBlockData.resourceId;
296
- _context4.prev = 1;
297
- match = (0, _ari.getPageIdAndTypeFromConfluencePageAri)(resourceId);
298
- _context4.next = 8;
299
- break;
300
- case 5:
301
- _context4.prev = 5;
302
- _context4.t0 = _context4["catch"](1);
303
- return _context4.abrupt("return", {
304
- error: (0, _errorHandling.stringifyError)(_context4.t0)
305
- });
306
- case 8:
307
- _match2 = match, pageId = _match2.id, pageType = _match2.type;
308
- _context4.prev = 9;
309
- localId = (0, _ari.getLocalIdFromContentPropertyResourceId)(resourceId);
310
- key = getContentPropertyKey(this.config.contentPropertyKey, localId);
311
- sourceAri = (0, _ari.getConfluencePageAri)(pageId, this.config.cloudId, pageType);
312
- syncBlockDataWithSourceDocumentAri = _objectSpread(_objectSpread({}, syncBlockData), {}, {
313
- product: 'confluence-page',
314
- sourceAri: sourceAri
315
- });
316
- _context4.next = 16;
317
- return this.createNewContentProperty(pageId, key, syncBlockDataWithSourceDocumentAri, pageType);
318
- case 16:
319
- return _context4.abrupt("return", {
320
- resourceId: resourceId
321
- });
322
- case 19:
323
- _context4.prev = 19;
324
- _context4.t1 = _context4["catch"](9);
325
- return _context4.abrupt("return", Promise.resolve({
326
- error: (0, _errorHandling.stringifyError)(_context4.t1)
327
- }));
328
- case 22:
329
- case "end":
330
- return _context4.stop();
331
- }
332
- }, _callee4, this, [[1, 5], [9, 19]]);
333
- }));
334
- function createData(_x7) {
335
- return _createData.apply(this, arguments);
336
- }
337
- return createData;
338
- }()
339
- }, {
340
- key: "deleteData",
341
- value: function () {
342
- var _deleteData = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(resourceId) {
343
- var deletePayload, deleteResult, match, _match3, pageId, pageType, localId, key, options, _stringifyError;
344
- return _regenerator.default.wrap(function _callee5$(_context5) {
345
- while (1) switch (_context5.prev = _context5.next) {
346
- case 0:
347
- _context5.prev = 0;
348
- match = (0, _ari.getPageIdAndTypeFromConfluencePageAri)(resourceId);
349
- _context5.next = 7;
350
- break;
351
- case 4:
352
- _context5.prev = 4;
353
- _context5.t0 = _context5["catch"](0);
354
- return _context5.abrupt("return", {
355
- resourceId: resourceId,
356
- success: false,
357
- error: (0, _errorHandling.stringifyError)(_context5.t0)
358
- });
359
- case 7:
360
- _match3 = match, pageId = _match3.id, pageType = _match3.type;
361
- _context5.prev = 8;
362
- localId = (0, _ari.getLocalIdFromContentPropertyResourceId)(resourceId);
363
- key = getContentPropertyKey(this.config.contentPropertyKey, localId);
364
- options = {
365
- pageId: pageId,
366
- key: key,
367
- cloudId: this.config.cloudId,
368
- pageType: pageType
369
- };
370
- _context5.next = 14;
371
- return (0, _contentProperty3.deleteContentProperty)(options);
372
- case 14:
373
- deletePayload = _context5.sent;
374
- deleteResult = (0, _utils.isBlogPageType)(pageType) ? deletePayload.data.confluence.deleteBlogPostProperty : deletePayload.data.confluence.deletePageProperty;
375
- _context5.next = 21;
376
- break;
377
- case 18:
378
- _context5.prev = 18;
379
- _context5.t1 = _context5["catch"](8);
380
- return _context5.abrupt("return", {
381
- resourceId: resourceId,
382
- success: false,
383
- error: (_stringifyError = (0, _errorHandling.stringifyError)(_context5.t1)) !== null && _stringifyError !== void 0 ? _stringifyError : "Fail to delete ".concat(pageType, " content property")
384
- });
385
- case 21:
386
- return _context5.abrupt("return", {
387
- resourceId: resourceId,
388
- success: deleteResult.success,
389
- error: deleteResult.errors.join()
390
- });
391
- case 22:
392
- case "end":
393
- return _context5.stop();
394
- }
395
- }, _callee5, this, [[0, 4], [8, 18]]);
396
- }));
397
- function deleteData(_x8) {
398
- return _deleteData.apply(this, arguments);
399
- }
400
- return deleteData;
401
- }()
402
- }, {
403
- key: "generateResourceId",
404
- value: function generateResourceId(sourceId, localId) {
405
- return (0, _ari.resourceIdFromConfluencePageSourceIdAndLocalId)(sourceId, localId);
406
- }
407
- }, {
408
- key: "generateResourceIdForReference",
409
- value: function generateResourceIdForReference(sourceId) {
410
- return sourceId;
411
- }
412
- }, {
413
- key: "updateReferenceData",
414
- value: function updateReferenceData(_blocks, _noContent) {
415
- return Promise.resolve({
416
- success: true
417
- });
418
- }
419
- }]);
420
- }();
421
- /**
422
- * Factory function to create both providers with shared configuration
423
- */
424
- var createContentAPIProviders = function createContentAPIProviders(config) {
425
- var fetchProvider = new ConfluenceADFFetchProvider(config);
426
- var writeProvider = new ConfluenceADFWriteProvider(config);
427
- return {
428
- fetchProvider: fetchProvider,
429
- writeProvider: writeProvider
430
- };
431
- };
432
-
433
- /**
434
- * Convenience function to create providers with default content property key
435
- */
436
- var createContentAPIProvidersWithDefaultKey = exports.createContentAPIProvidersWithDefaultKey = function createContentAPIProvidersWithDefaultKey(cloudId) {
437
- return createContentAPIProviders({
438
- cloudId: cloudId,
439
- contentPropertyKey: 'editor-synced-block'
440
- });
441
- };
442
- var useMemoizedContentAPIProviders = exports.useMemoizedContentAPIProviders = function useMemoizedContentAPIProviders(cloudId) {
443
- return (0, _react.useMemo)(function () {
444
- return createContentAPIProvidersWithDefaultKey(cloudId);
445
- }, [cloudId]);
446
- };