diff --git a/backend/backend/core/models/project_details.py b/backend/backend/core/models/project_details.py index 02659de..e26804d 100644 --- a/backend/backend/core/models/project_details.py +++ b/backend/backend/core/models/project_details.py @@ -102,7 +102,7 @@ def delete(self, *args, **kwargs): project_path = models.CharField(max_length=100) profile_path = models.CharField(max_length=100) - project_schema = models.CharField(max_length=20, blank=True, null=True) + project_schema = models.CharField(max_length=1024, blank=True, null=True) # User specific access control fields created_by = models.JSONField(default=dict) created_at = models.DateTimeField(auto_now_add=True) diff --git a/frontend/src/base/components/project-list/ProjectListCard.css b/frontend/src/base/components/project-list/ProjectListCard.css index a912020..6878ebf 100644 --- a/frontend/src/base/components/project-list/ProjectListCard.css +++ b/frontend/src/base/components/project-list/ProjectListCard.css @@ -9,6 +9,7 @@ background-color: var(--project-detail-bg); position: relative; overflow: hidden; + cursor: pointer; } .project-list-card-wrapper:hover { @@ -171,7 +172,7 @@ /* ---------- body ---------- */ .project-list-card-clickable-content { - cursor: pointer; + /* clickable via parent wrapper */ } .project-list-card-detail-section { diff --git a/frontend/src/base/components/project-list/ProjectListCard.jsx b/frontend/src/base/components/project-list/ProjectListCard.jsx index 131755d..f180428 100644 --- a/frontend/src/base/components/project-list/ProjectListCard.jsx +++ b/frontend/src/base/components/project-list/ProjectListCard.jsx @@ -89,6 +89,10 @@ function ProjectListCard({ } ${isDeleting ? "project-list-card--deleting" : ""} ${ selectionMode || isSelected ? "project-list-card--selection-mode" : "" }`} + role="button" + tabIndex={0} + onClick={handleCardClick} + onKeyDown={(e) => e.key === "Enter" && handleCardClick()} > {/* deleting overlay */} {isDeleting && ( @@ -141,6 +145,7 @@ function ProjectListCard({ if (ShareProjectModal) setIsShareModalOpen(true); }} onKeyDown={(e) => { + e.stopPropagation(); if (e.key === "Enter" && ShareProjectModal) setIsShareModalOpen(true); }} @@ -167,14 +172,8 @@ function ProjectListCard({ )} - {/* ---------- body (clickable) ---------- */} -
e.key === "Enter" && handleCardClick()} - > + {/* ---------- body ---------- */} +
{/* description */}