@atlaskit/editor-synced-block-provider 3.26.0 → 3.26.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.
- package/CHANGELOG.md +16 -0
- package/dist/cjs/clients/block-service/blockService.js +9 -14
- package/dist/cjs/clients/confluence/sourceInfo.js +3 -35
- package/dist/cjs/hooks/useFetchSyncBlockData.js +5 -11
- package/dist/cjs/providers/block-service/blockServiceAPI.js +1 -1
- package/dist/cjs/providers/syncBlockProvider.js +29 -72
- package/dist/cjs/store-manager/referenceSyncBlockStoreManager.js +75 -124
- package/dist/cjs/store-manager/sourceSyncBlockStoreManager.js +125 -120
- package/dist/cjs/store-manager/syncBlockStoreManager.js +2 -4
- package/dist/cjs/utils/errorHandling.js +2 -5
- package/dist/cjs/utils/resolveSyncBlockInstance.js +1 -3
- package/dist/cjs/utils/utils.js +5 -6
- package/dist/es2019/clients/block-service/blockService.js +5 -9
- package/dist/es2019/clients/confluence/sourceInfo.js +1 -4
- package/dist/es2019/hooks/useFetchSyncBlockData.js +6 -12
- package/dist/es2019/providers/block-service/blockServiceAPI.js +1 -1
- package/dist/es2019/providers/syncBlockProvider.js +21 -53
- package/dist/es2019/store-manager/referenceSyncBlockStoreManager.js +65 -114
- package/dist/es2019/store-manager/sourceSyncBlockStoreManager.js +125 -119
- package/dist/es2019/store-manager/syncBlockStoreManager.js +2 -4
- package/dist/es2019/utils/errorHandling.js +1 -4
- package/dist/es2019/utils/resolveSyncBlockInstance.js +2 -5
- package/dist/es2019/utils/utils.js +5 -6
- package/dist/esm/clients/block-service/blockService.js +9 -14
- package/dist/esm/clients/confluence/sourceInfo.js +2 -34
- package/dist/esm/hooks/useFetchSyncBlockData.js +5 -11
- package/dist/esm/providers/block-service/blockServiceAPI.js +1 -1
- package/dist/esm/providers/syncBlockProvider.js +29 -72
- package/dist/esm/store-manager/referenceSyncBlockStoreManager.js +75 -124
- package/dist/esm/store-manager/sourceSyncBlockStoreManager.js +125 -120
- package/dist/esm/store-manager/syncBlockStoreManager.js +2 -4
- package/dist/esm/utils/errorHandling.js +2 -5
- package/dist/esm/utils/resolveSyncBlockInstance.js +1 -3
- package/dist/esm/utils/utils.js +5 -6
- package/dist/types/clients/confluence/sourceInfo.d.ts +1 -2
- package/dist/types/hooks/useFetchSyncBlockData.d.ts +1 -1
- package/dist/types/providers/syncBlockProvider.d.ts +1 -1
- package/dist/types/providers/types.d.ts +2 -2
- package/dist/types/store-manager/sourceSyncBlockStoreManager.d.ts +8 -5
- package/dist/types-ts4.5/clients/confluence/sourceInfo.d.ts +1 -2
- package/dist/types-ts4.5/hooks/useFetchSyncBlockData.d.ts +1 -1
- package/dist/types-ts4.5/providers/syncBlockProvider.d.ts +1 -1
- package/dist/types-ts4.5/providers/types.d.ts +2 -2
- package/dist/types-ts4.5/store-manager/sourceSyncBlockStoreManager.d.ts +8 -5
- package/package.json +2 -5
|
@@ -12,5 +12,5 @@ export interface UseFetchSyncBlockDataResult {
|
|
|
12
12
|
ssrProviders?: SSRProviders | null;
|
|
13
13
|
syncBlockInstance: SyncBlockInstance | null;
|
|
14
14
|
}
|
|
15
|
-
export declare const useFetchSyncBlockData: (manager: SyncBlockStoreManager, resourceId?: string, localId?: string,
|
|
15
|
+
export declare const useFetchSyncBlockData: (manager: SyncBlockStoreManager, resourceId?: string, localId?: string, _fireAnalyticsEvent?: (payload: RendererSyncBlockEventPayload) => void) => UseFetchSyncBlockDataResult;
|
|
16
16
|
export {};
|
|
@@ -58,7 +58,7 @@ export declare class SyncBlockProvider extends SyncBlockDataProvider {
|
|
|
58
58
|
*
|
|
59
59
|
* @returns Array of {resourceId?: string, error?: string}.
|
|
60
60
|
*/
|
|
61
|
-
deleteNodesData(resourceIds: ResourceId[], deletionReason: DeletionReason
|
|
61
|
+
deleteNodesData(resourceIds: ResourceId[], deletionReason: DeletionReason): Promise<Array<DeleteSyncBlockResult>>;
|
|
62
62
|
/**
|
|
63
63
|
* Fetch the source info from the source id
|
|
64
64
|
*
|
|
@@ -82,7 +82,7 @@ export interface ADFWriteProvider {
|
|
|
82
82
|
* @returns Object representing the result of the deletion. {resourceId: string, success: boolean, error?: string}.
|
|
83
83
|
* User should not be blocked by not_found error when deleting, so successful result should be returned for 404 error
|
|
84
84
|
*/
|
|
85
|
-
deleteData: (resourceId: ResourceId, deleteReason: string
|
|
85
|
+
deleteData: (resourceId: ResourceId, deleteReason: string) => Promise<DeleteSyncBlockResult>;
|
|
86
86
|
generateResourceIdForReference: (sourceId: ResourceId) => ResourceId;
|
|
87
87
|
parentAri?: string;
|
|
88
88
|
product: SyncBlockProduct;
|
|
@@ -111,7 +111,7 @@ export type SyncedBlockRendererProviderOptions = {
|
|
|
111
111
|
export declare abstract class SyncBlockDataProvider extends NodeDataProvider<SyncBlockNode, SyncBlockInstance> {
|
|
112
112
|
abstract writeNodesData(nodes: SyncBlockNode[], data: SyncBlockData[]): Promise<Array<WriteSyncBlockResult>>;
|
|
113
113
|
abstract createNodeData(data: SyncBlockData): Promise<WriteSyncBlockResult>;
|
|
114
|
-
abstract deleteNodesData(resourceIds: string[], deleteReason: DeletionReason
|
|
114
|
+
abstract deleteNodesData(resourceIds: string[], deleteReason: DeletionReason): Promise<Array<DeleteSyncBlockResult>>;
|
|
115
115
|
abstract fetchSyncBlockSourceInfo(localId?: BlockInstanceId, sourceAri?: string, sourceProduct?: SyncBlockProduct, fireAnalyticsEvent?: (payload: RendererSyncBlockEventPayload) => void, hasAccess?: boolean, urlType?: 'view' | 'edit', isUnpublished?: boolean): Promise<SyncBlockSourceInfo | undefined>;
|
|
116
116
|
abstract setProviderOptions(providerOptions: SyncedBlockRendererProviderOptions): void;
|
|
117
117
|
abstract getSyncedBlockRendererProviderOptions(): SyncedBlockRendererProviderOptions;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { type SyncBlockEventPayload } from '@atlaskit/editor-common/analytics';
|
|
2
|
-
import {
|
|
2
|
+
import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
3
3
|
import { type ResourceId, type SyncBlockAttrs, type BlockInstanceId, type DeletionReason, type ReferenceSyncBlockData } from '../common/types';
|
|
4
4
|
import type { SyncBlockDataProvider, SyncBlockSourceInfo } from '../providers/types';
|
|
5
5
|
export type ConfirmationCallback = (syncBlockIds: SyncBlockAttrs[], deleteReason: DeletionReason | undefined) => Promise<boolean>;
|
|
6
6
|
type OnDelete = () => void;
|
|
7
|
-
type
|
|
7
|
+
type OnCompletion = (success: boolean) => void;
|
|
8
8
|
type DestroyCallback = () => void;
|
|
9
9
|
export type CreationCallback = () => void;
|
|
10
10
|
export declare class SourceSyncBlockStoreManager {
|
|
@@ -15,6 +15,7 @@ export declare class SourceSyncBlockStoreManager {
|
|
|
15
15
|
private deletionRetryInfo?;
|
|
16
16
|
private pendingResourceId?;
|
|
17
17
|
private creationCallback?;
|
|
18
|
+
private creationCompletionCallbacks;
|
|
18
19
|
private createExperience;
|
|
19
20
|
private saveExperience;
|
|
20
21
|
private deleteExperience;
|
|
@@ -34,6 +35,7 @@ export declare class SourceSyncBlockStoreManager {
|
|
|
34
35
|
*/
|
|
35
36
|
flush(): Promise<boolean>;
|
|
36
37
|
registerPendingCreation(resourceId: ResourceId): void;
|
|
38
|
+
isPendingCreation(resourceId: ResourceId): boolean;
|
|
37
39
|
/**
|
|
38
40
|
* Register callback function (which inserts node, handles focus etc) to be used later when creation to backend succeed
|
|
39
41
|
*/
|
|
@@ -42,10 +44,11 @@ export declare class SourceSyncBlockStoreManager {
|
|
|
42
44
|
* Fires callback to insert node (if creation is successful) and clears pending creation data
|
|
43
45
|
* @param success
|
|
44
46
|
*/
|
|
45
|
-
commitPendingCreation(success: boolean): void;
|
|
47
|
+
commitPendingCreation(success: boolean, resourceId: ResourceId): void;
|
|
46
48
|
/**
|
|
47
49
|
*
|
|
48
50
|
* @returns true if waiting for the result of saving new bodiedSyncBlock to backend
|
|
51
|
+
* Remove this method when cleaning up platform_synced_block_patch_1
|
|
49
52
|
*/
|
|
50
53
|
hasPendingCreation(): boolean;
|
|
51
54
|
registerConfirmationCallback(callback: ConfirmationCallback): () => void;
|
|
@@ -58,7 +61,7 @@ export declare class SourceSyncBlockStoreManager {
|
|
|
58
61
|
* Create a bodiedSyncBlock node with empty content to backend
|
|
59
62
|
* @param attrs attributes Ids of the node
|
|
60
63
|
*/
|
|
61
|
-
createBodiedSyncBlockNode(attrs: SyncBlockAttrs, nodeData?: PMNode): void;
|
|
64
|
+
createBodiedSyncBlockNode(attrs: SyncBlockAttrs, onCompletion: OnCompletion, nodeData?: PMNode): void;
|
|
62
65
|
private setPendingDeletion;
|
|
63
66
|
private delete;
|
|
64
67
|
isRetryingDeletion(): boolean;
|
|
@@ -71,7 +74,7 @@ export declare class SourceSyncBlockStoreManager {
|
|
|
71
74
|
* @param onDeleteCompleted - The callback for after the deletion is saved to BE (whether successful or not)
|
|
72
75
|
* @param destroyCallback - The callback to clear any reference stored for deletion (regardless if deletion is completed or abort)
|
|
73
76
|
*/
|
|
74
|
-
deleteSyncBlocksWithConfirmation(syncBlockIds: SyncBlockAttrs[], deletionReason: DeletionReason
|
|
77
|
+
deleteSyncBlocksWithConfirmation(syncBlockIds: SyncBlockAttrs[], deletionReason: DeletionReason, onDelete: OnDelete, onDeleteCompleted: OnCompletion, destroyCallback: DestroyCallback): Promise<void>;
|
|
75
78
|
getSyncBlockSourceInfo(localId: BlockInstanceId): Promise<SyncBlockSourceInfo | undefined>;
|
|
76
79
|
fetchReferences(resourceId: string): Promise<ReferenceSyncBlockData>;
|
|
77
80
|
destroy(): void;
|
package/package.json
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@atlaskit/adf-utils": "^19.27.0",
|
|
28
28
|
"@atlaskit/editor-json-transformer": "^8.31.0",
|
|
29
29
|
"@atlaskit/editor-prosemirror": "^7.3.0",
|
|
30
|
-
"@atlaskit/node-data-provider": "^8.
|
|
30
|
+
"@atlaskit/node-data-provider": "^8.3.0",
|
|
31
31
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
32
32
|
"@babel/runtime": "^7.0.0",
|
|
33
33
|
"@compiled/react": "^0.18.6",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
}
|
|
80
80
|
},
|
|
81
81
|
"name": "@atlaskit/editor-synced-block-provider",
|
|
82
|
-
"version": "3.26.
|
|
82
|
+
"version": "3.26.2",
|
|
83
83
|
"description": "Synced Block Provider for @atlaskit/editor-plugin-synced-block",
|
|
84
84
|
"author": "Atlassian Pty Ltd",
|
|
85
85
|
"license": "Apache-2.0",
|
|
@@ -87,9 +87,6 @@
|
|
|
87
87
|
"registry": "https://registry.npmjs.org/"
|
|
88
88
|
},
|
|
89
89
|
"platform-feature-flags": {
|
|
90
|
-
"platform_synced_block_dogfooding": {
|
|
91
|
-
"type": "boolean"
|
|
92
|
-
},
|
|
93
90
|
"platform_synced_block_patch_1": {
|
|
94
91
|
"type": "boolean"
|
|
95
92
|
}
|