Skip to content

Files page - #65

Merged
llam36 merged 17 commits into
mainfrom
long/Files-Page
Jan 31, 2026
Merged

llam36 merged 17 commits into
mainfrom
long/Files-Page

Conversation

@llam36

@llam36 llam36 commented Nov 17, 2025 •

Copy link
Copy Markdown
Collaborator

Files page

  • Add bucket and provider table with crud capabilities
Screen.Recording.2025-11-18.at.12.28.30.AM.mov

@netlify

netlify Bot commented Nov 17, 2025 •

Copy link
Copy Markdown

❌ Deploy Preview for juno-dashboard failed. Why did it fail? →

Name Link
🔨 Latest commit f976c32
🔍 Latest deploy log https://app.netlify.com/projects/juno-dashboard/deploys/691ccfaf5c538300085e77f1

@greptile-apps

greptile-apps Bot commented Nov 17, 2025

Copy link
Copy Markdown
Contributor

Disclaimer: This comment was AI-generated and is not necessarily completely accurate. Please take code comments with a grain of salt.

Greptile Summary

  • Implements file service page with file bucket table, CRUD operations, and breadcrumb navigation
  • Adds server actions for bucket/provider operations and integrates file config management
  • Creates reusable form component for adding file buckets with validation

Confidence Score: 2/5

  • This PR has critical bugs that will cause infinite toast loops and runtime errors in production.
  • Score reflects three critical issues: (1) toast errors fire on every render creating infinite loops in page.tsx:49-59 and fileBucketTable.tsx:72-76, (2) unsafe config?.id?.low access at page.tsx:93 will fail when config is null, (3) deprecated zod method. These bugs will cause poor UX and potential crashes.
  • Pay close attention to src/app/(dashboard)/projects/[projectId]/services/files/page.tsx and src/components/fileBucketTable/fileBucketTable.tsx - both have critical toast error loops and need immediate fixes.

Important Files Changed

Filename Overview
src/app/(dashboard)/projects/[projectId]/services/files/page.tsx Implements files page with project/config fetching - has critical toast error loop and unsafe config.id access
src/components/fileBucketTable/fileBucketTable.tsx File bucket table with CRUD operations - has toast error loop issue
src/components/forms/AddFileBucketForm.tsx Form for adding file buckets - uses deprecated zod .nonempty() method

Sequence Diagram

sequenceDiagram
    participant User
    participant Page as "FileServicePage"
    participant Table as "FileBucketTable"
    participant API as "Server Actions"
    participant SDK as "Juno SDK"
    
    User->>Page: "Navigate to /projects/{id}/services/files"
    Page->>API: "getProjectById(projectId)"
    API->>SDK: "Fetch project data"
    SDK-->>API: "Return project"
    API-->>Page: "Return project data"
    Page->>API: "getFileConfig(projectId)"
    API->>SDK: "Fetch file config"
    SDK-->>API: "Return config"
    API-->>Page: "Return config data"
    Page->>Table: "Render FileBucketTable with projectId and configId"
    Table->>API: "getBucketsByConfigIdAndEnv(configId, projectId)"
    API->>SDK: "Fetch buckets"
    SDK-->>API: "Return buckets"
    API-->>Table: "Return bucket list"
    Table-->>User: "Display buckets in table"
    User->>Table: "Click 'Add' button"
    Table->>User: "Show AddFileBucketForm dialog"
    User->>Table: "Submit form with name and providerName"
    Table->>API: "registerBucket(options, projectId)"
    API->>SDK: "Create bucket"
    SDK-->>API: "Return created bucket"
    API-->>Table: "Success response"
    Table->>Table: "Invalidate query cache"
    Table-->>User: "Show success toast"
Loading

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

9 files reviewed, 6 comments

Edit Code Review Agent Settings | Greptile
React with 👍 or 👎 to share your feedback on this new summary format

Comment thread src/app/(dashboard)/projects/[projectId]/services/files/page.tsx Outdated
Comment thread src/app/(dashboard)/projects/[projectId]/services/files/page.tsx Outdated
Comment thread src/components/fileBucketTable/fileBucketTable.tsx Outdated
Comment thread src/components/forms/AddFileBucketForm.tsx
Comment thread src/lib/fileProvider.ts Outdated
Comment thread src/app/(dashboard)/projects/[projectId]/services/files/page.tsx Outdated
@llam36 llam36 linked an issue Nov 18, 2025 that may be closed by this pull request
@llam36
llam36 requested a review from UZ9 November 18, 2025 05:35
@llam36
llam36 requested a review from shaply January 28, 2026 20:06

@shaply shaply left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

General flow looks good.

@llam36
llam36 merged commit 5f3d6a3 into main Jan 31, 2026
1 of 5 checks passed
shaply pushed a commit that referenced this pull request Feb 6, 2026
* feat: add and delete file config

* fix: use projectId to delete

* fix: add create config toast error

* feat: init file page

* feat: add lib methods

* fix: make configId num

* feat: create bucket table

* fix: format

* feat: provider dropdown

* fix: sizing

* feat: add provider table

* feat: allow edit provider

* fix: format

* feat: add password boxes

* fix: lint

* fix: build error

* fix: format
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.

Files Page

2 participants