Skip to content

feat: read the document list and detail from DEMI - #967

Merged
danieltruong merged 6 commits into
developfrom
feat-demi-document-list
Oct 14, 2026
Merged

danieltruong merged 6 commits into
developfrom
feat-demi-document-list

Conversation

@danieltruong

Copy link
Copy Markdown
Collaborator

The project documents list, the document detail page and the document resolver now read from DEMI's native /documents routes instead of eagle-api.

List:

  • Sends project (the DEMI project id), page, pageSize, count=true and q.
  • Filters use DEMI's names: milestoneId, typeId, documentAuthorTypeId, projectPhaseId, datePostedStart and datePostedEnd.
  • Only Date and Name sort. A saved sort DEMI cannot use falls back to newest first.
  • Publish, unpublish, delete and feature use the Eagle document id, and skip rows that exist only in DEMI.
  • Bulk download uses DEMI's download route.

Detail:

  • Shows DEMI's list names and file size.
  • Publish uses the Eagle id and is hidden for rows that exist only in DEMI.
  • A failed publish now resets the toggle.

"Open in tab" opens published files inline from DEMI. Unpublished files show "Open in a tab needs a published file. Use Download." in place of Open.

Still on eagle-api: the application sort screen, because DEMI documents have no sortOrder yet, and the copy-link URL.

Known gap: the old list sent documentSource: PROJECT, which DEMI does not accept yet. Until it does, the staff list may include comment attachments. A follow-up sends the filter once DEMI supports it.

Tests: list query parameters, the detail fields, and the resolver shape.

- List sends the DEMI project id, native filter names and one sort
  key (datePosted or displayName); other columns are not sortable.
- Writes (publish, unpublish, delete, feature) use the Eagle id and
  skip rows that have none.
- Detail opens published files inline through DEMI; unpublished files
  download, because a new-tab open carries no bearer.
- Hit counts and labels are gone: DEMI rows do not carry them.
- Staff list sends documentSource=PROJECT, as the old search did.
- Specs cover the project id fallback on rows, the publish guard for
  rows with no Eagle id, and featuring from the table rows.
The edit screen maps native rows with legacyDocumentRow (#968), so
detail must pass the row unchanged under the Eagle project id.
#968 must merge before this branch.
@danieltruong
danieltruong merged commit 9f0c830 into develop Oct 14, 2026
4 checks passed
@danieltruong
danieltruong deleted the feat-demi-document-list branch October 14, 2026 04:16
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.

1 participant