@atlaskit/editor-synced-block-provider 3.2.0 → 3.2.2

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 (55) hide show
  1. package/CHANGELOG.md +14 -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 +22 -23
  7. package/dist/cjs/providers/block-service/blockServiceAPI.js +89 -26
  8. package/dist/cjs/providers/syncBlockProvider.js +82 -39
  9. package/dist/cjs/store-manager/sourceSyncBlockStoreManager.js +5 -8
  10. package/dist/cjs/store-manager/syncBlockStoreManager.js +12 -2
  11. package/dist/es2019/clients/block-service/ari.js +15 -16
  12. package/dist/es2019/clients/confluence/ari.js +11 -37
  13. package/dist/es2019/clients/confluence/sourceInfo.js +3 -1
  14. package/dist/es2019/clients/jira/ari.js +9 -2
  15. package/dist/es2019/index.js +4 -5
  16. package/dist/es2019/providers/block-service/blockServiceAPI.js +92 -27
  17. package/dist/es2019/providers/syncBlockProvider.js +71 -25
  18. package/dist/es2019/store-manager/sourceSyncBlockStoreManager.js +5 -8
  19. package/dist/es2019/store-manager/syncBlockStoreManager.js +12 -1
  20. package/dist/esm/clients/block-service/ari.js +13 -16
  21. package/dist/esm/clients/confluence/ari.js +6 -39
  22. package/dist/esm/clients/confluence/sourceInfo.js +3 -1
  23. package/dist/esm/clients/jira/ari.js +5 -2
  24. package/dist/esm/index.js +4 -5
  25. package/dist/esm/providers/block-service/blockServiceAPI.js +88 -25
  26. package/dist/esm/providers/syncBlockProvider.js +81 -38
  27. package/dist/esm/store-manager/sourceSyncBlockStoreManager.js +4 -8
  28. package/dist/esm/store-manager/syncBlockStoreManager.js +11 -1
  29. package/dist/types/clients/block-service/ari.d.ts +14 -4
  30. package/dist/types/clients/confluence/ari.d.ts +8 -21
  31. package/dist/types/clients/jira/ari.d.ts +7 -2
  32. package/dist/types/index.d.ts +7 -8
  33. package/dist/types/providers/block-service/blockServiceAPI.d.ts +39 -6
  34. package/dist/types/providers/syncBlockProvider.d.ts +15 -13
  35. package/dist/types/providers/types.d.ts +9 -6
  36. package/dist/types/store-manager/syncBlockStoreManager.d.ts +4 -0
  37. package/dist/types-ts4.5/clients/block-service/ari.d.ts +14 -4
  38. package/dist/types-ts4.5/clients/confluence/ari.d.ts +8 -21
  39. package/dist/types-ts4.5/clients/jira/ari.d.ts +7 -2
  40. package/dist/types-ts4.5/index.d.ts +7 -8
  41. package/dist/types-ts4.5/providers/block-service/blockServiceAPI.d.ts +39 -6
  42. package/dist/types-ts4.5/providers/syncBlockProvider.d.ts +15 -13
  43. package/dist/types-ts4.5/providers/types.d.ts +9 -6
  44. package/dist/types-ts4.5/store-manager/syncBlockStoreManager.d.ts +4 -0
  45. package/package.json +1 -1
  46. package/dist/cjs/clients/confluence/contentProperty.js +0 -284
  47. package/dist/cjs/providers/confluence/confluenceContentAPI.js +0 -446
  48. package/dist/es2019/clients/confluence/contentProperty.js +0 -288
  49. package/dist/es2019/providers/confluence/confluenceContentAPI.js +0 -310
  50. package/dist/esm/clients/confluence/contentProperty.js +0 -277
  51. package/dist/esm/providers/confluence/confluenceContentAPI.js +0 -440
  52. package/dist/types/clients/confluence/contentProperty.d.ts +0 -139
  53. package/dist/types/providers/confluence/confluenceContentAPI.d.ts +0 -44
  54. package/dist/types-ts4.5/clients/confluence/contentProperty.d.ts +0 -139
  55. package/dist/types-ts4.5/providers/confluence/confluenceContentAPI.d.ts +0 -44
@@ -104,14 +104,14 @@ export var fetchReferences = /*#__PURE__*/function () {
104
104
  return _ref.apply(this, arguments);
105
105
  };
106
106
  }();
107
-
108
107
  /**
109
108
  * ADFFetchProvider implementation that fetches synced block data from Block Service API
110
109
  */
