@veltdev/sdk-staging 4.0.0-beta.10 → 4.0.0-beta.101

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.
@@ -26,7 +26,10 @@ import { DocumentMetadata } from "../models/data/document-metadata.model";
26
26
  import { ReactionElement } from "../models/element/reaction-element.model";
27
27
  import { VeltEventMetadata } from "../models/data/event-metadata.data.model";
28
28
  import { CoreEventTypesMap } from "../models/data/core-events.data.model";
29
- import { Document, SetDocumentsRequestOptions } from "../models/data/document.data.model";
29
+ import { Document, SetDocumentsRequestOptions, FetchDocumentsRequest, FetchFoldersRequest } from "../models/data/document.data.model";
30
+ import { FetchDocumentsResponse, FetchFoldersResponse } from "../models/data/document-events.data.model";
31
+ import { UserDataProvider } from "../models/data/user-resolver.data.model";
32
+
30
33
  export declare class Snippyly {
31
34
  constructor();
32
35
  initConfig: (apiKey: string, config?: Config) => void;
@@ -47,6 +50,7 @@ export declare class Snippyly {
47
50
  /**
48
51
  * Tell us the unique ID of the current document/resource on which you want to enable collaboration.
49
52
  * @param id unique document ID
53
+ * @deprecated This method is deprecated and will be removed in next release. Use `setDocuments` method instead.
50
54
  */
51
55
  setDocumentId: (id: string) => void;
52
56
  /**
@@ -55,29 +59,35 @@ export declare class Snippyly {
55
59
  setDocuments: (documents: Document[], options?: SetDocumentsRequestOptions) => void;
56
60
  /**
57
61
  * To unset the document id
62
+ * @deprecated This method is deprecated and will be removed in next release. Use `unsetDocuments` method instead.
58
63
  */
59
64
  unsetDocumentId: () => void;
60
65
  /**
61
- * Get Document ID
66
+ * To unset the documents
62
67
  */
63
- getDocumentId: () => string;
68
+ unsetDocuments: () => void;
64
69
  /**
65
- * Tell us the custom params of the current document/resource to identify sub document inside a document.
66
- * @param params Document Params
67
- * @deprecated This method is depercated and will be removed in next release. Use `setLocation` method instead.
70
+ * To fetch documents
71
+ */
72
+ fetchDocuments: (options?: FetchDocumentsRequest) => Promise<FetchDocumentsResponse>;
73
+ /**
74
+ * To fetch folders
68
75
  */
69
- setDocumentParams: (params: Location) => void;
76
+ fetchFolders: (options?: FetchFoldersRequest) => Promise<FetchFoldersResponse>;
77
+ /**
78
+ * To set the user data provider.
79
+ */
80
+ setUserDataProvider: (userDataProvider: UserDataProvider) => void;
81
+ /**
82
+ * Get Document ID
83
+ */
84
+ getDocumentId: () => string;
70
85
  /**
71
86
  * Tell us the custom params of the current document/resource to identify sub document inside a document.
72
87
  * @param params Location
73
88
  * @param appendLocation Append location to existing location
74
89
  */
75
90
  setLocation: (params: Location, appendLocation?: boolean) => void;
76
- /**
77
- * To remove document params from a User
78
- * @deprecated This method is depercated and will be removed in next release. Use `removeLocation` method instead.
79
- */
80
- removeDocumentParams: () => void;
81
91
  /**
82
92
  * To remove location from a User
83
93
  * @param location Location
@@ -183,12 +193,6 @@ export declare class Snippyly {
183
193
  * @param features List of features
184
194
  */
185
195
  disableFeatures: (features: Array<FeatureType>) => void;
186
- /**
187
- * Add location to show comments, tags, recorders etc. for provided location also.
188
- * @param location Location object
189
- * @deprecated This method is deprecated and will be removed in next release. Use `setLocation` method with `appendLocation: true` instead.
190
- */
191
- addLocation: (location: any) => any;
192
196
  /**
193
197
  * To set the dark mode of Velt components.
194
198
  * @param value {boolean} true/false
@@ -216,17 +220,6 @@ export declare class Snippyly {
216
220
  */
217
221
  getVeltInitState: () => Observable<boolean | undefined>;
218
222
 
219
- /**
220
- * To invite list of users to the document.
221
- * @param documentUsers List of document users
222
- */
223
- inviteUsers: (documentUsers: Array<DocumentUser>) => void;
224
-
225
- /**
226
- * To remove snippyly specific content from provided html content.
227
- */
228
- removeSnippylyContent: (htmlContent: string) => string;
229
-
230
223
  /**
231
224
  * To remove velt specific content from provided html content.
232
225
  */
@@ -267,6 +260,7 @@ export declare class Snippyly {
267
260
 
268
261
  /**
269
262
  * To get document metadata.
263
+ * @deprecated This method is deprecated and will be removed in next release.
270
264
  */
271
265
  getDocumentMetadata: () => Observable<DocumentMetadata | null>;
272
266
 
@@ -0,0 +1,51 @@
1
+ import { AnnotationProperty } from "./annotation-property.data.model";
2
+ import { CursorPosition } from "./cursor-position.data.model";
3
+ import { Location } from "./location.model";
4
+ import { PageInfo } from "./page-info.model";
5
+ import { TargetElement } from "./target-element.data.model";
6
+ import { User } from "./user.data.model";
7
+ export declare class ArrowAnnotation {
8
+ /**
9
+ * Unique identifier for the arrow pin annotation.
10
+ *
11
+ * Auto generated.
12
+ */
13
+ annotationId: string;
14
+ /**
15
+ * The user who created this arrow pin annotation.
16
+ *
17
+ */
18
+ from: User;
19
+ /**
20
+ * Color used for the arrow pin annotation.
21
+ *
22
+ */
23
+ color?: string;
24
+ /**
25
+ * Timestamp when the arrow annotation was last updated.
26
+ *
27
+ * Auto generated.
28
+ */
29
+ lastUpdated?: any;
30
+ /**
31
+ * Target element of attached annotation.
32
+ */
33
+ targetElement?: TargetElement | null;
34
+ position?: CursorPosition | null;
35
+ /**
36
+ * Unique location id generated from provided location
37
+ */
38
+ locationId?: number | null;
39
+ /**
40
+ * Set location to identify user on sub document
41
+ */
42
+ location?: Location | null;
43
+ type?: string;
44
+ props: AnnotationProperty;
45
+ /**
46
+ * To maintain index of current annotation in available list of annotations
47
+ * It will start from 1, so no need to add 1 in that.
48
+ */
49
+ annotationIndex?: number;
50
+ pageInfo?: PageInfo;
51
+ }
@@ -4,4 +4,6 @@ export declare class BaseMetadata {
4
4
  clientDocumentId?: string;
5
5
  organizationId?: string;
6
6
  clientOrganizationId?: string;
7
+ folderId?: string;
8
+ veltFolderId?: string;
7
9
  }
@@ -9,8 +9,10 @@ import { User } from "./user.data.model";
9
9
  export interface RequestOptions {
10
10
  organizationId?: string;
11
11
  documentId?: string;
12
+ folderId?: string;
12
13
  filters?: any;
13
14
  documentIds?: string[];
15
+ allDocuments?: boolean;
14
16
  }
15
17
  export interface UpdatePriorityRequest {
16
18
  annotationId: string;
@@ -63,6 +65,9 @@ export interface CommentRequestQuery {
63
65
  documentIds?: string[];
64
66
  locationIds?: string[];
65
67
  statusIds?: string[];
68
+ folderId?: string;
69
+ allDocuments?: boolean;
70
+ locationId?: string;
66
71
  }
67
72
  export interface SubscribeCommentAnnotationRequest {
68
73
  annotationId: string;
@@ -161,3 +166,18 @@ export interface ToggleReactionRequest {
161
166
  };
162
167
  options?: RequestOptions;
163
168
  }
169
+ export interface FetchCommentAnnotationsRequest {
170
+ createdAfter?: number;
171
+ createdBefore?: number;
172
+ updatedAfter?: number;
173
+ updatedBefore?: number;
174
+ statusIds?: string[];
175
+ order?: 'asc' | 'desc';
176
+ pageToken?: string;
177
+ allDocuments?: boolean;
178
+ pageSize?: number;
179
+ organizationId?: string;
180
+ locationId?: string;
181
+ documentIds?: string[];
182
+ folderId?: string;
183
+ }
@@ -129,6 +129,9 @@ export interface DeleteCommentAnnotationEvent {
129
129
  export interface GetCommentAnnotationsResponse {
130
130
  data: Record<string, CommentAnnotation[]> | null;
131
131
  }
132
+ export interface FetchCommentAnnotationsResponse extends GetCommentAnnotationsResponse {
133
+ nextPageToken: string;
134
+ }
132
135
  export interface GetCommentAnnotationsCountResponse {
133
136
  data: Record<string, CommentAnnotationsCount> | null;
134
137
  }
@@ -52,6 +52,7 @@ export declare class Config {
52
52
  }
53
53
  export interface ExtendedFirebaseOptions extends FirebaseOptions {
54
54
  storeDbId: string;
55
+ region?: string;
55
56
  }
56
57
  export interface AdvancedQueries {
57
58
  advancedQueriesEnabled: boolean;
@@ -0,0 +1,10 @@
1
+ import { DocumentMetadata } from "./document-metadata.model";
2
+ import { FolderMetadata } from "./folder-metadata.model";
3
+ export interface FetchDocumentsResponse {
4
+ data: Record<string, DocumentMetadata> | null;
5
+ nextPageToken: string;
6
+ }
7
+ export interface FetchFoldersResponse {
8
+ data: Record<string, FolderMetadata> | null;
9
+ nextPageToken: string;
10
+ }
@@ -6,6 +6,14 @@ export declare class DocumentMetadata {
6
6
  * Unique document id generated from client document id
7
7
  */
8
8
  documentId?: string;
9
+ /**
10
+ * Folders
11
+ */
12
+ folderId?: string;
13
+ /**
14
+ * Velt folder id
15
+ */
16
+ veltFolderId?: string;
9
17
  /**
10
18
  * API key
11
19
  */
@@ -5,4 +5,23 @@ export interface Document {
5
5
  }
6
6
  export interface SetDocumentsRequestOptions {
7
7
  organizationId?: string;
8
+ folderId?: string;
9
+ allDocuments?: boolean;
10
+ locationId?: string;
11
+ }
12
+ export interface FetchDocumentsRequest {
13
+ organizationId?: string;
14
+ documentIds?: string[];
15
+ folderId?: string;
16
+ allDocuments?: boolean;
17
+ }
18
+ export interface FetchFoldersRequest {
19
+ organizationId?: string;
20
+ folderId?: string;
21
+ }
22
+ export interface FolderConfig {
23
+ folderId?: string;
24
+ allDocuments?: boolean;
25
+ locationId?: string;
26
+ veltFolderId?: string;
8
27
  }
@@ -0,0 +1,40 @@
1
+ export declare class FolderMetadata {
2
+ folderId?: string;
3
+ /**
4
+ * Velt folder id
5
+ */
6
+ veltFolderId?: string;
7
+ /**
8
+ * Parent folder id
9
+ */
10
+ parentFolderId?: string;
11
+ /**
12
+ * Velt parent folder id
13
+ */
14
+ veltParentFolderId?: string;
15
+ /**
16
+ * Created at
17
+ */
18
+ createdAt?: number;
19
+ /**
20
+ * Last updated
21
+ */
22
+ lastUpdated?: number;
23
+ /**
24
+ * API key
25
+ */
26
+ apiKey?: string;
27
+ /**
28
+ * Organization id
29
+ */
30
+ organizationId?: string;
31
+ /**
32
+ * Client organization id
33
+ */
34
+ clientOrganizationId?: string;
35
+ /**
36
+ * Folder name
37
+ */
38
+ folderName?: string;
39
+ [key: string]: any;
40
+ }
@@ -0,0 +1,61 @@
1
+ import { BaseMetadata } from "./base-metadata.data.model";
2
+ import { CommentAnnotation, GhostComment, InlineCommentSectionConfig } from "./comment-annotation.data.model";
3
+ import { CursorPosition } from "./cursor-position.data.model";
4
+ import { Location } from "./location.model";
5
+ import { TargetElement } from "./target-element.data.model";
6
+ import { TargetTextRange } from "./target-text-range.data.model";
7
+ import { User } from "./user.data.model";
8
+ export declare class MultiThreadCommentAnnotation {
9
+ /**
10
+ * The id of the annotation.
11
+ */
12
+ annotationId: string;
13
+ /**
14
+ * The id of the area annotation.
15
+ */
16
+ areaAnnotationId?: string;
17
+ /**
18
+ * The target element of the annotation.
19
+ */
20
+ targetElement?: TargetElement | null;
21
+ /**
22
+ * The id of the target element.
23
+ */
24
+ targetElementId?: string | null;
25
+ /**
26
+ * Selected text range of comment annotation
27
+ */
28
+ targetTextRange?: TargetTextRange | null;
29
+ /**
30
+ * The id of the target inline comment element.
31
+ */
32
+ targetInlineCommentElementId?: string;
33
+ /**
34
+ * The inline comment section config.
35
+ */
36
+ inlineCommentSectionConfig?: InlineCommentSectionConfig;
37
+ commentAnnotations?: {
38
+ [commentAnnotationId: string]: boolean;
39
+ };
40
+ commentAnnotationsMap?: {
41
+ [commentAnnotationId: string]: CommentAnnotation;
42
+ };
43
+ /**
44
+ * Unique location id generated from provided location
45
+ */
46
+ locationId?: number | null;
47
+ /**
48
+ * Set location to identify user on sub document
49
+ */
50
+ location?: Location | null;
51
+ position?: CursorPosition | null;
52
+ ghostComment?: GhostComment | null;
53
+ from: User;
54
+ type: string;
55
+ isDraft?: boolean;
56
+ sourceId?: string;
57
+ metadata?: MultiThreadMetadata;
58
+ }
59
+ export declare class MultiThreadMetadata extends BaseMetadata {
60
+ [key: string]: any;
61
+ }
@@ -88,6 +88,11 @@ export declare class NotificationRawData {
88
88
  [key: string]: any;
89
89
  };
90
90
  displayBodyMessage?: string;
91
+ displayBodyMessageTemplate?: string;
92
+ displayBodyMessageTemplateData?: {
93
+ users?: User[];
94
+ [key: string]: any;
95
+ };
91
96
  customData?: any;
92
97
  notifyUsers?: {
93
98
  [email: string]: boolean;
@@ -127,6 +132,17 @@ export declare class Notification {
127
132
  * Notification body message
128
133
  */
129
134
  displayBodyMessage?: string;
135
+ /**
136
+ * Display body message template
137
+ */
138
+ displayBodyMessageTemplate?: string;
139
+ /**
140
+ * Display body message template data
141
+ */
142
+ displayBodyMessageTemplateData?: {
143
+ users?: User[];
144
+ [key: string]: any;
145
+ };
130
146
  /**
131
147
  * Display message template
132
148
  */
@@ -164,4 +164,10 @@ export declare class RecorderData {
164
164
  assets: RecorderDataAsset[];
165
165
  transcription: RecorderDataTranscription;
166
166
  }
167
+ export interface RecorderRequestQuery {
168
+ recorderIds: string[];
169
+ }
170
+ export interface GetRecordingDataResponse {
171
+ data: Record<string, RecorderData> | null;
172
+ }
167
173
  export {};
@@ -0,0 +1,16 @@
1
+ import { RecorderEventTypes } from "../../utils/enums";
2
+ export interface TranscriptionDoneEvent {
3
+ transcription: string;
4
+ id?: string;
5
+ tag?: string;
6
+ type?: string;
7
+ thumbnailUrl?: string;
8
+ thumbnailWithPlayIconUrl?: string;
9
+ videoUrl?: string;
10
+ audioUrl?: string;
11
+ videoPlayerUrl?: string;
12
+ getThumbnailTag?: (url?: string) => string;
13
+ }
14
+ export type RecorderEventTypesMap = {
15
+ [RecorderEventTypes.TRANSCRIPTION_DONE]: TranscriptionDoneEvent;
16
+ };
@@ -0,0 +1,5 @@
1
+ import { User } from "./user.data.model";
2
+ export interface UserDataProvider {
3
+ getUsers(userIds: string[]): Promise<Record<string, User>>;
4
+ resolveTimeout?: number;
5
+ }
@@ -1,6 +1,7 @@
1
1
  // @ts-nocheck
2
2
  import { Observable } from "rxjs";
3
- import { RecorderData } from "../data/recorder-annotation.data.model";
3
+ import { RecorderData, RecorderRequestQuery, GetRecordingDataResponse } from "../data/recorder-annotation.data.model";
4
+ import { RecorderEventTypesMap } from "../data/recorder-events.data.model";
4
5
 
5
6
  export declare class RecorderElement {
6
7
 
@@ -33,6 +34,16 @@ export declare class RecorderElement {
33
34
  */
34
35
  disableRecordingTranscription: () => void;
35
36
 
37
+ /**
38
+ * Subscribe to recorder actions
39
+ */
40
+ public on: <T extends keyof RecorderEventTypesMap>(action: T) => Observable<RecorderEventTypesMap[T]>;
41
+
42
+ /**
43
+ * To get recording data by recorder ids
44
+ */
45
+ getRecordingData: (query: RecorderRequestQuery) => Promise<GetRecordingDataResponse>;
46
+
36
47
  constructor();
37
48
 
38
49
  private _initRecording;
@@ -63,4 +74,14 @@ export declare class RecorderElement {
63
74
  * To disable recording transcription
64
75
  */
65
76
  private _disableRecordingTranscription;
77
+
78
+ /**
79
+ * Subscribe to recorder actions
80
+ */
81
+ private _on;
82
+
83
+ /**
84
+ * To get recording data by recorder ids
85
+ */
86
+ private _getRecordingData;
66
87
  }
@@ -8,7 +8,9 @@ export declare class Constants {
8
8
  static LOCALSTORAGE_DATA_ID: string;
9
9
  static NO_ORGANIZATION_ID: string;
10
10
  static DEFAULT_QUERY_HASH: string;
11
+ static LISTENER_BATCH_SIZE: number;
11
12
  static FIREBASE_PARTIAL_PATH_ORGANIZATIONS: string;
13
+ static FIREBASE_PARTIAL_PATH_FOLDERS: string;
12
14
  static FIREBASE_PARTIAL_PATH_DOCS: string;
13
15
  static FIREBASE_PARTIAL_PATH_PRESENCE: string;
14
16
  static FIREBASE_PARTIAL_PATH_ORGANIZATION_USERS: string;
@@ -242,6 +244,7 @@ export declare class Constants {
242
244
  VELT_COMMENT_DIALOG_BODY_THREAD_CARD: string;
243
245
  VELT_COMMENT_DIALOG_PRIVATE_BANNER: string;
244
246
  VELT_COMMENT_COMPOSER: string;
247
+ VELT_SKELETON_LOADER: string;
245
248
  VELT_SHADOW_DOM_INTERNAL: string;
246
249
  };
247
250
  static ATTRIBUTES: {
@@ -252,6 +255,7 @@ export declare class Constants {
252
255
  TARGET_ELEMENT_ID: string;
253
256
  VELT_ID: string;
254
257
  VELT_ELEMENT: string;
258
+ VELT_SCREEN_RECORDER_PANEL: string;
255
259
  VELT_SOURCE_ID: string;
256
260
  VELT_ANNOTATION_ID: string;
257
261
  VELT_ANNOTATION_IDS: string;
@@ -42,10 +42,14 @@ export declare const CommentEventTypes: {
42
42
  readonly COMMENT_SIDEBAR_DATA_INIT: "commentSidebarDataInit";
43
43
  readonly COMMENT_SIDEBAR_DATA_UPDATE: "commentSidebarDataUpdate";
44
44
  };
45
+ export declare const RecorderEventTypes: {
46
+ readonly TRANSCRIPTION_DONE: "transcriptionDone";
47
+ };
45
48
  export declare const CoreEventTypes: {
46
49
  readonly VELT_BUTTON_CLICK: "veltButtonClick";
47
50
  };
48
51
  export type CommentEventType = typeof CommentEventTypes[keyof typeof CommentEventTypes];
52
+ export type RecorderEventType = typeof RecorderEventTypes[keyof typeof RecorderEventTypes];
49
53
  export type CoreEventType = typeof CoreEventTypes[keyof typeof CoreEventTypes];
50
54
  export declare enum TagStatus {
51
55
  ADDED = "added",
package/models.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './app/utils/enums';
2
2
  export * from './app/models/data/attachment.model';
3
3
  export * from './app/models/data/area-annotation.data.model';
4
+ export * from './app/models/data/arrow-annotation.data.model';
4
5
  export * from './app/models/data/base-metadata.data.model';
5
6
  export * from './app/models/data/button.data.model';
6
7
  export * from './app/models/data/chatgpt.data.model';
@@ -17,6 +18,7 @@ export * from './app/models/data/custom-css.data.model';
17
18
  export * from './app/models/data/custom-chip-dropdown.data.model';
18
19
  export * from './app/models/data/device-info.model';
19
20
  export * from './app/models/data/document.data.model';
21
+ export * from './app/models/data/document-events.data.model';
20
22
  export * from './app/models/data/document-iam.data.model';
21
23
  export * from './app/models/data/document-metadata.model';
22
24
  export * from './app/models/data/document-paths.data.model';
@@ -28,12 +30,14 @@ export * from './app/models/data/localstorage.data.model';
28
30
  export * from './app/models/data/location-metadata.model';
29
31
  export * from './app/models/data/location.model';
30
32
  export * from './app/models/data/media-preview-config.data.model';
33
+ export * from './app/models/data/multi-thread.data.model';
31
34
  export * from './app/models/data/notification.model';
32
35
  export * from './app/models/data/page-info.model';
33
36
  export * from './app/models/data/permission.data.model';
34
37
  export * from './app/models/data/presence-user.data.model';
35
38
  export * from './app/models/data/recorder.model';
36
39
  export * from './app/models/data/recorder-annotation.data.model';
40
+ export * from './app/models/data/recorder-events.data.model';
37
41
  export * from './app/models/data/rewriter-annotation.data.model';
38
42
  export * from './app/models/data/screen-size.data.model';
39
43
  export * from './app/models/data/selection.model';
@@ -62,3 +66,4 @@ export * from './app/models/data/organization-groups.data.model';
62
66
  export * from './app/models/data/organization-metadata.model';
63
67
  export * from './app/models/data/user-organization.data.model';
64
68
  export * from './app/models/data/event-metadata.data.model';
69
+ export * from './app/models/data/user-resolver.data.model';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veltdev/sdk-staging",
3
- "version": "4.0.0-beta.10",
3
+ "version": "4.0.0-beta.101",
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": [