Skip to content

Commit 0fe1fec

Browse files
authored
fix: convert modules to typescript (#609)
* fix: convert modules to typescript * fix: convert modules to typescript * test: istanbul ignore activeElement being null
1 parent 74d191c commit 0fe1fec

File tree

4 files changed

+15
-11
lines changed

4 files changed

+15
-11
lines changed

src/blur.js renamed to src/blur.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import {getActiveElement, isFocusable, eventWrapper} from './utils'
22

3-
function blur(element) {
3+
function blur(element: Element) {
44
if (!isFocusable(element)) return
55

66
const wasActive = getActiveElement(element.ownerDocument) === element

src/focus.js renamed to src/focus.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import {getActiveElement, isFocusable, eventWrapper} from './utils'
22

3-
function focus(element) {
3+
function focus(element: Element) {
44
if (!isFocusable(element)) return
55

66
const isAlreadyActive = getActiveElement(element.ownerDocument) === element

src/hover.js renamed to src/hover.ts

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,20 @@ import {fireEvent} from '@testing-library/dom'
22
import {
33
isLabelWithInternallyDisabledControl,
44
getMouseEventOptions,
5+
isDisabled,
56
} from './utils'
67

78
// includes `element`
8-
function getParentElements(element) {
9+
function getParentElements(element: Element) {
910
const parentElements = [element]
10-
let currentElement = element
11+
let currentElement: Element | null = element
1112
while ((currentElement = currentElement.parentElement) != null) {
1213
parentElements.push(currentElement)
1314
}
1415
return parentElements
1516
}
1617

17-
function hover(element, init) {
18+
function hover(element: Element, init?: MouseEventInit) {
1819
if (isLabelWithInternallyDisabledControl(element)) return
1920

2021
const parentElements = getParentElements(element).reverse()
@@ -23,32 +24,32 @@ function hover(element, init) {
2324
for (const el of parentElements) {
2425
fireEvent.pointerEnter(el, init)
2526
}
26-
if (!element.disabled) {
27+
if (!isDisabled(element)) {
2728
fireEvent.mouseOver(element, getMouseEventOptions('mouseover', init))
2829
for (const el of parentElements) {
2930
fireEvent.mouseEnter(el, getMouseEventOptions('mouseenter', init))
3031
}
3132
}
3233
fireEvent.pointerMove(element, init)
33-
if (!element.disabled) {
34+
if (!isDisabled(element)) {
3435
fireEvent.mouseMove(element, getMouseEventOptions('mousemove', init))
3536
}
3637
}
3738

38-
function unhover(element, init) {
39+
function unhover(element: Element, init?: MouseEventInit) {
3940
if (isLabelWithInternallyDisabledControl(element)) return
4041

4142
const parentElements = getParentElements(element)
4243

4344
fireEvent.pointerMove(element, init)
44-
if (!element.disabled) {
45+
if (!isDisabled(element)) {
4546
fireEvent.mouseMove(element, getMouseEventOptions('mousemove', init))
4647
}
4748
fireEvent.pointerOut(element, init)
4849
for (const el of parentElements) {
4950
fireEvent.pointerLeave(el, init)
5051
}
51-
if (!element.disabled) {
52+
if (!isDisabled(element)) {
5253
fireEvent.mouseOut(element, getMouseEventOptions('mouseout', init))
5354
for (const el of parentElements) {
5455
fireEvent.mouseLeave(el, getMouseEventOptions('mouseleave', init))

src/tab.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,10 @@ function tab({shift = false, focusTrap}: tabOptions = {}) {
143143

144144
if (continueToTab) {
145145
if (nextElement === document.body) {
146-
blur(previousElement)
146+
/* istanbul ignore else */
147+
if (previousElement) {
148+
blur(previousElement)
149+
}
147150
} else {
148151
focus(nextElement)
149152
}

0 commit comments

Comments
 (0)