Skip to content

1.1.19

Choose a tag to compare

@shin4488 shin4488 released this 26 Oct 15:08
· 8 commits to main since this release
ccbaa87
  • Send the GA4 sort_finish event once each time a board finishes sorting (#69). Before, every time any board finished or playback started, the event was sent again for every board that had already finished, so one playback of 20 bars sent quick sort 4 times, selection sort 3 times, bubble sort 2 times and merge sort once. Pausing, resuming and pressing play after all boards finish no longer send it; a board that finishes after a shuffle or a bar count change sends it again. The event name and parameters are unchanged.
  • Make CI fail when yarn.lock does not match package.json, instead of rewriting the lockfile during the install (#67).
  • Rewrite tests that depended on loop indexes, the Math.random call count and Mantine's DOM structure so that they check the sorting steps and what the page shows (#68).

Validation: type checking, lint, formatting and 46 tests passed, including two tests that record the events passed to gtag and fail on the previous code. On the development server, each playback sent sort_finish once per algorithm, including a hidden board, and play_click, pause_click and shuffle_click were sent once per click; playback, pause, shuffle and speed behaved as before. In CI, lint and formatting, the UI tests and CodeQL passed on the merged commit.

Production: the page serves the bundle built from this commit (it contains the single sort_finish call) and loads without console errors.

Commit: ccbaa87