feedbacker-react
Version:
A drop-in React feedback system for component-level feedback capture during development and design review
70 lines • 2.14 kB
TypeScript
/**
* Data sanitization utilities for feedback data
* Ensures data safety and prevents XSS attacks
*/
import { Feedback, Draft, ComponentInfo, BrowserInfo } from '../types';
/**
* Sanitize a complete feedback object
*/
export declare function sanitizeFeedback(feedback: Feedback): Feedback;
/**
* Sanitize a draft object
*/
export declare function sanitizeDraft(draft: Draft): Draft;
/**
* Sanitize component info object
*/
export declare function sanitizeComponentInfo(componentInfo: ComponentInfo): ComponentInfo;
/**
* Sanitize browser info object
*/
export declare function sanitizeBrowserInfo(browserInfo: BrowserInfo): BrowserInfo;
/**
* Sanitize a basic string by removing harmful content
*/
export declare function sanitizeString(value: string, maxLength?: number): string;
/**
* Sanitize comment text with enhanced security
*/
export declare function sanitizeComment(comment: string): string;
/**
* Sanitize a URL
*/
export declare function sanitizeUrl(url: string): string;
/**
* Sanitize timestamp
*/
export declare function sanitizeTimestamp(timestamp: string): string;
/**
* Sanitize data URL (for screenshots)
*/
export declare function sanitizeDataUrl(dataUrl: string): string;
/**
* Sanitize a number with bounds
*/
export declare function sanitizeNumber(value: number, min?: number, max?: number): number;
/**
* Sanitize an array by applying a sanitizer function to each element
*/
export declare function sanitizeArray<T>(array: T[], sanitizer: (item: T) => T): T[];
/**
* Sanitize component props object
*/
export declare function sanitizeProps(props: Record<string, any>): Record<string, any>;
/**
* Sanitize metadata object
*/
export declare function sanitizeMetadata(metadata: Record<string, any>): Record<string, any>;
/**
* Remove potentially harmful HTML/JS from text
*/
export declare function stripHtmlTags(text: string): string;
/**
* Escape HTML characters in text
*/
export declare function escapeHtml(text: string): string;
/**
* Generate a safe filename from a string
*/
export declare function sanitizeFilename(filename: string): string;
//# sourceMappingURL=sanitize.d.ts.map