@atlaskit/collab-provider 10.4.0 → 10.5.0

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 (48) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/afm-cc/tsconfig.json +3 -0
  3. package/afm-jira/tsconfig.json +6 -0
  4. package/dist/cjs/analytics/analytics-helper.js +0 -2
  5. package/dist/cjs/api/api.js +26 -14
  6. package/dist/cjs/channel.js +0 -2
  7. package/dist/cjs/document/catchupv2.js +1 -4
  8. package/dist/cjs/document/document-service.js +35 -33
  9. package/dist/cjs/helpers/utils.js +80 -1
  10. package/dist/cjs/participants/participants-service.js +3 -2
  11. package/dist/cjs/provider/commit-step.js +14 -1
  12. package/dist/cjs/provider/index.js +69 -33
  13. package/dist/cjs/version-wrapper.js +1 -1
  14. package/dist/es2019/analytics/analytics-helper.js +0 -2
  15. package/dist/es2019/api/api.js +13 -1
  16. package/dist/es2019/channel.js +0 -2
  17. package/dist/es2019/document/catchupv2.js +1 -4
  18. package/dist/es2019/document/document-service.js +8 -6
  19. package/dist/es2019/helpers/utils.js +30 -1
  20. package/dist/es2019/participants/participants-service.js +3 -2
  21. package/dist/es2019/provider/commit-step.js +15 -1
  22. package/dist/es2019/provider/index.js +40 -17
  23. package/dist/es2019/version-wrapper.js +1 -1
  24. package/dist/esm/analytics/analytics-helper.js +0 -2
  25. package/dist/esm/api/api.js +26 -14
  26. package/dist/esm/channel.js +0 -2
  27. package/dist/esm/document/catchupv2.js +1 -4
  28. package/dist/esm/document/document-service.js +35 -33
  29. package/dist/esm/helpers/utils.js +78 -1
  30. package/dist/esm/participants/participants-service.js +3 -2
  31. package/dist/esm/provider/commit-step.js +14 -1
  32. package/dist/esm/provider/index.js +71 -35
  33. package/dist/esm/version-wrapper.js +1 -1
  34. package/dist/types/document/document-service.d.ts +1 -0
  35. package/dist/types/errors/custom-errors.d.ts +1 -1
  36. package/dist/types/helpers/utils.d.ts +9 -1
  37. package/dist/types/index.d.ts +1 -1
  38. package/dist/types/participants/participants-service.d.ts +1 -0
  39. package/dist/types/provider/commit-step.d.ts +3 -1
  40. package/dist/types/types.d.ts +1 -0
  41. package/dist/types-ts4.5/document/document-service.d.ts +1 -0
  42. package/dist/types-ts4.5/errors/custom-errors.d.ts +1 -1
  43. package/dist/types-ts4.5/helpers/utils.d.ts +9 -1
  44. package/dist/types-ts4.5/index.d.ts +1 -1
  45. package/dist/types-ts4.5/participants/participants-service.d.ts +1 -0
  46. package/dist/types-ts4.5/provider/commit-step.d.ts +3 -1
  47. package/dist/types-ts4.5/types.d.ts +1 -0
  48. package/package.json +16 -6
@@ -1,8 +1,10 @@
1
1
  import { type ADFEntity } from '@atlaskit/adf-utils/types';
2
2
  import type { ProductInformation } from '../types';
3
3
  import type { Step as ProseMirrorStep } from '@atlaskit/editor-prosemirror/transform';
4
+ import type { EditorState } from '@atlaskit/editor-prosemirror/state';
4
5
  import type { StepJson } from '@atlaskit/editor-common/collab';
5
- import type { Node as ProseMirrorNode } from '@atlaskit/editor-prosemirror/model';
6
+ import { Node as ProseMirrorNode } from '@atlaskit/editor-prosemirror/model';
7
+ import { CustomError } from '../errors/custom-errors';
6
8
  export declare const createLogger: (prefix: string, color?: string) => (msg: string, data?: any) => void;
7
9
  export declare function sleep(ms: number): Promise<unknown>;
8
10
  export declare const isAIProviderID: (id: string) => boolean;
@@ -50,5 +52,11 @@ export declare const getObfuscatedSteps: (steps: StepJson[], endIndex?: number |
50
52
  traceId?: string | undefined;
51
53
  reqId?: string | undefined;
52
54
  schemaVersion?: string | undefined;
55
+ unconfirmedStepAfterRecovery?: boolean | undefined;
53
56
  } | undefined;
54
57
  }[];
58
+ export declare function logObfuscatedSteps(oldState: EditorState | null, newState: EditorState): Promise<CustomError | {
59
+ stepsFromOldState: string;
60
+ stepsFromNewState: string;
61
+ }>;
62
+ export declare function toObfuscatedSteps(steps: readonly ProseMirrorStep[]): Promise<string>;
@@ -1,4 +1,4 @@
1
1
  export { Provider } from './provider';
2
2
  export type { CollabEventDisconnectedData, Socket } from './types';
