Remove unused components and models for improved maintainability

- Deleted redundant components (`AddActionButton`, `AlertBox`, `AlertStack`, `BackButton`, `CancelButton`, and `CollapsableArea`) and related files.
- Removed unused models (`Book`, `BookSerie`, `BookTables`, `Character`, and `Chapter`) to reduce codebase clutter.
- Updated project structure and references to reflect these removals.
This commit is contained in:
natreex
2026-03-22 22:37:31 -04:00
parent e8aaef108b
commit 64ed90d993
229 changed files with 15091 additions and 21289 deletions

View File

@@ -1,7 +1,7 @@
import {ChangeEvent} from "react";
import {FontAwesomeIcon} from "@fortawesome/react-fontawesome";
import {IconDefinition} from "@fortawesome/fontawesome-svg-core";
import {SelectBoxProps} from "@/shared/interface";
import React, {ChangeEvent} from "react";
import {LucideIcon} from "lucide-react";
import {SelectBoxProps} from "@/components/form/SelectBox";
import IconButton from "@/components/ui/IconButton";
interface SearchInputWithSelectProps {
selectValue: string;
@@ -10,7 +10,7 @@ interface SearchInputWithSelectProps {
inputValue: string;
setInputValue: (value: string) => void;
inputPlaceholder?: string;
searchIcon: IconDefinition;
searchIcon: LucideIcon;
onSearch: () => void;
onKeyDown?: (e: React.KeyboardEvent<HTMLInputElement>) => void;
}
@@ -32,7 +32,7 @@ export default function SearchInputWithSelect(
<select
value={selectValue}
onChange={(e: ChangeEvent<HTMLSelectElement>) => setSelectValue(e.target.value)}
className="bg-secondary/50 text-text-primary px-4 py-2.5 rounded-xl border border-secondary/50 focus:border-primary focus:ring-4 focus:ring-primary/20 focus:bg-secondary hover:bg-secondary hover:border-secondary outline-none transition-all duration-200 font-medium"
className="input-base cursor-pointer font-medium w-auto"
>
{selectOptions.map((option: SelectBoxProps) => (
<option key={option.value} value={option.value}>
@@ -40,22 +40,19 @@ export default function SearchInputWithSelect(
</option>
))}
</select>
<div className="flex-1 relative">
<input
type="text"
value={inputValue}
onChange={(e: ChangeEvent<HTMLInputElement>) => setInputValue(e.target.value)}
placeholder={inputPlaceholder}
className="w-full bg-secondary/50 text-text-primary px-4 py-2.5 rounded-xl border border-secondary/50 focus:border-primary focus:ring-4 focus:ring-primary/20 focus:bg-secondary hover:bg-secondary hover:border-secondary placeholder:text-muted/60 outline-none transition-all duration-200 pr-12"
className="input-base pr-12"
onKeyDown={onKeyDown}
/>
<button
onClick={onSearch}
className="absolute right-0 top-0 h-full px-4 text-primary hover:text-primary-light hover:scale-110 transition-all duration-200"
>
<FontAwesomeIcon icon={searchIcon} className="w-5 h-5"/>
</button>
<div className="absolute right-1 top-1/2 -translate-y-1/2">
<IconButton icon={searchIcon} variant="ghost" onClick={onSearch}/>
</div>
</div>
</div>
);