turash/bugulma/frontend/components/ui/HighlightedText.tsx
Damir Mukimov 6347f42e20
Consolidate repositories: Remove nested frontend .git and merge into main repository
- Remove nested git repository from bugulma/frontend/.git
- Add all frontend files to main repository tracking
- Convert from separate frontend/backend repos to unified monorepo
- Preserve all frontend code and development history as tracked files
- Eliminate nested repository complexity for simpler development workflow

This creates a proper monorepo structure with frontend and backend
coexisting in the same repository for easier development and deployment.
2025-11-25 06:02:57 +01:00

34 lines
794 B
TypeScript

import React from 'react';
interface HighlightedTextProps {
text: string;
highlight: string;
}
const HighlightedText: React.FC<HighlightedTextProps> = ({ text, highlight }) => {
if (!highlight.trim() || !text) {
return <>{text}</>;
}
// Escape regex special characters in the highlight string
const escapedHighlight = highlight.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
const regex = new RegExp(`(${escapedHighlight})`, 'gi');
const parts = text.split(regex);
return (
<>
{parts.map((part, i) =>
regex.test(part) ? (
<mark key={i} className="bg-primary/20 text-primary font-semibold rounded-sm px-0.5 py-0">
{part}
</mark>
) : (
part
)
)}
</>
);
};
export default HighlightedText;