diff --git a/.changeset/pagination-interruptible-button-guard.md b/.changeset/pagination-interruptible-button-guard.md new file mode 100644 index 0000000000000..ab285b5850455 --- /dev/null +++ b/.changeset/pagination-interruptible-button-guard.md @@ -0,0 +1,6 @@ +--- +'@astryxdesign/core': patch +--- + +[fix] `Pagination`'s `changeAction` is now interruptible — page changes run in a transition with optimistic page state, so rapid prev/next clicks advance through pages instead of being dropped. `Button`'s `clickAction` keeps its single-fire guard. +@cixzhang diff --git a/packages/core/src/Button/Button.test.tsx b/packages/core/src/Button/Button.test.tsx index 98f3d8c960e5b..6b70636c5b8d7 100644 --- a/packages/core/src/Button/Button.test.tsx +++ b/packages/core/src/Button/Button.test.tsx @@ -10,7 +10,7 @@ */ import {describe, it, expect, vi} from 'vitest'; -import {render, screen} from '@testing-library/react'; +import {render, screen, fireEvent, act} from '@testing-library/react'; import userEvent from '@testing-library/user-event'; import {Button} from './Button'; import {Badge} from '../Badge/Badge'; @@ -228,11 +228,7 @@ describe('Button', () => { order.push('clickAction'); }); render( -