Skip to content

feat: added featured in collection dropdown and modal#1767

Open
emlimlf wants to merge 5 commits intomainfrom
feat/project-collection-info
Open

feat: added featured in collection dropdown and modal#1767
emlimlf wants to merge 5 commits intomainfrom
feat/project-collection-info

Conversation

@emlimlf
Copy link
Collaborator

@emlimlf emlimlf commented Mar 23, 2026

In this PR

  • Added a display and dropdown modal for the featured in collection list
  • Implement the add to collection modal

Ticket

IN-1046

Signed-off-by: Efren Lim <elim@linuxfoundation.org>
Copilot AI review requested due to automatic review settings March 23, 2026 06:35
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds UI and data-fetching support to show which collections a project is featured in, and introduces a global “Add to collection” modal to allow adding a project to one of the user’s collections.

Changes:

  • Adds a “Featured in collection(s)” popover/dropdown to the project header (gated to LF Insights team members).
  • Introduces a global “Add to collection” modal + Pinia store to open/close it and carry modal context.
  • Extends project API/query keys and server DB middleware route allowlist to support fetching project collections.

Reviewed changes

Copilot reviewed 10 out of 11 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
frontend/server/middleware/database.ts Allows /api/project routes to receive DB pools in event context.
frontend/app/layouts/default.vue Registers the new global “add to collection” modal component at the layout level.
frontend/app/components/shared/types/tanstack.ts Adds a new TanStack query key for project-collections.
frontend/app/components/modules/project/services/project.api.service.ts Adds types + useQuery hook to fetch collections for a project.
frontend/app/components/modules/project/components/shared/header/collection-information/featured-in-collection.vue Adds popover trigger and wires project-collections query + “add to collection” action.
frontend/app/components/modules/project/components/shared/header/collection-information/featured-in-collection-dropdown.vue Implements dropdown UI listing collections and “Add to collection” CTA.
frontend/app/components/modules/project/components/shared/header.vue Displays the new featured-in-collection UI in the project header (gated).
frontend/app/components/modules/collection/store/add-to-collection.store.ts Adds Pinia store to control global modal state and payload.
frontend/app/components/modules/collection/components/add-to-collection-modal/add-to-collection-modal.vue Implements modal UI + logic to add a project into a selected collection.
frontend/app/components/modules/collection/components/add-to-collection-modal/add-to-collection-global.vue Global modal wrapper that binds store state to the modal component.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

emlimlf and others added 4 commits March 23, 2026 17:08
Signed-off-by: Efren Lim <elim@linuxfoundation.org>
Signed-off-by: Efren Lim <elim@linuxfoundation.org>
Signed-off-by: Efren Lim <elim@linuxfoundation.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants