UNPKG

@veltdev/sdk

Version:

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.

2,226 lines (1,809 loc) 53.4 kB
// @ts-nocheck import { Observable } from "rxjs"; import { CommentAnnotation, CommentOnElementConfig, CommentSelectionChangeData, ManualCommentAnnotationConfig, UpdateContextConfig } from "../data/comment-annotation.data.model"; import { AcceptCommentAnnotationEvent, AddCommentAnnotationEvent, AddCommentEvent, AddReactionEvent, ApproveCommentAnnotationEvent, CommentAddEventData, CommentEventTypesMap, CommentUpdateEventData, CopyLinkEvent, DeleteAttachmentEvent, DeleteCommentAnnotationEvent, DeleteCommentEvent, DeleteReactionEvent, DeleteRecordingEvent, GetLinkEvent, RejectCommentAnnotationEvent, ToggleReactionEvent, UpdateAccessEvent, UpdateCommentEvent, UpdatePriorityEvent, UpdateStatusEvent, GetCommentAnnotationsResponse, GetCommentAnnotationsCountResponse, FetchCommentAnnotationsResponse } from "../data/comment-events.data.model"; import { CustomCategory, CustomPriority, CustomStatus } from "../data/custom-filter.data.model"; import { CustomAnnotationDropdownData } from "../data/custom-chip-dropdown.data.model"; import { AutocompleteData } from "../data/autocomplete.data.model"; import { CommentSidebarCustomActionEventData, CommentSidebarData, CommentSidebarDataOptions } from "../data/comment-sidebar-config.model"; export { ReactionMap } from '../data/reaction-annotation.data.model'; import { AcceptCommentAnnotationRequest, AddAttachmentRequest, AddAttachmentResponse, AddCommentAnnotationRequest, AddCommentRequest, AddReactionRequest, ApproveCommentAnnotationRequest, AssignUserRequest, AssignUserEvent, CopyLinkRequest, DeleteAttachmentRequest, DeleteCommentAnnotationRequest, CommentRequestQuery, CommentRequestQuery, DeleteCommentRequest, DeleteReactionRequest, DeleteRecordingRequest, GetAttachmentRequest, GetCommentRequest, GetLinkRequest, GetRecordingRequest, RejectCommentAnnotationRequest, ResolveCommentAnnotationRequest, SubscribeCommentAnnotationRequest, UnsubscribeCommentAnnotationRequest, ToggleReactionRequest, UpdateAccessRequest, UpdateCommentRequest, UpdatePriorityRequest, UpdateStatusRequest, FetchCommentAnnotationsRequest } from "../data/comment-actions.data.model"; import { UnreadCommentsCount, TransformContext } from "../data/comment-utils.data.model"; import { CommentSidebarSystemFiltersOperator, SidebarButtonCountType } from "../../utils/enums"; import { UploadFileData } from "../data/attachment.model"; export declare class CommentElement { /** * Subscribe to comments on the current document. * * Returns Observable<CommentPinAnnotation[] | null>. */ getAllCommentAnnotations: (documentId?: string, documentParams?: object) => Observable<CommentAnnotation[] | null>; /** * To delete selected comments */ deleteSelectedComment: () => Promise<any>; /** * To enable text comment selection */ enableTextComments: () => any; /** * To disable text comment selection */ disableTextComments: () => any; /** * To allow text selection in specific elements only * @param elementIds Element ids to be allowed for text selection */ allowedElementIds: (elementIds: string[]) => any; /** * To allow adding comments in specific elements only * @param classNames Element class names to be allowed for adding comments */ allowedElementClassNames: (classNames: string[]) => any; /** * To allow adding comments in specific elements only * @param querySelectors Element query selectors to be allowed for adding comments */ allowedElementQuerySelectors: (querySelectors: string[]) => any; /** * To enable floating comment dialog */ enableFloatingCommentDialog: () => any; /** * To disable floating comment dialog */ disableFloatingCommentDialog: () => any; /** * To add comments on specific elements * * @param elementId ID of html element */ attachComment: (elementId: string) => any; /** * To open comment sidebar */ openCommentSidebar: () => any; /** * To close comment sidebar */ closeCommentSidebar: () => any; /** * To toggle comment sidebar */ toggleCommentSidebar: () => any; /** * To enable moderator mode */ enableModeratorMode: () => any; /** * To disable moderator mode */ disableModeratorMode: () => any; /** * To enable stream mode */ enableStreamMode: () => any; /** * To disable stream mode */ disableStreamMode: () => any; /** * To show sign in button in comments if user is signed out */ enableSignInButton: () => any; /** * To hide sign in button in comments if user is signed out */ disableSignInButton: () => any; /** * To enable upgrade button in comments when plan is expired */ enableUpgradeButton: () => any; /** * To disable upgrade button in comments when plan is expired */ disableUpgradeButton: () => any; /** * Subscribe to comment mode change. * * Returns Observable<boolean>. */ onCommentModeChange: () => Observable<boolean>; /** * Enable attachments feature in comments */ enableAttachments: () => any; /** * Disable attachments feature in comments */ disableAttachments: () => any; /** * Get if user is part of global contact or not. */ isUserGlobalContact: () => Observable<boolean>; /** * Enable device info in comments */ enableDeviceInfo: () => any; /** * Disable device info in comments */ disableDeviceInfo: () => any; /** * Enable comment mode to add comments. */ public enableCommentMode: () => any; /** * Disable comment mode. */ public disableCommentMode: () => any; /** * Enable persistent comment mode. */ public enablePersistentCommentMode: () => any; /** * Disable persistent comment mode. */ public disablePersistentCommentMode: () => any; /** * To show comment number */ public enableCommentIndex: () => any; /** * To hide comment number */ public disableCommentIndex: () => any; /** * To enable popover mode */ public enablePopoverMode: () => any; /** * To disable popover mode */ public disablePopoverMode: () => any; /** * To show triangle in popover mode */ public enablePopoverTriangleComponent: () => any; /** * To hide triangle in popover mode */ public disablePopoverTriangleComponent: () => any; /** * To enable dialog on hover */ public enableDialogOnHover: () => any; /** * To disable dialog on hover */ public disableDialogOnHover: () => any; /** * To enable feature to show dialog on target element click */ public enableDialogOnTargetElementClick: () => any; /** * To disable feature to show dialog on target element click */ public disableDialogOnTargetElementClick: () => any; /** * To enable feature to set priority on comments */ public enablePriority: () => any; /** * To disable feature to set priority on comments */ public disablePriority: () => any; /** * To enable feature to set status on comments */ public enableStatus: () => any; /** * To disable feature to set status on comments */ public disableStatus: () => any; /** * To enable feature to show resolve button */ public enableResolveButton: () => any; /** * To disable feature to show resolve button */ public disableResolveButton: () => any; /** * To enable feature to show ghost comments */ public enableGhostComments: () => any; /** * To disable feature to show ghost comments */ public disableGhostComments: () => any; /** * To enable feature to show ghost comments message in comment dialog and comment sidebar */ public enableGhostCommentsIndicator: () => any; /** * To disable feature to show ghost comments message in comment dialog and comment sidebar */ public disableGhostCommentsIndicator: () => any; /** * @description Sets custom status filters * @param statuses */ setCustomStatus: (statuses: CustomStatus[]) => void; /** * @description Sets custom priority filters * @param priorities */ setCustomPriority: (priorities: CustomPriority[]) => void; /** * @description Sets custom categories filters * @param categories */ setCustomCategory: (categories: CustomCategory[]) => void; /** * To enable inbox mode */ public enableInboxMode: () => any; /** * To disable inbox mode */ public disableInboxMode: () => any; /** * To enable auto categorize feature */ public enableAutoCategorize: () => any; /** * To disable auto categorize feature */ public disableAutoCategorize: () => any; /** * To enable dark mode in comments */ public enableDarkMode: () => any; /** * To disable dark mode in comments */ public disableDarkMode: () => any; /** * @description Sets the comment context provider * @param provider */ public setContextProvider: (provider: (documentId: string, location?: any) => any) => void; /** * To enable suggestion mode */ public enableSuggestionMode: () => any; /** * To disable suggestion mode */ public disableSuggestionMode: () => any; /** * To enable mobile mode */ public enableMobileMode: () => any; /** * To disable mobile mode */ public disableMobileMode: () => any; /** * To enable inline comment mode */ public enableInlineCommentMode: () => any; /** * To disable inline comment mode */ public disableInlineCommentMode: () => any; /** * To enable minimap */ public enableMinimap: () => any; /** * To disable minimap */ public disableMinimap: () => any; /** * To show comments on DOM */ public showCommentsOnDom: () => any; /** * To hide comments on DOM */ public hideCommentsOnDom: () => any; /** * To enable comment tool */ public enableCommentTool: () => any; /** * To disable comment tool */ public disableCommentTool: () => any; /** * To set total media length. */ public setTotalMediaLength: (totalMediaLength: number) => void; /** * To get documentId, location and set context data when comment is added. * * @legacy Use `AddCommentAnnotationEvent` instead */ public onCommentAdd: () => Observable<CommentAddEventData>; /** * To get data when comment is updated. * * @legacy Use action specific events instead */ public onCommentUpdate: () => Observable<CommentUpdateEventData>; /** * To add comment on selected text. */ public addCommentOnSelectedText: () => void; /** * To enable navigation when comment is clicked in sidebar. */ public enableSidebarUrlNavigation: () => void; /** * To disable navigation when comment is clicked in sidebar. */ public disableSidebarUrlNavigation: () => void; /** * To enable sidebar button on comment dialog. */ public enableSidebarButtonOnCommentDialog: () => void; /** * To disable sidebar button on comment dialog. */ public disableSidebarButtonOnCommentDialog: () => void; /** * To detect click on sidebar button on comment dialog. */ public onSidebarButtonOnCommentDialogClick: () => Observable<any>; /** * To enable reactions in comments */ public enableReactions: () => void; /** * To disable reactions in comments */ public disableReactions: () => void; /** * To set allowed recordings in comments * @param allowedRecordings "all", "none" or "audio", "video", "screen" */ public setRecordings: (allowedRecordings: string | string[]) => void; /** * To manually add comment on element. * @param data comment data */ public addCommentOnElement: (data: CommentOnElementConfig) => void; /** * To enable private comment mode to add private comments. * This mode can be enabled for admin users only. */ public enablePrivateCommentMode: () => void; /** * To disable private comment mode. */ public disablePrivateCommentMode: () => void; /** * To enable scroll to comment. */ public enableScrollToComment: () => void; /** * To disable scroll to comment. */ public disableScrollToComment: () => void; /** * To enable user mentions in comments */ public enableUserMentions: () => void; /** * To disable user mentions in comments */ public disableUserMentions: () => void; /** * To apply filters on comment sidebar. * @param filters Filters to be applied on comment sidebar */ public setCommentSidebarFilters: (filters: any) => void; /** * To set system filters operator on comment sidebar. * @param operator System filters operator */ public setSystemFiltersOperator: (operator: CommentSidebarSystemFiltersOperator) => void; /** * To enable comment pin highlighter. */ public enableCommentPinHighlighter: () => void; /** * To disable comment pin highlighter. */ public disableCommentPinHighlighter: () => void; /** * To enable deleting comment on backspace. */ public enableDeleteOnBackspace: () => void; /** * To disable deleting comment on backspace. */ public disableDeleteOnBackspace: () => void; /** * To enable hotkey. */ public enableHotkey: () => void; /** * To disable hotkey. */ public disableHotkey: () => void; /** * To enable option to show device indicator on comment pins for the pin added from different devices. */ public enableDeviceIndicatorOnCommentPins: () => void; /** * To disable option to show device indicator on comment pins for the pin added from different devices. */ public disableDeviceIndicatorOnCommentPins: () => void; /** * To get xpath of element by comment annotation id * @param annotationId Comment annotation id * @returns xpath of element */ public getElementRefByAnnotationId: (annotationId: string) => { xpath: string } | undefined; /** * To scroll to comment by annotation id * @param annotationId Comment annotation id */ public scrollToCommentByAnnotationId: (annotationId: string) => void; /** * To select comment by annotation id * @param annotationId Comment annotation id */ public selectCommentByAnnotationId: (annotationId: string) => void; /** * To enable showing recording summary in comments * @deprecated Use `enableRecordingTranscription` instead */ public enableRecordingSummary: () => void; /** * To disable showing recording summary in comments * @deprecated Use `disableRecordingTranscription` instead */ public disableRecordingSummary: () => void; /** * To enable recording transcription */ public enableRecordingTranscription: () => void; /** * To disable recording transcription */ public disableRecordingTranscription: () => void; /** * To enable recording countdown */ public enableRecordingCountdown: () => void; /** * To disable recording countdown */ public disableRecordingCountdown: () => void; /** * To set unread indicator mode * @param mode unread indicator mode */ public setUnreadIndicatorMode: (mode: string) => void; /** * To enable enter key to submit comment */ public enableEnterKeyToSubmit: () => void; /** * To disable enter key to submit comment */ public disableEnterKeyToSubmit: () => void; /** * To enable shadow DOM on comment pin */ public enablePinShadowDOM: () => void; /** * To disable shadow DOM on comment pin */ public disablePinShadowDOM: () => void; /** * To enable shadow DOM on comment dialog */ public enableDialogShadowDOM: () => void; /** * To disable shadow DOM on comment dialog */ public disableDialogShadowDOM: () => void; /** * To enable shadow DOM on comment sidebar */ public enableSidebarShadowDOM: () => void; /** * To disable shadow DOM on comment sidebar */ public disableSidebarShadowDOM: () => void; /** * To enable change detection when comment mode is on */ public enableChangeDetectionInCommentMode: () => void; /** * To disable change detection when comment mode is on */ public disableChangeDetectionInCommentMode: () => void; /** * To show resolved comments on DOM */ public showResolvedCommentsOnDom: () => void; /** * To hide resolved comments on DOM */ public hideResolvedCommentsOnDom: () => void; /** * To set custom reactions * @param reactions Reactions to be set */ public setCustomReactions: (reactions: ReactionMap) => void; /** * To detect comment selection change * @returns Observable<CommentSelectionChangeData | null> */ public onCommentSelectionChange: () => Observable<CommentSelectionChangeData | null>; /** * Subscribe to unread comments count by annotation id * * Returns Observable<UnreadCommentsCount>. */ public getUnreadCommentCountByAnnotationId: (commentAnnotationId: string) => Observable<UnreadCommentsCount>; /** * Subscribe to unread comments annotation count on current document * * Returns Observable<UnreadCommentsCount>. */ public getUnreadCommentAnnotationCountOnCurrentDocument: () => Observable<UnreadCommentsCount>; /** * Subscribe to unread comments count on current document * * Returns Observable<UnreadCommentsCount>. */ public getUnreadCommentCountOnCurrentDocument: () => Observable<UnreadCommentsCount>; /** * Subscribe to unread comments annotation count by location id * * Returns Observable<UnreadCommentsCount>. */ public getUnreadCommentAnnotationCountByLocationId: (locationId: string) => Observable<UnreadCommentsCount>; /** * Subscribe to unread comments count by location id * * Returns Observable<UnreadCommentsCount>. */ public getUnreadCommentCountByLocationId: (locationId: string) => Observable<UnreadCommentsCount>; /** * To update comment dialog position */ public updateCommentDialogPosition: () => void; /** * To enable area comment */ public enableAreaComment: () => void; /** * To disable area comment */ public disableAreaComment: () => void; /** * To set pin cursor image * @param image image base64 string */ public setPinCursorImage: (image: string) => void; /** * To add manual comment annotation. * @param config manual comment annotation config */ public addManualComment: (config: ManualCommentAnnotationConfig) => Promise<any>; /** * To add custom list dropdown on comment annotation. * @param data custom list data */ public createCustomListDataOnAnnotation: (data: CustomAnnotationDropdownData) => void; /** * To add custom list dropdown on comment. * @param data custom list data */ public createCustomListDataOnComment: (data: AutocompleteData) => void; /** * To exclude annotations by location ids from sidebar * @param locationIds Location Ids to be excluded from sidebar */ public excludeLocationIdsFromSidebar: (locationIds: string[]) => void; /** * To enable bubble on pin */ public enableBubbleOnPin: () => void; /** * To disable bubble on pin */ public disableBubbleOnPin: () => void; /** * To enable bubble on pin hover */ public enableBubbleOnPinHover: () => void; /** * To disable bubble on pin hover */ public disableBubbleOnPinHover: () => void; /** * To enable multi thread mode * @deprecated Use `enableMultiThread` instead */ public enableMultiThreadMode: () => void; /** * To disable multi thread mode * @deprecated Use `disableMultiThread` instead */ public disableMultiThreadMode: () => void; /** * To enable multi thread mode */ public enableMultiThread: () => void; /** * To disable multi thread mode */ public disableMultiThread: () => void; /** * To enable group multiple match * @deprecated Use enableGroupMatchedComments instead */ public enableGroupMultipleMatch: () => void; /** * To disable group multiple match * @deprecated Use disableGroupMatchedComments instead */ public disableGroupMultipleMatch: () => void; /** * To enable group matched comments */ public enableGroupMatchedComments: () => void; /** * To disable group matched comments */ public disableGroupMatchedComments: () => void; /** * To update context of comment annotation * @param annotationId Comment annotation id * @param context Context to be updated * @param config Update context config * @returns Promise<any> */ public updateContext: (annotationId: string, context: any, config?: UpdateContextConfig) => Promise<any>; /** * Subscribe to selected comments * @returns list of selected comments */ public getSelectedComments: () => Observable<CommentAnnotation[]>; /** * To enable delete reply confirmation */ public enableDeleteReplyConfirmation: () => void; /** * To disable delete reply confirmation */ public disableDeleteReplyConfirmation: () => void; /** * Subscribe to copy link * @returns link to be copied */ public onCopyLink: () => Observable<string>; /** * To get comment annotation by id * @param annotationId Annotation Id * @param documentId Document Id * @returns Observable<CommentAnnotation | null> */ public getCommentAnnotationById: (config: { annotationId: string, documentId?: string }) => Observable<CommentAnnotation | null>; /** * To enable collapsed comment */ public enableCollapsedComments: () => void; /** * To disable collapsed comment */ public disableCollapsedComments: () => void; /** * To enable query params comments */ public enableQueryParamsComments: () => void; /** * To disable query params comments */ public disableQueryParamsComments: () => void; /** * Subscribe to comment sidebar action button click * @returns comment sidebar data */ public onCommentSidebarActionButtonClick: () => Observable<CommentSidebarCustomActionEventData | null>; /** * To set comment sidebar data * @param data comment sidebar data */ public setCommentSidebarData: (data: CommentSidebarData[], options?: CommentSidebarDataOptions) => void; /** * Subscribe to comment sidebar init * @returns comment sidebar data */ public onCommentSidebarInit: () => Observable<CommentSidebarCustomActionEventData | null>; /** * Subscribe to comment sidebar data * @returns comment sidebar data */ public onCommentSidebarData: () => Observable<CommentSidebarCustomActionEventData | null>; /** * To set comment sidebar default actions config * @param data comment sidebar default actions config */ public setCommentSidebarDefaultCustomActions: (data: CommentSidebarCustomActionsState) => void; /** * To enable comment sidebar custom filter mode */ public enableSidebarCustomActions: () => void; /** * To disable comment sidebar custom filter mode */ public disableSidebarCustomActions: () => void; // /** // * To get comment navigation button click // * @returns comment navigation button click // */ // public onCommentNavigationButtonClick: () => Observable<any>; /** * To enable resolve status access admin only */ public enableResolveStatusAccessAdminOnly: () => void; /** * To disable resolve status access admin only */ public disableResolveStatusAccessAdminOnly: () => void; /** * To enable seen by users */ public enableSeenByUsers: () => void; /** * To disable seen by users */ public disableSeenByUsers: () => void; /** * To enable short user name */ public enableShortUserName: () => void; /** * To disable short user name */ public disableShortUserName: () => void; /** * To add comment annotation */ public addCommentAnnotation: (request: AddCommentAnnotationRequest) => Promise<AddCommentAnnotationEvent | null>; /** * To approve comment annotation */ public approveCommentAnnotation: (request: ApproveCommentAnnotationRequest) => Promise<ApproveCommentAnnotationEvent | null>; /** * To accept comment annotation */ public acceptCommentAnnotation: (request: AcceptCommentAnnotationRequest) => Promise<AcceptCommentAnnotationEvent | null>; /** * To reject comment annotation */ public rejectCommentAnnotation: (request: RejectCommentAnnotationRequest) => Promise<RejectCommentAnnotationEvent | null>; /** * To subscribe comment annotation */ public subscribeCommentAnnotation: (request: SubscribeCommentAnnotationRequest) => Promise<SubscribeCommentAnnotationEvent | null>; /** * To unsubscribe comment annotation */ public unsubscribeCommentAnnotation: (request: UnsubscribeCommentAnnotationRequest) => Promise<UnsubscribeCommentAnnotationEvent | null>; /** * To delete comment annotation */ public deleteCommentAnnotation: (request: DeleteCommentAnnotationRequest) => Promise<DeleteCommentAnnotationEvent | null>; /** * To get comment annotations */ public getCommentAnnotations: (query?: CommentRequestQuery) => Observable<GetCommentAnnotationsResponse>; /** * To get comment annotations count */ public getCommentAnnotationsCount: (query?: CommentRequestQuery) => Observable<GetCommentAnnotationsCountResponse>; /** * To assign user to comment annotation */ public assignUser: (request: AssignUserRequest) => Promise<AssignUserEvent | null>; /** * To update priority */ public updatePriority: (request: UpdatePriorityRequest) => Promise<UpdatePriorityEvent | null>; /** * To update status */ public updateStatus: (request: UpdateStatusRequest) => Promise<UpdateStatusEvent | null>; /** * To update access */ public updateAccess: (request: UpdateAccessRequest) => Promise<UpdateAccessEvent | null>; /** * To resolve comment annotation */ public resolveCommentAnnotation: (request: ResolveCommentAnnotationRequest) => Promise<any>; /** * To get link */ public getLink: (request: GetLinkRequest) => Promise<GetLinkEvent | null>; /** * To copy link */ public copyLink: (request: CopyLinkRequest) => Promise<CopyLinkEvent | null>; /** * To add comment */ public addComment: (request: AddCommentRequest) => Promise<AddCommentEvent | null>; /** * To update comment */ public updateComment: (request: UpdateCommentRequest) => Promise<UpdateCommentEvent | null>; /** * To delete comment */ public deleteComment: (request: DeleteCommentRequest) => Promise<DeleteCommentEvent | null>; /** * To get comment */ public getComment: (request: GetCommentRequest) => Promise<Comment[]>; /** * To add attachment */ public addAttachment: (request: AddAttachmentRequest) => Promise<AddAttachmentResponse[]>; /** * To get attachment */ public getAttachment: (request: GetAttachmentRequest) => Promise<Attachment[]>; /** * To delete attachment */ public deleteAttachment: (request: DeleteAttachmentRequest) => Promise<DeleteAttachmentEvent | null>; /** * To get recording */ public getRecording: (request: GetRecordingRequest) => Promise<RecordedData[]>; /** * To delete recording */ public deleteRecording: (request: DeleteRecordingRequest) => Promise<DeleteRecordingEvent | null>; /** * To add reaction */ public addReaction: (request: AddReactionRequest) => Promise<AddReactionEvent | null>; /** * To delete reaction */ public deleteReaction: (request: DeleteReactionRequest) => Promise<DeleteReactionEvent | null>; /** * To toggle reaction */ public toggleReaction: (request: ToggleReactionRequest) => Promise<ToggleReactionEvent | null>; /** * Subscribe to comment actions */ public on: <T extends keyof CommentEventTypesMap>(action: T) => Observable<CommentEventTypesMap[T]>; /** * To enable read only */ public enableReadOnly: () => void; /** * To disable read only */ public disableReadOnly: () => void; /** * To enable custom autocomplete search */ public enableCustomAutocompleteSearch: () => void; /** * To disable custom autocomplete search */ public disableCustomAutocompleteSearch: () => void; /** * To set transform context */ public setTransformContext: (transformContext: TransformContext) => void; /** * To fetch comment annotations */ public fetchCommentAnnotations: (fetchCommentAnnotationsRequest: FetchCommentAnnotationsRequest) => Promise<FetchCommentAnnotationsResponse>; /** * To enable svg as img */ public enableSvgAsImg: () => void; /** * To disable svg as img */ public disableSvgAsImg: () => void; /** * To enable full expanded */ public enableFullExpanded: () => void; /** * To disable full expanded */ public disableFullExpanded: () => void; /** * To enable comment to nearest allowed element */ public enableCommentToNearestAllowedElement: () => void; /** * To disable comment to nearest allowed element */ public disableCommentToNearestAllowedElement: () => void; /** * To enable draft mode */ public enableDraftMode: () => void; /** * To disable draft mode */ public disableDraftMode: () => void; /** * To enable filter comments on dom */ public enableFilterCommentsOnDom: () => void; /** * To disable filter comments on dom */ public disableFilterCommentsOnDom: () => void; /** * To enable reply avatars */ public enableReplyAvatars: () => void; /** * To disable reply avatars */ public disableReplyAvatars: () => void; /** * To set max reply avatars */ public setMaxReplyAvatars: (maxReplyAvatars: number) => void; /** * To set sidebar button count type */ public setSidebarButtonCountType: (type: SidebarButtonCountType) => void; /** * To enable filter ghost comments in sidebar */ public enableFilterGhostCommentsInSidebar: () => void; /** * To disable filter ghost comments in sidebar */ public disableFilterGhostCommentsInSidebar: () => void; /** * To enable link callback */ public enableLinkCallback: () => void; /** * To disable link callback */ public disableLinkCallback: () => void; /** * To enable full screen in sidebar */ public enableFullScreenInSidebar: () => void; /** * To disable full screen in sidebar */ public disableFullScreenInSidebar: () => void; /** * To set composer file attachments */ public setComposerFileAttachments: (data: UploadFileData) => void; /** * To set allowed file types */ public setAllowedFileTypes: (allowedFileTypes: string[]) => void; constructor(); /** * Subscribe to comments on the current document. * * Returns Observable<CommentPinAnnotation[] | null>. */ private _getAllCommentAnnotations; /** * To delete selected comments */ private _deleteSelectedComment; /** * To enable text comment selection */ private _enableTextComments; /** * To disable text comment selection */ private _disableTextComments; /** * To allow text selection in specific elements only * @param elementIds Element ids to be allowed for text selection */ private _allowedElementIds; /** * To allow adding comments in specific elements only * @param classNames Element class names to be allowed for adding comments */ private _allowedElementClassNames; /** * To allow adding comments in specific elements only * @param querySelectors Element query selectors to be allowed for adding comments */ private _allowedElementQuerySelectors; /** * To enable floating comment dialog */ private _enableFloatingCommentDialog; /** * To disable floating comment dialog */ private _disableFloatingCommentDialog; /** * To add comments on specific elements * * @param elementId ID of html element */ private _attachComment; /** * To open comment sidebar */ private _openCommentSidebar; /** * To close comment sidebar */ private _closeCommentSidebar; /** * To toggle comment sidebar */ private _toggleCommentSidebar; /** * To enable moderator mode */ private _enableModeratorMode; /** * To disable moderator mode */ private _disableModeratorMode; /** * To enable stream mode */ private _enableStreamMode; /** * To disable stream mode */ private _disableStreamMode; /** * To show sign in button in comments if user is signed out */ private _enableSignInButton; /** * To hide sign in button in comments if user is signed out */ private _disableSignInButton; /** * To enable upgrade button in comments when plan is expired */ private _enableUpgradeButton; /** * To disable upgrade button in comments when plan is expired */ private _disableUpgradeButton; /** * Subscribe to comment mode change. * * Returns Observable<boolean>. */ private _onCommentModeChange; /** * To enable attachments feature in comments */ private _enableAttachments; /** * To disable attachments feature in comments */ private _disableAttachments; /** * Enable device info in comments */ private _enableDeviceInfo; /** * Disable device info in comments */ private _disableDeviceInfo; /** * Enable comment mode to add comments. */ private _enableCommentMode; /** * Disable comment mode. */ private _disableCommentMode; /** * Enable persistent comment mode. */ private _enablePersistentCommentMode; /** * Disable persistent comment mode. */ private _disablePersistentCommentMode; /** * To enable comment number */ private _enableCommentIndex; /** * To disable comment number */ private _disableCommentIndex; /** * To enable popover mode */ private _enablePopoverMode; /** * To disable popover mode */ private _disablePopoverMode; /** * To show triangle in popover mode */ private _enablePopoverTriangleComponent; /** * To hide triangle in popover mode */ private _disablePopoverTriangleComponent; /** * To enable dialog on hover */ private _enableDialogOnHover; /** * To disable dialog on hover */ private _disableDialogOnHover; /** * To enable feature to show dialog on target element click */ private _enableDialogOnTargetElementClick; /** * To disable feature to show dialog on target element click */ private _disableDialogOnTargetElementClick; /** * To enable feature to set priority on comments */ private _enablePriority; /** * To disable feature to set priority on comments */ private _disablePriority; /** * To enable feature to set status on comments */ private _enableStatus; /** * To disable feature to set status on comments */ private _disableStatus; /** * To enable feature to show resolve button */ private _enableResolveButton; /** * To disable feature to show resolve button */ private _disableResolveButton; /** * To enable feature to show ghost comments */ private _enableGhostComments; /** * To disable feature to show ghost comments */ private _disableGhostComments; /** * To enable feature to show ghost comments message in comment dialog and comment sidebar */ private _enableGhostCommentsIndicator; /** * To disable feature to show ghost comments message in comment dialog and comment sidebar */ private _disableGhostCommentsIndicator; /** * @description Sets custom status filters * @param statuses */ private _setCustomStatus; /** * @description Sets custom priority filters * @param priorities */ private _setCustomPriority; /** * @description Sets custom categories filters * @param categories */ private _setCustomCategory; /** * To enable inbox mode */ private _enableInboxMode; /** * To disable inbox mode */ private _disableInboxMode; /** * To enable auto categorize feature */ private _enableAutoCategorize; /** * To disable auto categorize feature */ private _disableAutoCategorize; /** * To enable dark mode in comments */ private _enableDarkMode; /** * To disable dark mode in comments */ private _disableDarkMode; /** * @description Sets the comment context provider * @param provider */ private _setContextProvider; /** * To enable suggestion mode */ private _enableSuggestionMode; /** * To disable suggestion mode */ private _disableSuggestionMode; /** * To enable mobile mode */ private _enableMobileMode; /** * To disable mobile mode */ private _disableMobileMode; /** * To enable inline comment mode */ private _enableInlineCommentMode; /** * To disable inline comment mode */ private _disableInlineCommentMode; /** * To enable minimap */ private _enableMinimap; /** * To disable minimap */ private _disableMinimap; /** * To show comments on DOM */ private _showCommentsOnDom; /** * To hide comments on DOM */ private _hideCommentsOnDom; /** * To enable comment tool */ private _enableCommentTool; /** * To disable comment tool */ private _disableCommentTool; /** * To set total media length. */ private _setTotalMediaLength; /** * To get documentId, location and set context data when comment is added. */ private _onCommentAdd; /** * To get data when comment is updated. */ private _onCommentUpdate; /** * To add comment on selected text. */ private _addCommentOnSelectedText; /** * To enable navigation when comment is clicked in sidebar. */ private _enableSidebarUrlNavigation; /** * To disable navigation when comment is clicked in sidebar. */ private _disableSidebarUrlNavigation; /** * To enable sidebar button on comment dialog. */ private _enableSidebarButtonOnCommentDialog; /** * To disable sidebar button on comment dialog. */ private _disableSidebarButtonOnCommentDialog; /** * To detect click on sidebar button on comment dialog. */ private _onSidebarButtonOnCommentDialogClick; /** * To enable reactions in comments */ private _enableReactions; /** * To disable reactions in comments */ private _disableReactions; /** * To set allowed recordings in comments * @param allowedRecordings "all", "none" or "audio", "video", "screen" */ private _setRecordings; /** * To manually add comment on element. * @param data comment data */ private _addCommentOnElement; /** * To enable private comment mode to add private comments. * This mode can be enabled for admin users only. */ private _enablePrivateCommentMode; /** * To disable private comment mode. */ private _disablePrivateCommentMode; /** * To enable scroll to comment. */ private _enableScrollToComment; /** * To disable scroll to comment. */ private _disableScrollToComment; /** * To enable user mentions in comments */ private _enableUserMentions; /** * To disable user mentions in comments */ private _disableUserMentions; /** * To apply filters on comment sidebar. * @param filters Filters to be applied on comment sidebar */ private _setCommentSidebarFilters; /** * To set system filters operator on comment sidebar. * @param operator System filters operator */ private _setSystemFiltersOperator; /** * To enable comment pin highlighter. */ private _enableCommentPinHighlighter; /** * To disable comment pin highlighter. */ private _disableCommentPinHighlighter; /** * To enable deleting comment on backspace. */ private _enableDeleteOnBackspace; /** * To disable deleting comment on backspace. */ private _disableDeleteOnBackspace; /** * To enable hotkey. */ private _enableHotkey; /** * To disable hotkey. */ private _disableHotkey; /** * To enable option to show device indicator on comment pins for the pin added from different devices. */ private _enableDeviceIndicatorOnCommentPins; /** * To disable option to show device indicator on comment pins for the pin added from different devices. */ private _disableDeviceIndicatorOnCommentPins; /** * To get xpath of element by comment annotation id * @param annotationId Comment annotation id * @returns xpath of element */ private _getElementRefByAnnotationId; /** * To scroll to comment by annotation id * @param annotationId Comment annotation id */ private _scrollToCommentByAnnotationId; /** * To select comment by annotation id * @param annotationId Comment annotation id */ private _selectCommentByAnnotationId; /** * To enable showing recording summary in comments * @deprecated Use `enableRecordingTranscription` instead */ private _enableRecordingSummary; /** * To disable showing recording summary in comments * @deprecated Use `disableRecordingTranscription` instead */ private _disableRecordingSummary; /** * To enable recording transcription */ private _enableRecordingTranscription; /** * To disable recording transcription */ private _disableRecordingTranscription; /** * To enable recording countdown */ private _enableRecordingCountdown; /** * To disable recording countdown */ private _disableRecordingCountdown; /** * To set unread indicator mode * @param mode unread indicator mode */ private _setUnreadIndicatorMode; /** * To enable enter key to submit comment */ private _enableEnterKeyToSubmit; /** * To disable enter key to submit comment */ private _disableEnterKeyToSubmit; /** * To enable shadow DOM on comment pin */ private _enablePinShadowDOM; /** * To disable shadow DOM on comment pin */ private _disablePinShadowDOM; /** * To enable shadow DOM on comment dialog */ private _enableDialogShadowDOM; /** * To disable shadow DOM on comment dialog */ private _disableDialogShadowDOM; /** * To enable shadow DOM on comment sidebar */ private _enableSidebarShadowDOM; /** * To disable shadow DOM on comment sidebar */ private _disableSidebarShadowDOM; /** * To enable change detection when comment mode is on */ private _enableChangeDetectionInCommentMode; /** * To disable change detection when comment mode is on */ private _disableChangeDetectionInCommentMode; /** * To show resolved comments on DOM */ private _showResolvedCommentsOnDom; /** * To hide resolved comments on DOM */ private _hideResolvedCommentsOnDom; /** * To set custom reactions * @param reactions Reactions to be set */ private _setCustomReactions; /** * To detect comment selection change * @returns Observable<CommentSelectionChangeData | null> */ private _onCommentSelectionChange; /** * To get unread comments count by annotation id * @returns Observable<UnreadCommentsCount>. */ private _getUnreadCommentCountByAnnotationId; /** * To get unread comments annotation count on current document * @returns Observable<UnreadCommentsCount>. */ private _getUnreadCommentAnnotationCountOnCurrentDocument; /** * To get unread comments count on current document * @returns Observable<UnreadCommentsCount>. */ private _getUnreadCommentCountOnCurrentDocument; /** * To get unread comments annotation count by location id * @returns Observable<UnreadCommentsCount>. */ private _getUnreadCommentAnnotationCountByLocationId; /** * To get unread comments count by location id * @returns Observable<UnreadCommentsCount>. */ private _getUnreadCommentCountByLocationId; /** * To update comment dialog position */ private _updateCommentDialogPosition; /** * To enable area comment */ private _enableAreaComment; /** * To disable area comment */ private _disableAreaComment; /** * To set pin cursor image * @param image image base64 string */ private _setPinCursorImage; /** * To add manual comment annotation. * @param config manual comment annotation config */ private _addManualComment; /** * To add custom list dropdown on comment annotation. * @param data custom list data */ private _createCustomListDataOnAnnotation; /** * To add custom list dropdown on comment. * @param data custom list data */ private _createCustomListDataOnComment; /** * To exclude annotations by location ids from sidebar * @param locationIds Location Ids to be excluded from sidebar */ private _excludeLocationIdsFromSidebar; /** * To enable bubble on pin */ private _enableBubbleOnPin; /** * To disable bubble on pin */ private _disableBubbleOnPin; /** * To enable bubble on pin hover */ private _enableBubbleOnPinHover; /** * To disable bubble on pin hover */ private _disableBubbleOnPinHover; /** * To enable multi thread mode * @deprecated Use `enableMultiThread` instead */ private _enableMultiThreadMode; /** * To disable multi thread mode * @deprecated Use `disableMultiThread` instead */ private _disableMultiThreadMode; /** * To enable multi thread mode */ private _enableMultiThread; /** * To disable multi thread mode */ private _disableMultiThread; /** * To enable group multiple match * @deprecated Use enableGroupMatchedComments instead */ private _enableGroupMultipleMatch; /** * To disable group multiple match * @deprecated Use disableGroupMatchedComments instead */ private _disableGroupMultipleMatch; /** * To enable group matched comments */ private _enableGroupMatchedComments; /** * To disable group matched comments */ private _disableGroupMatchedComments; /** * To update context of comment annotation * @param annotationId Comment annotation id * @param context Context to be updated * @param config Update context config * @returns Promise<any> */ private _updateContext; /** * Subscribe to selected comments * @returns list of selected comments */ private _getSelectedComments; /** * To enable delete reply confirmation */ private _enableDeleteReplyConfirmation; /** * To disable delete reply confirmation */ private _disableDeleteReplyConfirmation; /** * Subscribe to copy link * @returns link to be copied */ private _onCopyLink; /** * To get comment annotation by id * @param config Comment annotation config * @returns Observable<CommentAnnotation | null> */ private _getCommentAnnotationById; /** * To enable collapsed comment */ private _enableCollapsedComments; /** * To disable collapsed comment */ private _disableCollapsedComments; /** * To enable query params comments */ private _enableQueryParamsComments; /** * To disable query params comments */ private _disableQueryParamsComments; /** * To enable comment sidebar action button click */ private _onCommentSidebarActionButtonClick; /** * To set comment sidebar data * @param data comment sidebar data * @param options options */ private _setCommentSidebarData; /** * To subscribe to comment sidebar init * @returns comment sidebar data */ private _onCommentSidebarInit; /** * To subscribe to comment sidebar data * @returns comment sidebar data */ private _onCommentSidebarData; /** * To set comment sidebar default actions config * @param data comment sidebar default actions config */ private _setCommentSidebarDefaultCustomActions; /** * To enable comment sidebar custom filter mode */ private _enableSidebarCustomActions; /** * To disable comment sidebar custom filter mode */ private _disableSidebarCustomActions; // /** // * To get comment navigation button click // * @returns comment navigation button click // */ // private _onCommentNavigationButtonClick; /** * To enable resolve status access admin only */ private _enableResolveStatusAccessAdminOnly; /** * To disable resolve status access admin only */ private _disableResolveStatusAccessAdminOnly; /** * To enable seen by users */ private _enableSeenByUsers; /** * To disable seen by users */ private _disableSeenByUsers; /** * To enable short user name */ private _enableShortUserName; /** * To disable short user name */ private _disableShortUserName; // actions /** * To add comment annotation */ private _addCommentAnnotation; /** * To approve comment annotation */ private _approveCommentAnnotation; /** * To accept comment annotation */ private _acceptCommentAnnotation; /** * To reject comment annotation */ private _rejectCommentAnnotation; /** * To subscribe to comment annotation */ private _subscribeCommentAnnotation; /** * To unsubscribe to comment annotation */ private _unsubscribeCommentAnnotation; /** * To delete comment annotation */ private _deleteCommentAnnotation; /** * To get comment annotations */ private _getCommentAnnotations; /** * To get comment annotations count */ private _getCommentAnnotationsCount; /** * To assign user to comment annotation */ private _assignUser; /** * To update priority */ private _updatePriority; /** * To update status */ private _updateStatus; /**