99163.js.map 7.3 KB

1
  1. {"version":3,"file":"99163.js","mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACZA,sCAAsC,GAEtC;AAA4C;AAE2B;AACnC;AAEW;AAEC;IAGzC,0BAKN;UALWM,0BAA0B;IAA1BA,0BAA0B,CACpCC,KAAG,IAAG,KAAK;IADDD,0BAA0B,CAEpCE,OAAK,IAAG,OAAO;IAFLF,0BAA0B,CAGpCG,QAAM,IAAG,QAAQ;IAHPH,0BAA0B,CAIpCI,MAAI,IAAG,MAAM;GAJHJ,0BAA0B,KAA1BA,0BAA0B;AAmBtC,MAAMK,WAAW,GAAG,CAAC,EACnBC,QAAQ,GACRC,MAAM,GACNC,OAAO,GACPC,WAAW,EAAG,IAAI,GAClBC,OAAO,EAAG,IAAI,GACdC,WAAW,EAAG,IAAI,GAClBC,YAAY,GACZC,eAAe,EAAEC,IAAI,GAAGd,0BAA0B,CAACG,MAAM,GACzDY,gBAAgB,GACC,GAAK;IACtB,MAAM,KAACC,IAAI,MAAEC,OAAO,MAAItB,+CAAQ,CAACY,MAAM,CAAC;IACxC,MAAMW,SAAS,GAAGnB,wEAAY,EAAE;IAChC,MAAMoB,OAAO,iBACX,mDAACvB,kEAA6B;QAC5ByB,SAAS,EAAExB,iDAAU,CAACC,yEAAc,EAAEiB,gBAAgB,CAAC;QACvDD,IAAI,EAAEA,IAAI;kBAETR,QAAQ;MACqB;IAGlC,MAAMgB,gBAAgB,GAAG,CAACC,OAAgB,GAAK;QAC7C,IAAI,CAACZ,WAAW,EAAE;YAChB,OAAO;QACT,CAAC;QAED,IAAIC,YAAY,EAAE;YAChBA,YAAY,CAACW,OAAO,CAAC,CAAC;QACxB,CAAC;QAEDN,OAAO,CAACM,OAAO,CAAC,CAAC;IACnB,CAAC;IAED7B,gDAAS,CAAC,IAAM;QACduB,OAAO,CAACV,MAAM,CAAC,CAAC;IAClB,CAAC,EAAE;QAACA,MAAM;KAAC,CAAC,CAAC;IAEb,qBACE,wDAACX,+DAA0B;QACzB6B,GAAG,EAAEP,SAAS;QACdF,IAAI,EAAEA,IAAI;QACVU,KAAK,EAAEhB,OAAO;QACdE,YAAY,EAAEU,gBAAgB;;YAE7Bd,OAAO,kBACN,mDAACZ,kEAA6B;gBAACgC,OAAO;gBAACC,OAAO,EAAE,IAAMZ,OAAO,CAAC,IAAI,CAAC;0BACjE,iEAACa,MAAI;8BAAEtB,OAAO;kBAAQ;cACQ;YAEjCC,WAAW,iBACV,mDAACb,iEAA4B;0BAAEuB,OAAO;cAAgC,GAEtEA,OAAO;;MAEkB,CAC7B;AACJ,CAAC;AAcDd,WAAW,CAAC2B,IAAI,GAAG,CAAC,EAClB1B,QAAQ,GACR2B,IAAI,GACJJ,OAAO,GACPK,UAAU,GACVC,yBAAyB,EAAG,KAAK,GACjCC,eAAe,EAAG,KAAK,GACvBf,SAAS,GACTgB,EAAE,GACFC,UAAU,GACVC,qBAAqB,GACA,GAAK;IAC1B,qBACE,wDAAC3C,+DAA0B;QACzByB,SAAS,EAAExB,iDAAU,CAACC,sEAAW,EAAEuB,SAAS,EAAE;YAAE,CAACvB,0EAAe,CAAC,EAAEwC,UAAU;SAAE,CAAC;QAChFT,OAAO,EAAE,CAACa,CAAC,GAAK;YACd,IAAIH,qBAAqB,EAAEG,CAAC,CAACC,eAAe,EAAE,CAAC;YAC/C,IAAI,CAACR,yBAAyB,EAAE;gBAC9B,qEAAqE;gBACrE,sFAAsF;gBACtFO,CAAC,CAACE,cAAc,EAAE,CAAC;YACrB,CAAC;YACD,IAAIf,OAAO,EAAEA,OAAO,EAAE,CAAC;QACzB,CAAC;QACDgB,QAAQ,EAAEX,UAAU;QACpBG,EAAE,EAAEA,EAAE;;YAELJ,IAAI,kBACH,mDAACH,MAAI;gBACHT,SAAS,EAAExB,iDAAU,CAACC,6EAAkB,EAAE;oBACxC,CAACA,iFAAsB,CAAC,EAAEsC,eAAe;iBAC1C,CAAC;0BAEDH,IAAI;cACA;YAER3B,QAAQ;;MACkB,CAC7B;AACJ,CAAC,CAAC;AAEFD,WAAW,CAAC0C,OAAO,GAAG,IAAM;IAC1B,qBAAO,mDAACnD,oEAA+B;QAACyB,SAAS,EAAEvB,2EAAgB;MAAI,CAAC;AAC1E,CAAC,CAAC;AAEF,iEAAeO,WAAW,EAAC","sources":["webpack://quran.com/./src/components/dls/PopoverMenu/PopoverMenu.module.scss","webpack://quran.com/./src/components/dls/PopoverMenu/PopoverMenu.tsx"],"sourcesContent":["// Exports\nmodule.exports = {\n\t\"content\": \"PopoverMenu_content__xL1VK\",\n\t\"slideDownAndFade\": \"PopoverMenu_slideDownAndFade__pzFg6\",\n\t\"slideLeftAndFade\": \"PopoverMenu_slideLeftAndFade__QgISc\",\n\t\"slideUpAndFade\": \"PopoverMenu_slideUpAndFade__8WPJz\",\n\t\"slideRightAndFade\": \"PopoverMenu_slideRightAndFade__o9TzG\",\n\t\"item\": \"PopoverMenu_item__e4y_f\",\n\t\"iconWrapper\": \"PopoverMenu_iconWrapper__ZzSRV\",\n\t\"shouldFlipOnRTL\": \"PopoverMenu_shouldFlipOnRTL__5sU77\",\n\t\"separator\": \"PopoverMenu_separator__jBJM6\",\n\t\"selected\": \"PopoverMenu_selected__NH0IG\"\n};\n","/* eslint-disable react/no-multi-comp */\n\nimport { useEffect, useState } from 'react';\n\nimport * as PrimitiveDropdownMenu from '@radix-ui/react-dropdown-menu';\nimport classNames from 'classnames';\n\nimport styles from './PopoverMenu.module.scss';\n\nimport useDirection from '@/hooks/useDirection';\nimport { Direction } from '@/utils/locale';\n\nexport enum PopoverMenuExpandDirection {\n TOP = 'top',\n RIGHT = 'right',\n BOTTOM = 'bottom',\n LEFT = 'left',\n}\n\ntype PopoverMenuProps = {\n isOpen?: boolean;\n children: React.ReactNode;\n trigger?: React.ReactNode;\n isPortalled?: boolean;\n isModal?: boolean;\n onOpenChange?: (open: boolean) => void;\n expandDirection?: PopoverMenuExpandDirection;\n contentClassName?: string;\n shouldClose?: boolean;\n};\n\nconst PopoverMenu = ({\n children,\n isOpen,\n trigger,\n isPortalled = true,\n isModal = true,\n shouldClose = true,\n onOpenChange,\n expandDirection: side = PopoverMenuExpandDirection.BOTTOM,\n contentClassName,\n}: PopoverMenuProps) => {\n const [open, setOpen] = useState(isOpen);\n const direction = useDirection();\n const content = (\n <PrimitiveDropdownMenu.Content\n className={classNames(styles.content, contentClassName)}\n side={side}\n >\n {children}\n </PrimitiveDropdownMenu.Content>\n );\n\n const handleOpenChange = (newOpen: boolean) => {\n if (!shouldClose) {\n return;\n }\n\n if (onOpenChange) {\n onOpenChange(newOpen);\n }\n\n setOpen(newOpen);\n };\n\n useEffect(() => {\n setOpen(isOpen);\n }, [isOpen]);\n\n return (\n <PrimitiveDropdownMenu.Root\n dir={direction as Direction}\n open={open}\n modal={isModal}\n onOpenChange={handleOpenChange}\n >\n {trigger && (\n <PrimitiveDropdownMenu.Trigger asChild onClick={() => setOpen(true)}>\n <span>{trigger}</span>\n </PrimitiveDropdownMenu.Trigger>\n )}\n {isPortalled ? (\n <PrimitiveDropdownMenu.Portal>{content}</PrimitiveDropdownMenu.Portal>\n ) : (\n content\n )}\n </PrimitiveDropdownMenu.Root>\n );\n};\n\ntype PopoverMenuItemProps = {\n children: React.ReactNode;\n icon?: React.ReactNode;\n onClick?: () => void;\n isDisabled?: boolean;\n shouldCloseMenuAfterClick?: boolean;\n shouldFlipOnRTL?: boolean;\n className?: string;\n id?: string;\n isSelected?: boolean;\n shouldStopPropagation?: boolean;\n};\nPopoverMenu.Item = ({\n children,\n icon,\n onClick,\n isDisabled,\n shouldCloseMenuAfterClick = false,\n shouldFlipOnRTL = false,\n className,\n id,\n isSelected,\n shouldStopPropagation,\n}: PopoverMenuItemProps) => {\n return (\n <PrimitiveDropdownMenu.Item\n className={classNames(styles.item, className, { [styles.selected]: isSelected })}\n onClick={(e) => {\n if (shouldStopPropagation) e.stopPropagation();\n if (!shouldCloseMenuAfterClick) {\n // PopoverMenu automatically close itself when one of item is clicked\n // this code prevent that, so it only close when user click outside of the PopoverMenu\n e.preventDefault();\n }\n if (onClick) onClick();\n }}\n disabled={isDisabled}\n id={id}\n >\n {icon && (\n <span\n className={classNames(styles.iconWrapper, {\n [styles.shouldFlipOnRTL]: shouldFlipOnRTL,\n })}\n >\n {icon}\n </span>\n )}\n {children}\n </PrimitiveDropdownMenu.Item>\n );\n};\n\nPopoverMenu.Divider = () => {\n return <PrimitiveDropdownMenu.Separator className={styles.separator} />;\n};\n\nexport default PopoverMenu;\n"],"names":["useEffect","useState","PrimitiveDropdownMenu","classNames","styles","useDirection","PopoverMenuExpandDirection","TOP","RIGHT","BOTTOM","LEFT","PopoverMenu","children","isOpen","trigger","isPortalled","isModal","shouldClose","onOpenChange","expandDirection","side","contentClassName","open","setOpen","direction","content","Content","className","handleOpenChange","newOpen","Root","dir","modal","Trigger","asChild","onClick","span","Portal","Item","icon","isDisabled","shouldCloseMenuAfterClick","shouldFlipOnRTL","id","isSelected","shouldStopPropagation","item","selected","e","stopPropagation","preventDefault","disabled","iconWrapper","Divider","Separator","separator"],"sourceRoot":""}