flowbite-react
Version:
Official React components built for Flowbite and Tailwind CSS
1 lines • 2.13 kB
Source Map (JSON)
{"version":3,"file":"helpers.cjs","sources":["../../../src/components/Floating/helpers.ts"],"sourcesContent":["import type { Middleware, Placement } from \"@floating-ui/react\";\nimport { arrow, autoPlacement, flip, offset, shift } from \"@floating-ui/react\";\nimport type { RefObject } from \"react\";\n\n/**\n * @see https://floating-ui.com/docs/middleware\n */\nexport const getMiddleware = ({\n arrowRef,\n placement,\n}: {\n arrowRef?: RefObject<HTMLDivElement>;\n placement: \"auto\" | Placement;\n}): Middleware[] => {\n const middleware = [];\n\n middleware.push(offset(8));\n middleware.push(placement === \"auto\" ? autoPlacement() : flip());\n middleware.push(shift({ padding: 8 }));\n\n if (arrowRef?.current) {\n middleware.push(arrow({ element: arrowRef.current }));\n }\n\n return middleware;\n};\n\nexport const getPlacement = ({ placement }: { placement: \"auto\" | Placement }): Placement | undefined => {\n return placement === \"auto\" ? undefined : placement;\n};\n\nexport const getArrowPlacement = ({ placement }: { placement: Placement }): Placement => {\n return {\n top: \"bottom\",\n right: \"left\",\n bottom: \"top\",\n left: \"right\",\n }[placement.split(\"-\")[0]] as Placement;\n};\n"],"names":["offset","autoPlacement","flip","shift","arrow"],"mappings":";;;;AAEY,MAAC,aAAa,GAAG,CAAC;AAC9B,EAAE,QAAQ;AACV,EAAE;AACF,CAAC,KAAK;AACN,EAAE,MAAM,UAAU,GAAG,EAAE;AACvB,EAAE,UAAU,CAAC,IAAI,CAACA,YAAM,CAAC,CAAC,CAAC,CAAC;AAC5B,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,GAAGC,mBAAa,EAAE,GAAGC,UAAI,EAAE,CAAC;AAClE,EAAE,UAAU,CAAC,IAAI,CAACC,WAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;AACxC,EAAE,IAAI,QAAQ,EAAE,OAAO,EAAE;AACzB,IAAI,UAAU,CAAC,IAAI,CAACC,WAAK,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;AACzD;AACA,EAAE,OAAO,UAAU;AACnB;AACY,MAAC,YAAY,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK;AAC/C,EAAE,OAAO,SAAS,KAAK,MAAM,GAAG,MAAM,GAAG,SAAS;AAClD;AACY,MAAC,iBAAiB,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK;AACpD,EAAE,OAAO;AACT,IAAI,GAAG,EAAE,QAAQ;AACjB,IAAI,KAAK,EAAE,MAAM;AACjB,IAAI,MAAM,EAAE,KAAK;AACjB,IAAI,IAAI,EAAE;AACV,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5B;;;;;;"}