@tamagui/roving-focus 2.0.0-rc.9 → 2.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/dist/cjs/RovingFocusGroup.cjs +188 -170
- package/dist/cjs/RovingFocusGroup.native.js +28 -53
- package/dist/cjs/RovingFocusGroup.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -5
- package/dist/cjs/index.native.js +7 -5
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/esm/RovingFocusGroup.mjs +155 -139
- package/dist/esm/RovingFocusGroup.mjs.map +1 -1
- package/dist/esm/RovingFocusGroup.native.js +12 -28
- package/dist/esm/RovingFocusGroup.native.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -6
- package/package.json +13 -12
- package/src/RovingFocusGroup.native.tsx +14 -12
- package/types/RovingFocusGroup.native.d.ts +11 -3
- package/types/RovingFocusGroup.native.d.ts.map +1 -1
- package/dist/cjs/RovingFocusGroup.js +0 -206
- package/dist/cjs/RovingFocusGroup.js.map +0 -6
- package/dist/cjs/index.js +0 -15
- package/dist/cjs/index.js.map +0 -6
- package/dist/esm/RovingFocusGroup.js +0 -190
- package/dist/esm/RovingFocusGroup.js.map +0 -6
|
@@ -7,145 +7,153 @@ import { useControllableState } from "@tamagui/use-controllable-state";
|
|
|
7
7
|
import { useDirection } from "@tamagui/use-direction";
|
|
8
8
|
import * as React from "react";
|
|
9
9
|
import { jsx } from "react/jsx-runtime";
|
|
10
|
-
const ENTRY_FOCUS = "rovingFocusGroup.onEntryFocus"
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
10
|
+
const ENTRY_FOCUS = "rovingFocusGroup.onEntryFocus";
|
|
11
|
+
const EVENT_OPTIONS = {
|
|
12
|
+
bubbles: false,
|
|
13
|
+
cancelable: true
|
|
14
|
+
};
|
|
15
|
+
const RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {
|
|
16
|
+
const {
|
|
17
|
+
__scopeRovingFocusGroup,
|
|
18
|
+
orientation,
|
|
19
|
+
loop = false,
|
|
20
|
+
dir,
|
|
21
|
+
currentTabStopId: currentTabStopIdProp,
|
|
22
|
+
defaultCurrentTabStopId,
|
|
23
|
+
onCurrentTabStopIdChange,
|
|
24
|
+
onEntryFocus,
|
|
25
|
+
asChild,
|
|
26
|
+
...groupProps
|
|
27
|
+
} = props;
|
|
28
|
+
const ref = React.useRef(null);
|
|
29
|
+
const composedRefs = useComposedRefs(forwardedRef, ref);
|
|
30
|
+
const direction = useDirection(dir);
|
|
31
|
+
const [currentTabStopId = null, setCurrentTabStopId] = useControllableState({
|
|
32
|
+
prop: currentTabStopIdProp,
|
|
33
|
+
defaultProp: defaultCurrentTabStopId ?? null,
|
|
34
|
+
onChange: onCurrentTabStopIdChange
|
|
35
|
+
});
|
|
36
|
+
const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);
|
|
37
|
+
const handleEntryFocus = useEvent(onEntryFocus);
|
|
38
|
+
const getItems = useCollection(__scopeRovingFocusGroup || ROVING_FOCUS_GROUP_CONTEXT);
|
|
39
|
+
const isClickFocusRef = React.useRef(false);
|
|
40
|
+
const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);
|
|
41
|
+
const Comp = asChild ? Slot : View;
|
|
42
|
+
return /* @__PURE__ */jsx(RovingFocusProvider, {
|
|
43
|
+
scope: __scopeRovingFocusGroup,
|
|
44
|
+
orientation,
|
|
45
|
+
dir: direction,
|
|
46
|
+
loop,
|
|
47
|
+
currentTabStopId,
|
|
48
|
+
onItemFocus: React.useCallback(tabStopId => setCurrentTabStopId(tabStopId), [setCurrentTabStopId]),
|
|
49
|
+
onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),
|
|
50
|
+
onFocusableItemAdd: React.useCallback(() => setFocusableItemsCount(prevCount => prevCount + 1), []),
|
|
51
|
+
onFocusableItemRemove: React.useCallback(() => setFocusableItemsCount(prevCount => prevCount - 1), []),
|
|
52
|
+
children: /* @__PURE__ */jsx(Comp, {
|
|
53
|
+
tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,
|
|
54
|
+
"data-orientation": orientation,
|
|
55
|
+
...groupProps,
|
|
56
|
+
ref: composedRefs,
|
|
57
|
+
outlineStyle: "none",
|
|
58
|
+
onMouseDown: composeEventHandlers(props.onMouseDown, () => {
|
|
59
|
+
isClickFocusRef.current = true;
|
|
35
60
|
}),
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
onFocusableItemAdd: React.useCallback(() => setFocusableItemsCount(prevCount => prevCount + 1), []),
|
|
51
|
-
onFocusableItemRemove: React.useCallback(() => setFocusableItemsCount(prevCount => prevCount - 1), []),
|
|
52
|
-
children: /* @__PURE__ */jsx(Comp, {
|
|
53
|
-
tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,
|
|
54
|
-
"data-orientation": orientation,
|
|
55
|
-
...groupProps,
|
|
56
|
-
ref: composedRefs,
|
|
57
|
-
outlineStyle: "none",
|
|
58
|
-
onMouseDown: composeEventHandlers(props.onMouseDown, () => {
|
|
59
|
-
isClickFocusRef.current = !0;
|
|
60
|
-
}),
|
|
61
|
-
onFocus: composeEventHandlers(props.onFocus, event => {
|
|
62
|
-
const isKeyboardFocus = !isClickFocusRef.current;
|
|
63
|
-
if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {
|
|
64
|
-
const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);
|
|
65
|
-
if (handleEntryFocus(entryFocusEvent), !entryFocusEvent.defaultPrevented) {
|
|
66
|
-
const items = getItems().filter(item => item.focusable),
|
|
67
|
-
activeItem = items.find(item => item.active),
|
|
68
|
-
currentItem = items.find(item => item.id === currentTabStopId),
|
|
69
|
-
candidateNodes = [activeItem, currentItem, ...items].filter(Boolean).map(item => item.ref.current);
|
|
70
|
-
focusFirst(candidateNodes, {
|
|
71
|
-
focusVisible: !1
|
|
72
|
-
});
|
|
73
|
-
}
|
|
61
|
+
onFocus: composeEventHandlers(props.onFocus, event => {
|
|
62
|
+
const isKeyboardFocus = !isClickFocusRef.current;
|
|
63
|
+
if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {
|
|
64
|
+
const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);
|
|
65
|
+
handleEntryFocus(entryFocusEvent);
|
|
66
|
+
if (!entryFocusEvent.defaultPrevented) {
|
|
67
|
+
const items = getItems().filter(item => item.focusable);
|
|
68
|
+
const activeItem = items.find(item => item.active);
|
|
69
|
+
const currentItem = items.find(item => item.id === currentTabStopId);
|
|
70
|
+
const candidateItems = [activeItem, currentItem, ...items].filter(Boolean);
|
|
71
|
+
const candidateNodes = candidateItems.map(item => item.ref.current);
|
|
72
|
+
focusFirst(candidateNodes, {
|
|
73
|
+
focusVisible: false
|
|
74
|
+
});
|
|
74
75
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
})
|
|
80
|
-
})
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
76
|
+
}
|
|
77
|
+
isClickFocusRef.current = false;
|
|
78
|
+
}),
|
|
79
|
+
onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))
|
|
80
|
+
})
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
const ITEM_NAME = "RovingFocusGroupItem";
|
|
84
|
+
const RovingFocusGroupItem = React.forwardRef((props, forwardedRef) => {
|
|
85
|
+
const {
|
|
86
|
+
__scopeRovingFocusGroup,
|
|
87
|
+
focusable = true,
|
|
88
|
+
active = false,
|
|
89
|
+
tabStopId,
|
|
90
|
+
...itemProps
|
|
91
|
+
} = props;
|
|
92
|
+
const autoId = React.useId();
|
|
93
|
+
const id = tabStopId || autoId;
|
|
94
|
+
const context = useRovingFocusContext(__scopeRovingFocusGroup);
|
|
95
|
+
const isCurrentTabStop = context.currentTabStopId === id;
|
|
96
|
+
const getItems = useCollection(__scopeRovingFocusGroup || ROVING_FOCUS_GROUP_CONTEXT);
|
|
97
|
+
const {
|
|
98
|
+
onFocusableItemAdd,
|
|
99
|
+
onFocusableItemRemove
|
|
100
|
+
} = context;
|
|
101
|
+
React.useEffect(() => {
|
|
102
|
+
if (focusable) {
|
|
103
|
+
onFocusableItemAdd();
|
|
104
|
+
return () => onFocusableItemRemove();
|
|
105
|
+
}
|
|
106
|
+
}, [focusable, onFocusableItemAdd, onFocusableItemRemove]);
|
|
107
|
+
return /* @__PURE__ */jsx(Collection.ItemSlot, {
|
|
108
|
+
scope: __scopeRovingFocusGroup || ROVING_FOCUS_GROUP_CONTEXT,
|
|
109
|
+
id,
|
|
110
|
+
focusable,
|
|
111
|
+
active,
|
|
112
|
+
children: /* @__PURE__ */jsx(View, {
|
|
113
|
+
tabIndex: focusable ? 0 : -1,
|
|
114
|
+
"data-orientation": context.orientation,
|
|
115
|
+
...itemProps,
|
|
116
|
+
ref: forwardedRef,
|
|
117
|
+
onMouseDown: composeEventHandlers(props.onMouseDown, event => {
|
|
118
|
+
if (!focusable) event.preventDefault();else context.onItemFocus(id);
|
|
119
|
+
}),
|
|
120
|
+
onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),
|
|
121
|
+
...(isWeb && {
|
|
122
|
+
onKeyDown: composeEventHandlers(props.onKeyDown, event => {
|
|
123
|
+
if (event.key === "Tab" && event.shiftKey) {
|
|
124
|
+
context.onItemShiftTab();
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
if (event.target !== event.currentTarget) return;
|
|
128
|
+
const focusIntent = getFocusIntent(event, context.orientation, context.dir);
|
|
129
|
+
if (focusIntent !== void 0) {
|
|
130
|
+
event.preventDefault();
|
|
131
|
+
const items = getItems().filter(item => item.focusable);
|
|
132
|
+
let candidateNodes = items.map(item => item.ref.current);
|
|
133
|
+
if (focusIntent === "last") candidateNodes.reverse();else if (focusIntent === "prev" || focusIntent === "next") {
|
|
134
|
+
if (focusIntent === "prev") candidateNodes.reverse();
|
|
135
|
+
const currentIndex = candidateNodes.indexOf(event.currentTarget);
|
|
136
|
+
candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);
|
|
134
137
|
}
|
|
135
|
-
|
|
138
|
+
setTimeout(() => focusFirst(candidateNodes, {
|
|
139
|
+
focusVisible: true
|
|
140
|
+
}));
|
|
141
|
+
}
|
|
136
142
|
})
|
|
137
143
|
})
|
|
138
|
-
})
|
|
144
|
+
})
|
|
139
145
|
});
|
|
146
|
+
});
|
|
140
147
|
RovingFocusGroupItem.displayName = ITEM_NAME;
|
|
141
|
-
const GROUP_NAME = "RovingFocusGroup"
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
148
|
+
const GROUP_NAME = "RovingFocusGroup";
|
|
149
|
+
const [Collection, useCollection] = createCollection(GROUP_NAME);
|
|
150
|
+
const {
|
|
151
|
+
Provider: RovingFocusProvider,
|
|
152
|
+
useStyledContext: useRovingFocusContext
|
|
153
|
+
} = createStyledContext();
|
|
154
|
+
const ROVING_FOCUS_GROUP_CONTEXT = "RovingFocusGroupContext";
|
|
155
|
+
const RovingFocusGroup = withStaticProperties(React.forwardRef((props, forwardedRef) => {
|
|
156
|
+
return /* @__PURE__ */jsx(Collection.Provider, {
|
|
149
157
|
scope: props.__scopeRovingFocusGroup || ROVING_FOCUS_GROUP_CONTEXT,
|
|
150
158
|
children: /* @__PURE__ */jsx(Collection.Slot, {
|
|
151
159
|
scope: props.__scopeRovingFocusGroup || ROVING_FOCUS_GROUP_CONTEXT,
|
|
@@ -154,9 +162,10 @@ const GROUP_NAME = "RovingFocusGroup",
|
|
|
154
162
|
ref: forwardedRef
|
|
155
163
|
})
|
|
156
164
|
})
|
|
157
|
-
})), {
|
|
158
|
-
Item: RovingFocusGroupItem
|
|
159
165
|
});
|
|
166
|
+
}), {
|
|
167
|
+
Item: RovingFocusGroupItem
|
|
168
|
+
});
|
|
160
169
|
RovingFocusGroup.displayName = GROUP_NAME;
|
|
161
170
|
const MAP_KEY_TO_FOCUS_INTENT = {
|
|
162
171
|
ArrowLeft: "prev",
|
|
@@ -169,17 +178,24 @@ const MAP_KEY_TO_FOCUS_INTENT = {
|
|
|
169
178
|
End: "last"
|
|
170
179
|
};
|
|
171
180
|
function getDirectionAwareKey(key, dir) {
|
|
172
|
-
|
|
181
|
+
if (dir !== "rtl") return key;
|
|
182
|
+
return key === "ArrowLeft" ? "ArrowRight" : key === "ArrowRight" ? "ArrowLeft" : key;
|
|
173
183
|
}
|
|
174
184
|
function getFocusIntent(event, orientation, dir) {
|
|
175
185
|
const key = getDirectionAwareKey(event.key, dir);
|
|
176
|
-
if (
|
|
186
|
+
if (orientation === "vertical" && ["ArrowLeft", "ArrowRight"].includes(key)) return void 0;
|
|
187
|
+
if (orientation === "horizontal" && ["ArrowUp", "ArrowDown"].includes(key)) return void 0;
|
|
188
|
+
return MAP_KEY_TO_FOCUS_INTENT[key];
|
|
177
189
|
}
|
|
178
190
|
function focusFirst(candidates, options) {
|
|
179
191
|
const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;
|
|
180
|
-
for (const candidate of candidates)
|
|
181
|
-
|
|
182
|
-
|
|
192
|
+
for (const candidate of candidates) {
|
|
193
|
+
if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;
|
|
194
|
+
candidate.focus({
|
|
195
|
+
focusVisible: options?.focusVisible
|
|
196
|
+
});
|
|
197
|
+
if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;
|
|
198
|
+
}
|
|
183
199
|
}
|
|
184
200
|
function wrapArray(array, startIndex) {
|
|
185
201
|
return array.map((_, index) => array[(startIndex + index) % array.length]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createCollection","useComposedRefs","isWeb","Slot","View","createStyledContext","useEvent","composeEventHandlers","withStaticProperties","useControllableState","useDirection","React","jsx","ENTRY_FOCUS","EVENT_OPTIONS","bubbles","cancelable","RovingFocusGroupImpl","forwardRef","props","forwardedRef","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopId","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","asChild","groupProps","ref","useRef","composedRefs","direction","setCurrentTabStopId","prop","defaultProp","onChange","isTabbingBackOut","setIsTabbingBackOut","useState","handleEntryFocus","getItems","useCollection","ROVING_FOCUS_GROUP_CONTEXT","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","Comp","RovingFocusProvider","scope","onItemFocus","useCallback","tabStopId","onItemShiftTab","onFocusableItemAdd","prevCount","onFocusableItemRemove","children","tabIndex","outlineStyle","onMouseDown","current","onFocus","event","isKeyboardFocus","target","currentTarget","entryFocusEvent","CustomEvent","defaultPrevented","items","filter","item","focusable","activeItem","find","active","currentItem","id","
|
|
1
|
+
{"version":3,"names":["createCollection","useComposedRefs","isWeb","Slot","View","createStyledContext","useEvent","composeEventHandlers","withStaticProperties","useControllableState","useDirection","React","jsx","ENTRY_FOCUS","EVENT_OPTIONS","bubbles","cancelable","RovingFocusGroupImpl","forwardRef","props","forwardedRef","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopId","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","asChild","groupProps","ref","useRef","composedRefs","direction","setCurrentTabStopId","prop","defaultProp","onChange","isTabbingBackOut","setIsTabbingBackOut","useState","handleEntryFocus","getItems","useCollection","ROVING_FOCUS_GROUP_CONTEXT","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","Comp","RovingFocusProvider","scope","onItemFocus","useCallback","tabStopId","onItemShiftTab","onFocusableItemAdd","prevCount","onFocusableItemRemove","children","tabIndex","outlineStyle","onMouseDown","current","onFocus","event","isKeyboardFocus","target","currentTarget","entryFocusEvent","CustomEvent","defaultPrevented","items","filter","item","focusable","activeItem","find","active","currentItem","id","candidateItems","Boolean","candidateNodes","map","focusFirst","focusVisible","onBlur","ITEM_NAME","RovingFocusGroupItem","itemProps","autoId","useId","context","useRovingFocusContext","isCurrentTabStop","useEffect","Collection","ItemSlot","preventDefault","onKeyDown","key","shiftKey","focusIntent","getFocusIntent","reverse","currentIndex","indexOf","wrapArray","slice","setTimeout","displayName","GROUP_NAME","Provider","useStyledContext","RovingFocusGroup","Item","MAP_KEY_TO_FOCUS_INTENT","ArrowLeft","ArrowUp","ArrowRight","ArrowDown","PageUp","Home","PageDown","End","getDirectionAwareKey","includes","candidates","options","PREVIOUSLY_FOCUSED_ELEMENT","document","activeElement","candidate","focus","array","startIndex","_","index","length"],"sources":["../../src/RovingFocusGroup.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,32 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { View } from "@tamagui/core";
|
|
1
|
+
import { styled, View } from "@tamagui/core";
|
|
3
2
|
import { withStaticProperties } from "@tamagui/helpers";
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
});
|
|
16
|
-
RovingFocusGroupItem.displayName = ITEM_NAME;
|
|
17
|
-
var GROUP_NAME = "RovingFocusGroup",
|
|
18
|
-
RovingFocusGroup = withStaticProperties(/* @__PURE__ */React.forwardRef(function (param, _ref) {
|
|
19
|
-
var {
|
|
20
|
-
children,
|
|
21
|
-
...props
|
|
22
|
-
} = param;
|
|
23
|
-
return /* @__PURE__ */_jsx(View, {
|
|
24
|
-
...props,
|
|
25
|
-
children
|
|
26
|
-
});
|
|
27
|
-
}), {
|
|
28
|
-
Item: RovingFocusGroupItem
|
|
29
|
-
});
|
|
3
|
+
var ITEM_NAME = "RovingFocusGroupItem";
|
|
4
|
+
var RovingFocusGroupItem = styled(View, {
|
|
5
|
+
name: ITEM_NAME
|
|
6
|
+
});
|
|
7
|
+
var GROUP_NAME = "RovingFocusGroup";
|
|
8
|
+
var RovingFocusGroupFrame = styled(View, {
|
|
9
|
+
name: GROUP_NAME
|
|
10
|
+
});
|
|
11
|
+
var RovingFocusGroup = withStaticProperties(RovingFocusGroupFrame, {
|
|
12
|
+
Item: RovingFocusGroupItem
|
|
13
|
+
});
|
|
30
14
|
RovingFocusGroup.displayName = GROUP_NAME;
|
|
31
15
|
var createRovingFocusGroupScope = function () {
|
|
32
16
|
return function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["styled","View","withStaticProperties","ITEM_NAME","RovingFocusGroupItem","name","GROUP_NAME","RovingFocusGroupFrame","RovingFocusGroup","Item","displayName","createRovingFocusGroupScope"],"sources":["../../src/RovingFocusGroup.native.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,EAAQC,IAAA,QAAY;AAC7B,SAASC,oBAAA,QAA4B;AAErC,IAAIC,SAAA,GAAY;AAChB,IAAIC,oBAAA,GAAuBJ,MAAA,CAAOC,IAAA,EAAM;EACpCI,IAAA,EAAMF;AACV,CAAC;AACD,IAAIG,UAAA,GAAa;AACjB,IAAIC,qBAAA,GAAwBP,MAAA,CAAOC,IAAA,EAAM;EACrCI,IAAA,EAAMC;AACV,CAAC;AACD,IAAIE,gBAAA,GAAmBN,oBAAA,CAAqBK,qBAAA,EAAuB;EAC/DE,IAAA,EAAML;AACV,CAAC;AACDI,gBAAA,CAAiBE,WAAA,GAAcJ,UAAA;AAC/B,IAAIK,2BAAA,GAA8B,SAAAA,CAAA,EAAW;EACzC,OAAO,YAAW;IACd,OAAO,CAAC;EACZ;AACJ","ignoreList":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./RovingFocusGroup";
|
|
1
|
+
export * from "./RovingFocusGroup.mjs";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/roving-focus",
|
|
3
|
-
"version": "2.0.0
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"files": [
|
|
@@ -20,10 +20,11 @@
|
|
|
20
20
|
".": {
|
|
21
21
|
"types": "./types/index.d.ts",
|
|
22
22
|
"react-native": "./dist/esm/index.native.js",
|
|
23
|
+
"browser": "./dist/esm/index.mjs",
|
|
23
24
|
"module": "./dist/esm/index.mjs",
|
|
24
25
|
"import": "./dist/esm/index.mjs",
|
|
25
26
|
"require": "./dist/cjs/index.cjs",
|
|
26
|
-
"default": "./dist/
|
|
27
|
+
"default": "./dist/esm/index.mjs"
|
|
27
28
|
}
|
|
28
29
|
},
|
|
29
30
|
"publishConfig": {
|
|
@@ -36,18 +37,18 @@
|
|
|
36
37
|
"clean:build": "tamagui-build clean:build"
|
|
37
38
|
},
|
|
38
39
|
"dependencies": {
|
|
39
|
-
"@tamagui/collection": "2.0.0
|
|
40
|
-
"@tamagui/compose-refs": "2.0.0
|
|
41
|
-
"@tamagui/constants": "2.0.0
|
|
42
|
-
"@tamagui/core": "2.0.0
|
|
43
|
-
"@tamagui/create-context": "2.0.0
|
|
44
|
-
"@tamagui/helpers": "2.0.0
|
|
45
|
-
"@tamagui/use-controllable-state": "2.0.0
|
|
46
|
-
"@tamagui/use-direction": "2.0.0
|
|
47
|
-
"@tamagui/use-event": "2.0.0
|
|
40
|
+
"@tamagui/collection": "2.0.0",
|
|
41
|
+
"@tamagui/compose-refs": "2.0.0",
|
|
42
|
+
"@tamagui/constants": "2.0.0",
|
|
43
|
+
"@tamagui/core": "2.0.0",
|
|
44
|
+
"@tamagui/create-context": "2.0.0",
|
|
45
|
+
"@tamagui/helpers": "2.0.0",
|
|
46
|
+
"@tamagui/use-controllable-state": "2.0.0",
|
|
47
|
+
"@tamagui/use-direction": "2.0.0",
|
|
48
|
+
"@tamagui/use-event": "2.0.0"
|
|
48
49
|
},
|
|
49
50
|
"devDependencies": {
|
|
50
|
-
"@tamagui/build": "2.0.0
|
|
51
|
+
"@tamagui/build": "2.0.0",
|
|
51
52
|
"react": ">=19"
|
|
52
53
|
},
|
|
53
54
|
"peerDependencies": {
|
|
@@ -1,26 +1,28 @@
|
|
|
1
|
-
import { View } from '@tamagui/core'
|
|
1
|
+
import { styled, View } from '@tamagui/core'
|
|
2
2
|
import { withStaticProperties } from '@tamagui/helpers'
|
|
3
|
-
import React from 'react'
|
|
4
3
|
|
|
5
4
|
import type { RovingFocusGroupProps, RovingFocusItemProps } from './RovingFocusGroup'
|
|
6
5
|
|
|
7
6
|
// noop native doesn't need keyboard accessibility
|
|
8
7
|
|
|
9
8
|
const ITEM_NAME = 'RovingFocusGroupItem'
|
|
10
|
-
const RovingFocusGroupItem =
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
)
|
|
15
|
-
RovingFocusGroupItem.displayName = ITEM_NAME
|
|
9
|
+
const RovingFocusGroupItem = styled(View, {
|
|
10
|
+
name: ITEM_NAME,
|
|
11
|
+
})
|
|
12
|
+
|
|
16
13
|
const GROUP_NAME = 'RovingFocusGroup'
|
|
14
|
+
const RovingFocusGroupFrame = styled(View, {
|
|
15
|
+
name: GROUP_NAME,
|
|
16
|
+
})
|
|
17
17
|
|
|
18
18
|
const RovingFocusGroup = withStaticProperties(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
RovingFocusGroupFrame as typeof RovingFocusGroupFrame & {
|
|
20
|
+
(props: RovingFocusGroupProps & { children?: any }): any
|
|
21
|
+
},
|
|
22
22
|
{
|
|
23
|
-
Item: RovingFocusGroupItem
|
|
23
|
+
Item: RovingFocusGroupItem as typeof RovingFocusGroupItem & {
|
|
24
|
+
(props: RovingFocusItemProps & { children?: any }): any
|
|
25
|
+
},
|
|
24
26
|
}
|
|
25
27
|
)
|
|
26
28
|
|
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { RovingFocusGroupProps, RovingFocusItemProps } from './RovingFocusGroup';
|
|
3
|
-
declare const
|
|
4
|
-
|
|
2
|
+
declare const RovingFocusGroupItem: import("@tamagui/core").TamaguiComponent<import("@tamagui/core").TamaDefer, import("@tamagui/core").TamaguiElement, import("@tamagui/core").RNTamaguiViewNonStyleProps, import("@tamagui/core").StackStyleBase, {}, import("@tamagui/core").StaticConfigPublic>;
|
|
3
|
+
declare const RovingFocusGroup: import("react").ForwardRefExoticComponent<Omit<import("@tamagui/core").RNTamaguiViewNonStyleProps, keyof import("@tamagui/core").StackStyleBase> & import("@tamagui/core").WithThemeValues<import("@tamagui/core").StackStyleBase> & import("@tamagui/core").WithShorthands<import("@tamagui/core").WithThemeValues<import("@tamagui/core").StackStyleBase>> & import("@tamagui/core").WithPseudoProps<import("@tamagui/core").WithThemeValues<import("@tamagui/core").StackStyleBase> & import("@tamagui/core").WithShorthands<import("@tamagui/core").WithThemeValues<import("@tamagui/core").StackStyleBase>>> & import("@tamagui/core").WithMediaProps<import("@tamagui/core").WithThemeShorthandsAndPseudos<import("@tamagui/core").StackStyleBase, {}>> & import("react").RefAttributes<import("@tamagui/core").TamaguiElement>> & import("@tamagui/core").StaticComponentObject<import("@tamagui/core").TamaDefer, import("@tamagui/core").TamaguiElement, import("@tamagui/core").RNTamaguiViewNonStyleProps, import("@tamagui/core").StackStyleBase, {}, import("@tamagui/core").StaticConfigPublic> & Omit<import("@tamagui/core").StaticConfigPublic, "staticConfig" | "styleable"> & {
|
|
4
|
+
__tama: [import("@tamagui/core").TamaDefer, import("@tamagui/core").TamaguiElement, import("@tamagui/core").RNTamaguiViewNonStyleProps, import("@tamagui/core").StackStyleBase, {}, import("@tamagui/core").StaticConfigPublic];
|
|
5
|
+
} & ((props: RovingFocusGroupProps & {
|
|
6
|
+
children?: any;
|
|
7
|
+
}) => any) & {
|
|
8
|
+
Item: typeof RovingFocusGroupItem & {
|
|
9
|
+
(props: RovingFocusItemProps & {
|
|
10
|
+
children?: any;
|
|
11
|
+
}): any;
|
|
12
|
+
};
|
|
5
13
|
};
|
|
6
14
|
declare const createRovingFocusGroupScope: () => () => {};
|
|
7
15
|
export { RovingFocusGroup, createRovingFocusGroupScope };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RovingFocusGroup.native.d.ts","sourceRoot":"","sources":["../src/RovingFocusGroup.native.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RovingFocusGroup.native.d.ts","sourceRoot":"","sources":["../src/RovingFocusGroup.native.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAKrF,QAAA,MAAM,oBAAoB,iQAExB,CAAA;AAOF,QAAA,MAAM,gBAAgB;;aAEV,qBAAqB,GAAG;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,KAAG,GAAG;UAG1B,OAAO,oBAAoB,GAAG;QAC1D,CAAC,KAAK,EAAE,oBAAoB,GAAG;YAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;SAAE,GAAG,GAAG,CAAA;KACxD;CAEJ,CAAA;AAID,QAAA,MAAM,2BAA2B,gBAAmB,CAAA;AAEpD,OAAO,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,CAAA;AACxD,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,CAAA"}
|