@veltdev/types 5.0.0-beta.13 → 5.0.0-beta.15

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.
@@ -214,6 +214,32 @@ export interface ToggleReactionRequest {
214
214
  };
215
215
  options?: RequestOptions;
216
216
  }
217
+ export interface SubmitCommentRequest {
218
+ targetComposerElementId: string;
219
+ }
220
+ export interface ClearComposerRequest {
221
+ targetComposerElementId: string;
222
+ }
223
+ export interface GetComposerDataRequest {
224
+ targetComposerElementId: string;
225
+ }
226
+ /**
227
+ * FormatConfig - Configuration for format options
228
+ */
229
+ export interface FormatConfig {
230
+ bold?: {
231
+ enable: boolean;
232
+ };
233
+ italic?: {
234
+ enable: boolean;
235
+ };
236
+ underline?: {
237
+ enable: boolean;
238
+ };
239
+ strikethrough?: {
240
+ enable: boolean;
241
+ };
242
+ }
217
243
  export interface FetchCommentAnnotationsRequest {
218
244
  createdAfter?: number;
219
245
  createdBefore?: number;
@@ -184,6 +184,7 @@ export declare class CommentAnnotation {
184
184
  unsubscribedUsers?: CommentAnnotationUnsubscribedUsers;
185
185
  subscribedGroups?: CommentAnnotationSubscribedGroups;
186
186
  resolvedByUserId?: string | null;
187
+ resolvedByUser?: User | null;
187
188
  multiThreadAnnotationId?: string;
188
189
  isDraft?: boolean;
189
190
  sourceId?: string;
@@ -1,4 +1,4 @@
1
- import { CommentAccessMode, CommentEventTypes, CommentStatus } from "../../utils/enums";
1
+ import { AssignToType, CommentAccessMode, CommentEventTypes, CommentStatus } from "../../utils/enums";
2
2
  import { Attachment } from "./attachment.model";
3
3
  import { VeltButtonClickEvent } from "./button.data.model";
4
4
  import { AddAttachmentResponse } from "./comment-actions.data.model";
@@ -84,6 +84,8 @@ export type CommentEventTypesMap = {
84
84
  [CommentEventTypes.LINK_CLICKED]: LinkClickedEvent;
85
85
  [CommentEventTypes.COMMENT_PIN_CLICKED]: CommentPinClickedEvent;
86
86
  [CommentEventTypes.COMMENT_BUBBLE_CLICKED]: CommentBubbleClickedEvent;
87
+ [CommentEventTypes.COMMENT_TOOL_CLICK]: CommentToolClickEvent;
88
+ [CommentEventTypes.SIDEBAR_BUTTON_CLICK]: SidebarButtonClickEvent;
87
89
  };
88
90
  export interface AddAttachmentEvent {
89
91
  annotationId: string;
@@ -278,5 +280,26 @@ export interface CommentBubbleClickedEvent {
278
280
  }
279
281
  export interface ComposerTextChangeEvent {
280
282
  text: string;
283
+ annotation: CommentAnnotation;
284
+ targetComposerElementId: string;
285
+ metadata?: VeltEventMetadata;
286
+ }
287
+ export interface AssignToConfig {
288
+ type: AssignToType;
289
+ }
290
+ export interface PageModeComposerConfig {
291
+ context?: {
292
+ [key: string]: any;
293
+ } | null;
294
+ targetElementId?: string | null;
295
+ }
296
+ export interface CommentToolClickEvent {
297
+ context: {
298
+ [key: string]: any;
299
+ } | null;
300
+ targetElementId?: string | null;
301
+ metadata?: VeltEventMetadata;
302
+ }
303
+ export interface SidebarButtonClickEvent {
281
304
  metadata?: VeltEventMetadata;
282
305
  }
@@ -1,13 +1,13 @@
1
1
  // @ts-nocheck
2
2
  import { Observable } from "rxjs";
3
- import { CommentSidebarSystemFiltersOperator, SidebarButtonCountType } from "../../utils/enums";
3
+ import { AssignToType, CommentSidebarSystemFiltersOperator, SidebarButtonCountType } from "../../utils/enums";
4
4
  import { UploadFileData } from "../data/attachment.model";
5
5
  import { AutocompleteData } from "../data/autocomplete.data.model";
6
- import { AcceptCommentAnnotationRequest, AddAttachmentRequest, AddAttachmentResponse, AddCommentAnnotationRequest, AddCommentRequest, AddReactionRequest, ApproveCommentAnnotationRequest, AssignUserEvent, AssignUserRequest, CommentRequestQuery, CommentVisibilityConfig, CopyLinkRequest, DeleteAttachmentRequest, DeleteCommentAnnotationRequest, DeleteCommentRequest, DeleteReactionRequest, DeleteRecordingRequest, FetchCommentAnnotationsRequest, GetAttachmentRequest, GetCommentRequest, GetLinkRequest, GetRecordingRequest, RejectCommentAnnotationRequest, ResolveCommentAnnotationRequest, SubscribeCommentAnnotationRequest, ToggleReactionRequest, UnsubscribeCommentAnnotationRequest, UpdateAccessRequest, UpdateCommentRequest, UpdatePriorityRequest, UpdateStatusRequest } from "../data/comment-actions.data.model";
6
+ import { AcceptCommentAnnotationRequest, AddAttachmentRequest, AddAttachmentResponse, AddCommentAnnotationRequest, AddCommentRequest, AddReactionRequest, ApproveCommentAnnotationRequest, AssignUserEvent, AssignUserRequest, CommentRequestQuery, CommentVisibilityConfig, ClearComposerRequest, CopyLinkRequest, DeleteAttachmentRequest, DeleteCommentAnnotationRequest, DeleteCommentRequest, DeleteReactionRequest, DeleteRecordingRequest, FetchCommentAnnotationsRequest, GetAttachmentRequest, GetCommentRequest, GetComposerDataRequest, GetLinkRequest, GetRecordingRequest, RejectCommentAnnotationRequest, ResolveCommentAnnotationRequest, SubmitCommentRequest, SubscribeCommentAnnotationRequest, ToggleReactionRequest, UnsubscribeCommentAnnotationRequest, UpdateAccessRequest, UpdateCommentRequest, UpdatePriorityRequest, UpdateStatusRequest } from "../data/comment-actions.data.model";
7
7
  import { CommentAnnotation, CommentOnElementConfig, CommentSelectionChangeData, ManualCommentAnnotationConfig, UpdateContextConfig } from "../data/comment-annotation.data.model";
8
- import { AcceptCommentAnnotationEvent, AddCommentAnnotationEvent, AddCommentEvent, AddReactionEvent, ApproveCommentAnnotationEvent, CommentAddEventData, CommentEventTypesMap, CommentUpdateEventData, CopyLinkEvent, DeleteAttachmentEvent, DeleteCommentAnnotationEvent, DeleteCommentEvent, DeleteReactionEvent, DeleteRecordingEvent, FetchCommentAnnotationsResponse, GetCommentAnnotationsCountResponse, GetCommentAnnotationsResponse, GetLinkEvent, RejectCommentAnnotationEvent, ToggleReactionEvent, UpdateAccessEvent, UpdateCommentEvent, UpdatePriorityEvent, UpdateStatusEvent } from "../data/comment-events.data.model";
8
+ import { AcceptCommentAnnotationEvent, AddCommentAnnotationEvent, AddCommentEvent, AddReactionEvent, ApproveCommentAnnotationEvent, AssignToConfig, CommentAddEventData, CommentEventTypesMap, CommentUpdateEventData, ComposerTextChangeEvent, CopyLinkEvent, DeleteAttachmentEvent, DeleteCommentAnnotationEvent, DeleteCommentEvent, DeleteReactionEvent, DeleteRecordingEvent, FetchCommentAnnotationsResponse, GetCommentAnnotationsCountResponse, GetCommentAnnotationsResponse, GetLinkEvent, PageModeComposerConfig, RejectCommentAnnotationEvent, ToggleReactionEvent, UpdateAccessEvent, UpdateCommentEvent, UpdatePriorityEvent, UpdateStatusEvent } from "../data/comment-events.data.model";
9
9
  import { CommentSidebarCustomActionEventData, CommentSidebarData, CommentSidebarDataOptions } from "../data/comment-sidebar-config.model";
10
- import { CommentContextProvider, TransformContext, UnreadCommentsCount } from "../data/comment-utils.data.model";
10
+ import { CommentContextProvider, FormatConfig, TransformContext, UnreadCommentsCount } from "../data/comment-utils.data.model";
11
11
  import { CustomAnnotationDropdownData } from "../data/custom-chip-dropdown.data.model";
12
12
  import { CustomCategory, CustomPriority, CustomStatus } from "../data/custom-filter.data.model";
13
13
  export { ReactionMap } from '../data/reaction-annotation.data.model';
@@ -85,6 +85,39 @@ export declare class CommentElement {
85
85
  */
86
86
  toggleCommentSidebar: () => any;
87
87
 
88
+ /**
89
+ * To enable context in page mode composer feature
90
+ * When enabled, clicking comment tool will open sidebar with page mode composer and pass context
91
+ */
92
+ enableContextInPageModeComposer: () => void;
93
+
94
+ /**
95
+ * To disable context in page mode composer feature
96
+ */
97
+ disableContextInPageModeComposer: () => void;
98
+
99
+ /**
100
+ * To clear page mode composer context
101
+ */
102
+ clearPageModeComposerContext: () => void;
103
+
104
+ /**
105
+ * To set context in page mode composer
106
+ * @param config The page mode composer config containing context and targetElementId
107
+ */
108
+ setContextInPageModeComposer: (config: PageModeComposerConfig | null) => void;
109
+
110
+ /**
111
+ * To focus the page mode composer input
112
+ */
113
+ focusPageModeComposer: () => void;
114
+
115
+ /**
116
+ * To set assign to type for comment dialog
117
+ * @param config The assign to config containing type
118
+ */
119
+ setAssignToType: (config: AssignToConfig) => void;
120
+
88
121
  /**
89
122
  * To enable moderator mode
90
123
  */
@@ -1271,13 +1304,6 @@ export declare class CommentElement {
1271
1304
  */
1272
1305
  public disableScreenshot: () => void;
1273
1306
 
1274
- /**
1275
- * To programmatically submit a comment from a velt-comment-composer.
1276
- * Finds the composer within the element identified by referenceId and submits its content.
1277
- * @param referenceId The ID of the HTML element containing the velt-comment-composer
1278
- */
1279
- public submitComment: (referenceId: string) => void;
1280
-
1281
1307
  /**
1282
1308
  * To enable paginated contact list
1283
1309
  */
@@ -1288,6 +1314,42 @@ export declare class CommentElement {
1288
1314
  */
1289
1315
  public disablePaginatedContactList: () => void;
1290
1316
 
1317
+ /**
1318
+ * To enable format options (bold, italic, underline, strikethrough)
1319
+ */
1320
+ public enableFormatOptions: () => void;
1321
+
1322
+ /**
1323
+ * To disable format options
1324
+ */
1325
+ public disableFormatOptions: () => void;
1326
+
1327
+ /**
1328
+ * Set format config to control which format options are enabled
1329
+ * @param config FormatConfig with enable flags for each format type
1330
+ */
1331
+ public setFormatConfig: (config: FormatConfig) => void;
1332
+
1333
+ /**
1334
+ * Programmatically trigger comment submission for a composer with the given targetComposerElementId
1335
+ * @param request SubmitCommentRequest containing targetComposerElementId
1336
+ */
1337
+ public submitComment: (request: SubmitCommentRequest) => void;
1338
+
1339
+ /**
1340
+ * Programmatically clear the composer state for the given targetComposerElementId
1341
+ * @param request ClearComposerRequest containing targetComposerElementId
1342
+ */
1343
+ public clearComposer: (request: ClearComposerRequest) => void;
1344
+
1345
+ /**
1346
+ * Get the current composer data for a given targetComposerElementId
1347
+ * Returns the same data as COMPOSER_TEXT_CHANGE event but as a one-time fetch
1348
+ * @param request GetComposerDataRequest containing targetComposerElementId
1349
+ * @returns The composer data or null if not found
1350
+ */
1351
+ public getComposerData: (request: GetComposerDataRequest) => ComposerTextChangeEvent | null;
1352
+
1291
1353
  constructor();
1292
1354
  /**
1293
1355
  * Subscribe to comments on the current document.
@@ -2548,11 +2610,68 @@ export declare class CommentElement {
2548
2610
  * To disable paginated contact list
2549
2611
  */
2550
2612
  private _disablePaginatedContactList;
2613
+ /**
2614
+ * To enable format options (bold, italic, underline, strikethrough)
2615
+ */
2616
+ private _enableFormatOptions;
2617
+ /**
2618
+ * To disable format options
2619
+ */
2620
+ private _disableFormatOptions;
2621
+ /**
2622
+ * To set format config to control which format options are enabled
2623
+ * @param config FormatConfig with enable flags for each format type
2624
+ */
2625
+ private _setFormatConfig;
2551
2626
 
2552
2627
  /**
2553
- * To programmatically submit a comment from a velt-comment-composer.
2554
- * Finds the composer within the element identified by referenceId and submits its content.
2555
- * @param referenceId The ID of the HTML element containing the velt-comment-composer
2628
+ * Programmatically trigger comment submission for a composer with the given targetComposerElementId
2629
+ * @param request SubmitCommentRequest containing targetComposerElementId
2556
2630
  */
2557
2631
  private _submitComment;
2632
+
2633
+ /**
2634
+ * Programmatically clear the composer state for the given targetComposerElementId
2635
+ * @param request ClearComposerRequest containing targetComposerElementId
2636
+ */
2637
+ private _clearComposer;
2638
+
2639
+ /**
2640
+ * Get the current composer data for a given targetComposerElementId
2641
+ * Returns the same data as COMPOSER_TEXT_CHANGE event but as a one-time fetch
2642
+ * @param request GetComposerDataRequest containing targetComposerElementId
2643
+ * @returns The composer data or null if not found
2644
+ */
2645
+ private _getComposerData;
2646
+
2647
+ /**
2648
+ * To enable context in page mode composer feature
2649
+ */
2650
+ private _enableContextInPageModeComposer;
2651
+
2652
+ /**
2653
+ * To disable context in page mode composer feature
2654
+ */
2655
+ private _disableContextInPageModeComposer;
2656
+
2657
+ /**
2658
+ * To clear page mode composer context
2659
+ */
2660
+ private _clearPageModeComposerContext;
2661
+
2662
+ /**
2663
+ * To set context in page mode composer
2664
+ */
2665
+ private _setContextInPageModeComposer;
2666
+
2667
+ /**
2668
+ * To focus the page mode composer input
2669
+ */
2670
+ private _focusPageModeComposer;
2671
+
2672
+ /**
2673
+ * To set assign to type for comment dialog
2674
+ * @param type 'dropdown' | 'checkbox'
2675
+ */
2676
+ private _setAssignToType;
2558
2677
  }
@@ -59,6 +59,8 @@ export declare const CommentEventTypes: {
59
59
  readonly LINK_CLICKED: "linkClicked";
60
60
  readonly COMMENT_PIN_CLICKED: "commentPinClicked";
61
61
  readonly COMMENT_BUBBLE_CLICKED: "commentBubbleClicked";
62
+ readonly COMMENT_TOOL_CLICK: "commentToolClick";
63
+ readonly SIDEBAR_BUTTON_CLICK: "sidebarButtonClick";
62
64
  };
63
65
  export declare const RecorderEventTypes: {
64
66
  readonly TRANSCRIPTION_DONE: "transcriptionDone";
@@ -187,6 +189,7 @@ export declare enum AnalyticsFeatures {
187
189
  COMMENT_SIDEBAR = "commentSidebar"
188
190
  }
189
191
  export type FeatureType = 'area' | 'arrow' | 'audioHuddle' | 'comment' | 'cursor' | 'huddle' | 'liveStateSync' | 'presence' | 'recorder' | 'rewriter' | 'tag' | 'liveSelection' | 'notification' | 'reaction' | 'multiThread';
192
+ export type AssignToType = 'dropdown' | 'checkbox';
190
193
  export declare enum DeviceType {
191
194
  DESKTOP = "Desktop",
192
195
  MOBILE = "Mobile",
@@ -279,10 +282,10 @@ export type OverlayOriginY = 'top' | 'center' | 'bottom';
279
282
  export type OverlayOriginX = 'start' | 'center' | 'end';
280
283
  export type SubtitlesMode = 'floating' | 'embed';
281
284
  export type RecorderVariant = 'default' | 'embed';
282
- export type ReactionPinType = 'timeline' | 'comment';
285
+ export type ReactionPinType = 'timeline' | 'comment' | 'standalone';
283
286
  export type SidebarPosition = 'left' | 'right';
284
287
  export type SidebarSortingCriteria = 'date' | 'unread' | null;
285
- export type SidebarFilterCriteria = 'all' | 'read' | 'unread' | 'resolved' | 'open' | 'reset' | null;
288
+ export type SidebarFilterCriteria = 'all' | 'read' | 'unread' | 'resolved' | 'open' | 'assignedToMe' | 'reset' | null;
286
289
  export type SidebarFilterSearchType = 'people' | 'assigned' | 'tagged' | 'involved' | 'pages' | 'documents' | 'statuses' | 'priorities' | 'categories' | 'versions' | string;
287
290
  export type InlineSortingCriteria = 'createdFirst' | 'createdLast' | 'updatedFirst' | 'updatedLast';
288
291
  export type NotificationPanelMode = 'popover' | 'sidebar';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veltdev/types",
3
- "version": "5.0.0-beta.13",
3
+ "version": "5.0.0-beta.15",
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": [