@atlaskit/editor-synced-block-provider 3.5.1 → 3.5.3

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 (30) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/clients/block-service/blockService.js +15 -10
  3. package/dist/cjs/index.js +0 -24
  4. package/dist/cjs/providers/block-service/blockServiceAPI.js +94 -52
  5. package/dist/cjs/providers/syncBlockProvider.js +20 -30
  6. package/dist/cjs/store-manager/referenceSyncBlockStoreManager.js +9 -3
  7. package/dist/cjs/store-manager/syncBlockStoreManager.js +1 -8
  8. package/dist/es2019/clients/block-service/blockService.js +8 -2
  9. package/dist/es2019/index.js +3 -3
  10. package/dist/es2019/providers/block-service/blockServiceAPI.js +39 -9
  11. package/dist/es2019/providers/syncBlockProvider.js +3 -17
  12. package/dist/es2019/store-manager/referenceSyncBlockStoreManager.js +3 -0
  13. package/dist/es2019/store-manager/syncBlockStoreManager.js +0 -8
  14. package/dist/esm/clients/block-service/blockService.js +15 -10
  15. package/dist/esm/index.js +3 -3
  16. package/dist/esm/providers/block-service/blockServiceAPI.js +93 -51
  17. package/dist/esm/providers/syncBlockProvider.js +19 -29
  18. package/dist/esm/store-manager/referenceSyncBlockStoreManager.js +9 -3
  19. package/dist/esm/store-manager/syncBlockStoreManager.js +0 -7
  20. package/dist/types/clients/block-service/blockService.d.ts +2 -1
  21. package/dist/types/index.d.ts +3 -3
  22. package/dist/types/providers/block-service/blockServiceAPI.d.ts +11 -16
  23. package/dist/types/providers/syncBlockProvider.d.ts +0 -1
  24. package/dist/types/store-manager/syncBlockStoreManager.d.ts +0 -4
  25. package/dist/types-ts4.5/clients/block-service/blockService.d.ts +2 -1
  26. package/dist/types-ts4.5/index.d.ts +3 -3
  27. package/dist/types-ts4.5/providers/block-service/blockServiceAPI.d.ts +11 -16
  28. package/dist/types-ts4.5/providers/syncBlockProvider.d.ts +0 -1
  29. package/dist/types-ts4.5/store-manager/syncBlockStoreManager.d.ts +0 -4
  30. package/package.json +2 -2
@@ -248,16 +248,22 @@ export var ReferenceSyncBlockStoreManager = /*#__PURE__*/function () {
248
248
  }
249
249
  nodesToFetch.push(node);
250
250
  });
251
+ if (!(nodesToFetch.length === 0)) {
252
+ _context3.next = 8;
253
+ break;
254
+ }
255
+ return _context3.abrupt("return");
256
+ case 8:
251
257
  nodesToFetch.forEach(function (node) {
252
258
  _this2.syncBlockFetchDataRequests.set(node.attrs.resourceId, true);
253
259
  });
254
- _context3.next = 9;
260
+ _context3.next = 11;
255
261
  return this.dataProvider.fetchNodesData(nodesToFetch).finally(function () {
256
262
  nodesToFetch.forEach(function (node) {
257
263
  _this2.syncBlockFetchDataRequests.delete(node.attrs.resourceId);
258
264
  });
259
265
  });
260
- case 9:
266
+ case 11:
261
267
  data = _context3.sent;
262
268
  resolvedData = [];
263
269
  data.forEach(function (syncBlockInstance) {
@@ -277,7 +283,7 @@ export var ReferenceSyncBlockStoreManager = /*#__PURE__*/function () {
277
283
  }
278
284
  _this2.fetchSyncBlockSourceInfo(resolvedSyncBlockInstance.resourceId);
279
285
  });
280
- case 12:
286
+ case 14:
281
287
  case "end":
282
288
  return _context3.stop();
283
289
  }
