@headless-tree/core 0.0.0-20250506224638 → 0.0.0-20250506225032
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
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# @headless-tree/core
|
|
2
2
|
|
|
3
|
-
## 0.0.0-
|
|
3
|
+
## 0.0.0-20250506225032
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
+
- c9f9932: fixed tree.focusNextItem() and tree.focusPreviousItem() throwing if no item is currently focused
|
|
7
8
|
- 6ed84b4: recursive item references are filtered out when rendering (#89)
|
|
8
9
|
- 4bef2f2: fixed a bug where hotkeys involving shift may not work properly depending on the order of shift and other key inputs (#98)
|
|
9
10
|
|
|
@@ -61,14 +61,18 @@ exports.treeFeature = {
|
|
|
61
61
|
},
|
|
62
62
|
focusNextItem: ({ tree }) => {
|
|
63
63
|
var _a;
|
|
64
|
-
const
|
|
65
|
-
|
|
64
|
+
const focused = tree.getFocusedItem().getItemMeta();
|
|
65
|
+
if (!focused)
|
|
66
|
+
return;
|
|
67
|
+
const nextIndex = Math.min(focused.index + 1, tree.getItems().length - 1);
|
|
66
68
|
(_a = tree.getItems()[nextIndex]) === null || _a === void 0 ? void 0 : _a.setFocused();
|
|
67
69
|
},
|
|
68
70
|
focusPreviousItem: ({ tree }) => {
|
|
69
71
|
var _a;
|
|
70
|
-
const
|
|
71
|
-
|
|
72
|
+
const focused = tree.getFocusedItem().getItemMeta();
|
|
73
|
+
if (!focused)
|
|
74
|
+
return;
|
|
75
|
+
const nextIndex = Math.max(focused.index - 1, 0);
|
|
72
76
|
(_a = tree.getItems()[nextIndex]) === null || _a === void 0 ? void 0 : _a.setFocused();
|
|
73
77
|
},
|
|
74
78
|
updateDomFocus: ({ tree }) => {
|
|
@@ -58,14 +58,18 @@ export const treeFeature = {
|
|
|
58
58
|
},
|
|
59
59
|
focusNextItem: ({ tree }) => {
|
|
60
60
|
var _a;
|
|
61
|
-
const
|
|
62
|
-
|
|
61
|
+
const focused = tree.getFocusedItem().getItemMeta();
|
|
62
|
+
if (!focused)
|
|
63
|
+
return;
|
|
64
|
+
const nextIndex = Math.min(focused.index + 1, tree.getItems().length - 1);
|
|
63
65
|
(_a = tree.getItems()[nextIndex]) === null || _a === void 0 ? void 0 : _a.setFocused();
|
|
64
66
|
},
|
|
65
67
|
focusPreviousItem: ({ tree }) => {
|
|
66
68
|
var _a;
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
+
const focused = tree.getFocusedItem().getItemMeta();
|
|
70
|
+
if (!focused)
|
|
71
|
+
return;
|
|
72
|
+
const nextIndex = Math.max(focused.index - 1, 0);
|
|
69
73
|
(_a = tree.getItems()[nextIndex]) === null || _a === void 0 ? void 0 : _a.setFocused();
|
|
70
74
|
},
|
|
71
75
|
updateDomFocus: ({ tree }) => {
|
package/package.json
CHANGED
|
@@ -83,14 +83,16 @@ export const treeFeature: FeatureImplementation<any> = {
|
|
|
83
83
|
},
|
|
84
84
|
|
|
85
85
|
focusNextItem: ({ tree }) => {
|
|
86
|
-
const
|
|
87
|
-
|
|
86
|
+
const focused = tree.getFocusedItem().getItemMeta();
|
|
87
|
+
if (!focused) return;
|
|
88
|
+
const nextIndex = Math.min(focused.index + 1, tree.getItems().length - 1);
|
|
88
89
|
tree.getItems()[nextIndex]?.setFocused();
|
|
89
90
|
},
|
|
90
91
|
|
|
91
92
|
focusPreviousItem: ({ tree }) => {
|
|
92
|
-
const
|
|
93
|
-
|
|
93
|
+
const focused = tree.getFocusedItem().getItemMeta();
|
|
94
|
+
if (!focused) return;
|
|
95
|
+
const nextIndex = Math.max(focused.index - 1, 0);
|
|
94
96
|
tree.getItems()[nextIndex]?.setFocused();
|
|
95
97
|
},
|
|
96
98
|
|