{"version":3,"mappings":"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","names":["TOTPModal","form","Form","TOTPCode","showTOTPModal","useAppSelector","state","dispatch","useAppDispatch","phoneNumber","_a","navigate","useNavigate","hideMiddleDigits","phone","string","hiddenPhoneNumber","t","useAppTranslation","useEffect","apiConfigs","jsxs","Modal","setShowTOTPModal","webConstants","Space","jsx","Password","Mail","Typography","values","setTOTPCode","_","value","Input","Key","useHantanaConfig","personalInfo","setHantanaUserDate","useCallback","setOpenOnlyOnce","handleHantanaConfig","dashboardReduxReducerActions","service","DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE","docUrl","DashboardToolsUpgradeUserPlanToProModal","showModal","services","safeJoinPath","handleCloseModal","React","Link","Button","Trans","DashboardToolsUpgradeUserPlanToStandardModal","DashboardTools","Fragment","UpgradeUserPlanToStandardModal","oldProfilePersonalId","oldProfileLocalId","oldProfileBusinessId","oldProfileBankId","oldSocialCardId","oldTelegramBotInfoCardId","oldProfilePersonalCtaId","oldProfilePersonalCancelId","oldProfileLocalCtaId","oldProfileLocalCancelId","oldProfileBusinessCtaId","oldProfileBusinessCancelId","oldProfileBankCtaId","oldProfileBankCancelId","oldProfileSocialCtaId","oldProfileSocialCancelId","notificationCardId","consultingCardId","blogCardId","downloadLinuxAppId","downloadMacOSAppId","downloadWindowsAppId","downloadIOSAppId","downloadAndroidAppId","profileCompletionId","frequentSettingsId","frequentProductListId","frequentServicesId","frequentTokenCreateId","personalPageLinkId","personalPageCopyId","downloadPersonalPageQrId","balanceCardId","updateBalanceId","referralOverviewCardId","referralOverviewLinkId","referralMenuDropdownId","oldUserProfileId","oldUserProfileRejectId","oldUserProfileSuccess","changetonewD2","setUpdateAvailable","hasUpdate","SET_UPDATE_AVAILABLE","NewVersionModal","Popover","styles","Divider","SyncOutlined","Notifications","props","messageList","msg","index","classnames","Row","toJalali","dateFormats","homeRoutes","reportRoutes","ipgRoutes","invoiceRoutes","customerRoutes","productRoutes","requestMoneyRoutes","userRoutes","create","bulk","list","item","customer","coupon","invoice","report","requestMoney","wordpress","searchData","Search","visible","setVisible","searchValue","setSearchValue","useState","inputRef","useRef","routes","minSearchLength","routeOptions","filterOption","inputValue","option","wordList","exists","word","keyword","classNames","ArrowRightOutlined","event","toFaAlpha","route","CustomLink","to","otherProps","DashboardRoutes","changeLog","Version","autoDisplay","visibleChangeLog","setVisibleChangeLog","dontShow","setDontShow","toggleDontShow","newVal","setAutoReleaseNotes","timer","versionElement","change","links","version","translationVersion","i","link","j","useBreakpoint","Grid","Checkbox","mode","require$$0","QR8bitByte","data","buffer","_8BitByte","ErrorCorrectLevel","ECL","QRRSBlock","totalCount","dataCount","typeNumber","errorCorrectLevel","rsBlock","length","count","RSBlock","QRBitBuffer","bufIndex","num","bit","BitBuffer","QRMath","n","math","QRPolynomial","shift","offset","ratio","Polynomial","Mode","require$$1","require$$2","QRMaskPattern","QRUtil","d","digit","maskPattern","errorCorrectLength","a","type","qrCode","moduleCount","lostPoint","row","col","sameCount","dark","r","c","darkCount","util","BitByte","require$$3","require$$4","QRCode","proto","newData","rsBlocks","totalDataCount","test","minLostPoint","pattern","target_mc","instance_name","depth","qr_mc","cs","y","x","pos","bits","mod","inc","bitIndex","byteIndex","mask","dataList","maxDcCount","maxEcCount","dcdata","ecdata","dcCount","ecCount","rsPoly","rawPoly","modPoly","modIndex","totalCodeCount","QRCode_1","_typeof","obj","_extends","target","source","key","ownKeys","object","enumerableOnly","keys","symbols","sym","_objectSpread","_defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","sourceKeys","_classCallCheck","instance","Constructor","_defineProperties","descriptor","_createClass","protoProps","staticProps","_possibleConstructorReturn","self","call","_assertThisInitialized","_getPrototypeOf","o","_inherits","subClass","superClass","_setPrototypeOf","p","QRCodeImpl","convertStr","str","out","charcode","DEFAULT_PROPS","MARGIN_SIZE","DEFAULT_IMG_SCALE","generatePath","modules","margin","ops","start","cell","excavateModules","excavation","getImageSettings","cells","imageSettings","size","includeMargin","numCells","defaultSize","scale","w","h","floorX","floorY","ceilW","ceilH","SUPPORTS_PATH2D","QRCodeCanvas","_React$PureComponent","_getPrototypeOf2","_this","_len","args","_key","nextProps","_this$props$imageSett","_nextProps$imageSetti","currentSrc","nextSrc","_this$props","level","bgColor","fgColor","qrcode","canvas","ctx","calculatedImageSettings","pixelRatio","rdx","cdx","_this2","_this$props2","style","canvasStyle","img","imgSrc","_ref","_ref2","QRCodeSVG","_React$PureComponent2","_this$props3","image","fgPath","renderAs","Component","lib","PlanButton","currentPlan","UserSection","menu","user","qrDataUrl","setQrDataUrl","visibleModal","setVisibleModal","username","autoWithdrawType","location","useLocation","wage","url","qrDownloadUrl","isDesktop","popoverContent","planStyles","Col","Avatar","UserOutlined","WageTypeEnum","AutoWithdrawTypeEnum","ChevronsUp","PopoverImage","QrcodeOutlined","prefixCls","CopyOutlined","CheckOutlined","popoverAnchor","prev","DownOutlined","Close","appIcons","Tooltip","LinuxOutlined","AppleOutlined","WindowsOutlined","IosOutlined","AndroidOutlined","useSelectedTab","matchedRoute","microPaths","matchPath","hasNotifyPoint","children","className","RRLink","Badge","AppMainNav","selectedTab","visibleSearch","setVisibleSearch","isSettlement","messageData","isReferralActive","HELP_URL","useAsync","getUserMessages","getUserProfile","getUserWage","email","id","businessName","firstName","lastName","Sentry.configureScope","scope","_b","reg","closeSearch","tabPanes","HomeOutlined","safeStr","Menu","CloudSnow","SettingOutlined","HelpRing","LogoutOutlined","OldMainNav","product","ipg","FAQ","Help","currHelpData","setCurrHelpData","donateScriptRoute","currSection","translationComponents","Collapse","faq","loadGoftinoScript","chatId","resolve","reject","existingScript","script","localData","GoftinoContext","createContext","GoftinoProvider","isScriptLoaded","setIsScriptLoaded","planTypeLabel","isMounted","error","openChat","setUser","userInfo","callback","setUserId","userId","chatDataState","userApis","_c","_d","_f","_e","_h","_g","_i","_j","_k","_l","_m","_n","_o","_r","_p","_q","_u","_s","_t","RouterSwitch","lazy","componentLoader","__vitePreload","Main","locale","getCurrentUserDetail","Layout","Suspense","Loading"],"sources":["../../src/components/TOTPModal.tsx","../../src/utils/useHantanaConfig.ts","../../src/redux/actions/dashboard.ts","../../src/components/DashboardTools/UpgradeUserPlanToProModal.tsx","../../src/components/DashboardTools/UpgradeUserPlanToStandardModal.tsx","../../src/components/DashboardTools/index.tsx","../../src/assets/googleTrackIds.ts","../../src/redux/actions/serviceWorker.ts","../../src/components/AppMainNav/subSection/NewVersionModal.tsx","../../src/components/AppMainNav/subSection/Notifications.tsx","../../src/components/AppMainNav/subSection/SearchData.ts","../../src/components/AppMainNav/subSection/Search.tsx","../../src/components/CustomLink.tsx","../../src/components/AppMainNav/subSection/versionData.ts","../../src/components/AppMainNav/subSection/Version.tsx","../../node_modules/qr.js/lib/mode.js","../../node_modules/qr.js/lib/8BitByte.js","../../node_modules/qr.js/lib/ErrorCorrectLevel.js","../../node_modules/qr.js/lib/RSBlock.js","../../node_modules/qr.js/lib/BitBuffer.js","../../node_modules/qr.js/lib/math.js","../../node_modules/qr.js/lib/Polynomial.js","../../node_modules/qr.js/lib/util.js","../../node_modules/qr.js/lib/QRCode.js","../../node_modules/qrcode.react/lib/index.js","../../src/components/AppMainNav/subSection/PlanButton.tsx","../../src/components/AppMainNav/subSection/User.tsx","../../src/components/AppMainNav/subSection/DownloadAppIcons.tsx","../../src/components/AppMainNav/useSelectedTab.ts","../../src/components/AppMainNav/Link/index.tsx","../../src/components/AppMainNav/index.tsx","../../src/components/Help/data.ts","../../src/components/Help/index.tsx","../../src/utils/Goftino/Provider.tsx","../../src/pages/index.tsx"],"sourcesContent":["import { Form, Input, Modal, Space, Typography } from \"@payping/web-components\";\nimport { setShowTOTPModal, setTOTPCode } from \"@payping/redux/actions\";\nimport { Key, Mail, Password } from \"@payping/icons\";\nimport { useEffect } from \"react\";\nimport { useAppDispatch, useAppSelector } from \"@/utils/redux\";\nimport { apiConfigs } from \"@payping/api\";\nimport { useAppTranslation } from \"@/utils/useAppTranslation\";\nimport { useNavigate } from \"react-router-dom\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\n\nexport const TOTPModal = () => {\n const [form] = Form.useForm();\n const { TOTPCode, showTOTPModal } = useAppSelector((state) => state.auth);\n const dispatch = useAppDispatch();\n const phoneNumber = useAppSelector((state) => state.user.personalInfo?.phoneNumber);\n const navigate = useNavigate();\n\n function hideMiddleDigits(phone?: string | number) {\n const string = String(phone);\n return `${string.substring(8)}****${string.substring(0, 4)}`;\n }\n const hiddenPhoneNumber = hideMiddleDigits(phoneNumber);\n const { t } = useAppTranslation();\n\n useEffect(() => {\n apiConfigs.updateConfig({ totpCode: TOTPCode });\n }, [TOTPCode]);\n\n return (\n {\n form.submit();\n }}\n cancelText={t(\"back\")}\n onCancel={async () => {\n await dispatch(setShowTOTPModal(false));\n navigate(webConstants.DashboardRoutes.home.overview);\n }}\n >\n \n \n \n \n \n {t(\"user.2fa.modal.smsCodeDesc\", { hiddenPhoneNumber })}\n {\n apiConfigs.updateConfig({ totpCode: values.totpCode });\n await dispatch(setTOTPCode(values.totpCode));\n await dispatch(setShowTOTPModal(false));\n }}\n layout={\"vertical\"}\n >\n =>\n value && value === TOTPCode ? Promise.reject(new Error(t(\"error.duplicateCode\"))) : Promise.resolve(),\n },\n ]}\n >\n } />\n \n \n \n \n );\n};\n","import { useCallback, useEffect } from \"react\";\nimport { useAppSelector } from \"./redux\";\n\nexport const useHantanaConfig = (): void => {\n const personalInfo = useAppSelector((state) => state.user.personalInfo);\n\n const setHantanaUserDate = useCallback(() => {\n window.Hantana.setUserData({\n appVersion: `${process.env.REACT_APP_VERSION}-${process.env.REACT_APP_CI_COMMIT_ID}`,\n avatar: personalInfo?.profilePicture,\n description: `userId: ${personalInfo?.id}`,\n email: personalInfo?.email,\n name: personalInfo?.username,\n phone: personalInfo?.phoneNumber,\n });\n }, [personalInfo]);\n\n const setOpenOnlyOnce = useCallback(() => {\n window.Hantana.openWidgetWelcomeMessageOnlyOnceFeedback();\n }, []);\n\n const handleHantanaConfig = useCallback(() => {\n setHantanaUserDate();\n setOpenOnlyOnce();\n }, [setHantanaUserDate, setOpenOnlyOnce]);\n\n useEffect(() => {\n document.addEventListener(\"hantana_ready\", handleHantanaConfig);\n return () => {\n document.removeEventListener(\"hantana_ready\", handleHantanaConfig);\n };\n }, [handleHantanaConfig]);\n};\n","import { DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE } from \"../reducers/dashboard\";\nimport { ReduxActionGeneric } from \"./types\";\n\nexport type DashboardReduxReducerUpgradeUserPlanToProServices = \"invoice\";\nexport type DashboardReduxReducerUpgradeUserPlanToStandardServices = \"onlineShop\";\n\ntype DashboardReduxReducerActions = {\n showUpgradeUserPlanToProModal: (\n service: DashboardReduxReducerUpgradeUserPlanToProServices\n ) => ReduxActionGeneric<\n typeof DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.SHOW_UPGRADE_USER_PLAN_TO_PRO_MODAL,\n DashboardReduxReducerUpgradeUserPlanToProServices\n >;\n\n hideUpgradeUserPlanToProModal: () => ReduxActionGeneric<\n typeof DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.HIDE_UPGRADE_USER_PLAN_TO_PRO_MODAL,\n undefined\n >;\n showUpgradeUserPlanToStandardModal: (\n service: DashboardReduxReducerUpgradeUserPlanToStandardServices\n ) => ReduxActionGeneric<\n typeof DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.SHOW_UPGRADE_USER_PLAN_TO_STANDARD_MODAL,\n DashboardReduxReducerUpgradeUserPlanToStandardServices\n >;\n\n hideUpgradeUserPlanToStandardModal: () => ReduxActionGeneric<\n typeof DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.HIDE_UPGRADE_USER_PLAN_TO_STANDARD_MODAL,\n undefined\n >;\n};\n\nexport const dashboardReduxReducerActions: DashboardReduxReducerActions = {\n showUpgradeUserPlanToProModal(service) {\n return {\n payload: service,\n type: DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.SHOW_UPGRADE_USER_PLAN_TO_PRO_MODAL,\n };\n },\n hideUpgradeUserPlanToProModal() {\n return {\n type: DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.HIDE_UPGRADE_USER_PLAN_TO_PRO_MODAL,\n };\n },\n showUpgradeUserPlanToStandardModal(service) {\n return {\n payload: service,\n type: DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.SHOW_UPGRADE_USER_PLAN_TO_STANDARD_MODAL,\n };\n },\n hideUpgradeUserPlanToStandardModal() {\n return {\n type: DASHBOARD_REDUX_REDUCER_ACTIONS_TYPE.HIDE_UPGRADE_USER_PLAN_TO_STANDARD_MODAL,\n };\n },\n};\n\nexport type DashboardReduxReducerActionsReturn = ReturnType<\n DashboardReduxReducerActions[keyof DashboardReduxReducerActions]\n>;\n","import React from \"react\";\nimport { Button, Modal } from \"@payping/web-components\";\nimport { useAppDispatch, useAppSelector } from \"@/utils/redux\";\nimport { dashboardReduxReducerActions } from \"@/redux/actions/dashboard\";\nimport { useAppTranslation } from \"@/utils/useAppTranslation\";\nimport { Link } from \"react-router-dom\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\nimport { Trans } from \"@payping/utils/localeUtils\";\nimport { safeJoinPath } from \"@payping/utils/string\";\n\nconst docUrl = \"https://payping.io/help/fa/category/1r4l656/\";\n\nconst DashboardToolsUpgradeUserPlanToProModal: React.FC = () => {\n const showModal = useAppSelector((state) => state.dashboard.upgradeUserPlanToPro);\n const dispatch = useAppDispatch();\n\n const { t } = useAppTranslation();\n\n const services = {\n invoice: {\n title: t(\"dashboardTools.upgradeUserPlanToProModal.services.invoice\"),\n helpUrl: safeJoinPath(webConstants.HELP_URL, \"/fa/faktor-anlainarah-faktor-rsmi/\"),\n },\n };\n\n const handleCloseModal = React.useCallback(() => {\n dispatch(dashboardReduxReducerActions.hideUpgradeUserPlanToProModal());\n }, [dispatch]);\n\n return (\n handleCloseModal()}>\n \n \n }\n >\n

\n {!showModal.service ? (\n \"\"\n ) : (\n ,\n a: ,\n b: ,\n }}\n />\n )}\n

\n \n );\n};\n\nexport default DashboardToolsUpgradeUserPlanToProModal;\n","import React from \"react\";\nimport { Button, Modal } from \"@payping/web-components\";\nimport { useAppDispatch, useAppSelector } from \"@/utils/redux\";\nimport { dashboardReduxReducerActions } from \"@/redux/actions/dashboard\";\nimport { useAppTranslation } from \"@/utils/useAppTranslation\";\nimport { Link } from \"react-router-dom\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\nimport { Trans } from \"@payping/utils/localeUtils\";\n\nconst DashboardToolsUpgradeUserPlanToStandardModal: React.FC = () => {\n const showModal = useAppSelector((state) => state.dashboard.upgradeUserPlanToStandard);\n const dispatch = useAppDispatch();\n\n const { t } = useAppTranslation();\n\n const services = {\n onlineShop: {\n title: t(\"dashboardTools.upgradeUserPlanToStandardModal.services.onlineShop\"),\n },\n };\n\n const handleCloseModal = React.useCallback(() => {\n dispatch(dashboardReduxReducerActions.hideUpgradeUserPlanToStandardModal());\n }, [dispatch]);\n\n return (\n handleCloseModal()}>\n \n \n }\n >\n

\n {!showModal.service ? (\n \"\"\n ) : (\n }}\n values={{\n serviceName: services[showModal.service].title,\n }}\n />\n )}\n

\n \n );\n};\n\nexport default DashboardToolsUpgradeUserPlanToStandardModal;\n","import React from \"react\";\nimport DashboardToolsUpgradeUserPlanToProModal from \"./UpgradeUserPlanToProModal\";\nimport UpgradeUserPlanToStandardModal from \"./UpgradeUserPlanToStandardModal\";\n\nconst DashboardTools: React.FC = () => (\n <>\n \n \n \n);\n\nexport default DashboardTools;\n","export const oldProfilePersonalId = \"old-profilepersonal\";\nexport const oldProfileLocalId = \"old-profilelocal\";\nexport const oldProfileBusinessId = \"old-profilebusiness\";\nexport const oldProfileBankId = \"old-profilebank\";\nexport const oldSocialCardId = \"old-social-card\";\nexport const oldTelegramBotInfoCardId = \"old-telegram-bot-card\";\nexport const oldProfilePersonalCtaId = \"old-profilepersonal-cta\";\nexport const oldProfilePersonalCancelId = \"old-profilepersonal-cancel\";\nexport const oldProfileLocalCtaId = \"old-profilelocal-cta\";\nexport const oldProfileLocalCancelId = \"old-profilelocal-cancel\";\nexport const oldProfileBusinessCtaId = \"old-profilebusiness-cta\";\nexport const oldProfileBusinessCancelId = \"old-profilebusiness-cancel\";\nexport const oldProfileBankCtaId = \"old-profilebank-cta\";\nexport const oldProfileBankCancelId = \"old-profilebank-cancel\";\nexport const oldProfileSocialCtaId = \"old-profilesocial-cta\";\nexport const oldProfileSocialCancelId = \"old-profilesocial-cancel\";\nexport const notificationCardId = \"notification-card\";\nexport const consultingCardId = \"consulting-card\";\nexport const blogCardId = \"blog-card\";\nexport const downloadLinuxAppId = \"download-linux-app\";\nexport const downloadMacOSAppId = \"download-macos-app\";\nexport const downloadWindowsAppId = \"download-windows-app\";\nexport const downloadIOSAppId = \"download-ios-app\";\nexport const downloadAndroidAppId = \"download-android-app\";\nexport const profileCompletionId = \"profile-completion\";\nexport const profileDropdownId = \"profile-dropdown\";\nexport const frequentSettingsId = \"frequent-settings\";\nexport const frequentProductListId = \"frequent-product-list\";\nexport const frequentServicesId = \"frequent-services\";\nexport const frequentTokenCreateId = \"frequent-token-create\";\nexport const personalPageLinkId = \"personal-page-link\";\nexport const personalPageCopyId = \"personal-page-link-copy\";\nexport const downloadPersonalPageQrId = \"download-personal-page-qr\";\nexport const balanceCardId = \"balance-card\";\nexport const updateBalanceId = \"update-balance\";\nexport const referralOverviewCardId = \"referral-overview-card\";\nexport const referralOverviewLinkId = \"referral-overview-link\";\nexport const referralMenuDropdownId = \"referral-menu-drop-down\";\nexport const oldUserProfileId = \"old-userprofile\";\nexport const oldUserProfileRejectId = \"old-userprofile-rejected\";\nexport const oldUserProfileSuccess = \"old-userprofile-success\";\nexport const changetonewD2 = \"changetonew-d2\";\n","import { SdkThunkActionResult } from \"@payping/redux/reducers\";\n\nimport { SET_UPDATE_AVAILABLE } from \"../reducers/serviceWorker\";\n\nexport function setUpdateAvailable(hasUpdate: boolean): SdkThunkActionResult> {\n return async (dispatch): Promise => {\n dispatch({ payload: hasUpdate, type: SET_UPDATE_AVAILABLE });\n };\n}\n","import { Button, Divider, Popover, Typography } from \"@payping/web-components\";\nimport { SyncOutlined } from \"@payping/icons\";\nimport { FC } from \"react\";\n\nimport styles from \"../../../assets/scss/NewVersion.module.scss\";\nimport { useAppTranslation } from \"../../../utils/useAppTranslation\";\n\nconst NewVersionModal: FC = () => {\n const { t } = useAppTranslation();\n\n // const translationVersion = changeLog[0].version.replace(/\\./g, \"-\");\n // const changes = t(`releaseNotes.${translationVersion}.features`, { returnObjects: true }).map(\n // (_: string, i: number) => (\n //
  • \n // (\n // \n // ))}\n // />\n //
  • \n // )\n // );\n\n return (\n \n
    \n {t(\"version.currentVersion\")}\n {process.env.REACT_APP_VERSION}\n
    \n {/*
    \n {t(\"version.newVersion\")}\n 1.1.1\n
    */}\n \n {t(\"version.updateProcess.title\")}\n {t(\"version.updateProcess.description\")}\n {/* {t(\"version.newChanges\")}\n
      {changes}
    */}\n \n }\n >\n \n \n );\n};\n\nexport default NewVersionModal;\n","import { UserMessageModel } from \"@payping/api\";\nimport { dateFormats, toJalali } from \"@payping/utils/dateUtils\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\nimport { Row, Typography } from \"@payping/web-components\";\nimport classnames from \"classnames\";\nimport React from \"react\";\nimport { Link } from \"react-router-dom\";\n\nimport styles from \"../../../assets/scss/Notifications.module.scss\";\n\ninterface Props {\n messageList?: UserMessageModel[];\n}\n\nconst Notifications: React.FC = (props: Props) => {\n const { messageList } = props;\n return (\n
    \n
    \n {messageList?.map((msg, index) => (\n
    \n \n \n \n {msg.title}\n \n \n {toJalali({ date: msg.createdDateTime, toFormat: dateFormats.ui.jalaliDate }).string}\n \n \n \n \n {msg.description}\n
    \n {msg.link ? (\n
    \n {msg.link}\n \n ) : null}\n \n
    \n ))}\n
    \n \n
    همه اعلانات
    \n \n
    \n );\n};\n\nexport default Notifications;\n","import { webConstants } from \"@payping/utils/platformConstants\";\n\nconst {\n home: homeRoutes,\n report: reportRoutes,\n ipg: ipgRoutes,\n invoice: invoiceRoutes,\n customer: customerRoutes,\n // platform: platformRoutes,\n product: productRoutes,\n requestMoney: requestMoneyRoutes,\n user: userRoutes,\n} = webConstants.DashboardRoutes;\n\nconst create = [\"ساخت\", \"ایجاد\", \"جدید\", \"create\", \"add\"];\nconst bulk = [\"دسته\", \"bulk\"];\nconst list = [\"لیست\", \"list\"];\nconst item = [\"ایتم\", \"item\"];\nconst customer = [\"مشتریان\", \"customers\"];\nconst coupon = [\"کدتخفیف\", \"کوپن\", \"coupon\", \"discount\"];\nconst invoice = [\"فاکتور\", \"invoice\"];\nconst report = [\"گزارش\", \"report\"];\nconst requestMoney = [\"درخواست پول\", \"request money\"];\nconst wordpress = [\"وردپرس\", \"wordpress\"];\n\n/**\n * NOTE: Do not use upperCase value in searchData, because before search all values are converted to lowerCase\n * Other not allowed characters:\n * ي\n * ك\n * آ\n */\nexport const searchData: Record = {\n [homeRoutes.messages]: [...report, \"اعلانات\", \"پیام\", \"messages\", \"notifications\"],\n [reportRoutes.itemSale]: [...report, \"فروش\", \"ایتم\", \"محصول\", \"item sale\", \"product sale\"],\n [homeRoutes.overview]: [...report, \"در یک نگاه\", \"کلی\", \"خانه\", \"home\", \"main\"],\n [reportRoutes.summation]: [\n ...report,\n \"تجمیعی\",\n \"پیشرفته\",\n \"پرداخت\",\n \"تراکنش\",\n \"summation\",\n \"advanced\",\n \"transaction\",\n \"payment\",\n \"accumulative\",\n ],\n [reportRoutes.transactions.root]: [...report, \"تراکنش\", \"خرید\", \"transaction\", ...list],\n [reportRoutes.withdraws.root]: [...report, \"تسویه\", \"تسفیه\", \"برداشت\", \"withdraw\", \"settlement\", ...list],\n [ipgRoutes.oauth.root]: [\n \"پلفترم\",\n \"توکن\",\n \"کلاینت\",\n \"برنامه\",\n \"oauth\",\n \"oauth2\",\n \"identity\",\n \"openid\",\n \"open authentication\",\n \"token\",\n \"client\",\n \"application\",\n ],\n [ipgRoutes.oauth.create]: [\n \"پلفترم\",\n \"توکن\",\n \"کلاینت\",\n \"برنامه\",\n \"oauth\",\n \"oauth2\",\n \"identity\",\n \"openid\",\n \"open authentication\",\n \"token\",\n \"client\",\n \"application\",\n ...create,\n ],\n [ipgRoutes.token.root]: [\n \"توکن\",\n \"درگاه\",\n \"درگاه پرداخت\",\n \"درگاه ساده\",\n \"token\",\n \"client\",\n \"plugin\",\n \"webservice\",\n \"api\",\n ],\n [ipgRoutes.token.create]: [\n \"توکن\",\n \"درگاه\",\n \"درگاه پرداخت\",\n \"درگاه ساده\",\n \"token\",\n \"client\",\n \"plugin\",\n \"webservice\",\n \"api\",\n ...create,\n ],\n [ipgRoutes.service.root]: [\"سرویس\", \"service\"],\n [ipgRoutes.service.detail.replace(\":name\", \"trust\")]: [\"نماد\", \"اعتماد\", \"پی‌پینگ\", \"payping\", \"donate\"],\n [ipgRoutes.service.detail.replace(\":name\", \"githubDonate\")]: [\"حمایت‌مالی\", \"گیتهاب\", \"گیت هاب\", \"github\"],\n [ipgRoutes.service.detail.replace(\":name\", \"donateScript\")]: [\"حمایت‌مالی\", \"donate script\"],\n [ipgRoutes.service.detail.replace(\":name\", \"slack\")]: [\"اسلک\", \"slack\", \"پیام‌رسانی\", \"messaging\"],\n [ipgRoutes.service.detail.replace(\":name\", \"telegram\")]: [\n \"تلگرام\",\n \"telegram\",\n \"پیام‌رسانی\",\n \"messaging\",\n \"ربات\",\n \"bot\",\n ],\n [ipgRoutes.service.detail.replace(\":name\", \"kavehNegar\")]: [\n \"کاوه نگار\",\n \"kaveh negar\",\n \"kavenegar\",\n \"پیام‌رسانی\",\n \"messaging\",\n ],\n [ipgRoutes.service.detail.replace(\":name\", \"mailerLite\")]: [\n \"میلرلایت\",\n \"mailer lite\",\n \"mailerlite\",\n \"پیام‌رسانی\",\n \"messaging\",\n ],\n [ipgRoutes.service.detail.replace(\":name\", \"J2Store\")]: [\"j2store\"],\n [ipgRoutes.service.detail.replace(\":name\", \"prestaShop\")]: [\"پرستاشاپ\", \"prestashop\"],\n [ipgRoutes.service.detail.replace(\":name\", \"whmcs\")]: [\"whmcs\"],\n [ipgRoutes.service.detail.replace(\":name\", \"opencart\")]: [\"opencart\"],\n [ipgRoutes.service.detail.replace(\":name\", \"virtualFreer\")]: [\"virtual freer\"],\n [ipgRoutes.service.detail.replace(\":name\", \"nopCommerce\")]: [\"nopcommerce\"],\n [ipgRoutes.service.detail.replace(\":name\", \"wooCommerce\")]: [\"ووکامرس\", \"woocommerce\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"wooCommerceVIP\")]: [\"ووکامرس vip\", \"woocommerce vip\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"gravityForms\")]: [\"gravityForms\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"easyDigital\")]: [\"easydigital\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"donatePlugin\")]: [\"حمایت‌مالی\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"paidPro\")]: [\"paidpro\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"proVIP\")]: [\"pro-vip\", \"provip\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"give\")]: [\"give\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"classiPress\")]: [\"classipress\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"myCred\")]: [\"mycred\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"restrictContentPro\")]: [\"restrictcontentpro\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"learnPress\")]: [\"learnpress\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"contactForm7\")]: [\"contactform7\", ...wordpress],\n [ipgRoutes.service.detail.replace(\":name\", \"WPUserFrontend\")]: [\"wpuserfrontend\", ...wordpress],\n [ipgRoutes.document]: [\"مستندات\", \"نمونه کد\", \"document\", \"code\", \"example\"],\n [requestMoneyRoutes.list]: [...requestMoney],\n [requestMoneyRoutes.request]: [...requestMoney, ...create],\n [requestMoneyRoutes.bulkRequest]: [...requestMoney, ...bulk, ...create],\n [customerRoutes.list]: [...customer, ...list],\n [customerRoutes.create]: [...customer, ...create],\n [customerRoutes.createBulk]: [...customer, ...bulk, ...create],\n [productRoutes.list]: [...item, ...list],\n [`${productRoutes.list}?isArchived=true`]: [\"ارشیو\", \"archived\", ...item, ...list],\n [productRoutes.create]: [...item, ...create],\n [productRoutes.createBulk]: [...item, ...bulk, ...create],\n [productRoutes.coupon.list]: [...item, ...coupon, ...list],\n [`${productRoutes.coupon.list}?isArchived=true`]: [\"ارشیو\", \"archived\", ...item, ...coupon, ...list],\n [productRoutes.coupon.create]: [...item, ...coupon, ...create],\n [invoiceRoutes.list]: [...invoice, ...list],\n [`${invoiceRoutes.list}?isArchived=true`]: [\"ارشیو\", \"archived\", ...invoice, ...list],\n [invoiceRoutes.create]: [...invoice, ...create],\n [invoiceRoutes.coupon.list]: [...invoice, ...coupon, ...list],\n [`${invoiceRoutes.coupon.list}?isArchived=true`]: [\"ارشیو\", \"archived\", ...invoice, ...coupon, ...list],\n [invoiceRoutes.coupon.create]: [...invoice, ...coupon, ...create],\n // TODO: add platform project routes\n // [platformRoutes.list]: [\"\", ...list],\n [userRoutes.settings.root]: [\"تنظیمات\", \"settings\", \"حساب کاربری\", \"account\"],\n [userRoutes.settings.display]: [\"تنظیمات نمایش\", \"display settings\"],\n [userRoutes.settings.messaging]: [\"اطلاع رسانی\", \"notification\"],\n [userRoutes.settings.password]: [\"تغییر رمز عبور\", \"change\", \"password\"],\n [userRoutes.settings.terminal]: [\"شخصی سازی درگاه\", \"terminal customization\"],\n [userRoutes.settings[\"2fa\"]]: [\"رمز دو مرحله ای\", \"otp\", \"2factor\"],\n [userRoutes.requestWithdraw]: [\"درخواست تسویه\", \"withdraw\", \"settlement\", \"request\"],\n [userRoutes.upgrade]: [\"تعرفه‌ها\", \"پلن‌ها\", \"ارتقاء\", \"tariffs\", \"plans\", \"upgrade\"],\n [userRoutes.profile.root]: [\"پروفایل\", \"profile\", \"حساب کاربری\", \"account\"],\n [userRoutes.profile.personal]: [\"اطلاعات\", \"فردی\", \"information\", \"personal\"],\n [userRoutes.profile.business]: [\"اطلاعات\", \"کسب و کار\", \"کسب‌و‌کار\", \"information\", \"business\"],\n [userRoutes.profile.bank]: [\"اطلاعات\", \"بانکی\", \"شبا\", \"information\", \"bank\", \"sheba\", \"iban\"],\n [userRoutes.profile.local]: [\"اطلاعات\", \"محلی\", \"information\", \"local\"],\n [userRoutes.profile.social]: [\n \"شبکه‌های اجتماعی\",\n \"تلگرام\",\n \"اینستاگرام\",\n \"توییتر\",\n \"توئیتر\",\n \"وبسایت\",\n \"وب سایت\",\n \"social\",\n \"telegram\",\n \"instagram\",\n \"twitter\",\n \"website\",\n ],\n [userRoutes.referral]: [...report, \"ریفرال\", \"درآمد\", \"کسب درآمد\", \"معرفی\", \"referral\", \"affiliate\"],\n};\n","import { ArrowRightOutlined } from \"@payping/icons\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\nimport { toFaAlpha } from \"@payping/utils/string\";\nimport classNames from \"classnames\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\n\nimport styles from \"../../../assets/scss/Search.module.scss\";\nimport { useAppTranslation } from \"../../../utils/useAppTranslation\";\nimport { searchData } from \"./SearchData\";\n\ninterface Props {\n visible?: boolean;\n setVisible: React.Dispatch>;\n}\n\ninterface RouteData {\n label: string;\n value: string;\n}\n\nconst Search: React.FC = (props: Props) => {\n const { visible, setVisible } = props;\n const [searchValue, setSearchValue] = useState(\"\");\n const { t } = useAppTranslation();\n const navigate = useNavigate();\n const inputRef = useRef(null);\n const routes = webConstants.DashboardRoutes;\n const minSearchLength = 3;\n\n const routeOptions: RouteData[] = [\n { label: t(\"pageTitles.report.messages\"), value: routes.home.messages },\n { label: t(\"pageTitles.report.itemSale\"), value: routes.report.itemSale },\n { label: t(\"pageTitles.report.overview\"), value: routes.home.overview },\n { label: t(\"pageTitles.report.summation\"), value: routes.report.summation },\n { label: t(\"pageTitles.report.transactions\"), value: routes.report.transactions.root },\n { label: t(\"pageTitles.report.withdraws\"), value: routes.report.withdraws.root },\n { label: t(\"pageTitles.ipg.oauth\"), value: routes.ipg.oauth.root },\n { label: t(\"pageTitles.ipg.oauthCreate\"), value: routes.ipg.oauth.create },\n { label: t(\"pageTitles.ipg.token\"), value: routes.ipg.token.root },\n { label: t(\"pageTitles.ipg.tokenCreate\"), value: routes.ipg.token.create },\n { label: t(\"pageTitles.ipg.services.root\"), value: routes.ipg.service.root },\n { label: t(\"pageTitles.ipg.services.trust\"), value: routes.ipg.service.detail.replace(\":name\", \"trust\") },\n {\n label: t(\"pageTitles.ipg.services.githubDonate\"),\n value: routes.ipg.service.detail.replace(\":name\", \"githubDonate\"),\n },\n {\n label: t(\"pageTitles.ipg.services.donateScript\"),\n value: routes.ipg.service.detail.replace(\":name\", \"donateScript\"),\n },\n { label: t(\"pageTitles.ipg.services.slack\"), value: routes.ipg.service.detail.replace(\":name\", \"slack\") },\n { label: t(\"pageTitles.ipg.services.telegram\"), value: routes.ipg.service.detail.replace(\":name\", \"telegram\") },\n { label: t(\"pageTitles.ipg.services.kavehNegar\"), value: routes.ipg.service.detail.replace(\":name\", \"kavehNegar\") },\n { label: t(\"pageTitles.ipg.services.mailerLite\"), value: routes.ipg.service.detail.replace(\":name\", \"mailerLite\") },\n { label: t(\"pageTitles.ipg.services.J2Store\"), value: routes.ipg.service.detail.replace(\":name\", \"J2Store\") },\n { label: t(\"pageTitles.ipg.services.prestaShop\"), value: routes.ipg.service.detail.replace(\":name\", \"prestaShop\") },\n { label: t(\"pageTitles.ipg.services.whmcs\"), value: routes.ipg.service.detail.replace(\":name\", \"whmcs\") },\n { label: t(\"pageTitles.ipg.services.opencart\"), value: routes.ipg.service.detail.replace(\":name\", \"opencart\") },\n {\n label: t(\"pageTitles.ipg.services.virtualFreer\"),\n value: routes.ipg.service.detail.replace(\":name\", \"virtualFreer\"),\n },\n {\n label: t(\"pageTitles.ipg.services.nopCommerce\"),\n value: routes.ipg.service.detail.replace(\":name\", \"nopCommerce\"),\n },\n {\n label: t(\"pageTitles.ipg.services.wooCommerce\"),\n value: routes.ipg.service.detail.replace(\":name\", \"wooCommerce\"),\n },\n {\n label: t(\"pageTitles.ipg.services.wooCommerceVIP\"),\n value: routes.ipg.service.detail.replace(\":name\", \"wooCommerceVIP\"),\n },\n {\n label: t(\"pageTitles.ipg.services.gravityForms\"),\n value: routes.ipg.service.detail.replace(\":name\", \"gravityForms\"),\n },\n {\n label: t(\"pageTitles.ipg.services.easyDigital\"),\n value: routes.ipg.service.detail.replace(\":name\", \"easyDigital\"),\n },\n {\n label: t(\"pageTitles.ipg.services.donatePlugin\"),\n value: routes.ipg.service.detail.replace(\":name\", \"donatePlugin\"),\n },\n { label: t(\"pageTitles.ipg.services.paidPro\"), value: routes.ipg.service.detail.replace(\":name\", \"paidPro\") },\n { label: t(\"pageTitles.ipg.services.proVIP\"), value: routes.ipg.service.detail.replace(\":name\", \"proVIP\") },\n { label: t(\"pageTitles.ipg.services.give\"), value: routes.ipg.service.detail.replace(\":name\", \"give\") },\n {\n label: t(\"pageTitles.ipg.services.classiPress\"),\n value: routes.ipg.service.detail.replace(\":name\", \"classiPress\"),\n },\n { label: t(\"pageTitles.ipg.services.myCred\"), value: routes.ipg.service.detail.replace(\":name\", \"myCred\") },\n {\n label: t(\"pageTitles.ipg.services.restrictContentPro\"),\n value: routes.ipg.service.detail.replace(\":name\", \"restrictContentPro\"),\n },\n { label: t(\"pageTitles.ipg.services.learnPress\"), value: routes.ipg.service.detail.replace(\":name\", \"learnPress\") },\n {\n label: t(\"pageTitles.ipg.services.contactForm7\"),\n value: routes.ipg.service.detail.replace(\":name\", \"contactForm7\"),\n },\n {\n label: t(\"pageTitles.ipg.services.WPUserFrontend\"),\n value: routes.ipg.service.detail.replace(\":name\", \"WPUserFrontend\"),\n },\n { label: t(\"pageTitles.ipg.document\"), value: routes.ipg.document },\n { label: t(\"pageTitles.requestMoney.list\"), value: routes.requestMoney.list },\n { label: t(\"pageTitles.requestMoney.request\"), value: routes.requestMoney.request },\n { label: t(\"pageTitles.requestMoney.bulkRequest\"), value: routes.requestMoney.bulkRequest },\n { label: t(\"pageTitles.customer.list\"), value: routes.customer.list },\n { label: t(\"pageTitles.customer.create\"), value: routes.customer.create },\n { label: t(\"pageTitles.customer.createBulk\"), value: routes.customer.createBulk },\n { label: t(\"pageTitles.product.list\"), value: routes.product.list },\n { label: t(\"pageTitles.product.archivedList\"), value: `${routes.product.list}?isArchived=true` },\n { label: t(\"pageTitles.product.create\"), value: routes.product.create },\n { label: t(\"pageTitles.product.createBulk\"), value: routes.product.createBulk },\n { label: t(\"pageTitles.product.couponList\"), value: routes.product.coupon.list },\n { label: t(\"pageTitles.product.couponCreate\"), value: routes.product.coupon.create },\n { label: t(\"pageTitles.invoice.list\"), value: routes.invoice.list },\n { label: t(\"pageTitles.invoice.create\"), value: routes.invoice.create },\n { label: t(\"pageTitles.invoice.couponList\"), value: routes.invoice.coupon.list },\n { label: t(\"pageTitles.invoice.couponCreate\"), value: routes.invoice.coupon.create },\n // { label: t(\"pageTitles.platform.list\"), value: routes.platform.list },\n { label: t(\"pageTitles.user.settings.root\"), value: routes.user.settings.root },\n { label: t(\"pageTitles.user.settings.display\"), value: routes.user.settings.display },\n { label: t(\"pageTitles.user.settings.messaging\"), value: routes.user.settings.messaging },\n { label: t(\"pageTitles.user.settings.password\"), value: routes.user.settings.password },\n { label: t(\"pageTitles.user.settings.terminal\"), value: routes.user.settings.terminal },\n { label: t(\"pageTitles.user.settings.2fa\"), value: routes.user.settings[\"2fa\"] },\n { label: t(\"pageTitles.user.requestWithdraw\"), value: routes.user.requestWithdraw },\n { label: t(\"pageTitles.user.upgrade\"), value: routes.user.upgrade },\n { label: t(\"pageTitles.user.profile.root\"), value: routes.user.profile.root },\n { label: t(\"pageTitles.user.profile.personal\"), value: routes.user.profile.personal },\n { label: t(\"pageTitles.user.profile.business\"), value: routes.user.profile.business },\n { label: t(\"pageTitles.user.profile.bank\"), value: routes.user.profile.bank },\n { label: t(\"pageTitles.user.profile.local\"), value: routes.user.profile.local },\n { label: t(\"pageTitles.user.profile.social\"), value: routes.user.profile.social },\n { label: t(\"pageTitles.user.referral\"), value: routes.user.referral },\n ];\n\n useEffect(() => {\n setTimeout(() => {\n if (visible) inputRef.current?.focus();\n }, 100);\n document.getElementsByTagName(\"body\")[0].setAttribute(\"style\", `overflow: ${visible ? \"hidden\" : \"\"}`);\n }, [visible]);\n\n function filterOption(inputValue: string, option?: RouteData): boolean {\n if (inputValue.length < minSearchLength) {\n return false;\n }\n const wordList = inputValue?.split(\" \");\n let exists = false;\n wordList?.forEach(\n (word) =>\n option &&\n word &&\n word.length >= minSearchLength &&\n searchData[option.value]?.map((keyword: string) => {\n if (keyword.includes(word)) {\n exists = true;\n return null;\n }\n return null;\n })\n );\n return exists;\n }\n\n return (\n
    \n
    \n
    setVisible(false)}>\n \n
    \n setSearchValue(event.currentTarget.value)}\n className={styles.input}\n placeholder={t(\"search.placeholder\")}\n />\n
    \n
      \n {routeOptions\n .filter((option) => filterOption(toFaAlpha(searchValue.toLowerCase()), option))\n .map((route, index) => (\n {\n navigate(String(route.value));\n setVisible(false);\n }}\n >\n {route.label}\n \n ))}\n
    \n
    \n );\n};\n\nexport default Search;\n","import { Link, LinkProps } from \"react-router-dom\";\nimport { AnchorHTMLAttributes } from \"react\";\n\ninterface CustomLinkProps extends Omit & LinkProps, \"to\"> {\n to: string;\n}\n\nexport const CustomLink = (props: CustomLinkProps): JSX.Element => {\n const { to, ...otherProps } = props;\n return to.includes(\"http\") ? (\n \n ) : (\n \n );\n};\n","import { webConstants } from \"@payping/utils/platformConstants\";\nimport { safeJoinPath } from \"@payping/utils/string\";\n\nconst { DashboardRoutes } = webConstants;\n\ninterface ChangeLogType {\n links: string[][];\n version: string;\n}\n\n// for each new release note there should be an entry inside changeLog and another one inside translation files\n// changeLog contains links to changed pages\n// translations contain release note texts\nexport const changeLog: ChangeLogType[] = [\n {\n links: [[DashboardRoutes.user.terminals]],\n version: \"1.8.0\",\n },\n {\n links: [[DashboardRoutes.user.referral]],\n version: \"1.7.0\",\n },\n {\n links: [[]],\n version: \"1.6.5\",\n },\n // TODO: The link have to use blog utils constant\n {\n links: [[safeJoinPath(webConstants.BLOG_URL, \"enamad\")]],\n version: \"1.6.0\",\n },\n {\n links: [[DashboardRoutes.user.upgrade]],\n version: \"1.5.10\",\n },\n {\n links: [[DashboardRoutes.home.overview], [DashboardRoutes.report.transactions.root]],\n version: \"1.3.0\",\n },\n {\n links: [[]],\n version: \"1.2.0\",\n },\n {\n links: [[], [], []],\n version: \"1.1.0\",\n },\n {\n links: [\n [DashboardRoutes.home.overview],\n [DashboardRoutes.ipg.document],\n [DashboardRoutes.invoice.coupon.list],\n [DashboardRoutes.requestMoney.request],\n [DashboardRoutes.ipg.service.detail.replace(\":name\", \"githubDonate\")],\n [DashboardRoutes.ipg.root],\n [],\n [],\n [],\n [DashboardRoutes.report.itemSale],\n [DashboardRoutes.user.profile.root, DashboardRoutes.user.settings.root],\n [],\n ],\n version: \"1.0.0\",\n },\n];\n","import { setAutoReleaseNotes } from \"@payping/redux/actions\";\nimport { Checkbox, Grid, Popover, Typography } from \"@payping/web-components\";\nimport { FC, useEffect, useState } from \"react\";\nimport { Trans } from \"@payping/utils/localeUtils\";\nimport { useAppTranslation } from \"@/utils/useAppTranslation\";\nimport { useAppDispatch, useAppSelector } from \"@/utils/redux\";\nimport { CustomLink } from \"@/components/CustomLink\";\nimport styles from \"@/assets/scss/Version.module.scss\";\nimport { changeLog } from \"./versionData\";\n\nexport const Version: FC = () => {\n const { autoDisplay } = useAppSelector((state) => state.settings);\n const [visibleChangeLog, setVisibleChangeLog] = useState(false);\n const hasUpdate = useAppSelector((state) => state.serviceWorker.hasUpdate);\n const [dontShow, setDontShow] = useState(!autoDisplay);\n const dispatch = useAppDispatch();\n const { t } = useAppTranslation();\n\n const toggleDontShow = (newVal: boolean) => {\n dispatch(setAutoReleaseNotes(!newVal));\n setDontShow(newVal);\n };\n\n useEffect(() => {\n if (autoDisplay && window.screen.width > 900 && hasUpdate) {\n setVisibleChangeLog(true);\n const timer = setTimeout(() => {\n setVisibleChangeLog(false);\n }, 3000);\n\n return () => {\n clearTimeout(timer);\n };\n }\n return undefined;\n }, [autoDisplay, hasUpdate]);\n\n const versionElement = (\n
    \n {process.env.REACT_APP_VERSION}\n
    \n );\n\n const change = changeLog.map(({ links, version }, index) => {\n const translationVersion = version.replace(/\\./g, \"-\");\n return (\n
    \n {version}\n {t(`releaseNotes.${translationVersion}.date`)}\n
      \n {t(`releaseNotes.${translationVersion}.features`, { returnObjects: true }).map((_: string, i: number) => (\n
    • \n ,\n ...(links[i] || []).map((link: string, j: number) => ),\n ]}\n />\n
    • \n ))}\n
    \n
    \n );\n });\n\n const { useBreakpoint } = Grid;\n const notDesktop = !useBreakpoint().lg;\n\n return !notDesktop ? (\n \n
    \n
    \n
    {change}
    \n
    \n
    \n
    \n toggleDontShow(event.target.checked)}\n >\n {t(\"autoReleaseNote\")}\n \n \n }\n >\n {versionElement}\n \n ) : (\n versionElement\n );\n};\n\nexport default Version;\n","module.exports = {\n\tMODE_NUMBER :\t\t1 << 0,\n\tMODE_ALPHA_NUM : \t1 << 1,\n\tMODE_8BIT_BYTE : \t1 << 2,\n\tMODE_KANJI :\t\t1 << 3\n};\n","var mode = require('./mode');\n\nfunction QR8bitByte(data) {\n\tthis.mode = mode.MODE_8BIT_BYTE;\n\tthis.data = data;\n}\n\nQR8bitByte.prototype = {\n\n\tgetLength : function(buffer) {\n\t\treturn this.data.length;\n\t},\n\t\n\twrite : function(buffer) {\n\t\tfor (var i = 0; i < this.data.length; i++) {\n\t\t\t// not JIS ...\n\t\t\tbuffer.put(this.data.charCodeAt(i), 8);\n\t\t}\n\t}\n};\n\nmodule.exports = QR8bitByte;\n\n","module.exports = {\n\tL : 1,\n\tM : 0,\n\tQ : 3,\n\tH : 2\n};\n\n","// ErrorCorrectLevel\nvar ECL = require('./ErrorCorrectLevel');\n\nfunction QRRSBlock(totalCount, dataCount) {\n\tthis.totalCount = totalCount;\n\tthis.dataCount = dataCount;\n}\n\nQRRSBlock.RS_BLOCK_TABLE = [\n\n\t// L\n\t// M\n\t// Q\n\t// H\n\n\t// 1\n\t[1, 26, 19],\n\t[1, 26, 16],\n\t[1, 26, 13],\n\t[1, 26, 9],\n\t\n\t// 2\n\t[1, 44, 34],\n\t[1, 44, 28],\n\t[1, 44, 22],\n\t[1, 44, 16],\n\n\t// 3\n\t[1, 70, 55],\n\t[1, 70, 44],\n\t[2, 35, 17],\n\t[2, 35, 13],\n\n\t// 4\t\t\n\t[1, 100, 80],\n\t[2, 50, 32],\n\t[2, 50, 24],\n\t[4, 25, 9],\n\t\n\t// 5\n\t[1, 134, 108],\n\t[2, 67, 43],\n\t[2, 33, 15, 2, 34, 16],\n\t[2, 33, 11, 2, 34, 12],\n\t\n\t// 6\n\t[2, 86, 68],\n\t[4, 43, 27],\n\t[4, 43, 19],\n\t[4, 43, 15],\n\t\n\t// 7\t\t\n\t[2, 98, 78],\n\t[4, 49, 31],\n\t[2, 32, 14, 4, 33, 15],\n\t[4, 39, 13, 1, 40, 14],\n\t\n\t// 8\n\t[2, 121, 97],\n\t[2, 60, 38, 2, 61, 39],\n\t[4, 40, 18, 2, 41, 19],\n\t[4, 40, 14, 2, 41, 15],\n\t\n\t// 9\n\t[2, 146, 116],\n\t[3, 58, 36, 2, 59, 37],\n\t[4, 36, 16, 4, 37, 17],\n\t[4, 36, 12, 4, 37, 13],\n\t\n\t// 10\t\t\n\t[2, 86, 68, 2, 87, 69],\n\t[4, 69, 43, 1, 70, 44],\n\t[6, 43, 19, 2, 44, 20],\n\t[6, 43, 15, 2, 44, 16],\n\n\t// 11\n\t[4, 101, 81],\n\t[1, 80, 50, 4, 81, 51],\n\t[4, 50, 22, 4, 51, 23],\n\t[3, 36, 12, 8, 37, 13],\n\n\t// 12\n\t[2, 116, 92, 2, 117, 93],\n\t[6, 58, 36, 2, 59, 37],\n\t[4, 46, 20, 6, 47, 21],\n\t[7, 42, 14, 4, 43, 15],\n\n\t// 13\n\t[4, 133, 107],\n\t[8, 59, 37, 1, 60, 38],\n\t[8, 44, 20, 4, 45, 21],\n\t[12, 33, 11, 4, 34, 12],\n\n\t// 14\n\t[3, 145, 115, 1, 146, 116],\n\t[4, 64, 40, 5, 65, 41],\n\t[11, 36, 16, 5, 37, 17],\n\t[11, 36, 12, 5, 37, 13],\n\n\t// 15\n\t[5, 109, 87, 1, 110, 88],\n\t[5, 65, 41, 5, 66, 42],\n\t[5, 54, 24, 7, 55, 25],\n\t[11, 36, 12],\n\n\t// 16\n\t[5, 122, 98, 1, 123, 99],\n\t[7, 73, 45, 3, 74, 46],\n\t[15, 43, 19, 2, 44, 20],\n\t[3, 45, 15, 13, 46, 16],\n\n\t// 17\n\t[1, 135, 107, 5, 136, 108],\n\t[10, 74, 46, 1, 75, 47],\n\t[1, 50, 22, 15, 51, 23],\n\t[2, 42, 14, 17, 43, 15],\n\n\t// 18\n\t[5, 150, 120, 1, 151, 121],\n\t[9, 69, 43, 4, 70, 44],\n\t[17, 50, 22, 1, 51, 23],\n\t[2, 42, 14, 19, 43, 15],\n\n\t// 19\n\t[3, 141, 113, 4, 142, 114],\n\t[3, 70, 44, 11, 71, 45],\n\t[17, 47, 21, 4, 48, 22],\n\t[9, 39, 13, 16, 40, 14],\n\n\t// 20\n\t[3, 135, 107, 5, 136, 108],\n\t[3, 67, 41, 13, 68, 42],\n\t[15, 54, 24, 5, 55, 25],\n\t[15, 43, 15, 10, 44, 16],\n\n\t// 21\n\t[4, 144, 116, 4, 145, 117],\n\t[17, 68, 42],\n\t[17, 50, 22, 6, 51, 23],\n\t[19, 46, 16, 6, 47, 17],\n\n\t// 22\n\t[2, 139, 111, 7, 140, 112],\n\t[17, 74, 46],\n\t[7, 54, 24, 16, 55, 25],\n\t[34, 37, 13],\n\n\t// 23\n\t[4, 151, 121, 5, 152, 122],\n\t[4, 75, 47, 14, 76, 48],\n\t[11, 54, 24, 14, 55, 25],\n\t[16, 45, 15, 14, 46, 16],\n\n\t// 24\n\t[6, 147, 117, 4, 148, 118],\n\t[6, 73, 45, 14, 74, 46],\n\t[11, 54, 24, 16, 55, 25],\n\t[30, 46, 16, 2, 47, 17],\n\n\t// 25\n\t[8, 132, 106, 4, 133, 107],\n\t[8, 75, 47, 13, 76, 48],\n\t[7, 54, 24, 22, 55, 25],\n\t[22, 45, 15, 13, 46, 16],\n\n\t// 26\n\t[10, 142, 114, 2, 143, 115],\n\t[19, 74, 46, 4, 75, 47],\n\t[28, 50, 22, 6, 51, 23],\n\t[33, 46, 16, 4, 47, 17],\n\n\t// 27\n\t[8, 152, 122, 4, 153, 123],\n\t[22, 73, 45, 3, 74, 46],\n\t[8, 53, 23, 26, 54, 24],\n\t[12, 45, 15, 28, 46, 16],\n\n\t// 28\n\t[3, 147, 117, 10, 148, 118],\n\t[3, 73, 45, 23, 74, 46],\n\t[4, 54, 24, 31, 55, 25],\n\t[11, 45, 15, 31, 46, 16],\n\n\t// 29\n\t[7, 146, 116, 7, 147, 117],\n\t[21, 73, 45, 7, 74, 46],\n\t[1, 53, 23, 37, 54, 24],\n\t[19, 45, 15, 26, 46, 16],\n\n\t// 30\n\t[5, 145, 115, 10, 146, 116],\n\t[19, 75, 47, 10, 76, 48],\n\t[15, 54, 24, 25, 55, 25],\n\t[23, 45, 15, 25, 46, 16],\n\n\t// 31\n\t[13, 145, 115, 3, 146, 116],\n\t[2, 74, 46, 29, 75, 47],\n\t[42, 54, 24, 1, 55, 25],\n\t[23, 45, 15, 28, 46, 16],\n\n\t// 32\n\t[17, 145, 115],\n\t[10, 74, 46, 23, 75, 47],\n\t[10, 54, 24, 35, 55, 25],\n\t[19, 45, 15, 35, 46, 16],\n\n\t// 33\n\t[17, 145, 115, 1, 146, 116],\n\t[14, 74, 46, 21, 75, 47],\n\t[29, 54, 24, 19, 55, 25],\n\t[11, 45, 15, 46, 46, 16],\n\n\t// 34\n\t[13, 145, 115, 6, 146, 116],\n\t[14, 74, 46, 23, 75, 47],\n\t[44, 54, 24, 7, 55, 25],\n\t[59, 46, 16, 1, 47, 17],\n\n\t// 35\n\t[12, 151, 121, 7, 152, 122],\n\t[12, 75, 47, 26, 76, 48],\n\t[39, 54, 24, 14, 55, 25],\n\t[22, 45, 15, 41, 46, 16],\n\n\t// 36\n\t[6, 151, 121, 14, 152, 122],\n\t[6, 75, 47, 34, 76, 48],\n\t[46, 54, 24, 10, 55, 25],\n\t[2, 45, 15, 64, 46, 16],\n\n\t// 37\n\t[17, 152, 122, 4, 153, 123],\n\t[29, 74, 46, 14, 75, 47],\n\t[49, 54, 24, 10, 55, 25],\n\t[24, 45, 15, 46, 46, 16],\n\n\t// 38\n\t[4, 152, 122, 18, 153, 123],\n\t[13, 74, 46, 32, 75, 47],\n\t[48, 54, 24, 14, 55, 25],\n\t[42, 45, 15, 32, 46, 16],\n\n\t// 39\n\t[20, 147, 117, 4, 148, 118],\n\t[40, 75, 47, 7, 76, 48],\n\t[43, 54, 24, 22, 55, 25],\n\t[10, 45, 15, 67, 46, 16],\n\n\t// 40\n\t[19, 148, 118, 6, 149, 119],\n\t[18, 75, 47, 31, 76, 48],\n\t[34, 54, 24, 34, 55, 25],\n\t[20, 45, 15, 61, 46, 16]\n];\n\nQRRSBlock.getRSBlocks = function(typeNumber, errorCorrectLevel) {\n\t\n\tvar rsBlock = QRRSBlock.getRsBlockTable(typeNumber, errorCorrectLevel);\n\t\n\tif (rsBlock == undefined) {\n\t\tthrow new Error(\"bad rs block @ typeNumber:\" + typeNumber + \"/errorCorrectLevel:\" + errorCorrectLevel);\n\t}\n\n\tvar length = rsBlock.length / 3;\n\t\n\tvar list = new Array();\n\t\n\tfor (var i = 0; i < length; i++) {\n\n\t\tvar count = rsBlock[i * 3 + 0];\n\t\tvar totalCount = rsBlock[i * 3 + 1];\n\t\tvar dataCount = rsBlock[i * 3 + 2];\n\n\t\tfor (var j = 0; j < count; j++) {\n\t\t\tlist.push(new QRRSBlock(totalCount, dataCount) );\t\n\t\t}\n\t}\n\t\n\treturn list;\n}\n\nQRRSBlock.getRsBlockTable = function(typeNumber, errorCorrectLevel) {\n\n\tswitch(errorCorrectLevel) {\n\tcase ECL.L :\n\t\treturn QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0];\n\tcase ECL.M :\n\t\treturn QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1];\n\tcase ECL.Q :\n\t\treturn QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2];\n\tcase ECL.H :\n\t\treturn QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3];\n\tdefault :\n\t\treturn undefined;\n\t}\n}\n\nmodule.exports = QRRSBlock;\n","function QRBitBuffer() {\n\tthis.buffer = new Array();\n\tthis.length = 0;\n}\n\nQRBitBuffer.prototype = {\n\n\tget : function(index) {\n\t\tvar bufIndex = Math.floor(index / 8);\n\t\treturn ( (this.buffer[bufIndex] >>> (7 - index % 8) ) & 1) == 1;\n\t},\n\t\n\tput : function(num, length) {\n\t\tfor (var i = 0; i < length; i++) {\n\t\t\tthis.putBit( ( (num >>> (length - i - 1) ) & 1) == 1);\n\t\t}\n\t},\n\t\n\tgetLengthInBits : function() {\n\t\treturn this.length;\n\t},\n\t\n\tputBit : function(bit) {\n\t\n\t\tvar bufIndex = Math.floor(this.length / 8);\n\t\tif (this.buffer.length <= bufIndex) {\n\t\t\tthis.buffer.push(0);\n\t\t}\n\t\n\t\tif (bit) {\n\t\t\tthis.buffer[bufIndex] |= (0x80 >>> (this.length % 8) );\n\t\t}\n\t\n\t\tthis.length++;\n\t}\n};\n\nmodule.exports = QRBitBuffer;\n","var QRMath = {\n\n\tglog : function(n) {\n\t\n\t\tif (n < 1) {\n\t\t\tthrow new Error(\"glog(\" + n + \")\");\n\t\t}\n\t\t\n\t\treturn QRMath.LOG_TABLE[n];\n\t},\n\t\n\tgexp : function(n) {\n\t\n\t\twhile (n < 0) {\n\t\t\tn += 255;\n\t\t}\n\t\n\t\twhile (n >= 256) {\n\t\t\tn -= 255;\n\t\t}\n\t\n\t\treturn QRMath.EXP_TABLE[n];\n\t},\n\t\n\tEXP_TABLE : new Array(256),\n\t\n\tLOG_TABLE : new Array(256)\n\n};\n\t\nfor (var i = 0; i < 8; i++) {\n\tQRMath.EXP_TABLE[i] = 1 << i;\n}\nfor (var i = 8; i < 256; i++) {\n\tQRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4]\n\t\t^ QRMath.EXP_TABLE[i - 5]\n\t\t^ QRMath.EXP_TABLE[i - 6]\n\t\t^ QRMath.EXP_TABLE[i - 8];\n}\nfor (var i = 0; i < 255; i++) {\n\tQRMath.LOG_TABLE[QRMath.EXP_TABLE[i] ] = i;\n}\n\nmodule.exports = QRMath;\n","var math = require('./math');\n\nfunction QRPolynomial(num, shift) {\n\n\tif (num.length == undefined) {\n\t\tthrow new Error(num.length + \"/\" + shift);\n\t}\n\n\tvar offset = 0;\n\n\twhile (offset < num.length && num[offset] == 0) {\n\t\toffset++;\n\t}\n\n\tthis.num = new Array(num.length - offset + shift);\n\tfor (var i = 0; i < num.length - offset; i++) {\n\t\tthis.num[i] = num[i + offset];\n\t}\n}\n\nQRPolynomial.prototype = {\n\n\tget : function(index) {\n\t\treturn this.num[index];\n\t},\n\t\n\tgetLength : function() {\n\t\treturn this.num.length;\n\t},\n\t\n\tmultiply : function(e) {\n\t\n\t\tvar num = new Array(this.getLength() + e.getLength() - 1);\n\t\n\t\tfor (var i = 0; i < this.getLength(); i++) {\n\t\t\tfor (var j = 0; j < e.getLength(); j++) {\n\t\t\t\tnum[i + j] ^= math.gexp(math.glog(this.get(i) ) + math.glog(e.get(j) ) );\n\t\t\t}\n\t\t}\n\t\n\t\treturn new QRPolynomial(num, 0);\n\t},\n\t\n\tmod : function(e) {\n\t\n\t\tif (this.getLength() - e.getLength() < 0) {\n\t\t\treturn this;\n\t\t}\n\t\n\t\tvar ratio = math.glog(this.get(0) ) - math.glog(e.get(0) );\n\t\n\t\tvar num = new Array(this.getLength() );\n\t\t\n\t\tfor (var i = 0; i < this.getLength(); i++) {\n\t\t\tnum[i] = this.get(i);\n\t\t}\n\t\t\n\t\tfor (var i = 0; i < e.getLength(); i++) {\n\t\t\tnum[i] ^= math.gexp(math.glog(e.get(i) ) + ratio);\n\t\t}\n\t\n\t\t// recursive call\n\t\treturn new QRPolynomial(num, 0).mod(e);\n\t}\n};\n\nmodule.exports = QRPolynomial;\n","var Mode = require('./mode');\nvar Polynomial = require('./Polynomial');\nvar math = require('./math');\n\nvar QRMaskPattern = {\n\tPATTERN000 : 0,\n\tPATTERN001 : 1,\n\tPATTERN010 : 2,\n\tPATTERN011 : 3,\n\tPATTERN100 : 4,\n\tPATTERN101 : 5,\n\tPATTERN110 : 6,\n\tPATTERN111 : 7\n};\n\nvar QRUtil = {\n\n PATTERN_POSITION_TABLE : [\n\t [],\n\t [6, 18],\n\t [6, 22],\n\t [6, 26],\n\t [6, 30],\n\t [6, 34],\n\t [6, 22, 38],\n\t [6, 24, 42],\n\t [6, 26, 46],\n\t [6, 28, 50],\n\t [6, 30, 54],\t\t\n\t [6, 32, 58],\n\t [6, 34, 62],\n\t [6, 26, 46, 66],\n\t [6, 26, 48, 70],\n\t [6, 26, 50, 74],\n\t [6, 30, 54, 78],\n\t [6, 30, 56, 82],\n\t [6, 30, 58, 86],\n\t [6, 34, 62, 90],\n\t [6, 28, 50, 72, 94],\n\t [6, 26, 50, 74, 98],\n\t [6, 30, 54, 78, 102],\n\t [6, 28, 54, 80, 106],\n\t [6, 32, 58, 84, 110],\n\t [6, 30, 58, 86, 114],\n\t [6, 34, 62, 90, 118],\n\t [6, 26, 50, 74, 98, 122],\n\t [6, 30, 54, 78, 102, 126],\n\t [6, 26, 52, 78, 104, 130],\n\t [6, 30, 56, 82, 108, 134],\n\t [6, 34, 60, 86, 112, 138],\n\t [6, 30, 58, 86, 114, 142],\n\t [6, 34, 62, 90, 118, 146],\n\t [6, 30, 54, 78, 102, 126, 150],\n\t [6, 24, 50, 76, 102, 128, 154],\n\t [6, 28, 54, 80, 106, 132, 158],\n\t [6, 32, 58, 84, 110, 136, 162],\n\t [6, 26, 54, 82, 110, 138, 166],\n\t [6, 30, 58, 86, 114, 142, 170]\n ],\n\n G15 : (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0),\n G18 : (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0),\n G15_MASK : (1 << 14) | (1 << 12) | (1 << 10)\t| (1 << 4) | (1 << 1),\n\n getBCHTypeInfo : function(data) {\n\t var d = data << 10;\n\t while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {\n\t\t d ^= (QRUtil.G15 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) ) ); \t\n\t }\n\t return ( (data << 10) | d) ^ QRUtil.G15_MASK;\n },\n\n getBCHTypeNumber : function(data) {\n\t var d = data << 12;\n\t while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {\n\t\t d ^= (QRUtil.G18 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) ) ); \t\n\t }\n\t return (data << 12) | d;\n },\n\n getBCHDigit : function(data) {\n\n\t var digit = 0;\n\n\t while (data != 0) {\n\t\t digit++;\n\t\t data >>>= 1;\n\t }\n\n\t return digit;\n },\n\n getPatternPosition : function(typeNumber) {\n\t return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1];\n },\n\n getMask : function(maskPattern, i, j) {\n\t \n\t switch (maskPattern) {\n\t\t \n\t case QRMaskPattern.PATTERN000 : return (i + j) % 2 == 0;\n\t case QRMaskPattern.PATTERN001 : return i % 2 == 0;\n\t case QRMaskPattern.PATTERN010 : return j % 3 == 0;\n\t case QRMaskPattern.PATTERN011 : return (i + j) % 3 == 0;\n\t case QRMaskPattern.PATTERN100 : return (Math.floor(i / 2) + Math.floor(j / 3) ) % 2 == 0;\n\t case QRMaskPattern.PATTERN101 : return (i * j) % 2 + (i * j) % 3 == 0;\n\t case QRMaskPattern.PATTERN110 : return ( (i * j) % 2 + (i * j) % 3) % 2 == 0;\n\t case QRMaskPattern.PATTERN111 : return ( (i * j) % 3 + (i + j) % 2) % 2 == 0;\n\n\t default :\n\t\t throw new Error(\"bad maskPattern:\" + maskPattern);\n\t }\n },\n\n getErrorCorrectPolynomial : function(errorCorrectLength) {\n\n\t var a = new Polynomial([1], 0);\n\n\t for (var i = 0; i < errorCorrectLength; i++) {\n\t\t a = a.multiply(new Polynomial([1, math.gexp(i)], 0) );\n\t }\n\n\t return a;\n },\n\n getLengthInBits : function(mode, type) {\n\n\t if (1 <= type && type < 10) {\n\n\t\t // 1 - 9\n\n\t\t switch(mode) {\n\t\t case Mode.MODE_NUMBER \t: return 10;\n\t\t case Mode.MODE_ALPHA_NUM \t: return 9;\n\t\t case Mode.MODE_8BIT_BYTE\t: return 8;\n\t\t case Mode.MODE_KANJI \t: return 8;\n\t\t default :\n\t\t\t throw new Error(\"mode:\" + mode);\n\t\t }\n\n\t } else if (type < 27) {\n\n\t\t // 10 - 26\n\n\t\t switch(mode) {\n\t\t case Mode.MODE_NUMBER \t: return 12;\n\t\t case Mode.MODE_ALPHA_NUM \t: return 11;\n\t\t case Mode.MODE_8BIT_BYTE\t: return 16;\n\t\t case Mode.MODE_KANJI \t: return 10;\n\t\t default :\n\t\t\t throw new Error(\"mode:\" + mode);\n\t\t }\n\n\t } else if (type < 41) {\n\n\t\t // 27 - 40\n\n\t\t switch(mode) {\n\t\t case Mode.MODE_NUMBER \t: return 14;\n\t\t case Mode.MODE_ALPHA_NUM\t: return 13;\n\t\t case Mode.MODE_8BIT_BYTE\t: return 16;\n\t\t case Mode.MODE_KANJI \t: return 12;\n\t\t default :\n\t\t\t throw new Error(\"mode:\" + mode);\n\t\t }\n\n\t } else {\n\t\t throw new Error(\"type:\" + type);\n\t }\n },\n\n getLostPoint : function(qrCode) {\n\t \n\t var moduleCount = qrCode.getModuleCount();\n\t \n\t var lostPoint = 0;\n\t \n\t // LEVEL1\n\t \n\t for (var row = 0; row < moduleCount; row++) {\n\n\t\t for (var col = 0; col < moduleCount; col++) {\n\n\t\t\t var sameCount = 0;\n\t\t\t var dark = qrCode.isDark(row, col);\n\n\t\t\t\tfor (var r = -1; r <= 1; r++) {\n\n\t\t\t\t if (row + r < 0 || moduleCount <= row + r) {\n\t\t\t\t\t continue;\n\t\t\t\t }\n\n\t\t\t\t for (var c = -1; c <= 1; c++) {\n\n\t\t\t\t\t if (col + c < 0 || moduleCount <= col + c) {\n\t\t\t\t\t\t continue;\n\t\t\t\t\t }\n\n\t\t\t\t\t if (r == 0 && c == 0) {\n\t\t\t\t\t\t continue;\n\t\t\t\t\t }\n\n\t\t\t\t\t if (dark == qrCode.isDark(row + r, col + c) ) {\n\t\t\t\t\t\t sameCount++;\n\t\t\t\t\t }\n\t\t\t\t }\n\t\t\t }\n\n\t\t\t if (sameCount > 5) {\n\t\t\t\t lostPoint += (3 + sameCount - 5);\n\t\t\t }\n\t\t }\n\t }\n\n\t // LEVEL2\n\n\t for (var row = 0; row < moduleCount - 1; row++) {\n\t\t for (var col = 0; col < moduleCount - 1; col++) {\n\t\t\t var count = 0;\n\t\t\t if (qrCode.isDark(row, col ) ) count++;\n\t\t\t if (qrCode.isDark(row + 1, col ) ) count++;\n\t\t\t if (qrCode.isDark(row, col + 1) ) count++;\n\t\t\t if (qrCode.isDark(row + 1, col + 1) ) count++;\n\t\t\t if (count == 0 || count == 4) {\n\t\t\t\t lostPoint += 3;\n\t\t\t }\n\t\t }\n\t }\n\n\t // LEVEL3\n\n\t for (var row = 0; row < moduleCount; row++) {\n\t\t for (var col = 0; col < moduleCount - 6; col++) {\n\t\t\t if (qrCode.isDark(row, col)\n\t\t\t\t\t && !qrCode.isDark(row, col + 1)\n\t\t\t\t\t && qrCode.isDark(row, col + 2)\n\t\t\t\t\t && qrCode.isDark(row, col + 3)\n\t\t\t\t\t && qrCode.isDark(row, col + 4)\n\t\t\t\t\t && !qrCode.isDark(row, col + 5)\n\t\t\t\t\t && qrCode.isDark(row, col + 6) ) {\n\t\t\t\t lostPoint += 40;\n\t\t\t }\n\t\t }\n\t }\n\n\t for (var col = 0; col < moduleCount; col++) {\n\t\t for (var row = 0; row < moduleCount - 6; row++) {\n\t\t\t if (qrCode.isDark(row, col)\n\t\t\t\t\t && !qrCode.isDark(row + 1, col)\n\t\t\t\t\t && qrCode.isDark(row + 2, col)\n\t\t\t\t\t && qrCode.isDark(row + 3, col)\n\t\t\t\t\t && qrCode.isDark(row + 4, col)\n\t\t\t\t\t && !qrCode.isDark(row + 5, col)\n\t\t\t\t\t && qrCode.isDark(row + 6, col) ) {\n\t\t\t\t lostPoint += 40;\n\t\t\t }\n\t\t }\n\t }\n\n\t // LEVEL4\n\t \n\t var darkCount = 0;\n\n\t for (var col = 0; col < moduleCount; col++) {\n\t\t for (var row = 0; row < moduleCount; row++) {\n\t\t\t if (qrCode.isDark(row, col) ) {\n\t\t\t\t darkCount++;\n\t\t\t }\n\t\t }\n\t }\n\t \n\t var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5;\n\t lostPoint += ratio * 10;\n\n\t return lostPoint;\t\t\n }\n};\n\nmodule.exports = QRUtil;\n","var BitByte = require('./8BitByte');\nvar RSBlock = require('./RSBlock');\nvar BitBuffer = require('./BitBuffer');\nvar util = require('./util');\nvar Polynomial = require('./Polynomial');\n\nfunction QRCode(typeNumber, errorCorrectLevel) {\n\tthis.typeNumber = typeNumber;\n\tthis.errorCorrectLevel = errorCorrectLevel;\n\tthis.modules = null;\n\tthis.moduleCount = 0;\n\tthis.dataCache = null;\n\tthis.dataList = [];\n}\n\n// for client side minification\nvar proto = QRCode.prototype;\n\nproto.addData = function(data) {\n\tvar newData = new BitByte(data);\n\tthis.dataList.push(newData);\n\tthis.dataCache = null;\n};\n\nproto.isDark = function(row, col) {\n\tif (row < 0 || this.moduleCount <= row || col < 0 || this.moduleCount <= col) {\n\t\tthrow new Error(row + \",\" + col);\n\t}\n\treturn this.modules[row][col];\n};\n\nproto.getModuleCount = function() {\n\treturn this.moduleCount;\n};\n\nproto.make = function() {\n\t// Calculate automatically typeNumber if provided is < 1\n\tif (this.typeNumber < 1 ){\n\t\tvar typeNumber = 1;\n\t\tfor (typeNumber = 1; typeNumber < 40; typeNumber++) {\n\t\t\tvar rsBlocks = RSBlock.getRSBlocks(typeNumber, this.errorCorrectLevel);\n\n\t\t\tvar buffer = new BitBuffer();\n\t\t\tvar totalDataCount = 0;\n\t\t\tfor (var i = 0; i < rsBlocks.length; i++) {\n\t\t\t\ttotalDataCount += rsBlocks[i].dataCount;\n\t\t\t}\n\n\t\t\tfor (var i = 0; i < this.dataList.length; i++) {\n\t\t\t\tvar data = this.dataList[i];\n\t\t\t\tbuffer.put(data.mode, 4);\n\t\t\t\tbuffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber) );\n\t\t\t\tdata.write(buffer);\n\t\t\t}\n\t\t\tif (buffer.getLengthInBits() <= totalDataCount * 8)\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.typeNumber = typeNumber;\n\t}\n\tthis.makeImpl(false, this.getBestMaskPattern() );\n};\n\nproto.makeImpl = function(test, maskPattern) {\n\t\n\tthis.moduleCount = this.typeNumber * 4 + 17;\n\tthis.modules = new Array(this.moduleCount);\n\t\n\tfor (var row = 0; row < this.moduleCount; row++) {\n\t\t\n\t\tthis.modules[row] = new Array(this.moduleCount);\n\t\t\n\t\tfor (var col = 0; col < this.moduleCount; col++) {\n\t\t\tthis.modules[row][col] = null;//(col + row) % 3;\n\t\t}\n\t}\n\n\tthis.setupPositionProbePattern(0, 0);\n\tthis.setupPositionProbePattern(this.moduleCount - 7, 0);\n\tthis.setupPositionProbePattern(0, this.moduleCount - 7);\n\tthis.setupPositionAdjustPattern();\n\tthis.setupTimingPattern();\n\tthis.setupTypeInfo(test, maskPattern);\n\t\n\tif (this.typeNumber >= 7) {\n\t\tthis.setupTypeNumber(test);\n\t}\n\n\tif (this.dataCache == null) {\n\t\tthis.dataCache = QRCode.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);\n\t}\n\n\tthis.mapData(this.dataCache, maskPattern);\n};\n\nproto.setupPositionProbePattern = function(row, col) {\n\t\n\tfor (var r = -1; r <= 7; r++) {\n\t\t\n\t\tif (row + r <= -1 || this.moduleCount <= row + r) continue;\n\t\t\n\t\tfor (var c = -1; c <= 7; c++) {\n\t\t\t\n\t\t\tif (col + c <= -1 || this.moduleCount <= col + c) continue;\n\t\t\t\n\t\t\tif ( (0 <= r && r <= 6 && (c == 0 || c == 6) )\n\t\t\t\t\t|| (0 <= c && c <= 6 && (r == 0 || r == 6) )\n\t\t\t\t\t|| (2 <= r && r <= 4 && 2 <= c && c <= 4) ) {\n\t\t\t\tthis.modules[row + r][col + c] = true;\n\t\t\t} else {\n\t\t\t\tthis.modules[row + r][col + c] = false;\n\t\t\t}\n\t\t}\t\t\n\t}\t\t\n};\n\nproto.getBestMaskPattern = function() {\n\n\tvar minLostPoint = 0;\n\tvar pattern = 0;\n\n\tfor (var i = 0; i < 8; i++) {\n\t\t\n\t\tthis.makeImpl(true, i);\n\n\t\tvar lostPoint = util.getLostPoint(this);\n\n\t\tif (i == 0 || minLostPoint > lostPoint) {\n\t\t\tminLostPoint = lostPoint;\n\t\t\tpattern = i;\n\t\t}\n\t}\n\n\treturn pattern;\n};\n\nproto.createMovieClip = function(target_mc, instance_name, depth) {\n\n\tvar qr_mc = target_mc.createEmptyMovieClip(instance_name, depth);\n\tvar cs = 1;\n\n\tthis.make();\n\n\tfor (var row = 0; row < this.modules.length; row++) {\n\t\t\n\t\tvar y = row * cs;\n\t\t\n\t\tfor (var col = 0; col < this.modules[row].length; col++) {\n\n\t\t\tvar x = col * cs;\n\t\t\tvar dark = this.modules[row][col];\n\t\t\n\t\t\tif (dark) {\n\t\t\t\tqr_mc.beginFill(0, 100);\n\t\t\t\tqr_mc.moveTo(x, y);\n\t\t\t\tqr_mc.lineTo(x + cs, y);\n\t\t\t\tqr_mc.lineTo(x + cs, y + cs);\n\t\t\t\tqr_mc.lineTo(x, y + cs);\n\t\t\t\tqr_mc.endFill();\n\t\t\t}\n\t\t}\n\t}\n\t\n\treturn qr_mc;\n};\n\nproto.setupTimingPattern = function() {\n\t\n\tfor (var r = 8; r < this.moduleCount - 8; r++) {\n\t\tif (this.modules[r][6] != null) {\n\t\t\tcontinue;\n\t\t}\n\t\tthis.modules[r][6] = (r % 2 == 0);\n\t}\n\n\tfor (var c = 8; c < this.moduleCount - 8; c++) {\n\t\tif (this.modules[6][c] != null) {\n\t\t\tcontinue;\n\t\t}\n\t\tthis.modules[6][c] = (c % 2 == 0);\n\t}\n};\n\nproto.setupPositionAdjustPattern = function() {\n\n\tvar pos = util.getPatternPosition(this.typeNumber);\n\t\n\tfor (var i = 0; i < pos.length; i++) {\n\t\n\t\tfor (var j = 0; j < pos.length; j++) {\n\t\t\n\t\t\tvar row = pos[i];\n\t\t\tvar col = pos[j];\n\t\t\t\n\t\t\tif (this.modules[row][col] != null) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\t\n\t\t\tfor (var r = -2; r <= 2; r++) {\n\t\t\t\n\t\t\t\tfor (var c = -2; c <= 2; c++) {\n\t\t\t\t\n\t\t\t\t\tif (r == -2 || r == 2 || c == -2 || c == 2\n\t\t\t\t\t\t\t|| (r == 0 && c == 0) ) {\n\t\t\t\t\t\tthis.modules[row + r][col + c] = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.modules[row + r][col + c] = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nproto.setupTypeNumber = function(test) {\n\n\tvar bits = util.getBCHTypeNumber(this.typeNumber);\n\n\tfor (var i = 0; i < 18; i++) {\n\t\tvar mod = (!test && ( (bits >> i) & 1) == 1);\n\t\tthis.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod;\n\t}\n\n\tfor (var i = 0; i < 18; i++) {\n\t\tvar mod = (!test && ( (bits >> i) & 1) == 1);\n\t\tthis.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod;\n\t}\n};\n\nproto.setupTypeInfo = function(test, maskPattern) {\n\n\tvar data = (this.errorCorrectLevel << 3) | maskPattern;\n\tvar bits = util.getBCHTypeInfo(data);\n\n\t// vertical\t\t\n\tfor (var i = 0; i < 15; i++) {\n\n\t\tvar mod = (!test && ( (bits >> i) & 1) == 1);\n\n\t\tif (i < 6) {\n\t\t\tthis.modules[i][8] = mod;\n\t\t} else if (i < 8) {\n\t\t\tthis.modules[i + 1][8] = mod;\n\t\t} else {\n\t\t\tthis.modules[this.moduleCount - 15 + i][8] = mod;\n\t\t}\n\t}\n\n\t// horizontal\n\tfor (var i = 0; i < 15; i++) {\n\n\t\tvar mod = (!test && ( (bits >> i) & 1) == 1);\n\t\t\n\t\tif (i < 8) {\n\t\t\tthis.modules[8][this.moduleCount - i - 1] = mod;\n\t\t} else if (i < 9) {\n\t\t\tthis.modules[8][15 - i - 1 + 1] = mod;\n\t\t} else {\n\t\t\tthis.modules[8][15 - i - 1] = mod;\n\t\t}\n\t}\n\n\t// fixed module\n\tthis.modules[this.moduleCount - 8][8] = (!test);\n};\n\nproto.mapData = function(data, maskPattern) {\n\t\n\tvar inc = -1;\n\tvar row = this.moduleCount - 1;\n\tvar bitIndex = 7;\n\tvar byteIndex = 0;\n\t\n\tfor (var col = this.moduleCount - 1; col > 0; col -= 2) {\n\n\t\tif (col == 6) col--;\n\n\t\twhile (true) {\n\n\t\t\tfor (var c = 0; c < 2; c++) {\n\t\t\t\t\n\t\t\t\tif (this.modules[row][col - c] == null) {\n\t\t\t\t\t\n\t\t\t\t\tvar dark = false;\n\n\t\t\t\t\tif (byteIndex < data.length) {\n\t\t\t\t\t\tdark = ( ( (data[byteIndex] >>> bitIndex) & 1) == 1);\n\t\t\t\t\t}\n\n\t\t\t\t\tvar mask = util.getMask(maskPattern, row, col - c);\n\n\t\t\t\t\tif (mask) {\n\t\t\t\t\t\tdark = !dark;\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tthis.modules[row][col - c] = dark;\n\t\t\t\t\tbitIndex--;\n\n\t\t\t\t\tif (bitIndex == -1) {\n\t\t\t\t\t\tbyteIndex++;\n\t\t\t\t\t\tbitIndex = 7;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\trow += inc;\n\n\t\t\tif (row < 0 || this.moduleCount <= row) {\n\t\t\t\trow -= inc;\n\t\t\t\tinc = -inc;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n};\n\nQRCode.PAD0 = 0xEC;\nQRCode.PAD1 = 0x11;\n\nQRCode.createData = function(typeNumber, errorCorrectLevel, dataList) {\n\t\n\tvar rsBlocks = RSBlock.getRSBlocks(typeNumber, errorCorrectLevel);\n\t\n\tvar buffer = new BitBuffer();\n\t\n\tfor (var i = 0; i < dataList.length; i++) {\n\t\tvar data = dataList[i];\n\t\tbuffer.put(data.mode, 4);\n\t\tbuffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber) );\n\t\tdata.write(buffer);\n\t}\n\n\t// calc num max data.\n\tvar totalDataCount = 0;\n\tfor (var i = 0; i < rsBlocks.length; i++) {\n\t\ttotalDataCount += rsBlocks[i].dataCount;\n\t}\n\n\tif (buffer.getLengthInBits() > totalDataCount * 8) {\n\t\tthrow new Error(\"code length overflow. (\"\n\t\t\t+ buffer.getLengthInBits()\n\t\t\t+ \">\"\n\t\t\t+ totalDataCount * 8\n\t\t\t+ \")\");\n\t}\n\n\t// end code\n\tif (buffer.getLengthInBits() + 4 <= totalDataCount * 8) {\n\t\tbuffer.put(0, 4);\n\t}\n\n\t// padding\n\twhile (buffer.getLengthInBits() % 8 != 0) {\n\t\tbuffer.putBit(false);\n\t}\n\n\t// padding\n\twhile (true) {\n\t\t\n\t\tif (buffer.getLengthInBits() >= totalDataCount * 8) {\n\t\t\tbreak;\n\t\t}\n\t\tbuffer.put(QRCode.PAD0, 8);\n\t\t\n\t\tif (buffer.getLengthInBits() >= totalDataCount * 8) {\n\t\t\tbreak;\n\t\t}\n\t\tbuffer.put(QRCode.PAD1, 8);\n\t}\n\n\treturn QRCode.createBytes(buffer, rsBlocks);\n};\n\nQRCode.createBytes = function(buffer, rsBlocks) {\n\n\tvar offset = 0;\n\t\n\tvar maxDcCount = 0;\n\tvar maxEcCount = 0;\n\t\n\tvar dcdata = new Array(rsBlocks.length);\n\tvar ecdata = new Array(rsBlocks.length);\n\t\n\tfor (var r = 0; r < rsBlocks.length; r++) {\n\n\t\tvar dcCount = rsBlocks[r].dataCount;\n\t\tvar ecCount = rsBlocks[r].totalCount - dcCount;\n\n\t\tmaxDcCount = Math.max(maxDcCount, dcCount);\n\t\tmaxEcCount = Math.max(maxEcCount, ecCount);\n\t\t\n\t\tdcdata[r] = new Array(dcCount);\n\t\t\n\t\tfor (var i = 0; i < dcdata[r].length; i++) {\n\t\t\tdcdata[r][i] = 0xff & buffer.buffer[i + offset];\n\t\t}\n\t\toffset += dcCount;\n\t\t\n\t\tvar rsPoly = util.getErrorCorrectPolynomial(ecCount);\n\t\tvar rawPoly = new Polynomial(dcdata[r], rsPoly.getLength() - 1);\n\n\t\tvar modPoly = rawPoly.mod(rsPoly);\n\t\tecdata[r] = new Array(rsPoly.getLength() - 1);\n\t\tfor (var i = 0; i < ecdata[r].length; i++) {\n var modIndex = i + modPoly.getLength() - ecdata[r].length;\n\t\t\tecdata[r][i] = (modIndex >= 0)? modPoly.get(modIndex) : 0;\n\t\t}\n\n\t}\n\t\n\tvar totalCodeCount = 0;\n\tfor (var i = 0; i < rsBlocks.length; i++) {\n\t\ttotalCodeCount += rsBlocks[i].totalCount;\n\t}\n\n\tvar data = new Array(totalCodeCount);\n\tvar index = 0;\n\n\tfor (var i = 0; i < maxDcCount; i++) {\n\t\tfor (var r = 0; r < rsBlocks.length; r++) {\n\t\t\tif (i < dcdata[r].length) {\n\t\t\t\tdata[index++] = dcdata[r][i];\n\t\t\t}\n\t\t}\n\t}\n\n\tfor (var i = 0; i < maxEcCount; i++) {\n\t\tfor (var r = 0; r < rsBlocks.length; r++) {\n\t\t\tif (i < ecdata[r].length) {\n\t\t\t\tdata[index++] = ecdata[r][i];\n\t\t\t}\n\t\t}\n\t}\n\n\treturn data;\n};\n\nmodule.exports = QRCode;\n\n","'use strict';\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar React = require('react');\n\nvar PropTypes = require('prop-types'); // qr.js doesn't handle error level of zero (M) so we need to do it right,\n// thus the deep require.\n\n\nvar QRCodeImpl = require('qr.js/lib/QRCode');\n\nvar ErrorCorrectLevel = require('qr.js/lib/ErrorCorrectLevel'); // TODO: pull this off of the QRCode class type so it matches.\n\n\n// Convert from UTF-16, forcing the use of byte-mode encoding in our QR Code.\n// This allows us to encode Hanji, Kanji, emoji, etc. Ideally we'd do more\n// detection and not resort to byte-mode if possible, but we're trading off\n// a smaller library for a smaller amount of data we can potentially encode.\n// Based on http://jonisalonen.com/2012/from-utf-16-to-utf-8-in-javascript/\nfunction convertStr(str) {\n var out = '';\n\n for (var i = 0; i < str.length; i++) {\n var charcode = str.charCodeAt(i);\n\n if (charcode < 0x0080) {\n out += String.fromCharCode(charcode);\n } else if (charcode < 0x0800) {\n out += String.fromCharCode(0xc0 | charcode >> 6);\n out += String.fromCharCode(0x80 | charcode & 0x3f);\n } else if (charcode < 0xd800 || charcode >= 0xe000) {\n out += String.fromCharCode(0xe0 | charcode >> 12);\n out += String.fromCharCode(0x80 | charcode >> 6 & 0x3f);\n out += String.fromCharCode(0x80 | charcode & 0x3f);\n } else {\n // This is a surrogate pair, so we'll reconsitute the pieces and work\n // from that\n i++;\n charcode = 0x10000 + ((charcode & 0x3ff) << 10 | str.charCodeAt(i) & 0x3ff);\n out += String.fromCharCode(0xf0 | charcode >> 18);\n out += String.fromCharCode(0x80 | charcode >> 12 & 0x3f);\n out += String.fromCharCode(0x80 | charcode >> 6 & 0x3f);\n out += String.fromCharCode(0x80 | charcode & 0x3f);\n }\n }\n\n return out;\n}\n\nvar DEFAULT_PROPS = {\n size: 128,\n level: 'L',\n bgColor: '#FFFFFF',\n fgColor: '#000000',\n includeMargin: false\n};\nvar PROP_TYPES = process.env.NODE_ENV !== 'production' ? {\n value: PropTypes.string.isRequired,\n size: PropTypes.number,\n level: PropTypes.oneOf(['L', 'M', 'Q', 'H']),\n bgColor: PropTypes.string,\n fgColor: PropTypes.string,\n includeMargin: PropTypes.bool,\n imageSettings: PropTypes.shape({\n src: PropTypes.string.isRequired,\n height: PropTypes.number.isRequired,\n width: PropTypes.number.isRequired,\n excavate: PropTypes.bool,\n x: PropTypes.number,\n y: PropTypes.number\n })\n} : {};\nvar MARGIN_SIZE = 4; // This is *very* rough estimate of max amount of QRCode allowed to be covered.\n// It is \"wrong\" in a lot of ways (area is a terrible way to estimate, it\n// really should be number of modules covered), but if for some reason we don't\n// get an explicit height or width, I'd rather default to something than throw.\n\nvar DEFAULT_IMG_SCALE = 0.1;\n\nfunction generatePath(modules) {\n var margin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var ops = [];\n modules.forEach(function (row, y) {\n var start = null;\n row.forEach(function (cell, x) {\n if (!cell && start !== null) {\n // M0 0h7v1H0z injects the space with the move and drops the comma,\n // saving a char per operation\n ops.push(\"M\".concat(start + margin, \" \").concat(y + margin, \"h\").concat(x - start, \"v1H\").concat(start + margin, \"z\"));\n start = null;\n return;\n } // end of row, clean up or skip\n\n\n if (x === row.length - 1) {\n if (!cell) {\n // We would have closed the op above already so this can only mean\n // 2+ light modules in a row.\n return;\n }\n\n if (start === null) {\n // Just a single dark module.\n ops.push(\"M\".concat(x + margin, \",\").concat(y + margin, \" h1v1H\").concat(x + margin, \"z\"));\n } else {\n // Otherwise finish the current line.\n ops.push(\"M\".concat(start + margin, \",\").concat(y + margin, \" h\").concat(x + 1 - start, \"v1H\").concat(start + margin, \"z\"));\n }\n\n return;\n }\n\n if (cell && start === null) {\n start = x;\n }\n });\n });\n return ops.join('');\n} // We could just do this in generatePath, except that we want to support\n// non-Path2D canvas, so we need to keep it an explicit step.\n\n\nfunction excavateModules(modules, excavation) {\n return modules.slice().map(function (row, y) {\n if (y < excavation.y || y >= excavation.y + excavation.h) {\n return row;\n }\n\n return row.map(function (cell, x) {\n if (x < excavation.x || x >= excavation.x + excavation.w) {\n return cell;\n }\n\n return false;\n });\n });\n}\n\nfunction getImageSettings(props, cells) {\n var imageSettings = props.imageSettings,\n size = props.size,\n includeMargin = props.includeMargin;\n\n if (imageSettings == null) {\n return null;\n }\n\n var margin = includeMargin ? MARGIN_SIZE : 0;\n var numCells = cells.length + margin * 2;\n var defaultSize = Math.floor(size * DEFAULT_IMG_SCALE);\n var scale = numCells / size;\n var w = (imageSettings.width || defaultSize) * scale;\n var h = (imageSettings.height || defaultSize) * scale;\n var x = imageSettings.x == null ? cells.length / 2 - w / 2 : imageSettings.x * scale;\n var y = imageSettings.y == null ? cells.length / 2 - h / 2 : imageSettings.y * scale;\n var excavation = null;\n\n if (imageSettings.excavate) {\n var floorX = Math.floor(x);\n var floorY = Math.floor(y);\n var ceilW = Math.ceil(w + x - floorX);\n var ceilH = Math.ceil(h + y - floorY);\n excavation = {\n x: floorX,\n y: floorY,\n w: ceilW,\n h: ceilH\n };\n }\n\n return {\n x: x,\n y: y,\n h: h,\n w: w,\n excavation: excavation\n };\n} // For canvas we're going to switch our drawing mode based on whether or not\n// the environment supports Path2D. We only need the constructor to be\n// supported, but Edge doesn't actually support the path (string) type\n// argument. Luckily it also doesn't support the addPath() method. We can\n// treat that as the same thing.\n\n\nvar SUPPORTS_PATH2D = function () {\n try {\n new Path2D().addPath(new Path2D());\n } catch (e) {\n return false;\n }\n\n return true;\n}();\n\nvar QRCodeCanvas =\n/*#__PURE__*/\nfunction (_React$PureComponent) {\n _inherits(QRCodeCanvas, _React$PureComponent);\n\n function QRCodeCanvas() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, QRCodeCanvas);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(QRCodeCanvas)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"_canvas\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"_image\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n imgLoaded: false\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleImageLoad\", function () {\n _this.setState({\n imgLoaded: true\n });\n });\n\n return _this;\n }\n\n _createClass(QRCodeCanvas, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this._image && this._image.complete) {\n this.handleImageLoad();\n }\n\n this.update();\n }\n }, {\n key: \"componentWillReceiveProps\",\n value: function componentWillReceiveProps(nextProps) {\n var _this$props$imageSett, _nextProps$imageSetti;\n\n var currentSrc = (_this$props$imageSett = this.props.imageSettings) === null || _this$props$imageSett === void 0 ? void 0 : _this$props$imageSett.src;\n var nextSrc = (_nextProps$imageSetti = nextProps.imageSettings) === null || _nextProps$imageSetti === void 0 ? void 0 : _nextProps$imageSetti.src;\n\n if (currentSrc !== nextSrc) {\n this.setState({\n imgLoaded: false\n });\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n this.update();\n }\n }, {\n key: \"update\",\n value: function update() {\n var _this$props = this.props,\n value = _this$props.value,\n size = _this$props.size,\n level = _this$props.level,\n bgColor = _this$props.bgColor,\n fgColor = _this$props.fgColor,\n includeMargin = _this$props.includeMargin,\n imageSettings = _this$props.imageSettings; // We'll use type===-1 to force QRCode to automatically pick the best type\n\n var qrcode = new QRCodeImpl(-1, ErrorCorrectLevel[level]);\n qrcode.addData(convertStr(value));\n qrcode.make();\n\n if (this._canvas != null) {\n var canvas = this._canvas;\n var ctx = canvas.getContext('2d');\n\n if (!ctx) {\n return;\n }\n\n var cells = qrcode.modules;\n\n if (cells === null) {\n return;\n }\n\n var margin = includeMargin ? MARGIN_SIZE : 0;\n var numCells = cells.length + margin * 2;\n var calculatedImageSettings = getImageSettings(this.props, cells);\n\n if (imageSettings != null && calculatedImageSettings != null) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n } // We're going to scale this so that the number of drawable units\n // matches the number of cells. This avoids rounding issues, but does\n // result in some potentially unwanted single pixel issues between\n // blocks, only in environments that don't support Path2D.\n\n\n var pixelRatio = window.devicePixelRatio || 1;\n canvas.height = canvas.width = size * pixelRatio;\n var scale = size / numCells * pixelRatio;\n ctx.scale(scale, scale); // Draw solid background, only paint dark modules.\n\n ctx.fillStyle = bgColor;\n ctx.fillRect(0, 0, numCells, numCells);\n ctx.fillStyle = fgColor;\n\n if (SUPPORTS_PATH2D) {\n // $FlowFixMe: Path2D c'tor doesn't support args yet.\n ctx.fill(new Path2D(generatePath(cells, margin)));\n } else {\n cells.forEach(function (row, rdx) {\n row.forEach(function (cell, cdx) {\n if (cell) {\n ctx.fillRect(cdx + margin, rdx + margin, 1, 1);\n }\n });\n });\n }\n\n if (this.state.imgLoaded && this._image && calculatedImageSettings != null) {\n ctx.drawImage(this._image, calculatedImageSettings.x + margin, calculatedImageSettings.y + margin, calculatedImageSettings.w, calculatedImageSettings.h);\n }\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var _this$props2 = this.props,\n value = _this$props2.value,\n size = _this$props2.size,\n level = _this$props2.level,\n bgColor = _this$props2.bgColor,\n fgColor = _this$props2.fgColor,\n style = _this$props2.style,\n includeMargin = _this$props2.includeMargin,\n imageSettings = _this$props2.imageSettings,\n otherProps = _objectWithoutProperties(_this$props2, [\"value\", \"size\", \"level\", \"bgColor\", \"fgColor\", \"style\", \"includeMargin\", \"imageSettings\"]);\n\n var canvasStyle = _objectSpread({\n height: size,\n width: size\n }, style);\n\n var img = null;\n var imgSrc = imageSettings && imageSettings.src;\n\n if (imageSettings != null && imgSrc != null) {\n img = React.createElement(\"img\", {\n src: imgSrc,\n style: {\n display: 'none'\n },\n onLoad: this.handleImageLoad,\n ref: function ref(_ref) {\n return _this2._image = _ref;\n }\n });\n }\n\n return React.createElement(React.Fragment, null, React.createElement(\"canvas\", _extends({\n style: canvasStyle,\n height: size,\n width: size,\n ref: function ref(_ref2) {\n return _this2._canvas = _ref2;\n }\n }, otherProps)), img);\n }\n }]);\n\n return QRCodeCanvas;\n}(React.PureComponent);\n\n_defineProperty(QRCodeCanvas, \"defaultProps\", DEFAULT_PROPS);\n\nif (process.env.NODE_ENV !== 'production') {\n QRCodeCanvas.propTypes = PROP_TYPES;\n}\n\nvar QRCodeSVG =\n/*#__PURE__*/\nfunction (_React$PureComponent2) {\n _inherits(QRCodeSVG, _React$PureComponent2);\n\n function QRCodeSVG() {\n _classCallCheck(this, QRCodeSVG);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(QRCodeSVG).apply(this, arguments));\n }\n\n _createClass(QRCodeSVG, [{\n key: \"render\",\n value: function render() {\n var _this$props3 = this.props,\n value = _this$props3.value,\n size = _this$props3.size,\n level = _this$props3.level,\n bgColor = _this$props3.bgColor,\n fgColor = _this$props3.fgColor,\n includeMargin = _this$props3.includeMargin,\n imageSettings = _this$props3.imageSettings,\n otherProps = _objectWithoutProperties(_this$props3, [\"value\", \"size\", \"level\", \"bgColor\", \"fgColor\", \"includeMargin\", \"imageSettings\"]); // We'll use type===-1 to force QRCode to automatically pick the best type\n\n\n var qrcode = new QRCodeImpl(-1, ErrorCorrectLevel[level]);\n qrcode.addData(convertStr(value));\n qrcode.make();\n var cells = qrcode.modules;\n\n if (cells === null) {\n return null;\n }\n\n var margin = includeMargin ? MARGIN_SIZE : 0;\n var numCells = cells.length + margin * 2;\n var calculatedImageSettings = getImageSettings(this.props, cells);\n var image = null;\n\n if (imageSettings != null && calculatedImageSettings != null) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n\n image = React.createElement(\"image\", {\n xlinkHref: imageSettings.src,\n height: calculatedImageSettings.h,\n width: calculatedImageSettings.w,\n x: calculatedImageSettings.x + margin,\n y: calculatedImageSettings.y + margin,\n preserveAspectRatio: \"none\"\n });\n } // Drawing strategy: instead of a rect per module, we're going to create a\n // single path for the dark modules and layer that on top of a light rect,\n // for a total of 2 DOM nodes. We pay a bit more in string concat but that's\n // way faster than DOM ops.\n // For level 1, 441 nodes -> 2\n // For level 40, 31329 -> 2\n\n\n var fgPath = generatePath(cells, margin);\n return React.createElement(\"svg\", _extends({\n shapeRendering: \"crispEdges\",\n height: size,\n width: size,\n viewBox: \"0 0 \".concat(numCells, \" \").concat(numCells)\n }, otherProps), React.createElement(\"path\", {\n fill: bgColor,\n d: \"M0,0 h\".concat(numCells, \"v\").concat(numCells, \"H0z\")\n }), React.createElement(\"path\", {\n fill: fgColor,\n d: fgPath\n }), image);\n }\n }]);\n\n return QRCodeSVG;\n}(React.PureComponent);\n\n_defineProperty(QRCodeSVG, \"defaultProps\", DEFAULT_PROPS);\n\nif (process.env.NODE_ENV !== 'production') {\n QRCodeSVG.propTypes = PROP_TYPES;\n}\n\nvar QRCode = function QRCode(props) {\n var renderAs = props.renderAs,\n otherProps = _objectWithoutProperties(props, [\"renderAs\"]);\n\n var Component = renderAs === 'svg' ? QRCodeSVG : QRCodeCanvas;\n return React.createElement(Component, otherProps);\n};\n\nQRCode.defaultProps = _objectSpread({\n renderAs: 'canvas'\n}, DEFAULT_PROPS);\nmodule.exports = QRCode;","import { Button } from \"@payping/web-components\";\nimport classNames from \"classnames\";\nimport React from \"react\";\nimport styles from \"../../../assets/scss/Plan.module.scss\";\nimport { useAppSelector } from \"../../../utils/redux\";\n\nexport const PlanButton: React.FC = () => {\n const currentPlan = useAppSelector((state) => state.user.panelInfo?.currentPlan);\n\n return (\n \n );\n};\n","import { AutoWithdrawTypeEnum, WageTypeEnum } from \"@payping/api\";\nimport {\n CheckOutlined,\n ChevronsUp,\n Close,\n CopyOutlined,\n DownOutlined,\n QrcodeOutlined,\n User as UserOutlined,\n} from \"@payping/icons\";\nimport { addOverflow, safeJoinPath } from \"@payping/utils/string\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\nimport { Avatar, Button, Col, Grid, Popover, PopoverImage, Row, Typography } from \"@payping/web-components\";\nimport { User } from \"@payping/web-components/components/MainNav/types\";\nimport { prefixCls } from \"@payping/web-components/style/variables\";\nimport React, { useEffect, useState } from \"react\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport QRCode from \"qrcode.react\";\nimport classNames from \"classnames\";\n\nimport { useAppSelector } from \"../../../utils/redux\";\nimport styles from \"../../../assets/scss/Profile.module.scss\";\nimport planStyles from \"../../../assets/scss/Plan.module.scss\";\nimport { useAppTranslation } from \"../../../utils/useAppTranslation\";\nimport { PlanButton } from \"./PlanButton\";\n\ninterface Props {\n menu: React.ReactNode;\n user: User;\n}\n\nexport const UserSection: React.FC = (props) => {\n const { menu, user } = props;\n const { t } = useAppTranslation();\n const [qrDataUrl, setQrDataUrl] = useState();\n const [visibleModal, setVisibleModal] = useState(false);\n const username = useAppSelector((state) => state.user.personalInfo?.username);\n const autoWithdrawType = useAppSelector((state) => state.user.currentPlan?.autoWithdrawType);\n const navigate = useNavigate();\n const location = useLocation();\n const wage = useAppSelector((state) => state.user.wage);\n\n const url = safeJoinPath(webConstants.PPNG, username || \"\");\n const qrDownloadUrl = \"personal-page-qr\";\n const isDesktop = Grid.useBreakpoint().lg;\n\n // close modal on route change\n useEffect(() => {\n setVisibleModal(false);\n }, [location.pathname]);\n\n const popoverContent = (\n
    \n \n \n \n } />\n \n \n \n \n \n {user?.fullName || user?.username}\n \n \n \n \n
    \n \n {!wage?.pWage && !wage?.bWage\n ? t(\"plan.freeWage\")\n : t(wage?.wageType === WageTypeEnum.Percentage ? \"plan.wagePercent\" : \"plan.wageFixed\", {\n currency: t(\"toman\"),\n maximumWage: wage?.max,\n subject: wage?.pWage ? t(\"plan.payer\") : t(\"plan.receiver\"),\n wageValue: wage?.pWage || wage?.bWage,\n })}\n \n {autoWithdrawType !== AutoWithdrawTypeEnum.Disable ? (\n \n {t(\"plan.autoWithdraw\", { hour: autoWithdrawType === AutoWithdrawTypeEnum.At11 ? \"22\" : \"22:30\" })}\n \n ) : null}\n
    \n navigate(webConstants.DashboardRoutes.user.upgrade)}\n icon={ChevronsUp}\n size={\"large\"}\n >\n {t(\"plan.upgrade\")}\n \n
    \n {username ? (\n
    \n ) : (\n {\"-\"}\n )}\n {menu}\n
    \n );\n const popoverAnchor = (\n
    setVisibleModal((prev) => !prev)} className={styles.profile}>\n
    \n }\n />\n {isDesktop && (\n \n {user?.fullName || user?.username}\n \n )}\n
    \n {isDesktop && (\n <>\n \n \n \n )}\n
    \n );\n\n return isDesktop ? (\n \n {popoverAnchor}\n \n ) : (\n <>\n
    setVisibleModal(true)}>{popoverAnchor}
    \n setVisibleModal(false)}\n >\n event.stopPropagation()}\n >\n setVisibleModal(false)} width={\"24\"} />\n {popoverContent}\n
    \n \n \n );\n};\n","import { AndroidOutlined, AppleOutlined, IosOutlined, LinuxOutlined, WindowsOutlined } from \"@payping/icons\";\nimport { Tooltip } from \"@payping/web-components\";\nimport React from \"react\";\nimport { safeJoinPath } from \"@payping/utils/string\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\n\nexport const appIcons: React.ReactNode[][] = [\n [\n \n \n \n \n ,\n \n \n \n \n ,\n \n \n \n \n ,\n ],\n [\n \n \n \n \n ,\n \n \n \n \n ,\n ],\n];\n","import { webConstants } from \"@payping/utils/platformConstants\";\nimport { matchPath, useLocation } from \"react-router-dom\";\n\nexport function useSelectedTab(): string {\n const location = useLocation();\n\n const matchedRoute = Object.values(webConstants.DashboardRoutes).find((microPaths) => {\n const matchedPath = matchPath({ end: false, path: microPaths.root }, location.pathname);\n return Boolean(matchedPath);\n });\n\n const selectedPath = matchedRoute?.root || location.pathname;\n return selectedPath;\n}\n","import classNames from \"classnames\";\nimport { Badge } from \"@payping/web-components\";\nimport { FC } from \"react\";\nimport { LinkProps, Link as RRLink } from \"react-router-dom\";\n\nimport styles from \"./styles.module.scss\";\n\ninterface Props extends LinkProps {\n hasNotifyPoint?: boolean;\n}\n\nconst Link: FC = ({ hasNotifyPoint = false, children, className, ...otherProps }) => (\n \n \n {children}\n \n \n);\nexport default Link;\n","import * as Sentry from \"@sentry/react\";\nimport React, { useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Menu, OldMainNav, Typography } from \"@payping/web-components\";\nimport { User } from \"@payping/web-components/components/MainNav/types\";\nimport { safeStr } from \"@payping/utils/string\";\nimport { useAsync } from \"react-use\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\nimport {\n CloudSnow,\n HelpRing,\n HomeOutlined,\n LogoutOutlined,\n SettingOutlined,\n User as UserOutlined,\n} from \"@payping/icons\";\nimport { getUserMessages, getUserProfile, getUserWage } from \"@payping/redux/actions\";\nimport { useAppDispatch, useAppSelector } from \"@/utils/redux\";\nimport { useAppTranslation } from \"@/utils/useAppTranslation\";\nimport { referralMenuDropdownId } from \"@/assets/googleTrackIds\";\nimport { setUpdateAvailable } from \"@/redux/actions/serviceWorker\";\nimport NewVersionModal from \"./subSection/NewVersionModal\";\nimport Notifications from \"./subSection/Notifications\";\nimport Search from \"./subSection/Search\";\nimport Version from \"./subSection/Version\";\nimport styles from \"../../assets/scss/Profile.module.scss\";\nimport { UserSection } from \"./subSection/User\";\nimport { appIcons } from \"./subSection/DownloadAppIcons\";\nimport { useSelectedTab } from \"./useSelectedTab\";\nimport Link from \"./Link\";\n\nconst AppMainNav: React.FC = () => {\n const { t } = useAppTranslation();\n const dispatch = useAppDispatch();\n const selectedTab = useSelectedTab();\n const [visibleSearch, setVisibleSearch] = useState(false);\n const personalInfo = useAppSelector((state) => state.user.personalInfo);\n const isSettlement = useAppSelector((state) => state.user.isSettlement);\n const messageData = useAppSelector((state) => state.user.message);\n const hasUpdate = useAppSelector((state) => state.serviceWorker.hasUpdate);\n const isReferralActive = useAppSelector((state) => state.user.isReferralActive);\n const navigate = useNavigate();\n const { HELP_URL, DashboardRoutes } = webConstants;\n\n useAsync(() => dispatch(getUserMessages({ limit: 5, offset: 0 })), [dispatch]);\n useAsync(() => dispatch(getUserProfile()), [dispatch]);\n useAsync(() => dispatch(getUserWage()), [dispatch]);\n\n useEffect(() => {\n if (personalInfo) {\n const { email, id, username, businessName, firstName, lastName } = personalInfo;\n Sentry.configureScope((scope) => {\n scope.setUser({ email, id: id?.toString(), username });\n scope.setExtra(\"firstName\", firstName);\n scope.setExtra(\"lastName\", lastName);\n scope.setExtra(\"businessName\", businessName);\n });\n }\n }, [personalInfo]);\n\n useEffect(() => {\n navigator.serviceWorker?.ready?.then((reg) => {\n if (reg.waiting) {\n dispatch(setUpdateAvailable(true));\n }\n });\n }, [dispatch]);\n\n function closeSearch() {\n setVisibleSearch(false);\n }\n\n const tabPanesCategory1 = [\n \n \n \n \n ,\n \n {t(\"tabs.report\")}\n ,\n \n {t(\"tabs.ipg\")}\n ,\n ...(selectedTab === DashboardRoutes.platform.root\n ? [\n \n {t(\"tabs.platform\")}\n ,\n ]\n : []),\n \n {t(\"tabs.customer\")}\n ,\n \n {t(\"tabs.product\")}\n ,\n \n {t(\"tabs.invoice\")}\n ,\n \n {t(\"tabs.settings\")}\n ,\n ...(isSettlement\n ? [\n \n {t(\"tabs.settlement\")}\n ,\n ]\n : []),\n ];\n\n const tabPanes = [tabPanesCategory1];\n\n const fullName = safeStr(\n personalInfo?.businessName || `${safeStr(personalInfo?.firstName)} ${safeStr(personalInfo?.lastName)}`\n );\n const user: User = {\n fullName,\n onPress: () => navigate(DashboardRoutes.user.profile.root),\n profileImg: personalInfo?.profilePicture,\n status: personalInfo?.verifyType,\n username: `@${safeStr(personalInfo?.username)}`,\n };\n\n const menu = (\n \n \n \n {` ${t(\"profileMenu.profile\")}`}\n \n\n navigate(DashboardRoutes.user.referral)}\n >\n \n {` ${t(\"profileMenu.earnMoney\")}`}\n \n\n {/*\n TODO: add multiple themes to application\n dispatch(setTheme(theme === \"dark\" ? \"light\" : \"dark\"))}>\n {theme === \"dark\" ? (\n <>\n {` ${t(\"profileMenu.theme.light\")}`}\n \n ) : (\n <>\n {` ${t(\"profileMenu.theme.dark\")}`}\n \n )}\n \n */}\n navigate(DashboardRoutes.user.settings.root)}>\n \n {` ${t(\"profileMenu.setting\")}`}\n \n window.open(HELP_URL, \"_blank\")}>\n \n {` ${t(\"profileMenu.help\")}`}\n \n navigate(\"/logout\")}>\n \n {` ${t(\"profileMenu.exit\")}`}\n \n \n );\n\n return (\n <>\n }\n items={tabPanes}\n onItemClick={closeSearch}\n selected={selectedTab}\n version={hasUpdate ? : }\n appIcons={appIcons}\n search={{\n active: visibleSearch,\n onClick: () => setVisibleSearch((prev) => !prev),\n }}\n notifications={{\n content: index < 5)} />,\n newNotificationsCount: messageData?.list[0]?.isSeen === false ? 1 : 0,\n }}\n upgradeRoute={DashboardRoutes.user.upgrade}\n />\n \n \n );\n};\n\nexport default AppMainNav;\n","import { webConstants } from \"@payping/utils/platformConstants\";\n\nconst { requestMoney, product, ipg, invoice, customer, user } = webConstants.DashboardRoutes;\n\nexport interface FAQType {\n translationKey: string;\n url: string[];\n}\n\n/* eslint-disable sort-keys */\nexport const FAQ: FAQType[] = [\n { translationKey: \"plugins\", url: [ipg.service.root] },\n { translationKey: \"telegram\", url: [ipg.service.root] },\n { translationKey: \"kaveNegar\", url: [ipg.service.root] },\n { translationKey: \"slack\", url: [ipg.service.root] },\n { translationKey: \"mailerLite\", url: [ipg.service.root] },\n { translationKey: \"bidok\", url: [ipg.service.root] },\n { translationKey: \"wooCommerce\", url: [ipg.service.root] },\n\n { translationKey: \"customer\", url: [customer.root] },\n\n { translationKey: \"invoice\", url: [invoice.root] },\n { translationKey: \"savePayment\", url: [invoice.root] },\n { translationKey: \"moreInvoice\", url: [invoice.root] },\n { translationKey: \"invoiceCluster\", url: [invoice.root] },\n { translationKey: \"invoiceDifference\", url: [invoice.root] },\n { translationKey: \"receiveInvoice\", url: [invoice.root] },\n\n { translationKey: \"changeUsername\", url: [user.root] },\n { translationKey: \"changeEmail\", url: [user.root] },\n { translationKey: \"payPingPricing\", url: [user.root] },\n { translationKey: \"howToSettle\", url: [user.root] },\n { translationKey: \"referral1\", url: [user.referral] },\n { translationKey: \"referral2\", url: [user.referral] },\n { translationKey: \"referral3\", url: [user.referral] },\n\n { translationKey: \"whatIsItem\", url: [product.root] },\n { translationKey: \"itemCRUD\", url: [product.root] },\n { translationKey: \"itemArchive\", url: [product.root] },\n { translationKey: \"directPaymentLink\", url: [product.root] },\n { translationKey: \"callbackPage\", url: [product.root] },\n { translationKey: \"sendMessageOrEmail\", url: [product.root] },\n\n { translationKey: \"couponUsage\", url: [invoice.root, product.root] },\n { translationKey: \"couponCreate\", url: [invoice.root, product.root] },\n\n // { translationKey: \"reports\", url: [report.root] },\n // { translationKey: \"reportSettle\", url: [report.root] },\n\n { translationKey: \"requestMoney\", url: [requestMoney.root] },\n];\n/* eslint-enable sort-keys */\n","import { Close } from \"@payping/icons\";\nimport { Trans } from \"@payping/utils/localeUtils\";\nimport { webConstants } from \"@payping/utils/platformConstants\";\nimport { Button, Collapse, Typography } from \"@payping/web-components\";\nimport classNames from \"classnames\";\nimport { useLocation } from \"react-router-dom\";\nimport React, { ReactElement, useEffect, useState } from \"react\";\n\nimport styles from \"../../assets/scss/Help.module.scss\";\nimport { useAppTranslation } from \"../../utils/useAppTranslation\";\nimport { FAQ, FAQType } from \"./data\";\n\nconst Help: React.FC = () => {\n const [currHelpData, setCurrHelpData] = useState([]);\n const { t } = useAppTranslation();\n const location = useLocation();\n const donateScriptRoute = webConstants.DashboardRoutes.ipg.service.detail.replace(\":name\", \"donateScript\");\n\n useEffect(() => {\n setCurrHelpData([]);\n Object.values(FAQ).forEach((data) => {\n data.url.forEach((url) => {\n if (location.pathname.startsWith(url) && !location.pathname.includes(donateScriptRoute)) {\n setCurrHelpData((prev: any) => [...prev, data]);\n }\n });\n });\n }, [donateScriptRoute, location]);\n\n const currSection = location.pathname.split(\"/\")[1] || \"report\";\n const [visible, setVisible] = useState(false);\n\n const translationComponents: Record = {\n a: ,\n bold: ,\n link: ,\n p: ,\n span: ,\n };\n\n return currHelpData.length ? (\n
    \n
    \n
    \n {t(`help.buttonTitle.${currSection}`)}\n setVisible(false)} />\n
    \n
    \n \n {currHelpData.map((faq, index: number) => (\n \n \n \n \n \n ))}\n \n
    \n
    \n\n setVisible((prev) => !prev)}\n >\n {t(`help.buttonTitle.${currSection}`)}\n \n
    \n ) : null;\n};\n\nexport default Help;\n","/* eslint-disable no-console */\nimport React, { createContext, useCallback, useEffect, useState } from \"react\";\nimport { userApis } from \"@payping/api\";\nimport { useAsync } from \"react-use\";\nimport { dateFormats, toJalali } from \"@payping/utils/dateUtils\";\nimport { useAppSelector } from \"../redux\";\nimport { useAppTranslation } from \"../useAppTranslation\";\n\ninterface GoftinoContextType {\n openChat: () => void;\n setUser: (userInfo: GoftinoUser, callback?: (status: { status: string }) => void) => void;\n setUserId: (userId: string, callback?: (status: { status: string }) => void) => void;\n isLoaded: boolean;\n}\n\ninterface GoftinoUser {\n email?: string;\n name?: string;\n about?: string;\n phone?: string;\n avatar?: string;\n tags?: string;\n forceUpdate?: boolean;\n}\n\nconst loadGoftinoScript = (chatId: string): Promise =>\n new Promise((resolve, reject) => {\n if (window.Goftino) {\n resolve(); // If already loaded, resolve immediately\n return;\n }\n\n if (document.getElementById(\"goftino-script\")) {\n const existingScript = document.getElementById(\"goftino-script\");\n existingScript?.addEventListener(\"load\", () => resolve());\n existingScript?.addEventListener(\"error\", () => reject(new Error(\"Failed to load Goftino script.\")));\n return;\n }\n\n const script = document.createElement(\"script\");\n script.id = \"goftino-script\";\n script.async = true;\n script.src = `https://www.goftino.com/widget/${chatId}`;\n\n const localData = localStorage.getItem(`goftino_${chatId}`);\n if (localData) {\n script.src += `?o=${localData}`;\n }\n\n script.onload = () => resolve();\n script.onerror = () => reject(new Error(\"Failed to load Goftino script.\"));\n document.head.appendChild(script);\n });\n\nexport const GoftinoContext = createContext(null);\n\nexport const GoftinoProvider: React.FC<{ chatId: string; children: React.ReactNode }> = ({ chatId, children }) => {\n const [isScriptLoaded, setIsScriptLoaded] = useState(false);\n const planTypeLabel = useAppSelector((state) => state.user.panelInfo?.currentPlan?.title);\n const user = useAppSelector((state) => state.user);\n\n const { t } = useAppTranslation();\n\n useEffect(() => {\n let isMounted = true;\n\n loadGoftinoScript(chatId)\n .then(() => {\n if (isMounted) {\n setIsScriptLoaded(true);\n }\n })\n .catch((error) => {\n console.error(error);\n if (isMounted) {\n setIsScriptLoaded(false);\n }\n });\n\n return () => {\n const script = document.getElementById(\"goftino-script\");\n if (script) {\n script.remove();\n }\n isMounted = false;\n };\n }, [chatId]);\n\n const openChat = useCallback(() => {\n if (window.Goftino) {\n window.Goftino.open();\n } else {\n // eslint-disable-next-line no-console\n console.warn(\"Goftino is not yet loaded.\");\n }\n }, []);\n\n const setUser = useCallback(\n (userInfo: GoftinoUser, callback?: (status: { status: string }) => void) => {\n if (!isScriptLoaded) {\n // eslint-disable-next-line no-console\n console.warn(\"Goftino script is not yet loaded. Cannot set user.\");\n return;\n }\n\n if (window.Goftino && typeof window?.Goftino?.setUser === \"function\") {\n window.Goftino.setUser(userInfo, callback);\n } else {\n // eslint-disable-next-line no-console\n console.warn(\"Goftino.setUser is not available.\");\n }\n },\n [isScriptLoaded],\n );\n\n const setUserId = useCallback(\n (userId: string, callback?: (status: { status: string }) => void) => {\n if (!isScriptLoaded) {\n // eslint-disable-next-line no-console\n console.warn(\"Goftino script is not yet loaded. Cannot set user ID.\");\n return;\n }\n\n if (window.Goftino && typeof window?.Goftino?.setUserId === \"function\") {\n window.Goftino.setUserId(userId, callback);\n } else {\n // eslint-disable-next-line no-console\n console.warn(\"Goftino.setUserId is not available.\");\n }\n },\n [isScriptLoaded],\n );\n\n const chatDataState = useAsync(async () => userApis.crispGet(), [isScriptLoaded, setUser]);\n\n useEffect(() => {\n if (!isScriptLoaded || !user) return;\n if (user?.id !== undefined) setUserId(user?.id.toString());\n if (chatDataState.error || chatDataState.loading) {\n setUser({\n name: `${planTypeLabel} - ${user.personalInfo?.firstName ?? user?.firstName ?? \"\"} ${\n user.personalInfo?.lastName ?? user?.lastName ?? \"\"\n }`,\n avatar: user?.profilePicture ?? user.personalInfo?.profilePicture ?? undefined,\n email: user.personalInfo?.email ?? undefined,\n about:\n `${t(\"common.registerDate\")}` +\n ` : ${\n toJalali({\n date: user.registerDateTime,\n dateFormat: dateFormats.standard.utcDateTime,\n toFormat: dateFormats.ui.jalaliDateTime,\n }).string\n }\\n` +\n `${t(\"common.userId\")}` +\n ` : ${(user.id ?? user.personalInfo?.id ?? \"\")?.toString()}\\n` +\n `${t(\"common.username2\")}` +\n ` : ${(user?.username ?? user.personalInfo?.username ?? \"\")?.toString()}`,\n forceUpdate: true,\n });\n return;\n }\n\n setUser({\n name: `${planTypeLabel} - ${\n chatDataState.value?.fullName\n ? chatDataState.value.fullName\n : `${user.personalInfo?.firstName ?? user?.firstName ?? \"\"} ${\n user.personalInfo?.lastName ?? user?.lastName ?? \"\"\n }`\n }`,\n avatar:\n chatDataState.value?.profilePicture ?? user?.profilePicture ?? user.personalInfo?.profilePicture ?? undefined,\n email: chatDataState.value?.email ?? user.personalInfo?.email ?? undefined,\n about:\n `${t(\"common.registerDate\")}` +\n ` : ${\n toJalali({\n date: user.registerDateTime,\n dateFormat: dateFormats.standard.utcDateTime,\n toFormat: dateFormats.ui.jalaliDateTime,\n }).string\n }\\n` +\n `${t(\"common.userId\")}` +\n ` : ${(chatDataState.value?.userId ?? user?.id ?? user.personalInfo?.id ?? \"\")?.toString()}\\n` +\n `${t(\"common.username2\")}` +\n ` : ${(chatDataState.value?.username ?? user?.username ?? user.personalInfo?.username ?? \"\")?.toString()}`,\n\n forceUpdate: true,\n });\n }, [isScriptLoaded, chatDataState, user, setUserId, setUser, planTypeLabel, t]);\n\n return (\n \n {children}\n \n );\n};\n","import { getCurrentUserDetail } from \"@payping/redux/actions\";\nimport { Layout } from \"@payping/web-components\";\nimport classNames from \"classnames\";\nimport React, { Suspense, lazy } from \"react\";\nimport { useAsync } from \"react-use\";\n\nimport { TOTPModal } from \"@/components/TOTPModal\";\nimport { useHantanaConfig } from \"@/utils/useHantanaConfig\";\nimport { useAppDispatch, useAppSelector } from \"@/utils/redux\";\nimport DashboardTools from \"@/components/DashboardTools\";\nimport styles from \"../assets/scss/Main.module.scss\";\nimport AppMainNav from \"../components/AppMainNav\";\nimport Help from \"../components/Help\";\nimport componentLoader from \"../utils/componentLoader\";\nimport Loading from \"./loading\";\nimport { GoftinoProvider } from \"@/utils/Goftino\";\n// import { usePrefetchPages } from \"../utils/usePrefetchPages\";\n\nconst RouterSwitch = lazy(() => componentLoader(() => import(/* webpackPreload: true */ \"../router/RouterSwitch\"), 3));\n\nconst Main: React.FC = () => {\n const locale = useAppSelector((state) => state.settings.locale);\n const dispatch = useAppDispatch();\n useAsync(() => dispatch(getCurrentUserDetail()), [dispatch]);\n useHantanaConfig();\n\n\n\n return (\n \n \n \n }>\n \n \n \n \n \n \n \n );\n};\n\nexport default Main;\n"],"file":"assets/index-16a92818.js"}