@khanacademy/wonder-blocks-clickable 5.0.6 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/es/index.js +7 -11
- package/dist/index.js +6 -10
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @khanacademy/wonder-blocks-clickable
|
|
2
2
|
|
|
3
|
+
## 6.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- 0199324d: Fixes keyboard tests in Dropdown and Clickable with specific key events. We now check `event.key` instead of `event.which` or `event.keyCode` to remove deprecated event properties and match the keys returned from Testing Library/userEvent.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [0199324d]
|
|
12
|
+
- @khanacademy/wonder-blocks-core@12.0.0
|
|
13
|
+
|
|
14
|
+
## 5.0.7
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- Updated dependencies [8cfaeab0]
|
|
19
|
+
- Updated dependencies [c162abb4]
|
|
20
|
+
- @khanacademy/wonder-blocks-tokens@4.1.0
|
|
21
|
+
|
|
3
22
|
## 5.0.6
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
package/dist/es/index.js
CHANGED
|
@@ -4,7 +4,7 @@ import * as React from 'react';
|
|
|
4
4
|
import { StyleSheet } from 'aphrodite';
|
|
5
5
|
import { withRouter, Link } from 'react-router-dom';
|
|
6
6
|
import { __RouterContext } from 'react-router';
|
|
7
|
-
import { addStyle } from '@khanacademy/wonder-blocks-core';
|
|
7
|
+
import { keys, addStyle } from '@khanacademy/wonder-blocks-core';
|
|
8
8
|
import { color } from '@khanacademy/wonder-blocks-tokens';
|
|
9
9
|
|
|
10
10
|
const getAppropriateTriggersForRole = role => {
|
|
@@ -44,10 +44,6 @@ const disabledHandlers = {
|
|
|
44
44
|
onKeyDown: () => void 0,
|
|
45
45
|
onKeyUp: () => void 0
|
|
46
46
|
};
|
|
47
|
-
const keyCodes = {
|
|
48
|
-
enter: 13,
|
|
49
|
-
space: 32
|
|
50
|
-
};
|
|
51
47
|
const startState = {
|
|
52
48
|
hovered: false,
|
|
53
49
|
focused: false,
|
|
@@ -140,17 +136,17 @@ class ClickableBehavior extends React.Component {
|
|
|
140
136
|
if (onKeyDown) {
|
|
141
137
|
onKeyDown(e);
|
|
142
138
|
}
|
|
143
|
-
const
|
|
139
|
+
const keyName = e.key;
|
|
144
140
|
const {
|
|
145
141
|
triggerOnEnter,
|
|
146
142
|
triggerOnSpace
|
|
147
143
|
} = getAppropriateTriggersForRole(role);
|
|
148
|
-
if (triggerOnEnter &&
|
|
144
|
+
if (triggerOnEnter && keyName === keys.enter || triggerOnSpace && keyName === keys.space) {
|
|
149
145
|
e.preventDefault();
|
|
150
146
|
this.setState({
|
|
151
147
|
pressed: true
|
|
152
148
|
});
|
|
153
|
-
} else if (!triggerOnEnter &&
|
|
149
|
+
} else if (!triggerOnEnter && keyName === keys.enter) {
|
|
154
150
|
this.enterClick = true;
|
|
155
151
|
}
|
|
156
152
|
};
|
|
@@ -162,18 +158,18 @@ class ClickableBehavior extends React.Component {
|
|
|
162
158
|
if (onKeyUp) {
|
|
163
159
|
onKeyUp(e);
|
|
164
160
|
}
|
|
165
|
-
const
|
|
161
|
+
const keyName = e.key;
|
|
166
162
|
const {
|
|
167
163
|
triggerOnEnter,
|
|
168
164
|
triggerOnSpace
|
|
169
165
|
} = getAppropriateTriggersForRole(role);
|
|
170
|
-
if (triggerOnEnter &&
|
|
166
|
+
if (triggerOnEnter && keyName === keys.enter || triggerOnSpace && keyName === keys.space) {
|
|
171
167
|
this.setState({
|
|
172
168
|
pressed: false,
|
|
173
169
|
focused: true
|
|
174
170
|
});
|
|
175
171
|
this.runCallbackAndMaybeNavigate(e);
|
|
176
|
-
} else if (!triggerOnEnter &&
|
|
172
|
+
} else if (!triggerOnEnter && keyName === keys.enter) {
|
|
177
173
|
this.enterClick = false;
|
|
178
174
|
}
|
|
179
175
|
};
|
package/dist/index.js
CHANGED
|
@@ -72,10 +72,6 @@ const disabledHandlers = {
|
|
|
72
72
|
onKeyDown: () => void 0,
|
|
73
73
|
onKeyUp: () => void 0
|
|
74
74
|
};
|
|
75
|
-
const keyCodes = {
|
|
76
|
-
enter: 13,
|
|
77
|
-
space: 32
|
|
78
|
-
};
|
|
79
75
|
const startState = {
|
|
80
76
|
hovered: false,
|
|
81
77
|
focused: false,
|
|
@@ -168,17 +164,17 @@ class ClickableBehavior extends React__namespace.Component {
|
|
|
168
164
|
if (onKeyDown) {
|
|
169
165
|
onKeyDown(e);
|
|
170
166
|
}
|
|
171
|
-
const
|
|
167
|
+
const keyName = e.key;
|
|
172
168
|
const {
|
|
173
169
|
triggerOnEnter,
|
|
174
170
|
triggerOnSpace
|
|
175
171
|
} = getAppropriateTriggersForRole(role);
|
|
176
|
-
if (triggerOnEnter &&
|
|
172
|
+
if (triggerOnEnter && keyName === wonderBlocksCore.keys.enter || triggerOnSpace && keyName === wonderBlocksCore.keys.space) {
|
|
177
173
|
e.preventDefault();
|
|
178
174
|
this.setState({
|
|
179
175
|
pressed: true
|
|
180
176
|
});
|
|
181
|
-
} else if (!triggerOnEnter &&
|
|
177
|
+
} else if (!triggerOnEnter && keyName === wonderBlocksCore.keys.enter) {
|
|
182
178
|
this.enterClick = true;
|
|
183
179
|
}
|
|
184
180
|
};
|
|
@@ -190,18 +186,18 @@ class ClickableBehavior extends React__namespace.Component {
|
|
|
190
186
|
if (onKeyUp) {
|
|
191
187
|
onKeyUp(e);
|
|
192
188
|
}
|
|
193
|
-
const
|
|
189
|
+
const keyName = e.key;
|
|
194
190
|
const {
|
|
195
191
|
triggerOnEnter,
|
|
196
192
|
triggerOnSpace
|
|
197
193
|
} = getAppropriateTriggersForRole(role);
|
|
198
|
-
if (triggerOnEnter &&
|
|
194
|
+
if (triggerOnEnter && keyName === wonderBlocksCore.keys.enter || triggerOnSpace && keyName === wonderBlocksCore.keys.space) {
|
|
199
195
|
this.setState({
|
|
200
196
|
pressed: false,
|
|
201
197
|
focused: true
|
|
202
198
|
});
|
|
203
199
|
this.runCallbackAndMaybeNavigate(e);
|
|
204
|
-
} else if (!triggerOnEnter &&
|
|
200
|
+
} else if (!triggerOnEnter && keyName === wonderBlocksCore.keys.enter) {
|
|
205
201
|
this.enterClick = false;
|
|
206
202
|
}
|
|
207
203
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@khanacademy/wonder-blocks-clickable",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "6.0.0",
|
|
4
4
|
"design": "v1",
|
|
5
5
|
"description": "Clickable component for Wonder-Blocks.",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"@babel/runtime": "^7.18.6",
|
|
20
|
-
"@khanacademy/wonder-blocks-core": "^
|
|
21
|
-
"@khanacademy/wonder-blocks-tokens": "^4.
|
|
20
|
+
"@khanacademy/wonder-blocks-core": "^12.0.0",
|
|
21
|
+
"@khanacademy/wonder-blocks-tokens": "^4.1.0"
|
|
22
22
|
},
|
|
23
23
|
"peerDependencies": {
|
|
24
24
|
"aphrodite": "^1.2.5",
|