111
110
  var BlockServiceADFFetchProvider = /*#__PURE__*/function () {
112
- function BlockServiceADFFetchProvider(sourceAri) {
111
+ function BlockServiceADFFetchProvider(_ref3) {
112
+ var cloudId = _ref3.cloudId;
113
113
  _classCallCheck(this, BlockServiceADFFetchProvider);
114
- this.sourceAri = sourceAri;
114
+ this.cloudId = cloudId;
115
115
  }
116
116
 
117
117
  // resourceId of the reference synced block.
@@ -124,7 +124,10 @@ var BlockServiceADFFetchProvider = /*#__PURE__*/function () {
124
124
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
125
125
  while (1) switch (_context2.prev = _context2.next) {
126
126
  case 0:
127
- blockAri = generateBlockAriFromReference(this.sourceAri, resourceId);
127
+ blockAri = generateBlockAriFromReference({
128
+ cloudId: this.cloudId,
129
+ resourceId: resourceId
130
+ });
128
131
  _context2.prev = 1;
129
132
  _context2.next = 4;
130
133
  return getSyncedBlockContent({
@@ -188,11 +191,17 @@ var BlockServiceADFFetchProvider = /*#__PURE__*/function () {
188
191
  * ADFWriteProvider implementation that writes synced block data to Block Service API
189
192
  */
190
193
  var BlockServiceADFWriteProvider = /*#__PURE__*/function () {
191
- function BlockServiceADFWriteProvider(sourceAri, product, sourceDocumentId, getVersion) {
194
+ function BlockServiceADFWriteProvider(_ref4) {
195
+ var cloudId = _ref4.cloudId,
196
+ parentAri = _ref4.parentAri,
197
+ parentId = _ref4.parentId,
198
+ product = _ref4.product,
199
+ getVersion = _ref4.getVersion;
192
200
  _classCallCheck(this, BlockServiceADFWriteProvider);
193
- this.sourceAri = sourceAri;
201
+ this.cloudId = cloudId;
202
+ this.parentAri = parentAri;
203
+ this.parentId = parentId;
194
204
  this.product = product;
195
- this.sourceDocumentId = sourceDocumentId;
196
205
  this.getVersion = getVersion;
197
206
  }
198
207
 
@@ -206,7 +215,12 @@ var BlockServiceADFWriteProvider = /*#__PURE__*/function () {
206
215
  while (1) switch (_context3.prev = _context3.next) {
207
216
  case 0:
208
217
  resourceId = data.resourceId;
209
- blockAri = generateBlockAri(this.sourceAri, resourceId, this.product);
218
+ blockAri = generateBlockAri({
219
+ cloudId: this.cloudId,
220
+ parentId: this.parentId,
221
+ product: this.product,
222
+ resourceId: resourceId
223
+ });
210
224
  stepVersion = this.getVersion ? this.getVersion() : undefined;
211
225
  _context3.prev = 3;
212
226
  _context3.next = 6;
@@ -255,14 +269,19 @@ var BlockServiceADFWriteProvider = /*#__PURE__*/function () {
255
269
  while (1) switch (_context4.prev = _context4.next) {
256
270
  case 0:
257
271
  resourceId = data.resourceId;
258
- blockAri = generateBlockAri(this.sourceAri, resourceId, this.product);
272
+ blockAri = generateBlockAri({
273
+ cloudId: this.cloudId,
274
+ parentId: this.parentId,
275
+ product: this.product,
276
+ resourceId: resourceId
277
+ });
259
278
  stepVersion = this.getVersion ? this.getVersion() : undefined;
260
279
  _context4.prev = 3;
261
280
  _context4.next = 6;
262
281
  return createSyncedBlock({
263
282
  blockAri: blockAri,
264
283
  blockInstanceId: data.blockInstanceId,
265
- sourceAri: this.sourceAri,
284
+ sourceAri: this.parentAri,
266
285
  product: this.product,
267
286
  content: JSON.stringify(data.content),
268
287
  stepVersion: stepVersion
@@ -306,7 +325,12 @@ var BlockServiceADFWriteProvider = /*#__PURE__*/function () {
306
325
  return _regeneratorRuntime.wrap(function _callee5$(_context5) {
307
326
  while (1) switch (_context5.prev = _context5.next) {
308
327
  case 0:
309
- blockAri = generateBlockAri(this.sourceAri, resourceId, this.product);
328
+ blockAri = generateBlockAri({
329
+ cloudId: this.cloudId,
330
+ parentId: this.parentId,
331
+ product: this.product,
332
+ resourceId: resourceId
333
+ });
310
334
  _context5.prev = 1;
311
335
  _context5.next = 4;
312
336
  return deleteSyncedBlock({
@@ -359,7 +383,7 @@ var BlockServiceADFWriteProvider = /*#__PURE__*/function () {
359
383
  }, {
360
384
  key: "generateResourceIdForReference",
361
385
  value: function generateResourceIdForReference(sourceId) {
362
- return "".concat(this.product, "/").concat(this.sourceDocumentId, "/").concat(sourceId);
386
+ return "".concat(this.product, "/").concat(this.parentId, "/").concat(sourceId);
363
387
  }
364
388
  }, {
365
389
  key: "generateResourceId",
@@ -377,10 +401,13 @@ var BlockServiceADFWriteProvider = /*#__PURE__*/function () {
377
401
  _context6.prev = 0;
378
402
  _context6.next = 3;
379
403
  return updateReferenceSyncedBlockOnDocument({
380
- documentAri: this.sourceAri,
404
+ documentAri: this.parentAri,
381
405
  blocks: blocks.map(function (block) {
382
406
  return {
383
- blockAri: generateBlockAriFromReference(_this.sourceAri, block.resourceId),
407
+ blockAri: generateBlockAriFromReference({
408
+ cloudId: _this.cloudId,
409
+ resourceId: block.resourceId
410
+ }),
384
411
  blockInstanceId: block.localId
385
412
  };
386
413
  }),
@@ -419,19 +446,55 @@ var BlockServiceADFWriteProvider = /*#__PURE__*/function () {
419
446
  }()
420
447
  }]);
421
448
  }();
422
- /**
423
- * Factory function to create both providers with shared configuration
424
- */
425
- var createBlockServiceAPIProviders = function createBlockServiceAPIProviders(sourceAri, product, sourceDocumentId, getVersion) {
426
- var fetchProvider = new BlockServiceADFFetchProvider(sourceAri);
427
- var writeProvider = new BlockServiceADFWriteProvider(sourceAri, product, sourceDocumentId, getVersion);
449
+ export var createBlockServiceAPIProviders = function createBlockServiceAPIProviders(_ref5) {
450
+ var cloudId = _ref5.cloudId,
451
+ parentAri = _ref5.parentAri,
452
+ parentId = _ref5.parentId,
453
+ product = _ref5.product,
454
+ getVersion = _ref5.getVersion;
455
+ return {
456
+ fetchProvider: new BlockServiceADFFetchProvider({
457
+ cloudId: cloudId
458
+ }),
459
+ writeProvider: new BlockServiceADFWriteProvider({
460
+ cloudId: cloudId,
461
+ parentAri: parentAri,
462
+ parentId: parentId,
463
+ product: product,
464
+ getVersion: getVersion
465
+ })
466
+ };
467
+ };
468
+ export var useMemoizedBlockServiceAPIProviders = function useMemoizedBlockServiceAPIProviders(_ref6) {
469
+ var cloudId = _ref6.cloudId,
470
+ parentAri = _ref6.parentAri,
471
+ parentId = _ref6.parentId,
472
+ product = _ref6.product,
473
+ getVersion = _ref6.getVersion;
474
+ return useMemo(function () {
475
+ return createBlockServiceAPIProviders({
476
+ cloudId: cloudId,
477
+ parentAri: parentAri,
478
+ parentId: parentId,
479
+ product: product,
480
+ getVersion: getVersion
481
+ });
482
+ }, [cloudId, parentAri, parentId, product, getVersion]);
483
+ };
484
+ export var createBlockServiceFetchOnlyAPIProvider = function createBlockServiceFetchOnlyAPIProvider(_ref7) {
485
+ var cloudId = _ref7.cloudId;
428
486
  return {
429
- fetchProvider: fetchProvider,
430
- writeProvider: writeProvider
487
+ fetchProvider: new BlockServiceADFFetchProvider({
488
+ cloudId: cloudId
489
+ }),
490
+ writeProvider: undefined
431
491
  };
432
492
  };
433
- export var useMemoizedBlockServiceAPIProviders = function useMemoizedBlockServiceAPIProviders(sourceAri, product, sourceDocumentId, getVersion) {
493
+ export var useMemoizedBlockServiceFetchOnlyAPIProvider = function useMemoizedBlockServiceFetchOnlyAPIProvider(_ref8) {
494
+ var cloudId = _ref8.cloudId;
434
495
  return useMemo(function () {
435
- return createBlockServiceAPIProviders(sourceAri, product, sourceDocumentId, getVersion);
436
- }, [sourceAri, product, sourceDocumentId, getVersion]);
496
+ return createBlockServiceFetchOnlyAPIProvider({
497
+ cloudId: cloudId
498
+ });
499
+ }, [cloudId]);
437
500
  };
@@ -13,26 +13,22 @@ import { useMemo } from 'react';
13
13
  import { getPageIdAndTypeFromConfluencePageAri } from '../clients/confluence/ari';
14
14
  import { fetchConfluencePageInfo } from '../clients/confluence/sourceInfo';
15
15
  import { SyncBlockError } from '../common/types';
16
- import { SyncBlockDataProvider } from '../providers/types';
16
+ import { SyncBlockDataProvider } from './types';
17
17
  export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
18
- // the source document ARI; that the source sync block is on.
19
-
20
18
  /**
21
19
  * Constructor for the SyncBlockProvider
22
20
  *
23
21
  * @param fetchProvider
24
22
  * @param writeProvider
25
- * @param sourceId
26
23
  * @param nestedRendererDataProviders
27
24
  */
28
- function SyncBlockProvider(fetchProvider, writeProvider, sourceId) {
25
+ function SyncBlockProvider(fetchProvider, writeProvider) {
29
26
  var _this;
30
27
  _classCallCheck(this, SyncBlockProvider);
31
28
  _this = _callSuper(this, SyncBlockProvider);
32
29
  _defineProperty(_this, "name", 'syncBlockProvider');
33
30
  _this.fetchProvider = fetchProvider;
34
31
  _this.writeProvider = writeProvider;
35
- _this.sourceId = sourceId;
36
32
  _this.providerOptions = {};
37
33
  return _this;
38
34
  }
@@ -42,11 +38,6 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
42
38
  value: function setProviderOptions(providerOptions) {
43
39
  this.providerOptions = providerOptions;
44
40
  }
45
- }, {
46
- key: "getProduct",
47
- value: function getProduct() {
48
- return this.writeProvider.product;
49
- }
50
41
 
51
42
  /**
52
43
  * Check if the node is supported by the provider
@@ -125,14 +116,24 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
125
116
  return _regeneratorRuntime.wrap(function _callee$(_context) {
126
117
  while (1) switch (_context.prev = _context.next) {
127
118
  case 0:
128
- _context.next = 2;
119
+ if (this.writeProvider) {
120
+ _context.next = 2;
121
+ break;
122
+ }
123
+ return _context.abrupt("return", Promise.reject(new Error('Write provider not set')));
124
+ case 2:
125
+ _context.next = 4;
129
126
  return Promise.allSettled(nodes.map(function (_node, index) {
127
+ var _this3$writeProvider;
128
+ if (!_this3.writeProvider) {
129
+ return Promise.reject('Write provider not set');
130
+ }
130
131
  if (!data[index].content) {
131
132
  return Promise.reject('No Synced Block content to write');
132
133
  }
133
- return _this3.writeProvider.writeData(data[index]);
134
+ return (_this3$writeProvider = _this3.writeProvider) === null || _this3$writeProvider === void 0 ? void 0 : _this3$writeProvider.writeData(data[index]);
134
135
  }));
135
- case 2:
136
+ case 4:
136
137
  results = _context.sent;
137
138
  return _context.abrupt("return", results.map(function (result) {
138
139
  if (result.status === 'fulfilled') {
@@ -143,11 +144,11 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
143
144
  };
144
145
  }
145
146
  }));
146
- case 4:
147
+ case 6:
147
148
  case "end":
148
149
  return _context.stop();
149
150
  }
150
- }, _callee);
151
+ }, _callee, this);
151
152
  }));
152
153
  function writeNodesData(_x, _x2) {
153
154
  return _writeNodesData.apply(this, arguments);
@@ -157,6 +158,9 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
157
158
  }, {
158
159
  key: "createNodeData",
159
160
  value: function createNodeData(data) {
161
+ if (!this.writeProvider) {
162
+ return Promise.reject(new Error('Write provider not set'));
163
+ }
160
164
  return this.writeProvider.createData(data).then(function (result) {
161
165
  return result;
162
166
  }, function (error) {
@@ -182,11 +186,20 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
182
186
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
183
187
  while (1) switch (_context2.prev = _context2.next) {
184
188
  case 0:
185
- _context2.next = 2;
189
+ if (this.writeProvider) {
190
+ _context2.next = 2;
191
+ break;
192
+ }
193
+ return _context2.abrupt("return", Promise.reject(new Error('Write provider not set')));
194
+ case 2:
195
+ _context2.next = 4;
186
196
  return Promise.allSettled(resourceIds.map(function (resourceId) {
197
+ if (!_this4.writeProvider) {
198
+ return Promise.reject('Write provider not set');
199
+ }
187
200
  return _this4.writeProvider.deleteData(resourceId);
188
201
  }));
189
- case 2:
202
+ case 4:
190
203
  results = _context2.sent;
191
204
  return _context2.abrupt("return", results.map(function (result, index) {
192
205
  if (result.status === 'fulfilled') {
@@ -199,29 +212,17 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
199
212
  };
200
213
  }
201
214
  }));
202
- case 4:
215
+ case 6:
203
216
  case "end":
204
217
  return _context2.stop();
205
218
  }
206
- }, _callee2);
219
+ }, _callee2, this);
207
220
  }));
208
221
  function deleteNodesData(_x3) {
209
222
  return _deleteNodesData.apply(this, arguments);
210
223
  }
211
224
  return deleteNodesData;
212
225
  }()
213
- /**
214
- * Get the source id
215
- *
216
- * @returns The source id
217
- */
218
- )
219
- }, {
220
- key: "getSourceId",
221
- value: function getSourceId() {
222
- return this.sourceId;
223
- }
224
-
225
226
  /**
226
227
  * Fetch the source info from the source id
227
228
  *
@@ -231,6 +232,7 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
231
232
  *
232
233
  * @returns The source info
233
234
  */
235
+ )
234
236
  }, {
235
237
  key: "fetchSyncBlockSourceInfo",
236
238
  value: function fetchSyncBlockSourceInfo(localId, sourceAri, sourceProduct, fireAnalyticsEvent) {
@@ -248,12 +250,20 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
248
250
  }
249
251
  }, {
250
252
  key: "generateResourceId",
251
- value: function generateResourceId(sourceId, localId) {
252
- return this.writeProvider.generateResourceId(sourceId, localId);
253
+ value: function generateResourceId() {
254
+ var localId = crypto.randomUUID();
255
+ var resourceId = crypto.randomUUID();
256
+ return {
257
+ localId: localId,
258
+ resourceId: resourceId
259
+ };
253
260
  }
254
261
  }, {
255
262
  key: "generateResourceIdForReference",
256
263
  value: function generateResourceIdForReference(sourceId) {
264
+ if (!this.writeProvider) {
265
+ throw new Error('Write provider not set');
266
+ }
257
267
  return this.writeProvider.generateResourceIdForReference(sourceId);
258
268
  }
259
269
 
@@ -285,7 +295,9 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
285
295
  switch (sourceProduct) {
286
296
  case 'confluence-page':
287
297
  return {
288
- contentId: getPageIdAndTypeFromConfluencePageAri(sourceAri).id,
298
+ contentId: getPageIdAndTypeFromConfluencePageAri({
299
+ ari: sourceAri
300
+ }).id,
289
301
  contentProduct: sourceProduct
290
302
  };
291
303
  case 'jira-work-item':
@@ -297,14 +309,45 @@ export var SyncBlockProvider = /*#__PURE__*/function (_SyncBlockDataProvide) {
297
309
  }, {
298
310
  key: "updateReferenceData",
299
311
  value: function updateReferenceData(blocks, noContent) {
312
+ if (!this.writeProvider) {
313
+ throw new Error('Write provider not set');
314
+ }
300
315
  return this.writeProvider.updateReferenceData(blocks, noContent);
301
316
  }
302
317
  }]);
303
318
  }(SyncBlockDataProvider);
304
- export var useMemoizedSyncedBlockProvider = function useMemoizedSyncedBlockProvider(fetchProvider, writeProvider, sourceId, providerOptions, getSSRData) {
319
+ var createSyncedBlockProvider = function createSyncedBlockProvider(_ref) {
320
+ var fetchProvider = _ref.fetchProvider,
321
+ writeProvider = _ref.writeProvider;
322
+ return new SyncBlockProvider(fetchProvider, writeProvider);
323
+ };
324
+ export var createAndInitializeSyncedBlockProvider = function createAndInitializeSyncedBlockProvider(_ref2) {
325
+ var fetchProvider = _ref2.fetchProvider,
326
+ writeProvider = _ref2.writeProvider,
327
+ providerOptions = _ref2.providerOptions,
328
+ getSSRData = _ref2.getSSRData;
329
+ var syncBlockProvider = createSyncedBlockProvider({
330
+ fetchProvider: fetchProvider,
331
+ writeProvider: writeProvider
332
+ });
333
+ syncBlockProvider.setProviderOptions(providerOptions);
334
+ var ssrData = getSSRData ? getSSRData() : undefined;
335
+ if (ssrData) {
336
+ syncBlockProvider.setSSRData(ssrData);
337
+ }
338
+ return syncBlockProvider;
339
+ };
340
+ export var useMemoizedSyncedBlockProvider = function useMemoizedSyncedBlockProvider(_ref3) {
341
+ var fetchProvider = _ref3.fetchProvider,
342
+ writeProvider = _ref3.writeProvider,
343
+ providerOptions = _ref3.providerOptions,
344
+ getSSRData = _ref3.getSSRData;
305
345
  var syncBlockProvider = useMemo(function () {
306
- return new SyncBlockProvider(fetchProvider, writeProvider, sourceId);
307
- }, [fetchProvider, writeProvider, sourceId]);
346
+ return createSyncedBlockProvider({
347
+ fetchProvider: fetchProvider,
348
+ writeProvider: writeProvider
349
+ });
350
+ }, [fetchProvider, writeProvider]);
308
351
  syncBlockProvider.setProviderOptions(providerOptions);
309
352
  var ssrData = getSSRData ? getSSRData() : undefined;
310
353
  if (ssrData) {
@@ -5,8 +5,6 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
5
5
  import _regeneratorRuntime from "@babel/runtime/regenerator";
6
6
  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; }
7
7
  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) { _defineProperty(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; }
8
- // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
9
- import uuid from 'uuid';
10
8
  import { logException } from '@atlaskit/editor-common/monitoring';
11
9
  import { SyncBlockError } from '../common/types';
12
10
  import { updateErrorPayload, createErrorPayload, deleteErrorPayload, updateCacheErrorPayload } from '../utils/errorHandling';
@@ -231,14 +229,12 @@ export var SourceSyncBlockStoreManager = /*#__PURE__*/function () {
231
229
  }, {
232
230
  key: "generateBodiedSyncBlockAttrs",
233
231
  value: function generateBodiedSyncBlockAttrs() {
234
- var _this$dataProvider;
235
- // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
236
- var localId = uuid();
237
- var sourceId = (_this$dataProvider = this.dataProvider) === null || _this$dataProvider === void 0 ? void 0 : _this$dataProvider.getSourceId();
238
- if (!this.dataProvider || !sourceId) {
232
+ if (!this.dataProvider) {
239
233
  throw new Error('Data provider not set or source id not set');
240
234
  }
241
- var resourceId = this.dataProvider.generateResourceId(sourceId, localId);
235
+ var _this$dataProvider$ge = this.dataProvider.generateResourceId(),
236
+ resourceId = _this$dataProvider$ge.resourceId,
237
+ localId = _this$dataProvider$ge.localId;
242
238
  return {
243
239
  resourceId: resourceId,
244
240
  localId: localId
@@ -41,9 +41,19 @@ export var SyncBlockStoreManager = /*#__PURE__*/function () {
41
41
  }
42
42
  }]);
43
43
  }();
44
+ var createSyncBlockStoreManager = function createSyncBlockStoreManager(dataProvider) {
45
+ return new SyncBlockStoreManager(dataProvider);
46
+ };
47
+ export var createAndInitializeSyncBlockStoreManager = function createAndInitializeSyncBlockStoreManager(_ref) {
48
+ var dataProvider = _ref.dataProvider,
49
+ fireAnalyticsEvent = _ref.fireAnalyticsEvent;
50
+ var syncBlockStoreManager = createSyncBlockStoreManager(dataProvider);
51
+ syncBlockStoreManager.setFireAnalyticsEvent(fireAnalyticsEvent);
52
+ return syncBlockStoreManager;
53
+ };
44
54
  export var useMemoizedSyncBlockStoreManager = function useMemoizedSyncBlockStoreManager(dataProvider, fireAnalyticsEvent) {
45
55
  var syncBlockStoreManager = useMemo(function () {
46
- var syncBlockStoreManager = new SyncBlockStoreManager(dataProvider);
56
+ var syncBlockStoreManager = createSyncBlockStoreManager(dataProvider);
47
57
  return syncBlockStoreManager;
48
58
  }, [dataProvider]);
49
59
  syncBlockStoreManager.setFireAnalyticsEvent(fireAnalyticsEvent);
@@ -1,18 +1,28 @@
1
1
  import { type SyncBlockProduct } from '../../common/types';
2
2
  /**
3
3
  * Generates the block ARI from the source page ARI and the source block's resource ID.
4
- * @param sourceAri - the ARI of the document. E.G ari:cloud:confluence:cloudId:page/pageId
4
+ * @param cloudId - the cloudId of the block. E.G the cloudId of the confluence page, or the cloudId of the Jira instance
5
+ * @param parentId - the parentId of the block. E.G the pageId for a confluence page, or the issueId for a Jira work item
5
6
  * @param resourceId - the resource ID of the block node. A randomly generated UUID
7
+ * @param product - the product of the block. E.G 'confluence-page', 'jira-work-item'
6
8
  * @returns the block ARI. E.G ari:cloud:blocks:<cloudId>:synced-block/<product>/<pageId>/<resourceId>
7
9
  */
8
- export declare const generateBlockAri: (sourceAri: string, resourceId: string, product: SyncBlockProduct) => string;
10
+ export declare const generateBlockAri: ({ cloudId, parentId, product, resourceId, }: {
11
+ cloudId: string;
12
+ parentId: string;
13
+ product: SyncBlockProduct;
14
+ resourceId: string;
15
+ }) => string;
9
16
  /**
10
17
  * Generates the block ARI from the reference synced block ARI and the resource ID
11
- * @param sourceAri - the ARI of the document. E.G ari:cloud:confluence:cloudId:page/pageId
18
+ * @param cloudId - the cloudId of the block. E.G the cloudId of the confluence page, or the cloudId of the Jira instance
12
19
  * @param resourceId - the resource ID of the reference synced block. E.G confluence-page/pageId/sourceResourceId
13
20
  * @returns the block ARI. E.G ari:cloud:blocks:<cloudId>:synced-block/<product>/<pageId>/<resourceId>
14
21
  */
15
- export declare const generateBlockAriFromReference: (sourceAri: string, resourceId: string) => string;
22
+ export declare const generateBlockAriFromReference: ({ cloudId, resourceId, }: {
23
+ cloudId: string;
24
+ resourceId: string;
25
+ }) => string;
16
26
  /**
17
27
  * Extracts the local ID from a block ARI.
18
28
  * @param ari - the block ARI. E.G ari:cloud:blocks:cloudId:synced-block/localId
@@ -9,32 +9,19 @@ export type PAGE_TYPE = 'page' | 'blogpost';
9
9
  * @param pageType - the type of the page
10
10
  * @returns the Confluence page ARI
11
11
  */
12
- export declare const getConfluencePageAri: (pageId: string, cloudId: string, pageType?: PAGE_TYPE) => string;
12
+ export declare const getConfluencePageAri: ({ pageId, cloudId, pageType, }: {
13
+ cloudId: string;
14
+ pageId: string;
15
+ pageType: PAGE_TYPE;
16
+ }) => string;
13
17
  /**
14
18
  * Extracts the page ID and type from the Confluence page ARI
15
19
  * @param ari - the Confluence page ARI
16
20
  * @returns the page ID and type
17
21
  */
18
- export declare const getPageIdAndTypeFromConfluencePageAri: (ari: string) => {
22
+ export declare const getPageIdAndTypeFromConfluencePageAri: ({ ari, }: {
23
+ ari: string;
24
+ }) => {
19
25
  id: string;
20
26
  type: PAGE_TYPE;
21
27
  };
22
- /**
23
- * Extracts the local ID from the Confluence page content property resource ID
24
- * @param resourceId - the Confluence page content property resource ID
25
- * @returns the local ID
26
- */
27
- export declare const getLocalIdFromContentPropertyResourceId: (resourceId: string) => string;
28
- /**
29
- * Extracts the Confluence page ARI from the Confluence content property resource ID
30
- * @param resourceId - the Confluence content property resource ID
31
- * @returns the Confluence page ARI
32
- */
33
- export declare const getPageAriFromContentPropertyResourceId: (resourceId: string) => string;
34
- /**
35
- * Generates the Confluence page content property resource ID from the source ID and local ID
36
- * @param sourceId - the source ID
37
- * @param localId - the local ID
38
- * @returns the Confluence page content property resource ID
39
- */
40
- export declare const resourceIdFromConfluencePageSourceIdAndLocalId: (sourceId: string, localId: string) => string;
@@ -4,10 +4,15 @@
4
4
  * @param cloudId - the cloud ID
5
5
  * @returns the Jira work item ARI
6
6
  */
7
- export declare const getJiraWorkItemAri: (workItemId: string, cloudId: string) => string;
7
+ export declare const getJiraWorkItemAri: ({ cloudId, workItemId, }: {
8
+ cloudId: string;
9
+ workItemId: string;
10
+ }) => string;
8
11
  /**
9
12
  * Extracts the Jira work item ID from the Jira work item ARI
10
13
  * @param ari - the Jira work item ARI
11
14
  * @returns the Jira work item ID
12
15
  */
13
- export declare const getJiraWorkItemIdFromAri: (ari: string) => string;
16
+ export declare const getJiraWorkItemIdFromAri: ({ ari }: {
17
+ ari: string;
18
+ }) => string;
@@ -1,20 +1,19 @@
1
1
  export { rebaseTransaction } from './common/rebase-transaction';
2
2
  export { SyncBlockError } from './common/types';
3
- export type { SyncBlockData, SyncBlockNode, SyncBlockProduct, BlockInstanceId, } from './common/types';
3
+ export type { SyncBlockData, SyncBlockNode, SyncBlockProduct, BlockInstanceId, SyncBlockAttrs, } from './common/types';
4
4
  export { useFetchSyncBlockData, type UseFetchSyncBlockDataResult, } from './hooks/useFetchSyncBlockData';
5
5
  export { useFetchSyncBlockTitle } from './hooks/useFetchSyncBlockTitle';
6
6
  export { useHandleContentChanges } from './hooks/useHandleContentChanges';
7
7
  export { generateBlockAri, generateBlockAriFromReference, getLocalIdFromBlockResourceId, } from './clients/block-service/ari';
8
- export { getConfluencePageAri, getLocalIdFromContentPropertyResourceId, getPageAriFromContentPropertyResourceId, getPageIdAndTypeFromConfluencePageAri, resourceIdFromConfluencePageSourceIdAndLocalId, } from './clients/confluence/ari';
8
+ export { getConfluencePageAri, getPageIdAndTypeFromConfluencePageAri, } from './clients/confluence/ari';
9
9
  export { getJiraWorkItemAri, getJiraWorkItemIdFromAri } from './clients/jira/ari';
10
- export { useMemoizedBlockServiceAPIProviders } from './providers/block-service/blockServiceAPI';
11
- export { createContentAPIProvidersWithDefaultKey, useMemoizedContentAPIProviders, } from './providers/confluence/confluenceContentAPI';
10
+ export { createBlockServiceAPIProviders, createBlockServiceFetchOnlyAPIProvider, useMemoizedBlockServiceAPIProviders, useMemoizedBlockServiceFetchOnlyAPIProvider, } from './providers/block-service/blockServiceAPI';
12
11
  export { fetchConfluencePageInfo } from './clients/confluence/sourceInfo';
13
- export { SyncBlockProvider as SyncedBlockProvider, useMemoizedSyncedBlockProvider, } from './providers/syncBlockProvider';
14
- export type { ADFFetchProvider, ADFWriteProvider, SyncBlockDataProvider, SyncBlockInstance, MediaEmojiProviderOptions, SyncedBlockRendererProviderOptions, SyncBlockRendererProviderCreator, SyncedBlockRendererDataProviders, } from './providers/types';
12
+ export { SyncBlockProvider as SyncedBlockProvider, createAndInitializeSyncedBlockProvider, useMemoizedSyncedBlockProvider, } from './providers/syncBlockProvider';
13
+ export type { ADFFetchProvider, ADFWriteProvider, SyncBlockDataProvider, SyncBlockInstance, MediaEmojiProviderOptions, SyncedBlockRendererProviderOptions, SyncBlockRendererProviderCreator, SyncedBlockRendererDataProviders, UpdateReferenceSyncBlockResult, WriteSyncBlockResult, SyncBlockParentInfo, } from './providers/types';
15
14
  export { type ReferenceSyncBlockStoreManager } from './store-manager/referenceSyncBlockStoreManager';
16
- export { SyncBlockStoreManager, useMemoizedSyncBlockStoreManager, } from './store-manager/syncBlockStoreManager';
15
+ export { SyncBlockStoreManager, createAndInitializeSyncBlockStoreManager, useMemoizedSyncBlockStoreManager, } from './store-manager/syncBlockStoreManager';
17
16
  export { resolveSyncBlockInstance } from './utils/resolveSyncBlockInstance';
18
- export { createSyncBlockNode, convertSyncBlockPMNodeToSyncBlockData, convertSyncBlockJSONNodeToSyncBlockNode, convertPMNodesToSyncBlockNodes, getContentIdAndProductFromResourceId } from './utils/utils';
17
+ export { createSyncBlockNode, convertSyncBlockPMNodeToSyncBlockData, convertSyncBlockJSONNodeToSyncBlockNode, convertPMNodesToSyncBlockNodes, getContentIdAndProductFromResourceId, } from './utils/utils';
19
18
  export { fetchErrorPayload } from './utils/errorHandling';
20
19
  export { fetchReferences } from './providers/block-service/blockServiceAPI';