Skip to content

feat: APP-855 implement data posts table in dashboard projects#2810

Open
alexander-astrand wants to merge 15 commits intodevfrom
feat-APP-855-implement-data-posts-table-in-dashboard-projects
Open

feat: APP-855 implement data posts table in dashboard projects#2810
alexander-astrand wants to merge 15 commits intodevfrom
feat-APP-855-implement-data-posts-table-in-dashboard-projects

Conversation

@alexander-astrand
Copy link
Contributor

@alexander-astrand alexander-astrand commented Feb 23, 2026

Description

https://regennetwork.atlassian.net/browse/APP-855


Author Checklist

All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.

I have...

  • provided a link to the relevant issue or specification
  • provided instructions on how to test
  • reviewed "Files changed" and left comments if necessary
  • confirmed all CI checks have passed

How to test

  1. Go to the dashboard, projects and then select manage a specific project. On the project page make sure the data posts page shows up and is showing the data posts for that project correctly in the table and that all the information is correct.

Reviewers Checklist

All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items
.

I have...

  • confirmed all author checklist items have been addressed
  • reviewed code correctness and readability
  • verified React components follow DRY principles
  • reviewed documentation is accurate
  • reviewed tests
  • manually tested (if applicable)

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @alexander-astrand, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces a significant new feature to the project management dashboard: a dedicated section for managing 'Data Posts'. It provides a structured table view for data posts, allowing users to see details like title, creation date, author, privacy settings, and file counts. The implementation includes robust data fetching, account resolution, and sorting capabilities, enhancing the user's ability to oversee and interact with their project's data contributions.

Highlights

  • New Data Posts Table Component: Introduced a new DataPostsTable component for displaying and managing data posts within the project dashboard, including features for sorting, pagination, and action buttons for editing drafts and deleting posts.
  • Data Fetching and Mapping: Implemented logic to fetch data posts using an infinite query, resolve associated creator account details, and map this data into a DataPost view-model for consistent display.
  • Dashboard Integration: Integrated the new Data Posts functionality into the project management dashboard by adding a dedicated 'Data Posts' tab and route, making it accessible to project managers.
  • UI Component Enhancements: Made minor updates to the UnlockIcon component by adding a viewBox attribute and enhanced the Tag component to support custom class names for its label.
Changelog
  • web-components/src/components/icons/UnlockIcon.tsx
    • Updated the SVG element to include a viewBox attribute for better scaling.
  • web-components/src/components/organisms/PostFiles/components/Tag.tsx
    • Added a labelClassName prop to allow custom styling for the tag's label.
  • web-marketplace/src/clients/regen/Regen.Routes.tsx
    • Added a new DataPosts route to the project management section.
    • Imported the ManageProject.DataPosts component using safeLazy.
  • web-marketplace/src/components/organisms/DataPostsTable/DataPostsTable.constants.ts
    • Added constants for text labels, headers, and column mappings used in the Data Posts table.
  • web-marketplace/src/components/organisms/DataPostsTable/DataPostsTable.sort.ts
    • Implemented sorting logic for data posts based on title, creation date, and author.
  • web-marketplace/src/components/organisms/DataPostsTable/DataPostsTable.tsx
    • Created the DataPostsTable component to display a list of data posts.
    • Included functionality for action buttons (edit draft, delete post) and privacy tags.
    • Integrated pagination, loading states, and an empty state for no posts.
  • web-marketplace/src/components/organisms/DataPostsTable/DataPostsTable.types.ts
    • Defined the DataPost type interface for structured data post objects.
  • web-marketplace/src/components/organisms/DataPostsTable/DataPostsTable.utils.ts
    • Added a utility function mapPostToDataPost to transform registry API Post objects into DataPost view-models.
  • web-marketplace/src/components/organisms/DataPostsTable/index.ts
    • Exported the DataPostsTable component, DataPost type, and useSortedDataPosts hook.
  • web-marketplace/src/components/organisms/DataPostsTable/useSortedDataPosts.ts
    • Implemented a useSortedDataPosts hook to manage and apply sorting to data posts.
  • web-marketplace/src/legacy-pages/Dashboard/MyProjects/ManageProject.DataPosts.tsx
    • Created the DataPosts page component for the project dashboard.
    • Implemented data fetching for posts and their creators using useInfiniteQuery and useQueries.
    • Integrated the DataPostsTable and provided necessary props for display and interaction.
  • web-marketplace/src/legacy-pages/Dashboard/MyProjects/ManageProject.tsx
    • Removed the hidden attribute for the 'Data Posts' navigation tab, making it visible in the project management menu.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@netlify
Copy link

netlify bot commented Feb 23, 2026