3
- export type { NewCollabSyncUpErrorAttributes, ResolvedEditorState, CollabMetadataPayload, CollabEventInitData, CollabInitPayload, CollabEventConnectionData, CollabConnectedPayload, CollabDisconnectedPayload, CollabDataPayload, CollabActivityData, CollabTelepointerPayload, CollabPresencePayload, CollabLocalStepsPayload, CollabPermissionEventPayload, CollabEventRemoteData, CollabEventPresenceData, CollabActivityJoinPayload, CollabActivityAckPayload, CollabEventConnectingData, CollabEventTelepointerData, CollabSendableSelection, CollabParticipant, CollabEvents, SyncUpErrorFunction, CollabEditProvider, ProviderError, ProviderParticipant, CollabEventLocalStepData, UserPermitType, } from '@atlaskit/editor-common/collab';
3
+ export type { NewCollabSyncUpErrorAttributes, ResolvedEditorState, CollabMetadataPayload, CollabEventInitData, CollabInitPayload, CollabEventConnectionData, CollabConnectedPayload, CollabDisconnectedPayload, CollabDataPayload, CollabActivityData, CollabTelepointerPayload, CollabPresencePayload, CollabLocalStepsPayload, CollabPermissionEventPayload, CollabEventRemoteData, CollabEventPresenceData, CollabActivityJoinPayload, CollabActivityAckPayload, CollabEventConnectingData, CollabEventTelepointerData, CollabSendableSelection, CollabParticipant, CollabEvents, SyncUpErrorFunction, CollabEditProvider, ProviderError, ProviderParticipant, CollabEventLocalStepData, UserPermitType, CollabNamespaceLockCheckPayload, } from '@atlaskit/editor-common/collab';
4
4
  export { PROVIDER_ERROR_CODE } from '@atlaskit/editor-common/collab';
@@ -119,4 +119,5 @@ export declare class ParticipantsService {
119
119
  */
120
120
  getParticipants: () => ProviderParticipant[];
121
121
  getAIProviderParticipants: () => ProviderParticipant[];
122
+ getCollabMode: () => "collab" | "single";
122
123
  }
@@ -5,7 +5,7 @@ import type AnalyticsHelper from '../analytics/analytics-helper';
5
5
  import type { InternalError } from '../errors/internal-errors';
6
6
  export declare let readyToCommit: boolean;
7
7
  export declare const RESET_READYTOCOMMIT_INTERVAL_MS = 5000;
8
- export declare const commitStepQueue: ({ broadcast, steps, version, userId, clientId, onStepsAdded, onErrorHandled, analyticsHelper, emit, __livePage, }: {
8
+ export declare const commitStepQueue: ({ broadcast, steps, version, userId, clientId, onStepsAdded, onErrorHandled, analyticsHelper, emit, __livePage, hasRecovered, collabMode, }: {
9
9
  broadcast: <K extends keyof ChannelEvent>(type: K, data: Omit<ChannelEvent[K], 'timestamp'>, callback?: Function) => void;
10
10
  steps: readonly ProseMirrorStep[];
11
11
  version: number;
@@ -16,4 +16,6 @@ export declare const commitStepQueue: ({ broadcast, steps, version, userId, clie
16
16
  analyticsHelper?: AnalyticsHelper | undefined;
17
17
  emit: (evt: keyof CollabEvents, data: CollabCommitStatusEventPayload) => void;
18
18
  __livePage: boolean;
19
+ hasRecovered: boolean;
20
+ collabMode: string;
19
21
  }) => void;
@@ -188,6 +188,7 @@ export type ChannelEvent = {
188
188
  'participant:updated': PresencePayload;
189
189
  'steps:commit': StepsPayload & {
190
190
  userId: string;
191
+ collabMode: string;
191
192
  };
192
193
  'steps:added': StepsPayload;
193
194
  'metadata:changed': Metadata;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/collab-provider",
3
- "version": "10.4.0",
3
+ "version": "10.5.0",
4
4
  "description": "A provider for collaborative editing.",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -32,15 +32,16 @@
32
32
  "./version-wrapper": "./src/version-wrapper.ts"
33
33
  },
34
34
  "dependencies": {
35
- "@atlaskit/adf-utils": "^19.17.0",
35
+ "@atlaskit/adf-utils": "^19.18.0",
36
36
  "@atlaskit/analytics-gas-types": "^5.1.0",
37
- "@atlaskit/analytics-listeners": "^8.13.0",
38
- "@atlaskit/editor-common": "^99.2.0",
39
- "@atlaskit/editor-json-transformer": "^8.21.0",
37
+ "@atlaskit/analytics-listeners": "^8.14.0",
38
+ "@atlaskit/editor-common": "^99.6.0",
39
+ "@atlaskit/editor-json-transformer": "^8.22.0",
40
40
  "@atlaskit/editor-prosemirror": "6.2.1",
41
41
  "@atlaskit/feature-gate-js-client": "^4.22.0",
42
42
  "@atlaskit/platform-feature-flags": "^0.3.0",
43
43
  "@atlaskit/prosemirror-collab": "^0.11.0",
44
+ "@atlaskit/react-ufo": "^2.14.0",
44
45
  "@atlaskit/ufo": "^0.3.0",
45
46
  "@atlaskit/util-service-support": "^6.2.0",
46
47
  "@babel/runtime": "^7.0.0",
@@ -65,7 +66,7 @@
65
66
  },
66
67
  "devDependencies": {
67
68
  "@atlaskit/adf-schema": "^46.1.0",
68
- "@atlassian/feature-flags-test-utils": "^0.2.0",
69
+ "@atlassian/feature-flags-test-utils": "^0.3.0",
69
70
  "typescript": "~5.4.2"
70
71
  },
71
72
  "platform-feature-flags": {
@@ -80,6 +81,15 @@
80
81
  },
81
82
  "restore_localstep_fallback_reconcile": {
82
83
  "type": "boolean"
84
+ },
85
+ "tag_unconfirmed_steps_after_recovery": {
86
+ "type": "boolean"
87
+ },
88
+ "platform_collab_provider_tracingheaders": {
89
+ "type": "boolean"
90
+ },
91
+ "log_obfuscated_steps_for_view_only": {
92
+ "type": "boolean"
83
93
  }
84
94
  }
85
95
  }