Skip to content

Allow editing in editable states ILLDEV-455 - #26

Merged
skomorokh merged 1 commit into
mainfrom
edit-illdev-455
Jul 31, 2026
Merged

Allow editing in editable states ILLDEV-455#26
skomorokh merged 1 commit into
mainfrom
edit-illdev-455

Conversation

@skomorokh

Copy link
Copy Markdown
Collaborator

Also removes a lot of mod-rs era stuff

Also removes a lot of mod-rs era stuff
Copilot AI review requested due to automatic review settings July 31, 2026 18:29

Copilot AI 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.

Pull request overview

This PR adds requester-side editing support by introducing an edit route and gating the “Edit” action based on the broker state model’s editable flag, while also removing legacy “mod-rs era” directory/tiers utilities and consolidating request-form mapping logic.

Changes:

  • Add EditRoute and show an “Edit Patron Request” action only when the request’s requester-side state is marked editable in the state model.
  • Refactor Create/Edit flows to share form mapping (brokerToForm / formToBroker) and shared-index selection handling (handleSISelect), plus a unified useOptions source for select options.
  • Remove unused directory/tiers utilities and simplify test mocks around Stripes config and Okapi ky mutation stubbing.

Reviewed changes

Copilot reviewed 21 out of 21 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
ui-rs/translations/ui-rs/en.json Adds a new edit error message key for callouts.
ui-rs/src/util/useNewDirectoryEntries.js Removes legacy directory hook (deleted).
ui-rs/src/util/tiersBySymbol.js Removes legacy tiers helper (deleted).
ui-rs/src/util/tierForRequest.js Removes legacy tier lookup helper (deleted).
ui-rs/src/util/isRequestEditable.js Adds helper to determine editability from state model + request state.
ui-rs/src/test/stripesCore.js Simplifies Stripes core mock/stub config for route tests.
ui-rs/src/test/okapiKyMock.js Simplifies post/put mocks; relies on jest per-test overrides.
ui-rs/src/routes/ViewRoute.test.js Updates fixtures and asserts Edit action visibility based on editable state.
ui-rs/src/routes/ViewRoute.js Fetches state model and conditionally renders Edit action (request app only).
ui-rs/src/routes/EditRoute.test.js Adds coverage for edit prefill, PUT payload, redirects, and error callout.
ui-rs/src/routes/EditRoute.js New edit route: fetches request + state model, gates by editability, PUTs updates.
ui-rs/src/routes/CreateRoute.test.js Updates create tests for refactored form mapping/options.
ui-rs/src/routes/CreateRoute.js Refactors create flow to use shared mapping/options; trims legacy logic.
ui-rs/src/index.js Registers the new /requests/:id/edit route (request app only).
ui-rs/src/components/ViewPatronRequest/sections/EventHistory/EventHistory.js Removes parseResponse: false option usage.
ui-rs/src/components/ViewMessageBanners.js Updates cost banner gating (but still relies on request.state.code).
ui-rs/src/components/PatronRequestForm/useOptions.js New shared select-options provider for the request form.
ui-rs/src/components/PatronRequestForm/PatronRequestForm.js Simplifies form props; removes tiers/directory-driven fields and logic.
ui-rs/src/components/PatronRequestForm/operations.js Adds operation constants for mapping behavior differences (create vs edit).
ui-rs/src/components/PatronRequestForm/handleSISelect.js Extracts shared-index select mapping into a standalone mutator.
ui-rs/src/components/PatronRequestForm/formMapping.js Centralizes broker↔form transformations, preserving undisplayed identifiers.

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

Comment thread ui-rs/translations/ui-rs/en.json
Comment thread ui-rs/src/components/ViewMessageBanners.js
@skomorokh
skomorokh merged commit 7fd49d1 into main Jul 31, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants