forked from bitcobblers/wod-wiki
-
Notifications
You must be signed in to change notification settings - Fork 0
Fix UI Timers Not Starting/Stopping Correctly (Countdown & Countup Support) #28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
… timers Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com>
Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com>
Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com>
Copilot finished work on behalf of
SergeiGolos
May 23, 2025 06:28
SergeiGolos
added a commit
that referenced
this pull request
May 23, 2025
* Fix UI Timers Not Starting/Stopping Correctly (Countdown & Countup Support) (#28) * Initial plan for issue * Fix SetClockAction and CompleteTimerAction to properly start and stop timers Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Implement timer state management and UI integration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add tests for timer functionality Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Convert Jest tests to Vitest for consistent testing framework (#30) * Initial plan for issue * Convert Jest tests to Vitest in ActionOverhaul.test.ts Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add vitest.config.ts file for test configuration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add fade-in animation for newly added efforts (#32) * Initial plan for issue * Add fade-in animation for new effort rows Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com>
SergeiGolos
added a commit
that referenced
this pull request
May 23, 2025
* Fix UI Timers Not Starting/Stopping Correctly (Countdown & Countup Support) (#28) * Initial plan for issue * Fix SetClockAction and CompleteTimerAction to properly start and stop timers Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Implement timer state management and UI integration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add tests for timer functionality Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Convert Jest tests to Vitest for consistent testing framework (#30) * Initial plan for issue * Convert Jest tests to Vitest in ActionOverhaul.test.ts Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add vitest.config.ts file for test configuration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add fade-in animation for newly added efforts (#32) * Initial plan for issue * Add fade-in animation for new effort rows Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Fix efforts rows order to show newest entries at the top (#33) * Initial plan for issue * Fix efforts rows sorting order to show newest efforts at the top Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Implement ResultSpanAggregate Interface and Aggregation Framework (#35) * Initial plan for issue * Implement ResultSpanAggregate interface and aggregation functionality Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * some unit test updates * license file added * Fix failing unit tests in core metrics and runtime modules (#39) * Initial plan for issue * Fix unit test failures Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * fixed tests --------- Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com>
SergeiGolos
added a commit
that referenced
this pull request
May 23, 2025
* Fix UI Timers Not Starting/Stopping Correctly (Countdown & Countup Support) (#28) * Initial plan for issue * Fix SetClockAction and CompleteTimerAction to properly start and stop timers Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Implement timer state management and UI integration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add tests for timer functionality Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Convert Jest tests to Vitest for consistent testing framework (#30) * Initial plan for issue * Convert Jest tests to Vitest in ActionOverhaul.test.ts Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add vitest.config.ts file for test configuration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add fade-in animation for newly added efforts (#32) * Initial plan for issue * Add fade-in animation for new effort rows Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Fix efforts rows order to show newest entries at the top (#33) * Initial plan for issue * Fix efforts rows sorting order to show newest efforts at the top Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Implement ResultSpanAggregate Interface and Aggregation Framework (#35) * Initial plan for issue * Implement ResultSpanAggregate interface and aggregation functionality Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * some unit test updates * license file added * Fix failing unit tests in core metrics and runtime modules (#39) * Initial plan for issue * Fix unit test failures Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * fixed tests --------- Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com>
SergeiGolos
added a commit
that referenced
this pull request
May 23, 2025
* Fix UI Timers Not Starting/Stopping Correctly (Countdown & Countup Support) (#28) * Initial plan for issue * Fix SetClockAction and CompleteTimerAction to properly start and stop timers Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Implement timer state management and UI integration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add tests for timer functionality Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Convert Jest tests to Vitest for consistent testing framework (#30) * Initial plan for issue * Convert Jest tests to Vitest in ActionOverhaul.test.ts Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add vitest.config.ts file for test configuration Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add fade-in animation for newly added efforts (#32) * Initial plan for issue * Add fade-in animation for new effort rows Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Fix efforts rows order to show newest entries at the top (#33) * Initial plan for issue * Fix efforts rows sorting order to show newest efforts at the top Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Implement ResultSpanAggregate Interface and Aggregation Framework (#35) * Initial plan for issue * Implement ResultSpanAggregate interface and aggregation functionality Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * some unit test updates * license file added * Fix failing unit tests in core metrics and runtime modules (#39) * Initial plan for issue * Fix unit test failures Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * fixed tests * Update GitHub Actions to conditionally run steps when secrets are available (#41) * Initial plan for issue * Add conditional secret handling for NPM_TOKEN and QODANA_TOKEN Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add conditional handling for G_TAG variable Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Make Qodana scan step conditional on QODANA_TOKEN availability Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Fix GitHub workflow errors with secrets in reusable workflows (#43) * Initial plan for issue * Fix GitHub workflow error in _code_quality.yml Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Fix GitHub workflow errors in _build-qwik.yml Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Fix conditionals for secrets in reusable workflows Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Add 'n/a' check to skip workflow steps with special token value Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Fix wiki-sync workflow by changing strategy from clone to init (#45) * Initial plan for issue * Fix wiki-sync workflow by changing strategy from clone to init Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Update .github/workflows/sync-wiki.yml * Update .github/workflows/sync-wiki.yml --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> Co-authored-by: Sergei Golos <sergei.golos@gmail.com> * Fix wiki publishing workflow by using GITHUB_TOKEN (#47) * Initial plan for issue * Update wiki publishing workflow to use GITHUB_TOKEN Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com> * Update sync-wiki.yml * Update sync-wiki.yml * Update sync-wiki.yml --------- Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: SergeiGolos <660992+SergeiGolos@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR resolves the issue with UI timers not starting or updating correctly by implementing a comprehensive timer state management system.
Problem
Solution
The implementation adds a proper timer state system with several key improvements:
Fixed core timer functionality:
SetClockAction
to use the actual timeSpans from the current blockCompleteTimerAction
to properly stop the timer before popping the blockImplemented timer state system:
SetTimerStateAction
withTimerState
enum (RUNNING_COUNTDOWN, RUNNING_COUNTUP, PAUSED, STOPPED)EffortBlock
to use appropriate timer states based on durationTimedGroupBlock
to properly manage timer states for group timersUpdated UI components:
useClockRegistry
hook to track both duration and state informationWodTimer
component to use timer state for proper renderingClockContext
to include timer state informationAdded tests and documentation:
TimerStateManagement.md
These changes ensure that all the required timer use cases are now properly supported:
Fixes #27.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.