{"version":3,"names":["Show","FloatingPortal","useSelectRootContext","SelectPortalContext","SelectPortal","props","root","keepMounted","shouldRender","mounted","container","children"],"sources":["select-portal.tsx"],"sourcesContent":["import type { JSX } from \"@solidjs/web\";\nimport { Show } from \"solid-js\";\nimport type { FloatingPortalTarget } from \"../../internals/floating-ui/components/floating-portal\";\nimport { FloatingPortal } from \"../../internals/floating-ui/components/floating-portal\";\nimport { useSelectRootContext } from \"../select-root-context\";\nimport { SelectPortalContext } from \"./select-portal-context\";\n\nexport interface SelectPortalProps {\n\tchildren?: JSX.Element;\n\t/** Whether to keep the portal mounted while the popup is hidden. */\n\tkeepMounted?: boolean | undefined;\n\t/** Mount target for the portal. Defaults to `document.body`. */\n\tcontainer?: FloatingPortalTarget;\n}\n\n/**\n * `<Select.Portal>` — moves the popup subtree to a different part of the\n * DOM (by default `document.body`). Mirrors React's `SelectPortal`.\n */\nexport function SelectPortal(props: SelectPortalProps): JSX.Element {\n\tconst root = useSelectRootContext();\n\tconst keepMounted = (): boolean => props.keepMounted ?? false;\n\tconst shouldRender = (): boolean => root.mounted() || keepMounted();\n\n\treturn (\n\t\t<Show when={shouldRender()}>\n\t\t\t<SelectPortalContext value={keepMounted}>\n\t\t\t\t<FloatingPortal container={props.container}>\n\t\t\t\t\t{props.children}\n\t\t\t\t</FloatingPortal>\n\t\t\t</SelectPortalContext>\n\t\t</Show>\n\t);\n}\n"],"mappings":"AACA,SAASA,IAAI,QAAQ,UAAU;AAE/B,SAASC,cAAc,QAAQ,wDAAwD;AACvF,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,mBAAmB,QAAQ,yBAAyB;AAU7D;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAACC,KAAwB,EAAe;EACnE,MAAMC,IAAI,GAAGJ,oBAAoB,CAAC,CAAC;EACnC,MAAMK,WAAW,GAAGA,CAAA,KAAeF,KAAK,CAACE,WAAW,IAAI,KAAK;EAC7D,MAAMC,YAAY,GAAGA,CAAA,KAAeF,IAAI,CAACG,OAAO,CAAC,CAAC,IAAIF,WAAW,CAAC,CAAC;EAEnE,OACC,CAAC,IAAI,CAAC,IAAI,CAAC,CAACC,YAAY,CAAC,CAAC,CAAC;AAC7B,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAACD,WAAW,CAAC;AAC3C,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAACF,KAAK,CAACK,SAAS,CAAC;AAC/C,KAAK,CAACL,KAAK,CAACM,QAAQ;AACpB,IAAI,EAAE,cAAc;AACpB,GAAG,EAAE,mBAAmB;AACxB,EAAE,EAAE,IAAI,CAAC;AAET","ignoreList":[]}