Skip to content

v14.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 29 Mar 07:31
· 79 commits to main since this release
f209a6f

14.0.0 (2022-03-29)

⚠ BREAKING CHANGES

  • APIs always return a Promise.
  • pointer: skipPointerEvents has been removed.
    Use pointerEventsCheck: PointerEventsCheckLevel.Never instead.
  • upload: init parameter has been removed from userEvent.upload.
  • upload: applyAccept defaults to true.
  • The userEvent.paste API has new parameters.
  • {ctrl}, {del}, {esc} no longer describe a key. Use {Control}, {Delete}, {Escape} instead.
  • {alt}, {ctrl}, {meta}, {shift} no longer imply not releasing the key. Use {Alt>}, {Control>}, {Meta>}, {Shift>} instead.
  • init parameter has been removed from these APIs:
    • userEvent.click
    • userEvent.dblClick
    • userEvent.tripleClick
    • userEvent.hover
    • userEvent.unhover
    • userEvent.selectOptions
    • userEvent.deselectOptions
  • userEvent.upload no longer supports clickInit
    as part of its init parameter.
  • Behavior for special key descriptor {selectall} has been removed.
  • Support for keyCode property on keyboard events has been removed.
  • An error is thrown when calling userEvent.clear on an element which is not editable.
  • An error is thrown when event handlers prevent userEvent.clear from focussing/selecting content.
  • tab: The focusTrap option has been removed from userEvent.tab().
  • type: userEvent.type does no longer move the cursor
    if used with skipClick=false and without initialSelectionStart.
  • The implementation of pointer related APIs was replaced.
    This might break tests relying on unintended side-effects of the previous implementation.
  • Support for node 10 was removed as it reached its end-of-life.

Features

Bug Fixes

  • check for inherited :disabled (#872) (1a00fdf)
  • clipboard: prevent default behavior on copy/cut (#866) (5423094)
  • clipboard: prevent default behavior on paste (#862) (d3d71ac)
  • create MouseEvents per createEvent (#781) (da5b5b7)
  • export bundled ESM (#816) (1a5e2a7)
  • export types and commonjs bundle (#821) (4f56856)
  • keyboard: parse escaped bracket followed by descriptor (#814) (684451f)
  • keyboard: parse keyboard input without nesting (#793) (fafa677)
  • keyboard: set KeyboardEvent.charCode on keypress (#771) (55e194a)
  • keyboard: submit form with <button/> on [Enter] (#808) (eca157a)
  • log correct docs link for invalid key descriptors (#881) (28d6604)
  • maintain cursor position on controlled component (#765) (8f203cc)
  • pointer: blur activeElement on click outside of focusable (#834) (d64167c)
  • pointer: consider click context (#850) (ca4482a)
  • pointer: fire pointer events on disabled elements (#818) (ef2f4e5)
  • pointer: honor click handler on <label/> (#810) (2c5d9f1)
  • pointer: trigger contextmenu on mousedown (#811) (e1c4cad)
  • prepare document in setup (#753) (65be675)
  • remove deprecated keyboard features (#780) (45dc39a)
  • remove legacy modifier implementations (#783) (caea162)
  • replace pointer implementations (#754) (c04f79b)
  • reset UI selection on setter (#770) (2733d10)
  • tab: order tabIndex>0 before tabIndex=0 (#809) (1bc5945)
  • tab: remove focusTrap option (#772) (a0412c0)
  • tab: skip elements with visibility:hidden (#799) (a747b0a)
  • upload: fix order of events (#847) (214fd03)

Miscellaneous Chores