@tamagui/popover 1.43.1 → 1.43.3
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/Popover.js +80 -49
- package/dist/cjs/Popover.js.map +1 -1
- package/dist/esm/Popover.js +80 -49
- package/dist/esm/Popover.js.map +1 -1
- package/dist/jsx/Popover.js +58 -31
- package/dist/jsx/Popover.js.map +1 -1
- package/dist/jsx/Popover.mjs +58 -31
- package/dist/jsx/Popover.mjs.map +1 -1
- package/package.json +19 -18
- package/src/Popover.tsx +128 -95
- package/types/Popover.d.ts +1 -1
- package/types/Popover.d.ts.map +1 -1
package/dist/jsx/Popover.js
CHANGED
|
@@ -33,6 +33,7 @@ import { Sheet, SheetController } from "@tamagui/sheet";
|
|
|
33
33
|
import { YStack } from "@tamagui/stacks";
|
|
34
34
|
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
35
35
|
import * as React from "react";
|
|
36
|
+
import { Freeze } from "react-freeze";
|
|
36
37
|
import { Platform, ScrollView } from "react-native";
|
|
37
38
|
import { useFloatingContext } from "./useFloatingContext";
|
|
38
39
|
const PopoverContext = createStyledContext({});
|
|
@@ -66,6 +67,13 @@ const PopoverTrigger = React.forwardRef(
|
|
|
66
67
|
const PopoverContent = PopperContentFrame.extractable(
|
|
67
68
|
React.forwardRef(
|
|
68
69
|
function PopoverContent2(props, forwardedRef) {
|
|
70
|
+
return <PopoverContentPortal zIndex={props.zIndex}><PopoverContentInner {...props} ref={forwardedRef} /></PopoverContentPortal>;
|
|
71
|
+
}
|
|
72
|
+
)
|
|
73
|
+
);
|
|
74
|
+
const PopoverContentInner = React.memo(
|
|
75
|
+
React.forwardRef(
|
|
76
|
+
(props, forwardedRef) => {
|
|
69
77
|
const {
|
|
70
78
|
allowPinchZoom,
|
|
71
79
|
trapFocus,
|
|
@@ -77,6 +85,7 @@ const PopoverContent = PopperContentFrame.extractable(
|
|
|
77
85
|
const contentRef = React.useRef(null);
|
|
78
86
|
const composedRefs = useComposedRefs(forwardedRef, contentRef);
|
|
79
87
|
const isRightClickOutsideRef = React.useRef(false);
|
|
88
|
+
const themeName = useThemeName();
|
|
80
89
|
React.useEffect(() => {
|
|
81
90
|
if (!context.open)
|
|
82
91
|
return;
|
|
@@ -84,21 +93,17 @@ const PopoverContent = PopperContentFrame.extractable(
|
|
|
84
93
|
if (content)
|
|
85
94
|
return hideOthers(content);
|
|
86
95
|
}, [context.open]);
|
|
87
|
-
|
|
88
|
-
return <PopoverContentPortal zIndex={zIndex}><Stack pointerEvents={context.open ? "auto" : "none"}><Theme name={themeName}><PopoverContentImpl
|
|
96
|
+
return <Stack pointerEvents={context.open ? "auto" : "none"}><Theme name={themeName}><PopoverContentImpl
|
|
89
97
|
{...contentImplProps}
|
|
90
98
|
disableRemoveScroll={disableRemoveScroll}
|
|
91
99
|
ref={composedRefs}
|
|
92
100
|
trapFocus={trapFocus ?? context.open}
|
|
93
101
|
disableOutsidePointerEvents
|
|
94
|
-
onCloseAutoFocus={composeEventHandlers(
|
|
95
|
-
|
|
96
|
-
(
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
context.triggerRef.current?.focus();
|
|
100
|
-
}
|
|
101
|
-
)}
|
|
102
|
+
onCloseAutoFocus={composeEventHandlers(props.onCloseAutoFocus, (event) => {
|
|
103
|
+
event.preventDefault();
|
|
104
|
+
if (!isRightClickOutsideRef.current)
|
|
105
|
+
context.triggerRef.current?.focus();
|
|
106
|
+
})}
|
|
102
107
|
onPointerDownOutside={composeEventHandlers(
|
|
103
108
|
props.onPointerDownOutside,
|
|
104
109
|
(event) => {
|
|
@@ -114,7 +119,7 @@ const PopoverContent = PopperContentFrame.extractable(
|
|
|
114
119
|
(event) => event.preventDefault(),
|
|
115
120
|
{ checkDefaultPrevented: false }
|
|
116
121
|
)}
|
|
117
|
-
/></Theme></Stack
|
|
122
|
+
/></Theme></Stack>;
|
|
118
123
|
}
|
|
119
124
|
)
|
|
120
125
|
);
|
|
@@ -122,22 +127,27 @@ function PopoverRepropagateContext(props) {
|
|
|
122
127
|
return <PopperContext.Provider {...props.popperContext}><PopoverContext.Provider {...props.context}>{props.children}</PopoverContext.Provider></PopperContext.Provider>;
|
|
123
128
|
}
|
|
124
129
|
function PopoverContentPortal(props) {
|
|
130
|
+
const zIndex = props.zIndex ?? 15e4;
|
|
131
|
+
return <Portal zIndex={zIndex}>{React.useMemo(() => {
|
|
132
|
+
return <PopoverContentPortalContents {...props} />;
|
|
133
|
+
}, [props])}</Portal>;
|
|
134
|
+
}
|
|
135
|
+
const PopoverContentPortalContents = (props) => {
|
|
125
136
|
const themeName = useThemeName();
|
|
126
|
-
const context = usePopoverContext();
|
|
127
137
|
const popperContext = usePopperContext();
|
|
138
|
+
const context = usePopoverContext();
|
|
128
139
|
let contents = props.children;
|
|
129
140
|
if (Platform.OS === "android" || Platform.OS === "ios") {
|
|
130
141
|
contents = <PopoverRepropagateContext popperContext={popperContext} context={context}>{props.children}</PopoverRepropagateContext>;
|
|
131
142
|
}
|
|
132
|
-
|
|
133
|
-
return <Portal zIndex={zIndex}><Theme forceClassName name={themeName}>
|
|
143
|
+
return <Theme forceClassName name={themeName}>
|
|
134
144
|
{!!context.open && !context.breakpointActive && <YStack
|
|
135
145
|
fullscreen
|
|
136
146
|
onPress={composeEventHandlers(props.onPress, context.onOpenToggle)}
|
|
137
147
|
/>}
|
|
138
|
-
|
|
139
|
-
</Theme
|
|
140
|
-
}
|
|
148
|
+
{contents}
|
|
149
|
+
</Theme>;
|
|
150
|
+
};
|
|
141
151
|
const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
142
152
|
const {
|
|
143
153
|
trapFocus,
|
|
@@ -153,12 +163,19 @@ const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
|
153
163
|
...contentProps
|
|
154
164
|
} = props;
|
|
155
165
|
const context = usePopoverContext();
|
|
166
|
+
const { open, keepChildrenMounted } = context;
|
|
156
167
|
const popperContext = usePopperContext();
|
|
157
168
|
const [isFullyHidden, setIsFullyHidden] = React.useState(!context.open);
|
|
158
|
-
|
|
169
|
+
const [hasShownOnce, setHasShownOnce] = React.useState(false);
|
|
170
|
+
React.useEffect(() => {
|
|
171
|
+
if (!open) {
|
|
172
|
+
setHasShownOnce(true);
|
|
173
|
+
}
|
|
174
|
+
}, [open]);
|
|
175
|
+
if (open && isFullyHidden) {
|
|
159
176
|
setIsFullyHidden(false);
|
|
160
177
|
}
|
|
161
|
-
if (!
|
|
178
|
+
if (!keepChildrenMounted) {
|
|
162
179
|
if (isFullyHidden) {
|
|
163
180
|
return null;
|
|
164
181
|
}
|
|
@@ -166,7 +183,7 @@ const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
|
166
183
|
if (context.breakpointActive) {
|
|
167
184
|
const childrenWithoutScrollView = React.Children.toArray(children).map((child) => {
|
|
168
185
|
if (React.isValidElement(child)) {
|
|
169
|
-
if (child.type ===
|
|
186
|
+
if (child.type === ScrollView) {
|
|
170
187
|
return child.props.children;
|
|
171
188
|
}
|
|
172
189
|
}
|
|
@@ -178,33 +195,46 @@ const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
|
178
195
|
}
|
|
179
196
|
return <PortalItem hostName={`${context.id}PopoverContents`}>{content}</PortalItem>;
|
|
180
197
|
}
|
|
198
|
+
const contents = React.useMemo(() => {
|
|
199
|
+
return isWeb ? <div style={{ display: "contents" }}>{children}</div> : children;
|
|
200
|
+
}, [children]);
|
|
201
|
+
const freeze = isFullyHidden && (hasShownOnce || !keepChildrenMounted);
|
|
181
202
|
return <Animate
|
|
182
203
|
type="presence"
|
|
183
|
-
present={Boolean(
|
|
184
|
-
keepChildrenMounted={
|
|
204
|
+
present={Boolean(open)}
|
|
205
|
+
keepChildrenMounted={keepChildrenMounted}
|
|
185
206
|
onExitComplete={() => {
|
|
186
207
|
setIsFullyHidden(true);
|
|
187
208
|
}}
|
|
209
|
+
><FreezeToLastContents
|
|
210
|
+
freeze={freeze}
|
|
188
211
|
><PopperContent
|
|
189
212
|
key={context.contentId}
|
|
190
|
-
data-state={getState(
|
|
213
|
+
data-state={getState(open)}
|
|
191
214
|
id={context.contentId}
|
|
192
215
|
ref={forwardedRef}
|
|
193
216
|
{...contentProps}
|
|
194
217
|
><RemoveScroll
|
|
195
|
-
enabled={disableRemoveScroll ? false :
|
|
218
|
+
enabled={disableRemoveScroll ? false : open}
|
|
196
219
|
allowPinchZoom
|
|
197
220
|
removeScrollBar={false}
|
|
198
221
|
style={{
|
|
199
222
|
display: "contents"
|
|
200
223
|
}}
|
|
201
|
-
|
|
224
|
+
><FocusScope
|
|
202
225
|
loop
|
|
203
|
-
trapped={trapFocus ??
|
|
226
|
+
trapped={trapFocus ?? open}
|
|
204
227
|
onMountAutoFocus={onOpenAutoFocus}
|
|
205
228
|
onUnmountAutoFocus={onCloseAutoFocus}
|
|
206
|
-
>{
|
|
229
|
+
>{contents}</FocusScope></RemoveScroll></PopperContent></FreezeToLastContents></Animate>;
|
|
207
230
|
});
|
|
231
|
+
const FreezeToLastContents = (props) => {
|
|
232
|
+
const last = React.useRef();
|
|
233
|
+
if (!props.freeze) {
|
|
234
|
+
last.current = props.children;
|
|
235
|
+
}
|
|
236
|
+
return <Freeze placeholder={last.current} {...props} />;
|
|
237
|
+
};
|
|
208
238
|
const PopoverClose = React.forwardRef(
|
|
209
239
|
function PopoverClose2(props, forwardedRef) {
|
|
210
240
|
const context = usePopoverContext();
|
|
@@ -224,9 +254,6 @@ const PopoverArrow = React.forwardRef(
|
|
|
224
254
|
return <PopperArrow componentName="PopoverArrow" {...props} ref={forwardedRef} />;
|
|
225
255
|
}
|
|
226
256
|
);
|
|
227
|
-
const PopoverScrollView = React.forwardRef((props, ref) => {
|
|
228
|
-
return <ScrollView ref={ref} {...props} />;
|
|
229
|
-
});
|
|
230
257
|
const Popover = withStaticProperties(
|
|
231
258
|
function Popover2(props) {
|
|
232
259
|
const {
|
|
@@ -283,7 +310,7 @@ const Popover = withStaticProperties(
|
|
|
283
310
|
Content: PopoverContent,
|
|
284
311
|
Close: PopoverClose,
|
|
285
312
|
Adapt,
|
|
286
|
-
ScrollView
|
|
313
|
+
ScrollView,
|
|
287
314
|
Sheet: Sheet.Controlled
|
|
288
315
|
}
|
|
289
316
|
);
|
package/dist/jsx/Popover.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Popover.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["PopoverAnchor", "PopoverTrigger", "PopoverContent", "PopoverClose", "PopoverArrow", "Popover"]
|
|
6
6
|
}
|
package/dist/jsx/Popover.mjs
CHANGED
|
@@ -33,6 +33,7 @@ import { Sheet, SheetController } from "@tamagui/sheet";
|
|
|
33
33
|
import { YStack } from "@tamagui/stacks";
|
|
34
34
|
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
35
35
|
import * as React from "react";
|
|
36
|
+
import { Freeze } from "react-freeze";
|
|
36
37
|
import { Platform, ScrollView } from "react-native";
|
|
37
38
|
import { useFloatingContext } from "./useFloatingContext";
|
|
38
39
|
const PopoverContext = createStyledContext({});
|
|
@@ -66,6 +67,13 @@ const PopoverTrigger = React.forwardRef(
|
|
|
66
67
|
const PopoverContent = PopperContentFrame.extractable(
|
|
67
68
|
React.forwardRef(
|
|
68
69
|
function PopoverContent2(props, forwardedRef) {
|
|
70
|
+
return <PopoverContentPortal zIndex={props.zIndex}><PopoverContentInner {...props} ref={forwardedRef} /></PopoverContentPortal>;
|
|
71
|
+
}
|
|
72
|
+
)
|
|
73
|
+
);
|
|
74
|
+
const PopoverContentInner = React.memo(
|
|
75
|
+
React.forwardRef(
|
|
76
|
+
(props, forwardedRef) => {
|
|
69
77
|
const {
|
|
70
78
|
allowPinchZoom,
|
|
71
79
|
trapFocus,
|
|
@@ -77,6 +85,7 @@ const PopoverContent = PopperContentFrame.extractable(
|
|
|
77
85
|
const contentRef = React.useRef(null);
|
|
78
86
|
const composedRefs = useComposedRefs(forwardedRef, contentRef);
|
|
79
87
|
const isRightClickOutsideRef = React.useRef(false);
|
|
88
|
+
const themeName = useThemeName();
|
|
80
89
|
React.useEffect(() => {
|
|
81
90
|
if (!context.open)
|
|
82
91
|
return;
|
|
@@ -84,21 +93,17 @@ const PopoverContent = PopperContentFrame.extractable(
|
|
|
84
93
|
if (content)
|
|
85
94
|
return hideOthers(content);
|
|
86
95
|
}, [context.open]);
|
|
87
|
-
|
|
88
|
-
return <PopoverContentPortal zIndex={zIndex}><Stack pointerEvents={context.open ? "auto" : "none"}><Theme name={themeName}><PopoverContentImpl
|
|
96
|
+
return <Stack pointerEvents={context.open ? "auto" : "none"}><Theme name={themeName}><PopoverContentImpl
|
|
89
97
|
{...contentImplProps}
|
|
90
98
|
disableRemoveScroll={disableRemoveScroll}
|
|
91
99
|
ref={composedRefs}
|
|
92
100
|
trapFocus={trapFocus ?? context.open}
|
|
93
101
|
disableOutsidePointerEvents
|
|
94
|
-
onCloseAutoFocus={composeEventHandlers(
|
|
95
|
-
|
|
96
|
-
(
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
context.triggerRef.current?.focus();
|
|
100
|
-
}
|
|
101
|
-
)}
|
|
102
|
+
onCloseAutoFocus={composeEventHandlers(props.onCloseAutoFocus, (event) => {
|
|
103
|
+
event.preventDefault();
|
|
104
|
+
if (!isRightClickOutsideRef.current)
|
|
105
|
+
context.triggerRef.current?.focus();
|
|
106
|
+
})}
|
|
102
107
|
onPointerDownOutside={composeEventHandlers(
|
|
103
108
|
props.onPointerDownOutside,
|
|
104
109
|
(event) => {
|
|
@@ -114,7 +119,7 @@ const PopoverContent = PopperContentFrame.extractable(
|
|
|
114
119
|
(event) => event.preventDefault(),
|
|
115
120
|
{ checkDefaultPrevented: false }
|
|
116
121
|
)}
|
|
117
|
-
/></Theme></Stack
|
|
122
|
+
/></Theme></Stack>;
|
|
118
123
|
}
|
|
119
124
|
)
|
|
120
125
|
);
|
|
@@ -122,22 +127,27 @@ function PopoverRepropagateContext(props) {
|
|
|
122
127
|
return <PopperContext.Provider {...props.popperContext}><PopoverContext.Provider {...props.context}>{props.children}</PopoverContext.Provider></PopperContext.Provider>;
|
|
123
128
|
}
|
|
124
129
|
function PopoverContentPortal(props) {
|
|
130
|
+
const zIndex = props.zIndex ?? 15e4;
|
|
131
|
+
return <Portal zIndex={zIndex}>{React.useMemo(() => {
|
|
132
|
+
return <PopoverContentPortalContents {...props} />;
|
|
133
|
+
}, [props])}</Portal>;
|
|
134
|
+
}
|
|
135
|
+
const PopoverContentPortalContents = (props) => {
|
|
125
136
|
const themeName = useThemeName();
|
|
126
|
-
const context = usePopoverContext();
|
|
127
137
|
const popperContext = usePopperContext();
|
|
138
|
+
const context = usePopoverContext();
|
|
128
139
|
let contents = props.children;
|
|
129
140
|
if (Platform.OS === "android" || Platform.OS === "ios") {
|
|
130
141
|
contents = <PopoverRepropagateContext popperContext={popperContext} context={context}>{props.children}</PopoverRepropagateContext>;
|
|
131
142
|
}
|
|
132
|
-
|
|
133
|
-
return <Portal zIndex={zIndex}><Theme forceClassName name={themeName}>
|
|
143
|
+
return <Theme forceClassName name={themeName}>
|
|
134
144
|
{!!context.open && !context.breakpointActive && <YStack
|
|
135
145
|
fullscreen
|
|
136
146
|
onPress={composeEventHandlers(props.onPress, context.onOpenToggle)}
|
|
137
147
|
/>}
|
|
138
|
-
|
|
139
|
-
</Theme
|
|
140
|
-
}
|
|
148
|
+
{contents}
|
|
149
|
+
</Theme>;
|
|
150
|
+
};
|
|
141
151
|
const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
142
152
|
const {
|
|
143
153
|
trapFocus,
|
|
@@ -153,12 +163,19 @@ const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
|
153
163
|
...contentProps
|
|
154
164
|
} = props;
|
|
155
165
|
const context = usePopoverContext();
|
|
166
|
+
const { open, keepChildrenMounted } = context;
|
|
156
167
|
const popperContext = usePopperContext();
|
|
157
168
|
const [isFullyHidden, setIsFullyHidden] = React.useState(!context.open);
|
|
158
|
-
|
|
169
|
+
const [hasShownOnce, setHasShownOnce] = React.useState(false);
|
|
170
|
+
React.useEffect(() => {
|
|
171
|
+
if (!open) {
|
|
172
|
+
setHasShownOnce(true);
|
|
173
|
+
}
|
|
174
|
+
}, [open]);
|
|
175
|
+
if (open && isFullyHidden) {
|
|
159
176
|
setIsFullyHidden(false);
|
|
160
177
|
}
|
|
161
|
-
if (!
|
|
178
|
+
if (!keepChildrenMounted) {
|
|
162
179
|
if (isFullyHidden) {
|
|
163
180
|
return null;
|
|
164
181
|
}
|
|
@@ -166,7 +183,7 @@ const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
|
166
183
|
if (context.breakpointActive) {
|
|
167
184
|
const childrenWithoutScrollView = React.Children.toArray(children).map((child) => {
|
|
168
185
|
if (React.isValidElement(child)) {
|
|
169
|
-
if (child.type ===
|
|
186
|
+
if (child.type === ScrollView) {
|
|
170
187
|
return child.props.children;
|
|
171
188
|
}
|
|
172
189
|
}
|
|
@@ -178,33 +195,46 @@ const PopoverContentImpl = React.forwardRef((props, forwardedRef) => {
|
|
|
178
195
|
}
|
|
179
196
|
return <PortalItem hostName={`${context.id}PopoverContents`}>{content}</PortalItem>;
|
|
180
197
|
}
|
|
198
|
+
const contents = React.useMemo(() => {
|
|
199
|
+
return isWeb ? <div style={{ display: "contents" }}>{children}</div> : children;
|
|
200
|
+
}, [children]);
|
|
201
|
+
const freeze = isFullyHidden && (hasShownOnce || !keepChildrenMounted);
|
|
181
202
|
return <Animate
|
|
182
203
|
type="presence"
|
|
183
|
-
present={Boolean(
|
|
184
|
-
keepChildrenMounted={
|
|
204
|
+
present={Boolean(open)}
|
|
205
|
+
keepChildrenMounted={keepChildrenMounted}
|
|
185
206
|
onExitComplete={() => {
|
|
186
207
|
setIsFullyHidden(true);
|
|
187
208
|
}}
|
|
209
|
+
><FreezeToLastContents
|
|
210
|
+
freeze={freeze}
|
|
188
211
|
><PopperContent
|
|
189
212
|
key={context.contentId}
|
|
190
|
-
data-state={getState(
|
|
213
|
+
data-state={getState(open)}
|
|
191
214
|
id={context.contentId}
|
|
192
215
|
ref={forwardedRef}
|
|
193
216
|
{...contentProps}
|
|
194
217
|
><RemoveScroll
|
|
195
|
-
enabled={disableRemoveScroll ? false :
|
|
218
|
+
enabled={disableRemoveScroll ? false : open}
|
|
196
219
|
allowPinchZoom
|
|
197
220
|
removeScrollBar={false}
|
|
198
221
|
style={{
|
|
199
222
|
display: "contents"
|
|
200
223
|
}}
|
|
201
|
-
|
|
224
|
+
><FocusScope
|
|
202
225
|
loop
|
|
203
|
-
trapped={trapFocus ??
|
|
226
|
+
trapped={trapFocus ?? open}
|
|
204
227
|
onMountAutoFocus={onOpenAutoFocus}
|
|
205
228
|
onUnmountAutoFocus={onCloseAutoFocus}
|
|
206
|
-
>{
|
|
229
|
+
>{contents}</FocusScope></RemoveScroll></PopperContent></FreezeToLastContents></Animate>;
|
|
207
230
|
});
|
|
231
|
+
const FreezeToLastContents = (props) => {
|
|
232
|
+
const last = React.useRef();
|
|
233
|
+
if (!props.freeze) {
|
|
234
|
+
last.current = props.children;
|
|
235
|
+
}
|
|
236
|
+
return <Freeze placeholder={last.current} {...props} />;
|
|
237
|
+
};
|
|
208
238
|
const PopoverClose = React.forwardRef(
|
|
209
239
|
function PopoverClose2(props, forwardedRef) {
|
|
210
240
|
const context = usePopoverContext();
|
|
@@ -224,9 +254,6 @@ const PopoverArrow = React.forwardRef(
|
|
|
224
254
|
return <PopperArrow componentName="PopoverArrow" {...props} ref={forwardedRef} />;
|
|
225
255
|
}
|
|
226
256
|
);
|
|
227
|
-
const PopoverScrollView = React.forwardRef((props, ref) => {
|
|
228
|
-
return <ScrollView ref={ref} {...props} />;
|
|
229
|
-
});
|
|
230
257
|
const Popover = withStaticProperties(
|
|
231
258
|
function Popover2(props) {
|
|
232
259
|
const {
|
|
@@ -283,7 +310,7 @@ const Popover = withStaticProperties(
|
|
|
283
310
|
Content: PopoverContent,
|
|
284
311
|
Close: PopoverClose,
|
|
285
312
|
Adapt,
|
|
286
|
-
ScrollView
|
|
313
|
+
ScrollView,
|
|
287
314
|
Sheet: Sheet.Controlled
|
|
288
315
|
}
|
|
289
316
|
);
|
package/dist/jsx/Popover.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Popover.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["PopoverAnchor", "PopoverTrigger", "PopoverContent", "PopoverClose", "PopoverArrow", "Popover"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/popover",
|
|
3
|
-
"version": "1.43.
|
|
3
|
+
"version": "1.43.3",
|
|
4
4
|
"sideEffects": [
|
|
5
5
|
"*.css"
|
|
6
6
|
],
|
|
@@ -32,29 +32,30 @@
|
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@floating-ui/react": "^0.24.7",
|
|
35
|
-
"@tamagui/adapt": "1.43.
|
|
36
|
-
"@tamagui/animate": "1.43.
|
|
37
|
-
"@tamagui/aria-hidden": "1.43.
|
|
38
|
-
"@tamagui/compose-refs": "1.43.
|
|
39
|
-
"@tamagui/core": "1.43.
|
|
40
|
-
"@tamagui/dismissable": "1.43.
|
|
41
|
-
"@tamagui/floating": "1.43.
|
|
42
|
-
"@tamagui/focus-scope": "1.43.
|
|
43
|
-
"@tamagui/polyfill-dev": "1.43.
|
|
44
|
-
"@tamagui/popper": "1.43.
|
|
45
|
-
"@tamagui/portal": "1.43.
|
|
46
|
-
"@tamagui/remove-scroll": "1.43.
|
|
47
|
-
"@tamagui/scroll-view": "1.43.
|
|
48
|
-
"@tamagui/sheet": "1.43.
|
|
49
|
-
"@tamagui/stacks": "1.43.
|
|
50
|
-
"@tamagui/use-controllable-state": "1.43.
|
|
35
|
+
"@tamagui/adapt": "1.43.3",
|
|
36
|
+
"@tamagui/animate": "1.43.3",
|
|
37
|
+
"@tamagui/aria-hidden": "1.43.3",
|
|
38
|
+
"@tamagui/compose-refs": "1.43.3",
|
|
39
|
+
"@tamagui/core": "1.43.3",
|
|
40
|
+
"@tamagui/dismissable": "1.43.3",
|
|
41
|
+
"@tamagui/floating": "1.43.3",
|
|
42
|
+
"@tamagui/focus-scope": "1.43.3",
|
|
43
|
+
"@tamagui/polyfill-dev": "1.43.3",
|
|
44
|
+
"@tamagui/popper": "1.43.3",
|
|
45
|
+
"@tamagui/portal": "1.43.3",
|
|
46
|
+
"@tamagui/remove-scroll": "1.43.3",
|
|
47
|
+
"@tamagui/scroll-view": "1.43.3",
|
|
48
|
+
"@tamagui/sheet": "1.43.3",
|
|
49
|
+
"@tamagui/stacks": "1.43.3",
|
|
50
|
+
"@tamagui/use-controllable-state": "1.43.3",
|
|
51
|
+
"react-freeze": "^1.0.3"
|
|
51
52
|
},
|
|
52
53
|
"peerDependencies": {
|
|
53
54
|
"react": "*",
|
|
54
55
|
"react-native": "*"
|
|
55
56
|
},
|
|
56
57
|
"devDependencies": {
|
|
57
|
-
"@tamagui/build": "1.43.
|
|
58
|
+
"@tamagui/build": "1.43.3",
|
|
58
59
|
"react": "^18.2.0",
|
|
59
60
|
"react-native": "^0.72.1"
|
|
60
61
|
},
|