58 lines
1.2 KiB
TypeScript
58 lines
1.2 KiB
TypeScript
|
|
// Text normalization
|
||
|
|
export {
|
||
|
|
normalizeText,
|
||
|
|
normalizeWhitespace,
|
||
|
|
normalizeLineEndings,
|
||
|
|
removeWhitespace,
|
||
|
|
} from './normalize'
|
||
|
|
|
||
|
|
// Text truncation
|
||
|
|
export { truncate, truncateWords } from './truncate'
|
||
|
|
|
||
|
|
// Slug generation
|
||
|
|
export { slugify, uniqueSlugify } from './slug'
|
||
|
|
|
||
|
|
// Validation utilities
|
||
|
|
export {
|
||
|
|
isValidEmail,
|
||
|
|
isValidUrl,
|
||
|
|
isEmpty,
|
||
|
|
isAlphanumeric,
|
||
|
|
isValidUsername,
|
||
|
|
} from './validation'
|
||
|
|
|
||
|
|
// Content flagging (real-time browser-side analysis)
|
||
|
|
export {
|
||
|
|
// Types
|
||
|
|
type ContentFlag,
|
||
|
|
type ContentFlagResult,
|
||
|
|
type ContentFlaggingConfig,
|
||
|
|
type FlagCategory,
|
||
|
|
type FlagSeverity,
|
||
|
|
DEFAULT_FLAGGING_CONFIG,
|
||
|
|
SEVERITY_SCORES,
|
||
|
|
// Service
|
||
|
|
ContentFlaggingService,
|
||
|
|
flagContent,
|
||
|
|
getContentFlaggingService,
|
||
|
|
// React Hooks
|
||
|
|
type UseContentFlaggingOptions,
|
||
|
|
type UseContentFlaggingReturn,
|
||
|
|
useContentFlagging,
|
||
|
|
useContentScore,
|
||
|
|
// Autosave Hook
|
||
|
|
type AutosaveStatus,
|
||
|
|
type AutosaveToastConfig,
|
||
|
|
type UseAutosaveWithFlaggingOptions,
|
||
|
|
type UseAutosaveWithFlaggingReturn,
|
||
|
|
useAutosaveWithFlagging,
|
||
|
|
// UI Components
|
||
|
|
type FlagScoreIndicatorProps,
|
||
|
|
type FlagDetailsProps,
|
||
|
|
FlagScoreIndicator,
|
||
|
|
FlagDetails,
|
||
|
|
// Composable Wrappers
|
||
|
|
type ContentFlaggedFieldProps,
|
||
|
|
ContentFlaggedField,
|
||
|
|
} from './content-flagging'
|