Skip to content

Add expiry UI for character effects#362

Merged
progressions merged 2 commits into
masterfrom
feature/remove-fight-effect-on-expiry
Jan 27, 2026
Merged

Add expiry UI for character effects#362
progressions merged 2 commits into
masterfrom
feature/remove-fight-effect-on-expiry

Conversation

@progressions

Copy link
Copy Markdown
Owner

Summary

  • Add UI for setting expiry on character effects
  • Display expiry information in effect popover

Changes

  • Add end_sequence and end_shot fields to CharacterEffect TypeScript type
  • Add expiry dropdowns to AddEffectModal (sequence and shot selectors)
  • Display expiry info in CharacterEffectsDisplay popover

Test plan

  • Manual testing: Add effect with expiry, verify UI shows expiry info
  • Verify expiry dropdowns work correctly in AddEffectModal

Fizzy card: #405
Depends on: progressions/shot-server-elixir#343

- Add end_sequence and end_shot fields to CharacterEffect type
- Add expiry dropdowns to AddEffectModal for setting when effects expire
- Display expiry info in CharacterEffectsDisplay popover
Copilot AI review requested due to automatic review settings January 27, 2026 19:06

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

Adds support in the encounter UI for setting and viewing expiry information on character effects.

Changes:

  • Extends CharacterEffect TypeScript type with end_sequence / end_shot.
  • Adds optional expiry controls (sequence/shot) to AddEffectModal.
  • Displays expiry information in the CharacterEffectsDisplay popover.

Reviewed changes

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

File Description
src/types/resources.ts Adds expiry fields to the CharacterEffect type so UI can read/write them.
src/components/encounters/effects/AddEffectModal.tsx Introduces expiry UI inputs and includes expiry values in the payload when creating effects.
src/components/encounters/effects/CharacterEffectsDisplay.tsx Formats and renders expiry text in the effect popover.

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

Comment thread src/components/encounters/effects/AddEffectModal.tsx Outdated
Comment thread src/components/encounters/effects/AddEffectModal.tsx Outdated
Comment thread src/components/encounters/effects/CharacterEffectsDisplay.tsx Outdated
- Replace dropdown selectors with numeric inputs for expiry fields
- Use handleChange for consistent onChange logic
- Cache formatExpiry result to avoid calling twice
@progressions progressions merged commit f6080c1 into master Jan 27, 2026
4 checks passed
@progressions progressions deleted the feature/remove-fight-effect-on-expiry branch January 27, 2026 19:30
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