UNPKG

feedlet-widget

Version:

Lightweight JavaScript widget for capturing user feedback and exit-intent surveys

52 lines (50 loc) 1.47 kB
import { FeedLetConfig, ContextualMarker, ViewportInfo } from './types'; export interface ThreadData { type: 'feedback' | 'contextual' | 'comment' | 'exit-survey'; position: { x: number; y: number; }; marker?: ContextualMarker; viewportInfo?: ViewportInfo; placeholder?: string; } export declare class ThreadInterface { private config; private element; private isOpen; private eventListeners; private onClose; private uploadedFiles; private screenshots; private currentThreadData; private isDragging; private dragOffset; private dragStartPosition; constructor(config: FeedLetConfig); open(data: ThreadData, onClose?: () => void): void; close(): void; on(event: string, callback: Function): void; private emit; isThreadOpen(): boolean; private createElement; private renderContextualTitle; private renderContextualInfo; private renderFeedbackTypeSelector; private renderContactSection; private renderExitSurveyIntro; private renderExitSurveyContact; private positionElement; private addStyles; private adjustColor; private attachEventListeners; private attachDragListeners; private handleFileUpload; private addFileToDisplay; private removeFile; private addScreenshotToDisplay; private removeScreenshot; private handleScreenshotSelection; private handleSubmit; destroy(): void; }