@pingux/astro 2.0.4-alpha.0 → 2.0.4-alpha.1
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/lib/cjs/components/ListItem/ListItem.styles.js +21 -7
- package/lib/cjs/hooks/index.js +7 -0
- package/lib/cjs/hooks/useOverlappingMenuHoverState/index.js +14 -0
- package/lib/cjs/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.js +61 -0
- package/lib/cjs/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.test.js +226 -0
- package/lib/cjs/recipes/LinkedListView.stories.js +189 -139
- package/lib/cjs/recipes/ListAndPanel.stories.js +21 -46
- package/lib/components/ListItem/ListItem.styles.js +21 -7
- package/lib/hooks/index.js +1 -0
- package/lib/hooks/useOverlappingMenuHoverState/index.js +1 -0
- package/lib/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.js +53 -0
- package/lib/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.test.js +219 -0
- package/lib/recipes/LinkedListView.stories.js +191 -141
- package/lib/recipes/ListAndPanel.stories.js +21 -46
- package/package.json +1 -1
@@ -9,6 +9,7 @@ import MoreVertIcon from 'mdi-react/MoreVertIcon';
|
|
9
9
|
import PencilIcon from 'mdi-react/PencilIcon';
|
10
10
|
import PlusIcon from 'mdi-react/PlusIcon';
|
11
11
|
import { useOverlayPanelState } from '../hooks';
|
12
|
+
import useOverlappingMenuHoverState from '../hooks/useOverlappingMenuHoverState';
|
12
13
|
import { Box, Icon, IconButton, Link, ListItem, ListView, Menu, OverlayPanel, PopoverMenu, SearchField, Separator, SwitchField, Tab, Tabs, Text } from '../index';
|
13
14
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
14
15
|
export default {
|
@@ -174,46 +175,20 @@ var ListElement = function ListElement(_ref) {
|
|
174
175
|
var item = _ref.item,
|
175
176
|
isHoverable = _ref.isHoverable,
|
176
177
|
onClosePanel = _ref.onClosePanel;
|
177
|
-
var _useState = useState(false),
|
178
|
-
_useState2 = _slicedToArray(_useState, 2),
|
179
|
-
isHovered = _useState2[0],
|
180
|
-
setIsHovered = _useState2[1];
|
181
|
-
var _useState3 = useState({}),
|
182
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
183
|
-
mousePosition = _useState4[0],
|
184
|
-
setMousePosition = _useState4[1];
|
185
178
|
var listItemRef = useRef();
|
186
|
-
var
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
if (hasMovedBackToRow) {
|
195
|
-
setIsHovered(true);
|
196
|
-
return;
|
197
|
-
}
|
198
|
-
setIsHovered(false);
|
199
|
-
};
|
200
|
-
var handleMouseMove = function handleMouseMove(e) {
|
201
|
-
setMousePosition({
|
202
|
-
currentPositionX: e.clientX,
|
203
|
-
currentPositionY: e.clientY
|
204
|
-
});
|
205
|
-
};
|
206
|
-
var handleHoveEnd = function handleHoveEnd() {
|
207
|
-
setIsHovered(false);
|
208
|
-
};
|
209
|
-
var handleHoveStart = function handleHoveStart() {
|
210
|
-
setIsHovered(true);
|
211
|
-
};
|
179
|
+
var _useOverlappingMenuHo = useOverlappingMenuHoverState({
|
180
|
+
listItemRef: listItemRef
|
181
|
+
}),
|
182
|
+
handleHoverEnd = _useOverlappingMenuHo.handleHoverEnd,
|
183
|
+
handleHoverStart = _useOverlappingMenuHo.handleHoverStart,
|
184
|
+
handleMenuHoverEnd = _useOverlappingMenuHo.handleMenuHoverEnd,
|
185
|
+
handleMouseMove = _useOverlappingMenuHo.handleMouseMove,
|
186
|
+
isHovered = _useOverlappingMenuHo.isHovered;
|
212
187
|
return ___EmotionJSX(ListItem, {
|
213
188
|
isHovered: isHoverable && isHovered,
|
214
189
|
isRow: true,
|
215
|
-
onHoverEnd:
|
216
|
-
onHoverStart:
|
190
|
+
onHoverEnd: handleHoverEnd,
|
191
|
+
onHoverStart: handleHoverStart,
|
217
192
|
onMouseMove: handleMouseMove,
|
218
193
|
ref: listItemRef,
|
219
194
|
sx: sx.listElement.wrapper
|
@@ -245,9 +220,9 @@ var ListElement = function ListElement(_ref) {
|
|
245
220
|
icon: MoreVertIcon,
|
246
221
|
size: "md"
|
247
222
|
})), ___EmotionJSX(Menu, {
|
248
|
-
onAction:
|
223
|
+
onAction: handleHoverEnd,
|
249
224
|
onHoverEnd: handleMenuHoverEnd,
|
250
|
-
onHoverStart:
|
225
|
+
onHoverStart: handleHoverStart
|
251
226
|
}, ___EmotionJSX(Item, {
|
252
227
|
key: "enable"
|
253
228
|
}, "Enable user"), ___EmotionJSX(Item, {
|
@@ -263,14 +238,14 @@ var ListElement = function ListElement(_ref) {
|
|
263
238
|
}))));
|
264
239
|
};
|
265
240
|
export var Default = function Default() {
|
266
|
-
var
|
267
|
-
|
268
|
-
selectedItemId =
|
269
|
-
setSelectedItemId =
|
270
|
-
var
|
271
|
-
|
272
|
-
selectedKeys =
|
273
|
-
setSelectedKeys =
|
241
|
+
var _useState = useState(),
|
242
|
+
_useState2 = _slicedToArray(_useState, 2),
|
243
|
+
selectedItemId = _useState2[0],
|
244
|
+
setSelectedItemId = _useState2[1];
|
245
|
+
var _useState3 = useState(),
|
246
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
247
|
+
selectedKeys = _useState4[0],
|
248
|
+
setSelectedKeys = _useState4[1];
|
274
249
|
var _useOverlayPanelState = useOverlayPanelState(),
|
275
250
|
panelState = _useOverlayPanelState.state,
|
276
251
|
onPanelClose = _useOverlayPanelState.onClose;
|