Deploy Preview for terrasos ready!

Name Link
🔨 Latest commit 548c1a6
🔍 Latest deploy log https://app.netlify.com/projects/terrasos/deploys/69aea7a107a3e90008a7640c
😎 Deploy Preview https://deploy-preview-2810--terrasos.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@alexander-astrand alexander-astrand changed the title feat: APP-855 scaffold data post table and fetching feat: APP-855 implement data posts table in dashboard projects Feb 23, 2026
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

The pull request successfully scaffolds the data post table and fetching logic for the project management dashboard. The implementation follows the existing patterns in the codebase, using TanStack Query for data fetching and a custom table component for display. However, there are some performance and logic issues that should be addressed, particularly regarding the memoization of sorting logic and the mismatch between infinite query fetching and table pagination.

@alexander-astrand alexander-astrand force-pushed the feat-APP-855-implement-data-posts-table-in-dashboard-projects branch from 9809010 to 4df422c Compare February 24, 2026 15:22
@alexander-astrand alexander-astrand marked this pull request as ready for review February 24, 2026 15:23
@alexander-astrand
Copy link
Contributor Author

alexander-astrand commented Feb 24, 2026

@erikalogie @S4mmyb See testing instructions.

@blushi
Copy link
Member

blushi commented Feb 24, 2026

@erikalogie @S4mmyb See testing instructions.

is this actually testable without the related server changes https://github.com/regen-network/regen-server/pull/563??

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4df422c453

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@erikalogie
Copy link
Collaborator

@alexander-astrand alexander-astrand requested a review from blushi March 3, 2026 10:52
}

// "Delete Post" is available for published posts only
if (post.published && onDeletePost) {
Copy link
Member

Choose a reason for hiding this comment

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

draft posts can actually be deleted (see PostAdminButton) I think this comment on figma is a bit misleading https://www.figma.com/design/L3VpDxt1PXTATPbSY0Z7DV/Organizations--org-member-permissions--and-project-collaborator-permissions?node-id=5895-96469&m=dev
I guess it just means that only "delete post" is available to published posts (no edit possible)

@alexander-astrand alexander-astrand requested a review from blushi March 9, 2026 12:42
@S4mmyb
Copy link
Member

S4mmyb commented Mar 9, 2026

@alexander-astrand I'm able to see data posts on the project page, but not in the data posts table. For example:
project_id=bf425c24-1bc4-11f1-83e8-022e215a294f with post iri=regen:13toVgVShFxqrpSoAnm1pGqfY16crvWHdVngyjHYaWqSPfKmcd9Mj3j.rdf

@blushi
Copy link
Member

blushi commented Mar 9, 2026

@alexander-astrand I'm able to see data posts on the project page, but not in the data posts table. For example: project_id=bf425c24-1bc4-11f1-83e8-022e215a294f with post iri=regen:13toVgVShFxqrpSoAnm1pGqfY16crvWHdVngyjHYaWqSPfKmcd9Mj3j.rdf

this is now using server side pagination so needs https://github.com/regen-network/regen-server/pull/563 before it can be tested again

@alexander-astrand
Copy link
Contributor Author

alexander-astrand commented Mar 10, 2026

@alexander-astrand I'm able to see data posts on the project page, but not in the data posts table. For example: project_id=bf425c24-1bc4-11f1-83e8-022e215a294f with post iri=regen:13toVgVShFxqrpSoAnm1pGqfY16crvWHdVngyjHYaWqSPfKmcd9Mj3j.rdf

this is now using server side pagination so needs regen-network/regen-server#563 before it can be tested again

@erikalogie @S4mmyb This is merged now so this PR is testable again!

@erikalogie
Copy link
Collaborator

erikalogie commented Mar 10, 2026

Should I be able to create a data post here on this branch as well? https://www.dropbox.com/scl/fi/1ml2klqppcrr2ir3b5jk8/Screenshot-2026-03-10-at-11.04.32-AM.png?rlkey=zqf43kep5rmpqcm4cnz42qqic&dl=0

This happened when trying to sign as myself, not as the org

@erikalogie
Copy link
Collaborator

@erikalogie
Copy link
Collaborator

I also think that the names of the data posts should link to that data post page

@erikalogie
Copy link
Collaborator

The title sorting does not appear to work correctly (it is not working alphabetically). I think we should not have the Author sorting triangle if there is only one author.

In "..." menu, it should read "Edit draft", "Delete post" with second word not capitalized.

@erikalogie
Copy link
Collaborator

The logo for my organization is not showing up as the author
Uploading image.png…

@blushi
Copy link
Member

blushi commented Mar 11, 2026

@erikalogie looks like your previous image didn't get uploaded

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.

4 participants