@veltdev/sdk 4.5.1 → 4.5.2-beta.10

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.
@@ -29,7 +29,7 @@ import { VeltEventMetadata } from "../models/data/event-metadata.data.model";
29
29
  import { CoreEventTypesMap } from "../models/data/core-events.data.model";
30
30
  import { Document, SetDocumentsRequestOptions, FetchDocumentsRequest, FetchFoldersRequest, UpdateDocumentsRequest, UpdateLocationsRequest } from "../models/data/document.data.model";
31
31
  import { FetchDocumentsResponse, FetchFoldersResponse } from "../models/data/document-events.data.model";
32
- import { UserDataProvider } from "../models/data/user-resolver.data.model";
32
+ import { UserDataProvider, GetUserPermissionsRequest, GetUserPermissionsResponse } from "../models/data/user-resolver.data.model";
33
33
  import { VeltDataProvider } from "../models/data/provider.data.model";
34
34
  import { VeltEncryptionProvider } from "../models/data/encryption-provider.data.model";
35
35
  import { VeltResetButtonStateConfig } from "../models/data/button.data.model";
@@ -277,6 +277,11 @@ export declare class Snippyly {
277
277
  */
278
278
  getUserRole$: () => Observable<string | null>;
279
279
 
280
+ /**
281
+ * To get user permissions.
282
+ */
283
+ getUserPermissions: (request?: GetUserPermissionsRequest) => Promise<GetUserPermissionsResponse>;
284
+
280
285
  /**
281
286
  * To check if plan is expired or not.
282
287
  */
@@ -8,6 +8,7 @@ export declare class AutocompleteData {
8
8
  description?: string;
9
9
  type: 'custom' | 'contact' | 'group';
10
10
  data: AutocompleteItem[];
11
+ groups?: AutocompleteGroup[];
11
12
  }
12
13
  export declare class AutocompleteItem {
13
14
  id: string;
@@ -18,6 +19,7 @@ export declare class AutocompleteItem {
18
19
  svg?: string;
19
20
  };
20
21
  link?: string;
22
+ groupId?: string;
21
23
  }
22
24
  export declare class AutocompleteReplaceData {
23
25
  text: string;
@@ -34,6 +36,10 @@ export declare class AutocompleteUserContactReplaceData {
34
36
  userId: string;
35
37
  contact?: UserContact;
36
38
  }
39
+ export declare class AutocompleteGroup {
40
+ id: string;
41
+ name: string;
42
+ }
37
43
  export declare class AutocompleteChipData extends AutocompleteItem {
38
44
  type: 'contact' | 'custom';
39
45
  }
@@ -79,6 +79,7 @@ export type CommentEventTypesMap = {
79
79
  [CommentEventTypes.COMMENT_SIDEBAR_DATA_UPDATE]: CommentSidebarDataUpdateEvent;
80
80
  [CommentEventTypes.AUTOCOMPLETE_SEARCH]: AutocompleteSearchEvent;
81
81
  [CommentEventTypes.COMPOSER_CLICKED]: ComposerClickedEvent;
82
+ [CommentEventTypes.LINK_CLICKED]: LinkClickedEvent;
82
83
  };
83
84
  export interface AddAttachmentEvent {
84
85
  annotationId: string;
@@ -250,3 +251,10 @@ export interface ComposerClickedEvent {
250
251
  commentAnnotation?: CommentAnnotation;
251
252
  metadata?: VeltEventMetadata;
252
253
  }
254
+ export interface LinkClickedEvent {
255
+ text: string;
256
+ link: string;
257
+ commentAnnotation: CommentAnnotation;
258
+ commentId: Number;
259
+ metadata?: VeltEventMetadata;
260
+ }
@@ -1,4 +1,5 @@
1
1
  import { SingleEditorState, SingleEditorStatus } from "../../utils/enums";
2
+ import { ErrorEvent } from "./core-events.data.model";
2
3
  import { User } from "./user.data.model";
3
4
  export declare class LiveStateData {
4
5
  /**
@@ -72,3 +73,20 @@ export declare class EditorAccessTimer {
72
73
  export declare class LiveStateDataConfig {
73
74
  listenToNewChangesOnly?: boolean;
74
75
  }
76
+ export interface SetUserAsEditorResponse {
77
+ error?: ErrorEvent;
78
+ }
79
+ export interface LiveStateSingleEditorExternalUserPresence {
80
+ /**
81
+ * True if the same user is present on different tab.
82
+ */
83
+ sameUserPresentOnTab?: boolean;
84
+ /**
85
+ * True if the different user is present on different tab.
86
+ */
87
+ differentUserPresentOnTab?: boolean;
88
+ /**
89
+ * User ids of the users present on different tab.
90
+ */
91
+ userIds?: string[];
92
+ }
@@ -12,8 +12,11 @@ export declare class UserIAM {
12
12
  */
13
13
  user: UserContact;
14
14
  documentIds?: string[];
15
+ viewerDocumentIds?: string[];
15
16
  folderIds?: string[];
17
+ viewerFolderIds?: string[];
16
18
  organizationIds?: string[];
19
+ viewerOrganizationIds?: string[];
17
20
  documentIdsCount?: number;
18
21
  folderIdsCount?: number;
19
22
  organizationIdsCount?: number;
@@ -5,3 +5,38 @@ export interface UserDataProvider {
5
5
  config?: ResolverConfig;
6
6
  resolveTimeout?: number;
7
7
  }
8
+ export interface GetUserPermissionsRequest {
9
+ organizationId?: string;
10
+ folderIds?: string[];
11
+ documentIds?: string[];
12
+ userIds?: string[];
13
+ }
14
+ export interface GetUserPermissionsResponse {
15
+ [userId: string]: {
16
+ folders?: {
17
+ [folderId: string]: {
18
+ accessRole?: UserPermissionAccessRole;
19
+ expiresAt?: number;
20
+ error?: string;
21
+ };
22
+ };
23
+ organization?: {
24
+ [organizationId: string]: {
25
+ accessRole?: UserPermissionAccessRole;
26
+ expiresAt?: number;
27
+ error?: string;
28
+ };
29
+ };
30
+ documents?: {
31
+ [documentId: string]: {
32
+ accessRole?: UserPermissionAccessRole;
33
+ expiresAt?: number;
34
+ error?: string;
35
+ };
36
+ };
37
+ };
38
+ }
39
+ export declare enum UserPermissionAccessRole {
40
+ EDITOR = "editor",
41
+ VIEWER = "viewer"
42
+ }
@@ -1203,6 +1203,16 @@ export declare class CommentElement {
1203
1203
  */
1204
1204
  public disableFilterGhostCommentsInSidebar: () => void;
1205
1205
 
1206
+ /**
1207
+ * To enable link callback
1208
+ */
1209
+ public enableLinkCallback: () => void;
1210
+
1211
+ /**
1212
+ * To disable link callback
1213
+ */
1214
+ public disableLinkCallback: () => void;
1215
+
1206
1216
  constructor();
1207
1217
  /**
1208
1218
  * Subscribe to comments on the current document.
@@ -2385,4 +2395,14 @@ export declare class CommentElement {
2385
2395
  * To disable filter ghost comments in sidebar
2386
2396
  */
2387
2397
  private _disableFilterGhostCommentsInSidebar;
2388
- }
2398
+
2399
+ /**
2400
+ * To enable link callback
2401
+ */
2402
+ private _enableLinkCallback;
2403
+
2404
+ /**
2405
+ * To disable link callback
2406
+ */
2407
+ private _disableLinkCallback;
2408
+ }
@@ -1,8 +1,8 @@
1
1
  // @ts-nocheck
2
- import { SingleEditorConfig, UserEditorAccess, EditorAccessTimer, LiveStateDataConfig, SetLiveStateDataConfig } from '../data/live-state-data.data.model';
3
- import { User } from '../data/user.data.model';
4
2
  import { ServerConnectionState } from '../../utils/enums';
3
+ import { EditorAccessTimer, LiveStateDataConfig, LiveStateSingleEditorExternalUserPresence, SetLiveStateDataConfig, SetUserAsEditorResponse, SingleEditorConfig, UserEditorAccess } from '../data/live-state-data.data.model';
5
4
  import { LiveStateEventTypesMap } from '../data/live-state-events.data.model';
5
+ import { User } from '../data/user.data.model';
6
6
 
7
7
  /**
8
8
  * Represents the synchronization element for live state.
@@ -54,7 +54,7 @@ export declare class LiveStateSyncElement {
54
54
  /**
55
55
  * Sets the current user as an editor.
56
56
  */
57
- setUserAsEditor: () => void;
57
+ setUserAsEditor: () => Promise<SetUserAsEditorResponse | void>;
58
58
 
59
59
  /**
60
60
  * Resets the user access.
@@ -142,6 +142,11 @@ export declare class LiveStateSyncElement {
142
142
  */
143
143
  onServerConnectionStateChange: () => Observable<ServerConnectionState>;
144
144
 
145
+ /**
146
+ * To update user presence for single editor mode
147
+ */
148
+ updateUserPresence: (userPresence: LiveStateSingleEditorExternalUserPresence) => void;
149
+
145
150
  /**
146
151
  * Subscribe to live state events
147
152
  */
@@ -285,6 +290,11 @@ export declare class LiveStateSyncElement {
285
290
  */
286
291
  private _onServerConnectionStateChange;
287
292
 
293
+ /**
294
+ * To update user presence for single editor mode
295
+ */
296
+ private _updateUserPresence;
297
+
288
298
  /**
289
299
  * Subscribe to live state events
290
300
  */
@@ -367,6 +367,7 @@ export declare class Constants {
367
367
  VELT_USER_FORCE_RE_LOGGED_IN: string;
368
368
  VELT_VERSION: string;
369
369
  VELT_ADVANCED_QUERIES: string;
370
+ VELT_COMMENT_VIEWS_MIGRATED: string;
370
371
  };
371
372
  static NON_NESTABLE_ELEMENTS: {
372
373
  [tag: string]: boolean;
@@ -54,6 +54,7 @@ export declare const CommentEventTypes: {
54
54
  readonly COMMENT_SIDEBAR_DATA_UPDATE: "commentSidebarDataUpdate";
55
55
  readonly AUTOCOMPLETE_SEARCH: "autocompleteSearch";
56
56
  readonly COMPOSER_CLICKED: "composerClicked";
57
+ readonly LINK_CLICKED: "linkClicked";
57
58
  };
58
59
  export declare const RecorderEventTypes: {
59
60
  readonly TRANSCRIPTION_DONE: "transcriptionDone";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veltdev/sdk",
3
- "version": "4.5.1",
3
+ "version": "4.5.2-beta.10",
4
4
  "description": "Velt is an SDK to add collaborative features to your product within minutes. Example: Comments like Figma, Frame.io, Google docs or sheets, Recording like Loom, Huddles like Slack and much more.",
5
5
  "homepage": "https://velt.dev",
6
6
  "keywords": [