{"version":3,"file":"static/js/8602.7e5b7fc3.chunk.js","mappings":"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","sources":["client/components/DialogSystem.js","client/components/Popup.js","client/components/QrCode.js","client/components/dialogLogin/LineLiffQrCode.js","client/gameFormBased/utils/propTypes.js","client/game_photoUpload/PhotoUpload/SuccessButton.js","client/hooks/useScrollElementOnMount.js","client/utils/scroll.js","components/common/Button/FeverButton.js","components/common/ReferralCodeCard.js"],"sourcesContent":["import React from 'react';\nimport { css } from '@emotion/core';\nimport PropTypes from 'prop-types';\nimport i18n from 'i18next';\nimport Typography from '@material-ui/core/Typography';\nimport { makeStyles } from '@material-ui/core/styles';\n\nimport { system300 } from 'Mui/styles/color';\nimport { stylePropType } from 'utils/propTypes';\n\nimport useScrollElementOnMount from 'client/hooks/useScrollElementOnMount';\n\nimport Popup from 'client/components/Popup';\n\nconst useStyle = makeStyles({\n endButton: {\n backgroundColor: `#0066ff`,\n '&:hover': {\n backgroundColor: '#0066ff'\n },\n '&.Mui-disabled': {\n backgroundColor: system300.color,\n color: '#fff'\n }\n }\n});\n\nfunction DialogSystem({\n title,\n body,\n isOpen = true,\n dense = false,\n closePopup = () => {},\n endButton = i18n.t('btn.close'),\n scrollInViewWhenOpen = true,\n style = {}\n}) {\n const muiStyle = useStyle();\n const bindRef = useScrollElementOnMount({ trigger: scrollInViewWhenOpen && isOpen });\n\n return (\n \n {Boolean(body) && (\n
\n {body}\n
\n )}\n \n );\n}\n\nDialogSystem.propTypes = {\n isOpen: PropTypes.bool,\n title: PropTypes.string,\n body: PropTypes.node,\n dense: PropTypes.bool,\n scrollInViewWhenOpen: PropTypes.bool,\n closePopup: PropTypes.func,\n endButton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n style: stylePropType\n};\n\nexport default DialogSystem;\n\nconst contentStyle = css`\n padding: 24px;\n text-align: center;\n white-space: pre-wrap;\n > * {\n line-height: 2;\n }\n`;\n","import React from 'react';\nimport { makeStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\n\nimport Button from 'Mui/Button';\nimport MuiDialog from '@material-ui/core/Dialog';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport IconButton from '@material-ui/core/IconButton';\nimport CloseIcon from '@material-ui/icons/Close';\nimport Typography from '@material-ui/core/Typography';\n\nimport { system900 } from 'Mui/styles/color';\nimport { dp08 } from 'Mui/styles/shadow';\n\nconst useStyles = makeStyles({\n dialog: {\n width: '100%',\n maxWidth: '320px',\n borderRadius: '16px',\n boxShadow: dp08.boxShadow\n },\n title: {\n padding: '12px 24px',\n whiteSpace: 'pre-wrap'\n },\n content: {\n '&[class^=\"MuiDialogContent-root\"]': {\n padding: '0'\n }\n },\n closeIcon: {\n width: '24px',\n height: '24px',\n position: 'absolute',\n top: '15px',\n right: '15px',\n cursor: 'pointer',\n color: system900.color,\n 'z-index': 1\n },\n footer: {\n display: 'flex',\n justifyContent: 'center',\n padding: '16px',\n flexDirection: 'column'\n },\n button: {\n borderRadius: '20px',\n minWidth: '125px',\n '&.MuiButtonBase-root': {\n margin: '0'\n },\n '&:not(:first-child)': {\n marginTop: '8px'\n }\n },\n largeButton: {\n minWidth: '182px',\n borderRadius: '24px',\n padding: '12px 8px'\n }\n});\n\nfunction Popup({\n isOpen = true,\n showClose,\n maxWidth = 'xs',\n onCancel,\n onClose,\n onConfirm,\n children,\n title,\n titleAlign = 'center',\n disableBackdropClick,\n disableEscapeKeyDown,\n startButton,\n startButtonVariant,\n startButtonColor,\n startButtonStyle,\n startButtonDisable,\n endButton,\n endButtonVariant = 'contained',\n endButtonColor = 'primary',\n endButtonStyle,\n endButtonDisable,\n endButtonSize = 'medium',\n className,\n backdropStyle = {}\n}) {\n const classes = useStyles();\n\n const handleClose = (_event, reason) => {\n if (disableBackdropClick && reason === 'backdropClick') {\n return false;\n }\n\n if (disableEscapeKeyDown && reason === 'escapeKeyDown') {\n return false;\n }\n\n if (typeof onClose === 'function') {\n onClose();\n }\n };\n\n return (\n \n {showClose ? (\n \n \n \n ) : null}\n {Boolean(title) && (\n \n \n {title}\n \n \n )}\n {children}\n {(startButton || endButton) && (\n \n {Boolean(endButton) && (\n \n {endButton}\n \n )}\n {Boolean(startButton) && (\n \n {startButton}\n \n )}\n \n )}\n \n );\n}\n\nPopup.propTypes = {\n isOpen: PropTypes.bool,\n showClose: PropTypes.bool,\n maxWidth: PropTypes.string,\n onCancel: PropTypes.func,\n onClose: PropTypes.func,\n onConfirm: PropTypes.func,\n children: PropTypes.node,\n title: PropTypes.string,\n titleAlign: PropTypes.string,\n disableBackdropClick: PropTypes.bool,\n startButton: PropTypes.string,\n startButtonVariant: PropTypes.string,\n startButtonColor: PropTypes.string,\n startButtonStyle: PropTypes.string,\n startButtonDisable: PropTypes.bool,\n endButton: PropTypes.string,\n endButtonVariant: PropTypes.string,\n endButtonColor: PropTypes.string,\n endButtonStyle: PropTypes.string,\n endButtonDisable: PropTypes.bool,\n className: PropTypes.string,\n backdropStyle: PropTypes.object\n};\n\nexport default Popup;\n","import React, { useState, useCallback, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nimport QRCode from 'qrcode';\n\nfunction QrCode({ code, loadingComp, qrCodeConfig, className }) {\n const [isQRCodeLoading, setIsQRCodeLoading] = useState(true);\n const [QRCodeSrc, setQRCodeSrc] = useState('');\n const generateQRCode = useCallback(\n async value => {\n try {\n const QR_CODE_OPTIONS = {\n errorCorrectionLevel: 'L',\n type: 'image/jpeg',\n quality: 1,\n margin: 0,\n ...qrCodeConfig\n };\n return await QRCode.toDataURL(value, QR_CODE_OPTIONS);\n } catch (err) {\n console.log(err);\n }\n },\n [qrCodeConfig]\n );\n\n useEffect(() => {\n let isUnmount = false;\n const getQRCodeInfo = async () => {\n const QRCodeBase64 = await generateQRCode(code);\n if (!isUnmount) {\n setQRCodeSrc(QRCodeBase64);\n setIsQRCodeLoading(false);\n }\n };\n getQRCodeInfo();\n return () => (isUnmount = true);\n }, [generateQRCode, code]);\n\n return isQRCodeLoading ? (\n loadingComp\n ) : (\n \"qrCode\"\n );\n}\n\nQrCode.propTypes = {\n code: PropTypes.string,\n loadingComp: PropTypes.node,\n qrCodeConfig: PropTypes.object,\n className: PropTypes.string\n};\n\nexport default QrCode;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport i18n from 'i18next';\nimport { css } from '@emotion/core';\nimport Skeleton from '@material-ui/lab/Skeleton';\nimport Typography from '@material-ui/core/Typography';\n\nimport QrCode from 'client/components/QrCode';\n\nfunction LineLiffQrCode({ url, description = i18n.t('label.login.scan_qrcode_line') }) {\n return (\n <>\n \n {description}\n \n
\n {Boolean(url) && (\n }\n css={qrCodeStyle}\n qrCodeConfig={{ width: 180 }}\n />\n )}\n
\n \n );\n}\n\nLineLiffQrCode.propTypes = {\n url: PropTypes.string,\n description: PropTypes.string\n};\n\nexport default LineLiffQrCode;\n\nconst textStyle = css`\n padding-bottom: 8px;\n`;\n\nconst containerStyle = css`\n position: relative;\n`;\n\nconst qrCodeStyle = css`\n margin: 0 auto;\n max-width: 200px;\n padding: 0 8px;\n`;\n","import PropTypes from 'prop-types';\n\nexport const componentStylePropTypes = PropTypes.shape({\n contentBgColor: PropTypes.string,\n contentBorderRadius: PropTypes.number,\n titleFontWeight: PropTypes.number,\n titleColor: PropTypes.string,\n descColor: PropTypes.string,\n answerColor: PropTypes.string,\n optionColor: PropTypes.string,\n optionLabelColor: PropTypes.string,\n buttonColor: PropTypes.string,\n buttonLabelColor: PropTypes.string,\n buttonSize: PropTypes.string\n});\n\nexport const normalizedObjectPropType = PropTypes.shape({\n allIds: PropTypes.array,\n byIds: PropTypes.object\n});\n","import React from 'react';\nimport { css } from '@emotion/core';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\n\nimport { lightenDarkenColor } from 'utils/colorConvert';\nimport { stylePropType } from 'utils/propTypes';\nimport { componentStylePropTypes } from 'client/gameFormBased/utils/propTypes';\n\nimport ButtonWithLoadingEffect from 'Mui/ButtonWithLoadingEffect';\n\nfunction SuccessButton({\n id,\n isLoading,\n style,\n onClick = () => {},\n text,\n children,\n disabled,\n componentStyle = {},\n textStyle\n}) {\n return (\n \n {children ? (\n children\n ) : (\n \n {text}\n \n )}\n \n );\n}\n\nSuccessButton.propTypes = {\n style: stylePropType,\n onClick: PropTypes.func,\n text: PropTypes.string,\n disabled: PropTypes.bool,\n componentStyle: componentStylePropTypes,\n isLoading: PropTypes.bool\n};\n\nexport default SuccessButton;\n\nconst btnStyle = ({ color = '#fff', bgColor = '#000', disableColor, disableBgColor } = {}) => css`\n padding: 12px 24px;\n width: 100%;\n max-width: 320px;\n background-color: ${bgColor};\n border-radius: 28px;\n font-size: 20px;\n & * {\n color: ${color};\n }\n &.MuiButton-contained.Mui-disabled {\n color: ${Boolean(disableColor) ? disableColor : '#fff'};\n ${Boolean(disableBgColor) && `background-color:${disableBgColor}`}\n }\n &:hover {\n background-color: ${lightenDarkenColor(bgColor, 0.1)};\n }\n`;\n","import { useEffect } from 'react';\n\nimport { IS_IFRAME_MODE } from 'config/envVariable';\nimport { scrollElementIntoView } from 'client/utils/scroll';\nimport useElementRefState from 'hooks/useElementRefState';\n\nexport default function useScrollElementOnMount({\n trigger = true,\n block = 'center',\n enableOnlyIfEmbeded = true\n} = {}) {\n const [contentRef, bindRef] = useElementRefState();\n useEffect(() => {\n if (contentRef && trigger) {\n if (enableOnlyIfEmbeded) {\n if (IS_IFRAME_MODE) {\n scrollElementIntoView(contentRef, block);\n }\n } else {\n scrollElementIntoView(contentRef, block);\n }\n }\n }, [contentRef, block, trigger, enableOnlyIfEmbeded]);\n\n return bindRef;\n}\n","import scrollIntoView from 'smooth-scroll-into-view-if-needed';\n\nimport { IS_IFRAME_MODE } from 'config/envVariable';\nimport * as postMsgEvent from 'config/postMsgEvent';\n\nexport function windowScroll({ top = 0, left = 0 } = {}) {\n try {\n window.scroll({\n behavior: 'smooth',\n top,\n left\n });\n } catch {\n window.scroll(top, left);\n }\n}\n\nexport function scrollPromoBodyIntoView() {\n const promoBody = document.getElementById('promo-client-body');\n if (promoBody) {\n if (IS_IFRAME_MODE) {\n scrollElemIntoViewIframeMode(promoBody);\n } else {\n scrollElementInner(promoBody, { top: 0 });\n }\n }\n}\n\nexport function scrollElementIntoView(element, block = 'start', { always = false } = {}) {\n if (element) {\n if (IS_IFRAME_MODE) {\n scrollElemIntoViewIframeMode(element, block);\n } else {\n scrollIntoView(element, {\n scrollMode: always ? 'always' : 'if-needed',\n block,\n behavior: 'smooth'\n });\n }\n }\n}\nfunction scrollElemIntoViewIframeMode(element, block = 'start') {\n const clientRect = element.getBoundingClientRect();\n const elementTopOffsetWithFrame = clientRect.top;\n window.parent.postMessage(\n {\n event: postMsgEvent.SCROLL_INTO_VIEW,\n payload: { elementTopOffsetWithFrame, block }\n },\n '*'\n );\n}\n\nfunction scrollElementInner(element, { top = 0, left = 0 } = {}) {\n if (typeof element.scroll === 'function') {\n try {\n setTimeout(() => {\n element.scroll({\n top,\n left,\n behavior: 'smooth'\n });\n }, 200);\n } catch {\n element.scroll(left, top);\n }\n }\n}\n","import React from 'react';\nimport { css } from '@emotion/core';\nimport ButtonWithLoadingEffect from 'Mui/ButtonWithLoadingEffect';\nimport SuccessButton from 'client/game_photoUpload/PhotoUpload/SuccessButton';\nimport { functional } from 'Mui/styles/color';\n\nexport const FEVER_BUTTON_TYPES = {\n TEXT: 1,\n IMAGE: 2\n};\n\n// 參考新客加入獎勵 - 未註冊頁面按鈕\n/**\n * @method FeverButton - 圖片按鈕/自適應多行按鈕\n * @param {Object} props\n * @param {Boolean} props.loading - 讀取中\n * @param {Boolean} props.disabled - 禁用\n * @param {Object} props.componentStyle - 元件樣式\n * @param {String} props.imageUrl - 圖片網址\n * @param {Function} props.onClick - 點擊事件\n * @param {Object} props.text - 按鈕文字\n * @param {String} props.type - 按鈕類型\n * @param {String} props.customBtnStyle - 自制按鈕style\n * @param {Boolean} props.isAutoWidth - 按鈕寬度隨文字變寬\n * @returns {JSX.Element}\n */\nexport default function FeverButton({\n loading,\n disabled,\n componentStyle = {},\n imageUrl,\n onClick = () => {},\n text = '',\n type = FEVER_BUTTON_TYPES.TEXT,\n customBtnStyle,\n isAutoWidth = false\n}) {\n return (\n <>\n {type === FEVER_BUTTON_TYPES.IMAGE ? (\n \n {Boolean(imageUrl) ? (\n \"feverButton\"\n ) : (\n
\n )}\n \n ) : (\n \n )}\n \n );\n}\n\nconst imgStyle = css`\n cursor: pointer;\n max-width: 100%;\n max-height: 56px;\n`;\n\nconst placeHolderStyle = bgColor => css`\n border: 2px dashed;\n width: 240px;\n height: 56px;\n cursor: pointer;\n ${bgColor && `border-color:${bgColor};`}\n`;\n\nconst imageBtnStyle = css`\n width: 240px;\n margin: auto;\n height: 56px;\n padding: 0;\n :hover,\n :active {\n background-color: transparent;\n }\n`;\n\nconst textStyle = css`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 3;\n box-sizing: border-box;\n`;\n\nconst textBtnStyle = (bgColor, isAutoWidth) => css`\n width: ${isAutoWidth ? 'auto' : '100%'};\n min-width: 200px;\n max-width: unset;\n word-break: break-all;\n margin: auto;\n min-height: 56px;\n background: ${bgColor};\n &:hover {\n background-color: ${bgColor};\n }\n`;\n","import { css } from '@emotion/core';\nimport { IconButton, OutlinedInput, Typography } from '@material-ui/core';\nimport { error, system500, system900 } from 'Mui/styles/color';\nimport SuccessButton from 'client/game_photoUpload/PhotoUpload/SuccessButton';\nimport CloseIcon from '@material-ui/icons/Close';\nimport React from 'react';\n\n/**\n * @method ReferralCodeCard - 邀請碼卡片\n * @param {Object} props\n * @param {Boolean} props.isViewMode - 是否純顯示,不可輸入 ( ex. 新客加入獎勵編輯設定數入邀請碼 )\n * @param {Boolean} props.isLoading - 是否顯示讀取中效果\n * @param {Boolean} props.isShowImage - 是否顯示圖片\n * @param {Boolean} props.isShowCloseButton - 是否顯示關閉按鈕\n * @param {String} props.imageUrl - 圖片 url\n * @param {String} props.buttonText - 按鈕文字\n * @param {String} props.buttonTextColor - 按鈕文字顏色\n * @param {String} props.buttonBgColor - 按鈕文字背景顏色\n * @param {String} props.description - 說明文案\n * @param {String} props.themeTextColor - 卡片文字顏色\n * @param {String} props.themeBgColor - 卡片背景顏色\n * @param {String} props.title - 卡片標題文字\n * @param {String} props.placeholder - 輸入框提醒文字\n * @param {String} props.error - 錯誤訊息文字\n * @param {Function} props.onClick - 點擊事件\n * @param {Function} props.onClose - 關閉事件\n * @returns {JSX.Element}\n */\nexport default function ReferralCodeCard({\n isViewMode = false,\n isLoading,\n isShowImage,\n isShowCloseButton,\n imageUrl,\n buttonText,\n buttonTextColor,\n buttonBgColor,\n description,\n themeTextColor,\n themeBgColor,\n title,\n error,\n placeholder,\n onClick = () => {},\n onClose = () => {},\n value,\n onChange = () => {}\n}) {\n return (\n
\n {isShowCloseButton && (\n
\n \n \n \n
\n )}\n \n {title}\n \n\n {isShowImage && (\n
\n \"referral\n
\n )}\n
\n \n
\n \n {error}\n \n
\n \n
\n {description && (\n
\n \n {description}\n \n
\n )}\n
\n );\n}\n\nconst successButtonStyle = css`\n min-height: 56px;\n`;\n\nconst containerStyle = (themeBgColor, isShowImage) => css`\n width: 320px;\n min-height: ${isShowImage ? '438px' : '232px'};\n border-radius: 12px;\n background: ${themeBgColor};\n max-height: 600px;\n overflow: auto;\n`;\n\nconst titleStyle = themeTextColor => css`\n text-align: center;\n color: ${themeTextColor};\n padding: 14px 24px;\n`;\n\nconst errorStyle = css`\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ${error.color};\n padding-top: 8px;\n`;\n\nconst contentContainerStyle = css`\n width: 100%;\n height:226px\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0 24px;\n`;\n\nconst imgStyle = css`\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: 0 0;\n`;\n\nconst inputStyle = css`\n padding-top: 16px;\n\n & .MuiOutlinedInput-root {\n background: #ffffff;\n border-radius: 8px;\n width: 100%;\n border: 1px solid ${system500.color};\n height: 48px;\n\n input {\n :placeholder {\n color: ${system500.color};\n }\n text-align: center;\n }\n }\n`;\n\nconst buttonStyle = css`\n padding-bottom: 16px;\n padding-top: 8px;\n`;\n\nconst discriptionContainerStyle = css`\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n padding: 0 24px 16px 24px;\n`;\n\nconst discriptionStyle = color => css`\n text-align: center;\n color: ${color};\n`;\n\nconst closeContinerStyle = css`\n position: absolute;\n right: 14px;\n top: 14px;\n`;\n\nconst closeIconStyle = css`\n color: ${system900.color};\n`;\n"],"names":["useStyle","makeStyles","endButton","backgroundColor","system300","color","_ref","title","body","isOpen","dense","closePopup","i18n","t","scrollInViewWhenOpen","style","muiStyle","bindRef","useScrollElementOnMount","trigger","___EmotionJSX","Popup","endButtonStyle","onConfirm","onClose","css","Boolean","ref","_css","contentStyle","Typography","variant","name","styles","useStyles","dialog","width","maxWidth","borderRadius","boxShadow","dp08","padding","whiteSpace","content","closeIcon","height","position","top","right","cursor","system900","footer","display","justifyContent","flexDirection","button","minWidth","margin","marginTop","largeButton","showClose","onCancel","children","titleAlign","disableBackdropClick","disableEscapeKeyDown","startButton","startButtonVariant","startButtonColor","startButtonStyle","startButtonDisable","endButtonVariant","endButtonColor","endButtonDisable","endButtonSize","className","backdropStyle","classes","MuiDialog","disableAutoFocus","disableEnforceFocus","disableRestoreFocus","handleClose","_event","reason","open","paper","concat","BackdropProps","backdropFilter","IconButton","onClick","size","CloseIcon","DialogTitle","disableTypography","align","DialogContent","root","DialogActions","Button","disabled","clsx","code","loadingComp","qrCodeConfig","isQRCodeLoading","setIsQRCodeLoading","useState","QRCodeSrc","setQRCodeSrc","generateQRCode","useCallback","async","QR_CODE_OPTIONS","errorCorrectionLevel","type","quality","QRCode","value","err","console","log","useEffect","isUnmount","QRCodeBase64","getQRCodeInfo","src","alt","url","description","React","textStyle","containerStyle","QrCode","Skeleton","qrCodeStyle","componentStylePropTypes","PropTypes","contentBgColor","contentBorderRadius","titleFontWeight","titleColor","descColor","answerColor","optionColor","optionLabelColor","buttonColor","buttonLabelColor","buttonSize","allIds","byIds","id","isLoading","text","componentStyle","ButtonWithLoadingEffect","btnStyle","bgColor","disableColor","disableBgColor","arguments","length","undefined","lightenDarkenColor","block","enableOnlyIfEmbeded","contentRef","useElementRefState","IS_IFRAME_MODE","scrollElementIntoView","windowScroll","left","window","scroll","behavior","scrollPromoBodyIntoView","promoBody","document","getElementById","scrollElemIntoViewIframeMode","element","setTimeout","scrollElementInner","always","scrollIntoView","scrollMode","elementTopOffsetWithFrame","getBoundingClientRect","parent","postMessage","event","postMsgEvent","payload","FEVER_BUTTON_TYPES","TEXT","IMAGE","FeverButton","loading","imageUrl","customBtnStyle","isAutoWidth","disableAllRipple","imageBtnStyle","imgStyle","placeHolderStyle","functional","SuccessButton","textBtnStyle","textColor","ReferralCodeCard","isViewMode","isShowImage","isShowCloseButton","buttonText","buttonTextColor","buttonBgColor","themeTextColor","themeBgColor","error","placeholder","onChange","closeContinerStyle","closeIconStyle","titleStyle","contentContainerStyle","inputStyle","OutlinedInput","_extends","errorStyle","buttonStyle","successButtonStyle","discriptionContainerStyle","discriptionStyle","system500"],"sourceRoot":""}