Remove view mode toggle and simplify filtering logic on the Req page

This commit is contained in:
gulimabr
2025-12-01 10:06:48 -03:00
parent 67efbfd317
commit 4c916316e3

View File

@@ -39,7 +39,6 @@ export default function RequirementsPage() {
const [searchQuery, setSearchQuery] = useState('') const [searchQuery, setSearchQuery] = useState('')
const [selectedGroups, setSelectedGroups] = useState<number[]>([]) const [selectedGroups, setSelectedGroups] = useState<number[]>([])
const [orderBy, setOrderBy] = useState<'Date' | 'Priority' | 'Name'>('Date') const [orderBy, setOrderBy] = useState<'Date' | 'Priority' | 'Name'>('Date')
const [viewMode, setViewMode] = useState<'grid' | 'list'>('list')
// Modal state // Modal state
const [showCreateModal, setShowCreateModal] = useState(false) const [showCreateModal, setShowCreateModal] = useState(false)
@@ -96,9 +95,8 @@ export default function RequirementsPage() {
// Filter requirements based on search and selected groups // Filter requirements based on search and selected groups
const filteredRequirements = requirements.filter(req => { const filteredRequirements = requirements.filter(req => {
const tagLabel = `${req.tag.tag_code}#${req.id}`
const matchesSearch = searchQuery === '' || const matchesSearch = searchQuery === '' ||
tagLabel.toLowerCase().includes(searchQuery.toLowerCase()) || req.tag.tag_code.toLowerCase().includes(searchQuery.toLowerCase()) ||
req.req_name.toLowerCase().includes(searchQuery.toLowerCase()) req.req_name.toLowerCase().includes(searchQuery.toLowerCase())
const matchesGroup = selectedGroups.length === 0 || const matchesGroup = selectedGroups.length === 0 ||
@@ -368,8 +366,8 @@ export default function RequirementsPage() {
</div> </div>
</div> </div>
{/* Order By and View Toggle */} {/* Order By */}
<div className="flex items-center justify-between mb-6"> <div className="flex items-center mb-6">
<div className="flex items-center gap-2"> <div className="flex items-center gap-2">
<span className="text-sm text-gray-600">Order by:</span> <span className="text-sm text-gray-600">Order by:</span>
<select <select
@@ -385,29 +383,6 @@ export default function RequirementsPage() {
Filter Filter
</button> </button>
</div> </div>
<div className="flex gap-2">
<button
onClick={() => setViewMode('grid')}
className={`px-4 py-1 border rounded text-sm font-medium ${
viewMode === 'grid'
? 'bg-gray-200 border-gray-400'
: 'border-gray-400 text-gray-700 hover:bg-gray-50'
}`}
>
Grid
</button>
<button
onClick={() => setViewMode('list')}
className={`px-4 py-1 border rounded text-sm font-medium ${
viewMode === 'list'
? 'bg-gray-200 border-gray-400'
: 'border-gray-400 text-gray-700 hover:bg-gray-50'
}`}
>
List
</button>
</div>
</div> </div>
{/* Requirements List */} {/* Requirements List */}
@@ -415,8 +390,8 @@ export default function RequirementsPage() {
{sortedRequirements.map((req) => { {sortedRequirements.map((req) => {
const primaryColor = getRequirementColor(req) const primaryColor = getRequirementColor(req)
const bgColor = lightenColor(primaryColor, 60) const bgColor = lightenColor(primaryColor, 60)
const tagLabel = `${req.tag.tag_code}#${req.id}` const tagLabel = req.tag.tag_code
const priorityNum = req.priority?.priority_num ?? 0 const priorityName = req.priority?.priority_name ?? 'None'
const validationStatus = req.validation_status || 'Not Validated' const validationStatus = req.validation_status || 'Not Validated'
return ( return (
@@ -444,7 +419,7 @@ export default function RequirementsPage() {
{/* Priority and Version */} {/* Priority and Version */}
<div className="px-6 py-4 text-right"> <div className="px-6 py-4 text-right">
<p className="text-sm text-gray-700">Priority: {priorityNum}</p> <p className="text-sm text-gray-700">Priority: {priorityName}</p>
<p className="text-sm text-gray-600">Version: {req.version}</p> <p className="text-sm text-gray-600">Version: {req.version}</p>
</div> </div>