@tamagui/create-menu 3.0.0-beta.907.1 → 3.0.0-beta.922.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/dist/cjs/createBaseMenu.cjs +1 -1
- package/dist/cjs/createBaseMenu.native.cjs +1 -1
- package/dist/cjs/createBaseMenu.native.js +1 -1
- package/dist/cjs/createBaseMenu.native.js.map +1 -1
- package/dist/cjs/createNativeMenu/withNativeMenu.cjs +4 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.native.cjs +4 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.native.js +4 -0
- package/dist/cjs/createNativeMenu/withNativeMenu.native.js.map +1 -1
- package/dist/esm/createBaseMenu.mjs +1 -1
- package/dist/esm/createBaseMenu.mjs.map +1 -1
- package/dist/esm/createBaseMenu.native.js +1 -1
- package/dist/esm/createBaseMenu.native.js.map +1 -1
- package/dist/esm/createNativeMenu/withNativeMenu.mjs +4 -0
- package/dist/esm/createNativeMenu/withNativeMenu.mjs.map +1 -1
- package/dist/esm/createNativeMenu/withNativeMenu.native.js +4 -0
- package/dist/esm/createNativeMenu/withNativeMenu.native.js.map +1 -1
- package/dist/jsx/createBaseMenu.mjs +1 -1
- package/dist/jsx/createBaseMenu.mjs.map +1 -1
- package/dist/jsx/createBaseMenu.native.cjs +1 -1
- package/dist/jsx/createBaseMenu.native.js +1 -1
- package/dist/jsx/createBaseMenu.native.js.map +1 -1
- package/dist/jsx/createNativeMenu/withNativeMenu.mjs +4 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.mjs.map +1 -1
- package/dist/jsx/createNativeMenu/withNativeMenu.native.cjs +4 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.native.js +4 -0
- package/dist/jsx/createNativeMenu/withNativeMenu.native.js.map +1 -1
- package/package.json +21 -21
- package/src/createBaseMenu.tsx +3 -1
- package/src/createNativeMenu/withNativeMenu.tsx +7 -0
- package/types/createBaseMenu.d.ts.map +1 -1
- package/types/createNativeMenu/withNativeMenu.d.ts.map +1 -1
|
@@ -164,7 +164,7 @@ function createBaseMenu() {
|
|
|
164
164
|
};
|
|
165
165
|
MenuAnchor.displayName = ANCHOR_NAME;
|
|
166
166
|
const PORTAL_NAME = "MenuPortal";
|
|
167
|
-
const { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)(
|
|
167
|
+
const { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)({}, "Portal");
|
|
168
168
|
const MenuPortal = (props) => {
|
|
169
169
|
const { scope = MENU_CONTEXT, forceMount, zIndex, children } = props;
|
|
170
170
|
const menuContext = useMenuContext(scope);
|
|
@@ -185,7 +185,7 @@ function createBaseMenu() {
|
|
|
185
185
|
};
|
|
186
186
|
MenuAnchor.displayName = ANCHOR_NAME;
|
|
187
187
|
var PORTAL_NAME = "MenuPortal";
|
|
188
|
-
var { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)(
|
|
188
|
+
var { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)({}, "Portal");
|
|
189
189
|
var MenuPortal = function(props) {
|
|
190
190
|
var { scope = MENU_CONTEXT, forceMount, zIndex, children } = props;
|
|
191
191
|
var menuContext = useMenuContext(scope);
|
|
@@ -185,7 +185,7 @@ function createBaseMenu() {
|
|
|
185
185
|
};
|
|
186
186
|
MenuAnchor.displayName = ANCHOR_NAME;
|
|
187
187
|
var PORTAL_NAME = "MenuPortal";
|
|
188
|
-
var { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)(
|
|
188
|
+
var { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)({}, "Portal");
|
|
189
189
|
var MenuPortal = function(props) {
|
|
190
190
|
var { scope = MENU_CONTEXT, forceMount, zIndex, children } = props;
|
|
191
191
|
var menuContext = useMenuContext(scope);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createBaseMenu.native.js","names":[],"sources":["cjs/createBaseMenu.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createBaseMenu_exports = {};\n__export(createBaseMenu_exports, {\n createBaseMenu: () => createBaseMenu\n});\nmodule.exports = __toCommonJS(createBaseMenu_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_core = require(\"@tamagui/core\");\nvar import_animate = require(\"@tamagui/animate\");\nvar import_animate_presence = require(\"@tamagui/animate-presence\");\nvar import_collection = require(\"@tamagui/collection\");\nvar import_dismissable = require(\"@tamagui/dismissable\");\nvar import_focus_guard = require(\"@tamagui/focus-guard\");\nvar import_focus_scope = require(\"@tamagui/focus-scope\");\nvar import_image = require(\"@tamagui/image\");\nvar PopperPrimitive = __toESM(require(\"@tamagui/popper\"), 1);\nvar import_portal = require(\"@tamagui/portal\");\nvar import_remove_scroll = require(\"@tamagui/remove-scroll\");\nvar import_roving_focus = require(\"@tamagui/roving-focus\");\nvar import_use_callback_ref = require(\"@tamagui/use-callback-ref\");\nvar import_use_direction = require(\"@tamagui/use-direction\");\nvar import_web = require(\"@tamagui/web\");\nvar React = __toESM(require(\"react\"), 1);\nvar import_react = require(\"react\");\nfunction _instanceof(left, right) {\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction whenMouse(handler) {\n return function(event) {\n return event.pointerType === \"mouse\" ? handler(event) : void 0;\n };\n}\nvar SELECTION_KEYS = [\n \"Enter\",\n \" \"\n];\nvar FIRST_KEYS = [\n \"ArrowDown\",\n \"PageUp\",\n \"Home\"\n];\nvar LAST_KEYS = [\n \"ArrowUp\",\n \"PageDown\",\n \"End\"\n];\nvar FIRST_LAST_KEYS = [\n ...FIRST_KEYS,\n ...LAST_KEYS\n];\nvar SUB_OPEN_KEYS = {\n ltr: [\n ...SELECTION_KEYS,\n \"ArrowRight\"\n ],\n rtl: [\n ...SELECTION_KEYS,\n \"ArrowLeft\"\n ]\n};\nvar SUB_CLOSE_KEYS = {\n ltr: [\n \"ArrowLeft\"\n ],\n rtl: [\n \"ArrowRight\"\n ]\n};\nvar MENU_NAME = \"Menu\";\nvar [Collection, useCollection] = (0, import_collection.createCollection)(MENU_NAME);\nvar { Provider: MenuProvider, useStyledContext: useMenuContext } = (0, import_web.createStyledContext)();\nvar { Provider: MenuRootProvider, useStyledContext: useMenuRootContext } = (0, import_web.createStyledContext)();\nvar MENU_CONTEXT = \"MenuContext\";\nvar MenuImageFrame = (0, import_web.styled)(import_image.Image, {\n displayName: \"MenuItemImage\"\n});\nfunction createBaseMenu() {\n var MenuComp = function(props) {\n var direction = (0, import_use_direction.useDirection)(props.dir);\n var defaultPlacement = direction === \"rtl\" ? \"bottom-end\" : \"bottom-start\";\n var { scope = MENU_CONTEXT, open = false, children, dir, onOpenChange, modal = true, allowFlip = {\n padding: 10\n }, stayInFrame = {\n padding: 10\n }, placement = defaultPlacement, resize = true, offset = 10, ...rest } = props;\n var [content, setContent] = React.useState(null);\n var isUsingKeyboardRef = React.useRef(false);\n var handleOpenChange = (0, import_use_callback_ref.useCallbackRef)(onOpenChange);\n if (import_web.isWeb) {\n React.useEffect(function() {\n var handleKeyDown = function() {\n isUsingKeyboardRef.current = true;\n document.addEventListener(\"pointerdown\", handlePointer, {\n capture: true,\n once: true\n });\n document.addEventListener(\"pointermove\", handlePointer, {\n capture: true,\n once: true\n });\n };\n var handlePointer = function() {\n return isUsingKeyboardRef.current = false;\n };\n document.addEventListener(\"keydown\", handleKeyDown, {\n capture: true\n });\n return function() {\n document.removeEventListener(\"keydown\", handleKeyDown, {\n capture: true\n });\n document.removeEventListener(\"pointerdown\", handlePointer, {\n capture: true\n });\n document.removeEventListener(\"pointermove\", handlePointer, {\n capture: true\n });\n };\n }, []);\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.Popper, {\n scope,\n open,\n placement,\n allowFlip,\n stayInFrame,\n resize,\n offset,\n ...rest,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootProvider, {\n scope,\n open,\n onClose: React.useCallback(function() {\n return handleOpenChange(false);\n }, [\n handleOpenChange\n ]),\n isUsingKeyboardRef,\n dir: direction,\n modal,\n children: (\n /** this provider is just to avoid crashing when using useSubMenuContext() inside MenuPortal */\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuSubProvider, {\n scope,\n children\n })\n )\n })\n })\n });\n };\n var RepropagateMenuAndMenuRootProvider = function(props) {\n var { scope = MENU_CONTEXT, menuContext, rootContext, popperContext, menuSubContext, children } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperProvider, {\n ...popperContext,\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n ...menuContext,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootProvider, {\n scope,\n ...rootContext,\n children: menuSubContext ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuSubProvider, {\n scope,\n ...menuSubContext,\n children\n }) : children\n })\n })\n });\n };\n MenuComp.displayName = MENU_NAME;\n var ANCHOR_NAME = \"MenuAnchor\";\n var MenuAnchor = function(props) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperAnchor, {\n scope: MENU_CONTEXT,\n ...props\n });\n };\n MenuAnchor.displayName = ANCHOR_NAME;\n var PORTAL_NAME = \"MenuPortal\";\n var { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)(void 0, \"Portal\");\n var MenuPortal = function(props) {\n var { scope = MENU_CONTEXT, forceMount, zIndex, children } = props;\n var menuContext = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var menuSubContext = useMenuSubContext(scope);\n var themeName = (0, import_web.useThemeName)();\n var themedChildren = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Theme, {\n forceClassName: true,\n name: themeName,\n children\n });\n var content = (0, import_portal.needsPortalRepropagation)() ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RepropagateMenuAndMenuRootProvider, {\n menuContext,\n rootContext,\n popperContext,\n menuSubContext,\n scope,\n children: themedChildren\n }) : themedChildren;\n var isPresent = forceMount || rootContext.open && menuContext.open;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_animate.Animate, {\n type: \"presence\",\n present: isPresent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_portal.Portal, {\n stackZIndex: true,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PortalProvider, {\n scope,\n forceMount,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_web.View, {\n zIndex: zIndex || 100,\n inset: 0,\n position: \"absolute\",\n children: [\n !!menuContext.open && !import_web.isWeb && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n inset: 0,\n position: \"absolute\",\n onPress: function() {\n return menuContext.onOpenChange(!menuContext.open);\n }\n }),\n content\n ]\n })\n })\n })\n })\n });\n };\n MenuPortal.displayName = PORTAL_NAME;\n var CONTENT_NAME = \"MenuContent\";\n var { Provider: MenuContentProvider, useStyledContext: useMenuContentContext } = (0, import_web.createStyledContext)();\n var MenuContentFrame = (0, import_web.styled)(PopperPrimitive.PopperContentFrame, {\n displayName: CONTENT_NAME\n });\n var MenuContent = (0, import_core.createStyledHOC)(MenuContentFrame, function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var portalContext = usePortalContext(scope);\n var { forceMount = portalContext.forceMount, ...contentProps } = props;\n var rootContext = useMenuRootContext(scope);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Provider, {\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Slot, {\n scope,\n children: rootContext.modal ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootContentModal, {\n ...contentProps,\n ref: forwardedRef\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootContentNonModal, {\n ...contentProps,\n ref: forwardedRef\n })\n })\n });\n });\n var MenuRootContentModal = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var context = useMenuContext(scope);\n var ref = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentImpl, {\n ...props,\n scope,\n ref: composedRefs,\n // we make sure we're not trapping once it's been closed\n // (closed !== unmounted when animating out)\n trapFocus: context.open,\n // make sure to only disable pointer events when open\n // this avoids blocking interactions while animating out\n disableOutsidePointerEvents: context.open,\n disableOutsideScroll: false,\n // When focus is trapped, a `focusout` event may still happen.\n // We make sure we don't trigger our `onDismiss` in such case.\n onFocusOutside: (0, import_web.composeEventHandlers)(props.onFocusOutside, function(event) {\n return event.cancel();\n }, {\n checkDefaultPrevented: false\n }),\n onDismiss: function() {\n return context.onOpenChange(false);\n }\n });\n });\n var MenuRootContentNonModal = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var context = useMenuContext(scope);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentImpl, {\n ...props,\n scope,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n onDismiss: function() {\n return context.onOpenChange(false);\n }\n });\n });\n var MenuContentImpl = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var { scope = MENU_CONTEXT, loop = false, trapFocus, onOpenAutoFocus, onCloseAutoFocus, disableOutsidePointerEvents, onEntryFocus, onEscapeKeyDown, onPointerDownOutside, onFocusOutside, onInteractOutside, onDismiss, disableOutsideScroll, disableDismissOnScroll = false, ...contentProps } = props;\n var context = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var getItems = useCollection(scope);\n var [currentItemId, setCurrentItemId] = React.useState(null);\n var contentRef = React.useRef(null);\n var focusableContentRef = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, contentRef, context.onContentChange);\n var timerRef = React.useRef(0);\n var searchRef = React.useRef(\"\");\n var pointerGraceTimerRef = React.useRef(0);\n var pointerGraceIntentRef = React.useRef(null);\n var pointerDirRef = React.useRef(\"right\");\n var lastPointerXRef = React.useRef(0);\n var handleTypeaheadSearch = function(key) {\n var _items_find, _items_find1;\n var search = searchRef.current + key;\n var items = getItems().filter(function(item) {\n return !item.disabled;\n });\n var currentItem = document.activeElement;\n var currentMatch = (_items_find = items.find(function(item) {\n return item.ref.current === currentItem;\n })) === null || _items_find === void 0 ? void 0 : _items_find.textValue;\n var values = items.map(function(item) {\n return item.textValue;\n });\n var nextMatch = getNextMatch(values, search, currentMatch);\n var newItem = (_items_find1 = items.find(function(item) {\n return item.textValue === nextMatch;\n })) === null || _items_find1 === void 0 ? void 0 : _items_find1.ref.current;\n (function updateSearch(value) {\n searchRef.current = value;\n clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = setTimeout(function() {\n return updateSearch(\"\");\n }, 1e3);\n })(search);\n if (newItem) {\n setTimeout(function() {\n return newItem.focus();\n });\n }\n };\n React.useEffect(function() {\n return function() {\n return clearTimeout(timerRef.current);\n };\n }, []);\n React.useEffect(function() {\n if (!import_web.isWeb || !context.open) return;\n var frame = requestAnimationFrame(function() {\n var container = contentRef.current;\n var el = container === null || container === void 0 ? void 0 : container.querySelector(\"[data-tamagui-menu-content]\");\n if (el) focusableContentRef.current = el;\n });\n return function() {\n return cancelAnimationFrame(frame);\n };\n }, [\n context.open\n ]);\n React.useEffect(function() {\n if (!import_web.isWeb || disableDismissOnScroll || !context.open) return;\n var handleScroll = function(event) {\n var _popperContext_refs_reference, _popperContext_refs;\n var scrolled = event.target;\n if (!scrolled) return;\n var content2 = contentRef.current;\n if (content2 === null || content2 === void 0 ? void 0 : content2.contains(scrolled)) return;\n var reference = (_popperContext_refs = popperContext.refs) === null || _popperContext_refs === void 0 ? void 0 : (_popperContext_refs_reference = _popperContext_refs.reference) === null || _popperContext_refs_reference === void 0 ? void 0 : _popperContext_refs_reference.current;\n var _reference_contextElement;\n var anchor = _instanceof(reference, Element) ? reference : (_reference_contextElement = reference === null || reference === void 0 ? void 0 : reference.contextElement) !== null && _reference_contextElement !== void 0 ? _reference_contextElement : null;\n if (anchor && !scrolled.contains(anchor)) return;\n context.onOpenChange(false);\n };\n window.addEventListener(\"scroll\", handleScroll, {\n capture: true,\n passive: true\n });\n return function() {\n window.removeEventListener(\"scroll\", handleScroll, {\n capture: true\n });\n };\n }, [\n disableDismissOnScroll,\n context.open,\n context.onOpenChange,\n popperContext.refs\n ]);\n if (import_web.isWeb) {\n (0, import_focus_guard.useFocusGuards)();\n }\n var isPointerMovingToSubmenu = React.useCallback(function(event) {\n var _pointerGraceIntentRef_current, _pointerGraceIntentRef_current1;\n var isMovingTowards = pointerDirRef.current === ((_pointerGraceIntentRef_current = pointerGraceIntentRef.current) === null || _pointerGraceIntentRef_current === void 0 ? void 0 : _pointerGraceIntentRef_current.side);\n var inArea = isPointerInGraceArea(event, (_pointerGraceIntentRef_current1 = pointerGraceIntentRef.current) === null || _pointerGraceIntentRef_current1 === void 0 ? void 0 : _pointerGraceIntentRef_current1.area);\n return isMovingTowards && inArea;\n }, []);\n var content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperContent, {\n role: \"menu\",\n // tabIndex allows the content to be focusable so that onItemLeave can\n // focus the content frame and properly blur the previously focused item\n tabIndex: -1,\n \"aria-orientation\": \"vertical\",\n \"data-state\": getOpenState(context.open),\n \"data-tamagui-menu-content\": \"\",\n // TODO\n // @ts-ignore\n dir: rootContext.dir,\n scope: scope || MENU_CONTEXT,\n ...contentProps,\n ref: composedRefs,\n className: contentProps.transition ? void 0 : contentProps.className,\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(contentProps.onKeyDown, function(event) {\n var target = event.target;\n var isKeyDownInside = target.closest(\"[data-tamagui-menu-content]\") === event.currentTarget;\n var isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n var isCharacterKey = event.key.length === 1;\n if (isKeyDownInside) {\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && isCharacterKey) handleTypeaheadSearch(event.key);\n }\n var isOnContentFrame = event.target.hasAttribute(\"data-tamagui-menu-content\");\n if (!isKeyDownInside || !isOnContentFrame) return;\n if (!FIRST_LAST_KEYS.includes(event.key)) return;\n event.preventDefault();\n var items = getItems().filter(function(item) {\n return !item.disabled;\n });\n var candidateNodes = items.map(function(item) {\n return item.ref.current;\n });\n if (LAST_KEYS.includes(event.key)) candidateNodes.reverse();\n focusFirst(candidateNodes, {\n focusVisible: true\n });\n }),\n // TODO\n // @ts-ignore\n onBlur: (0, import_web.composeEventHandlers)(props.onBlur, function(event) {\n var _event_currentTarget;\n if (!((_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.contains(event.target))) {\n clearTimeout(timerRef.current);\n searchRef.current = \"\";\n }\n }),\n // TODO\n onPointerMove: (0, import_web.composeEventHandlers)(props.onPointerMove, function(event) {\n var _event_currentTarget;\n if (event.pointerType !== \"mouse\") return;\n var target = event.target;\n var pointerXHasChanged = lastPointerXRef.current !== event.clientX;\n if (((_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.contains(target)) && pointerXHasChanged) {\n var newDir = event.clientX > lastPointerXRef.current ? \"right\" : \"left\";\n pointerDirRef.current = newDir;\n lastPointerXRef.current = event.clientX;\n }\n })\n } : {}\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentProvider, {\n scope,\n searchRef,\n onItemEnter: React.useCallback(function(event) {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n }, [\n isPointerMovingToSubmenu\n ]),\n onItemLeave: React.useCallback(function(event) {\n var _focusableContentRef_current;\n if (isPointerMovingToSubmenu(event)) return;\n (_focusableContentRef_current = focusableContentRef.current) === null || _focusableContentRef_current === void 0 ? void 0 : _focusableContentRef_current.focus();\n setCurrentItemId(null);\n }, [\n isPointerMovingToSubmenu\n ]),\n onTriggerLeave: React.useCallback(function(event) {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n }, [\n isPointerMovingToSubmenu\n ]),\n pointerGraceTimerRef,\n onPointerGraceIntentChange: React.useCallback(function(intent) {\n pointerGraceIntentRef.current = intent;\n }, []),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_remove_scroll.RemoveScroll, {\n enabled: disableOutsideScroll,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_focus_scope.FocusScope, {\n asChild: false,\n trapped: trapFocus,\n onMountAutoFocus: (0, import_web.composeEventHandlers)(onOpenAutoFocus, function(event) {\n event.cancel();\n var content2 = document.querySelector(\"[data-tamagui-menu-content]\");\n content2 === null || content2 === void 0 ? void 0 : content2.focus({\n preventScroll: true\n });\n }),\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_dismissable.Dismissable, {\n disableOutsidePointerEvents,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n asChild: true,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_roving_focus.RovingFocusGroup, {\n asChild: true,\n __scopeRovingFocusGroup: scope || MENU_CONTEXT,\n dir: rootContext.dir,\n orientation: \"vertical\",\n loop,\n currentTabStopId: currentItemId,\n onCurrentTabStopIdChange: setCurrentItemId,\n onEntryFocus: (0, import_web.composeEventHandlers)(onEntryFocus, function(event) {\n if (!rootContext.isUsingKeyboardRef.current) {\n event.cancel();\n }\n }),\n children: content\n })\n })\n })\n })\n });\n });\n MenuContent.displayName = CONTENT_NAME;\n var ITEM_NAME = \"MenuItem\";\n var ITEM_SELECT = \"menu.itemSelect\";\n var MenuItem = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var {\n disabled = false,\n onSelect,\n preventCloseOnSelect,\n children,\n scope = MENU_CONTEXT,\n // filter out native-only props that shouldn't reach the DOM\n // @ts-ignore\n destructive,\n // @ts-ignore\n hidden,\n // @ts-ignore\n androidIconName,\n ...itemProps\n } = props;\n var ref = React.useRef(null);\n var rootContext = useMenuRootContext(scope);\n var contentContext = useMenuContentContext(scope);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n var isPointerDownRef = React.useRef(false);\n var handleSelect = function() {\n var menuItem = ref.current;\n if (!disabled && menuItem) {\n if (import_web.isWeb) {\n var menuItemEl = menuItem;\n var itemSelectEvent = new CustomEvent(ITEM_SELECT, {\n bubbles: true,\n cancelable: true\n });\n menuItemEl.addEventListener(ITEM_SELECT, function(event) {\n return onSelect === null || onSelect === void 0 ? void 0 : onSelect(event);\n }, {\n once: true\n });\n (0, import_dismissable.dispatchDiscreteCustomEvent)(menuItemEl, itemSelectEvent);\n if (itemSelectEvent.defaultPrevented || preventCloseOnSelect) {\n isPointerDownRef.current = false;\n } else {\n rootContext.onClose();\n }\n } else {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect({\n target: menuItem\n });\n isPointerDownRef.current = false;\n if (!preventCloseOnSelect) {\n rootContext.onClose();\n }\n }\n }\n };\n var content = typeof children === \"string\" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n children\n }) : children;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItemImpl, {\n ...itemProps,\n scope,\n // @ts-ignore\n ref: composedRefs,\n disabled,\n onPress: (0, import_web.composeEventHandlers)(props.onPress, handleSelect),\n onPointerDown: function(event) {\n var _props_onPointerDown;\n (_props_onPointerDown = props.onPointerDown) === null || _props_onPointerDown === void 0 ? void 0 : _props_onPointerDown.call(props, event);\n isPointerDownRef.current = true;\n },\n onPointerUp: (0, import_web.composeEventHandlers)(props.onPointerUp, function(event) {\n if (import_web.isWeb) {\n var _event_currentTarget;\n if (!isPointerDownRef.current) (_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.click();\n }\n }),\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {\n var isTypingAhead = contentContext.searchRef.current !== \"\";\n if (disabled || isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) {\n var _event_currentTarget;\n (_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.click();\n event.preventDefault();\n }\n })\n } : {},\n children: content\n });\n });\n var MenuItemImpl = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var { scope = MENU_CONTEXT, className, disabled = false, textValue, ...itemProps } = props;\n var contentContext = useMenuContentContext(scope);\n var ref = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n var [isFocused, setIsFocused] = React.useState(false);\n var [textContent, setTextContent] = React.useState(\"\");\n if (import_web.isWeb) {\n React.useEffect(function() {\n var menuItem = ref.current;\n if (menuItem) {\n var _menuItem_textContent;\n setTextContent(((_menuItem_textContent = menuItem.textContent) !== null && _menuItem_textContent !== void 0 ? _menuItem_textContent : \"\").trim());\n }\n }, [\n itemProps.children\n ]);\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.ItemSlot, {\n scope,\n disabled,\n textValue: textValue !== null && textValue !== void 0 ? textValue : textContent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_roving_focus.RovingFocusGroup.Item, {\n asChild: true,\n __scopeRovingFocusGroup: scope,\n tabIndex: disabled ? -1 : 0,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n className: `is_${ITEM_NAME} ${className || \"\"}`.trim(),\n role: \"menuitem\",\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n ...itemProps,\n ref: composedRefs,\n /**\n * We focus items on `pointerMove` to achieve the following:\n *\n * - Mouse over an item (it focuses)\n * - Leave mouse where it is and use keyboard to focus a different item\n * - Wiggle mouse without it leaving previously focused item\n * - Previously focused item should re-focus\n *\n * If we used `mouseOver`/`mouseEnter` it would not re-focus when the mouse\n * wiggles. This is to match native menu implementation.\n */\n onPointerMove: (0, import_web.composeEventHandlers)(props.onPointerMove, function(event) {\n if (event.pointerType !== \"mouse\") return;\n if (disabled) {\n contentContext.onItemLeave(event);\n } else {\n contentContext.onItemEnter(event);\n if (!event.defaultPrevented) {\n var item = event.currentTarget;\n item.focus({\n preventScroll: true,\n focusVisible: false\n });\n }\n }\n }),\n onPointerLeave: (0, import_web.composeEventHandlers)(props.onPointerLeave, function(event) {\n contentContext.onItemLeave(event);\n }),\n onFocus: (0, import_web.composeEventHandlers)(props.onFocus, function() {\n return setIsFocused(true);\n }),\n onBlur: (0, import_web.composeEventHandlers)(props.onBlur, function() {\n return setIsFocused(false);\n })\n })\n })\n });\n });\n MenuItem.displayName = ITEM_NAME;\n var ITEM_TITLE_NAME = \"MenuItemTitle\";\n var MenuItemTitle = (0, import_core.createStyledHOC)(import_web.Text, function(props, forwardedRef) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n ...props,\n ref: forwardedRef\n });\n });\n MenuItemTitle.displayName = ITEM_TITLE_NAME;\n var ITEM_SUB_TITLE_NAME = \"MenuItemSubTitle\";\n var MenuItemSubTitle = (0, import_core.createStyledHOC)(import_web.Text, function(props, forwardedRef) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n ...props,\n ref: forwardedRef\n });\n });\n MenuItemSubTitle.displayName = ITEM_SUB_TITLE_NAME;\n var ITEM_IMAGE = \"MenuItemImage\";\n var MenuItemImage = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var {\n // @ts-ignore - native menu ios config\n ios,\n // @ts-ignore\n androidIconName,\n ...rest\n } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuImageFrame, {\n ...rest,\n ref: forwardedRef\n });\n });\n MenuItemImage.displayName = ITEM_IMAGE;\n var ITEM_ICON = \"MenuItemIcon\";\n var MenuItemIcon = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var {\n // @ts-ignore\n ios,\n // @ts-ignore\n android,\n // @ts-ignore\n androidIconName,\n ...rest\n } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n ...rest,\n ref: forwardedRef\n });\n });\n MenuItemIcon.displayName = ITEM_ICON;\n var CHECKBOX_ITEM_NAME = \"MenuCheckboxItem\";\n var MenuCheckboxItem = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var {\n checked = false,\n onCheckedChange,\n scope = MENU_CONTEXT,\n // filter out native-only props\n // @ts-ignore - native menu value state\n value,\n // @ts-ignore - native menu value change handler\n onValueChange,\n className,\n ...checkboxItemProps\n } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ItemIndicatorProvider, {\n scope,\n checked,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItem, {\n className: `is_${CHECKBOX_ITEM_NAME} ${className || \"\"}`.trim(),\n role: import_web.isWeb ? \"menuitemcheckbox\" : \"menuitem\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n ...checkboxItemProps,\n scope,\n ref: forwardedRef,\n \"data-state\": getCheckedState(checked),\n onSelect: (0, import_web.composeEventHandlers)(checkboxItemProps.onSelect, function() {\n return onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(isIndeterminate(checked) ? true : !checked);\n }, {\n checkDefaultPrevented: false\n })\n })\n });\n });\n MenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;\n var RADIO_GROUP_NAME = \"MenuRadioGroup\";\n var { Provider: RadioGroupProvider, useStyledContext: useRadioGroupContext } = (0, import_web.createStyledContext)();\n var MenuRadioGroup = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { value, onValueChange, scope = MENU_CONTEXT, className, ...groupProps } = props;\n var handleValueChange = (0, import_use_callback_ref.useCallbackRef)(onValueChange);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RadioGroupProvider, {\n scope,\n value,\n onValueChange: handleValueChange,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n className: `is_${RADIO_GROUP_NAME} ${className || \"\"}`.trim(),\n ...groupProps,\n ref: forwardedRef\n })\n });\n });\n MenuRadioGroup.displayName = RADIO_GROUP_NAME;\n var RADIO_ITEM_NAME = \"MenuRadioItem\";\n var MenuRadioItem = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { value, scope = MENU_CONTEXT, className, ...radioItemProps } = props;\n var context = useRadioGroupContext(scope);\n var checked = value === context.value;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ItemIndicatorProvider, {\n scope,\n checked,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItem, {\n className: `is_${RADIO_ITEM_NAME} ${className || \"\"}`.trim(),\n ...radioItemProps,\n scope,\n \"aria-checked\": checked,\n ref: forwardedRef,\n role: import_web.isWeb ? \"menuitemradio\" : \"menuitem\",\n \"data-state\": getCheckedState(checked),\n onSelect: (0, import_web.composeEventHandlers)(radioItemProps.onSelect, function() {\n var _context_onValueChange;\n return (_context_onValueChange = context.onValueChange) === null || _context_onValueChange === void 0 ? void 0 : _context_onValueChange.call(context, value);\n }, {\n checkDefaultPrevented: false\n })\n })\n });\n });\n MenuRadioItem.displayName = RADIO_ITEM_NAME;\n var ITEM_INDICATOR_NAME = \"MenuItemIndicator\";\n var { Provider: ItemIndicatorProvider, useStyledContext: useItemIndicatorContext } = (0, import_web.createStyledContext)();\n var MenuItemIndicator = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { scope = MENU_CONTEXT, className, forceMount, ...itemIndicatorProps } = props;\n var indicatorContext = useItemIndicatorContext(scope);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, {\n children: forceMount || isIndeterminate(indicatorContext.checked) || indicatorContext.checked === true ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n className: `is_${ITEM_INDICATOR_NAME} ${className || \"\"}`.trim(),\n render: \"span\",\n ...itemIndicatorProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(indicatorContext.checked)\n }) : null\n });\n });\n MenuItemIndicator.displayName = ITEM_INDICATOR_NAME;\n var MenuArrow = (0, import_core.createRefComponent)(function MenuArrow2(props, forwardedRef) {\n var { scope = MENU_CONTEXT, className, ...rest } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperArrow, {\n scope,\n className: `is_PopperArrow ${className || \"\"}`.trim(),\n ...rest,\n ref: forwardedRef\n });\n });\n var SUB_NAME = \"MenuSub\";\n var { Provider: MenuSubProvider, useStyledContext: useMenuSubContext } = (0, import_web.createStyledContext)();\n var MenuSub = function(props) {\n var _parentPopperContext_placement;\n var isTouchDevice = (0, import_web.useIsTouchDevice)();\n var { scope = MENU_CONTEXT } = props;\n var rootContext = useMenuRootContext(scope);\n var parentPopperContext = PopperPrimitive.usePopperContext(scope);\n var parentSide = (_parentPopperContext_placement = parentPopperContext.placement) === null || _parentPopperContext_placement === void 0 ? void 0 : _parentPopperContext_placement.split(\"-\")[0];\n var isNestedSubmenu = parentSide === \"left\" || parentSide === \"right\";\n var defaultPlacement = isTouchDevice ? \"bottom\" : isNestedSubmenu ? `${parentSide}-start` : rootContext.dir === \"rtl\" ? \"left-start\" : \"right-start\";\n var { children, open = false, onOpenChange, allowFlip: allowFlipProp = {\n padding: 10\n }, stayInFrame = {\n padding: 10\n }, placement = defaultPlacement, ...rest } = props;\n var allowFlip = React.useMemo(function() {\n if (!isNestedSubmenu || typeof allowFlipProp === \"boolean\") return allowFlipProp;\n if (allowFlipProp.fallbackPlacements) return allowFlipProp;\n var side = placement.split(\"-\")[0];\n var align = placement.split(\"-\")[1] || \"start\";\n var otherAlign = align === \"start\" ? \"end\" : \"start\";\n if (side === \"left\" || side === \"right\") {\n var oppositeSide = side === \"right\" ? \"left\" : \"right\";\n return {\n ...(typeof allowFlipProp === \"undefined\" ? \"undefined\" : _type_of(allowFlipProp)) === \"object\" ? allowFlipProp : {},\n fallbackPlacements: [\n `${side}-${otherAlign}`,\n `${oppositeSide}-${align}`,\n `${oppositeSide}-${otherAlign}`\n ]\n };\n }\n return allowFlipProp;\n }, [\n isNestedSubmenu,\n allowFlipProp,\n placement\n ]);\n var parentMenuContext = useMenuContext(scope);\n var [trigger, setTrigger] = React.useState(null);\n var [content, setContent] = React.useState(null);\n var handleOpenChange = (0, import_use_callback_ref.useCallbackRef)(onOpenChange);\n React.useEffect(function() {\n if (parentMenuContext.open === false) handleOpenChange(false);\n return function() {\n return handleOpenChange(false);\n };\n }, [\n parentMenuContext.open,\n handleOpenChange\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.Popper, {\n open,\n placement,\n allowFlip,\n stayInFrame,\n ...rest,\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuSubProvider, {\n scope,\n contentId: (0, import_react.useId)(),\n triggerId: (0, import_react.useId)(),\n trigger,\n onTriggerChange: setTrigger,\n children\n })\n })\n });\n };\n MenuSub.displayName = SUB_NAME;\n var SUB_TRIGGER_NAME = \"MenuSubTrigger\";\n var MenuSubTrigger = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var context = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var subContext = useMenuSubContext(scope);\n var contentContext = useMenuContentContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var openTimerRef = React.useRef(null);\n var { pointerGraceTimerRef, onPointerGraceIntentChange } = contentContext;\n var effectiveDir = rootContext.dir;\n var clearOpenTimer = React.useCallback(function() {\n if (openTimerRef.current) window.clearTimeout(openTimerRef.current);\n openTimerRef.current = null;\n }, []);\n React.useEffect(function() {\n return clearOpenTimer;\n }, [\n clearOpenTimer\n ]);\n React.useEffect(function() {\n var pointerGraceTimer = pointerGraceTimerRef.current;\n return function() {\n window.clearTimeout(pointerGraceTimer);\n onPointerGraceIntentChange(null);\n };\n }, [\n pointerGraceTimerRef,\n onPointerGraceIntentChange\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuAnchor, {\n className: `is_${SUB_TRIGGER_NAME}`,\n asChild: \"except-style\",\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItemImpl, {\n id: subContext.triggerId,\n \"aria-haspopup\": \"menu\",\n \"aria-expanded\": context.open,\n \"aria-controls\": subContext.contentId,\n \"data-state\": getOpenState(context.open),\n ...props,\n ref: (0, import_web.composeRefs)(forwardedRef, subContext.onTriggerChange),\n // This is redundant for mouse users but we cannot determine pointer type from\n // click event and we cannot use pointerup event (see git history for reasons why)\n onPress: function(event) {\n var _props_onPress;\n (_props_onPress = props.onPress) === null || _props_onPress === void 0 ? void 0 : _props_onPress.call(props, event);\n if (props.disabled || event.defaultPrevented) return;\n if (import_web.isWeb) {\n event.currentTarget.focus();\n }\n if (!context.open) context.onOpenChange(true);\n },\n onPointerMove: (0, import_web.composeEventHandlers)(\n props.onPointerMove,\n // @ts-ignore\n whenMouse(function(event) {\n contentContext.onItemEnter(event);\n if (event.defaultPrevented) return;\n if (!props.disabled && !context.open && !openTimerRef.current) {\n contentContext.onPointerGraceIntentChange(null);\n openTimerRef.current = window.setTimeout(function() {\n context.onOpenChange(true);\n clearOpenTimer();\n }, 100);\n }\n })\n ),\n onPointerLeave: (0, import_web.composeEventHandlers)(props.onPointerLeave, function(eventIn) {\n var _context_content;\n var event = eventIn;\n clearOpenTimer();\n var contentRect = (_context_content = context.content) === null || _context_content === void 0 ? void 0 : _context_content.getBoundingClientRect();\n if (contentRect) {\n var _contentEl_dataset, _sideEl_dataset;\n var contentEl = context.content;\n var sideEl = (contentEl === null || contentEl === void 0 ? void 0 : (_contentEl_dataset = contentEl.dataset) === null || _contentEl_dataset === void 0 ? void 0 : _contentEl_dataset.side) ? contentEl : contentEl === null || contentEl === void 0 ? void 0 : contentEl.querySelector(\"[data-side]\");\n var side = (sideEl === null || sideEl === void 0 ? void 0 : (_sideEl_dataset = sideEl.dataset) === null || _sideEl_dataset === void 0 ? void 0 : _sideEl_dataset.side) || \"right\";\n var rightSide = side === \"right\";\n var bleed = rightSide ? -5 : 5;\n var contentNearEdge = contentRect[rightSide ? \"left\" : \"right\"];\n var contentFarEdge = contentRect[rightSide ? \"right\" : \"left\"];\n var polygon = {\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n {\n x: event.clientX + bleed,\n y: event.clientY\n },\n {\n x: contentNearEdge,\n y: contentRect.top\n },\n {\n x: contentFarEdge,\n y: contentRect.top\n },\n {\n x: contentFarEdge,\n y: contentRect.bottom\n },\n {\n x: contentNearEdge,\n y: contentRect.bottom\n }\n ],\n side\n };\n contentContext.onPointerGraceIntentChange(polygon);\n window.clearTimeout(pointerGraceTimerRef.current);\n pointerGraceTimerRef.current = window.setTimeout(function() {\n return contentContext.onPointerGraceIntentChange(null);\n }, 300);\n } else if (import_web.isWeb && subContext.trigger) {\n var triggerEl = subContext.trigger;\n var triggerRect = triggerEl === null || triggerEl === void 0 ? void 0 : triggerEl.getBoundingClientRect();\n if (triggerRect) {\n var _popperContext_placement;\n var placementSide = (_popperContext_placement = popperContext.placement) === null || _popperContext_placement === void 0 ? void 0 : _popperContext_placement.split(\"-\")[0];\n var side1 = placementSide === \"left\" || placementSide === \"right\" ? placementSide : rootContext.dir === \"rtl\" ? \"left\" : \"right\";\n var rightSide1 = side1 === \"right\";\n var bleed1 = rightSide1 ? -5 : 5;\n var nearEdge = rightSide1 ? triggerRect.right + 4 : triggerRect.left - 4;\n var farEdge = rightSide1 ? nearEdge + 200 : nearEdge - 200;\n var polygon1 = {\n area: [\n {\n x: event.clientX + bleed1,\n y: event.clientY\n },\n {\n x: nearEdge,\n y: triggerRect.top - 50\n },\n {\n x: farEdge,\n y: triggerRect.top - 50\n },\n {\n x: farEdge,\n y: triggerRect.bottom + 50\n },\n {\n x: nearEdge,\n y: triggerRect.bottom + 50\n }\n ],\n side: side1\n };\n contentContext.onPointerGraceIntentChange(polygon1);\n window.clearTimeout(pointerGraceTimerRef.current);\n pointerGraceTimerRef.current = window.setTimeout(function() {\n return contentContext.onPointerGraceIntentChange(null);\n }, 300);\n }\n } else {\n contentContext.onTriggerLeave(event);\n if (event.defaultPrevented) return;\n contentContext.onPointerGraceIntentChange(null);\n }\n }),\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {\n var isTypingAhead = contentContext.searchRef.current !== \"\";\n if (props.disabled || isTypingAhead && event.key === \" \") return;\n var willOpen = SUB_OPEN_KEYS[effectiveDir].includes(event.key);\n if (willOpen) {\n var _popperContext_refs, _context_content;\n if (context.open && context.content) {\n var _contentEl_querySelector;\n var contentEl = context.content;\n var firstItem = (_contentEl_querySelector = contentEl.querySelector) === null || _contentEl_querySelector === void 0 ? void 0 : _contentEl_querySelector.call(contentEl, '[role=\"menuitem\"]:not([data-disabled])');\n if (firstItem) {\n firstItem.focus({\n focusVisible: true\n });\n event.preventDefault();\n return;\n }\n }\n var triggerEl = event.currentTarget;\n (_popperContext_refs = popperContext.refs) === null || _popperContext_refs === void 0 ? void 0 : _popperContext_refs.setReference(triggerEl);\n context.onOpenChange(true);\n requestAnimationFrame(function() {\n var _popperContext_update;\n (_popperContext_update = popperContext.update) === null || _popperContext_update === void 0 ? void 0 : _popperContext_update.call(popperContext);\n });\n (_context_content = context.content) === null || _context_content === void 0 ? void 0 : _context_content.focus({\n focusVisible: true\n });\n event.preventDefault();\n }\n })\n } : null\n })\n });\n });\n MenuSubTrigger.displayName = SUB_TRIGGER_NAME;\n var SUB_CONTENT_NAME = \"MenuSubContent\";\n var MenuSubContentFrame = (0, import_web.styled)(PopperPrimitive.PopperContentFrame, {\n displayName: SUB_CONTENT_NAME\n });\n var MenuSubContent = (0, import_core.createStyledHOC)(MenuSubContentFrame, function(props, forwardedRef) {\n var _popperContext_placement;\n var scope = props.scope || MENU_CONTEXT;\n var portalContext = usePortalContext(scope);\n var { forceMount = portalContext.forceMount, ...subContentProps } = props;\n var context = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var subContext = useMenuSubContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var ref = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n var placementSide = (_popperContext_placement = popperContext.placement) === null || _popperContext_placement === void 0 ? void 0 : _popperContext_placement.split(\"-\")[0];\n var dataSide = placementSide === \"left\" || placementSide === \"right\" ? placementSide : rootContext.dir === \"rtl\" ? \"left\" : \"right\";\n var effectiveDir = rootContext.dir;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Provider, {\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Slot, {\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentImpl, {\n id: subContext.contentId,\n \"aria-labelledby\": subContext.triggerId,\n ...subContentProps,\n ref: composedRefs,\n \"data-side\": dataSide,\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n trapFocus: false,\n onOpenAutoFocus: function(event) {\n if (rootContext.isUsingKeyboardRef.current) {\n var _root_querySelector, _this;\n var root = ref.current;\n var content = root === null || root === void 0 ? void 0 : (_root_querySelector = root.querySelector) === null || _root_querySelector === void 0 ? void 0 : _root_querySelector.call(root, \"[data-tamagui-menu-content]\");\n (_this = content || root) === null || _this === void 0 ? void 0 : _this.focus({\n preventScroll: true\n });\n }\n event.cancel();\n },\n // The menu might close because of focusing another menu item in the parent menu. We\n // don't want it to refocus the trigger in that case so we handle trigger focus ourselves.\n onCloseAutoFocus: function(event) {\n return event.cancel();\n },\n onFocusOutside: (0, import_web.composeEventHandlers)(props.onFocusOutside, function(event) {\n var _event_event;\n if (((_event_event = event.event) === null || _event_event === void 0 ? void 0 : _event_event.target) !== subContext.trigger) context.onOpenChange(false);\n }),\n onEscapeKeyDown: (0, import_web.composeEventHandlers)(props.onEscapeKeyDown, function(event) {\n var _subContext_trigger, _event_event_preventDefault, _event_event;\n context.onOpenChange(false);\n (_subContext_trigger = subContext.trigger) === null || _subContext_trigger === void 0 ? void 0 : _subContext_trigger.focus({\n focusVisible: true\n });\n event.cancel();\n (_event_event = event.event) === null || _event_event === void 0 ? void 0 : (_event_event_preventDefault = _event_event.preventDefault) === null || _event_event_preventDefault === void 0 ? void 0 : _event_event_preventDefault.call(_event_event);\n }),\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {\n var isKeyDownInside = event.currentTarget.contains(event.target);\n var isCloseKey = SUB_CLOSE_KEYS[effectiveDir].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n var _subContext_trigger;\n context.onOpenChange(false);\n (_subContext_trigger = subContext.trigger) === null || _subContext_trigger === void 0 ? void 0 : _subContext_trigger.focus({\n focusVisible: true\n });\n event.preventDefault();\n }\n })\n } : null\n })\n })\n });\n });\n MenuSubContent.displayName = SUB_CONTENT_NAME;\n var Anchor = MenuAnchor;\n var Portal = MenuPortal;\n var Content = MenuContent;\n var Group = (0, import_core.createStyledHOC)(import_web.View, function(props, ref) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n role: \"group\",\n ...props,\n ref\n });\n });\n Group.displayName = \"MenuGroup\";\n var Label = (0, import_core.createStyledHOC)(import_web.Text, function(props, ref) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n ...props,\n ref\n });\n });\n Label.displayName = \"MenuLabel\";\n var Item = MenuItem;\n var CheckboxItem = MenuCheckboxItem;\n var RadioGroup = MenuRadioGroup;\n var RadioItem = MenuRadioItem;\n var ItemIndicator = MenuItemIndicator;\n var Separator = (0, import_core.createStyledHOC)(import_web.View, function(props, ref) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n role: \"separator\",\n \"aria-orientation\": \"horizontal\",\n ...props,\n ref\n });\n });\n Separator.displayName = \"MenuSeparator\";\n var Arrow = MenuArrow;\n var Sub = MenuSub;\n var SubTrigger = MenuSubTrigger;\n var SubContent = MenuSubContent;\n var ItemTitle = MenuItemTitle;\n var ItemSubtitle = MenuItemSubTitle;\n var ItemImage = MenuItemImage;\n var ItemIcon = MenuItemIcon;\n var Menu = (0, import_web.withStaticProperties)(MenuComp, {\n Anchor,\n Portal,\n Content,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub,\n SubTrigger,\n SubContent,\n ItemTitle,\n ItemSubtitle,\n ItemImage,\n ItemIcon\n });\n return {\n Menu\n };\n}\nfunction getOpenState(open) {\n return open ? \"open\" : \"closed\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getCheckedState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nfunction focusFirst(candidates, options) {\n var PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = candidates[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var candidate = _step.value;\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({\n preventScroll: true,\n focusVisible: options === null || options === void 0 ? void 0 : options.focusVisible\n });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map(function(_, index) {\n return array[(startIndex + index) % array.length];\n });\n}\nfunction getNextMatch(values, search, currentMatch) {\n var isRepeated = search.length > 1 && Array.from(search).every(function(char) {\n return char === search[0];\n });\n var normalizedSearch = isRepeated ? search[0] : search;\n var currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;\n var wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));\n var excludeCurrentMatch = normalizedSearch.length === 1;\n if (excludeCurrentMatch) wrappedValues = wrappedValues.filter(function(v) {\n return v !== currentMatch;\n });\n var nextMatch = wrappedValues.find(function(value) {\n return value.toLowerCase().startsWith(normalizedSearch.toLowerCase());\n });\n return nextMatch !== currentMatch ? nextMatch : void 0;\n}\nfunction isPointInPolygon(point, polygon) {\n var { x, y } = point;\n var inside = false;\n for (var i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n var xi = polygon[i].x;\n var yi = polygon[i].y;\n var xj = polygon[j].x;\n var yj = polygon[j].y;\n var intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\nfunction isPointerInGraceArea(event, area) {\n if (!area) return false;\n var cursorPos = {\n x: event.clientX,\n y: event.clientY\n };\n return isPointInPolygon(cursorPos, area);\n}\n//# sourceMappingURL=createBaseMenu.js.map\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"createBaseMenu.native.js","names":[],"sources":["cjs/createBaseMenu.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createBaseMenu_exports = {};\n__export(createBaseMenu_exports, {\n createBaseMenu: () => createBaseMenu\n});\nmodule.exports = __toCommonJS(createBaseMenu_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_core = require(\"@tamagui/core\");\nvar import_animate = require(\"@tamagui/animate\");\nvar import_animate_presence = require(\"@tamagui/animate-presence\");\nvar import_collection = require(\"@tamagui/collection\");\nvar import_dismissable = require(\"@tamagui/dismissable\");\nvar import_focus_guard = require(\"@tamagui/focus-guard\");\nvar import_focus_scope = require(\"@tamagui/focus-scope\");\nvar import_image = require(\"@tamagui/image\");\nvar PopperPrimitive = __toESM(require(\"@tamagui/popper\"), 1);\nvar import_portal = require(\"@tamagui/portal\");\nvar import_remove_scroll = require(\"@tamagui/remove-scroll\");\nvar import_roving_focus = require(\"@tamagui/roving-focus\");\nvar import_use_callback_ref = require(\"@tamagui/use-callback-ref\");\nvar import_use_direction = require(\"@tamagui/use-direction\");\nvar import_web = require(\"@tamagui/web\");\nvar React = __toESM(require(\"react\"), 1);\nvar import_react = require(\"react\");\nfunction _instanceof(left, right) {\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction whenMouse(handler) {\n return function(event) {\n return event.pointerType === \"mouse\" ? handler(event) : void 0;\n };\n}\nvar SELECTION_KEYS = [\n \"Enter\",\n \" \"\n];\nvar FIRST_KEYS = [\n \"ArrowDown\",\n \"PageUp\",\n \"Home\"\n];\nvar LAST_KEYS = [\n \"ArrowUp\",\n \"PageDown\",\n \"End\"\n];\nvar FIRST_LAST_KEYS = [\n ...FIRST_KEYS,\n ...LAST_KEYS\n];\nvar SUB_OPEN_KEYS = {\n ltr: [\n ...SELECTION_KEYS,\n \"ArrowRight\"\n ],\n rtl: [\n ...SELECTION_KEYS,\n \"ArrowLeft\"\n ]\n};\nvar SUB_CLOSE_KEYS = {\n ltr: [\n \"ArrowLeft\"\n ],\n rtl: [\n \"ArrowRight\"\n ]\n};\nvar MENU_NAME = \"Menu\";\nvar [Collection, useCollection] = (0, import_collection.createCollection)(MENU_NAME);\nvar { Provider: MenuProvider, useStyledContext: useMenuContext } = (0, import_web.createStyledContext)();\nvar { Provider: MenuRootProvider, useStyledContext: useMenuRootContext } = (0, import_web.createStyledContext)();\nvar MENU_CONTEXT = \"MenuContext\";\nvar MenuImageFrame = (0, import_web.styled)(import_image.Image, {\n displayName: \"MenuItemImage\"\n});\nfunction createBaseMenu() {\n var MenuComp = function(props) {\n var direction = (0, import_use_direction.useDirection)(props.dir);\n var defaultPlacement = direction === \"rtl\" ? \"bottom-end\" : \"bottom-start\";\n var { scope = MENU_CONTEXT, open = false, children, dir, onOpenChange, modal = true, allowFlip = {\n padding: 10\n }, stayInFrame = {\n padding: 10\n }, placement = defaultPlacement, resize = true, offset = 10, ...rest } = props;\n var [content, setContent] = React.useState(null);\n var isUsingKeyboardRef = React.useRef(false);\n var handleOpenChange = (0, import_use_callback_ref.useCallbackRef)(onOpenChange);\n if (import_web.isWeb) {\n React.useEffect(function() {\n var handleKeyDown = function() {\n isUsingKeyboardRef.current = true;\n document.addEventListener(\"pointerdown\", handlePointer, {\n capture: true,\n once: true\n });\n document.addEventListener(\"pointermove\", handlePointer, {\n capture: true,\n once: true\n });\n };\n var handlePointer = function() {\n return isUsingKeyboardRef.current = false;\n };\n document.addEventListener(\"keydown\", handleKeyDown, {\n capture: true\n });\n return function() {\n document.removeEventListener(\"keydown\", handleKeyDown, {\n capture: true\n });\n document.removeEventListener(\"pointerdown\", handlePointer, {\n capture: true\n });\n document.removeEventListener(\"pointermove\", handlePointer, {\n capture: true\n });\n };\n }, []);\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.Popper, {\n scope,\n open,\n placement,\n allowFlip,\n stayInFrame,\n resize,\n offset,\n ...rest,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootProvider, {\n scope,\n open,\n onClose: React.useCallback(function() {\n return handleOpenChange(false);\n }, [\n handleOpenChange\n ]),\n isUsingKeyboardRef,\n dir: direction,\n modal,\n children: (\n /** this provider is just to avoid crashing when using useSubMenuContext() inside MenuPortal */\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuSubProvider, {\n scope,\n children\n })\n )\n })\n })\n });\n };\n var RepropagateMenuAndMenuRootProvider = function(props) {\n var { scope = MENU_CONTEXT, menuContext, rootContext, popperContext, menuSubContext, children } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperProvider, {\n ...popperContext,\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n ...menuContext,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootProvider, {\n scope,\n ...rootContext,\n children: menuSubContext ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuSubProvider, {\n scope,\n ...menuSubContext,\n children\n }) : children\n })\n })\n });\n };\n MenuComp.displayName = MENU_NAME;\n var ANCHOR_NAME = \"MenuAnchor\";\n var MenuAnchor = function(props) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperAnchor, {\n scope: MENU_CONTEXT,\n ...props\n });\n };\n MenuAnchor.displayName = ANCHOR_NAME;\n var PORTAL_NAME = \"MenuPortal\";\n var { Provider: PortalProvider, useStyledContext: usePortalContext } = (0, import_web.createStyledContext)({}, \"Portal\");\n var MenuPortal = function(props) {\n var { scope = MENU_CONTEXT, forceMount, zIndex, children } = props;\n var menuContext = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var menuSubContext = useMenuSubContext(scope);\n var themeName = (0, import_web.useThemeName)();\n var themedChildren = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Theme, {\n forceClassName: true,\n name: themeName,\n children\n });\n var content = (0, import_portal.needsPortalRepropagation)() ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RepropagateMenuAndMenuRootProvider, {\n menuContext,\n rootContext,\n popperContext,\n menuSubContext,\n scope,\n children: themedChildren\n }) : themedChildren;\n var isPresent = forceMount || rootContext.open && menuContext.open;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_animate.Animate, {\n type: \"presence\",\n present: isPresent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_portal.Portal, {\n stackZIndex: true,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PortalProvider, {\n scope,\n forceMount,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_web.View, {\n zIndex: zIndex || 100,\n inset: 0,\n position: \"absolute\",\n children: [\n !!menuContext.open && !import_web.isWeb && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n inset: 0,\n position: \"absolute\",\n onPress: function() {\n return menuContext.onOpenChange(!menuContext.open);\n }\n }),\n content\n ]\n })\n })\n })\n })\n });\n };\n MenuPortal.displayName = PORTAL_NAME;\n var CONTENT_NAME = \"MenuContent\";\n var { Provider: MenuContentProvider, useStyledContext: useMenuContentContext } = (0, import_web.createStyledContext)();\n var MenuContentFrame = (0, import_web.styled)(PopperPrimitive.PopperContentFrame, {\n displayName: CONTENT_NAME\n });\n var MenuContent = (0, import_core.createStyledHOC)(MenuContentFrame, function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var portalContext = usePortalContext(scope);\n var { forceMount = portalContext.forceMount, ...contentProps } = props;\n var rootContext = useMenuRootContext(scope);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Provider, {\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Slot, {\n scope,\n children: rootContext.modal ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootContentModal, {\n ...contentProps,\n ref: forwardedRef\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRootContentNonModal, {\n ...contentProps,\n ref: forwardedRef\n })\n })\n });\n });\n var MenuRootContentModal = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var context = useMenuContext(scope);\n var ref = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentImpl, {\n ...props,\n scope,\n ref: composedRefs,\n // we make sure we're not trapping once it's been closed\n // (closed !== unmounted when animating out)\n trapFocus: context.open,\n // make sure to only disable pointer events when open\n // this avoids blocking interactions while animating out\n disableOutsidePointerEvents: context.open,\n disableOutsideScroll: false,\n // When focus is trapped, a `focusout` event may still happen.\n // We make sure we don't trigger our `onDismiss` in such case.\n onFocusOutside: (0, import_web.composeEventHandlers)(props.onFocusOutside, function(event) {\n return event.cancel();\n }, {\n checkDefaultPrevented: false\n }),\n onDismiss: function() {\n return context.onOpenChange(false);\n }\n });\n });\n var MenuRootContentNonModal = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var context = useMenuContext(scope);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentImpl, {\n ...props,\n scope,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n onDismiss: function() {\n return context.onOpenChange(false);\n }\n });\n });\n var MenuContentImpl = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var { scope = MENU_CONTEXT, loop = false, trapFocus, onOpenAutoFocus, onCloseAutoFocus, disableOutsidePointerEvents, onEntryFocus, onEscapeKeyDown, onPointerDownOutside, onFocusOutside, onInteractOutside, onDismiss, disableOutsideScroll, disableDismissOnScroll = false, ...contentProps } = props;\n var context = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var getItems = useCollection(scope);\n var [currentItemId, setCurrentItemId] = React.useState(null);\n var contentRef = React.useRef(null);\n var focusableContentRef = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, contentRef, context.onContentChange);\n var timerRef = React.useRef(0);\n var searchRef = React.useRef(\"\");\n var pointerGraceTimerRef = React.useRef(0);\n var pointerGraceIntentRef = React.useRef(null);\n var pointerDirRef = React.useRef(\"right\");\n var lastPointerXRef = React.useRef(0);\n var handleTypeaheadSearch = function(key) {\n var _items_find, _items_find1;\n var search = searchRef.current + key;\n var items = getItems().filter(function(item) {\n return !item.disabled;\n });\n var currentItem = document.activeElement;\n var currentMatch = (_items_find = items.find(function(item) {\n return item.ref.current === currentItem;\n })) === null || _items_find === void 0 ? void 0 : _items_find.textValue;\n var values = items.map(function(item) {\n return item.textValue;\n });\n var nextMatch = getNextMatch(values, search, currentMatch);\n var newItem = (_items_find1 = items.find(function(item) {\n return item.textValue === nextMatch;\n })) === null || _items_find1 === void 0 ? void 0 : _items_find1.ref.current;\n (function updateSearch(value) {\n searchRef.current = value;\n clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = setTimeout(function() {\n return updateSearch(\"\");\n }, 1e3);\n })(search);\n if (newItem) {\n setTimeout(function() {\n return newItem.focus();\n });\n }\n };\n React.useEffect(function() {\n return function() {\n return clearTimeout(timerRef.current);\n };\n }, []);\n React.useEffect(function() {\n if (!import_web.isWeb || !context.open) return;\n var frame = requestAnimationFrame(function() {\n var container = contentRef.current;\n var el = container === null || container === void 0 ? void 0 : container.querySelector(\"[data-tamagui-menu-content]\");\n if (el) focusableContentRef.current = el;\n });\n return function() {\n return cancelAnimationFrame(frame);\n };\n }, [\n context.open\n ]);\n React.useEffect(function() {\n if (!import_web.isWeb || disableDismissOnScroll || !context.open) return;\n var handleScroll = function(event) {\n var _popperContext_refs_reference, _popperContext_refs;\n var scrolled = event.target;\n if (!scrolled) return;\n var content2 = contentRef.current;\n if (content2 === null || content2 === void 0 ? void 0 : content2.contains(scrolled)) return;\n var reference = (_popperContext_refs = popperContext.refs) === null || _popperContext_refs === void 0 ? void 0 : (_popperContext_refs_reference = _popperContext_refs.reference) === null || _popperContext_refs_reference === void 0 ? void 0 : _popperContext_refs_reference.current;\n var _reference_contextElement;\n var anchor = _instanceof(reference, Element) ? reference : (_reference_contextElement = reference === null || reference === void 0 ? void 0 : reference.contextElement) !== null && _reference_contextElement !== void 0 ? _reference_contextElement : null;\n if (anchor && !scrolled.contains(anchor)) return;\n context.onOpenChange(false);\n };\n window.addEventListener(\"scroll\", handleScroll, {\n capture: true,\n passive: true\n });\n return function() {\n window.removeEventListener(\"scroll\", handleScroll, {\n capture: true\n });\n };\n }, [\n disableDismissOnScroll,\n context.open,\n context.onOpenChange,\n popperContext.refs\n ]);\n if (import_web.isWeb) {\n (0, import_focus_guard.useFocusGuards)();\n }\n var isPointerMovingToSubmenu = React.useCallback(function(event) {\n var _pointerGraceIntentRef_current, _pointerGraceIntentRef_current1;\n var isMovingTowards = pointerDirRef.current === ((_pointerGraceIntentRef_current = pointerGraceIntentRef.current) === null || _pointerGraceIntentRef_current === void 0 ? void 0 : _pointerGraceIntentRef_current.side);\n var inArea = isPointerInGraceArea(event, (_pointerGraceIntentRef_current1 = pointerGraceIntentRef.current) === null || _pointerGraceIntentRef_current1 === void 0 ? void 0 : _pointerGraceIntentRef_current1.area);\n return isMovingTowards && inArea;\n }, []);\n var content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperContent, {\n role: \"menu\",\n // tabIndex allows the content to be focusable so that onItemLeave can\n // focus the content frame and properly blur the previously focused item\n tabIndex: -1,\n \"aria-orientation\": \"vertical\",\n \"data-state\": getOpenState(context.open),\n \"data-tamagui-menu-content\": \"\",\n // TODO\n // @ts-ignore\n dir: rootContext.dir,\n scope: scope || MENU_CONTEXT,\n ...contentProps,\n ref: composedRefs,\n className: contentProps.transition ? void 0 : contentProps.className,\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(contentProps.onKeyDown, function(event) {\n var target = event.target;\n var isKeyDownInside = target.closest(\"[data-tamagui-menu-content]\") === event.currentTarget;\n var isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n var isCharacterKey = event.key.length === 1;\n if (isKeyDownInside) {\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && isCharacterKey) handleTypeaheadSearch(event.key);\n }\n var isOnContentFrame = event.target.hasAttribute(\"data-tamagui-menu-content\");\n if (!isKeyDownInside || !isOnContentFrame) return;\n if (!FIRST_LAST_KEYS.includes(event.key)) return;\n event.preventDefault();\n var items = getItems().filter(function(item) {\n return !item.disabled;\n });\n var candidateNodes = items.map(function(item) {\n return item.ref.current;\n });\n if (LAST_KEYS.includes(event.key)) candidateNodes.reverse();\n focusFirst(candidateNodes, {\n focusVisible: true\n });\n }),\n // TODO\n // @ts-ignore\n onBlur: (0, import_web.composeEventHandlers)(props.onBlur, function(event) {\n var _event_currentTarget;\n if (!((_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.contains(event.target))) {\n clearTimeout(timerRef.current);\n searchRef.current = \"\";\n }\n }),\n // TODO\n onPointerMove: (0, import_web.composeEventHandlers)(props.onPointerMove, function(event) {\n var _event_currentTarget;\n if (event.pointerType !== \"mouse\") return;\n var target = event.target;\n var pointerXHasChanged = lastPointerXRef.current !== event.clientX;\n if (((_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.contains(target)) && pointerXHasChanged) {\n var newDir = event.clientX > lastPointerXRef.current ? \"right\" : \"left\";\n pointerDirRef.current = newDir;\n lastPointerXRef.current = event.clientX;\n }\n })\n } : {}\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentProvider, {\n scope,\n searchRef,\n onItemEnter: React.useCallback(function(event) {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n }, [\n isPointerMovingToSubmenu\n ]),\n onItemLeave: React.useCallback(function(event) {\n var _focusableContentRef_current;\n if (isPointerMovingToSubmenu(event)) return;\n (_focusableContentRef_current = focusableContentRef.current) === null || _focusableContentRef_current === void 0 ? void 0 : _focusableContentRef_current.focus();\n setCurrentItemId(null);\n }, [\n isPointerMovingToSubmenu\n ]),\n onTriggerLeave: React.useCallback(function(event) {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n }, [\n isPointerMovingToSubmenu\n ]),\n pointerGraceTimerRef,\n onPointerGraceIntentChange: React.useCallback(function(intent) {\n pointerGraceIntentRef.current = intent;\n }, []),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_remove_scroll.RemoveScroll, {\n enabled: disableOutsideScroll,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_focus_scope.FocusScope, {\n asChild: false,\n trapped: trapFocus,\n onMountAutoFocus: (0, import_web.composeEventHandlers)(onOpenAutoFocus, function(event) {\n event.cancel();\n var content2 = document.querySelector(\"[data-tamagui-menu-content]\");\n content2 === null || content2 === void 0 ? void 0 : content2.focus({\n preventScroll: true\n });\n }),\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_dismissable.Dismissable, {\n disableOutsidePointerEvents,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n asChild: true,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_roving_focus.RovingFocusGroup, {\n asChild: true,\n __scopeRovingFocusGroup: scope || MENU_CONTEXT,\n dir: rootContext.dir,\n orientation: \"vertical\",\n loop,\n currentTabStopId: currentItemId,\n onCurrentTabStopIdChange: setCurrentItemId,\n onEntryFocus: (0, import_web.composeEventHandlers)(onEntryFocus, function(event) {\n if (!rootContext.isUsingKeyboardRef.current) {\n event.cancel();\n }\n }),\n children: content\n })\n })\n })\n })\n });\n });\n MenuContent.displayName = CONTENT_NAME;\n var ITEM_NAME = \"MenuItem\";\n var ITEM_SELECT = \"menu.itemSelect\";\n var MenuItem = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var {\n disabled = false,\n onSelect,\n preventCloseOnSelect,\n children,\n scope = MENU_CONTEXT,\n // filter out native-only props that shouldn't reach the DOM\n // @ts-ignore\n destructive,\n // @ts-ignore\n hidden,\n // @ts-ignore\n androidIconName,\n ...itemProps\n } = props;\n var ref = React.useRef(null);\n var rootContext = useMenuRootContext(scope);\n var contentContext = useMenuContentContext(scope);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n var isPointerDownRef = React.useRef(false);\n var handleSelect = function() {\n var menuItem = ref.current;\n if (!disabled && menuItem) {\n if (import_web.isWeb) {\n var menuItemEl = menuItem;\n var itemSelectEvent = new CustomEvent(ITEM_SELECT, {\n bubbles: true,\n cancelable: true\n });\n menuItemEl.addEventListener(ITEM_SELECT, function(event) {\n return onSelect === null || onSelect === void 0 ? void 0 : onSelect(event);\n }, {\n once: true\n });\n (0, import_dismissable.dispatchDiscreteCustomEvent)(menuItemEl, itemSelectEvent);\n if (itemSelectEvent.defaultPrevented || preventCloseOnSelect) {\n isPointerDownRef.current = false;\n } else {\n rootContext.onClose();\n }\n } else {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect({\n target: menuItem\n });\n isPointerDownRef.current = false;\n if (!preventCloseOnSelect) {\n rootContext.onClose();\n }\n }\n }\n };\n var content = typeof children === \"string\" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n children\n }) : children;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItemImpl, {\n ...itemProps,\n scope,\n // @ts-ignore\n ref: composedRefs,\n disabled,\n onPress: (0, import_web.composeEventHandlers)(props.onPress, handleSelect),\n onPointerDown: function(event) {\n var _props_onPointerDown;\n (_props_onPointerDown = props.onPointerDown) === null || _props_onPointerDown === void 0 ? void 0 : _props_onPointerDown.call(props, event);\n isPointerDownRef.current = true;\n },\n onPointerUp: (0, import_web.composeEventHandlers)(props.onPointerUp, function(event) {\n if (import_web.isWeb) {\n var _event_currentTarget;\n if (!isPointerDownRef.current) (_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.click();\n }\n }),\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {\n var isTypingAhead = contentContext.searchRef.current !== \"\";\n if (disabled || isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) {\n var _event_currentTarget;\n (_event_currentTarget = event.currentTarget) === null || _event_currentTarget === void 0 ? void 0 : _event_currentTarget.click();\n event.preventDefault();\n }\n })\n } : {},\n children: content\n });\n });\n var MenuItemImpl = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var { scope = MENU_CONTEXT, className, disabled = false, textValue, ...itemProps } = props;\n var contentContext = useMenuContentContext(scope);\n var ref = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n var [isFocused, setIsFocused] = React.useState(false);\n var [textContent, setTextContent] = React.useState(\"\");\n if (import_web.isWeb) {\n React.useEffect(function() {\n var menuItem = ref.current;\n if (menuItem) {\n var _menuItem_textContent;\n setTextContent(((_menuItem_textContent = menuItem.textContent) !== null && _menuItem_textContent !== void 0 ? _menuItem_textContent : \"\").trim());\n }\n }, [\n itemProps.children\n ]);\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.ItemSlot, {\n scope,\n disabled,\n textValue: textValue !== null && textValue !== void 0 ? textValue : textContent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_roving_focus.RovingFocusGroup.Item, {\n asChild: true,\n __scopeRovingFocusGroup: scope,\n tabIndex: disabled ? -1 : 0,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n className: `is_${ITEM_NAME} ${className || \"\"}`.trim(),\n role: \"menuitem\",\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n ...itemProps,\n ref: composedRefs,\n /**\n * We focus items on `pointerMove` to achieve the following:\n *\n * - Mouse over an item (it focuses)\n * - Leave mouse where it is and use keyboard to focus a different item\n * - Wiggle mouse without it leaving previously focused item\n * - Previously focused item should re-focus\n *\n * If we used `mouseOver`/`mouseEnter` it would not re-focus when the mouse\n * wiggles. This is to match native menu implementation.\n */\n onPointerMove: (0, import_web.composeEventHandlers)(props.onPointerMove, function(event) {\n if (event.pointerType !== \"mouse\") return;\n if (disabled) {\n contentContext.onItemLeave(event);\n } else {\n contentContext.onItemEnter(event);\n if (!event.defaultPrevented) {\n var item = event.currentTarget;\n item.focus({\n preventScroll: true,\n focusVisible: false\n });\n }\n }\n }),\n onPointerLeave: (0, import_web.composeEventHandlers)(props.onPointerLeave, function(event) {\n contentContext.onItemLeave(event);\n }),\n onFocus: (0, import_web.composeEventHandlers)(props.onFocus, function() {\n return setIsFocused(true);\n }),\n onBlur: (0, import_web.composeEventHandlers)(props.onBlur, function() {\n return setIsFocused(false);\n })\n })\n })\n });\n });\n MenuItem.displayName = ITEM_NAME;\n var ITEM_TITLE_NAME = \"MenuItemTitle\";\n var MenuItemTitle = (0, import_core.createStyledHOC)(import_web.Text, function(props, forwardedRef) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n ...props,\n ref: forwardedRef\n });\n });\n MenuItemTitle.displayName = ITEM_TITLE_NAME;\n var ITEM_SUB_TITLE_NAME = \"MenuItemSubTitle\";\n var MenuItemSubTitle = (0, import_core.createStyledHOC)(import_web.Text, function(props, forwardedRef) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n ...props,\n ref: forwardedRef\n });\n });\n MenuItemSubTitle.displayName = ITEM_SUB_TITLE_NAME;\n var ITEM_IMAGE = \"MenuItemImage\";\n var MenuItemImage = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var {\n // @ts-ignore - native menu ios config\n ios,\n // @ts-ignore\n androidIconName,\n ...rest\n } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuImageFrame, {\n ...rest,\n ref: forwardedRef\n });\n });\n MenuItemImage.displayName = ITEM_IMAGE;\n var ITEM_ICON = \"MenuItemIcon\";\n var MenuItemIcon = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var {\n // @ts-ignore\n ios,\n // @ts-ignore\n android,\n // @ts-ignore\n androidIconName,\n ...rest\n } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n ...rest,\n ref: forwardedRef\n });\n });\n MenuItemIcon.displayName = ITEM_ICON;\n var CHECKBOX_ITEM_NAME = \"MenuCheckboxItem\";\n var MenuCheckboxItem = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var {\n checked = false,\n onCheckedChange,\n scope = MENU_CONTEXT,\n // filter out native-only props\n // @ts-ignore - native menu value state\n value,\n // @ts-ignore - native menu value change handler\n onValueChange,\n className,\n ...checkboxItemProps\n } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ItemIndicatorProvider, {\n scope,\n checked,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItem, {\n className: `is_${CHECKBOX_ITEM_NAME} ${className || \"\"}`.trim(),\n role: import_web.isWeb ? \"menuitemcheckbox\" : \"menuitem\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n ...checkboxItemProps,\n scope,\n ref: forwardedRef,\n \"data-state\": getCheckedState(checked),\n onSelect: (0, import_web.composeEventHandlers)(checkboxItemProps.onSelect, function() {\n return onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(isIndeterminate(checked) ? true : !checked);\n }, {\n checkDefaultPrevented: false\n })\n })\n });\n });\n MenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;\n var RADIO_GROUP_NAME = \"MenuRadioGroup\";\n var { Provider: RadioGroupProvider, useStyledContext: useRadioGroupContext } = (0, import_web.createStyledContext)();\n var MenuRadioGroup = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { value, onValueChange, scope = MENU_CONTEXT, className, ...groupProps } = props;\n var handleValueChange = (0, import_use_callback_ref.useCallbackRef)(onValueChange);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RadioGroupProvider, {\n scope,\n value,\n onValueChange: handleValueChange,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n className: `is_${RADIO_GROUP_NAME} ${className || \"\"}`.trim(),\n ...groupProps,\n ref: forwardedRef\n })\n });\n });\n MenuRadioGroup.displayName = RADIO_GROUP_NAME;\n var RADIO_ITEM_NAME = \"MenuRadioItem\";\n var MenuRadioItem = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { value, scope = MENU_CONTEXT, className, ...radioItemProps } = props;\n var context = useRadioGroupContext(scope);\n var checked = value === context.value;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ItemIndicatorProvider, {\n scope,\n checked,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItem, {\n className: `is_${RADIO_ITEM_NAME} ${className || \"\"}`.trim(),\n ...radioItemProps,\n scope,\n \"aria-checked\": checked,\n ref: forwardedRef,\n role: import_web.isWeb ? \"menuitemradio\" : \"menuitem\",\n \"data-state\": getCheckedState(checked),\n onSelect: (0, import_web.composeEventHandlers)(radioItemProps.onSelect, function() {\n var _context_onValueChange;\n return (_context_onValueChange = context.onValueChange) === null || _context_onValueChange === void 0 ? void 0 : _context_onValueChange.call(context, value);\n }, {\n checkDefaultPrevented: false\n })\n })\n });\n });\n MenuRadioItem.displayName = RADIO_ITEM_NAME;\n var ITEM_INDICATOR_NAME = \"MenuItemIndicator\";\n var { Provider: ItemIndicatorProvider, useStyledContext: useItemIndicatorContext } = (0, import_web.createStyledContext)();\n var MenuItemIndicator = (0, import_core.createStyledHOC)(import_web.View, function(props, forwardedRef) {\n var { scope = MENU_CONTEXT, className, forceMount, ...itemIndicatorProps } = props;\n var indicatorContext = useItemIndicatorContext(scope);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, {\n children: forceMount || isIndeterminate(indicatorContext.checked) || indicatorContext.checked === true ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n className: `is_${ITEM_INDICATOR_NAME} ${className || \"\"}`.trim(),\n render: \"span\",\n ...itemIndicatorProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(indicatorContext.checked)\n }) : null\n });\n });\n MenuItemIndicator.displayName = ITEM_INDICATOR_NAME;\n var MenuArrow = (0, import_core.createRefComponent)(function MenuArrow2(props, forwardedRef) {\n var { scope = MENU_CONTEXT, className, ...rest } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.PopperArrow, {\n scope,\n className: `is_PopperArrow ${className || \"\"}`.trim(),\n ...rest,\n ref: forwardedRef\n });\n });\n var SUB_NAME = \"MenuSub\";\n var { Provider: MenuSubProvider, useStyledContext: useMenuSubContext } = (0, import_web.createStyledContext)();\n var MenuSub = function(props) {\n var _parentPopperContext_placement;\n var isTouchDevice = (0, import_web.useIsTouchDevice)();\n var { scope = MENU_CONTEXT } = props;\n var rootContext = useMenuRootContext(scope);\n var parentPopperContext = PopperPrimitive.usePopperContext(scope);\n var parentSide = (_parentPopperContext_placement = parentPopperContext.placement) === null || _parentPopperContext_placement === void 0 ? void 0 : _parentPopperContext_placement.split(\"-\")[0];\n var isNestedSubmenu = parentSide === \"left\" || parentSide === \"right\";\n var defaultPlacement = isTouchDevice ? \"bottom\" : isNestedSubmenu ? `${parentSide}-start` : rootContext.dir === \"rtl\" ? \"left-start\" : \"right-start\";\n var { children, open = false, onOpenChange, allowFlip: allowFlipProp = {\n padding: 10\n }, stayInFrame = {\n padding: 10\n }, placement = defaultPlacement, ...rest } = props;\n var allowFlip = React.useMemo(function() {\n if (!isNestedSubmenu || typeof allowFlipProp === \"boolean\") return allowFlipProp;\n if (allowFlipProp.fallbackPlacements) return allowFlipProp;\n var side = placement.split(\"-\")[0];\n var align = placement.split(\"-\")[1] || \"start\";\n var otherAlign = align === \"start\" ? \"end\" : \"start\";\n if (side === \"left\" || side === \"right\") {\n var oppositeSide = side === \"right\" ? \"left\" : \"right\";\n return {\n ...(typeof allowFlipProp === \"undefined\" ? \"undefined\" : _type_of(allowFlipProp)) === \"object\" ? allowFlipProp : {},\n fallbackPlacements: [\n `${side}-${otherAlign}`,\n `${oppositeSide}-${align}`,\n `${oppositeSide}-${otherAlign}`\n ]\n };\n }\n return allowFlipProp;\n }, [\n isNestedSubmenu,\n allowFlipProp,\n placement\n ]);\n var parentMenuContext = useMenuContext(scope);\n var [trigger, setTrigger] = React.useState(null);\n var [content, setContent] = React.useState(null);\n var handleOpenChange = (0, import_use_callback_ref.useCallbackRef)(onOpenChange);\n React.useEffect(function() {\n if (parentMenuContext.open === false) handleOpenChange(false);\n return function() {\n return handleOpenChange(false);\n };\n }, [\n parentMenuContext.open,\n handleOpenChange\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PopperPrimitive.Popper, {\n open,\n placement,\n allowFlip,\n stayInFrame,\n ...rest,\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuProvider, {\n scope,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuSubProvider, {\n scope,\n contentId: (0, import_react.useId)(),\n triggerId: (0, import_react.useId)(),\n trigger,\n onTriggerChange: setTrigger,\n children\n })\n })\n });\n };\n MenuSub.displayName = SUB_NAME;\n var SUB_TRIGGER_NAME = \"MenuSubTrigger\";\n var MenuSubTrigger = (0, import_core.createRefComponent)(function(props, forwardedRef) {\n var scope = props.scope || MENU_CONTEXT;\n var context = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var subContext = useMenuSubContext(scope);\n var contentContext = useMenuContentContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var openTimerRef = React.useRef(null);\n var { pointerGraceTimerRef, onPointerGraceIntentChange } = contentContext;\n var effectiveDir = rootContext.dir;\n var clearOpenTimer = React.useCallback(function() {\n if (openTimerRef.current) window.clearTimeout(openTimerRef.current);\n openTimerRef.current = null;\n }, []);\n React.useEffect(function() {\n return clearOpenTimer;\n }, [\n clearOpenTimer\n ]);\n React.useEffect(function() {\n var pointerGraceTimer = pointerGraceTimerRef.current;\n return function() {\n window.clearTimeout(pointerGraceTimer);\n onPointerGraceIntentChange(null);\n };\n }, [\n pointerGraceTimerRef,\n onPointerGraceIntentChange\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuAnchor, {\n className: `is_${SUB_TRIGGER_NAME}`,\n asChild: \"except-style\",\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuItemImpl, {\n id: subContext.triggerId,\n \"aria-haspopup\": \"menu\",\n \"aria-expanded\": context.open,\n \"aria-controls\": subContext.contentId,\n \"data-state\": getOpenState(context.open),\n ...props,\n ref: (0, import_web.composeRefs)(forwardedRef, subContext.onTriggerChange),\n // This is redundant for mouse users but we cannot determine pointer type from\n // click event and we cannot use pointerup event (see git history for reasons why)\n onPress: function(event) {\n var _props_onPress;\n (_props_onPress = props.onPress) === null || _props_onPress === void 0 ? void 0 : _props_onPress.call(props, event);\n if (props.disabled || event.defaultPrevented) return;\n if (import_web.isWeb) {\n event.currentTarget.focus();\n }\n if (!context.open) context.onOpenChange(true);\n },\n onPointerMove: (0, import_web.composeEventHandlers)(\n props.onPointerMove,\n // @ts-ignore\n whenMouse(function(event) {\n contentContext.onItemEnter(event);\n if (event.defaultPrevented) return;\n if (!props.disabled && !context.open && !openTimerRef.current) {\n contentContext.onPointerGraceIntentChange(null);\n openTimerRef.current = window.setTimeout(function() {\n context.onOpenChange(true);\n clearOpenTimer();\n }, 100);\n }\n })\n ),\n onPointerLeave: (0, import_web.composeEventHandlers)(props.onPointerLeave, function(eventIn) {\n var _context_content;\n var event = eventIn;\n clearOpenTimer();\n var contentRect = (_context_content = context.content) === null || _context_content === void 0 ? void 0 : _context_content.getBoundingClientRect();\n if (contentRect) {\n var _contentEl_dataset, _sideEl_dataset;\n var contentEl = context.content;\n var sideEl = (contentEl === null || contentEl === void 0 ? void 0 : (_contentEl_dataset = contentEl.dataset) === null || _contentEl_dataset === void 0 ? void 0 : _contentEl_dataset.side) ? contentEl : contentEl === null || contentEl === void 0 ? void 0 : contentEl.querySelector(\"[data-side]\");\n var side = (sideEl === null || sideEl === void 0 ? void 0 : (_sideEl_dataset = sideEl.dataset) === null || _sideEl_dataset === void 0 ? void 0 : _sideEl_dataset.side) || \"right\";\n var rightSide = side === \"right\";\n var bleed = rightSide ? -5 : 5;\n var contentNearEdge = contentRect[rightSide ? \"left\" : \"right\"];\n var contentFarEdge = contentRect[rightSide ? \"right\" : \"left\"];\n var polygon = {\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n {\n x: event.clientX + bleed,\n y: event.clientY\n },\n {\n x: contentNearEdge,\n y: contentRect.top\n },\n {\n x: contentFarEdge,\n y: contentRect.top\n },\n {\n x: contentFarEdge,\n y: contentRect.bottom\n },\n {\n x: contentNearEdge,\n y: contentRect.bottom\n }\n ],\n side\n };\n contentContext.onPointerGraceIntentChange(polygon);\n window.clearTimeout(pointerGraceTimerRef.current);\n pointerGraceTimerRef.current = window.setTimeout(function() {\n return contentContext.onPointerGraceIntentChange(null);\n }, 300);\n } else if (import_web.isWeb && subContext.trigger) {\n var triggerEl = subContext.trigger;\n var triggerRect = triggerEl === null || triggerEl === void 0 ? void 0 : triggerEl.getBoundingClientRect();\n if (triggerRect) {\n var _popperContext_placement;\n var placementSide = (_popperContext_placement = popperContext.placement) === null || _popperContext_placement === void 0 ? void 0 : _popperContext_placement.split(\"-\")[0];\n var side1 = placementSide === \"left\" || placementSide === \"right\" ? placementSide : rootContext.dir === \"rtl\" ? \"left\" : \"right\";\n var rightSide1 = side1 === \"right\";\n var bleed1 = rightSide1 ? -5 : 5;\n var nearEdge = rightSide1 ? triggerRect.right + 4 : triggerRect.left - 4;\n var farEdge = rightSide1 ? nearEdge + 200 : nearEdge - 200;\n var polygon1 = {\n area: [\n {\n x: event.clientX + bleed1,\n y: event.clientY\n },\n {\n x: nearEdge,\n y: triggerRect.top - 50\n },\n {\n x: farEdge,\n y: triggerRect.top - 50\n },\n {\n x: farEdge,\n y: triggerRect.bottom + 50\n },\n {\n x: nearEdge,\n y: triggerRect.bottom + 50\n }\n ],\n side: side1\n };\n contentContext.onPointerGraceIntentChange(polygon1);\n window.clearTimeout(pointerGraceTimerRef.current);\n pointerGraceTimerRef.current = window.setTimeout(function() {\n return contentContext.onPointerGraceIntentChange(null);\n }, 300);\n }\n } else {\n contentContext.onTriggerLeave(event);\n if (event.defaultPrevented) return;\n contentContext.onPointerGraceIntentChange(null);\n }\n }),\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {\n var isTypingAhead = contentContext.searchRef.current !== \"\";\n if (props.disabled || isTypingAhead && event.key === \" \") return;\n var willOpen = SUB_OPEN_KEYS[effectiveDir].includes(event.key);\n if (willOpen) {\n var _popperContext_refs, _context_content;\n if (context.open && context.content) {\n var _contentEl_querySelector;\n var contentEl = context.content;\n var firstItem = (_contentEl_querySelector = contentEl.querySelector) === null || _contentEl_querySelector === void 0 ? void 0 : _contentEl_querySelector.call(contentEl, '[role=\"menuitem\"]:not([data-disabled])');\n if (firstItem) {\n firstItem.focus({\n focusVisible: true\n });\n event.preventDefault();\n return;\n }\n }\n var triggerEl = event.currentTarget;\n (_popperContext_refs = popperContext.refs) === null || _popperContext_refs === void 0 ? void 0 : _popperContext_refs.setReference(triggerEl);\n context.onOpenChange(true);\n requestAnimationFrame(function() {\n var _popperContext_update;\n (_popperContext_update = popperContext.update) === null || _popperContext_update === void 0 ? void 0 : _popperContext_update.call(popperContext);\n });\n (_context_content = context.content) === null || _context_content === void 0 ? void 0 : _context_content.focus({\n focusVisible: true\n });\n event.preventDefault();\n }\n })\n } : null\n })\n });\n });\n MenuSubTrigger.displayName = SUB_TRIGGER_NAME;\n var SUB_CONTENT_NAME = \"MenuSubContent\";\n var MenuSubContentFrame = (0, import_web.styled)(PopperPrimitive.PopperContentFrame, {\n displayName: SUB_CONTENT_NAME\n });\n var MenuSubContent = (0, import_core.createStyledHOC)(MenuSubContentFrame, function(props, forwardedRef) {\n var _popperContext_placement;\n var scope = props.scope || MENU_CONTEXT;\n var portalContext = usePortalContext(scope);\n var { forceMount = portalContext.forceMount, ...subContentProps } = props;\n var context = useMenuContext(scope);\n var rootContext = useMenuRootContext(scope);\n var subContext = useMenuSubContext(scope);\n var popperContext = PopperPrimitive.usePopperContext(scope);\n var ref = React.useRef(null);\n var composedRefs = (0, import_web.useComposedRefs)(forwardedRef, ref);\n var placementSide = (_popperContext_placement = popperContext.placement) === null || _popperContext_placement === void 0 ? void 0 : _popperContext_placement.split(\"-\")[0];\n var dataSide = placementSide === \"left\" || placementSide === \"right\" ? placementSide : rootContext.dir === \"rtl\" ? \"left\" : \"right\";\n var effectiveDir = rootContext.dir;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Provider, {\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Slot, {\n scope,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuContentImpl, {\n id: subContext.contentId,\n \"aria-labelledby\": subContext.triggerId,\n ...subContentProps,\n ref: composedRefs,\n \"data-side\": dataSide,\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n trapFocus: false,\n onOpenAutoFocus: function(event) {\n if (rootContext.isUsingKeyboardRef.current) {\n var _root_querySelector, _this;\n var root = ref.current;\n var content = root === null || root === void 0 ? void 0 : (_root_querySelector = root.querySelector) === null || _root_querySelector === void 0 ? void 0 : _root_querySelector.call(root, \"[data-tamagui-menu-content]\");\n (_this = content || root) === null || _this === void 0 ? void 0 : _this.focus({\n preventScroll: true\n });\n }\n event.cancel();\n },\n // The menu might close because of focusing another menu item in the parent menu. We\n // don't want it to refocus the trigger in that case so we handle trigger focus ourselves.\n onCloseAutoFocus: function(event) {\n return event.cancel();\n },\n onFocusOutside: (0, import_web.composeEventHandlers)(props.onFocusOutside, function(event) {\n var _event_event;\n if (((_event_event = event.event) === null || _event_event === void 0 ? void 0 : _event_event.target) !== subContext.trigger) context.onOpenChange(false);\n }),\n onEscapeKeyDown: (0, import_web.composeEventHandlers)(props.onEscapeKeyDown, function(event) {\n var _subContext_trigger, _event_event_preventDefault, _event_event;\n context.onOpenChange(false);\n (_subContext_trigger = subContext.trigger) === null || _subContext_trigger === void 0 ? void 0 : _subContext_trigger.focus({\n focusVisible: true\n });\n event.cancel();\n (_event_event = event.event) === null || _event_event === void 0 ? void 0 : (_event_event_preventDefault = _event_event.preventDefault) === null || _event_event_preventDefault === void 0 ? void 0 : _event_event_preventDefault.call(_event_event);\n }),\n ...import_web.isWeb ? {\n onKeyDown: (0, import_web.composeEventHandlers)(props.onKeyDown, function(event) {\n var isKeyDownInside = event.currentTarget.contains(event.target);\n var isCloseKey = SUB_CLOSE_KEYS[effectiveDir].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n var _subContext_trigger;\n context.onOpenChange(false);\n (_subContext_trigger = subContext.trigger) === null || _subContext_trigger === void 0 ? void 0 : _subContext_trigger.focus({\n focusVisible: true\n });\n event.preventDefault();\n }\n })\n } : null\n })\n })\n });\n });\n MenuSubContent.displayName = SUB_CONTENT_NAME;\n var Anchor = MenuAnchor;\n var Portal = MenuPortal;\n var Content = MenuContent;\n var Group = (0, import_core.createStyledHOC)(import_web.View, function(props, ref) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n role: \"group\",\n ...props,\n ref\n });\n });\n Group.displayName = \"MenuGroup\";\n var Label = (0, import_core.createStyledHOC)(import_web.Text, function(props, ref) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.Text, {\n ...props,\n ref\n });\n });\n Label.displayName = \"MenuLabel\";\n var Item = MenuItem;\n var CheckboxItem = MenuCheckboxItem;\n var RadioGroup = MenuRadioGroup;\n var RadioItem = MenuRadioItem;\n var ItemIndicator = MenuItemIndicator;\n var Separator = (0, import_core.createStyledHOC)(import_web.View, function(props, ref) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.View, {\n role: \"separator\",\n \"aria-orientation\": \"horizontal\",\n ...props,\n ref\n });\n });\n Separator.displayName = \"MenuSeparator\";\n var Arrow = MenuArrow;\n var Sub = MenuSub;\n var SubTrigger = MenuSubTrigger;\n var SubContent = MenuSubContent;\n var ItemTitle = MenuItemTitle;\n var ItemSubtitle = MenuItemSubTitle;\n var ItemImage = MenuItemImage;\n var ItemIcon = MenuItemIcon;\n var Menu = (0, import_web.withStaticProperties)(MenuComp, {\n Anchor,\n Portal,\n Content,\n Group,\n Label,\n Item,\n CheckboxItem,\n RadioGroup,\n RadioItem,\n ItemIndicator,\n Separator,\n Arrow,\n Sub,\n SubTrigger,\n SubContent,\n ItemTitle,\n ItemSubtitle,\n ItemImage,\n ItemIcon\n });\n return {\n Menu\n };\n}\nfunction getOpenState(open) {\n return open ? \"open\" : \"closed\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getCheckedState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nfunction focusFirst(candidates, options) {\n var PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = candidates[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var candidate = _step.value;\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({\n preventScroll: true,\n focusVisible: options === null || options === void 0 ? void 0 : options.focusVisible\n });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map(function(_, index) {\n return array[(startIndex + index) % array.length];\n });\n}\nfunction getNextMatch(values, search, currentMatch) {\n var isRepeated = search.length > 1 && Array.from(search).every(function(char) {\n return char === search[0];\n });\n var normalizedSearch = isRepeated ? search[0] : search;\n var currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;\n var wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));\n var excludeCurrentMatch = normalizedSearch.length === 1;\n if (excludeCurrentMatch) wrappedValues = wrappedValues.filter(function(v) {\n return v !== currentMatch;\n });\n var nextMatch = wrappedValues.find(function(value) {\n return value.toLowerCase().startsWith(normalizedSearch.toLowerCase());\n });\n return nextMatch !== currentMatch ? nextMatch : void 0;\n}\nfunction isPointInPolygon(point, polygon) {\n var { x, y } = point;\n var inside = false;\n for (var i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n var xi = polygon[i].x;\n var yi = polygon[i].y;\n var xj = polygon[j].x;\n var yj = polygon[j].y;\n var intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\nfunction isPointerInGraceArea(event, area) {\n if (!area) return false;\n var cursorPos = {\n x: event.clientX,\n y: event.clientY\n };\n return isPointInPolygon(cursorPos, area);\n}\n//# sourceMappingURL=createBaseMenu.js.map\n"],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
21
21
|
var withNativeMenu_exports = {};
|
|
22
22
|
__export(withNativeMenu_exports, { withNativeMenu: () => withNativeMenu });
|
|
23
23
|
module.exports = __toCommonJS(withNativeMenu_exports);
|
|
24
|
+
var import_native = require("@tamagui/native");
|
|
24
25
|
var import_web = require("@tamagui/web");
|
|
25
26
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
26
27
|
function withNativeMenu({ Component, NativeComponent }) {
|
|
@@ -31,6 +32,9 @@ function withNativeMenu({ Component, NativeComponent }) {
|
|
|
31
32
|
return Component;
|
|
32
33
|
}
|
|
33
34
|
const Menu = (props) => {
|
|
35
|
+
if (!(0, import_native.getNativeMenuAdapter)()) {
|
|
36
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props });
|
|
37
|
+
}
|
|
34
38
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NativeComponent, { ...props });
|
|
35
39
|
};
|
|
36
40
|
Menu.displayName = NativeComponent.displayName || Component?.displayName;
|
|
@@ -24,6 +24,7 @@ var withNativeMenu_exports = {};
|
|
|
24
24
|
__export(withNativeMenu_exports, { withNativeMenu: () => withNativeMenu });
|
|
25
25
|
module.exports = __toCommonJS(withNativeMenu_exports);
|
|
26
26
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
27
|
+
var import_native = require("@tamagui/native");
|
|
27
28
|
var import_web = require("@tamagui/web");
|
|
28
29
|
function withNativeMenu(param) {
|
|
29
30
|
var { Component, NativeComponent } = param;
|
|
@@ -34,6 +35,9 @@ function withNativeMenu(param) {
|
|
|
34
35
|
return Component;
|
|
35
36
|
}
|
|
36
37
|
var Menu = function(props) {
|
|
38
|
+
if (!(0, import_native.getNativeMenuAdapter)()) {
|
|
39
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props });
|
|
40
|
+
}
|
|
37
41
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NativeComponent, { ...props });
|
|
38
42
|
};
|
|
39
43
|
Menu.displayName = NativeComponent.displayName || (Component === null || Component === void 0 ? void 0 : Component.displayName);
|
|
@@ -24,6 +24,7 @@ var withNativeMenu_exports = {};
|
|
|
24
24
|
__export(withNativeMenu_exports, { withNativeMenu: () => withNativeMenu });
|
|
25
25
|
module.exports = __toCommonJS(withNativeMenu_exports);
|
|
26
26
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
27
|
+
var import_native = require("@tamagui/native");
|
|
27
28
|
var import_web = require("@tamagui/web");
|
|
28
29
|
function withNativeMenu(param) {
|
|
29
30
|
var { Component, NativeComponent } = param;
|
|
@@ -34,6 +35,9 @@ function withNativeMenu(param) {
|
|
|
34
35
|
return Component;
|
|
35
36
|
}
|
|
36
37
|
var Menu = function(props) {
|
|
38
|
+
if (!(0, import_native.getNativeMenuAdapter)()) {
|
|
39
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props });
|
|
40
|
+
}
|
|
37
41
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NativeComponent, { ...props });
|
|
38
42
|
};
|
|
39
43
|
Menu.displayName = NativeComponent.displayName || (Component === null || Component === void 0 ? void 0 : Component.displayName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withNativeMenu.native.js","names":[],"sources":["cjs/createNativeMenu/withNativeMenu.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar withNativeMenu_exports = {};\n__export(withNativeMenu_exports, {\n withNativeMenu: () => withNativeMenu\n});\nmodule.exports = __toCommonJS(withNativeMenu_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_web = require(\"@tamagui/web\");\nfunction withNativeMenu(param) {\n var { Component, NativeComponent } = param;\n if (import_web.isWeb) {\n return Component;\n }\n if (!NativeComponent) {\n return Component;\n }\n var Menu = function(props) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NativeComponent, {\n ...props\n });\n };\n Menu.displayName = NativeComponent.displayName || (Component === null || Component === void 0 ? void 0 : Component.displayName);\n return Menu;\n}\n//# sourceMappingURL=withNativeMenu.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,yBAAyB,CAAC;AAC9B,SAAS,wBAAwB,EAC/B,sBAAsB,eACxB,CAAC;AACD,OAAO,UAAU,aAAa,sBAAsB;AACpD,IAAI,qBAAqB,QAAQ,mBAAmB;AACpD,IAAI,aAAa,QAAQ,cAAc;AACvC,SAAS,eAAe,OAAO;CAC7B,IAAI,EAAE,WAAW,oBAAoB;CACrC,IAAI,WAAW,OAAO;EACpB,OAAO;CACT;CACA,IAAI,CAAC,iBAAiB;EACpB,OAAO;CACT;CACA,IAAI,OAAO,SAAS,OAAO;EACzB,OAAuB,iBAAC,GAAG,mBAAmB,IAAG,CAAE,iBAAiB,EAClE,GAAG,MACL,CAAC;CACH;CACA,KAAK,cAAc,gBAAgB,gBAAgB,cAAc,QAAQ,cAAc,KAAK,IAAI,KAAK,IAAI,UAAU;CACnH,OAAO;AACT"}
|
|
1
|
+
{"version":3,"file":"withNativeMenu.native.js","names":[],"sources":["cjs/createNativeMenu/withNativeMenu.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar withNativeMenu_exports = {};\n__export(withNativeMenu_exports, {\n withNativeMenu: () => withNativeMenu\n});\nmodule.exports = __toCommonJS(withNativeMenu_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_native = require(\"@tamagui/native\");\nvar import_web = require(\"@tamagui/web\");\nfunction withNativeMenu(param) {\n var { Component, NativeComponent } = param;\n if (import_web.isWeb) {\n return Component;\n }\n if (!NativeComponent) {\n return Component;\n }\n var Menu = function(props) {\n if (!(0, import_native.getNativeMenuAdapter)()) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, {\n ...props\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NativeComponent, {\n ...props\n });\n };\n Menu.displayName = NativeComponent.displayName || (Component === null || Component === void 0 ? void 0 : Component.displayName);\n return Menu;\n}\n//# sourceMappingURL=withNativeMenu.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,yBAAyB,CAAC;AAC9B,SAAS,wBAAwB,EAC/B,sBAAsB,eACxB,CAAC;AACD,OAAO,UAAU,aAAa,sBAAsB;AACpD,IAAI,qBAAqB,QAAQ,mBAAmB;AACpD,IAAI,gBAAgB,QAAQ,iBAAiB;AAC7C,IAAI,aAAa,QAAQ,cAAc;AACvC,SAAS,eAAe,OAAO;CAC7B,IAAI,EAAE,WAAW,oBAAoB;CACrC,IAAI,WAAW,OAAO;EACpB,OAAO;CACT;CACA,IAAI,CAAC,iBAAiB;EACpB,OAAO;CACT;CACA,IAAI,OAAO,SAAS,OAAO;EACzB,IAAI,EAAE,GAAG,cAAc,qBAAoB,CAAE,GAAG;GAC9C,OAAuB,iBAAC,GAAG,mBAAmB,IAAG,CAAE,WAAW,EAC5D,GAAG,MACL,CAAC;EACH;EACA,OAAuB,iBAAC,GAAG,mBAAmB,IAAG,CAAE,iBAAiB,EAClE,GAAG,MACL,CAAC;CACH;CACA,KAAK,cAAc,gBAAgB,gBAAgB,cAAc,QAAQ,cAAc,KAAK,IAAI,KAAK,IAAI,UAAU;CACnH,OAAO;AACT"}
|
|
@@ -136,7 +136,7 @@ function createBaseMenu() {
|
|
|
136
136
|
};
|
|
137
137
|
MenuAnchor.displayName = ANCHOR_NAME;
|
|
138
138
|
const PORTAL_NAME = "MenuPortal";
|
|
139
|
-
const { Provider: PortalProvider, useStyledContext: usePortalContext } = createStyledContext(
|
|
139
|
+
const { Provider: PortalProvider, useStyledContext: usePortalContext } = createStyledContext({}, "Portal");
|
|
140
140
|
const MenuPortal = (props) => {
|
|
141
141
|
const { scope = MENU_CONTEXT, forceMount, zIndex, children } = props;
|
|
142
142
|
const menuContext = useMenuContext(scope);
|