Add a new comment annotation.
useAddCommentAnnotation()
Add a comment on selected text.
void
n/a
Add a comment on a specific element.
{ targetElement: object, commentData: array, status?: string }
void
n/a
Add a comment with custom positioning.
ManualCommentAnnotationConfig
void
n/a
Delete a comment annotation.
useDeleteCommentAnnotation()
Delete the currently selected comment.
void
n/a
Get the total and unread comment annotations count for specified documents.
Observable<GetCommentAnnotationsCountResponse>
useCommentAnnotationsCount()
Get count of unread comment annotations by location ID.
locationId: string
Observable<UnreadCommentsCount | null>
useUnreadCommentAnnotationCountByLocationId()
Get all the comment annotations for all the specified documents.
Observable<GetCommentAnnotationsResponse>
useGetCommentAnnotations()
Get currently selected comment annotations.
Observable<CommentAnnotation[]>
n/a
Get a specific comment annotation by ID.
{ annotationId: string, documentId?: string }
Observable<CommentAnnotation>
useCommentAnnotationById()
Get the DOM element reference for a comment annotation.
annotationId: string
string
n/a
Add a comment to a specific comment annotation.
useAddComment()
Update a comment in a specific comment annotation.
useUpdateComment()
Delete a comment from a specific comment annotation.
useDeleteComment()
Get comments from a specific comment annotation.
useGetComment()
Get the number of unread comments on the current document.
Observable<UnreadCommentsCount | null>
useUnreadCommentCountOnCurrentDocument()
Get the number of unread comments by location ID.
locationId: string
Observable<UnreadCommentsCount | null>
useUnreadCommentCountByLocationId()
Get the number of unread comments by annotation ID.
annotationId: string
Observable<number>
useUnreadCommentCountByAnnotationId()
Assign a user to a comment annotation.
useAssignUser()
Disable custom autocomplete search for contact list.
none
void
useContactUtils()
or useCommentUtils()
Enable or disable @here mentions.
void
useContactUtils()
Enable or disable user @mentions.
void
useContactUtils()
Enable custom autocomplete search for contact list.
none
void
useContactUtils()
or useCommentUtils()
Subscribe to the list of users added to organization, folder, document, user groups or the ones overwritten using the updateContactList
API.
Observable<GetContactListResponse>
useContactList()
Listen for when a contact is selected from the dropdown.
Observable<UserContactSelectedPayload>
useContactSelected()
Customize the @here label text.
label: string
void
useContactUtils()
Customize the @here description text.
description: string
void
useContactUtils()
Subscribe to a comment annotation.
useSubscribeCommentAnnotation()
Unsubscribe from a comment annotation.
useUnsubscribeCommentAnnotation()
Update the contact list for the current user session.
contacts: Array<{userId: string, name: string, email: string}>, options?: {merge: boolean}
void
useContactUtils()
Restrict which contacts are shown in the dropdown for organization users.
scopes: Array<'all' | 'organization' | 'organizationUserGroup' | 'document'>
void
n/a
Add custom metadata to a comment annotation.
{ [key: string]: any }
void
useCommentEventCallback('addCommentAnnotation')
Update custom metadata on a comment annotation.
annotationId: string, context: { [key: string]: any }, config?: { merge: boolean }
void
n/a
Add a custom dropdown list at the Comment Annotation level.
{ type: 'multi' | 'single', placeholder: string, data: Array<{ id: string, label: string }> }
void
useCommentUtils()
Add a custom dropdown list that appears when a hotkey is pressed in the comment composer.
{ hotkey: string, type: 'custom', data: Array<AutocompleteItem> }
void
useCommentUtils()
Listen for clicks on autocomplete chips in comments.
Observable<AutocompleteItem>
useAutocompleteChipClick()
Enable custom autocomplete search for custom list.
none
void
useCommentUtils()
Disable custom autocomplete search for custom list.
none
void
useCommentUtils()
Subscribe to comment events.
CommentEventType
. Here is the list of event types you can subscribe to.Observable<CommentEventTypesMap[T]>
. Here is the list of events object types you can expect to receive.useCommentEventCallback(CommentEventType)
Enable file attachments in comments.
void
n/a
Add an attachment to a specific comment annotation.
Promise<AddAttachmentResponse[]>
useAddAttachment()
Delete an attachment from a specific comment annotation.
Promise<DeleteAttachmentEvent | null>
useDeleteAttachment()
Get attachments from a specific comment annotation.
Promise<Attachment[]>
useGetAttachment()
Enable emoji reactions in comments.
void
n/a
Set custom reactions by passing a map containing reaction information.
{[reactionId: string]: {url?: string, emoji?: string}}
void
n/a
Add a reaction to a specific comment annotation.
Promise<AddReactionEvent | null>
useAddReaction()
Delete a reaction from a specific comment annotation.
Promise<DeleteReactionEvent | null>
useDeleteReaction()
Toggle a reaction for a specific comment annotation.
Promise<ToggleReactionEvent | null>
useToggleReaction()
Enable status dropdown & filters in comments.
void
n/a
Set custom statuses by passing an array of status objects.
StatusConfig[]
void
n/a
Enable resolve button on comments.
void
n/a
Update the status of a comment annotation.
Promise<UpdateStatusEvent>
useUpdateStatus()
Resolve a comment annotation.
Promise<ResolveCommentAnnotationEvent>
useResolveCommentAnnotation()
Enable priority settings in comments.
void
n/a
Set custom priorities by passing an array of priority objects.
PriorityConfig[]
void
n/a
Update the priority of a comment annotation.
Promise<UpdatePriorityEvent>
useUpdatePriority()
Delete a recording from a comment.
Promise<DeleteRecordingEvent | null>
useDeleteRecording()
Get recordings from a comment.
Promise<RecordedData[]>
useGetRecording()
Set allowed recording types (audio, video, screen).
string
void
n/a
Enable countdown before recording starts.
void
n/a
Enable AI transcription for recordings.
void
n/a
Get a link to a specific comment annotation.
useGetLink()
Copy a link to a specific comment annotation to clipboard.
useCopyLink()
Scroll the page to a comment’s location.
annotationId: string
void
n/a
Programmatically select a comment annotation.
annotationId: string
void
n/a
Subscribe to comment selection changes.
Observable<CommentSelectionChangeData>
useCommentSelectionChangeHandler()
Enable automatic scrolling to comments.
void
n/a
Set allowed element IDs for commenting.
elementIds: string[]
void
n/a
Set allowed element class names for commenting.
classNames: string[]
void
n/a
Set allowed element query selectors for commenting.
selectors: string[]
void
n/a
Enable AI auto-categorization of comments.
void
n/a
Set custom categories for comment categorization.
categories: Array<{id: string, name: string, color: string}>
void
n/a
Update position of comment dialog relative to pin.
void
n/a
Enable sidebar button on comment dialogs.
void
n/a
Subscribe to clicks on comment dialog sidebar button.
Observable<any>
useCommentDialogSidebarClickHandler()
Enable confirmation dialog before deleting replies.
void
n/a
Enable mobile-optimized comment UI.
void
n/a
Enable highlighting outline around comment pins.
void
n/a
Show comments on the DOM.
void
n/a
Enable showing comment dialog on hover.
void
n/a
Enable floating comment dialog next to pins.
void
n/a
Show resolved comments on the DOM.
void
n/a
Enable collapsing of comments in annotations.
void
n/a
Enable shortening of long user names.
void
n/a
Enable sign in button on comment dialog when user is anonymous or signed out.
void
n/a
Handle sign in button click event.
void
n/a
Enable comment index indicators on pins and sidebar.
void
n/a
Enable device type indicators in comment threads.
void
n/a
Enable device type indicators on comment pins.
void
n/a
Enable showing ghost comments on the DOM.
void
n/a
Enable ghost comment labels in the sidebar.
void
n/a
Treat SVGs as flat images instead of layered elements.
void
n/a
Enable hotkeys for comments (e.g. ‘c’ to enable comment mode).
void
n/a
Enable using Enter key to submit comments.
void
n/a
Enable deleting comments with backspace key.
void
n/a
Enable moderator mode for comments requiring approval.
void
n/a
Restrict resolve action to admin users and comment authors.
void
n/a
Approve a comment annotation in moderator mode.
ApproveCommentAnnotationRequest
Promise<ApproveCommentAnnotationEvent>
useApproveCommentAnnotation()
Accept a comment annotation in suggestion mode.
AcceptCommentAnnotationRequest
Promise<AcceptCommentAnnotationEvent>
useAcceptCommentAnnotation()
Reject a comment annotation in suggestion mode.
RejectCommentAnnotationRequest
Promise<RejectCommentAnnotationEvent>
useRejectCommentAnnotation()
Enable suggestion mode for accepting/rejecting comments.
void
n/a
Update access permissions for a comment annotation.
UpdateAccessRequest
Promise<UpdateAccessEvent>
useUpdateAccess()
Enable private comment mode for admin-only comments.
void
n/a
Enable “Seen By” feature to show which users have seen each comment.
void
n/a
Set unread indicator mode to either minimal (dot) or verbose (badge).
mode: "minimal" | "verbose"
void
n/a
Enable area comments that allow drawing rectangles with comments.
void
n/a
Enable inbox mode for comments.
void
n/a
Enable popover mode for comments.
void
n/a
Enable stream mode for comments.
void
n/a
Enable text mode for comments.
void
n/a
Enable inline comment mode to show comments under associated text.
void
n/a
Enable multithreaded comments.
void
n/a
Enable grouping of multiple comment annotations in Comment Bubble component when multiple annotations match the provided context
or targetElementId
.
void
n/a
Enable comment mode to allow attaching comments to DOM elements.
void
n/a
Subscribe to changes in comment mode state.
Observable<boolean>
useCommentModeState()
Enable/disable the comment tool button.
void
n/a
Enable DOM change detection while in comment mode.
void
n/a
Enable persistent comment mode to continue leaving comments after finishing one.
void
n/a
Set custom cursor image for comment mode.
base64ImageString: string
void
n/a
Enable minimap showing comment locations on screen edge.
void
n/a
Enable opening comment dialog on target element click in popover mode.
void
n/a
Enable triangle indicator on popover comments.
void
n/a
Set the total length of media (in frames or seconds) for the timeline.
length: number
void
n/a
Show a Comment Bubble when hovering/clicking on Comment Pin instead of Comment Dialog.
void
n/a
Show Comment Bubble on hover vs click for Comment Pins.
void
n/a
Enable custom filtering, sorting and grouping actions in the comments sidebar.
void
n/a
Set filtered/sorted/grouped data in the comments sidebar.
data: CommentSidebarData[], options?: {grouping?: boolean}
void
n/a
Listen for comment click events in the sidebar.
(event: {documentId: string, location: Object, targetElementId: string, context: Object, annotation: CommentAnnotation}) => void
void
n/a
Enable automatic URL navigation when clicking comments in the sidebar.
void
n/a
Open the comments sidebar.
void
n/a
Close the comments sidebar.
void
n/a
Toggle the comments sidebar open/closed state.
void
n/a
Filter out comments from specified locations in the sidebar.
locationIds: string[]
void
n/a
Set filters for the comments sidebar programmatically.
filters: {location?: {id: string}[], people?: ({userId: string} | {email: string})[], priority?: string[], status?: string[], category?: string[]}
void
n/a
Get the notifications data for the current user.
Observable<Notification[]>
useNotificationsData()
Get count of unread notifications by tab.
Observable<{forYou: number, all: number}>
useUnreadNotificationsCount()
Subscribe to Notification events.
NotificationEventType
. Here is the list of events you can subscribe to.Observable<NotificationEventTypesMap[T]>
. Here is the list of events object types you can expect to receive.useNotificationEventCallback(NotificationEventType)
Listen for notification click events in the Notifications Panel.
(notification: Notification) => void
void
n/a
Customize notification tab names and visibility.
tabConfig: TabConfig
void
n/a
Set maximum age in days for displayed notifications.
days: number
void
n/a
Show read notifications in the “For You” tab.
void
n/a
Mark all notifications as read globally or by tab.
options?: {tabId?: string}
void
n/a
Mark a specific notification as read.
notificationId: string
void
n/a
Enable or disable the settings feature for notifications.
void
n/a
Disable the settings feature for notifications.
void
n/a
Set the initial default configuration for notification settings.
NotificationInitialSettingsConfig[]
void
n/a
Mute all notifications across all channels for the current user.
void
n/a
Update notification settings configuration for the current user.
NotificationSettingsConfig
void
n/a
Get the current notification settings configuration for the user.
Observable<NotificationSettingsConfig>
n/a
Downloads the latest version of a recording.
recorderId: string
Promise<boolean>
n/a
Controls whether to display a countdown timer before a recording starts.
void
n/a
Controls whether to enable AI transcription for recordings.
void
n/a
Fetches recording data.
Promise<GetRecordingDataResponse>
n/a
Subscribe to Recorder events.
RecorderEventType
. Here is the list of events you can subscribe to.Observable<RecorderEventTypesMap[T]>
. Here is the list of events object types you can expect to receive.useRecorderEventCallback(RecorderEventType)
Set custom reaction emojis for inline reactions.
customReactions: { [reactionId: string]: { url?: string, emoji?: string } }
void
n/a
Get unique views by user, optionally filtered by location.
locationId?: string
Observable<ViewsByUser[]>
useUniqueViewsByUser()
Get unique views by date, optionally filtered by location.
locationId?: string
Observable<ViewsByDate[]>
useUniqueViewsByDate()
Retrieves live state data as an observable based on the provided ID.
liveStateDataId?: string
Observable<any>
n/a
Sets live state data for the provided ID and data.
liveStateDataId
: string
liveStateData
: any
config
: SetLiveStateDataConfig
any
useSetLiveStateData()
Enables the single editor mode with an optional configuration.
config?: SingleEditorConfig
void
n/a
Disables the single editor mode.
void
n/a
Checks if the current user is an editor. Returns an observable.
Observable<UserEditorAccess | null>
n/a
Retrieves the current editor information.
Observable<User | null>
n/a
Sets the current user as an editor.
void
n/a
Resets the user access.
void
n/a
Disables elements inside specific elements only when single editor mode is on.
elementIds: string[]
void
n/a
Enables the autosync state feature.
void
n/a
Initiates a request for editor access.
Observable<boolean | null>
n/a
Checks if editor access has been requested.
Observable<{ requestStatus: string, requestedBy: User } | null>
n/a
Accepts an editor access request.
void
n/a
Rejects an editor access request.
void
n/a
Cancels an editor access request.
void
n/a
Edits the current tab.
void
n/a
Sets a timeout for editor access. (in milliseconds)
timeout: number
void
n/a
Enables the transfer of editor access on timeout.
void
n/a
Enables the default UI for single editor mode.
void
n/a
Set the time it takes for a user’s cursor to be marked as inactive.
milliseconds: number
void
n/a
Set specific element IDs where cursors should be shown.
elementIds: string[]
void
n/a
Subscribe to cursor position changes for all users.
callback: (cursorUsers: CursorUser[]) => void
void
n/a
Set the time it takes for a user to be marked as inactive.
milliseconds: number
void
n/a
Include the current user in the list of presence users.
none
void
n/a
Subscribe to Presence events.
PresenceEventType
. Here is the list of events you can subscribe to.Observable<PresenceEventTypesMap[T]>
. Here is the list of events object types you can expect to receive.usePresenceEventCallback(PresenceEventType)
Subscribe to presence changes for all users.
callback: (presenceUsers: PresenceUser[]) => void
void
n/a
Handle click events on presence avatar circles.
callback: (user: User) => void
void
n/a
Subscribe to presence data.
PresenceRequestQuery
Observable<GetPresenceDataResponse>
usePresenceData()
Enable Follow Me mode globally wherever Presence is shown.
none
void
n/a
Start following a specific user.
userId: string
void
n/a
Stop following the current user.
none
void
n/a
Handle navigation events during Follow Me sessions.
callback: (pageInfo: PageInfo) => void
void
n/a
Enable the ephemeral chat feature in Huddle.
none
void
n/a
Enable Follow Me mode when clicking on a user’s avatar in Huddle.
none
void
n/a
Enable automatic tracking of user presence on default element types (input, textarea, button, contenteditable).
none
void
n/a
Enable the user indicator (avatar/name label) that appears near selected elements.
none
void
n/a
Set the position of the user indicator globally.
position: 'start' | 'end'
void
n/a
Set the type of user indicator globally.
type: 'avatar' | 'label'
void
n/a
Get the live selection data for the current document.
none
Observable<LiveSelectionData>
useLiveSelectionDataHandler()
Enable the rewriter.
enableRewriter()
n/a
void
n/a
Set up initial configurations for the Velt SDK.
apiKey: string, config?: Config
void
n/a
Subscribe to detect whether Velt is initialized.
void
Observable<boolean>
useVeltInitState()
Get the currently set organization, document and location objects.
Promise<VeltEventMetadata>
n/a
Authenticate the client’s user with the Velt SDK.
user: User, userOptions?: UserOptions
Promise<unknown>
useIdentify()
To sign out a user.
void
any
n/a
Get the current authenticated user in Velt.
void
User
n/a
Fetch folder metadata and subfolders by organizationId, folderId with pagination.
fetchFoldersRequest: FetchFoldersRequest
Observable<FetchFoldersResponse>
n/a
Initialize and subscribe to multiple Documents at once.
documents
: Document[]options?
: SetDocumentsRequestOptionsvoid
useSetDocuments()
Initialize and subscribe to a single Document.
documentId
: stringmetadata?
: DocumentMetadatavoid
useSetDocument()
Use this to unsubscribe from all documents at once.
void
void
useUnsetDocuments()
Fetch document metadata by organizationId, folderId or documentIds with pagination.
void
Observable<DocumentMetadata>
n/a
Update document metadata by organizationId, folderId or documentIds.
UpdateDocumentsRequest<T = unknown>
Promise<void>
n/a
Set the current location context. Used to define specific areas within a document.
location: Location, isAdditional?: boolean
location
: Location object with:
id
: Required unique identifierlocationName?
: Optional display name for UI componentsversion?
: Optional version object with:
id
: Version identifiername
: Version display nameisAdditional?
: Boolean to add additional locations
false
(default): Set this as the root locationtrue
: Add as additional locationvoid
useSetLocation()
Unset locations by ids or all of them if you don’t specify any parameters.
ids?: string[]
void
n/a
Subscribe to Velt core events
eventType: string
. Here is the list of events you can subscribe to.Observable<VeltEventTypesMap[T]>
. It will return one of the objects from hereuseVeltEventCallback()
Set the data providers for self hosting data.
VeltDataProvider
void
n/a
Set custom state data that can be used in Velt wireframes, Velt if and Velt data components.
Record<string, any>
void
n/a
Get the custom UI state data.
void
Observable<Record<string, any>>
n/a
To inject custom CSS within Components with Shadow DOM enabled.
customCss: CustomCss
void
n/a
To remove Velt specific content from provided html content. This is useful when using Velt on a text editor or editable element.
htmlContent: string
string
n/a
Reset the state of Velt Button components.
void
n/a
Get the Presence Element Object to access the raw presence data.
void
PresenceElement
n/a
Get the Cursor Element Object to access the raw cursor data.
void
CursorElement
n/a
Get the Comment Element Object to access the raw comment data.
void
CommentElement
useCommentUtils()
Get the Selection Object to enable/disable the feature.
void
SelectionElement
n/a
Get the Recorder Object.
void
RecorderElement
n/a
Get the Contact Object.
void
ContactElement
n/a
Get the Rewriter Object.
void
RewriterElement
n/a
Get the LiveStateSync Object.
void
LiveStateSyncElement
n/a
Get the Arrow Object.
void
ArrowElement
n/a
To check if user is allowed in provided document or not.
void
Observable<boolean>
n/a
Provide a list of features to disable. Provide an empty array to enable all the features.
features: Array<FeatureType>
void
n/a
To check if plan is expired or not.
void
Observable<boolean>
n/a
To set the language.
language: string
void
n/a
To set the translations for the language.
language: string, translations: { [key: string]: string }
void
n/a
To enable automatic translation of text in Velt Components based on User’s language preference.
void
void
n/a
Tell us about the scrollable document ids to keep track on its scroll changes.
ids: string[]
void
n/a
To remove document params from a User.
void
void
n/a