{"version":3,"sources":["webpack:///./src/Layout.module.less?c8d5","webpack:///./src/App.less?85f0","Layout.tsx","App.tsx"],"names":["makeItem","icon","title","link","color","enabled","usePageLocation","location","stripProjectFromRoute","useLocation","pathname","canonicalPath","split","ApplicationMenu","expanded","services","useServices","project","useProject","permissions","allPermissions","key","menuItems","KeyIcon","DbtCloudIcon","includes","ProjectPermission","MODIFY_CONFIG","GlobeIcon","f","enableCustomDomains","DownloadIcon","Wrapper","React","children","styles","sideBarContent_applicationMenu","filter","iterm","map","item","selected","features","selectedMenuItem","sideBarContent_item__withRightBorder","menuItem","fill","ApplicationSidebar","usePersistentState","setExpanded","sideBarContent","expandButton","abbr","user","name","part","length","join","toUpperCase","PageHeader","plan","classicProject","useState","dropdownVisible","setDropdownVisible","e","window","href","process","token","encodeURIComponent","logoNext","vis","DropdownMenu","hideMenu","history","useHistory","showSettings","push","email","activeProject","projectRoute","showProjectSwitchModal","billingEnabled","applicationConfiguration","billingUrl","userService","removeAuth","reloadPage","handleBillingMessage","params","get","error","success","message","duration","ApplicationPage","URLSearchParams","search","applicationPage","classNames","sidebar","rightbar","getUser","currentSubscription","applicationPageComponent","SlackChatWidget","popoverVisible","setPopoverVisible","upgradeDialogVisible","setUpgradeDialogVisible","useClickOutsideRef","popoverContentRef","buttonRef","disablePrivateChannelButton","currentPlan","id","isJitsuCloud","environment","isPrivateSupportAvailable","slackApiSercice","supportApiAvailable","handleUpgradeClick","handleJoinPublicChannel","analyticsService","track","open","handleJoinPrivateChannel","createPrivateSupportChannel","invitationUrl","Error","actionNotification","handleSupportEmailCopy","visible","EmailIsNotConfirmedMessage","messageKey","isSendingVerification","setIsSendingVerification","handleDestroyMessage","destroy","handleresendConfirmationLink","sendConfirmationEmail","emailHighlight","MESSAGE_KEY","emailIsNotConfirmedMessageConfig","type","content","ApiKeysRouter","lazy","CustomDomains","DestinationsPage","DbtCloudPage","ProjectSettingsPage","GeoDataResolver","EventsStream","SetupForm","SourcesPage","ConnectionsPage","ChangePasswordOnResetForm","DownloadConfig","initializeApplication","setDescription","ApplicationServices","init","loadPluginScript","waitForUser","hasUser","setDebugInfo","onUserKnown","initializeBilling","projectId","getCurrentSubscription","backendApiClient","destinationsStore","sourcesStore","hasUnpaidInvoices","subscriptionIsManagedByStripe","autorenew","expiration","moment","add","usage","events","sources","destinations","paymentPlans","opensource","quotaPeriodStart","doNotBlock","initializeProject","projects","find","JitsuPageViewTracker","useJitsu","analytics","useEffect","page","hash","Application","setServices","setProjects","undefined","setClassicProject","initialized","setInitialized","setError","useParams","preloaderText","setPreloader","jitsuNextUrl","jitsuNextEeUrl","eeClient","useMemo","getJitsuNextEeClient","description","application","projectService","getAvailableProjects","createProject","suggestedCompanyName","newProject","msg","console","log","createError","isAppVersionOutdated","isAppOutdated","warn","reload","className","SSOCallback","Preloader","onGlobalError","stack","jitsuHost","rawConfig","keys","jitsu","host","disabled","showSelfHostedSignUp","pageOf","LoginLink","pageTitle","LoginPage","SignupPage","component","opts","onPageLoad","pagePath","document","Component","projectRoutes","path","isPrefix","StatusPage","UserSettings","RouteNotFound","currentPageHeaderStore","setBreadcrumbs","tooltips","PageWrapper","rest","ProjectRoute","setProject","lastUsedProject","userSettingsService","Settings","ActiveProject","setProjectIdRedirectedFrom","replace","initializeAllStores","redirectedFromProjectId","getProjectIdRedirectedFrom","sessionStorage","removeItem","set","indexOf","requiresSetup","forcePasswordChange","ProjectRedirect","getItem","setItem"],"mappings":"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","file":"static/js/main~06837ae4.d70f56cf.chunk.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"box-shadow-base\":\"Layout_box-shadow-base__1iCBz\",\"border-debug\":\"Layout_border-debug__2Dn09\",\"font-heading\":\"Layout_font-heading__pCHyo\",\"font-monospace\":\"Layout_font-monospace__2lPNA\",\"ant-select-disabled\":\"Layout_ant-select-disabled__2ja-b\",\"ant-select\":\"Layout_ant-select__2F4i9\",\"ant-select-customize-input\":\"Layout_ant-select-customize-input__1aiD_\",\"ant-select-selector\":\"Layout_ant-select-selector__2grp1\",\"ant-input-number-disabled\":\"Layout_ant-input-number-disabled__1nvlk\",\"ant-select-item-option-selected\":\"Layout_ant-select-item-option-selected__cVt-Y\",\"ant-select-item-option-active\":\"Layout_ant-select-item-option-active__2Nmb-\",\"ant-dropdown-menu-submenu-active\":\"Layout_ant-dropdown-menu-submenu-active__305tI\",\"ant-dropdown-menu-submenu-title\":\"Layout_ant-dropdown-menu-submenu-title__2_p68\",\"ant-collapse-content-box\":\"Layout_ant-collapse-content-box__34bzp\",\"ant-card\":\"Layout_ant-card__38k7b\",\"ant-modal-content\":\"Layout_ant-modal-content__341L6\",\"ant-table-tbody\":\"Layout_ant-table-tbody__1SCg7\",\"ant-table-thead\":\"Layout_ant-table-thead__1_WGx\",\"ant-checkbox-inner\":\"Layout_ant-checkbox-inner__347jo\",\"ant-modal-header\":\"Layout_ant-modal-header__2oDcH\",\"ant-table\":\"Layout_ant-table__3nZXS\",\"ant-list-split\":\"Layout_ant-list-split__3rONY\",\"ant-list-header\":\"Layout_ant-list-header__3ADBx\",\"ant-tag\":\"Layout_ant-tag__32y_t\",\"ant-tooltip-inner\":\"Layout_ant-tooltip-inner__1zJLR\",\"ant-badge-status-processing\":\"Layout_ant-badge-status-processing__2sjE2\",\"ant-dropdown-menu-item-active\":\"Layout_ant-dropdown-menu-item-active__1X15R\",\"ant-dropdown\":\"Layout_ant-dropdown__3STdj\",\"ant-popover-inner\":\"Layout_ant-popover-inner__8yF4Z\",\"ant-popover-arrow\":\"Layout_ant-popover-arrow__2oGId\",\"ant-popover-placement-rightTop\":\"Layout_ant-popover-placement-rightTop__3Ck9m\",\"ant-popover-content\":\"Layout_ant-popover-content__3zWak\",\"ant-popover-placement-leftBottom\":\"Layout_ant-popover-placement-leftBottom__U2Gg0\",\"ant-popover-placement-bottomRight\":\"Layout_ant-popover-placement-bottomRight__2eZnt\",\"ant-popover-placement-top\":\"Layout_ant-popover-placement-top__2yrrd\",\"icon-size-base\":\"Layout_icon-size-base__BDSZd\",\"icon-size-lg\":\"Layout_icon-size-lg__3rUXF\",\"ant-tabs-card\":\"Layout_ant-tabs-card__36xUo\",\"ant-tabs-tab-active\":\"Layout_ant-tabs-tab-active__2xCoE\",\"ant-skeleton\":\"Layout_ant-skeleton__3HX-B\",\"ant-skeleton-paragraph\":\"Layout_ant-skeleton-paragraph__2leI8\",\"applicationPage\":\"Layout_applicationPage__2S5L3\",\"applicationPageComponent\":\"Layout_applicationPageComponent__KZWQj\",\"sidebar\":\"Layout_sidebar__3dYzQ\",\"rightbar\":\"Layout_rightbar__-QF_E\",\"coloredMenuItem\":\"Layout_coloredMenuItem__1MbNH\",\"menuItem\":\"Layout_menuItem__2ZM-Y\",\"selectedMenuItem\":\"Layout_selectedMenuItem__3rdCT\",\"sideBarContent\":\"Layout_sideBarContent__Vls5V\",\"sideBarContent_item__withRightBorder\":\"Layout_sideBarContent_item__withRightBorder__1La4o\",\"sideBarContent_applicationMenu\":\"Layout_sideBarContent_applicationMenu__1T5lT\",\"emailHighlight\":\"Layout_emailHighlight__2m6NX\",\"expandButton\":\"Layout_expandButton__1EEeM\"};","// extracted by mini-css-extract-plugin","// @Libs\nimport * as React from \"react\"\nimport { useState } from \"react\"\nimport { NavLink, useHistory, useLocation } from \"react-router-dom\"\nimport { Button, Dropdown, message, MessageArgsProps, Modal, notification, Popover, Tooltip } from \"antd\"\n// @Components\nimport { NotificationsWidget } from \"lib/components/NotificationsWidget/NotificationsWidget\"\nimport { BillingCurrentPlan } from \"lib/components/BillingCurrentPlan/BillingCurrentPlan\"\nimport { handleError } from \"lib/components/components\"\n// @Icons\nimport Icon, {\n ApiFilled,\n AreaChartOutlined,\n CloudFilled,\n HomeFilled,\n LogoutOutlined,\n InfoCircleOutlined,\n\n NotificationFilled,\n SettingOutlined,\n ThunderboltFilled,\n UserOutlined,\n} from \"@ant-design/icons\"\nimport { ReactComponent as JitsuLogo } from \"icons/logo-responsive.svg\"\nimport { ReactComponent as Cross } from \"icons/cross.svg\"\nimport { ReactComponent as DbtCloudIcon } from \"icons/dbtCloud.svg\"\nimport { ReactComponent as KeyIcon } from \"icons/key.svg\"\nimport { ReactComponent as DownloadIcon } from \"icons/download.svg\"\nimport { ReactComponent as GlobeIcon } from \"icons/globe.svg\"\nimport { ReactComponent as logoNext } from \"icons/logo-next.svg\"\n\nimport classNames from \"classnames\"\n// @Utils\nimport { reloadPage } from \"lib/commons/utils\"\n// @Services\nimport { useServices } from \"hooks/useServices\"\nimport { AnalyticsBlock } from \"lib/services/analytics\"\nimport { CurrentSubscription } from \"lib/services/billing\"\n// @Styles\nimport styles from \"./Layout.module.less\"\n// @Misc\nimport { FeatureSettings } from \"./lib/services/ApplicationServices\"\nimport { usePersistentState } from \"./hooks/usePersistentState\"\nimport { SupportOptions } from \"lib/components/SupportOptions/SupportOptions\"\nimport { actionNotification } from \"ui/components/ActionNotification/ActionNotification\"\nimport { useClickOutsideRef } from \"hooks/useClickOutsideRef\"\nimport { Breadcrumbs } from \"./ui/components/Breadcrumbs/Breadcrumbs\"\nimport ProjectLink, { projectRoute, stripProjectFromRoute } from \"./lib/components/ProjectLink/ProjectLink\"\nimport { ProjectPermission, User } from \"./generated/conf-openapi\"\nimport { showProjectSwitchModal } from \"./lib/components/ProjectSwitch/ProjectSwitch\"\nimport { BillingPlanOptionsModal } from \"lib/components/BillingPlanOptions/BillingPlanOptions\"\nimport EditOutlined from \"@ant-design/icons/lib/icons/EditOutlined\"\nimport useProject from \"./hooks/useProject\"\nimport { allPermissions } from \"./lib/services/permissions\"\nimport logo from \"./icons/logo.svg\";\nimport {ClassicProjectStatus} from \"./lib/services/jitsu-next-ee-client\";\n\ntype MenuItem = {\n icon: React.ReactNode\n title: React.ReactNode\n link: string\n color: string\n enabled: (f: FeatureSettings) => boolean\n}\n\nconst makeItem = (\n icon: React.ReactNode,\n title: React.ReactNode,\n link: string,\n color: string,\n enabled: (f: FeatureSettings) => boolean = () => true\n): MenuItem => {\n return { icon, title, link, color, enabled }\n}\n\nfunction usePageLocation(): string {\n const location = stripProjectFromRoute(useLocation().pathname)\n const canonicalPath = location === \"/\" || location === \"\" ? \"/connections\" : location\n return canonicalPath.split(\"/\")[1]\n}\n\nexport const ApplicationMenu: React.FC<{ expanded: boolean }> = ({ expanded }) => {\n const services = useServices()\n const project = useProject()\n const permissions: ProjectPermission[] = project.permissions || allPermissions\n const key = usePageLocation()\n const menuItems = [\n makeItem(, \"Home\", \"/connections\", \"#77c593\"),\n makeItem(, \"Live Events\", \"/events-stream\", \"#fccd04\"),\n makeItem(, \"Statistics\", \"/dashboard\", \"#88bdbc\"),\n makeItem(, \"API Keys\", \"/api-keys\", \"#d79922\"),\n makeItem(, \"Sources\", \"/sources\", \"#d83f87\"),\n makeItem(, \"Destinations\", \"/destinations\", \"#4056a1\"),\n makeItem(, \"dbt Cloud Integration\", \"/dbtcloud\", \"#e76e52\"),\n permissions.includes(ProjectPermission.MODIFY_CONFIG) &&\n makeItem(, \"Project settings\", \"/project-settings\", \"#0d6050\"),\n makeItem(, \"Geo data resolver\", \"/geo-data-resolver\", \"#41b3a3\"),\n permissions.includes(ProjectPermission.MODIFY_CONFIG) &&\n makeItem(, \"Custom Domains\", \"/domains\", \"#5ab9ea\", f => f.enableCustomDomains),\n permissions.includes(ProjectPermission.MODIFY_CONFIG) &&\n makeItem(, \"Download Config\", \"/cfg-download\", \"#14a76c\"),\n ]\n const Wrapper = React.useMemo>(\n () =>\n expanded\n ? ({ children }) => <>{children}\n : ({ title, children }) => (\n \n {children}\n \n ),\n [expanded]\n )\n\n return (\n
\n {menuItems\n .filter(iterm => !!iterm)\n .map(item => {\n const selected = item.link === \"/\" + key\n const enabled = item.enabled(services.features)\n return (\n enabled && (\n \n \n \n {item.icon}\n {expanded && {item.title}}\n
\n \n \n )\n )\n })}\n \n )\n}\n\nexport const ApplicationSidebar: React.FC<{}> = () => {\n const [expanded, setExpanded] = usePersistentState(true, \"jitsu_menuExpanded\")\n\n return (\n
\n
\n
\n \n \n \n
\n
\n \n
\n setExpanded(!expanded)}\n >\n \n \n \n \n \n \n }\n >\n {expanded ? {\"Minimize Sidebar\"} : null}\n \n
\n
\n \n )\n}\n\nexport type PageHeaderProps = {\n user: User\n plan: CurrentSubscription\n classicProject: ClassicProjectStatus\n}\n\nfunction abbr(user: User) {\n return user.name\n ?.split(\" \")\n .filter(part => part.length > 0)\n .map(part => part[0])\n .join(\"\")\n .toUpperCase()\n}\n\nexport const PageHeader: React.FC = ({ plan, user, classicProject, children }) => {\n const [dropdownVisible, setDropdownVisible] = useState(false)\n return (\n
\n
\n
{children}
\n
\n
\n {/*{nextJitsu && {window.location.href=`${process.env.JITSU_NEXT_URL}?token=${nextJitsu}`}} className={\"cursor-pointer\"}>Jitsu Next  is available. Try it out now!}*/}\n {classicProject && \n What is Jitsu Next?\n

\n Jitsu Next is a new version of Jitsu with new user interface and faster,\n better scalable backend.\n

\n Learn more\n
} >\n {window.location.href=`${process.env.JITSU_NEXT_URL}?token=${classicProject.token}&projectName=${encodeURIComponent(classicProject.name)}&utm_source=classic&utm_campaign=click`}} className={\"cursor-pointer\"}>\n Switch to Jitsu Next, a new version of Jitsu Platform\n \n }\n
\n
\n \n
\n
\n setDropdownVisible(false)} />}\n onVisibleChange={vis => setDropdownVisible(vis)}\n >\n \n {abbr(user) || }\n \n \n
\n \n )\n}\n\nexport const DropdownMenu: React.FC<{ user: User; plan: CurrentSubscription; hideMenu: () => void }> = ({\n plan,\n user,\n hideMenu,\n}) => {\n const services = useServices()\n const history = useHistory()\n\n const showSettings = React.useCallback<() => void>(() => history.push(\"/user/settings\"), [history])\n\n return (\n
\n
\n
{user.name}
\n
{user.email}
\n
\n
\n
\n {services.activeProject?.name && (\n <>\n {services.activeProject.name}{\" \"}\n }\n onClick={() => {\n hideMenu()\n history.push(projectRoute(\"/project-settings\"))\n }}\n />\n \n )}\n
\n {\n hideMenu()\n showProjectSwitchModal()\n }}\n >\n Switch project\n \n
\n
\n
\n {services.features.billingEnabled && services.applicationConfiguration.billingUrl && (\n
\n \n
\n )}\n
\n \n }\n onClick={() => services.userService.removeAuth(reloadPage)}\n >\n Logout\n \n
\n
\n )\n}\n\nfunction handleBillingMessage(params) {\n if (!params.get(\"billingMessage\")) {\n return\n }\n\n ;(params.get(\"billingStatus\") === \"error\" ? notification.error : notification.success)({\n message: params.get(\"billingMessage\"),\n duration: 5,\n })\n}\n\nexport const ApplicationPage: React.FC<{classicProject: ClassicProjectStatus}> = ({ classicProject, children }) => {\n const services = useServices()\n handleBillingMessage(new URLSearchParams(useLocation().search))\n return (\n
\n
\n \n
\n
\n \n \n \n
{children}
\n
\n
\n )\n}\n\nexport const SlackChatWidget: React.FC<{}> = () => {\n const services = useServices()\n const [popoverVisible, setPopoverVisible] = useState(false)\n const [upgradeDialogVisible, setUpgradeDialogVisible] = useState(false)\n\n const [popoverContentRef, buttonRef] = useClickOutsideRef(() => {\n setPopoverVisible(false)\n })\n\n const disablePrivateChannelButton: boolean = services.currentSubscription?.currentPlan?.id === \"free\"\n const isJitsuCloud: boolean = services.features.environment === \"jitsu_cloud\"\n const isPrivateSupportAvailable: boolean = services.slackApiSercice?.supportApiAvailable\n\n const handleUpgradeClick = () => {\n setPopoverVisible(false)\n setUpgradeDialogVisible(true)\n }\n\n const handleJoinPublicChannel = React.useCallback(() => {\n services.analyticsService.track(\"support_slack_public\")\n window.open(\"https://jitsu.com/slack\", \"_blank\")\n }, [])\n\n const handleJoinPrivateChannel = React.useCallback(async () => {\n services.analyticsService.track(\"support_slack_private\")\n try {\n const invitationUrl = await services.slackApiSercice?.createPrivateSupportChannel(\n services.activeProject.id,\n services.activeProject.name\n )\n window.open(invitationUrl, \"_blank\")\n } catch (_error) {\n const error = _error instanceof Error ? _error : new Error(_error)\n actionNotification.error(\n `Failed to join a private channel due to internal error. Please, contact support via email or file an issue. Description:\\n${error}`\n )\n services.analyticsService.track(\"support_slack_private_error\", error)\n }\n }, [])\n\n const handleSupportEmailCopy = React.useCallback(() => {\n services.analyticsService.track(\"support_email_copied\")\n }, [])\n\n return (\n <>\n \n \n Upgrade\n \n {\" to use this feature\"}\n \n ) : null\n }\n onPublicChannelClick={handleJoinPublicChannel}\n onPrivateChannelClick={handleJoinPrivateChannel}\n onEmailCopyClick={handleSupportEmailCopy}\n />\n }\n >\n {\n services.analyticsService.track(\"slack_invitation_open\")\n setPopoverVisible(visible => !visible)\n }}\n className=\"fixed bottom-5 right-5 rounded-full bg-primary text-text w-12 h-12 flex justify-center items-center cursor-pointer hover:bg-primaryHover\"\n >\n \n \n \n \n \n \n \n \n \n \n \n \n {\n setUpgradeDialogVisible(false)\n }}\n visible={upgradeDialogVisible}\n />\n \n )\n}\n\nconst EmailIsNotConfirmedMessage: React.FC<{ messageKey: React.Key }> = ({ messageKey }) => {\n const services = useServices()\n const [isSendingVerification, setIsSendingVerification] = useState(false)\n\n const handleDestroyMessage = () => message.destroy(messageKey)\n const handleresendConfirmationLink = async () => {\n setIsSendingVerification(true)\n try {\n await services.userService.sendConfirmationEmail()\n } finally {\n setIsSendingVerification(false)\n }\n handleDestroyMessage()\n }\n return (\n \n \n {\"Email \"}\n {services.userService.getUser()?.email ? (\n {services.userService.getUser()?.email}\n ) : (\n \"\"\n )}\n \n {` is not verified. Please, follow the instructions in your email\n to complete the verification process.`}\n \n \n \n \n \n \n \n )\n}\n\nconst MESSAGE_KEY = \"email-not-confirmed-message\"\n\nexport const emailIsNotConfirmedMessageConfig: MessageArgsProps = {\n type: \"error\",\n key: MESSAGE_KEY,\n duration: null,\n icon: <>{null},\n content: ,\n}\n","// @Libs\nimport React, {ComponentType, ExoticComponent, useEffect, useMemo, useState} from \"react\"\nimport {NavLink, Redirect, Route, Switch, useHistory, useLocation} from \"react-router-dom\"\nimport { Button, Card, Typography } from \"antd\"\nimport { useParams } from \"react-router\"\nimport moment from \"moment\"\nimport { JitsuProvider, useJitsu } from \"@jitsu/jitsu-react\"\n// @Services\nimport ApplicationServices from \"./lib/services/ApplicationServices\"\nimport { CurrentSubscription, getCurrentSubscription, paymentPlans } from \"lib/services/billing\"\n// @Stores\nimport { initializeAllStores } from \"stores/_initializeAllStores\"\nimport { currentPageHeaderStore } from \"./stores/currentPageHeader\"\nimport { destinationsStore } from \"./stores/destinations\"\nimport { sourcesStore } from \"./stores/sources\"\n// @Components\nimport { ApplicationPage, SlackChatWidget } from \"./Layout\"\nimport { CenteredSpin, Preloader } from \"./lib/components/components\"\nimport { actionNotification } from \"ui/components/ActionNotification/ActionNotification\"\nimport { SetNewPasswordModal } from \"lib/components/SetNewPasswordModal/SetNewPasswordModal\"\nimport { BillingGlobalGuard } from \"lib/components/BillingGlobalGuard/BillingGlobalGuard\"\nimport { OnboardingTourLazyLoader } from \"./lib/components/Onboarding/OnboardingTourLazyLoader\"\nimport { ErrorCard } from \"./lib/components/ErrorCard/ErrorCard\"\nimport { LoginLink } from \"./lib/components/LoginLink/LoginLink\"\n// @Icons\nimport { ExclamationCircleOutlined, ReloadOutlined } from \"@ant-design/icons\"\n// @Hooks\nimport { useServices } from \"./hooks/useServices\"\n// @Utils\nimport { createError, reloadPage, setDebugInfo } from \"./lib/commons/utils\"\n// @Types\nimport { Project, ProjectWithPermissions } from \"./generated/conf-openapi\"\n// @Pages\nimport LoginPage from \"./ui/pages/GetStartedPage/LoginPage\"\nimport SignupPage from \"./ui/pages/GetStartedPage/SignupPage\"\nimport { StatusPage } from \"./lib/components/StatusPage/StatusPage\"\nimport { SSOCallback } from \"./lib/components/SSOCallback/SSOCallback\"\nimport { UserSettings } from \"./lib/components/UserSettings/UserSettings\"\nimport { Settings } from \"./lib/services/UserSettingsService\"\n\n// @Styles\nimport \"./App.less\"\nimport {ClassicProjectStatus, getJitsuNextEeClient} from \"./lib/services/jitsu-next-ee-client\";\n// @Unsorted\n\nconst ApiKeysRouter = React.lazy(() => import(/* webpackPrefetch: true */ \"./lib/components/ApiKeys/ApiKeysRouter\"))\nconst CustomDomains = React.lazy(\n () => import(/* webpackPrefetch: true */ \"./lib/components/CustomDomains/CustomDomains\")\n)\nconst DestinationsPage = React.lazy(\n () => import(/* webpackPrefetch: true */ \"ui/pages/DestinationsPage/DestinationsPage\")\n)\nconst DbtCloudPage = React.lazy(() => import(/* webpackPrefetch: true */ \"ui/pages/DbtCloud/DbtCloudPage\"))\nconst ProjectSettingsPage = React.lazy(\n () => import(/* webpackPrefetch: true */ \"ui/pages/ProjectSettingsPage/ProjectSettingsPage\")\n)\nconst GeoDataResolver = React.lazy(\n () => import(/* webpackPrefetch: true */ \"./lib/components/GeoDataResolver/GeoDataResolver\")\n)\n\nconst EventsStream = React.lazy(() => import(/* webpackPrefetch: true */ \"./lib/components/EventsStream/EventsStream\"))\nconst SetupForm = React.lazy(() => import(/* webpackPrefetch: true */ \"ui/pages/SetupPage/SetupForm\"))\nconst SourcesPage = React.lazy(() => import(/* webpackPrefetch: true */ \"ui/pages/SourcesPage/SourcesPage\"))\nconst ConnectionsPage = React.lazy(() => import(/* webpackPrefetch: true */ \"ui/pages/ConnectionsPage/ConnectionsPage\"))\nconst ChangePasswordOnResetForm = React.lazy(\n () => import(/* webpackPrefetch: true */ \"./lib/components/ChangePasswordOnResetForm/ChangePasswordOnResetForm\")\n)\nconst DownloadConfig = React.lazy(\n () => import(/* webpackPrefetch: true */ \"./lib/components/DownloadConfig/DownloadConfig\")\n)\n\nexport const initializeApplication = async (setDescription: (d: string) => void, location: any): Promise => {\n const services = ApplicationServices.get()\n await services.init()\n await services.loadPluginScript()\n setDescription(\"Authenticating...\")\n await services.userService.waitForUser(new URLSearchParams(location.search).get(\"token\"))\n if (services.userService.hasUser()) {\n setDebugInfo(\"user\", services.userService.getUser())\n services.analyticsService.onUserKnown(services.userService.getUser())\n }\n return services\n}\n\nconst initializeBilling = async (services: ApplicationServices, projectId: string) => {\n let currentSubscription: CurrentSubscription\n if (services.userService.hasUser() && services.features.billingEnabled && projectId) {\n currentSubscription = await getCurrentSubscription(\n projectId,\n services.backendApiClient,\n destinationsStore,\n sourcesStore\n )\n } else {\n currentSubscription = {\n hasUnpaidInvoices: false,\n subscriptionIsManagedByStripe: false,\n autorenew: false,\n expiration: moment().add(1, \"M\"),\n usage: {\n events: 0,\n sources: 0,\n destinations: 0,\n },\n currentPlan: paymentPlans.opensource,\n quotaPeriodStart: moment(),\n doNotBlock: true,\n }\n }\n services.currentSubscription = currentSubscription\n}\n\nconst initializeProject = async (\n projectId: string,\n projects: ProjectWithPermissions[]\n): Promise => {\n const project = projects.find(project => project.id === projectId) ?? null\n if (project) {\n const services = ApplicationServices.get()\n services.activeProject = project\n }\n return project\n}\n\nconst JitsuPageViewTracker: React.FC<{}> = () => {\n const { analytics } = useJitsu()\n const location = useLocation()\n useEffect(() => {\n analytics.page()\n }, [location.pathname, location.search, location.hash])\n return <>\n}\n\nexport const Application: React.FC = function () {\n const [services, setServices] = useState(null)\n const [projects, setProjects] = useState(null)\n const [classicProject, setClassicProject] = useState(undefined)\n const [initialized, setInitialized] = useState(false)\n const [error, setError] = useState()\n const { projectId } = useParams<{ projectId: string }>()\n const location = useLocation()\n\n const [preloaderText, setPreloader] = useState(\"Loading application, please be patient...\")\n\n const jitsuNextUrl = process.env.JITSU_NEXT_URL\n const jitsuNextEeUrl = process.env.JITSU_NEXT_EE_URL\n const eeClient = useMemo(() => jitsuNextEeUrl ? getJitsuNextEeClient(jitsuNextEeUrl) : undefined,\n [jitsuNextEeUrl]);\n const user = services && services.userService.hasUser() ? services.userService.getUser() : undefined\n\n useEffect(() => {\n if (process.env.FIREBASE_CONFIG && jitsuNextUrl && eeClient && user) {\n (async () => {\n let initialized = !!services;\n try {\n const classicProject = await eeClient.checkClassicProject();\n if (!classicProject.ok) {\n console.error(\"Classic project check error\", classicProject);\n return;\n }\n console.log(\"Classic project\", classicProject);\n const customToken = await eeClient.createCustomToken();\n classicProject.token = customToken;\n // if (!classicProject.active) {\n // window.location.href = jitsuNextUrl + \"?token=\" + customToken + \"&projectName=\" + encodeURIComponent(classicProject.name) + \"&utm_source=classic&utm_campaign=auto-migration\"\n // initialized = false;\n // return;\n // } else {\n setClassicProject(classicProject);\n //}\n } catch (e) {\n console.error(\"Can't check for classic project\", e);\n } finally {\n setInitialized(initialized)\n }\n })()\n } else if (services) {\n setInitialized(true)\n }\n },[jitsuNextUrl, eeClient, user, services])\n\n useEffect(() => {\n if (location.pathname !== \"/sso_callback\") {\n ;(async () => {\n try {\n const application = await initializeApplication(description => {\n setPreloader(description)\n }, location)\n if (application.userService.hasUser()) {\n const projects = await application.projectService.getAvailableProjects()\n if (projects.length === 0) {\n if (jitsuNextUrl) {\n window.location.href = jitsuNextUrl\n return <>\n } else {\n const newProject = await application.projectService.createProject(\n application.userService.getUser().suggestedCompanyName\n )\n setProjects([newProject])\n }\n } else {\n setProjects(projects)\n }\n }\n setServices(application)\n } catch (e) {\n const msg = `Can't initialize application with backend ${\n process.env.BACKEND_API_BASE || \" (BACKEND_API_BASE is not set)\"\n }: ${e?.message || \"unknown error\"}`\n console.log(msg, e)\n setError(createError(msg, e))\n }\n })()\n } else {\n console.log(\"Skipping initialization because of sso_callback\")\n }\n }, [projectId])\n\n useEffect(() => {\n if (location.pathname !== \"/sso_callback\") {\n ;(async () => {\n const isAppOutdated = await services?.isAppVersionOutdated()\n if (isAppOutdated) {\n actionNotification.warn(\n <>\n New version of Jitsu available! Please reload the page to get the latest update.\n
\n }\n onClick={() => window.location.reload()}\n >\n Reload\n {\" \"}\n ,\n { duration: 0, className: \"app-update-notice box-shadow-base\" }\n )\n }\n })()\n } else {\n console.log(\"Skipping version check because of sso_callback\")\n }\n }, [location, services])\n\n if (!error && !initialized) {\n return (\n \n \n \n \n \n )\n } else if (error) {\n console.error(\"Initialization error\", error)\n if (services?.analyticsService) {\n services.analyticsService.onGlobalError(error, true)\n } else {\n console.error(\"Failed to send error to analytics service, it's not defined yet\")\n }\n return (\n
\n
\n \n
\n
\n )\n }\n\n const jitsuHost = services.applicationConfiguration.rawConfig.keys.jitsu\n if (!services.userService.hasUser()) {\n return (\n }>\n \n \n {services.showSelfHostedSignUp() && }\n {!services.showSelfHostedSignUp() && (\n \n \n \n \n \n \n \n \n )}\n \n \n )\n }\n\n return (\n <>\n \n \n \n (\n
\n
\n \n \n \n\n \n
\n
\n )}\n />\n \n \n \n \n \n \n
\n
\n \n )\n}\n\n/**\n * Component decorator that enables analytics services and sets a correct document title\n */\nfunction pageOf(component: React.ComponentType, opts: { pageTitle: string }) {\n return page => {\n ApplicationServices.get().analyticsService.onPageLoad({\n pagePath: page.location.key || \"/unknown\",\n })\n document[\"title\"] = opts.pageTitle\n const Component = component as ExoticComponent\n return \n }\n}\n\ntype ProjectRouteData = {\n pageTitle: string\n path: string | string[]\n component: React.ComponentType\n isPrefix?: boolean\n}\n\nconst projectRoutes: ProjectRouteData[] = [\n { pageTitle: \"Connections\", path: [\"/\", \"/connections\", \"/signup\"], component: ConnectionsPage },\n { pageTitle: \"Live Events\", path: [\"/events_stream\", \"/events-stream\"], component: EventsStream, isPrefix: true },\n { pageTitle: \"Dashboard\", path: \"/dashboard\", component: StatusPage },\n { pageTitle: \"DBT Cloud\", path: \"/dbtcloud\", component: DbtCloudPage },\n { pageTitle: \"Dashboard\", path: [\"/geo_data_resolver\", \"/geo-data-resolver\"], component: GeoDataResolver },\n { pageTitle: \"Config Download\", path: [\"/cfg-download\", \"/cfg_download\"], component: DownloadConfig },\n { pageTitle: \"Project Settings\", path: [\"/project-settings\", \"/project_settings\"], component: ProjectSettingsPage },\n { pageTitle: \"Api Keys\", path: [\"/api-keys\"], component: ApiKeysRouter, isPrefix: true },\n { pageTitle: \"Custom Domains\", path: \"/domains\", component: CustomDomains },\n\n { pageTitle: \"Sources\", path: \"/sources\", component: SourcesPage, isPrefix: true },\n { pageTitle: \"Destinations\", path: \"/destinations\", component: DestinationsPage, isPrefix: true },\n\n { pageTitle: \"User Settings\", path: \"/settings/user\", component: UserSettings, isPrefix: true },\n]\n\nconst RouteNotFound: React.FC = () => {\n useEffect(() => {\n currentPageHeaderStore.setBreadcrumbs(\"Not found\")\n })\n return (\n
\n \n \n This page does not exist. If you got here by clicking a link within Jitsu interface, try to contact us:{\" \"}\n \n {\"support@jitsu.com\"}\n \n \n }\n avatar={\n \n \n \n }\n title={\"Page Not Found\"}\n />\n \n
\n )\n}\n\nconst PageWrapper: React.FC<{ pageTitle: string; component: ComponentType; pagePath: string }> = ({\n pageTitle,\n component,\n pagePath,\n ...rest\n}) => {\n const services = useServices()\n useEffect(() => {\n services.analyticsService.onPageLoad({\n pagePath: pagePath,\n })\n document[\"title\"] = `Jitsu: ${pageTitle}`\n currentPageHeaderStore.setBreadcrumbs(pageTitle)\n }, [])\n const Component = component as ExoticComponent\n return (\n }>\n \n \n )\n}\n\nconst ProjectRoute: React.FC<{ projects: Project[], classicProject: ClassicProjectStatus }> = ({ projects, classicProject }) => {\n const services = useServices()\n const [initialized, setInitialized] = useState(false)\n const [error, setError] = useState(undefined)\n const [project, setProject] = useState()\n const { projectId } = useParams<{ projectId: string }>()\n\n useEffect(() => {\n setInitialized(false)\n ;(async () => {\n let project = await initializeProject(projectId, projects)\n if (!project) {\n if (!projects || projects.length === 0) {\n services.userService.removeAuth(reloadPage)\n }\n const lastUsedProject = services.userSettingsService.get(Settings.ActiveProject)?.id || projects[0]?.id\n setProjectIdRedirectedFrom(projectId)\n window.location.replace(window.location.href.replace(projectId, lastUsedProject))\n return\n }\n setProject(project)\n try {\n await initializeAllStores(services.analyticsService)\n await initializeBilling(services, projectId)\n setInitialized(true)\n } catch (e) {\n setError(e)\n }\n })()\n }, [projectId])\n\n /** Show a message to user if they were redirected from a different project */\n useEffect(() => {\n const redirectedFromProjectId = getProjectIdRedirectedFrom()\n if (redirectedFromProjectId && project?.name) {\n window.sessionStorage.removeItem(\"redirectedFromProjectId\")\n actionNotification.warn(\n <>\n Project with ID {redirectedFromProjectId} not found. Redirected to {project.name} project.\n \n )\n }\n }, [])\n\n /** Saves the last successfully initialized project to local storage */\n useEffect(() => {\n if (initialized && !error && project?.id) {\n services.userSettingsService.set({ [Settings.ActiveProject]: project })\n }\n }, [error, initialized, project?.id])\n\n if (!error && !initialized) {\n return \n } else if (error) {\n return (\n
\n \n
\n )\n }\n\n return (\n <>\n \n \n {projectRoutes.map(({ component, pageTitle, path, isPrefix }) => (\n \n path.indexOf(\"/prj-\") >= 0 ? path : `/prj-:projectId${path}`\n )}\n render={page => (\n \n )}\n key={`${path}-${pageTitle}`}\n />\n ))}\n \n \n \n \n \n \n \n {project.requiresSetup && }\n {services.userService.getUser().forcePasswordChange && (\n reloadPage()} />\n )}\n \n )\n}\n\nconst ProjectRedirect: React.FC<{ projects: Project[] }> = ({ projects }) => {\n const location = useLocation()\n const services = useServices()\n const lastUsedProject = services.userSettingsService.get(Settings.ActiveProject)?.id\n if (!projects?.length) {\n return \n }\n return \n}\n\nfunction getProjectIdRedirectedFrom(): string | null | undefined {\n return window.sessionStorage.getItem(\"redirectedFromProjectId\")\n}\n\nfunction setProjectIdRedirectedFrom(id: string): void {\n window.sessionStorage.setItem(\"redirectedFromProjectId\", id)\n}\n"],"sourceRoot":""}