{"version":3,"file":"static/js/237.98d239b0.chunk.js","mappings":"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","sources":["layout/MainLayout/index.style.ts","assets/svg/ShopifyIcon.tsx","layout/MainLayout/LogoSection/LogoSection.ts","layout/MainLayout/LogoSection/index.tsx","layout/MainLayout/Header/HeaderStyle.ts","layout/MainLayout/Header/index.tsx","layout/MainLayout/Sidebar/SidebarStyle.ts","layout/MainLayout/Sidebar/MenuList/NavItem/NavItemStyle.ts","layout/MainLayout/Sidebar/MenuList/NavItem/index.tsx","layout/MainLayout/Sidebar/MenuList/NavGroup/NavGroupStyle.ts","layout/MainLayout/Sidebar/MenuList/NavGroup/index.tsx","layout/MainLayout/Sidebar/MenuList/index.tsx","layout/MainLayout/Sidebar/FeedBack/Feedback.ts","layout/MainLayout/Sidebar/FeedBack/index.tsx","layout/MainLayout/Sidebar/index.tsx","layout/MainLayout/index.tsx","routes/MainRoutes.tsx","routes/TikTokRoutes.tsx","routes/InstagramRoutes.tsx","views/Admin/FacebookLogin/index.tsx","views/NotFound/NotFound.ts","views/NotFound/index.tsx","routes/OtherRoutes.tsx","routes/index.tsx","layout/MainLayout/NavigationScroll.tsx","Dependencies/ApplicationProvider/index.tsx","common/functions/InspectPlugin.ts","views/Admin/Pricing/PricingBannerPlan.tsx","App.tsx","Dependencies/DataTables/DataTableModel.ts","Dependencies/Devices/breakpoint.ts","Dependencies/Toast/index.ts","assets/images/ImageStorage.ts","common/constants/EventIdOrder.ts","common/constants/FacebookAccountType.ts","common/constants/RootURL.ts","common/functions/AxiosMethod.ts","common/functions/ChatPlugin.ts","common/functions/FuncUtils.ts","common/functions/ODataQuery.ts","common/style/UtilStyles.ts","config.ts","hooks/index.ts","menu-items/MenuModel.ts","menu-items/apps.ts","menu-items/button.ts","menu-items/dashboard.ts","menu-items/instagram.ts","assets/svg/ReelVideo.tsx","menu-items/pricing.ts","menu-items/tiktok.ts","menu-items/index.ts","repositories/dtos/responses/BaseResponse.ts","repositories/implements/FacebookDeveloperAPI.ts","repositories/implements/InstagramWidgetAPI.ts","repositories/implements/ShopAPI.ts","repositories/services/EventTracingProvider.ts","stores/Admin/Application/action.ts","stores/Admin/ButtonWidget/action.ts","stores/Admin/InstagramWidget/action.ts","stores/Admin/Shop/action.ts","stores/Admin/TiktokWidget/action.ts","views/Admin/Pricing/PricingStyled.ts"],"sourcesContent":["import breakpoints from \"Dependencies/Devices/breakpoint\";\r\nimport styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const MainContent = styled(\"div\")`\r\n width: 100%;\r\n height: 100%;\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n padding-top: 60px;\r\n align-items: stretch;\r\n position: relative;\r\n`;\r\n\r\nexport const ChildrenContent = styled(\"div\")`\r\n width: 100%;\r\n padding-left: 239px;\r\n`;\r\n\r\nexport const MainLayoutWrapper = styled(\"div\")`\r\n width: 100%;\r\n height: 100%;\r\n @media only screen and (${breakpoints.device.lg}) {\r\n ${ChildrenContent} {\r\n width: 100%;\r\n height: 100%;\r\n padding: 0px;\r\n }\r\n }\r\n`;\r\n","import React from \"react\";\r\n\r\nfunction ShopifyLogo(){\r\n return (\r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default ShopifyLogo;","import styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const LogoSectionContext = styled(\"div\")`\r\n display: block;\r\n align-items: center;\r\n @media (max-width: 768px) {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n }\r\n`;\r\n\r\nexport const LogoWrapper = styled(\"a\")`\r\n width: auto;\r\n align-items: center;\r\n display: flex;\r\n flex-wrap: wrap;\r\n flex-direction: row;\r\n line-break: none;\r\n text-decoration: none;\r\n`;\r\n\r\nexport const BackToShop = styled(\"span\")`\r\n width: auto;\r\n font-weight: 600;\r\n font-size: 14px;\r\n margin-left: 10px;\r\n line-height: 20px;\r\n color: #202223;\r\n @media (max-width: 768px) {\r\n display: none;\r\n }\r\n`;\r\n\r\nexport const MobileViewMenu = styled(\"div\")`\r\n display: none;\r\n margin-right: 10px;\r\n @media (max-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n","import { Icon } from \"@shopify/polaris\";\r\nimport {\r\n MobileCancelMajor,\r\n MobileHamburgerMajor\r\n} from \"@shopify/polaris-icons\";\r\nimport ShopifyLogo from \"assets/svg/ShopifyIcon\";\r\nimport React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApplicationActionTS } from \"stores/Admin/Application/action\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\nimport {\r\n BackToShop,\r\n LogoWrapper,\r\n LogoSectionContext,\r\n MobileViewMenu\r\n} from \"./LogoSection\";\r\n\r\nconst LogoSection = React.memo(function LogoSection() {\r\n const dispatch = useDispatch();\r\n const appReducer = useSelector((state: RootReducer) => state.AppReducer);\r\n const shopReducer = useSelector((state: RootReducer) => state.ShopReducer);\r\n const onMobileView = () => {\r\n dispatch(\r\n ApplicationActionTS.OnHandleMenuItemMobile(!appReducer.mobileMenuView)\r\n );\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Back to Shopify\r\n \r\n \r\n );\r\n});\r\n\r\nexport default LogoSection;\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const HeaderWrapper = styled(\"div\")`\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n height: 60px;\r\n justify-content: space-between;\r\n align-items: center;\r\n display: flex;\r\n flex-wrap: wrap;\r\n padding: 7px 14px;\r\n z-index: 10;\r\n background: #ffffff;\r\n box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.05), 0px 0px 1px rgba(0, 0, 0, 0.25);\r\n`;\r\n\r\nexport const FlagStyle = styled(\"div\")`\r\n background: rgba(69, 241, 237, 0.19);\r\n border-radius: 50%;\r\n width: 24px;\r\n height: 24px;\r\n padding: 3px;\r\n margin-right: 6px;\r\n`;\r\n\r\nexport const FlagText = styled(\"div\")`\r\n font-weight: 600;\r\n font-size: 14px;\r\n line-height: 20px;\r\n color: #202223;\r\n`;\r\n\r\nexport const HeaderRight = styled(\"div\")`\r\n display: flex;\r\n flex-wrap: wrap;\r\n width: max-content;\r\n`;\r\n\r\nexport const Account = styled(\"div\")`\r\n display: flex;\r\n flex-wrap: wrap;\r\n align-items: center;\r\n margin-left: 27px;\r\n`;\r\n\r\nexport const AccountName = styled(\"div\")`\r\n font-family: \"SF Pro Display\";\r\n font-style: normal;\r\n font-weight: 600;\r\n font-size: 14px;\r\n line-height: 20px;\r\n color: #202223;\r\n margin-left: 8px;\r\n @media (max-width: 768px) {\r\n display: none;\r\n }\r\n`;\r\n","import { Icon } from \"@shopify/polaris\";\r\nimport { FlagMajor } from \"@shopify/polaris-icons\";\r\nimport { FlexBox } from \"common/style/UtilStyles\";\r\nimport React from \"react\";\r\nimport LogoSection from \"../LogoSection\";\r\nimport {\r\n Account,\r\n AccountName,\r\n FlagStyle,\r\n FlagText,\r\n HeaderWrapper\r\n} from \"./HeaderStyle\";\r\nimport Avatar from \"react-avatar\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nfunction Header() {\r\n const widgetReducer = useSelector(\r\n (state: RootReducer) => state.TiktokWidgetReducer\r\n );\r\n\r\n const instagramWidgetReducer = useSelector(\r\n (state: RootReducer) => state.InstagramWidgetReducer\r\n );\r\n\r\n const buttonWidgetReducer = useSelector(\r\n (state: RootReducer) => state.ButtonWidgetReducer\r\n );\r\n const shopReducer = useSelector((state: RootReducer) => state.ShopReducer);\r\n\r\n const showGettingStart = () => {\r\n if (window.location.pathname.includes(\"create-widget\")) {\r\n if (\r\n widgetReducer.status === \"FirstCreated\" ||\r\n widgetReducer.count === 0\r\n ) {\r\n return widgetReducer.step > 0 ? widgetReducer.step : 0;\r\n }\r\n } else if (window.location.pathname.includes(\"instagram-step\")) {\r\n if (\r\n instagramWidgetReducer.status === \"FirstCreated\" ||\r\n instagramWidgetReducer.count === 0\r\n ) {\r\n return instagramWidgetReducer.step > 0\r\n ? instagramWidgetReducer.step\r\n : 0;\r\n }\r\n }\r\n return undefined;\r\n };\r\n return (\r\n \r\n \r\n \r\n {showGettingStart() ? (\r\n \r\n \r\n \r\n \r\n Getting Started: {showGettingStart()}/2\r\n \r\n ) : buttonWidgetReducer.step && !buttonWidgetReducer.id ? (\r\n \r\n \r\n \r\n \r\n Setup guide: {buttonWidgetReducer.step}/2\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nconst AvatarDisplay = React.memo(({ name }: any) => {\r\n return (\r\n \r\n \r\n {name}\r\n \r\n );\r\n});\r\nexport default React.memo(Header);\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport interface ISidebarWrapper {\r\n active: boolean;\r\n}\r\n\r\nexport const SupportLink = styled(\"div\")`\r\n position: absolute;\r\n bottom: 80px;\r\n right: 0;\r\n width: 100%;\r\n div.orichi-tiktok-chat-plugin {\r\n width: max-content;\r\n margin: auto;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n .Polaris-Icon {\r\n margin: 0;\r\n margin-right: 5px;\r\n }\r\n span {\r\n color: #202223;\r\n font-weight: 500;\r\n font-size: 14px;\r\n }\r\n }\r\n`;\r\n\r\nexport const SidebarWrapper = styled(\"div\")`\r\n width: 239px;\r\n height: 100%;\r\n position: fixed;\r\n display: block;\r\n flex-direction: column;\r\n background: #ffffff;\r\n padding-top: 45px;\r\n box-shadow: inset -1px 0px 0px #e4e5e7;\r\n .active-menu {\r\n background: #edeeef;\r\n color: rgba(255, 11, 83, 1) !important;\r\n }\r\n .active-menu h2 {\r\n color: rgba(255, 11, 83, 1) !important;\r\n }\r\n .active-menu svg {\r\n fill: rgba(255, 11, 83, 1) !important;\r\n }\r\n .active-menu::before {\r\n content: \"\";\r\n position: absolute;\r\n top: 0.0625rem;\r\n bottom: 0.0625rem;\r\n left: 0;\r\n width: 0.1875rem;\r\n background-color: red;\r\n border-top-right-radius: red;\r\n border-bottom-right-radius: red;\r\n }\r\n @media (max-width: 768px) {\r\n ${SupportLink} {\r\n bottom: 16px;\r\n }\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n z-index: 2;\r\n padding-top: 75px;\r\n transition: transform 0.5s ease-out;\r\n transform: translateX(${(props) => (props.active ? 0 : -300)}px);\r\n }\r\n`;\r\n\r\nexport const FeedbackBox = styled(\"div\")`\r\n margin: 0 8px 20px 8px;\r\n padding: 20px;\r\n background-color: #fdf5f2;\r\n box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.05), 0px 0px 1px rgba(0, 0, 0, 0.25);\r\n border-radius: 8px;\r\n font-family: \"SF Pro Display\";\r\n .text {\r\n font-weight: 600;\r\n font-size: 16px;\r\n line-height: 20px;\r\n color: #101828;\r\n word-break: break-all;\r\n }\r\n .reaction {\r\n display: flex;\r\n justify-content: space-around;\r\n margin-top: 20px;\r\n\r\n &-btn {\r\n border: none;\r\n outline: none;\r\n background: transparent;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n cursor: pointer;\r\n\r\n img {\r\n width: 50px;\r\n height: 50px;\r\n object-fit: cover;\r\n }\r\n }\r\n }\r\n`;\r\n","import { IPropListItemButton } from \"./NavItem\";\r\nimport { Link } from \"react-router-dom\";\r\nimport styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const ListItemTagHref = styled(\"a\")`\r\n width: 100%;\r\n display: flex;\r\n cursor: pointer;\r\n flex-direction: row;\r\n align-items: center;\r\n text-align: center;\r\n text-decoration: none;\r\n color: #000;\r\n padding-top: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-bottom: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-left: 24px;\r\n position: relative;\r\n &:hover {\r\n background: #edeeef;\r\n color: rgba(255, 11, 83, 1) !important;\r\n border-radius: 4px;\r\n svg,\r\n path {\r\n fill: rgba(255, 11, 83, 1);\r\n }\r\n &:before {\r\n content: \"\";\r\n position: absolute;\r\n top: 0.0625rem;\r\n bottom: 0.0625rem;\r\n left: 0;\r\n width: 0.1875rem;\r\n background-color: red;\r\n border-top-right-radius: red;\r\n border-bottom-right-radius: red;\r\n }\r\n }\r\n .lock {\r\n position: absolute;\r\n right: 10px;\r\n svg,\r\n path {\r\n fill: #6d7175;\r\n }\r\n }\r\n`;\r\n\r\nexport const ListItemButton = styled(Link)`\r\n width: 100%;\r\n display: flex;\r\n cursor: pointer;\r\n flex-direction: row;\r\n align-items: center;\r\n text-align: center;\r\n text-decoration: none;\r\n color: #000;\r\n padding-top: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-bottom: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-left: 24px;\r\n position: relative;\r\n\r\n .lock {\r\n position: absolute;\r\n right: 10px;\r\n svg,\r\n path {\r\n fill: #6d7175;\r\n }\r\n }\r\n &:hover {\r\n background: #edeeef;\r\n h2 {\r\n color: rgba(255, 11, 83, 1) !important;\r\n }\r\n border-radius: 4px;\r\n svg,\r\n path {\r\n fill: rgba(255, 11, 83, 1);\r\n }\r\n &:before {\r\n content: \"\";\r\n position: absolute;\r\n top: 0.0625rem;\r\n bottom: 0.0625rem;\r\n left: 0;\r\n width: 0.1875rem;\r\n background-color: red;\r\n border-top-right-radius: red;\r\n border-bottom-right-radius: red;\r\n }\r\n }\r\n`;\r\n\r\nexport const LinkLock = styled(\"a\")`\r\n width: 100%;\r\n display: flex;\r\n cursor: pointer;\r\n flex-direction: row;\r\n align-items: center;\r\n text-align: center;\r\n text-decoration: none;\r\n color: #000;\r\n padding-top: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-bottom: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-left: 24px;\r\n position: relative;\r\n\r\n .lock {\r\n position: absolute;\r\n right: 10px;\r\n svg,\r\n path {\r\n fill: #6d7175;\r\n }\r\n }\r\n &:hover {\r\n background: #edeeef;\r\n h2 {\r\n color: rgba(255, 11, 83, 1) !important;\r\n }\r\n border-radius: 4px;\r\n svg,\r\n path {\r\n fill: rgba(255, 11, 83, 1);\r\n }\r\n &:before {\r\n content: \"\";\r\n position: absolute;\r\n top: 0.0625rem;\r\n bottom: 0.0625rem;\r\n left: 0;\r\n width: 0.1875rem;\r\n background-color: red;\r\n border-top-right-radius: red;\r\n border-bottom-right-radius: red;\r\n }\r\n }\r\n`;\r\n\r\nexport const ListItemButtonMenu = styled(\"div\")`\r\n width: 100%;\r\n display: flex;\r\n cursor: pointer;\r\n flex-direction: row;\r\n align-items: center;\r\n text-align: center;\r\n text-decoration: none;\r\n color: #000;\r\n padding-top: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-bottom: ${(props) => (props?.level && props?.level > 1 ? 6 : 6.25)}px;\r\n padding-left: 24px;\r\n position: relative;\r\n &:hover {\r\n background: #edeeef;\r\n color: rgba(255, 11, 83, 1);\r\n svg {\r\n fill: rgba(255, 11, 83, 1);\r\n }\r\n &:before {\r\n content: \"\";\r\n position: absolute;\r\n top: 0.0625rem;\r\n bottom: 0.0625rem;\r\n left: 0;\r\n width: 0.1875rem;\r\n background-color: red;\r\n border-top-right-radius: red;\r\n border-bottom-right-radius: red;\r\n }\r\n }\r\n`;\r\n\r\nexport const BorderLineLeft = styled(\"div\")`\r\n background: #ff0b53;\r\n width: 3px;\r\n border-radius: 0px 4px 4px 0px;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n`;\r\n\r\nexport const ListItemIcon = styled(\"div\")`\r\n width: 20px;\r\n height: 20px;\r\n margin-right: 18px;\r\n`;\r\n\r\nexport const Chip = styled(\"div\")`\r\n border-radius: 50%;\r\n font-weight: 500;\r\n font-size: 12px;\r\n line-height: 16px;\r\n color: #202223;\r\n background: rgba(228, 229, 231, 1);\r\n position: absolute;\r\n top: 10px;\r\n right: 10px;\r\n padding: 1px 6px;\r\n`;\r\n\r\nexport const ListItemWrapper = styled(\"div\")`\r\n padding: 0px 5px;\r\n\r\n h2 {\r\n color: ${(props) =>\r\n props?.level && props?.level > 1 ? \"#6D7175\" : \"#000\"};\r\n font-family: \"Inter\";\r\n font-size: 14px;\r\n font-weight: ${(props) => (props?.level && props?.level > 1 ? 500 : 600)};\r\n }\r\n`;\r\n","import { INavItemProps } from \"./NavItem\";\r\nimport {\r\n Chip,\r\n LinkLock,\r\n ListItemButton,\r\n ListItemButtonMenu,\r\n ListItemIcon,\r\n ListItemTagHref,\r\n ListItemWrapper\r\n} from \"./NavItemStyle\";\r\nimport React from \"react\";\r\nimport { Icon } from \"@shopify/polaris\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApplicationActionTS } from \"stores/Admin/Application/action\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\nimport { UriProvider } from \"common/functions/FuncUtils\";\r\nimport { LockMinor } from \"@shopify/polaris-icons\";\r\n\r\nfunction NavItem(props: INavItemProps) {\r\n const nameReducer = props.chip && props.chip.nameReducer;\r\n const TikTokWidgetReducer = useSelector(\r\n (state: RootReducer) => state.TiktokWidgetReducer\r\n );\r\n const InstagramWidgetReducer = useSelector(\r\n (state: RootReducer) => state.InstagramWidgetReducer\r\n );\r\n\r\n const RenderCount = () => {\r\n switch (nameReducer) {\r\n case \"InstagramWidgetReducer\":\r\n return InstagramWidgetReducer.count;\r\n case \"TiktokWidgetReducer\":\r\n return TikTokWidgetReducer.count;\r\n default:\r\n return 0;\r\n }\r\n };\r\n const item = () => {\r\n return (\r\n <>\r\n {\r\n \r\n {props?.icon && }\r\n \r\n }\r\n

{props.title}

\r\n {props?.chip && {RenderCount()}}\r\n {props.url === \"\" && (\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n };\r\n\r\n const dispatch = useDispatch();\r\n const shopReducer = useSelector((state: RootReducer) => state.ShopReducer);\r\n const appReducer = useSelector((state: RootReducer) => state.AppReducer);\r\n\r\n const onHandleMenuItem =\r\n (key?: string, active: boolean = false) =>\r\n () => {\r\n key && dispatch(ApplicationActionTS.OnHandleMenuItem(key, active));\r\n if (props.onAfterClickMenu) props.onAfterClickMenu(shopReducer.shop);\r\n };\r\n\r\n const activeMenu =\r\n props.level === 1\r\n ? window.location.pathname === props.url\r\n : window.location.pathname.includes(props.id) ||\r\n appReducer.menuActive.includes(props.id);\r\n\r\n return (\r\n \r\n {!props?.selected ? (\r\n props.url ? (\r\n props?.redirect ? (\r\n \r\n props.onAfterClickMenu &&\r\n props.onAfterClickMenu(shopReducer.shop)\r\n }\r\n >\r\n {item()}\r\n \r\n ) : (\r\n \r\n {item()}\r\n \r\n )\r\n ) : (\r\n \r\n props.onAfterClickMenu && props.onAfterClickMenu(shopReducer.shop)\r\n }\r\n >\r\n {item()}\r\n \r\n )\r\n ) : (\r\n \r\n {item()}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default NavItem;\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const NavGroupWrapper = styled(\"div\")`\r\n width: auto;\r\n`;\r\n\r\nexport const NavGroupText = styled(\"div\")`\r\n font-weight: 600;\r\n font-size: 12px;\r\n line-height: 16px;\r\n text-transform: uppercase;\r\n color: #6d7175;\r\n padding-left: 24px;\r\n margin: 52px 0px 16px 0px;\r\n`;\r\n\r\nexport const NavGroupMenuItem = styled(\"div\")`\r\n width: auto;\r\n h2 {\r\n color: #6d7175;\r\n font-size: 14px;\r\n line-height: 20px;\r\n }\r\n`;\r\n","import { Text } from \"@shopify/polaris\";\r\nimport {\r\n IMenuChildrents,\r\n IMenuItems,\r\n MenuItemType\r\n} from \"menu-items/MenuModel\";\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\nimport NavItem from \"../NavItem\";\r\n\r\nimport {\r\n NavGroupMenuItem,\r\n NavGroupText,\r\n NavGroupWrapper\r\n} from \"./NavGroupStyle\";\r\n\r\ninterface INavGroupProps {\r\n item: IMenuItems;\r\n index: number;\r\n}\r\n\r\nfunction NavGroup(props: INavGroupProps) {\r\n const appReducer = useSelector((state: RootReducer) => state.AppReducer);\r\n const items = props.item?.children?.map((menu: IMenuChildrents) => {\r\n switch (menu.type) {\r\n case MenuItemType.Item:\r\n return (\r\n \r\n );\r\n\r\n case MenuItemType.Group:\r\n return (\r\n \r\n );\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n\r\n const enableMenuItems = appReducer.menuItems.some(\r\n (x) => x === props.item?.id\r\n );\r\n return (\r\n \r\n {props.item?.label && props.index > 0 && (\r\n {props.item.label}\r\n )}\r\n \r\n {props.item?.children &&\r\n (enableMenuItems ||\r\n props.item.children.some((x) =>\r\n window.location.pathname.includes(x.id)\r\n )) && {items}}\r\n \r\n );\r\n}\r\n\r\nexport default React.memo(NavGroup);\r\n","import NavGroup from \"./NavGroup\";\r\nimport React from \"react\";\r\nimport { Text } from \"@shopify/polaris\";\r\nimport MenuManagement from \"menu-items\";\r\nimport { MenuItemType } from \"menu-items/MenuModel\";\r\nconst MenuList = () => {\r\n const menuManager = new MenuManagement();\r\n const navItems = menuManager.items.map((item, index) => {\r\n switch (item.type) {\r\n case MenuItemType.Group:\r\n return ;\r\n\r\n case MenuItemType.Item:\r\n return ;\r\n\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n\r\n return <>{navItems};\r\n};\r\n\r\nexport default MenuList;\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const FeedbackWrapper = styled(\"div\")`\r\n width: auto;\r\n .text-confirm {\r\n width: 100%;\r\n text-align: center;\r\n font-size: 20px;\r\n font-family: \"SF Pro Display\";\r\n line-height: 25px;\r\n color: #202223;\r\n font-weight: 400;\r\n padding: 70px 20px 55px 20px;\r\n }\r\n`;\r\n\r\nexport const DivImageThank = styled(\"div\")`\r\n position: absolute;\r\n top: -52%;\r\n left: 50%;\r\n transform: translate(-52%, 50%);\r\n z-index: 520;\r\n img {\r\n width: 100%;\r\n display: block;\r\n }\r\n`;\r\n","import React, { useState } from \"react\";\r\nimport { FeedbackBox } from \"../SidebarStyle\";\r\nimport GoodIcon from \"assets/images/Buttons/good-icon.png\";\r\nimport SadIcon from \"assets/images/Buttons/sad-icon.png\";\r\nimport { TextField, Modal, TextContainer } from \"@shopify/polaris\";\r\nimport InstagramWidgetAPI from \"repositories/implements/InstagramWidgetAPI\";\r\nimport {\r\n FeedbackStatus,\r\n ShopDescriptor,\r\n} from \"repositories/dtos/responses/ShopResponse\";\r\nimport { toastNotify } from \"Dependencies/Toast\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ShopActionTS } from \"stores/Admin/Shop/action\";\r\nimport { DivImageThank, FeedbackWrapper } from \"./Feedback\";\r\nimport { ImageStorage } from \"assets/images/ImageStorage\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\nimport config from \"config\";\r\n\r\nconst FeedBack = () => {\r\n const [error, setError] = useState(\"\");\r\n const [active, setActive] = React.useState(false);\r\n const [feedbackText, setFieldText] = React.useState(\"\");\r\n\r\n const [status, setStatus] = useState<\"Loading\" | \"Complete\" | undefined>(\r\n undefined\r\n );\r\n const onChangeFieldText = (val: string) => {\r\n if (!val) {\r\n setError(\"Feedback comment is required.\");\r\n } else {\r\n setError(\"\");\r\n }\r\n setFieldText(val);\r\n };\r\n const dispatch = useDispatch();\r\n const handleChange = React.useCallback(() => {\r\n setActive(!active);\r\n setError(\"\");\r\n }, [active]);\r\n\r\n const shopReducer = useSelector((state: RootReducer) => state.ShopReducer);\r\n\r\n const handleOnClickGood = () => {\r\n if (shopReducer?.shop?.domain) {\r\n return toastNotify\r\n .promise(\r\n InstagramWidgetAPI.PostFeedback(shopReducer.shop.domain, {\r\n Status: FeedbackStatus.Good,\r\n }),\r\n {\r\n loading: \"Feeding back for us!\",\r\n success: (data: any) => \"Feedback success\",\r\n }\r\n )\r\n .then((res) => {\r\n if (res.Status) {\r\n dispatch(ShopActionTS.OnSetDescriptor(res.Data as ShopDescriptor));\r\n window.open(config.urlInstallTikTok);\r\n }\r\n });\r\n }\r\n return;\r\n };\r\n\r\n const handleSubmitBad = () => {\r\n if (status === \"Complete\") return setActive(false);\r\n setStatus(\"Loading\");\r\n if (!feedbackText) {\r\n setError(\"Feedback comment is required.\");\r\n return setStatus(undefined);\r\n }\r\n if (shopReducer?.shop?.domain) {\r\n InstagramWidgetAPI.PostFeedback(shopReducer.shop.domain, {\r\n Status: FeedbackStatus.Bad,\r\n Feedback: feedbackText,\r\n }).then((res) => {\r\n if (res.Status) {\r\n setStatus(\"Complete\");\r\n dispatch(ShopActionTS.OnSetDescriptor(res.Data as ShopDescriptor));\r\n }\r\n });\r\n }\r\n };\r\n const handleOnClickBad = () => setActive(true);\r\n\r\n return (\r\n <>\r\n {(shopReducer?.shop?.shopDescriptor?.feedbackStatus === null ||\r\n !shopReducer?.shop?.shopDescriptor) && (\r\n \r\n

\r\n How's your experience with us? Your feedback means the world to us!\r\n

\r\n
\r\n \r\n \r\n
\r\n
\r\n )}\r\n \r\n \r\n \r\n {status === \"Complete\" ? (\r\n <>\r\n \r\n \r\n \r\n\r\n

\r\n Your feedback is very important to us.\r\n
\r\n Our team will look at yours\r\n

\r\n \r\n ) : (\r\n \r\n

\r\n We'll make sure that our team take every feedback into\r\n consideration to provide you a better app everytime you visit!\r\n

\r\n \r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport default FeedBack;\r\n","import { SidebarWrapper, SupportLink } from \"./SidebarStyle\";\r\nimport React from \"react\";\r\nimport { BrowserView, MobileView } from \"react-device-detect\";\r\nimport PerfectScrollbar from \"react-perfect-scrollbar\";\r\nimport MenuList from \"./MenuList\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\nimport { ChatMajor } from \"@shopify/polaris-icons\";\r\nimport { Icon } from \"@shopify/polaris\";\r\nimport { ChatPlugin } from \"common/functions/ChatPlugin\";\r\nimport FeedBack from \"./FeedBack\";\r\n\r\nfunction Sidebar() {\r\n const appReducer = useSelector((state: RootReducer) => state.AppReducer);\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n Live Chat Support\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default Sidebar;\r\n","import { Outlet } from \"react-router-dom\";\r\nimport React from \"react\";\r\nimport { ChildrenContent, MainContent, MainLayoutWrapper } from \"./index.style\";\r\nimport Header from \"./Header\";\r\nimport Sidebar from \"./Sidebar\";\r\n\r\nconst MainLayout: React.FC = (): JSX.Element => {\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default MainLayout;\r\n","import { UriProvider } from \"common/functions/FuncUtils\";\r\nimport { useQuery } from \"hooks\";\r\nimport MainLayout from \"layout/MainLayout\";\r\nimport React, { lazy } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { Navigate } from \"react-router-dom\";\r\nimport { ApplicationActionTS } from \"stores/Admin/Application/action\";\r\nimport Loadable from \"ui-components/Loading/Loadable\";\r\n\r\nconst Dashboard = Loadable(lazy(() => import(\"views/Admin/Dashboard\")));\r\n//Pricing\r\nconst Pricing = Loadable(lazy(() => import(\"views/Admin/Pricing\")));\r\n//Setup Button widget\r\nconst ButtonWidget = Loadable(lazy(() => import(\"views/Admin/ButtonWidget\")));\r\n//Apps Support Integrations\r\nconst AppIntegrationWrapper = Loadable(\r\n lazy(() => import(\"views/Admin/AppIntegrations\"))\r\n);\r\n//OnBoarding\r\nconst OnBoarding = Loadable(\r\n lazy(() => import(\"views/Admin/Components/OnBoarding\"))\r\n);\r\nconst MainRoutes = () => {\r\n const dispatch = useDispatch();\r\n const shop = useQuery().get(\"shop\");\r\n dispatch(ApplicationActionTS.OnHandleMenuItem(\"dashboard\", true));\r\n return {\r\n path: \"/\",\r\n element: shop ? (\r\n \r\n ) : (\r\n \r\n ),\r\n children: [\r\n {\r\n path: \"/\",\r\n element: ,\r\n },\r\n {\r\n path: \"/button-widget\",\r\n element: ,\r\n },\r\n {\r\n path: \"/apps\",\r\n element: ,\r\n },\r\n {\r\n path: \"/onboarding/:widget\",\r\n element: ,\r\n },\r\n {\r\n path: \"*\",\r\n element: ,\r\n },\r\n ],\r\n };\r\n};\r\n\r\nexport const OnboardingRoute = (isOnboarding: boolean = false) => {\r\n return {\r\n path: \"/\",\r\n element: isOnboarding ? (\r\n \r\n ) : (\r\n \r\n ),\r\n children: [\r\n {\r\n path: \"/onboarding/:widget\",\r\n element: ,\r\n },\r\n ],\r\n };\r\n};\r\n\r\nexport const PricingRoute = () => {\r\n const dispatch = useDispatch();\r\n const shop = useQuery().get(\"shop\");\r\n dispatch(ApplicationActionTS.OnHandleMenuItem(\"pricing\", true));\r\n return {\r\n path: \"/\",\r\n element: shop ? (\r\n \r\n ) : (\r\n \r\n ),\r\n children: [\r\n {\r\n path: \"/pricing\",\r\n element: ,\r\n },\r\n ],\r\n };\r\n};\r\nexport default MainRoutes;\r\n","import { UriProvider } from \"common/functions/FuncUtils\";\r\nimport { useQuery } from \"hooks\";\r\nimport MainLayout from \"layout/MainLayout\";\r\nimport React, { lazy, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { Navigate } from \"react-router-dom\";\r\nimport { ApplicationActionTS } from \"stores/Admin/Application/action\";\r\nimport { WidgetActionTS } from \"stores/Admin/TiktokWidget/action\";\r\nimport Loadable from \"ui-components/Loading/Loadable\";\r\n\r\n//Create Widget\r\nconst CreateWidget = Loadable(\r\n lazy(() => import(\"views/Admin/TikTokWidgets/Create\"))\r\n);\r\n\r\nconst WidgetConfigStep = Loadable(\r\n lazy(() => import(\"views/Admin/TikTokWidgets/Create/WidgetConfigStep\"))\r\n);\r\nconst WidgetGuidesStep = Loadable(\r\n lazy(() => import(\"views/Admin/TikTokWidgets/Create/WidgetGuidesStep\"))\r\n);\r\n//Manager widgets\r\nconst MyWidget = Loadable(\r\n lazy(() => import(\"views/Admin/TikTokWidgets/MyWidget\"))\r\n);\r\n\r\nexport const CreateTikTokRoutes = (isOnboarding: boolean = false) => {\r\n const shop = useQuery().get(\"shop\");\r\n return {\r\n path: \"/\",\r\n element: shop ? (\r\n !isOnboarding ? (\r\n \r\n ) : (\r\n \r\n )\r\n ) : (\r\n \r\n ),\r\n children: [\r\n {\r\n path: \"/create-widget\",\r\n element: ,\r\n },\r\n {\r\n path: \"/create-widget-step-1\",\r\n element: ,\r\n },\r\n {\r\n path: \"/create-widget-step-1/:widgetId\",\r\n element: ,\r\n },\r\n {\r\n path: \"/create-widget-step-2/:widgetId\",\r\n element: ,\r\n },\r\n ],\r\n };\r\n};\r\n\r\nexport const MyTikTokRoutes = (isOnboarding = false) => {\r\n const dispatch = useDispatch();\r\n useEffect(() => {\r\n if (window.location.pathname.includes(\"/my-widget\")) {\r\n Promise.all([\r\n dispatch(ApplicationActionTS.OnHandleMenuItem(\"my-widget\", true)),\r\n dispatch(WidgetActionTS.OnStep(0)),\r\n ]);\r\n }\r\n }, []);\r\n\r\n return {\r\n path: \"/\",\r\n element: ,\r\n children: [\r\n {\r\n path: \"/my-widget\",\r\n element: ,\r\n },\r\n ],\r\n };\r\n};\r\n","import { UriProvider } from \"common/functions/FuncUtils\";\r\nimport { useQuery } from \"hooks\";\r\nimport MainLayout from \"layout/MainLayout\";\r\nimport React, { lazy, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { Navigate } from \"react-router-dom\";\r\nimport { ApplicationActionTS } from \"stores/Admin/Application/action\";\r\nimport { InstagramWidgetActionTS } from \"stores/Admin/InstagramWidget/action\";\r\nimport Loadable from \"ui-components/Loading/Loadable\";\r\n\r\n//Create Widget\r\nconst WidgetConfigStep = Loadable(\r\n lazy(() => import(\"views/Admin/InstagramWidgets/Create/WidgetConfigStep\"))\r\n);\r\n\r\nconst WidgetGuidesStep = Loadable(\r\n lazy(() => import(\"views/Admin/InstagramWidgets/Create/WidgetGuidesStep\"))\r\n);\r\n\r\n//Manager widgets\r\nconst MyWidget = Loadable(\r\n lazy(() => import(\"views/Admin/InstagramWidgets/MyWidgets\"))\r\n);\r\n\r\nexport const InstagramRoutes = (isOnboarding: boolean = false) => {\r\n const shop = useQuery().get(\"shop\");\r\n return {\r\n path: \"/\",\r\n element: shop ? (\r\n !isOnboarding ? (\r\n \r\n ) : (\r\n \r\n )\r\n ) : (\r\n \r\n ),\r\n children: [\r\n {\r\n path: \"/instagram-step-1\",\r\n element: \r\n },\r\n {\r\n path: \"/instagram-step-1/:widgetId\",\r\n element: \r\n },\r\n {\r\n path: \"/instagram-step-2\",\r\n element: \r\n },\r\n {\r\n path: \"/my-instagram-widget\",\r\n element: \r\n }\r\n ]\r\n };\r\n};\r\n\r\nexport const MyInstagramRoutes = (count: number = 0) => {\r\n const dispatch = useDispatch();\r\n useEffect(() => {\r\n if (window.location.pathname.includes(\"/my-instagram-widget\")) {\r\n Promise.all([\r\n dispatch(\r\n ApplicationActionTS.OnHandleMenuItem(\"my-instagram-widget\", true)\r\n ),\r\n dispatch(InstagramWidgetActionTS.OnStep(0))\r\n ]);\r\n }\r\n }, []);\r\n\r\n return {\r\n path: \"/\",\r\n element: ,\r\n children: [\r\n {\r\n path: \"/my-instagram-widget\",\r\n element: \r\n }\r\n ]\r\n };\r\n};\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\nimport { FacebookAccountType } from \"common/constants/FacebookAccountType\";\r\nimport { ChatPlugin } from \"common/functions/ChatPlugin\";\r\nimport React, { useEffect } from \"react\";\r\nimport FacebookDeveloperAPI from \"repositories/implements/FacebookDeveloperAPI\";\r\nimport Loader from \"ui-components/Loading/ComponentLoader\";\r\n\r\nexport default function FacebookLoginRedirect() {\r\n const FacebookContainer = styled(\"div\")`\r\n width: 100%;\r\n height: 100%;\r\n `;\r\n\r\n const redirectUrl = async () => {\r\n const hashParams = window.location.hash.substring(1);\r\n const url = new URL(\r\n `${window.location.origin}${window.location.pathname}?${hashParams}`\r\n );\r\n const state = url.searchParams.get(\"state\");\r\n if (state) {\r\n const resp = await FacebookDeveloperAPI.GetSession(state);\r\n if (resp.Status && resp.Data) {\r\n let redirectUrl = new URL(resp.Data.redirectUrl);\r\n const access_token = url.searchParams.get(\"access_token\");\r\n const widget_type = url.searchParams.get(\"widget_type\");\r\n if (access_token) {\r\n redirectUrl.searchParams.append(\"state\", access_token);\r\n }\r\n if (widget_type) {\r\n redirectUrl.searchParams.append(\"widget_type\", widget_type);\r\n }\r\n redirectUrl.searchParams.append(\r\n \"account_type\",\r\n FacebookAccountType.BUSINESS\r\n );\r\n window.location.href = `${redirectUrl.pathname}${decodeURIComponent(\r\n redirectUrl.search\r\n )}`;\r\n }\r\n } else {\r\n if (window.intervalId) {\r\n clearInterval(window.intervalId);\r\n window.newWindow = undefined;\r\n window.intervalId = 0;\r\n }\r\n const error = url.searchParams.get(\"error_description\");\r\n if (error) {\r\n ChatPlugin.TriggerEvent(\"sw_business_account_login\");\r\n }\r\n }\r\n };\r\n useEffect(() => {\r\n redirectUrl();\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const NotFoundShopWrapper = styled(\"div\")`\r\n display: flex;\r\n justify-content: center;\r\n width: 100%;\r\n height: 100%;\r\n`;\r\n\r\nexport const NotFoundShopContent = styled(\"div\")`\r\n width: auto;\r\n margin: auto;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n h2 {\r\n font-size: 25px;\r\n margin-bottom: 20px;\r\n }\r\n p {\r\n font-size: 16px;\r\n }\r\n`;\r\n","import React from \"react\";\r\nimport { NotFoundShopContent, NotFoundShopWrapper } from \"./NotFound\";\r\n\r\nfunction NotFound() {\r\n return (\r\n \r\n \r\n

You haven't registered store for our application yet

\r\n

Please contact our to install app

\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default NotFound;\r\n","import React from \"react\";\r\nimport FacebookLoginRedirect from \"views/Admin/FacebookLogin\";\r\nimport NotFoundShop from \"views/NotFound\";\r\n\r\nconst NotFoundRoutes = {\r\n path: \"/not-found\",\r\n element: \r\n};\r\n\r\nconst RedirectFacebookLoginRoutes = {\r\n path: \"/facebook-auth\",\r\n element: \r\n};\r\n\r\nconst NotFoundUrlRoutes = {\r\n path: \"*\",\r\n element: \r\n};\r\n\r\nconst EndpointManager = {\r\n NotFoundRoutes,\r\n NotFoundUrlRoutes,\r\n RedirectFacebookLoginRoutes\r\n};\r\nexport default EndpointManager;\r\n","import { useRoutes } from \"react-router-dom\";\r\nimport config from \"config\";\r\nimport MainRoutes, { OnboardingRoute, PricingRoute } from \"./MainRoutes\";\r\nimport { CreateTikTokRoutes, MyTikTokRoutes } from \"./TikTokRoutes\";\r\nimport { InstagramRoutes, MyInstagramRoutes } from \"./InstagramRoutes\";\r\nimport EndpointManager from \"./OtherRoutes\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\n\r\nexport default function ThemeRoutes() {\r\n const tiktokWidgetReducer = useSelector(\r\n (state: RootReducer) => state.TiktokWidgetReducer\r\n );\r\n const instagramWidgetReducer = useSelector(\r\n (state: RootReducer) => state.InstagramWidgetReducer\r\n );\r\n\r\n const isOnBoarding =\r\n !tiktokWidgetReducer.count && !instagramWidgetReducer.count;\r\n\r\n return useRoutes(\r\n [\r\n MainRoutes(),\r\n CreateTikTokRoutes(isOnBoarding),\r\n MyTikTokRoutes(isOnBoarding),\r\n InstagramRoutes(isOnBoarding),\r\n MyInstagramRoutes(instagramWidgetReducer.count),\r\n PricingRoute(),\r\n OnboardingRoute(isOnBoarding),\r\n EndpointManager.NotFoundRoutes,\r\n EndpointManager.NotFoundUrlRoutes,\r\n EndpointManager.RedirectFacebookLoginRoutes\r\n ],\r\n config.basename\r\n );\r\n}\r\n","import { useEffect } from \"react\";\r\nimport { useLocation } from \"react-router-dom\";\r\n\r\nfunction NavigationScroll({ children }: any) {\r\n const location = useLocation();\r\n const { pathname } = location;\r\n\r\n useEffect(() => {\r\n window.scrollTo({\r\n top: 0,\r\n left: 0,\r\n behavior: \"smooth\",\r\n });\r\n }, [pathname]);\r\n return children || null;\r\n}\r\n\r\nexport default NavigationScroll;\r\n","import { AppProvider } from \"@shopify/polaris\";\r\nimport translations from \"@shopify/polaris/locales/en.json\";\r\nimport React from \"react\";\r\n\r\nfunction withAppProvider(Component: any) {\r\n return function () {\r\n return (\r\n \r\n \r\n \r\n );\r\n };\r\n}\r\n\r\n(function (l) {\r\n if (l.search[1] === \"/\") {\r\n var decoded = l.search\r\n .slice(1)\r\n .split(\"&\")\r\n .map(function (s) {\r\n return s.replace(/~and~/g, \"&\");\r\n })\r\n .join(\"?\");\r\n window.history.replaceState(\r\n null,\r\n \"\",\r\n l.pathname.slice(0, -1) + decoded + l.hash\r\n );\r\n }\r\n})(window.location);\r\n\r\n(String.prototype as any).format = function () {\r\n var args = arguments;\r\n return this.replace(/{([0-9]+)}/g, function (match: any, index: any) {\r\n return typeof args[index] == \"undefined\" ? match : args[index];\r\n });\r\n};\r\n\r\nexport default withAppProvider;\r\n","export class InspectPlugin {\r\n\r\n static Init(domain?: string) {\r\n const script2 = document.createElement(\"script\");\r\n script2.innerHTML = `\r\n (function () {\r\n window.__insp = window.__insp || [];\r\n __insp.push([\"wid\", 1903448965]);\r\n var ldinsp = function () {\r\n if (typeof window.__inspld != \"undefined\") return;\r\n window.__inspld = 1;\r\n var insp = document.createElement(\"script\");\r\n insp.type = \"text/javascript\";\r\n insp.async = true;\r\n insp.id = \"inspsync\";\r\n insp.src =\r\n (\"https:\" == document.location.protocol ? \"https\" : \"http\") +\r\n \"://cdn.inspectlet.com/inspectlet.js?wid=1903448965&r=\" +\r\n Math.floor(new Date().getTime() / 3600000);\r\n var x = document.getElementsByTagName(\"script\")[0];\r\n x.parentNode.insertBefore(insp, x);\r\n };\r\n setTimeout(ldinsp, 0);\r\n })();`;\r\n\r\n document.body.appendChild(script2);\r\n }\r\n}\r\n","import React, { useRef, useState } from \"react\";\r\nimport { PricingBannerStyled } from \"./PricingStyled\";\r\nimport { PricingScope } from \"repositories/dtos/responses/ShopResponse\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\nimport EventTrackingProvider from \"repositories/services/EventTracingProvider\";\r\nimport ShopAPI from \"repositories/implements/ShopAPI\";\r\nimport config from \"config\";\r\nimport { toastNotify } from \"Dependencies/Toast\";\r\nimport SniperLoading from \"ui-components/Loading/SniperLoading\";\r\nimport { useOutsideAlerter } from \"hooks\";\r\n\r\nexport default function PricingBannerPlan() {\r\n const shop = useSelector((state: RootReducer) => state.ShopReducer.shop);\r\n const [open, setOpen] = useState(\r\n shop.shopPricing.pricing === PricingScope.Basic\r\n );\r\n\r\n const [pendingUpgrade, setPendingUpgrade] = useState(false);\r\n const onUpgrade = (pricing: PricingScope) => async () => {\r\n if (!pendingUpgrade) {\r\n EventTrackingProvider.Track(\"pricing-trial\", shop);\r\n setPendingUpgrade(true);\r\n const resp = await ShopAPI.UpgradePricing(shop.domain, {\r\n TrialDays: config.Pricing.TrialDays,\r\n IsBillingMonthly: false,\r\n Pricing: pricing\r\n });\r\n if (resp?.Status && resp.Data?.value) {\r\n const subscriptUrl = resp.Data.value;\r\n window.location.href = subscriptUrl;\r\n setPendingUpgrade(false);\r\n return;\r\n }\r\n return toastNotify.errorMsg(resp?.Error);\r\n }\r\n };\r\n\r\n const onCloseActive = () => {\r\n setOpen(false);\r\n };\r\n const wrapperRef = useRef(null);\r\n useOutsideAlerter(wrapperRef, onCloseActive);\r\n\r\n return shop?.domain && open ? (\r\n \r\n
\r\n

Pricing Plan

\r\n
\r\n \r\n Sign up in less than 30 seconds and try out with our free 7 days\r\n trial to enjoy our app to the fullest.\r\n \r\n
\r\n You can return to free plan anytime, with no hassle.\r\n
\r\n
\r\n
\r\n

Basic plan

\r\n
Free
\r\n
    \r\n
  • \r\n \r\n Auto-sync every 24 hours\r\n
  • \r\n
  • \r\n \r\n Display up to 10 posts/feed\r\n
  • \r\n
  • \r\n \r\n 1 free product tag\r\n
  • \r\n
  • \r\n \r\n Remove watermark\r\n
  • \r\n
  • \r\n \r\n Instagram Story\r\n
  • \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Recommended\r\n
\r\n

Advance plan

\r\n
\r\n $\r\n 4.00\r\n /\r\n month\r\n
\r\n
    \r\n
  • \r\n
    \r\n \r\n Unlimited customization\r\n
    \r\n \r\n
  • \r\n
  • \r\n
    \r\n \r\n Auto-sync every 2 hours\r\n
    \r\n \r\n
  • \r\n
  • \r\n
    \r\n \r\n Display up to 50 posts/feed\r\n
    \r\n \r\n
  • \r\n
  • \r\n
    \r\n \r\n Unlimited product tags\r\n
    \r\n \r\n
  • \r\n
  • \r\n
    \r\n \r\n Remove watermark\r\n
    \r\n \r\n
  • \r\n
  • \r\n
    \r\n \r\n Instagram Story (coming soon)\r\n
    \r\n \r\n
  • \r\n
\r\n \r\n {pendingUpgrade ? (\r\n \r\n ) : (\r\n FREE 7 DAYS TRIAL\r\n )}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
setOpen(false)}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n ) : (\r\n <>\r\n );\r\n}\r\n\r\nfunction Stick() {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nfunction NotStick() {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nfunction Star() {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { Suspense, useEffect, useState } from \"react\";\r\nimport Routes from \"routes\";\r\nimport NavigationScroll from \"./layout/MainLayout/NavigationScroll\";\r\nimport { Toaster } from \"react-hot-toast\";\r\nimport ShopAPI from \"repositories/implements/ShopAPI\";\r\nimport { useNavigate } from \"react-router-dom\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { ShopActionTS } from \"stores/Admin/Shop/action\";\r\nimport Loader from \"ui-components/Loading/ComponentLoader\";\r\nimport withAppProvider from \"Dependencies/ApplicationProvider\";\r\nimport { useQuery } from \"hooks\";\r\nimport { WidgetActionTS } from \"stores/Admin/TiktokWidget/action\";\r\nimport { InstagramWidgetActionTS } from \"stores/Admin/InstagramWidget/action\";\r\nimport { ChatPlugin } from \"common/functions/ChatPlugin\";\r\nimport { InspectPlugin } from \"common/functions/InspectPlugin\";\r\nimport { ButtonWidgetActionTS } from \"stores/Admin/ButtonWidget/action\";\r\nimport { ButtonWidgetStoreModelDto } from \"stores/Admin/ButtonWidget/state\";\r\n\r\nimport \"@shopify/polaris/build/esm/styles.css\";\r\nimport \"swiper/swiper-bundle.css\";\r\nimport \"swiper/swiper-bundle.min.css\";\r\nimport \"swiper/swiper.min.css\";\r\nimport \"simplebar\";\r\nimport \"simplebar/dist/simplebar.css\";\r\nimport \"@fancyapps/ui/dist/fancybox/fancybox.css\";\r\nimport PricingBannerPlan from \"views/Admin/Pricing/PricingBannerPlan\";\r\n\r\nfunction App() {\r\n const navigate = useNavigate();\r\n const dispatch = useDispatch();\r\n const shop = useQuery().get(\"shop\");\r\n const admin = useQuery().get(\"admin\");\r\n const [isPending, setPending] = useState(true);\r\n\r\n const getShopCurrent = async () => {\r\n if (!shop) {\r\n if (!window.location.pathname.includes(\"facebook-auth\")) {\r\n navigate(\"/not-found\");\r\n }\r\n setPending(false);\r\n return;\r\n }\r\n const res = await ShopAPI.Get(shop);\r\n setPending(false);\r\n if (!res) return navigate(\"/not-found\");\r\n if (res?.shopConfiguration && res?.shopConfiguration?.timezone) {\r\n localStorage.setItem(\"timezone\", res.shopConfiguration.timezone);\r\n }\r\n dispatch(\r\n ShopActionTS.OnSetInformation({\r\n shop: res\r\n })\r\n );\r\n const [tiktokInfo, instagramInfo] = await Promise.all([\r\n ShopAPI.GetWidgetsCount(res.domain ?? \"\"),\r\n ShopAPI.GetInstagramCount(res.domain ?? \"\")\r\n ]);\r\n dispatch(WidgetActionTS.OnSetWidgetCount(tiktokInfo));\r\n dispatch(InstagramWidgetActionTS.OnSetWidgetCount(instagramInfo));\r\n if (res.shopConfiguration) {\r\n dispatch(\r\n ButtonWidgetActionTS.OnSetOptional(\r\n res.shopConfiguration as ButtonWidgetStoreModelDto\r\n )\r\n );\r\n }\r\n //Chat plugin\r\n if (admin !== \"1\") {\r\n ChatPlugin.Init(res.domain);\r\n InspectPlugin.Init(res.domain);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n getShopCurrent();\r\n }, []);\r\n\r\n return (\r\n }>\r\n {isPending ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n {!window.location.pathname.includes(\"facebook-auth\") &&\r\n !window.location.pathname.includes(\"not-found\") && (\r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default withAppProvider(App);\r\n","import { BaseResponse } from \"repositories/dtos/responses/BaseResponse\";\r\nimport FetchDataFromServer from \"common/functions/AxiosMethod\";\r\nimport { IODataPaging, ODataQuery } from \"common/functions/ODataQuery\";\r\nimport { IQueryDataTable } from \"./DataTablesType\";\r\nimport { IQueryModel } from \"common/interfaces/IQueryModel\";\r\nimport { ODataResponse } from \"repositories/dtos/responses/ODataResponse\";\r\n\r\nexport default class DataTableFunc {\r\n static async BuildPaging(\r\n url: string,\r\n pageIndex?: number,\r\n pageNumber?: number,\r\n expand?: string,\r\n queryCustom?: string,\r\n req?: any,\r\n token?: string\r\n ): Promise> {\r\n let page: IODataPaging | undefined = undefined;\r\n if (pageIndex && pageNumber) {\r\n page = {\r\n pageIndex,\r\n pageNumber\r\n };\r\n }\r\n let urlBuilt = ODataQuery.BuildODataQuery(url, page, expand);\r\n let response = new BaseResponse>();\r\n if (queryCustom) {\r\n urlBuilt += `&${queryCustom}`;\r\n }\r\n const requestData: IQueryModel = {\r\n method: \"GET\",\r\n url: urlBuilt\r\n };\r\n\r\n if (token) {\r\n requestData.token = token;\r\n }\r\n if (req) {\r\n requestData.method = \"POST\";\r\n requestData.body = req;\r\n }\r\n response = await FetchDataFromServer>(requestData);\r\n if (response.Status) {\r\n const result = response.Data;\r\n if (!result)\r\n return {\r\n count: 0,\r\n data: []\r\n };\r\n\r\n if (result.value) {\r\n const data = result.value;\r\n return {\r\n count: result[\"@odata.count\"] ?? 0,\r\n data: data ?? []\r\n };\r\n }\r\n }\r\n return Promise.reject(response.Error);\r\n }\r\n}\r\n","const size = {\r\n xs: `320px`,\r\n xm: `468px`,\r\n sxm: `545px`,\r\n sm: `768px`,\r\n lg: `1200px`,\r\n bigLg: `1900px`\r\n};\r\n\r\nconst imgSize = (height: number): number => {\r\n let size = 0.6;\r\n let device = 0;\r\n if (height * 0.6 > window.innerHeight) {\r\n size = 0.5;\r\n }\r\n if (height * 0.5 > window.innerHeight) {\r\n size = 0.4;\r\n }\r\n if (height * 0.4 > window.innerHeight) {\r\n size = 0.3;\r\n }\r\n if (height * 0.3 > window.innerHeight) {\r\n size = 0.2;\r\n }\r\n if (height * 0.2 > window.innerHeight) {\r\n size = 0.2;\r\n }\r\n if (height * 0.2 > window.innerHeight) {\r\n size = 0.1;\r\n }\r\n return size + device;\r\n};\r\n\r\nconst device = {\r\n xs: `max-width: ${size.xs}`,\r\n xm: `max-width: ${size.xm}`,\r\n sxm: `max-width: ${size.sxm}`,\r\n sm: `max-width: ${size.sm}`,\r\n lg: `max-width: ${size.lg}`,\r\n betweenLgToBigLg: `max-width:${size.sm} and max-width: ${size.bigLg}`,\r\n bigLg: `min-width: ${size.bigLg}`,\r\n lap: `min-width: 1200px`\r\n};\r\nconst breakpoints = { size, device, imgSize };\r\nexport default breakpoints;\r\n","import toast from \"react-hot-toast\";\r\nimport { BaseResponse } from \"repositories/dtos/responses/BaseResponse\";\r\nimport { IToastContainer, IToastNotify } from \"./ToastNotificationModel\";\r\nimport { Guid } from \"common/functions/FuncUtils\";\r\n\r\nexport const toastNotify = {\r\n promise: async (\r\n funcQuery: Promise>,\r\n content: IToastNotify\r\n ) => {\r\n const toastId = toast.loading(content.loading);\r\n const res = await funcQuery;\r\n if (res.Status) {\r\n toast.success(content.success(res.Data) || content.success, {\r\n id: toastId,\r\n });\r\n } else {\r\n toast.error(res.Error, {\r\n id: toastId,\r\n });\r\n }\r\n return res;\r\n },\r\n\r\n success: (content: IToastContainer): string => {\r\n return toast.success(content.message, {\r\n style: content.style,\r\n id: content.id,\r\n className: content.className,\r\n });\r\n },\r\n\r\n error: (content: IToastContainer): string => {\r\n return toast.error(content.message, {\r\n style: content.style,\r\n id: content.id,\r\n className: content.className,\r\n });\r\n },\r\n\r\n errorMsg: (errorMsg?: string) =>\r\n toast.error(errorMsg ?? \"Error when handle action\", {\r\n id: Guid.NewGuid(),\r\n }),\r\n\r\n loading: (content: IToastContainer): string => {\r\n return toast.loading(content.message, {\r\n style: content.style,\r\n id: content.id,\r\n className: content.className,\r\n });\r\n },\r\n};\r\n","import Template1 from \"./Templates/Template1.png\";\r\nimport Template2 from \"./Templates/Template2.png\";\r\nimport Template3 from \"./Templates/Template3.png\";\r\nimport Template4 from \"./Templates/Template4.png\";\r\nimport Template5 from \"./Templates/Template5.png\";\r\nimport Background from \"./bg.png\";\r\n\r\nimport InsSlider from \"./Templates/ins-slider.png\";\r\nimport InsList from \"./Templates/ins-list.png\";\r\nimport Slider from \"./Templates/slider.png\";\r\nimport Carousel from \"./Templates/carousel.png\";\r\nimport List from \"./Templates/list.png\";\r\nimport Masonry from \"./Templates/masonry.png\";\r\nimport Battery from \"./Templates/battery.png\";\r\nimport Video from \"./Templates/video.png\";\r\nimport MobileList from \"./Templates/list-mobile.png\";\r\nimport MobileSlider from \"./Templates/slider-mobile.png\";\r\nimport TiktokListMobile from \"./Templates/tiktok-list-mobile.png\";\r\nimport TiktokMasonryMobile from \"./Templates/tiktok-masonry-mobile.png\";\r\nimport TiktokSliderMobile from \"./Templates/tiktok-slider-mobile.png\";\r\nimport TiktokCarouselMobile from \"./Templates/tiktok-carousel-mobile.png\";\r\n\r\nimport LogoTikTok from \"./tiktok.png\";\r\nimport LogoTikTok2 from \"./tiktok2.png\";\r\n\r\nimport ButtonNext from \"./Buttons/button-next.png\";\r\nimport ButtonPrev from \"./Buttons/button-prev.png\";\r\n\r\nimport VideoBackgroundGuides from \"./Guides/video-guides.png\";\r\nimport InstagramGuides from \"./Instagram/ins-guides.png\";\r\nimport InstagramGuides2 from \"./Instagram/ins-guides-2.png\";\r\n\r\nimport FacebookPixel from \"./facebook-pixel.png\";\r\nimport Discount from \"./discount.png\";\r\nimport Feedback from \"./feedback.png\";\r\n\r\nimport AddStoreGuide from \"./Guides/add-store-guide.png\";\r\nimport GuidesGif from \"./Guides/gif.gif\";\r\n\r\nexport const ImageStorage = {\r\n Feedback,\r\n FacebookPixel,\r\n Discount,\r\n Background,\r\n ButtonTikTok: [\r\n \"https://tiktok.orichi.info/tiktok-logo-5.gif\",\r\n \"https://tiktok.orichi.info/tiktok-logo-1.png\",\r\n \"data:image/png;base64,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\",\r\n \"data:image/png;base64,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\",\r\n \"data:image/png;base64,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\"\r\n ],\r\n AddStoreGuide,\r\n LogoTikTok,\r\n LogoTikTok2,\r\n Templates: {\r\n InsSlider,\r\n InsList,\r\n Slider,\r\n Carousel,\r\n List,\r\n Masonry,\r\n MobileList,\r\n MobileSlider,\r\n TiktokListMobile,\r\n TiktokSliderMobile,\r\n TiktokMasonryMobile,\r\n TiktokCarouselMobile\r\n },\r\n Battery,\r\n Video,\r\n Template: {\r\n Template1,\r\n Template2,\r\n Template3,\r\n Template4,\r\n Template5\r\n },\r\n ButtonBasic: {\r\n ButtonNext,\r\n ButtonPrev\r\n },\r\n VideoBackgroundGuides,\r\n Instagram: {\r\n InstagramGuides,\r\n InstagramGuides2,\r\n InstagramVideoBackgroundGuides:\r\n \"https://img.youtube.com/vi/j74EmTuj3P8/maxresdefault.jpg\"\r\n },\r\n\r\n GuidesGif\r\n};\r\n","export const EventIdOrder = {\r\n ADD_TO_CART: \"add_to_cart\",\r\n BUY_NOW: \"buy_now\"\r\n};\r\n","export enum FacebookAccountType {\r\n BUSINESS = \"BUSINESS\",\r\n MEDIA_CREATOR = \"MEDIA_CREATOR\",\r\n PERSONAL = \"PERSONAL\"\r\n}\r\n","export class RootURL {\r\n //static ApiBase = window.location.origin;\r\n //static ApiBase = \"https://test-tiktok.orichi.info\";\r\n static ApiBase = \"https://tiktok.orichi.info\";\r\n // static ApiBase = \"https://localhost:44341\";\r\n}\r\n","import axios from \"axios\";\r\nimport { IErrorMessage } from \"common/interfaces/IErrorMessage\";\r\nimport { IQueryModel } from \"common/interfaces/IQueryModel\";\r\nimport config from \"config\";\r\nimport { BaseResponse } from \"repositories/dtos/responses/BaseResponse\";\r\n\r\nconst FetchDataFromServer = async (\r\n req: IQueryModel\r\n): Promise> => {\r\n let result = new BaseResponse();\r\n const instance = axios.create({\r\n baseURL: config.apiUrl,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"cross-origin-resource-policy\": \"cross-origin\"\r\n }\r\n });\r\n\r\n if (!req?.nonTimezone && localStorage.getItem(\"timezone\")) {\r\n instance.defaults.headers.common[\"tz\"] = `${localStorage.getItem(\r\n \"timezone\"\r\n )}`;\r\n }\r\n\r\n if (req?.token) {\r\n let accessToken = req?.token;\r\n if (accessToken.includes(\"#_\")) {\r\n accessToken = accessToken.replaceAll(\"#_\", \"\");\r\n }\r\n instance.defaults.headers.common[\"Authorization\"] = `Bearer ${accessToken}`;\r\n }\r\n\r\n if (req?.refreshToken) {\r\n instance.defaults.headers.common[\"rft\"] = `${req.refreshToken}`;\r\n }\r\n try {\r\n const response = await instance({\r\n method: req.method,\r\n data: req.body,\r\n url: req.url,\r\n withCredentials: true\r\n });\r\n result = new BaseResponse().AddData(response.data);\r\n } catch (err: any) {\r\n const errMessage = err.response?.data as IErrorMessage;\r\n if (errMessage && errMessage?.errors && errMessage?.errors?.length > 0) {\r\n result = new BaseResponse(\r\n false,\r\n errMessage.errors[0].errorMessage\r\n );\r\n } else {\r\n const message = `${err.code}: ${err.message}`;\r\n result = new BaseResponse(false, message).AddData(\r\n err?.response?.data\r\n );\r\n }\r\n }\r\n return Promise.resolve(result);\r\n};\r\n\r\nexport default FetchDataFromServer;\r\n","export class ChatPlugin {\r\n static Open = () => {\r\n if(window.$crisp){\r\n window.$crisp.push([\"do\", \"chat:open\"]);\r\n }\r\n }\r\n\r\n static AddEventFeatureComing() {\r\n if (window.$crisp) {\r\n window.$crisp.push([\"set\", \"session:event\", [\"s_tiktok_coming_feature\"]]);\r\n }\r\n return this;\r\n }\r\n\r\n static TriggerEvent(events: EventCripType | EventCripType[]){\r\n if (window.$crisp) {\r\n let eventtrigger;\r\n if(Array.isArray(events)){\r\n eventtrigger = events\r\n }\r\n else{\r\n eventtrigger = [events];\r\n }\r\n window.$crisp.push([\"set\", \"session:event\", eventtrigger]);\r\n }\r\n return this;\r\n }\r\n\r\n static Init(domain?: string) {\r\n window.$crisp = undefined;\r\n const script2 = document.createElement(\"script\");\r\n script2.innerHTML = `\r\n window.$crisp=[];window.CRISP_WEBSITE_ID=\"07faab23-2cce-4034-93cd-5361030881aa\";CRISP_TOKEN_ID = btoa(\"${\r\n (domain ?? \"\") + \"Tiktok\"\r\n }\");\r\n (function(){d=document;s=d.createElement(\"script\");s.src=\"https://client.crisp.chat/l.js\";s.async=1;d.getElementsByTagName(\"head\")[0].appendChild(s);})();\r\n $crisp.push([\"set\", \"user:nickname\", [\"${domain ?? \"\"}\"]]);\r\n $crisp.push([\"set\", \"session:segments\", [[\"Tiktok\"]]]);`;\r\n\r\n document.body.appendChild(script2);\r\n }\r\n}\r\n\r\nexport const CripEvent = Object.freeze({\r\n sw_business_account_login: \"sw_business_account_login\",\r\n sw_import_posts_help: \"sw_import_posts_help\",\r\n sw_preview_loading: \"sw_preview_loading\",\r\n sw_display_post_help: \"sw_display_post_help\",\r\n sw_add_to_store: \"sw_add_to_store\",\r\n sw_login_questions: \"sw_login_questions\"\r\n});\r\nexport type EventCripType = (typeof CripEvent)[keyof typeof CripEvent] | string;","const notUriKeys = [\r\n \"my-widget\",\r\n \"my-instagram-widget\",\r\n \"\",\r\n \"button-widget\",\r\n \"dashboard\"\r\n];\r\nexport class UriProvider {\r\n static GetUrlExtension(url: string): string {\r\n let extension = url.split(/[#?]/)[0].split(\".\").pop() as string;\r\n if (extension.includes(\"/\"))\r\n extension = extension.split(\"/\").pop() as string;\r\n return extension.trim();\r\n }\r\n\r\n static InsertParameters(key: string, value: string | number) {\r\n key = encodeURIComponent(key);\r\n value = encodeURIComponent(value);\r\n\r\n var kvp = document.location.search.substr(1).split(\"&\");\r\n let i = 0;\r\n\r\n for (; i < kvp.length; i++) {\r\n if (kvp[i].startsWith(key + \"=\")) {\r\n let pair = kvp[i].split(\"=\");\r\n pair[1] = value;\r\n kvp[i] = pair.join(\"=\");\r\n break;\r\n }\r\n }\r\n\r\n if (i >= kvp.length) {\r\n kvp[kvp.length] = [key, value].join(\"=\");\r\n }\r\n\r\n // can return this or...\r\n let params = kvp.join(\"&\");\r\n\r\n // reload page with new params\r\n document.location.search = params;\r\n }\r\n static RemoveURLParameter = (url: string, parameter: string) => {\r\n //prefer to use l.search if you have a location/link object\r\n var urlparts = url.split(\"?\");\r\n if (urlparts.length >= 2) {\r\n var prefix = encodeURIComponent(parameter) + \"=\";\r\n var pars = urlparts[1].split(/[&;]/g);\r\n\r\n //reverse iteration as may be destructive\r\n for (var i = pars.length; i-- > 0; ) {\r\n //idiom for string.startsWith\r\n if (pars[i].lastIndexOf(prefix, 0) !== -1) {\r\n pars.splice(i, 1);\r\n }\r\n }\r\n\r\n return urlparts[0] + (pars.length > 0 ? \"?\" + pars.join(\"&\") : \"\");\r\n }\r\n return url;\r\n };\r\n static KeepParameters(url: string, removeParam?: string[]) {\r\n const queryString = window.location.search;\r\n let urlOutput = new URL(`${window.location.origin}${url}`);\r\n const paramUrlOutput = urlOutput.searchParams;\r\n if (queryString) {\r\n var kvp = queryString.substr(1).split(\"&\");\r\n let i = 0;\r\n\r\n for (; i < kvp.length; i++) {\r\n if (kvp[i] === \"source\" || kvp[i] === \"value\") continue;\r\n let pair = kvp[i].split(\"=\");\r\n const key = pair[0];\r\n if (removeParam?.includes(key) || key === \"isSubscriptionCompleted\")\r\n continue;\r\n const val = pair[1];\r\n if (!paramUrlOutput.has(key)) {\r\n if (notUriKeys.includes(url.substr(1)) && key === \"key\") continue;\r\n urlOutput.searchParams.append(key, decodeURIComponent(val));\r\n }\r\n }\r\n return `${urlOutput.pathname}${urlOutput.search}`;\r\n }\r\n return url;\r\n }\r\n\r\n static FormatURLImage(\r\n url?: string,\r\n corsProxy?: string,\r\n isEncodeURI?: boolean,\r\n disableCorsProxy?: boolean\r\n ) {\r\n if(disableCorsProxy) return url ?? \"\";\r\n if (url) {\r\n return url.startsWith(\"http\")\r\n ? url.startsWith(\"https://cdn.shopify.com\")\r\n ? url\r\n : corsProxy\r\n ? `${corsProxy}${isEncodeURI ? encodeURIComponent(url) : url}`\r\n : url\r\n : `data:image/png;base64,${url}`;\r\n }\r\n return \"\";\r\n }\r\n}\r\n\r\nexport class Guid {\r\n static NewGuid() {\r\n return \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(\r\n /[xy]/g,\r\n function (c: any) {\r\n var r = (Math.random() * 16) | 0,\r\n v = c === \"x\" ? r : (r & 0x3) | 0x8;\r\n return v.toString(16);\r\n }\r\n );\r\n }\r\n}\r\n\r\nexport function ConvertUnicode(input: string): string {\r\n return input.replace(/\\\\+u([0-9a-fA-F]{4})/g, (a, b) =>\r\n String.fromCharCode(parseInt(b, 16))\r\n );\r\n}\r\n\r\nexport function sleep(ms: number) {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n}","import buildQuery from \"odata-query\";\r\n\r\nexport class ODataQuery {\r\n static BuildODataQuery(url: string, page?: IODataPaging, expand?: string) {\r\n let queryParameters: ODataQueryParameters = {};\r\n if (page) {\r\n queryParameters.count = true;\r\n queryParameters.top = page.pageNumber;\r\n queryParameters.skip = page.pageNumber * (page.pageIndex - 1);\r\n }\r\n if (expand) queryParameters.expand = expand;\r\n const endpointBuilded = buildQuery(queryParameters);\r\n return `${url}${endpointBuilded}`;\r\n }\r\n}\r\ninterface ODataQueryParameters {\r\n top?: number;\r\n skip?: number;\r\n count?: boolean;\r\n expand?: string;\r\n}\r\n\r\nexport interface IODataPaging {\r\n pageIndex: number;\r\n pageNumber: number;\r\n}\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\nexport interface IButtonCustom {\r\n size?: \"small\" | \"medium\" | \"large\";\r\n color?: string;\r\n bg?: string;\r\n borderColor?: string;\r\n width?: number;\r\n display?: \"flex\" | \"none\" | \"block\";\r\n borderRadius?: string;\r\n}\r\n\r\nexport const FlexBox = styled(\"div\")`\r\n display: flex;\r\n flex-wrap: wrap;\r\n flex-direction: row;\r\n justify-content: center;\r\n align-items: center;\r\n`;\r\n\r\nexport const LinkRouter = styled(Link)`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: center;\r\n position: relative;\r\n text-decoration: none;\r\n background: ${(props: IButtonCustom) => props.bg || \"rgba(254, 44, 85, 1)\"};\r\n color: ${(props: IButtonCustom) => props.color || \"#ffffff\"} !important;\r\n padding: 7px 23px;\r\n border-radius: 2px;\r\n font-weight: 400;\r\n font-size: ${(props: IButtonCustom) => (props.size === \"small\" ? 15 : 18)}px;\r\n cursor: pointer;\r\n border: ${(props) =>\r\n props.borderColor ? `1px solid ${props.borderColor}` : \"none\"};\r\n border-radius: 4px;\r\n width: ${(props) => (props.width ? `${props.width}%` : \"max-content\")};\r\n`;\r\n\r\nexport const LinkRouterSecondary = styled(Link)`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: center;\r\n position: relative;\r\n text-decoration: underline;\r\n color: rgb(255 0 0) !important;\r\n padding: 7px 23px;\r\n border-radius: 2px;\r\n font-weight: bold;\r\n font-size: ${(props: IButtonCustom) => (props.size === \"small\" ? 15 : 18)}px;\r\n cursor: pointer;\r\n border: ${(props) =>\r\n props.borderColor ? `1px solid ${props.borderColor}` : \"none\"};\r\n border-radius: 4px;\r\n width: ${(props) => (props.width ? `${props.width}%` : \"max-content\")};\r\n`;\r\n\r\n//Container Section\r\nexport interface IContainerSection {\r\n width: number | string;\r\n height?: number | string;\r\n bg?: string;\r\n position?: \"sticky\" | \"absolute\" | \"relative\" | \"fixed\";\r\n zIndex?: number;\r\n pt?: number | string;\r\n pr?: number | string;\r\n pb?: number | string;\r\n pl?: number | string;\r\n mt?: number | string;\r\n mr?: number | string;\r\n mb?: number | string;\r\n ml?: number | string;\r\n top?: number;\r\n left?: number;\r\n right?: number;\r\n bottom?: number;\r\n boxShadow?: string;\r\n}\r\n\r\nexport interface IContainer {\r\n flexDirection?: \"row\" | \"column\" | \"column-reverse\" | \"row-reverse\";\r\n pt?: number;\r\n pr?: number;\r\n pb?: number;\r\n pl?: number;\r\n mt?: number;\r\n mr?: number;\r\n mb?: number;\r\n ml?: number;\r\n bg?: string;\r\n position?: \"sticky\" | \"absolute\" | \"relative\" | \"fixed\";\r\n alignItems?: \"center\" | \"start\" | \"end\";\r\n justifyContent?:\r\n | \"center\"\r\n | \"flex-start\"\r\n | \"flex-end\"\r\n | \"space-between\"\r\n | \"space-around\";\r\n gap?: string;\r\n boxShadow?: string;\r\n}\r\nexport const Container = styled(\"div\")`\r\n display: flex;\r\n flex-direction: ${(props) => props.flexDirection || \"row\"};\r\n justify-content: ${(props) => props.justifyContent || \"baseline\"};\r\n align-items: ${(props) => props.alignItems || \"auto\"};\r\n width: 100%;\r\n height: 100%;\r\n background: ${(props) => props.bg || \"#ffffff\"};\r\n margin: ${(props) => props.mt || 0}px ${(props) => props.mr || 0}px\r\n ${(props) => props.mb || 0}px ${(props) => props.ml || 0}px;\r\n padding: ${(props) => props.pt || 0}px ${(props) => props.pr || 0}px\r\n ${(props) => props.pb || 0}px ${(props) => props.pl || 0}px;\r\n position: ${(props) => props.position ?? \"relative\"};\r\n gap: ${(props) => props.gap ?? \"0px\"};\r\n box-shadow: ${(props) => props.boxShadow ?? \"none\"};\r\n`;\r\n\r\nexport const ContainerSection = styled(\"div\", \"section\")`\r\n &.orichi-tiktok-section {\r\n box-shadow: ${(props) => props.boxShadow ?? \"none\"};\r\n width: ${(props) =>\r\n typeof props.width === \"number\" ? `${props.width}%` : props.width};\r\n max-width: ${(props) =>\r\n typeof props.width === \"number\" ? `${props.width}%` : props.width};\r\n height: ${(props) =>\r\n props.height\r\n ? typeof props.height === \"number\"\r\n ? `${props.height}%`\r\n : `${props.height}`\r\n : \"auto\"};\r\n background: ${(props) => props.bg || \"transparent\"};\r\n margin: ${(props) => props.mt || 0}px ${(props) => props.mr || 0}px\r\n ${(props) => props.mb || 0}px ${(props) => props.ml || 0}px;\r\n position: ${(props) => props.position ?? \"relative\"};\r\n z-index: ${(props) => props.zIndex ?? 0};\r\n top: ${(props) => `${props.top}px` ?? \"none\"};\r\n left: ${(props) => `${props.left}px` ?? \"none\"};\r\n right: ${(props) => `${props.right}px` ?? \"none\"};\r\n bottom: ${(props) => `${props.bottom}px` ?? \"none\"};\r\n padding: ${(props) =>\r\n props.pt\r\n ? typeof props.pt === \"number\"\r\n ? `${props.pt}px`\r\n : `${props.pt}`\r\n : 0}\r\n ${(props) =>\r\n props.pr\r\n ? typeof props.pr === \"number\"\r\n ? `${props.pr}px`\r\n : `${props.pr}`\r\n : 0}\r\n ${(props) =>\r\n props.pb\r\n ? typeof props.pb === \"number\"\r\n ? `${props.pb}px`\r\n : `${props.pb}`\r\n : 0}\r\n ${(props) =>\r\n props.pl\r\n ? typeof props.pl === \"number\"\r\n ? `${props.pl}px`\r\n : `${props.pl}`\r\n : 0};\r\n }\r\n`;\r\n\r\n//Button Coppy\r\n\r\nexport const CopySelection = styled(\"div\")`\r\n background: #fafafa;\r\n padding: 10px;\r\n margin-bottom: 30px;\r\n`;\r\n\r\nexport const CopyContent = styled(\"div\")`\r\n display: flex;\r\n justify-content: center;\r\n padding-top: 40px;\r\n padding-bottom: 5px;\r\n position: relative;\r\n div {\r\n color: #a4a4a4;\r\n }\r\n svg {\r\n fill: #5c5f62;\r\n }\r\n`;\r\n\r\nexport interface ICopyButton {\r\n isCopy?: boolean;\r\n}\r\nexport const CopyButton = styled(\"div\")`\r\n cursor: pointer;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n svg {\r\n fill: ${(props) => (!props.isCopy ? \"#5c5f62\" : \"rgba(0, 127, 95, 1)\")};\r\n }\r\n`;\r\n\r\nexport const FormStack = styled(\"div\")`\r\n display: flex;\r\n align-items: center;\r\n justify-content: start;\r\n gap: 10px;\r\n margin-top: 4px;\r\n .btn-login a {\r\n padding: 0.5rem;\r\n }\r\n`;\r\n\r\nexport const FormConfiguration = styled(\"div\")`\r\n width: 100%;\r\n background-color: #ffffff;\r\n border: 1px solid #f1f1f1;\r\n box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.05), 0px 0px 1px rgba(0, 0, 0, 0.25);\r\n .device {\r\n display: flex;\r\n margin-bottom: 30px;\r\n flex-direction: row;\r\n justify-content: center;\r\n align-items: center;\r\n background-color: #ffffff;\r\n padding: 12px 0px;\r\n border-bottom: 1px solid #f1f1f1;\r\n position: relative;\r\n h3 {\r\n position: absolute;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n left: 40px;\r\n font-family: \"Roboto\";\r\n font-style: normal;\r\n font-weight: 700;\r\n font-size: 14px;\r\n color: #000000;\r\n }\r\n .device-wrapper {\r\n display: flex;\r\n background: #e1e4eb;\r\n padding: 5px;\r\n .device__item {\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n font-family: \"Roboto\";\r\n font-style: normal;\r\n font-weight: 400;\r\n font-size: 14px;\r\n color: #8c9196;\r\n padding: 12px;\r\n span {\r\n margin-left: 6px;\r\n }\r\n }\r\n .device__item.active {\r\n background: #ffffff;\r\n svg {\r\n fill: #2c6ecb;\r\n }\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const ModalSectionStyled = styled(\"div\")`\r\n width: 100%;\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n background: #00000033;\r\n z-index: 999;\r\n .modal-section{\r\n padding: 12px 16px;\r\n display: flex;\r\n flex-direction: column;\r\n background: #ffffff;\r\n }\r\n .header {\r\n position: relative;\r\n width: 100%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n margin-bottom: 13px;\r\n .close{\r\n width: 20px;\r\n height: 20px;\r\n cursor: pointer;\r\n position: absolute;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n right: -5px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n h3{\r\n font-family: \"SF Pro Text\";\r\n font-size: 15px;\r\n font-weight: 600;\r\n line-height: 20px;\r\n }\r\n }\r\n .content {\r\n font-family: \"SF Pro Text\";\r\n font-size: 13px;\r\n font-weight: 400;\r\n line-height: 16px;\r\n color: #000000;\r\n margin-bottom: 6px;\r\n }\r\n .footer {\r\n padding: 14px;\r\n display: flex;\r\n justify-content: end;\r\n }\r\n`;\r\n\r\nexport interface ILabelForm {\r\n mr?: number;\r\n mt?: number;\r\n ml?: number;\r\n mb?: number;\r\n}\r\n\r\nexport const LabelForm = styled(\"div\")`\r\n margin: ${(props) => props.mt || 0}px ${(props) => props.mr || 0}px\r\n ${(props) => props.mb || 0}px ${(props) => props.ml || 0}px;\r\n`;\r\n\r\nexport const LoginModal = styled(\"div\")`\r\n width: auto;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n .insta-login__choices{\r\n justify-content: center;\r\n }\r\n .insta-login__choices--note{\r\n color: #858585;\r\n font-family: 'Inter Italic';\r\n font-size: 12px;\r\n font-style: italic;\r\n font-weight: 500;\r\n line-height: 16px;\r\n text-align: left;\r\n margin-top: 12px;\r\n span{\r\n cursor: pointer;\r\n color: #2B73FF;\r\n text-decoration: underline;\r\n }\r\n }\r\n`","import { RootURL } from \"common/constants/RootURL\";\r\n\r\nconst config = {\r\n basename: \"\",\r\n defaultPath: \"/\",\r\n apiUrl: \"http://localhost\",\r\n script: ``,\r\n helperUrl: \"http://localhost/\",\r\n videoUrl:\r\n \"https://burst.shopifycdn.com/photos/business-woman-smiling-in-office.jpg?width=1850\",\r\n youtubeUrl: \"https://www.youtube.com/watch?v=j74EmTuj3P8\",\r\n learnMoreUrl: \"https://www.youtube.com/watch?v=j74EmTuj3P8\",\r\n linkButtonWidget:\r\n \"https://orichi.info/2022/02/07/tikify-tiktok-buttons-installation-onboarding\",\r\n showItems: 15,\r\n sliderShowItem: 100,\r\n showUseSection: false,\r\n urlInstallTikTok:\r\n \"https://apps.shopify.com/tikify-tiktok-button#modal-show=ReviewListingModal\",\r\n CORS_PROXY: \"https://shopifycdn.orichi.info/api/proxy?url=\",\r\n FONT: {\r\n SFProDispayFont: `https://tiktok.orichi.info/SFProDisplay-Regular.ttf`,\r\n SFProTextFont: `https://tiktok.orichi.info/SFProText-Regular.ttf`\r\n },\r\n Guides: \"https://www.youtube.com/watch?v=4O6IFLHU8F0\",\r\n SCRIPTS: {\r\n INSTAGRAM: `${window.location.origin}/instagram.js`,\r\n TIKTOK: `${window.location.origin}/tiktok.js`\r\n },\r\n ONBOARDING: {\r\n LinkHelperTiktok:\r\n \"https://orichi.info/2022/01/03/where-can-i-find-the-tiktok-username-or-id/\",\r\n LinkHelperInstagram:\r\n \"https://orichi.info/2023/04/04/how-to-find-your-instagram-username/\",\r\n VideoTiktok:\r\n \"https://www.youtube.com/watch?v=-b3aYmI7PyA&t=3s&ab_channel=Alex\",\r\n VideoInstagram:\r\n \"https://www.youtube.com/watch?v=j74EmTuj3P8&ab_channel=Alex\",\r\n ImgVideoTiktok: \"https://img.youtube.com/vi/4O6IFLHU8F0/hqdefault.jpg\",\r\n ImgVideoInstagram: \"https://img.youtube.com/vi/j74EmTuj3P8/hqdefault.jpg\",\r\n LinkTestApp: \"https://www.youtube.com/watch?v=4O6IFLHU8F0\",\r\n Guides: {\r\n Image: \"https://img.youtube.com/vi/LhBUr3AQ_QQ/sddefault.jpg\",\r\n Url: \"https://www.youtube.com/embed/LhBUr3AQ_QQ?si=4xR02Lucdxhv42Eb\"\r\n }\r\n },\r\n\r\n TestCrisp: false,\r\n LinkBrandMark:\r\n \"https://apps.shopify.com/tikify-tiktok-button?surface_type=ref&surface_detail=brandmark\",\r\n\r\n Pricing: {\r\n LimitVideos: {\r\n 0: 10,\r\n 1: 50\r\n },\r\n\r\n TrialDays: 7\r\n },\r\n\r\n Tracing: {\r\n MIXPANEL_API_Key: \"447887b504dc57129396695b5cd8b91a\"\r\n },\r\n\r\n InstalledDateVersion: 20240313\r\n};\r\n\r\nexport default config;\r\n","import { useEffect } from \"react\";\r\nimport { useLocation } from \"react-router-dom\";\r\n\r\nexport default function useDeviceDetect() {\r\n const userAgent =\r\n typeof window.navigator === \"undefined\" ? \"\" : navigator.userAgent;\r\n const mobile =\r\n Boolean(\r\n userAgent.match(\r\n /Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile|WPDesktop/i\r\n )\r\n ) ||\r\n [\r\n \"iPad Simulator\",\r\n \"iPhone Simulator\",\r\n \"iPod Simulator\",\r\n \"iPad\",\r\n \"iPhone\",\r\n \"iPod\",\r\n ].includes(navigator.platform) ||\r\n // iPad on iOS 13 detection\r\n (navigator.userAgent.includes(\"Mac\") && \"ontouchend\" in document);\r\n\r\n return mobile;\r\n}\r\n\r\nexport const useQuery = () => {\r\n return new URLSearchParams(useLocation().search);\r\n};\r\n\r\nexport function useOutsideAlerter(ref: any, onRender: () => void) {\r\n useEffect(() => {\r\n /**\r\n * Alert if clicked on outside of element\r\n */\r\n function handleClickOutside(event: any) {\r\n if (ref.current && !ref.current.contains(event.target)) {\r\n onRender();\r\n }\r\n }\r\n // Bind the event listener\r\n document.addEventListener(\"mousedown\", handleClickOutside);\r\n return () => {\r\n // Unbind the event listener on clean up\r\n document.removeEventListener(\"mousedown\", handleClickOutside);\r\n };\r\n }, [ref]);\r\n}\r\n\r\nconst configObserver = {\r\n rootMargin: \"0px 0px 0px 0px\",\r\n threshold: 0,\r\n};\r\n\r\nexport function useLazyLoadImage(querySelectorAll: string) {\r\n useEffect(() => {\r\n let observer = new window.IntersectionObserver(function (entries, self) {\r\n entries.forEach((entry) => {\r\n if (entry.isIntersecting) {\r\n LoadImage(entry.target);\r\n self.unobserve(entry.target);\r\n }\r\n });\r\n }, configObserver);\r\n\r\n const images = document.querySelectorAll(querySelectorAll);\r\n if (images) {\r\n images.forEach((item) => {\r\n observer.observe(item);\r\n });\r\n }\r\n\r\n return () => {\r\n if (window.IntersectionObserver) {\r\n images.forEach((img) => {\r\n observer.unobserve(img);\r\n });\r\n }\r\n };\r\n }, [document.querySelectorAll(querySelectorAll)]);\r\n}\r\n\r\nfunction LoadImage(image: any) {\r\n image.src = image.dataset.src;\r\n}\r\n","import { ShopResponse } from \"repositories/dtos/responses/ShopResponse\";\r\nimport { RootReducer } from \"stores/Admin/reducers\";\r\n\r\nexport enum MenuItemType {\r\n Group,\r\n Item\r\n}\r\nexport interface IMenuChildrents {\r\n id: string;\r\n title: string;\r\n type: MenuItemType;\r\n url: string;\r\n redirect?: boolean;\r\n icon?: any;\r\n disabled?: boolean;\r\n active?: boolean;\r\n enableFeatureHighlightUrl?: boolean;\r\n chip?: {\r\n nameReducer: keyof RootReducer;\r\n };\r\n onAfterClickMenu?: () => void;\r\n}\r\nexport interface IMenuItems {\r\n id: string;\r\n title: string;\r\n type: MenuItemType;\r\n icon: any;\r\n url: string;\r\n label?: string;\r\n active?: boolean;\r\n children?: IMenuChildrents[];\r\n featureHighlight?: boolean;\r\n count?: number;\r\n onAfterClickMenu?: (shop: ShopResponse) => void;\r\n}\r\n","import { StoreMajor } from \"@shopify/polaris-icons\";\r\nimport { IMenuItems, MenuItemType } from \"./MenuModel\";\r\n\r\nconst apps: IMenuItems = {\r\n id: \"apps\",\r\n type: MenuItemType.Item,\r\n title: \"Apps\",\r\n label: \"Integrations\",\r\n icon: StoreMajor,\r\n url: \"/apps\",\r\n};\r\n\r\nexport default apps;\r\n","import { BuyButtonMajor } from \"@shopify/polaris-icons\";\r\nimport { IMenuItems, MenuItemType } from \"./MenuModel\";\r\nconst buttonWidget: IMenuItems = {\r\n id: \"button-widget\",\r\n title: \"Button Widget\",\r\n type: MenuItemType.Item,\r\n url: \"/button-widget\",\r\n icon: BuyButtonMajor,\r\n featureHighlight: true\r\n};\r\n\r\nexport default buttonWidget;\r\n","import { HomeFilledMinor } from \"@shopify/polaris-icons\";\r\nimport { IMenuItems, MenuItemType } from \"./MenuModel\";\r\n\r\nconst dashboard: IMenuItems = {\r\n id: \"dashboard\",\r\n type: MenuItemType.Group,\r\n title: \"Dashboard\",\r\n url: \"/\",\r\n icon: HomeFilledMinor,\r\n featureHighlight: true\r\n};\r\n\r\nexport default dashboard;\r\n","import { ProductsMajor } from \"@shopify/polaris-icons\";\r\nimport { IMenuItems, MenuItemType } from \"./MenuModel\";\r\nimport ReelVideo from \"assets/svg/ReelVideo\";\r\nimport EventTrackingProvider from \"repositories/services/EventTracingProvider\";\r\nimport { ShopResponse } from \"repositories/dtos/responses/ShopResponse\";\r\nconst instagram: IMenuItems = {\r\n id: \"instagram\",\r\n title: \"Instagram Widget\",\r\n type: MenuItemType.Group,\r\n icon: ProductsMajor,\r\n url: \"instagram\",\r\n featureHighlight: true,\r\n children: [\r\n {\r\n id: \"instagram-step\",\r\n title: \"Create widget\",\r\n type: MenuItemType.Item,\r\n url: \"/instagram-step-1\",\r\n enableFeatureHighlightUrl: true\r\n },\r\n {\r\n id: \"my-instagram-widget\",\r\n title: \"My widgets\",\r\n type: MenuItemType.Item,\r\n url: \"/my-instagram-widget\",\r\n chip: {\r\n nameReducer: \"InstagramWidgetReducer\"\r\n }\r\n }\r\n ]\r\n};\r\n\r\nexport const instagramReel: IMenuItems = {\r\n id: \"instagram-reel\",\r\n title: \"Instagram Story\",\r\n type: MenuItemType.Item,\r\n icon: ReelVideo,\r\n url: \"\",\r\n featureHighlight: true,\r\n onAfterClickMenu: (shop: ShopResponse) => {\r\n EventTrackingProvider.Track(\"home-page-instagram-reels\", shop);\r\n }\r\n};\r\n\r\nexport default instagram;\r\n","import React from \"react\";\r\n\r\nexport default function ReelVideo() {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import EventTrackingProvider from \"repositories/services/EventTracingProvider\";\r\nimport { IMenuItems, MenuItemType } from \"./MenuModel\";\r\nimport { ProductsMajor } from \"@shopify/polaris-icons\";\r\nconst pricing: IMenuItems = {\r\n id: \"pricing\",\r\n type: MenuItemType.Group,\r\n title: \"Pricing\",\r\n url: \"/pricing\",\r\n icon: ProductsMajor,\r\n onAfterClickMenu: (shop) => {\r\n EventTrackingProvider.Track(\"pricing\", shop);\r\n }\r\n};\r\n\r\nexport default pricing;\r\n","import { MobileHamburgerMajor } from \"@shopify/polaris-icons\";\r\nimport { IMenuItems, MenuItemType } from \"./MenuModel\";\r\nconst tiktok: IMenuItems = {\r\n id: \"widget\",\r\n title: \"TikTok Widget\",\r\n type: MenuItemType.Group,\r\n icon: MobileHamburgerMajor,\r\n url: \"widget\",\r\n featureHighlight: true,\r\n children: [\r\n {\r\n id: \"create-widget\",\r\n title: \"Create widget\",\r\n type: MenuItemType.Group,\r\n url: \"/create-widget\",\r\n enableFeatureHighlightUrl: true\r\n },\r\n {\r\n id: \"my-widget\",\r\n title: \"My widgets\",\r\n type: MenuItemType.Group,\r\n url: \"/my-widget\",\r\n chip: {\r\n nameReducer: \"TiktokWidgetReducer\"\r\n }\r\n }\r\n ]\r\n};\r\n\r\nexport default tiktok;\r\n","import apps from \"./apps\";\r\nimport buttonWidget from \"./button\";\r\nimport dashboard from \"./dashboard\";\r\nimport instagram, { instagramReel } from \"./instagram\";\r\nimport { IMenuItems } from \"./MenuModel\";\r\nimport pricing from \"./pricing\";\r\nimport tikTok from \"./tiktok\";\r\nexport default class MenuManagement {\r\n public items: IMenuItems[];\r\n constructor() {\r\n this.items = [\r\n dashboard,\r\n tikTok,\r\n instagram,\r\n buttonWidget,\r\n instagramReel,\r\n pricing,\r\n apps\r\n ];\r\n }\r\n}\r\n","export class BaseResponse {\r\n Status: boolean;\r\n Data?: TResult;\r\n Error: string;\r\n constructor(status: boolean = true, error: string = \"\") {\r\n this.Status = status;\r\n this.Error = error;\r\n }\r\n\r\n AddData(data: TResult): this {\r\n this.Data = data;\r\n return this;\r\n }\r\n}\r\n","import { FacebookAccountType } from \"common/constants/FacebookAccountType\";\r\nimport { RootURL } from \"common/constants/RootURL\";\r\nimport FetchDataFromServer from \"common/functions/AxiosMethod\";\r\nimport { ClientSessionResponse } from \"repositories/dtos/responses/ClientSessionResponse\";\r\nimport { InstagramUserInfo } from \"repositories/dtos/responses/InstagramUserInfo\";\r\n\r\nexport default class FacebookDeveloperAPI {\r\n static LoginFunc = (shop: string, widget_type?: \"instagram\") => {\r\n let redirectUri = new URL(window.location.href);\r\n if (redirectUri.searchParams.has(\"state\")) {\r\n redirectUri.searchParams.delete(\"state\");\r\n }\r\n redirectUri.searchParams.set(\"account_type\", FacebookAccountType.PERSONAL);\r\n if (widget_type) {\r\n redirectUri.searchParams.set(\"widget_type\", widget_type);\r\n }\r\n let url = redirectUri.toString();\r\n if (url.includes(\"#_\")) url = url.replaceAll(\"#_\", \"\");\r\n return `${\r\n RootURL.ApiBase\r\n }/instagram-signin?shop=${shop}&redirectUrl=${encodeURIComponent(url)}`;\r\n };\r\n\r\n static BusinessLoginFunc = (shop: string, widget_type?: \"instagram\") => {\r\n let redirectUri = new URL(window.location.href);\r\n if (redirectUri.searchParams.has(\"state\")) {\r\n redirectUri.searchParams.delete(\"state\");\r\n }\r\n if (redirectUri.searchParams.has(\"account_type\")) {\r\n redirectUri.searchParams.delete(\"account_type\");\r\n }\r\n if (widget_type) {\r\n redirectUri.searchParams.set(\"widget_type\", widget_type);\r\n }\r\n let url = redirectUri.toString();\r\n if (url.includes(\"#_\")) url = url.replaceAll(\"#_\", \"\");\r\n return `${\r\n RootURL.ApiBase\r\n }/instagram-business-signin?shop=${shop}&redirectUrl=${encodeURIComponent(\r\n url\r\n )}`;\r\n };\r\n\r\n static GetSession = async (sessionId: string) => {\r\n const resp = await FetchDataFromServer({\r\n url: `${RootURL.ApiBase}/instagram-sessions/${sessionId}`,\r\n method: \"GET\"\r\n });\r\n return resp;\r\n };\r\n\r\n static GetUserInfo = async (\r\n shop: string,\r\n token: string,\r\n widgetId?: string,\r\n isBusinessUser?: boolean,\r\n ig_id?: string\r\n ) => {\r\n let uri = new URL(\r\n `${RootURL.ApiBase}/odata/shops('${shop}')/user-instagram-info`\r\n );\r\n if (widgetId) {\r\n uri.searchParams.append(\"widgetId\", widgetId);\r\n }\r\n\r\n if (ig_id) {\r\n uri.searchParams.append(\"ig_id\", ig_id);\r\n }\r\n\r\n if (isBusinessUser) {\r\n uri.searchParams.append(\"account_type\", FacebookAccountType.BUSINESS);\r\n }\r\n const uriAPi = uri.toString();\r\n const resp = await FetchDataFromServer({\r\n url: uriAPi,\r\n method: \"GET\",\r\n token: token\r\n });\r\n return resp;\r\n };\r\n}\r\n","import { RootURL } from \"common/constants/RootURL\";\r\nimport FetchDataFromServer from \"common/functions/AxiosMethod\";\r\nimport { ODataQuery } from \"common/functions/ODataQuery\";\r\nimport config from \"config\";\r\nimport DataTableFunc from \"Dependencies/DataTables/DataTableModel\";\r\nimport { IInstagramDto } from \"Dependencies/InstagramLayout/InstagramLayoutModel\";\r\nimport { AddJobRequest } from \"repositories/dtos/requests/AddJobRequest\";\r\nimport { AddTagProductRequest } from \"repositories/dtos/requests/AddTagProductRequest\";\r\nimport { GetVideoByJobInstagramRequest } from \"repositories/dtos/requests/GetVideoByJobRequest\";\r\nimport PostFeedbackRequest from \"repositories/dtos/requests/PostFeedbackRequest\";\r\nimport SetClickPostRequest from \"repositories/dtos/requests/SetClickPostRequest\";\r\nimport { SetInstagramWidgetRequest } from \"repositories/dtos/requests/SetInstagramWidgetRequest\";\r\nimport { InstagramWidgetResponse } from \"repositories/dtos/responses/InstagramWidgetResponse\";\r\nimport { BaseResponse } from \"repositories/dtos/responses/BaseResponse\";\r\nimport { SetWidgetItemsManagerRequest } from \"repositories/dtos/requests/SetWidgetItemsManagerRequest\";\r\nimport { SetItemGetmoreRequest } from \"repositories/dtos/requests/SetItemGetmoreRequest\";\r\nimport { ODataResponse } from \"repositories/dtos/responses/ODataResponse\";\r\nimport { IQueryDataTable } from \"Dependencies/DataTables/DataTablesType\";\r\nimport UpdateWidgetConfigurationRequest from \"repositories/dtos/requests/UpdateWidgetConfigurationRequest\";\r\nimport { SetOrderEventRequest } from \"repositories/dtos/requests/SetOrderEventRequest\";\r\nimport { EventIdOrder } from \"common/constants/EventIdOrder\";\r\nimport { sleep } from \"common/functions/FuncUtils\";\r\n\r\nexport default class InstagramWidgetAPI {\r\n static SetItemGetmore = async (\r\n widgetId: string,\r\n req: SetItemGetmoreRequest\r\n ) => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/InstagramWidgets('${widgetId}')/SetItemGetmore`,\r\n body: req\r\n });\r\n return response;\r\n };\r\n static SetWidgetItemsManager = async (\r\n widgetId: string,\r\n req: SetWidgetItemsManagerRequest\r\n ) => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/InstagramWidgets('${widgetId}')/SetOptionShowItems`,\r\n body: req\r\n });\r\n return response;\r\n };\r\n\r\n static AddJob = async (domain?: string, req?: AddJobRequest) => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/shops('${domain}')/AddJobInstagram`,\r\n body: req\r\n });\r\n return response;\r\n };\r\n\r\n static PostFeedback = async (domain: string, req: PostFeedbackRequest) => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/Shops('${domain}')/Feedback`,\r\n body: req\r\n });\r\n return response;\r\n };\r\n static Delete = async (key: string) => {\r\n const response = await FetchDataFromServer({\r\n method: \"DELETE\",\r\n url: `${RootURL.ApiBase}/odata/InstagramWidgets('${key}')`\r\n });\r\n return response;\r\n };\r\n\r\n static GetById = async (key: string) => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/InstagramWidgets('${key}')?$expand=products,shops,contextConfiguration`\r\n });\r\n return response;\r\n };\r\n\r\n static GetByIds = async (widgetIds: string[]) => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${\r\n RootURL.ApiBase\r\n }/odata/shopWidgets('${widgetIds.toString()}')?$expand=products,shops,contextConfiguration&type=1`\r\n });\r\n return response;\r\n };\r\n\r\n static Get = async (pageIndex?: number, domain?: string) => {\r\n let url = `${RootURL.ApiBase}/odata/shops('${domain}')/InstagramWidgets?$expand=products,shops,contextConfiguration&$count=true`;\r\n if (pageIndex) {\r\n url = ODataQuery.BuildODataQuery(\r\n `${RootURL.ApiBase}/odata/shops('${domain}')/InstagramWidgets`,\r\n {\r\n pageIndex: pageIndex,\r\n pageNumber: 10\r\n },\r\n \"products,shops,contextConfiguration\"\r\n );\r\n }\r\n const response = await FetchDataFromServer<\r\n ODataResponse\r\n >({ method: \"GET\", url: url });\r\n if (response.Status) {\r\n const result = response.Data;\r\n const data = result?.value;\r\n if (data) {\r\n const widgets = data.map((item) => {\r\n var widget: InstagramWidgetResponse = {\r\n ...item,\r\n valueSource: item.valueSource.normalize()\r\n };\r\n return widget;\r\n });\r\n return {\r\n count: result[\"@odata.count\"] || result?.value.length || 0,\r\n data: widgets\r\n };\r\n }\r\n }\r\n return { count: 0, data: [] };\r\n };\r\n\r\n static Create = async (\r\n req: SetInstagramWidgetRequest,\r\n domain?: string,\r\n token?: string\r\n ): Promise> => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/shops('${domain}')/RegisterInstagramWidget`,\r\n body: req,\r\n token\r\n });\r\n return response;\r\n };\r\n\r\n static Update = async (\r\n key: string,\r\n req: SetInstagramWidgetRequest,\r\n token?: string\r\n ) => {\r\n const response = await FetchDataFromServer({\r\n method: \"PUT\",\r\n url: `${RootURL.ApiBase}/odata/InstagramWidgets('${key}')`,\r\n body: req,\r\n token\r\n });\r\n return response;\r\n };\r\n\r\n static AddTagProducts = async (\r\n key: string,\r\n req: AddTagProductRequest\r\n ): Promise> => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/InstagramWidgets('${key}')/UpdateProduct`,\r\n body: req\r\n });\r\n return response;\r\n };\r\n static GetVideos = async (\r\n key: string,\r\n pageIndex: number,\r\n showItems?: number\r\n ): Promise> => {\r\n try {\r\n return DataTableFunc.BuildPaging(\r\n `${RootURL.ApiBase}/odata/InstagramVideos('${key}')`,\r\n pageIndex,\r\n showItems ? showItems : config.showItems,\r\n \"user,products($expand=options,variants)\",\r\n \"$orderby=index asc\"\r\n );\r\n } catch {\r\n return Promise.resolve({\r\n data: [],\r\n count: 0\r\n });\r\n }\r\n };\r\n\r\n static PostClick = async (key: string, req: SetClickPostRequest) => {\r\n return await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/InstagramVideos('${key}')/SetClicks`,\r\n body: req\r\n });\r\n };\r\n\r\n static TraceEventAddtoCartClick = async (\r\n key: string,\r\n req: SetOrderEventRequest\r\n ) => {\r\n return await FetchDataFromServer>({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/InstagramVideos('${key}')/SetOrderEvent`,\r\n body: {\r\n ...req,\r\n EventId: EventIdOrder.ADD_TO_CART\r\n }\r\n });\r\n };\r\n\r\n static TraceEventBuyNowClick = async (\r\n key: string,\r\n req: SetOrderEventRequest\r\n ) => {\r\n return await FetchDataFromServer>({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/InstagramVideos('${key}')/SetOrderEvent`,\r\n body: {\r\n ...req,\r\n EventId: EventIdOrder.BUY_NOW\r\n }\r\n });\r\n };\r\n\r\n static GetVideosByJob = async (\r\n req: GetVideoByJobInstagramRequest,\r\n showItems?: number,\r\n pageIndex?: number,\r\n widgetId?: string,\r\n token?: string,\r\n userId?: string\r\n ): Promise> => {\r\n let query = `$orderby=takenAt desc`;\r\n if (widgetId) {\r\n query = `$orderby=index asc&widgetId=${widgetId}`;\r\n }\r\n if (userId) {\r\n query += `&userId=${userId}`;\r\n }\r\n if(config.TestCrisp) await sleep(5000);\r\n return DataTableFunc.BuildPaging(\r\n `${RootURL.ApiBase}/odata/InstagramVideos`,\r\n pageIndex ?? 1,\r\n showItems ? showItems : config.showItems,\r\n \"products\",\r\n query,\r\n req,\r\n token\r\n );\r\n };\r\n\r\n static UpdateConfiguration = async (\r\n key: string,\r\n req: UpdateWidgetConfigurationRequest\r\n ): Promise> => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/InstagramWidgets('${key}')/UpdateConfiguration`,\r\n body: req\r\n });\r\n return response;\r\n };\r\n}\r\n","import { RootURL } from \"common/constants/RootURL\";\r\nimport FetchDataFromServer from \"common/functions/AxiosMethod\";\r\nimport { UpdateShopConfigurationRequest } from \"repositories/dtos/requests/UpdateShopConfigurationRequest\";\r\nimport {\r\n PricingScope,\r\n ShopResponse\r\n} from \"repositories/dtos/responses/ShopResponse\";\r\nimport { ShopResponseConfiguration } from \"repositories/dtos/responses/ShopConfigurationResponse\";\r\nimport { BaseTheme } from \"repositories/dtos/responses/BaseTheme\";\r\nimport { IAnalyticsResponse } from \"repositories/dtos/responses/IAnalytics\";\r\nimport { IBannerResponse } from \"repositories/dtos/responses/IBanner\";\r\nimport { ICourseItem } from \"repositories/dtos/responses/ICourse\";\r\nimport { IPostResponse } from \"repositories/dtos/responses/IPost\";\r\nimport { convertDateTimeByTimezone } from \"views/Admin/Dashboard/DateRange/DateFunc\";\r\nimport { ODataResponse } from \"repositories/dtos/responses/ODataResponse\";\r\nimport DiscountResponse from \"repositories/dtos/responses/DiscountResponse\";\r\nimport CheckoutPricingRequest from \"repositories/dtos/requests/CheckoutPricingRequest\";\r\nimport { GetWidgetCountResponse } from \"repositories/dtos/responses/GetWidgetCountResponse\";\r\nexport default class ShopAPI {\r\n static GetThemes = async (shopDomain: string) => {\r\n try {\r\n const response = await FetchDataFromServer>({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/Shops('${shopDomain}')/GetThemes`\r\n });\r\n if (response.Status) {\r\n return response.Data?.value ?? [];\r\n }\r\n } catch (err) {}\r\n return [];\r\n };\r\n\r\n static GetConfiguration = async (domain?: string) => {\r\n try {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/shops('${domain}')/shopConfiguration`\r\n });\r\n if (response.Status) {\r\n return response.Data as ShopResponseConfiguration;\r\n }\r\n } catch {}\r\n return null;\r\n };\r\n\r\n static Get = async (shopDomain: string) => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/shops('${shopDomain}')?$expand=shopDescriptor,shopConfiguration,shopPricing`\r\n });\r\n if (response.Status) {\r\n if (\r\n response.Data &&\r\n response.Data.shopPricing &&\r\n typeof response.Data.shopPricing.pricing === \"string\"\r\n ) {\r\n response.Data.shopPricing.pricing =\r\n PricingScope[\r\n response.Data.shopPricing.pricing as keyof typeof PricingScope\r\n ];\r\n }\r\n return response.Data;\r\n }\r\n return null;\r\n };\r\n\r\n static GetWidgetsCount = async (shopDomain: string) => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/shops('${shopDomain}')/tiktok-count`\r\n });\r\n if (response.Status && response.Data) {\r\n return response.Data;\r\n }\r\n return {\r\n count: 0,\r\n needLoginUsers: 0\r\n };\r\n };\r\n\r\n static GetInstagramCount = async (shopDomain: string) => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/shops('${shopDomain}')/instagram-count`\r\n });\r\n if (response.Status && response.Data) {\r\n return response.Data;\r\n }\r\n return {\r\n count: 0,\r\n needLoginUsers: 0\r\n };\r\n };\r\n\r\n static Update = async (\r\n domain?: string,\r\n req?: UpdateShopConfigurationRequest\r\n ) => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/shops('${domain}')/UpdateShopConfiguration`,\r\n body: req\r\n });\r\n return response;\r\n };\r\n\r\n static GetRecentCourses = async (): Promise => {\r\n const response = await FetchDataFromServer>({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/Courses`\r\n });\r\n return response.Data?.value ?? [];\r\n };\r\n\r\n static GetPosts = async (\r\n domain: string,\r\n startDate = new Date().toString(),\r\n endDate = new Date().toString()\r\n ): Promise => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${\r\n RootURL.ApiBase\r\n }/odata/Shops('${domain}')/Posts?startTime=${convertDateTimeByTimezone(\r\n startDate\r\n )}&endTime=${convertDateTimeByTimezone(endDate)}`,\r\n nonTimezone: true\r\n });\r\n return response.Data as IPostResponse;\r\n };\r\n\r\n static GetBanners = async (): Promise => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/Banner`\r\n });\r\n return response.Data as IBannerResponse;\r\n };\r\n\r\n static GetDataAnalytics = async (\r\n shop: string,\r\n dateRange: {\r\n StartTime: string;\r\n EndTime: string;\r\n }\r\n ): Promise => {\r\n const response = await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/Shops('${shop}')/Analytics`,\r\n body: {\r\n StartTime: convertDateTimeByTimezone(dateRange.StartTime),\r\n EndTime: convertDateTimeByTimezone(dateRange.EndTime)\r\n },\r\n nonTimezone: true\r\n });\r\n return response.Data as IAnalyticsResponse;\r\n };\r\n\r\n static GetDiscount = async (voucher: string): Promise => {\r\n const response = await FetchDataFromServer({\r\n method: \"GET\",\r\n url: `${RootURL.ApiBase}/odata/Discount('${voucher}')`\r\n });\r\n return response.Data as DiscountResponse;\r\n };\r\n\r\n static DowngradePricing = async (domain: string) => {\r\n return await FetchDataFromServer({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/Shops('${domain}')/DowngradePricing`\r\n });\r\n };\r\n\r\n static UpgradePricing = async (\r\n domain: string,\r\n req: CheckoutPricingRequest\r\n ) => {\r\n const resp = await FetchDataFromServer>({\r\n method: \"POST\",\r\n url: `${RootURL.ApiBase}/odata/Shops('${domain}')/CheckoutPricing`,\r\n body: req\r\n });\r\n return resp;\r\n };\r\n}\r\n","import config from \"config\";\r\nimport mixpanel, { Dict } from \"mixpanel-browser\";\r\nimport { ShopResponse } from \"repositories/dtos/responses/ShopResponse\";\r\n\r\nexport const Events = Object.freeze({\r\n source_tiktok: \"source-tiktok\",\r\n source_instagram: \"source-instagram\",\r\n onboard_step1_completed: \"onboard-step1-completed\",\r\n onboard_step2_completed: \"onboard-step2-completed\",\r\n onboard_step3_completed: \"onboard-step3-completed\",\r\n onboard_step4_completed: \"onboard-step4-completed\",\r\n onboard_step4_support: \"onboard-step4-support\",\r\n my_widgets_guidance_next: \"my-widgets-guidance-next\",\r\n my_widgets_guidance_skip: \"my-widgets-guidance-skip\",\r\n my_widgets_add_to_store: \"my-widgets-add-to-store\",\r\n add_to_store_theme_editor: \"add-to-store-theme-editor\",\r\n add_to_store_add_code: \"add-to-store-add-code\",\r\n add_to_store_auto_add: \"add-to-store-auto-add\",\r\n home_page_instagram_reels: \"home-page-instagram-reels\",\r\n Onboard_TikTok_Login: \"Onboard-TikTok-Login\",\r\n Onboard_Instagram_Login: \"Onboard-Instagram-Login\",\r\n TikTok_Login: \"TikTok-Login\",\r\n TikTok_Change_source: \"TikTok-Change-source\",\r\n TikTok_Input_hashtag: \"TikTok-Input-hashtag\",\r\n Instagram_Login: \"Instagram-Login\",\r\n Instagram_Change_source: \"Instagram-Change-source\",\r\n Instagram_Input_hashtag: \"Instagram-Input-hashtag\",\r\n My_widget_current_username_disable_TikTok: \"My-widget-current-username-disable-TikTok\",\r\n My_widget_current_username_disable_Instagram: \"My-widget-current-username-disable-Instagram\",\r\n onboard_posts_next: \"onboard-posts-next\",\r\n onboard_posts_back: \"onboard-posts-back\",\r\n onboard_step2_back: \"onboard-step2-back\",\r\n onboard_step3_back: \"onboard-step3-back\",\r\n onboard_step4_back: \"onboard-step4-back\",\r\n onboard_theme_page: \"onboard-theme-page\",\r\n pricing: \"pricing\",\r\n pricing_trial: \"pricing-trial\",\r\n pricing_promotion_code: \"pricing-promotion-code\"\r\n});\r\n\r\ntype EventPanelType = (typeof Events)[keyof typeof Events];\r\nexport default class EventTrackingProvider {\r\n static Track = (event_name: EventPanelType, shop: ShopResponse) => {\r\n mixpanel.init(config.Tracing.MIXPANEL_API_Key);\r\n mixpanel.identify(shop.domain);\r\n mixpanel.people.set(this.SetConfig(shop));\r\n mixpanel.track(event_name);\r\n };\r\n\r\n static TrackWithContent = (\r\n event_name: EventPanelType | string,\r\n shop: ShopResponse,\r\n jsonContent: Object\r\n ) => {\r\n mixpanel.init(config.Tracing.MIXPANEL_API_Key);\r\n mixpanel.identify(shop.domain);\r\n mixpanel.people.set(this.SetConfig(shop));\r\n mixpanel.track(event_name, jsonContent);\r\n };\r\n\r\n static SetConfig = (shop: ShopResponse): Dict => {\r\n return {\r\n $name: shop.domain,\r\n $email: shop.email,\r\n $phone: shop?.phone,\r\n shopify_plan: shop?.planName,\r\n app_installation_status: \"active\"\r\n };\r\n };\r\n}\r\n","import { ApplicationActEnum } from './enum';\r\nimport { ApplicationType } from './model';\r\nimport { DateRangeType } from './state';\r\n\r\nexport class ApplicationActionTS {\r\n public static OnHandleMenuItem(\r\n menuItem: string,\r\n active: boolean = false,\r\n ): ApplicationType {\r\n return {\r\n type: ApplicationActEnum.MENU_TOGGLE,\r\n payload: {\r\n menuItem,\r\n active,\r\n },\r\n };\r\n }\r\n\r\n public static OnHandleMenuItemMobile(\r\n active: boolean = false,\r\n ): ApplicationType {\r\n return {\r\n type: ApplicationActEnum.MENU_MOBILE_TOGGLE,\r\n payload: active,\r\n };\r\n }\r\n\r\n public static OnHandleChangeDateRange(\r\n dateRange: DateRangeType,\r\n ): ApplicationType {\r\n return {\r\n type: ApplicationActEnum.SET_DATE_RANGE,\r\n payload: dateRange,\r\n };\r\n }\r\n}\r\n","import { ButtonWidgetStoreModelDto } from \"./state\";\r\nimport { ButtonWidgetActEnum } from \"./enum\";\r\nimport { ButtonWidgetType } from \"./model\";\r\n\r\nexport class ButtonWidgetActionTS {\r\n public static OnSetOptional(\r\n options: ButtonWidgetStoreModelDto\r\n ): ButtonWidgetType {\r\n return {\r\n type: ButtonWidgetActEnum.OPTION,\r\n payload: options,\r\n };\r\n }\r\n}\r\n","import { ProductResponse } from \"repositories/dtos/responses/ProductResponse\";\r\nimport { InstagramWidgetActEnum } from \"./enum\";\r\nimport { InstagramWidgetType } from \"./model\";\r\nimport { InstagramWidgetStatus } from \"./state\";\r\nimport { GetWidgetCountResponse } from \"repositories/dtos/responses/GetWidgetCountResponse\";\r\n\r\nexport class InstagramWidgetActionTS {\r\n public static OnSetWidgetCount(\r\n count: GetWidgetCountResponse\r\n ): InstagramWidgetType {\r\n return {\r\n type: InstagramWidgetActEnum.COUNT,\r\n payload: count\r\n };\r\n }\r\n\r\n public static SetWorkingSearch(isSearching: boolean): InstagramWidgetType {\r\n return {\r\n type: InstagramWidgetActEnum.SEARCHING,\r\n payload: isSearching\r\n };\r\n }\r\n\r\n public static RiseSequenceNumber(): InstagramWidgetType {\r\n return {\r\n type: InstagramWidgetActEnum.RISE_SEQUENCENUMBER\r\n };\r\n }\r\n public static OnChangStatus(\r\n status: InstagramWidgetStatus = \"Undefined\"\r\n ): InstagramWidgetType {\r\n return {\r\n type: InstagramWidgetActEnum.CHANGE_STATUS,\r\n payload: status\r\n };\r\n }\r\n\r\n public static OnStep(step: number = 0): InstagramWidgetType {\r\n return {\r\n type: InstagramWidgetActEnum.STEP,\r\n payload: step\r\n };\r\n }\r\n\r\n public static OnSetTagProducts(\r\n products: ProductResponse[],\r\n isReplace: boolean = false\r\n ): InstagramWidgetType {\r\n return {\r\n type: InstagramWidgetActEnum.GET_TAG_PRODUCTS,\r\n payload: products,\r\n isReplace: isReplace\r\n };\r\n }\r\n}\r\n","import { ShopDescriptor } from \"repositories/dtos/responses/ShopResponse\";\r\nimport { ShopActEnum } from \"./enum\";\r\nimport { ShopStoreModelDto } from \"./state\";\r\n\r\nexport class ShopActionTS {\r\n public static OnSetInformation(options: ShopStoreModelDto) {\r\n return {\r\n type: ShopActEnum.INFORMATION,\r\n payload: options\r\n };\r\n }\r\n\r\n public static OnSetDescriptor(payload: ShopDescriptor) {\r\n return {\r\n type: ShopActEnum.DESCRIPTOR,\r\n payload: payload\r\n };\r\n }\r\n}\r\n","import { ProductResponse } from \"repositories/dtos/responses/ProductResponse\";\r\nimport { WidgetActEnum } from \"./enum\";\r\nimport { WidgetType } from \"./model\";\r\nimport { WidgetStatus } from \"./state\";\r\nimport { GetWidgetCountResponse } from \"repositories/dtos/responses/GetWidgetCountResponse\";\r\n\r\nexport class WidgetActionTS {\r\n public static OnSetWidgetCount(count: GetWidgetCountResponse): WidgetType {\r\n return {\r\n type: WidgetActEnum.COUNT,\r\n payload: count\r\n };\r\n }\r\n\r\n public static SetWorkingSearch(isSearching: boolean): WidgetType {\r\n return {\r\n type: WidgetActEnum.SEARCHING,\r\n payload: isSearching\r\n };\r\n }\r\n\r\n public static RiseSequenceNumber(): WidgetType {\r\n return {\r\n type: WidgetActEnum.RISE_SEQUENCENUMBER\r\n };\r\n }\r\n\r\n public static OnChangStatus(status: WidgetStatus = \"Undefined\"): WidgetType {\r\n return {\r\n type: WidgetActEnum.CHANGE_STATUS,\r\n payload: status\r\n };\r\n }\r\n\r\n public static OnStep(step: number = 0): WidgetType {\r\n return {\r\n type: WidgetActEnum.STEP,\r\n payload: step\r\n };\r\n }\r\n\r\n public static OnSetTagProducts(\r\n products: ProductResponse[],\r\n isReplace: boolean = false\r\n ): WidgetType {\r\n return {\r\n type: WidgetActEnum.GET_TAG_PRODUCTS,\r\n payload: products,\r\n isReplace: isReplace\r\n };\r\n }\r\n}\r\n","import styled from \"Dependencies/StyledComponents/Container\";\r\n\r\nexport const PricingStyledWrapper = styled(\"div\")`\r\n width: 100%;\r\n background: #ffffff;\r\n padding: 40px 5%;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n position: relative;\r\n .pricing-header {\r\n font-family: \"Roboto\";\r\n font-size: 36px;\r\n font-weight: 600;\r\n margin-bottom: 30px;\r\n }\r\n .pricing-desc {\r\n font-family: \"Roboto\";\r\n font-size: 20px;\r\n font-weight: 400;\r\n color: #6d7175;\r\n margin-bottom: 60px;\r\n text-align: center;\r\n line-height: 25px;\r\n }\r\n .pricing-item {\r\n display: flex;\r\n flex-direction: column;\r\n padding: 10px 20px 40px 20px;\r\n .pricing-price {\r\n margin-bottom: 15px;\r\n width: 100%;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n }\r\n h2 {\r\n color: #202223;\r\n font-size: 20px;\r\n margin-bottom: 12px;\r\n }\r\n }\r\n .hidden-border-bottom {\r\n border-bottom: 0px;\r\n }\r\n .hidden-border-top {\r\n border-top: 0px;\r\n td {\r\n border-top: 0px;\r\n }\r\n }\r\n .pricing-plan-prices-basic {\r\n color: #202223;\r\n font-size: 36px;\r\n line-height: 36px;\r\n font-weight: 700;\r\n font-family: \"Roboto\";\r\n text-transform: uppercase;\r\n }\r\n .pricing-plan-prices-advanced {\r\n display: flex;\r\n align-items: end;\r\n justify-content: flex-start;\r\n font-family: \"Roboto\";\r\n svg {\r\n margin-right: 8px;\r\n }\r\n .specify {\r\n margin-right: 3px;\r\n line-height: 17px;\r\n font-size: 17px;\r\n font-weight: 400;\r\n }\r\n .prices {\r\n position: relative;\r\n bottom: -1px;\r\n display: inline-block;\r\n vertical-align: bottom;\r\n line-height: 36px;\r\n margin-right: 3px;\r\n font-weight: 600;\r\n font-size: 36px;\r\n }\r\n .prices-duration {\r\n line-height: 17px;\r\n font-size: 17px;\r\n font-weight: 400;\r\n text-transform: lowercase;\r\n }\r\n }\r\n .pricing-plans {\r\n width: 100%;\r\n }\r\n\r\n .pricing-text-scope {\r\n font-size: 15px;\r\n font-weight: 400;\r\n color: #000000;\r\n font-family: \"Roboto\";\r\n }\r\n table,\r\n td,\r\n th {\r\n border-collapse: collapse;\r\n border: 1px solid #e5e5e5;\r\n border-spacing: 0;\r\n }\r\n table {\r\n width: 100%;\r\n th {\r\n position: relative;\r\n }\r\n td {\r\n padding: 15px 20px;\r\n }\r\n .pricing-scope-content {\r\n width: 100%;\r\n display: flex;\r\n justify-content: center;\r\n }\r\n }\r\n .pricing-scope {\r\n .pricing-scope-query {\r\n font-size: 14px;\r\n font-weight: 400;\r\n color: #202223;\r\n font-family: \"Roboto\";\r\n }\r\n }\r\n .btn-upgrade {\r\n background-color: #ff0b53;\r\n border: none;\r\n border-radius: 5px;\r\n color: #ffffff;\r\n font-size: 16px;\r\n line-height: 16px;\r\n font-weight: 500;\r\n padding: 10px 0px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n svg,\r\n .orichi-loading {\r\n width: 16px;\r\n height: 16px;\r\n }\r\n &:hover {\r\n background-color: #ee334b;\r\n }\r\n }\r\n .pricing-benefit-title {\r\n width: 50%;\r\n }\r\n .pricing-benefit-title-scope {\r\n width: 25%;\r\n }\r\n .pricing-recommended {\r\n position: absolute;\r\n top: -50px;\r\n left: 0px;\r\n right: 0px;\r\n width: 100%;\r\n display: flex;\r\n background-color: #ffe400;\r\n align-items: center;\r\n justify-content: center;\r\n height: 50px;\r\n border-top-left-radius: 10px;\r\n border-top-right-radius: 10px;\r\n font-weight: 450;\r\n font-size: 16px;\r\n font-family: \"Roboto\";\r\n .icon-crown {\r\n margin-right: 15px;\r\n }\r\n }\r\n .coming-soon {\r\n display: flex;\r\n align-items: center;\r\n .mr {\r\n margin-right: 40px;\r\n }\r\n .bg-stack {\r\n background-color: #ffea8a;\r\n border-radius: 80px;\r\n font-size: 10px;\r\n font-weight: 500;\r\n line-height: 17px;\r\n padding: 0px 11px;\r\n }\r\n }\r\n\r\n .pricing-promotion {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n background: linear-gradient(\r\n 265.98deg,\r\n #febb0e 2.38%,\r\n rgba(254, 144, 14, 0.14) 99.83%\r\n );\r\n position: fixed;\r\n top: 70%;\r\n right: -68px;\r\n z-index: 10;\r\n font-size: 16px;\r\n font-weight: 400;\r\n font-family: \"Roboto\";\r\n transform: rotate(-90deg);\r\n .pricing-promotion-icon {\r\n margin-right: 10px;\r\n }\r\n .pricing-promotion-icon {\r\n width: 24px;\r\n height: 24px;\r\n transform: rotate(90deg);\r\n }\r\n cursor: pointer;\r\n width: 180px;\r\n height: 44px;\r\n border-top-right-radius: 10px;\r\n border-top-left-radius: 10px;\r\n }\r\n`;\r\n\r\nexport const PricingNotifyStyled = styled(\"div\")`\r\n width: max-content;\r\n padding: 5px 7px;\r\n border: 1px solid #fe9500;\r\n border-radius: 2px;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n background: #ffeed7;\r\n font-size: 14px;\r\n height: 100%;\r\n a,\r\n h2,\r\n .text {\r\n font-size: 14px !important;\r\n line-height: 14px;\r\n font-weight: 600;\r\n font-family: \"SF Pro Text\";\r\n color: #fe9500;\r\n }\r\n a {\r\n text-decoration: underline;\r\n text-underline-offset: 2px;\r\n }\r\n svg {\r\n fill: #fe9500;\r\n }\r\n .Polaris-Icon {\r\n margin-right: 8px;\r\n }\r\n`;\r\n\r\nexport const PricingLimitProductStyled = styled(\"div\")`\r\n position: absolute;\r\n bottom: 67px;\r\n right: 20px;\r\n padding: 10px;\r\n font-size: 13px;\r\n font-weight: 400;\r\n font-style: italic;\r\n color: #ff0b53;\r\n text-align: right;\r\n font-family: \"SF Pro Text\";\r\n`;\r\n\r\nexport const PricingPromotionStyled = styled(\"div\")`\r\n width: auto;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n position: relative;\r\n padding: 70px;\r\n .btn-close {\r\n position: absolute;\r\n top: 20px;\r\n right: 20px;\r\n cursor: pointer;\r\n }\r\n .pricing-promotion-icon {\r\n margin-bottom: 30px;\r\n svg {\r\n width: 70px;\r\n height: 70px;\r\n }\r\n }\r\n h2 {\r\n font-size: 26px;\r\n font-weight: 500;\r\n font-family: \"Roboto\";\r\n margin-bottom: 30px;\r\n }\r\n .subscription-title {\r\n font-weight: 600;\r\n }\r\n h4 {\r\n font-size: 16px;\r\n font-weight: 400;\r\n font-family: \"Roboto\";\r\n margin-bottom: 60px;\r\n }\r\n .pricing-promotion-input {\r\n display: flex;\r\n width: 380px;\r\n align-items: start;\r\n .Polaris-Connected {\r\n input {\r\n width: 300px;\r\n height: 36px;\r\n }\r\n }\r\n button {\r\n background: #6d7175 !important;\r\n border-top-right-radius: 4px !important;\r\n border-bottom-right-radius: 4px !important;\r\n }\r\n button:hover {\r\n opacity: 0.8;\r\n }\r\n .Polaris-TextField,\r\n .Polaris-Connected,\r\n .Polaris-Connected__Item {\r\n height: 100%;\r\n display: block;\r\n }\r\n .Polaris-TextField__Backdrop {\r\n border-top-right-radius: 0px;\r\n border-bottom-right-radius: 0px;\r\n }\r\n #apply-voucher {\r\n cursor: pointer;\r\n color: #ffffff;\r\n height: 36px;\r\n width: 80px;\r\n border-top-left-radius: 0px;\r\n border-bottom-left-radius: 0px;\r\n border-left: 0px;\r\n &:not(.Polaris-Button--loading) {\r\n border: 0px;\r\n }\r\n &:hover {\r\n background: #7c7c7c;\r\n }\r\n }\r\n }\r\n\r\n .submit-popup {\r\n background: #139a78;\r\n width: 73%;\r\n height: 36px;\r\n color: #ffffff;\r\n border-radius: 5px;\r\n border: none;\r\n cursor: pointer;\r\n font-size: 17px;\r\n font-family: \"Roboto\";\r\n &:hover {\r\n background: #108b6c;\r\n }\r\n }\r\n\r\n .downgrade-alert-footer {\r\n display: flex;\r\n gap: 8px;\r\n button {\r\n border-radius: 5px;\r\n width: 85px;\r\n height: 33px;\r\n cursor: pointer;\r\n text-align: center;\r\n font-size: 14px;\r\n font-weight: 500;\r\n font-family: \"Roboto\";\r\n }\r\n #btn-back {\r\n color: #202223;\r\n background: linear-gradient(0deg, #ffffff, #ffffff),\r\n linear-gradient(180deg, #babfc3 86.46%, #bbbfc3 100%);\r\n box-shadow: 0px 1px 0px 0px #0000000d;\r\n border: 1px solid #babfc3;\r\n &:hover {\r\n background: #fafafa;\r\n }\r\n }\r\n #btn-ok {\r\n &:not(.Polaris-Button--loading) {\r\n background: #6d7175;\r\n color: #ffffff;\r\n }\r\n box-shadow: 0px -1px 0px 0px #00000033 inset;\r\n box-shadow: 0px 1px 0px 0px #00000014;\r\n &:hover {\r\n background: #7c7c7c;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const PricingBannerStyled = styled(\"div\", \"pricing-banner\")`\r\n width: 100%;\r\n height: 100%;\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n background: #000000d9;\r\n z-index: 999;\r\n display: flex;\r\n .pricing-plan__close{\r\n position: absolute;\r\n cursor: pointer;\r\n top: 20px;\r\n right: 20px;\r\n width: 20px;\r\n height: 20px;\r\n }\r\n .pricing-plan__container {\r\n margin: 0 auto;\r\n max-height: 100%;\r\n h3 {\r\n color: #ffffff;\r\n font-family: \"Inter\";\r\n font-size: 40px;\r\n font-weight: 550;\r\n line-height: 40px;\r\n text-align: center;\r\n margin-bottom: 22px;\r\n margin-top: 42px;\r\n @media screen and (max-width: 1590px){\r\n margin-top: 28px;\r\n margin-bottom: 20px;\r\n }\r\n }\r\n .pricing-plan__des {\r\n text-align: center;\r\n margin-bottom: 75px;\r\n span {\r\n color: #ffffff;\r\n }\r\n @media screen and (max-width: 1590px){\r\n margin-bottom: 55px;\r\n }\r\n }\r\n\r\n .pricing-plan__content {\r\n width: 100%;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: center;\r\n position: relative;\r\n .pricing-plan__hidden{\r\n width: 480px;\r\n margin-bottom: auto;\r\n position: relative;\r\n flex: 1;\r\n margin-top: -30px;\r\n @media screen and (max-width: 1590px){\r\n width: 380px;\r\n margin-top: -28px;\r\n }\r\n }\r\n .pricing-plan__advance {\r\n @media screen and (max-width: 1590px){\r\n padding: 20px 35px;\r\n }\r\n border: 3px solid #3FCE8F;\r\n width: 100%;\r\n position: absolute;\r\n top: 0px;\r\n right: 0px;\r\n height: max-content;\r\n background: #ffffff;\r\n padding: 39px 35px;\r\n border-radius: 8px;\r\n box-shadow: 10px 10px 15px 0px #1a1a1a33;\r\n box-shadow: 0px 1px 0px 0px #cccccc80 inset;\r\n box-shadow: 0px -1px 0px 0px #0000002b inset;\r\n box-shadow: -1px 0px 0px 0px #00000021 inset;\r\n box-shadow: 1px 0px 0px 0px #00000021 inset;\r\n box-shadow: -10px 0px 15px 0px #0000001a;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n .pricing-plan__basic--scope {\r\n border-radius: 6px;\r\n font-family: \"Inter\";\r\n font-size: 20px;\r\n font-weight: 400;\r\n line-height: 16px;\r\n text-align: center;\r\n width: 60%;\r\n height: 50px;\r\n cursor: pointer;\r\n background: #3FCE8F;\r\n color: #ffffff;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: center;\r\n border: none;\r\n .orichi-loader{\r\n width: 25px;\r\n height: 25px;\r\n }\r\n @media screen and (max-width: 1590px){\r\n font-size: 16px !important;\r\n height: 40px;\r\n }\r\n }\r\n .pricing-plan__advance--recommend {\r\n padding: 5px 20px;\r\n background: #ffb151;\r\n font-family: \"SF Pro Text\";\r\n font-size: 20px;\r\n font-weight: 700;\r\n line-height: 20px;\r\n color: #ffffff;\r\n margin-bottom: 26px;\r\n @media screen and (max-width: 1590px){\r\n margin-bottom: 20px;\r\n font-size: 18px;\r\n }\r\n }\r\n h4 {\r\n font-family: \"SF Pro Text\";\r\n font-size: 25px;\r\n font-weight: 700;\r\n line-height: 25px;\r\n text-transform: uppercase;\r\n margin-bottom: 28px;\r\n @media screen and (max-width: 1590px){\r\n margin-bottom: 23px;\r\n font-size: 23px;\r\n }\r\n }\r\n ul {\r\n @media screen and (max-width: 1590px){\r\n gap: 17px;\r\n margin-bottom: 40px;\r\n li{\r\n font-size: 18px !important;\r\n }\r\n }\r\n margin: 0px;\r\n list-style: none;\r\n display: flex;\r\n flex-direction: column;\r\n gap: 20px;\r\n margin-bottom: 81px;\r\n width: 100%;\r\n padding: 0px;\r\n li {\r\n display: flex;\r\n font-family: \"SF Pro Display\";\r\n font-size: 22px;\r\n font-weight: 400;\r\n line-height: 20px;\r\n text-align: left;\r\n justify-content: space-between;\r\n .pricing-advance__item{\r\n display: flex;\r\n gap: 19px;\r\n }\r\n }\r\n }\r\n .pricing-plan__advance--billing {\r\n margin-bottom: 39px;\r\n @media screen and (max-width: 1590px){\r\n margin-bottom: 30px;\r\n }\r\n .currency {\r\n @media screen and (max-width: 1590px){\r\n font-size: 22px;\r\n line-height: 25px;\r\n }\r\n font-size: 30px;\r\n font-family: \"SF Pro Text\";\r\n font-weight: 600;\r\n }\r\n .prices {\r\n @media screen and (max-width: 1590px){\r\n font-size: 45px;\r\n line-height: 50px;\r\n }\r\n font-size: 60px;\r\n font-family: \"SF Pro Text\";\r\n font-weight: 600;\r\n line-height: 60px;\r\n }\r\n .specify {\r\n @media screen and (max-width: 1590px){\r\n font-size: 22px;\r\n line-height: 25px;\r\n }\r\n font-size: 30px;\r\n font-family: \"SF Pro Text\";\r\n font-weight: 600;\r\n }\r\n .prices-duration {\r\n @media screen and (max-width: 1590px){\r\n font-size: 22px;\r\n line-height: 25px;\r\n }\r\n font-size: 30px;\r\n font-family: \"SF Pro Text\";\r\n font-weight: 600;\r\n }\r\n }\r\n }\r\n .pricing-plan__basic {\r\n .pricing-plan__basic--scope{\r\n border: none;\r\n width: 60%;\r\n height: 50px;\r\n }\r\n opacity: 0.9;\r\n width: 350px;\r\n border-top-left-radius: 8px;\r\n border-bottom-left-radius: 8px;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n @media screen and (max-width: 1590px){\r\n width: 290px;\r\n padding-top: 40px;\r\n padding-bottom: 25px;\r\n .pricing-plan__basic--scope{\r\n font-size: 16px;\r\n height: 40px;\r\n }\r\n }\r\n h4 {\r\n text-transform: uppercase;\r\n font-family: \"SF Pro Text\";\r\n font-size: 20px;\r\n font-weight: 700;\r\n line-height: 20px;\r\n margin-bottom: 35px;\r\n }\r\n .pricing-plan__basic--desc {\r\n font-family: \"SF Pro Text\";\r\n font-weight: 550;\r\n line-height: 60px;\r\n color: #000000;\r\n margin-bottom: 102px;\r\n font-size: 60px;\r\n @media screen and (max-width: 1590px){\r\n margin-bottom: 68px;\r\n font-size: 40px;\r\n line-height: 50px;\r\n }\r\n }\r\n text-align: center;\r\n padding: 50px 33px;\r\n background: #ffffff;\r\n box-shadow: 10px 19px 20px 0px #1a1a1a12;\r\n box-shadow: 0px 1px 0px 0px #cccccc80 inset;\r\n box-shadow: 0px -1px 0px 0px #0000002b inset;\r\n box-shadow: -1px 0px 0px 0px #00000021 inset;\r\n box-shadow: 1px 0px 0px 0px #00000021 inset;\r\n ul {\r\n @media screen and (max-width: 1590px){\r\n gap: 16px;\r\n margin-bottom: 15px;\r\n li{\r\n font-size: 15px !important;\r\n }\r\n }\r\n width: 100%;\r\n margin: 0px;\r\n list-style: none;\r\n display: flex;\r\n flex-direction: column;\r\n gap: 18px;\r\n margin-bottom: 40px;\r\n padding: 0px;\r\n li {\r\n display: flex;\r\n gap: 5px;\r\n font-family: \"SF Pro Text\";\r\n font-size: 18px;\r\n font-weight: 400;\r\n line-height: 20px;\r\n text-align: left;\r\n }\r\n }\r\n }\r\n .pricing-plan__basic--scope {\r\n border-radius: 6px;\r\n font-family: \"Inter\";\r\n font-size: 20px;\r\n font-weight: 400;\r\n line-height: 16px;\r\n text-align: center;\r\n background: #0000000D;\r\n }\r\n }\r\n }\r\n`;\r\n"],"names":["MainContent","styled","_templateObject","_taggedTemplateLiteral","ChildrenContent","_templateObject2","MainLayoutWrapper","_templateObject3","breakpoints","device","lg","_jsxs","width","height","viewBox","xmlns","preserveAspectRatio","children","_jsx","d","fill","LogoSectionContext","LogoWrapper","BackToShop","MobileViewMenu","_templateObject4","React","dispatch","useDispatch","appReducer","useSelector","state","AppReducer","shopReducer","ShopReducer","onClick","onMobileView","ApplicationActionTS","OnHandleMenuItemMobile","mobileMenuView","Icon","source","MobileCancelMajor","MobileHamburgerMajor","tone","href","concat","shop","domain","ShopifyLogo","HeaderWrapper","FlagStyle","FlagText","Account","_templateObject5","AccountName","_templateObject6","Header","_shopReducer$shop$sho","_shopReducer$shop","_shopReducer$shop$sho2","_shopReducer$shop2","widgetReducer","TiktokWidgetReducer","instagramWidgetReducer","InstagramWidgetReducer","buttonWidgetReducer","ButtonWidgetReducer","showGettingStart","window","location","pathname","includes","status","count","step","LogoSection","FlexBox","FlagMajor","id","AvatarDisplay","name","shopDescriptor","shopOwner","_ref","Avatar","round","size","SupportLink","SidebarWrapper","props","active","FeedbackBox","ListItemTagHref","level","ListItemButton","Link","LinkLock","ListItemButtonMenu","ListItemIcon","Chip","_templateObject7","ListItemWrapper","_templateObject8","nameReducer","chip","TikTokWidgetReducer","RenderCount","item","_Fragment","icon","title","url","className","LockMinor","onHandleMenuItem","key","arguments","length","undefined","OnHandleMenuItem","onAfterClickMenu","activeMenu","menuActive","selected","redirect","target","to","UriProvider","KeepParameters","NavGroupWrapper","NavGroupText","NavGroupMenuItem","NavGroup","_props$item","_props$item$children","_props$item3","_props$item4","_props$item5","items","map","menu","type","MenuItemType","Item","Group","NavItem","disabled","Text","as","enableMenuItems","menuItems","some","x","_props$item2","label","index","MenuList","navItems","MenuManagement","FeedbackWrapper","DivImageThank","FeedBack","_shopReducer$shop3","_shopReducer$shop3$sh","_shopReducer$shop4","error","setError","useState","setActive","feedbackText","setFieldText","setStatus","handleChange","feedbackStatus","handleOnClickBad","src","alt","handleOnClickGood","toastNotify","promise","InstagramWidgetAPI","PostFeedback","Status","FeedbackStatus","Good","loading","success","data","then","res","ShopActionTS","OnSetDescriptor","Data","open","config","urlInstallTikTok","Modal","noScroll","iFrameName","onClose","primaryAction","content","onAction","handleSubmitBad","Bad","Feedback","secondaryActions","Section","ImageStorage","TextContainer","TextField","value","onChange","val","multiline","autoComplete","BrowserView","PerfectScrollbar","component","style","MobileView","ChatPlugin","Open","ChatMajor","MainLayout","Sidebar","Outlet","Dashboard","Loadable","lazy","Pricing","ButtonWidget","AppIntegrationWrapper","OnBoarding","OnboardingRoute","path","element","Navigate","PricingRoute","useQuery","get","MainRoutes","CreateWidget","WidgetConfigStep","WidgetGuidesStep","MyWidget","CreateTikTokRoutes","isOnboarding","MyTikTokRoutes","useEffect","Promise","all","WidgetActionTS","OnStep","InstagramRoutes","MyInstagramRoutes","InstagramWidgetActionTS","FacebookLoginRedirect","FacebookContainer","async","hashParams","hash","substring","URL","origin","searchParams","resp","FacebookDeveloperAPI","GetSession","redirectUrl","access_token","widget_type","append","FacebookAccountType","BUSINESS","decodeURIComponent","search","intervalId","clearInterval","newWindow","TriggerEvent","Loader","NotFoundShopWrapper","NotFoundShopContent","NotFoundRoutes","NotFoundShop","RedirectFacebookLoginRoutes","NotFoundUrlRoutes","ThemeRoutes","tiktokWidgetReducer","isOnBoarding","useRoutes","EndpointManager","basename","useLocation","scrollTo","top","left","behavior","l","decoded","slice","split","s","replace","join","history","replaceState","String","prototype","format","args","this","match","Component","AppProvider","i18n","translations","features","newDesignLanguage","InspectPlugin","Init","script2","document","createElement","innerHTML","body","appendChild","PricingBannerPlan","setOpen","shopPricing","pricing","PricingScope","Basic","pendingUpgrade","setPendingUpgrade","wrapperRef","useRef","useOutsideAlerter","onCloseActive","PricingBannerStyled","ref","Stick","NotStick","Star","Advanced","_resp$Data","EventTrackingProvider","Track","ShopAPI","UpgradePricing","TrialDays","IsBillingMonthly","subscriptUrl","errorMsg","Error","SniperLoading","color","clipPath","fillRule","clipRule","withAppProvider","navigate","useNavigate","admin","isPending","setPending","_res$shopConfiguratio","_res$domain","_res$domain2","Get","shopConfiguration","timezone","localStorage","setItem","OnSetInformation","tiktokInfo","instagramInfo","GetWidgetsCount","GetInstagramCount","OnSetWidgetCount","ButtonWidgetActionTS","OnSetOptional","getShopCurrent","Suspense","fallback","NavigationScroll","Routes","Toaster","position","reverseOrder","gutter","containerClassName","containerStyle","toastOptions","duration","background","DataTableFunc","BuildPaging","pageIndex","pageNumber","expand","queryCustom","req","token","page","urlBuilt","ODataQuery","BuildODataQuery","response","BaseResponse","requestData","method","FetchDataFromServer","result","_result$OdataCount","reject","xs","xm","sxm","sm","bigLg","betweenLgToBigLg","lap","imgSize","innerHeight","funcQuery","toastId","toast","message","Guid","NewGuid","FacebookPixel","Discount","Background","ButtonTikTok","AddStoreGuide","LogoTikTok","LogoTikTok2","Templates","InsSlider","InsList","Slider","Carousel","List","Masonry","MobileList","MobileSlider","TiktokListMobile","TiktokSliderMobile","TiktokMasonryMobile","TiktokCarouselMobile","Battery","Video","Template","Template1","Template2","Template3","Template4","Template5","ButtonBasic","ButtonNext","ButtonPrev","VideoBackgroundGuides","Instagram","InstagramGuides","InstagramGuides2","InstagramVideoBackgroundGuides","GuidesGif","EventIdOrder","ADD_TO_CART","BUY_NOW","RootURL","ApiBase","instance","axios","baseURL","apiUrl","headers","nonTimezone","getItem","defaults","common","accessToken","replaceAll","refreshToken","withCredentials","AddData","err","_err$response","_errMessage$errors","errMessage","errors","errorMessage","_err$response2","code","resolve","AddEventFeatureComing","$crisp","push","events","eventtrigger","Array","isArray","Object","freeze","sw_business_account_login","sw_import_posts_help","sw_preview_loading","sw_display_post_help","sw_add_to_store","sw_login_questions","notUriKeys","GetUrlExtension","extension","pop","trim","InsertParameters","encodeURIComponent","kvp","substr","i","startsWith","pair","params","removeParam","queryString","urlOutput","paramUrlOutput","has","FormatURLImage","corsProxy","isEncodeURI","disableCorsProxy","RemoveURLParameter","parameter","urlparts","prefix","pars","lastIndexOf","splice","c","r","Math","random","toString","sleep","ms","setTimeout","queryParameters","skip","endpointBuilded","buildQuery","LinkRouter","bg","borderColor","Container","flexDirection","justifyContent","alignItems","mt","mr","mb","ml","pt","pr","pb","pl","_props$position","_props$gap","gap","_props$boxShadow","boxShadow","ContainerSection","_props$boxShadow2","_props$position2","_props$zIndex","zIndex","_ref2","_ref3","right","_ref4","bottom","FormStack","isCopy","_templateObject9","FormConfiguration","_templateObject10","ModalSectionStyled","_templateObject11","LabelForm","_templateObject12","LoginModal","_templateObject13","defaultPath","script","helperUrl","videoUrl","youtubeUrl","learnMoreUrl","linkButtonWidget","showItems","sliderShowItem","showUseSection","CORS_PROXY","FONT","SFProDispayFont","SFProTextFont","Guides","SCRIPTS","INSTAGRAM","TIKTOK","ONBOARDING","LinkHelperTiktok","LinkHelperInstagram","VideoTiktok","VideoInstagram","ImgVideoTiktok","ImgVideoInstagram","LinkTestApp","Image","Url","TestCrisp","LinkBrandMark","LimitVideos","Tracing","MIXPANEL_API_Key","InstalledDateVersion","useDeviceDetect","userAgent","navigator","Boolean","platform","URLSearchParams","onRender","handleClickOutside","event","current","contains","addEventListener","removeEventListener","StoreMajor","BuyButtonMajor","featureHighlight","HomeFilledMinor","instagram","ProductsMajor","enableFeatureHighlightUrl","instagramReel","maxWidth","constructor","dashboard","tikTok","buttonWidget","apps","LoginFunc","redirectUri","delete","set","PERSONAL","BusinessLoginFunc","sessionId","GetUserInfo","widgetId","isBusinessUser","ig_id","uri","uriAPi","SetItemGetmore","SetWidgetItemsManager","AddJob","Delete","GetById","GetByIds","widgetIds","widgets","valueSource","normalize","Create","Update","AddTagProducts","GetVideos","PostClick","TraceEventAddtoCartClick","EventId","TraceEventBuyNowClick","GetVideosByJob","userId","query","UpdateConfiguration","GetThemes","shopDomain","_response$Data$value","_response$Data","GetConfiguration","needLoginUsers","GetRecentCourses","_response$Data$value2","_response$Data2","GetPosts","startDate","Date","endDate","convertDateTimeByTimezone","GetBanners","GetDataAnalytics","dateRange","StartTime","EndTime","GetDiscount","voucher","DowngradePricing","source_tiktok","source_instagram","onboard_step1_completed","onboard_step2_completed","onboard_step3_completed","onboard_step4_completed","onboard_step4_support","my_widgets_guidance_next","my_widgets_guidance_skip","my_widgets_add_to_store","add_to_store_theme_editor","add_to_store_add_code","add_to_store_auto_add","home_page_instagram_reels","Onboard_TikTok_Login","Onboard_Instagram_Login","TikTok_Login","TikTok_Change_source","TikTok_Input_hashtag","Instagram_Login","Instagram_Change_source","Instagram_Input_hashtag","My_widget_current_username_disable_TikTok","My_widget_current_username_disable_Instagram","onboard_posts_next","onboard_posts_back","onboard_step2_back","onboard_step3_back","onboard_step4_back","onboard_theme_page","pricing_trial","pricing_promotion_code","_class","event_name","mixpanel","SetConfig","TrackWithContent","jsonContent","$name","$email","email","$phone","phone","shopify_plan","planName","app_installation_status","menuItem","ApplicationActEnum","MENU_TOGGLE","payload","MENU_MOBILE_TOGGLE","OnHandleChangeDateRange","SET_DATE_RANGE","options","ButtonWidgetActEnum","OPTION","InstagramWidgetActEnum","COUNT","SetWorkingSearch","isSearching","SEARCHING","RiseSequenceNumber","RISE_SEQUENCENUMBER","OnChangStatus","CHANGE_STATUS","STEP","OnSetTagProducts","products","isReplace","GET_TAG_PRODUCTS","ShopActEnum","INFORMATION","DESCRIPTOR","WidgetActEnum","PricingStyledWrapper","PricingNotifyStyled","PricingLimitProductStyled","PricingPromotionStyled"],"sourceRoot":""}