@@ -44,13 +44,6 @@ export var SyncBlockStoreManager = /*#__PURE__*/function () {
44
44
  var createSyncBlockStoreManager = function createSyncBlockStoreManager(dataProvider) {
45
45
  return new SyncBlockStoreManager(dataProvider);
46
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
- };
54
47
  export var useMemoizedSyncBlockStoreManager = function useMemoizedSyncBlockStoreManager(dataProvider, fireAnalyticsEvent) {
55
48
  var syncBlockStoreManager = useMemo(function () {
56
49
  var syncBlockStoreManager = createSyncBlockStoreManager(dataProvider);
@@ -64,6 +64,7 @@ export declare const isBlockContentResponse: (response: BlockContentResponse | B
64
64
  export declare const getReferenceSyncedBlocks: (documentAri: string) => Promise<ReferenceSyncedBlockResponse>;
65
65
  export type GetSyncedBlockContentRequest = {
66
66
  blockAri: string;
67
+ documentAri?: string;
67
68
  };
68
69
  export type DeleteSyncedBlockRequest = {
69
70
  blockAri: string;
@@ -101,7 +102,7 @@ export declare class BlockError extends Error {
101
102
  readonly status: number;
102
103
  constructor(status: number);
103
104
  }
104
- export declare const getSyncedBlockContent: ({ blockAri, }: GetSyncedBlockContentRequest) => Promise<BlockContentResponse>;
105
+ export declare const getSyncedBlockContent: ({ blockAri, documentAri, }: GetSyncedBlockContentRequest) => Promise<BlockContentResponse>;
105
106
  /**
106
107
  * Batch retrieves multiple synced blocks by their ARIs.
107
108
  *
@@ -7,12 +7,12 @@ export { useHandleContentChanges } from './hooks/useHandleContentChanges';
7
7
  export { generateBlockAri, generateBlockAriFromReference, getLocalIdFromBlockResourceId, } from './clients/block-service/ari';
8
8
  export { getConfluencePageAri, getPageIdAndTypeFromConfluencePageAri, } from './clients/confluence/ari';
9
9
  export { getJiraWorkItemAri, getJiraWorkItemIdFromAri } from './clients/jira/ari';
10
- export { createBlockServiceAPIProviders, createBlockServiceFetchOnlyAPIProvider, useMemoizedBlockServiceAPIProviders, useMemoizedBlockServiceFetchOnlyAPIProvider, } from './providers/block-service/blockServiceAPI';
10
+ export { useMemoizedBlockServiceAPIProviders, useMemoizedBlockServiceFetchOnlyAPIProvider, } from './providers/block-service/blockServiceAPI';
11
11
  export { fetchConfluencePageInfo } from './clients/confluence/sourceInfo';
12
- export { SyncBlockProvider as SyncedBlockProvider, createAndInitializeSyncedBlockProvider, useMemoizedSyncedBlockProvider, } from './providers/syncBlockProvider';
12
+ export { SyncBlockProvider as SyncedBlockProvider, useMemoizedSyncedBlockProvider, } from './providers/syncBlockProvider';
13
13
  export type { ADFFetchProvider, ADFWriteProvider, SyncBlockDataProvider, SyncBlockInstance, MediaEmojiProviderOptions, SyncedBlockRendererProviderOptions, SyncBlockRendererProviderCreator, SyncedBlockRendererDataProviders, UpdateReferenceSyncBlockResult, WriteSyncBlockResult, SyncBlockParentInfo, } from './providers/types';
14
14
  export { type ReferenceSyncBlockStoreManager } from './store-manager/referenceSyncBlockStoreManager';
15
- export { SyncBlockStoreManager, createAndInitializeSyncBlockStoreManager, useMemoizedSyncBlockStoreManager, } from './store-manager/syncBlockStoreManager';
15
+ export { SyncBlockStoreManager, useMemoizedSyncBlockStoreManager, } from './store-manager/syncBlockStoreManager';
16
16
  export { resolveSyncBlockInstance } from './utils/resolveSyncBlockInstance';
17
17
  export { createSyncBlockNode, convertSyncBlockPMNodeToSyncBlockData, convertSyncBlockJSONNodeToSyncBlockNode, convertPMNodesToSyncBlockNodes, getContentIdAndProductFromResourceId, } from './utils/utils';
18
18
  export { fetchErrorPayload } from './utils/errorHandling';
@@ -22,13 +22,15 @@ export declare const convertToSyncBlockData: (data: BlockContentResponse, resour
22
22
  export declare const fetchReferences: (documentAri: string) => Promise<SyncBlockInstance[] | SyncBlockError>;
23
23
  interface BlockServiceADFFetchProviderProps {
24
24
  cloudId: string;
25
+ parentAri?: string;
25
26
  }
26
27
  /**
27
28
  * ADFFetchProvider implementation that fetches synced block data from Block Service API
28
29
  */
29
30
  declare class BlockServiceADFFetchProvider implements ADFFetchProvider {
30
31
  private cloudId;
31
- constructor({ cloudId }: BlockServiceADFFetchProviderProps);
32
+ private parentAri?;
33
+ constructor({ cloudId, parentAri }: BlockServiceADFFetchProviderProps);
32
34
  fetchData(resourceId: string): Promise<SyncBlockInstance>;
33
35
  /**
34
36
  * Extracts the resourceId from a block ARI.
@@ -45,8 +47,8 @@ declare class BlockServiceADFFetchProvider implements ADFFetchProvider {
45
47
  interface BlockServiceADFWriteProviderProps {
46
48
  cloudId: string;
47
49
  getVersion?: () => number | undefined;
48
- parentAri: string;
49
- parentId: string;
50
+ parentAri?: string;
51
+ parentId?: string;
50
52
  product: SyncBlockProduct;
51
53
  }
52
54
  /**
@@ -54,8 +56,8 @@ interface BlockServiceADFWriteProviderProps {
54
56
  */
55
57
  declare class BlockServiceADFWriteProvider implements ADFWriteProvider {
56
58
  private cloudId;
57
- private parentAri;
58
- private parentId;
59
+ private parentAri?;
60
+ private parentId?;
59
61
  private getVersion?;
60
62
  product: SyncBlockProduct;
61
63
  constructor({ cloudId, parentAri, parentId, product, getVersion, }: BlockServiceADFWriteProviderProps);
@@ -69,26 +71,19 @@ declare class BlockServiceADFWriteProvider implements ADFWriteProvider {
69
71
  interface BlockServiceAPIProvidersProps {
70
72
  cloudId: string;
71
73
  getVersion?: () => number | undefined;
72
- parentAri: string;
73
- parentId: string;
74
+ parentAri?: string;
75
+ parentId?: string;
74
76
  product: SyncBlockProduct;
75
77
  }
76
- export declare const createBlockServiceAPIProviders: ({ cloudId, parentAri, parentId, product, getVersion, }: BlockServiceAPIProvidersProps) => {
77
- fetchProvider: BlockServiceADFFetchProvider;
78
- writeProvider: BlockServiceADFWriteProvider;
79
- };
80
78
  export declare const useMemoizedBlockServiceAPIProviders: ({ cloudId, parentAri, parentId, product, getVersion, }: BlockServiceAPIProvidersProps) => {
81
79
  fetchProvider: BlockServiceADFFetchProvider;
82
80
  writeProvider: BlockServiceADFWriteProvider;
83
81
  };
84
82
  interface BlockServiceFetchOnlyAPIProviderProps {
85
83
  cloudId: string;
84
+ parentAri?: string;
86
85
  }
87
- export declare const createBlockServiceFetchOnlyAPIProvider: ({ cloudId, }: BlockServiceFetchOnlyAPIProviderProps) => {
88
- fetchProvider: BlockServiceADFFetchProvider;
89
- writeProvider: undefined;
90
- };
91
- export declare const useMemoizedBlockServiceFetchOnlyAPIProvider: ({ cloudId, }: BlockServiceFetchOnlyAPIProviderProps) => {
86
+ export declare const useMemoizedBlockServiceFetchOnlyAPIProvider: ({ cloudId, parentAri, }: BlockServiceFetchOnlyAPIProviderProps) => {
92
87
  fetchProvider: BlockServiceADFFetchProvider;
93
88
  writeProvider: undefined;
94
89
  };
@@ -97,6 +97,5 @@ type UseMemoizedSyncedBlockProviderProps = {
97
97
  providerOptions: SyncedBlockRendererProviderOptions;
98
98
  writeProvider: ADFWriteProvider | undefined;
99
99
  };
100
- export declare const createAndInitializeSyncedBlockProvider: ({ fetchProvider, writeProvider, providerOptions, getSSRData, }: UseMemoizedSyncedBlockProviderProps) => SyncBlockProvider;
101
100
  export declare const useMemoizedSyncedBlockProvider: ({ fetchProvider, writeProvider, providerOptions, getSSRData, }: UseMemoizedSyncedBlockProviderProps) => SyncBlockProvider;
102
101
  export {};
@@ -11,8 +11,4 @@ export declare class SyncBlockStoreManager {
11
11
  get sourceManager(): SourceSyncBlockStoreManager;
12
12
  destroy(): void;
13
13
  }
14
- export declare const createAndInitializeSyncBlockStoreManager: ({ dataProvider, fireAnalyticsEvent, }: {
15
- dataProvider?: SyncBlockDataProvider;
16
- fireAnalyticsEvent?: (payload: SyncBlockEventPayload) => void;
17
- }) => SyncBlockStoreManager;
18
14
  export declare const useMemoizedSyncBlockStoreManager: (dataProvider?: SyncBlockDataProvider, fireAnalyticsEvent?: (payload: SyncBlockEventPayload) => void) => SyncBlockStoreManager;
@@ -64,6 +64,7 @@ export declare const isBlockContentResponse: (response: BlockContentResponse | B
64
64
  export declare const getReferenceSyncedBlocks: (documentAri: string) => Promise<ReferenceSyncedBlockResponse>;
65
65
  export type GetSyncedBlockContentRequest = {
66
66
  blockAri: string;
67
+ documentAri?: string;
67
68
  };
68
69
  export type DeleteSyncedBlockRequest = {
69
70
  blockAri: string;
@@ -101,7 +102,7 @@ export declare class BlockError extends Error {
101
102
  readonly status: number;
102
103
  constructor(status: number);
103
104
  }
104
- export declare const getSyncedBlockContent: ({ blockAri, }: GetSyncedBlockContentRequest) => Promise<BlockContentResponse>;
105
+ export declare const getSyncedBlockContent: ({ blockAri, documentAri, }: GetSyncedBlockContentRequest) => Promise<BlockContentResponse>;
105
106
  /**
106
107
  * Batch retrieves multiple synced blocks by their ARIs.
107
108
  *
@@ -7,12 +7,12 @@ export { useHandleContentChanges } from './hooks/useHandleContentChanges';
7
7
  export { generateBlockAri, generateBlockAriFromReference, getLocalIdFromBlockResourceId, } from './clients/block-service/ari';
8
8
  export { getConfluencePageAri, getPageIdAndTypeFromConfluencePageAri, } from './clients/confluence/ari';
9
9
  export { getJiraWorkItemAri, getJiraWorkItemIdFromAri } from './clients/jira/ari';
10
- export { createBlockServiceAPIProviders, createBlockServiceFetchOnlyAPIProvider, useMemoizedBlockServiceAPIProviders, useMemoizedBlockServiceFetchOnlyAPIProvider, } from './providers/block-service/blockServiceAPI';
10
+ export { useMemoizedBlockServiceAPIProviders, useMemoizedBlockServiceFetchOnlyAPIProvider, } from './providers/block-service/blockServiceAPI';
11
11
  export { fetchConfluencePageInfo } from './clients/confluence/sourceInfo';
12
- export { SyncBlockProvider as SyncedBlockProvider, createAndInitializeSyncedBlockProvider, useMemoizedSyncedBlockProvider, } from './providers/syncBlockProvider';
12
+ export { SyncBlockProvider as SyncedBlockProvider, useMemoizedSyncedBlockProvider, } from './providers/syncBlockProvider';
13
13
  export type { ADFFetchProvider, ADFWriteProvider, SyncBlockDataProvider, SyncBlockInstance, MediaEmojiProviderOptions, SyncedBlockRendererProviderOptions, SyncBlockRendererProviderCreator, SyncedBlockRendererDataProviders, UpdateReferenceSyncBlockResult, WriteSyncBlockResult, SyncBlockParentInfo, } from './providers/types';
14
14
  export { type ReferenceSyncBlockStoreManager } from './store-manager/referenceSyncBlockStoreManager';
15
- export { SyncBlockStoreManager, createAndInitializeSyncBlockStoreManager, useMemoizedSyncBlockStoreManager, } from './store-manager/syncBlockStoreManager';
15
+ export { SyncBlockStoreManager, useMemoizedSyncBlockStoreManager, } from './store-manager/syncBlockStoreManager';
16
16
  export { resolveSyncBlockInstance } from './utils/resolveSyncBlockInstance';
17
17
  export { createSyncBlockNode, convertSyncBlockPMNodeToSyncBlockData, convertSyncBlockJSONNodeToSyncBlockNode, convertPMNodesToSyncBlockNodes, getContentIdAndProductFromResourceId, } from './utils/utils';
18
18
  export { fetchErrorPayload } from './utils/errorHandling';
@@ -22,13 +22,15 @@ export declare const convertToSyncBlockData: (data: BlockContentResponse, resour
22
22
  export declare const fetchReferences: (documentAri: string) => Promise<SyncBlockInstance[] | SyncBlockError>;
23
23
  interface BlockServiceADFFetchProviderProps {
24
24
  cloudId: string;
25
+ parentAri?: string;
25
26
  }
26
27
  /**
27
28
  * ADFFetchProvider implementation that fetches synced block data from Block Service API
28
29
  */
29
30
  declare class BlockServiceADFFetchProvider implements ADFFetchProvider {
30
31
  private cloudId;
31
- constructor({ cloudId }: BlockServiceADFFetchProviderProps);
32
+ private parentAri?;
33
+ constructor({ cloudId, parentAri }: BlockServiceADFFetchProviderProps);
32
34
  fetchData(resourceId: string): Promise<SyncBlockInstance>;
33
35
  /**
34
36
  * Extracts the resourceId from a block ARI.
@@ -45,8 +47,8 @@ declare class BlockServiceADFFetchProvider implements ADFFetchProvider {
45
47
  interface BlockServiceADFWriteProviderProps {
46
48
  cloudId: string;
47
49
  getVersion?: () => number | undefined;
48
- parentAri: string;
49
- parentId: string;
50
+ parentAri?: string;
51
+ parentId?: string;
50
52
  product: SyncBlockProduct;
51
53
  }
52
54
  /**
@@ -54,8 +56,8 @@ interface BlockServiceADFWriteProviderProps {
54
56
  */
55
57
  declare class BlockServiceADFWriteProvider implements ADFWriteProvider {
56
58
  private cloudId;
57
- private parentAri;
58
- private parentId;
59
+ private parentAri?;
60
+ private parentId?;
59
61
  private getVersion?;
60
62
  product: SyncBlockProduct;
61
63
  constructor({ cloudId, parentAri, parentId, product, getVersion, }: BlockServiceADFWriteProviderProps);
@@ -69,26 +71,19 @@ declare class BlockServiceADFWriteProvider implements ADFWriteProvider {
69
71
  interface BlockServiceAPIProvidersProps {
70
72
  cloudId: string;
71
73
  getVersion?: () => number | undefined;
72
- parentAri: string;
73
- parentId: string;
74
+ parentAri?: string;
75
+ parentId?: string;
74
76
  product: SyncBlockProduct;
75
77
  }
76
- export declare const createBlockServiceAPIProviders: ({ cloudId, parentAri, parentId, product, getVersion, }: BlockServiceAPIProvidersProps) => {
77
- fetchProvider: BlockServiceADFFetchProvider;
78
- writeProvider: BlockServiceADFWriteProvider;
79
- };
80
78
  export declare const useMemoizedBlockServiceAPIProviders: ({ cloudId, parentAri, parentId, product, getVersion, }: BlockServiceAPIProvidersProps) => {
81
79
  fetchProvider: BlockServiceADFFetchProvider;
82
80
  writeProvider: BlockServiceADFWriteProvider;
83
81
  };
84
82
  interface BlockServiceFetchOnlyAPIProviderProps {
85
83
  cloudId: string;
84
+ parentAri?: string;
86
85
  }
87
- export declare const createBlockServiceFetchOnlyAPIProvider: ({ cloudId, }: BlockServiceFetchOnlyAPIProviderProps) => {
88
- fetchProvider: BlockServiceADFFetchProvider;
89
- writeProvider: undefined;
90
- };
91
- export declare const useMemoizedBlockServiceFetchOnlyAPIProvider: ({ cloudId, }: BlockServiceFetchOnlyAPIProviderProps) => {
86
+ export declare const useMemoizedBlockServiceFetchOnlyAPIProvider: ({ cloudId, parentAri, }: BlockServiceFetchOnlyAPIProviderProps) => {
92
87
  fetchProvider: BlockServiceADFFetchProvider;
93
88
  writeProvider: undefined;
94
89
  };
@@ -97,6 +97,5 @@ type UseMemoizedSyncedBlockProviderProps = {
97
97
  providerOptions: SyncedBlockRendererProviderOptions;
98
98
  writeProvider: ADFWriteProvider | undefined;
99
99
  };
100
- export declare const createAndInitializeSyncedBlockProvider: ({ fetchProvider, writeProvider, providerOptions, getSSRData, }: UseMemoizedSyncedBlockProviderProps) => SyncBlockProvider;
101
100
  export declare const useMemoizedSyncedBlockProvider: ({ fetchProvider, writeProvider, providerOptions, getSSRData, }: UseMemoizedSyncedBlockProviderProps) => SyncBlockProvider;
102
101
  export {};
@@ -11,8 +11,4 @@ export declare class SyncBlockStoreManager {
11
11
  get sourceManager(): SourceSyncBlockStoreManager;
12
12
  destroy(): void;
13
13
  }
14
- export declare const createAndInitializeSyncBlockStoreManager: ({ dataProvider, fireAnalyticsEvent, }: {
15
- dataProvider?: SyncBlockDataProvider;
16
- fireAnalyticsEvent?: (payload: SyncBlockEventPayload) => void;
17
- }) => SyncBlockStoreManager;
18
14
  export declare const useMemoizedSyncBlockStoreManager: (dataProvider?: SyncBlockDataProvider, fireAnalyticsEvent?: (payload: SyncBlockEventPayload) => void) => SyncBlockStoreManager;
package/package.json CHANGED
@@ -34,7 +34,7 @@
34
34
  "uuid": "^3.1.0"
35
35
  },
36
36
  "peerDependencies": {
37
- "@atlaskit/editor-common": "^111.6.0",
37
+ "@atlaskit/editor-common": "^111.7.0",
38
38
  "react": "^18.2.0"
39
39
  },
40
40
  "devDependencies": {
@@ -77,7 +77,7 @@
77
77
  }
78
78
  },
79
79
  "name": "@atlaskit/editor-synced-block-provider",
80
- "version": "3.5.1",
80
+ "version": "3.5.3",
81
81
  "description": "Synced Block Provider for @atlaskit/editor-plugin-synced-block",
82
82
  "author": "Atlassian Pty Ltd",
83
83
  "license": "Apache-2.0",