diff --git a/frontend/app/PrivateRoutes.tsx b/frontend/app/PrivateRoutes.tsx index 5ddcf8ee4..b9d2cb247 100644 --- a/frontend/app/PrivateRoutes.tsx +++ b/frontend/app/PrivateRoutes.tsx @@ -18,11 +18,6 @@ const components: any = { AssistPure: lazy(() => import('Components/Assist/AssistRouter')), SessionsOverviewPure: lazy(() => import('Components/Overview')), DashboardPure: lazy(() => import('Components/Dashboard/NewDashboard')), - FunnelDetailsPure: lazy(() => import('Components/Funnels/FunnelDetails')), - FunnelIssueDetails: lazy( - () => import('Components/Funnels/FunnelIssueDetails') - ), - FunnelPagePure: lazy(() => import('Components/Funnels/FunnelPage')), MultiviewPure: lazy(() => import('Components/Session_/Multiview/Multiview')), UsabilityTestingPure: lazy( () => import('Components/UsabilityTesting/UsabilityTesting') @@ -47,9 +42,6 @@ const enhancedComponents: any = { Assist: withSiteIdUpdater(components.AssistPure), Client: withSiteIdUpdater(components.ClientPure), Onboarding: withSiteIdUpdater(components.OnboardingPure), - FunnelPage: withSiteIdUpdater(components.FunnelPagePure), - FunnelsDetails: withSiteIdUpdater(components.FunnelDetailsPure), - FunnelIssue: withSiteIdUpdater(components.FunnelIssueDetails), Multiview: withSiteIdUpdater(components.MultiviewPure), UsabilityTesting: withSiteIdUpdater(components.UsabilityTestingPure), UsabilityTestEdit: withSiteIdUpdater(components.UsabilityTestEditPure), @@ -85,9 +77,6 @@ const FFLAG_READ_PATH = routes.fflagRead(); const NOTES_PATH = routes.notes(); const BOOKMARKS_PATH = routes.bookmarks(); const RECORDINGS_PATH = routes.recordings(); -const FUNNEL_PATH = routes.funnels(); -const FUNNEL_CREATE_PATH = routes.funnelsCreate(); -const FUNNEL_ISSUE_PATH = routes.funnelIssue(); const SESSION_PATH = routes.session(); const CLIENT_PATH = routes.client(); const ONBOARDING_PATH = routes.onboarding(); @@ -246,24 +235,6 @@ function PrivateRoutes() { path={withSiteId(HIGHLIGHTS_PATH, siteIdList)} component={enhancedComponents.Highlights} /> - - - void, @@ -35,17 +35,15 @@ function ChatControls({ stream, endCall, videoEnabled, setVideoEnabled, isPresta return (
-
+
-
-
diff --git a/frontend/app/components/Assist/RecordingsList/EditRecordingModal.tsx b/frontend/app/components/Assist/RecordingsList/EditRecordingModal.tsx index 7be5b1dca..6c654d249 100644 --- a/frontend/app/components/Assist/RecordingsList/EditRecordingModal.tsx +++ b/frontend/app/components/Assist/RecordingsList/EditRecordingModal.tsx @@ -1,6 +1,7 @@ import { useObserver } from 'mobx-react-lite'; import React from 'react'; -import { Button, Modal, Form, Icon, Input } from 'UI'; +import { Modal, Form, Icon, Input } from 'UI'; +import { Button } from 'antd' interface Props { show: boolean; @@ -57,7 +58,7 @@ function EditRecordingModal(props: Props) {
{WIN_VARIANTS[windowType].text} -
diff --git a/frontend/app/components/Assist/components/AssistActions/AssistActions.tsx b/frontend/app/components/Assist/components/AssistActions/AssistActions.tsx index 80a49bedd..40281b8a9 100644 --- a/frontend/app/components/Assist/components/AssistActions/AssistActions.tsx +++ b/frontend/app/components/Assist/components/AssistActions/AssistActions.tsx @@ -1,5 +1,5 @@ import React, { useState, useEffect } from 'react'; -import { Button, Tooltip } from 'UI'; +import { Button } from 'antd'; import cn from 'classnames'; import ChatWindow from '../../ChatWindow'; import { CallingState, ConnectionStatus, RemoteControlStatus, RequestLocalStream } from 'Player'; @@ -7,7 +7,7 @@ import type { LocalStream } from 'Player'; import { PlayerContext, ILivePlayerContext } from 'App/components/Session/playerContext'; import { observer } from 'mobx-react-lite'; import { toast } from 'react-toastify'; -import { confirm } from 'UI'; +import { confirm, Icon, Tooltip } from 'UI'; import stl from './AassistActions.module.css'; import ScreenRecorder from 'App/components/Session_/ScreenRecorder/ScreenRecorder'; import { audioContextManager } from 'App/utils/screenRecorder'; @@ -213,9 +213,10 @@ function AssistActions({ role="button" > @@ -238,8 +239,9 @@ function AssistActions({ role="button" >
diff --git a/frontend/app/components/Client/CustomFields/ListItem.js b/frontend/app/components/Client/CustomFields/ListItem.js index 9c38e12e9..00c484c6e 100644 --- a/frontend/app/components/Client/CustomFields/ListItem.js +++ b/frontend/app/components/Client/CustomFields/ListItem.js @@ -1,6 +1,7 @@ import React from 'react'; import cn from 'classnames'; -import { Button } from 'UI'; +import { Icon } from 'UI'; +import { Button } from 'antd'; import styles from './listItem.module.css'; const ListItem = ({ field, onEdit, disabled }) => { @@ -17,7 +18,7 @@ const ListItem = ({ field, onEdit, disabled }) => { > {field.key}
-
); diff --git a/frontend/app/components/Client/Integrations/IntegrationForm.tsx b/frontend/app/components/Client/Integrations/IntegrationForm.tsx index 250d5fc08..cdb589429 100644 --- a/frontend/app/components/Client/Integrations/IntegrationForm.tsx +++ b/frontend/app/components/Client/Integrations/IntegrationForm.tsx @@ -3,7 +3,8 @@ import React from 'react'; import { useStore } from 'App/mstore'; import { namedStore } from 'App/mstore/integrationsStore'; -import { Button, Checkbox, Form, Input, Loader } from 'UI'; +import { Checkbox, Form, Input, Loader } from 'UI'; +import { Button } from 'antd' import { toast } from 'react-toastify'; function IntegrationForm(props: any) { @@ -97,7 +98,7 @@ function IntegrationForm(props: any) { onClick={save} disabled={!config?.validate()} loading={loading} - variant="primary" + type="primary" className="float-left mr-2" > {config?.exists() ? 'Update' : 'Add'} diff --git a/frontend/app/components/Client/Integrations/SlackAddForm/SlackAddForm.js b/frontend/app/components/Client/Integrations/SlackAddForm/SlackAddForm.js index b8cdc1981..79feddbc3 100644 --- a/frontend/app/components/Client/Integrations/SlackAddForm/SlackAddForm.js +++ b/frontend/app/components/Client/Integrations/SlackAddForm/SlackAddForm.js @@ -1,6 +1,6 @@ import React from 'react'; -import { Form, Input, Button, Message } from 'UI'; -import { confirm } from 'UI'; +import { Form, Input, Message, confirm } from 'UI'; +import { Button } from 'antd' import { observer } from 'mobx-react-lite' import { useStore } from 'App/mstore' @@ -73,7 +73,7 @@ function SlackAddForm(props) { onClick={save} disabled={!instance.validate()} loading={saving} - variant="primary" + type="primary" className="float-left mr-2" > {instance.exists() ? 'Update' : 'Add'} diff --git a/frontend/app/components/Client/Integrations/SlackForm.tsx b/frontend/app/components/Client/Integrations/SlackForm.tsx index 43a720da4..4c7e97209 100644 --- a/frontend/app/components/Client/Integrations/SlackForm.tsx +++ b/frontend/app/components/Client/Integrations/SlackForm.tsx @@ -1,7 +1,8 @@ import React, { useEffect } from 'react'; import SlackChannelList from './SlackChannelList/SlackChannelList'; import SlackAddForm from './SlackAddForm'; -import { Button } from 'UI'; +import { Icon } from 'UI'; +import { Button } from 'antd'; import { observer } from 'mobx-react-lite' import { useStore } from 'App/mstore' @@ -34,7 +35,7 @@ const SlackForm = () => {

Slack

-
diff --git a/frontend/app/components/Client/Integrations/Teams/TeamsAddForm.tsx b/frontend/app/components/Client/Integrations/Teams/TeamsAddForm.tsx index 0f4b2fb1d..9341b08ef 100644 --- a/frontend/app/components/Client/Integrations/Teams/TeamsAddForm.tsx +++ b/frontend/app/components/Client/Integrations/Teams/TeamsAddForm.tsx @@ -2,8 +2,8 @@ import { observer } from 'mobx-react-lite'; import React from 'react'; import { useStore } from 'App/mstore'; -import { Button, Form, Input, Message } from 'UI'; -import { confirm } from 'UI'; +import { confirm, Form, Input, Message } from 'UI'; +import { Button } from 'antd' interface Props { onClose: () => void; @@ -83,7 +83,7 @@ function TeamsAddForm({ onClose }: Props) { onClick={save} disabled={!instance?.validate()} loading={saving} - variant="primary" + type="primary" className="float-left mr-2" > {instance?.exists() ? 'Update' : 'Add'} diff --git a/frontend/app/components/Client/Integrations/Teams/index.tsx b/frontend/app/components/Client/Integrations/Teams/index.tsx index b85a4f010..21ffec387 100644 --- a/frontend/app/components/Client/Integrations/Teams/index.tsx +++ b/frontend/app/components/Client/Integrations/Teams/index.tsx @@ -1,10 +1,11 @@ import React, { useEffect } from 'react'; -import TeamsChannelList from './TeamsChannelList'; import { useStore } from 'App/mstore'; import { observer } from 'mobx-react-lite'; +import { Icon } from 'UI'; +import { Button } from 'antd' +import TeamsChannelList from './TeamsChannelList'; import TeamsAddForm from './TeamsAddForm'; -import { Button } from 'UI'; const MSTeams = () => { const { integrationsStore } = useStore(); @@ -35,7 +36,7 @@ const MSTeams = () => {

Microsoft Teams

-
diff --git a/frontend/app/components/Client/Notifications/Notifications.tsx b/frontend/app/components/Client/Notifications/Notifications.tsx index 25941db52..0a2d12b23 100644 --- a/frontend/app/components/Client/Notifications/Notifications.tsx +++ b/frontend/app/components/Client/Notifications/Notifications.tsx @@ -1,7 +1,7 @@ import React, { useEffect } from 'react'; import cn from 'classnames'; import stl from './notifications.module.css'; -import { Toggler } from 'UI'; +import { Switch } from 'antd' import { useStore } from "App/mstore"; import { observer } from 'mobx-react-lite' import withPageTitle from 'HOCs/withPageTitle'; @@ -25,12 +25,13 @@ function Notifications() {
Weekly project summary
Receive weekly report for each project on email.
- + + {weeklyReportStore.weeklyReport ? 'Yes' : 'No'} +
); diff --git a/frontend/app/components/Client/ProfileSettings/ChangePassword.tsx b/frontend/app/components/Client/ProfileSettings/ChangePassword.tsx index ce3eaeb38..207525f34 100644 --- a/frontend/app/components/Client/ProfileSettings/ChangePassword.tsx +++ b/frontend/app/components/Client/ProfileSettings/ChangePassword.tsx @@ -1,5 +1,6 @@ import React, { useState, useCallback } from 'react'; -import { Button, Message, Form, Input } from 'UI'; +import { Message, Form, Input } from 'UI'; +import { Button } from 'antd' import styles from './profileSettings.module.css'; import { validatePassword } from 'App/validate'; import { PASSWORD_POLICY } from 'App/constants'; @@ -121,7 +122,7 @@ const ChangePassword = () => { {PASSWORD_POLICY}
- +
); }; diff --git a/frontend/app/components/Client/ProfileSettings/Settings.js b/frontend/app/components/Client/ProfileSettings/Settings.js index 2852fd796..290f8b0f3 100644 --- a/frontend/app/components/Client/ProfileSettings/Settings.js +++ b/frontend/app/components/Client/ProfileSettings/Settings.js @@ -1,5 +1,6 @@ import React from 'react'; -import { Button, Input, Form } from 'UI'; +import { Input, Form } from 'UI'; +import { Button } from 'antd' import styles from './profileSettings.module.css'; import { observer } from 'mobx-react-lite'; import { useStore } from 'App/mstore'; @@ -61,7 +62,7 @@ function Settings() { /> - diff --git a/frontend/app/components/Client/ProfileSettings/TenantKey.js b/frontend/app/components/Client/ProfileSettings/TenantKey.js index 7cd4aece5..937e59b42 100644 --- a/frontend/app/components/Client/ProfileSettings/TenantKey.js +++ b/frontend/app/components/Client/ProfileSettings/TenantKey.js @@ -1,6 +1,7 @@ import React from 'react'; import copy from 'copy-to-clipboard'; -import { Form, Input, Button } from "UI"; +import { Form, Input } from "UI"; +import { Button } from 'antd'; import { observer } from 'mobx-react-lite'; import { useStore } from 'App/mstore'; @@ -29,8 +30,7 @@ function TenantKey() { value={ tenantKey } leadingButton={ diff --git a/frontend/app/components/Client/Roles/components/RoleForm/RoleForm.tsx b/frontend/app/components/Client/Roles/components/RoleForm/RoleForm.tsx index 835e677d0..d952f441a 100644 --- a/frontend/app/components/Client/Roles/components/RoleForm/RoleForm.tsx +++ b/frontend/app/components/Client/Roles/components/RoleForm/RoleForm.tsx @@ -2,10 +2,10 @@ import { observer } from 'mobx-react-lite'; import React, { useEffect, useRef } from 'react'; import { useStore } from 'App/mstore'; -import { Button, Checkbox, Form, Icon, Input } from 'UI'; +import { Checkbox, Form, Icon, Input } from 'UI'; import stl from './roleForm.module.css'; -import { Select } from 'antd'; +import { Select, Button } from 'antd'; import { SelectProps } from 'antd/es/select'; interface Props { @@ -220,7 +220,7 @@ const RoleForm = (props: Props) => { onClick={_save} disabled={!role.validate} loading={saving} - variant="primary" + type="primary" className="float-left mr-2" > {role.exists() ? 'Update' : 'Add'} @@ -228,7 +228,7 @@ const RoleForm = (props: Props) => { {role.exists() && } {role.exists() && ( - )} diff --git a/frontend/app/components/Client/Roles/components/RoleItem/RoleItem.tsx b/frontend/app/components/Client/Roles/components/RoleItem/RoleItem.tsx index c84d30966..429100e30 100644 --- a/frontend/app/components/Client/Roles/components/RoleItem/RoleItem.tsx +++ b/frontend/app/components/Client/Roles/components/RoleItem/RoleItem.tsx @@ -1,5 +1,6 @@ import React from 'react'; -import { Icon, Link, Button } from 'UI'; +import { Icon, Link } from 'UI'; +import { Button } from 'antd' import stl from './roleItem.module.css'; import cn from 'classnames'; import { CLIENT_TABS, client as clientRoute } from 'App/routes'; @@ -46,7 +47,7 @@ function RoleItem({ role, editHandler, isAdmin, permissions, projects }: Props)
{isAdmin && !!editHandler && ( -
diff --git a/frontend/app/components/Client/Sites/AddProjectButton/AddProjectButton.tsx b/frontend/app/components/Client/Sites/AddProjectButton/AddProjectButton.tsx index ea8ca522a..b0e8fd52f 100644 --- a/frontend/app/components/Client/Sites/AddProjectButton/AddProjectButton.tsx +++ b/frontend/app/components/Client/Sites/AddProjectButton/AddProjectButton.tsx @@ -1,5 +1,6 @@ import React from 'react'; -import { Tooltip, Button } from 'UI'; +import { Tooltip } from 'UI'; +import { Button } from 'antd' import { useStore } from 'App/mstore'; import { observer } from 'mobx-react-lite'; import { useModal } from 'App/components/Modal'; @@ -24,7 +25,7 @@ function AddProjectButton({ isAdmin = false }: any) { title={`${!isAdmin ? PERMISSION_WARNING : !canAddProject ? LIMIT_WARNING : 'Add a Project'}`} disabled={isAdmin || canAddProject} > - diff --git a/frontend/app/components/Client/Sites/BlockedIps.js b/frontend/app/components/Client/Sites/BlockedIps.js deleted file mode 100644 index 98f6acfde..000000000 --- a/frontend/app/components/Client/Sites/BlockedIps.js +++ /dev/null @@ -1,31 +0,0 @@ -import React from 'react'; -import { Input, Button, Icon } from 'UI'; -import styles from './blockedIps.module.css'; - -class BlockedIps extends React.PureComponent { - render() { - return ( -
-

{ 'Block IP' }

-
- -
- - -
- -
-
-
{ '192.128.2.1' }
-
- -
-
-
-
-
- ); - } -} - -export default BlockedIps; diff --git a/frontend/app/components/Client/Sites/GDPRForm.js b/frontend/app/components/Client/Sites/GDPRForm.js index fa54f73be..0a35f7399 100644 --- a/frontend/app/components/Client/Sites/GDPRForm.js +++ b/frontend/app/components/Client/Sites/GDPRForm.js @@ -1,7 +1,8 @@ import React from 'react'; import { observer } from 'mobx-react-lite'; import { useStore } from "App/mstore"; -import { Form, Button, Input, Icon } from 'UI'; +import { Form, Input, Icon } from 'UI'; +import { Button } from 'antd' import { validateNumber } from 'App/validate'; import styles from './siteForm.module.css'; import Select from 'Shared/Select'; @@ -115,12 +116,13 @@ function GDPRForm(props) {
+
) diff --git a/frontend/app/components/Client/Sites/InstallButton/InstallButton.tsx b/frontend/app/components/Client/Sites/InstallButton/InstallButton.tsx index da1a2fb44..f3ce8b8df 100644 --- a/frontend/app/components/Client/Sites/InstallButton/InstallButton.tsx +++ b/frontend/app/components/Client/Sites/InstallButton/InstallButton.tsx @@ -1,7 +1,7 @@ import { useModal } from 'App/components/Modal'; import React from 'react'; import TrackingCodeModal from 'Shared/TrackingCodeModal'; -import { Button } from 'UI'; +import { Button } from 'antd'; interface Props { site: any; @@ -16,7 +16,7 @@ function InstallButton(props: Props) { ); }; return ( - ); diff --git a/frontend/app/components/Client/Sites/NewSiteForm.tsx b/frontend/app/components/Client/Sites/NewSiteForm.tsx index fdb380e75..6445fc700 100644 --- a/frontend/app/components/Client/Sites/NewSiteForm.tsx +++ b/frontend/app/components/Client/Sites/NewSiteForm.tsx @@ -3,8 +3,8 @@ import React, { ChangeEvent, FormEvent, useEffect, useState } from 'react'; import { RouteComponentProps, withRouter } from 'react-router-dom'; import { toast } from 'react-toastify'; import { useStore } from 'App/mstore'; -import { Button, Form, Icon, Input } from 'UI'; -import { confirm } from 'UI'; +import { confirm, Form, Icon, Input } from 'UI'; +import { Button } from 'antd' import { observer } from 'mobx-react-lite'; import styles from './siteForm.module.css'; @@ -141,8 +141,8 @@ const NewSiteForm = ({ location: { pathname }, onClose }: Props) => {
{site.exists() && (
- {project.conditionsCount > 0 ? ( diff --git a/frontend/app/components/Client/Users/components/UserForm/UserForm.tsx b/frontend/app/components/Client/Users/components/UserForm/UserForm.tsx index 2c1ee6e2c..dd495a2c8 100644 --- a/frontend/app/components/Client/Users/components/UserForm/UserForm.tsx +++ b/frontend/app/components/Client/Users/components/UserForm/UserForm.tsx @@ -5,8 +5,8 @@ import React from 'react'; import { useModal } from 'App/components/Modal'; import { useStore } from 'App/mstore'; -import { Button, CopyButton, Form, Icon, Input } from 'UI'; -import { confirm } from 'UI'; +import { confirm, CopyButton, Form, Icon, Input } from 'UI'; +import { Button } from 'antd' import Select from 'Shared/Select'; @@ -139,22 +139,20 @@ function UserForm() { onClick={onSave} disabled={!user.valid(isEnterprise) || isSaving} loading={isSaving} - variant="primary" + type="primary" className="float-left mr-2" > {user.exists() ? 'Update' : 'Invite'} {user.exists() && }
-
- -
+ {!user.exists() ? null : +
+ +
+ } {!user.isJoined && user.invitationLink && ( diff --git a/frontend/app/components/Client/Users/components/UserListItem/UserListItem.tsx b/frontend/app/components/Client/Users/components/UserListItem/UserListItem.tsx index c83aa439d..338d2e04b 100644 --- a/frontend/app/components/Client/Users/components/UserListItem/UserListItem.tsx +++ b/frontend/app/components/Client/Users/components/UserListItem/UserListItem.tsx @@ -1,6 +1,7 @@ //@ts-nocheck import React from 'react'; -import { Button, Tooltip } from 'UI'; +import { Tooltip, Icon } from 'UI'; +import { Button } from 'antd' import { checkForRecent } from 'App/date'; import cn from 'classnames'; @@ -79,9 +80,8 @@ function UserListItem(props: Props) { {!user.isJoined && user.invitationLink && !user.isExpiredInvite && ( diff --git a/frontend/app/components/Dashboard/components/Alerts/AlertForm/BottomButtons.tsx b/frontend/app/components/Dashboard/components/Alerts/AlertForm/BottomButtons.tsx index 9a5e716f0..5dbb460bd 100644 --- a/frontend/app/components/Dashboard/components/Alerts/AlertForm/BottomButtons.tsx +++ b/frontend/app/components/Dashboard/components/Alerts/AlertForm/BottomButtons.tsx @@ -1,5 +1,6 @@ import React from 'react' -import { Button, Icon } from 'UI' +import { Icon } from 'UI' +import { Button } from 'antd' interface IBottomButtons { loading: boolean @@ -14,8 +15,7 @@ function BottomButtons({ loading, instance, deleting, onDelete }: IBottomButtons
- {hasFilters && } - + {hasFilters && } +
diff --git a/frontend/app/components/Dashboard/components/CardUserList/CardUserList.tsx b/frontend/app/components/Dashboard/components/CardUserList/CardUserList.tsx index e6d7a1a4d..842184f2e 100644 --- a/frontend/app/components/Dashboard/components/CardUserList/CardUserList.tsx +++ b/frontend/app/components/Dashboard/components/CardUserList/CardUserList.tsx @@ -2,7 +2,8 @@ import { useModal } from 'App/components/Modal'; import { observer } from 'mobx-react-lite'; import React, { useEffect, useState } from 'react'; import { RouteComponentProps, withRouter } from 'react-router'; -import { Loader, Pagination, Button } from 'UI'; +import { Loader, Pagination } from 'UI'; +import { Button } from 'antd' import SessionsModal from './SessionsModal'; import CardUserItem from './CardUserItem'; import { useStore } from 'App/mstore'; @@ -45,7 +46,7 @@ function CardUserList(props: RouteComponentProps) {

Returning users between

- +
diff --git a/frontend/app/components/Dashboard/components/DashboardModal/DashboardModal.tsx b/frontend/app/components/Dashboard/components/DashboardModal/DashboardModal.tsx index 659b4a604..20429e74a 100644 --- a/frontend/app/components/Dashboard/components/DashboardModal/DashboardModal.tsx +++ b/frontend/app/components/Dashboard/components/DashboardModal/DashboardModal.tsx @@ -2,7 +2,7 @@ import React from 'react'; import { useObserver } from 'mobx-react-lite'; import DashboardMetricSelection from '../DashboardMetricSelection'; import DashboardForm from '../DashboardForm'; -import { Button } from 'UI'; +import { Button } from 'antd'; import { withRouter, RouteComponentProps } from 'react-router-dom'; import { useStore } from 'App/mstore'; import { useModal } from 'App/components/Modal'; @@ -67,7 +67,7 @@ function DashboardModal(props: Props) {
- -
- {TAGS.map((tag) => ( - addTag(tag)} - key={tag} - className='cursor-pointer rounded-lg hover:bg-indigo-50' - color={tagActive(tag) ? tagProps[tag] : undefined} - bordered={false} - - > -
- {tagActive(tag) ? ( - - ) : null} - {tag} -
-
- ))} -
- -
setPublic(!isPublic)} - > - -
Visible to team members
-
- {slackChannelsOptions.length > 1 ? ( -
-
setSlack(!useSlack)} - > - - Share via Slack -
- - {useSlack && ( -
- -
- )} -
- ) : null} - -
- - -
- - ); -} - -export default observer(CreateNote); diff --git a/frontend/app/components/Session_/Player/Controls/components/PlayingTime.tsx b/frontend/app/components/Session_/Player/Controls/components/PlayingTime.tsx index f666a43a2..393cf3b3b 100644 --- a/frontend/app/components/Session_/Player/Controls/components/PlayingTime.tsx +++ b/frontend/app/components/Session_/Player/Controls/components/PlayingTime.tsx @@ -31,6 +31,7 @@ function PlayingTime({ timeMode, setTimeMode, startedAt, sessionTz }: Props) { distance={20} render={({ close }) => (
, }, { type: 'divider' }, - { - key: ItemKey.AddNote, - label: 'Add Note', - icon: , - }, + // { + // key: ItemKey.AddNote, + // label: 'Add Note', + // icon: , + // }, { key: ItemKey.CopySessionUrl, label: 'Copy Session URL', @@ -131,16 +130,16 @@ function Overlay({ nextId, isClickmap }: Props) { case ItemKey.State: toggleBottomBlock(STORAGE); break; - case ItemKey.AddNote: - showModal( - , - { right: true, width: 380 } - ); - break; + // case ItemKey.AddNote: + // showModal( + // , + // { right: true, width: 380 } + // ); + // break; case ItemKey.CopySessionUrl: copy(window.location.origin + window.location.pathname); toast.success('Session URL copied to clipboard'); diff --git a/frontend/app/components/Session_/Player/Overlay/AutoplayTimer.tsx b/frontend/app/components/Session_/Player/Overlay/AutoplayTimer.tsx index a4180d056..e780a4820 100644 --- a/frontend/app/components/Session_/Player/Overlay/AutoplayTimer.tsx +++ b/frontend/app/components/Session_/Player/Overlay/AutoplayTimer.tsx @@ -2,7 +2,8 @@ import React, { useEffect, useState } from 'react'; import cn from 'classnames'; import { observer } from 'mobx-react-lite'; import { withRouter } from 'react-router-dom'; -import { Button, Link } from 'UI'; +import { Link } from 'UI'; +import { Button } from 'antd' import { session as sessionRoute, withSiteId } from 'App/routes'; import stl from './AutoplayTimer.module.css'; import clsOv from './overlay.module.css'; @@ -50,12 +51,12 @@ function AutoplayTimer({ history }: any) {
-
- +
diff --git a/frontend/app/components/Session_/ScreenRecorder/ScreenRecorder.tsx b/frontend/app/components/Session_/ScreenRecorder/ScreenRecorder.tsx index fbfcce9ae..6df8e775a 100644 --- a/frontend/app/components/Session_/ScreenRecorder/ScreenRecorder.tsx +++ b/frontend/app/components/Session_/ScreenRecorder/ScreenRecorder.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { screenRecorder } from 'App/utils/screenRecorder'; -import { Tooltip } from 'antd' -import { Button } from 'UI'; +import { Tooltip, Button } from 'antd' +import { Icon } from 'UI'; import { SessionRecordingStatus } from 'Player'; let stopRecorderCb: () => void; import { recordingsService } from 'App/services'; @@ -116,7 +116,7 @@ function ScreenRecorder() { - @@ -127,8 +127,9 @@ function ScreenRecorder() { return (
diff --git a/frontend/app/components/Session_/components/HeaderMenu.tsx b/frontend/app/components/Session_/components/HeaderMenu.tsx deleted file mode 100644 index 621334cf7..000000000 --- a/frontend/app/components/Session_/components/HeaderMenu.tsx +++ /dev/null @@ -1,78 +0,0 @@ -import React from 'react'; -import { Button, Icon } from 'UI'; -import styles from './menu.module.css'; -import cn from 'classnames'; -import OutsideClickDetectingDiv from 'Shared/OutsideClickDetectingDiv'; - -interface MenuItem { - key: number; - autoclose?: boolean; - component?: React.ReactElement; -} - -interface Props { - items: MenuItem[]; - useSc?: boolean; -} - -export default class ItemMenu extends React.PureComponent { - state = { - displayed: false, - }; - - handleEsc = (e: KeyboardEvent) => e.key === 'Escape' && this.state.displayed && this.toggleMenu(); - handleSc = (e: KeyboardEvent) => e.key === 'M' && e.shiftKey ? this.toggleMenu() : null; - - componentDidMount() { - document.addEventListener('keydown', this.handleEsc, false); - if (this.props.useSc) { - document.addEventListener('keydown', this.handleSc, false) - } - } - componentWillUnmount() { - document.removeEventListener('keydown', this.handleEsc, false); - if (this.props.useSc) { - document.removeEventListener('keydown', this.handleSc, false) - } - } - - toggleMenu = () => { - this.setState({ displayed: !this.state.displayed }); - }; - - closeMenu = () => { - this.setState({ displayed: false }); - }; - - render() { - const { items } = this.props; - const { displayed } = this.state; - - return ( -
- - -
- {items.map((item) => - item.component ? ( -
- {item.component} -
- ) : null - )} -
-
-
- ); - } -} diff --git a/frontend/app/components/Session_/components/NotePopup.tsx b/frontend/app/components/Session_/components/NotePopup.tsx deleted file mode 100644 index 5f38f1ba3..000000000 --- a/frontend/app/components/Session_/components/NotePopup.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import CreateNote from 'Components/Session_/Player/Controls/components/CreateNote'; -import React from 'react'; -import { observer } from 'mobx-react-lite'; -import { useStore } from 'App/mstore'; -import { PlayerContext } from 'App/components/Session/playerContext'; -import { Button, Tooltip } from 'antd'; -import { MessageOutlined } from '@ant-design/icons'; -import { useModal } from 'App/components/Modal'; - -function NotePopup() { - const { sessionStore } = useStore(); - const tooltipActive = sessionStore.createNoteTooltip.isVisible; - const { player, store } = React.useContext(PlayerContext); - const { showModal, hideModal } = useModal(); - const toggleNotePopup = () => { - if (tooltipActive) return; - player.pause(); - showModal( - , - { - right: true, - width: 380, - } - ); - }; - - return ( - - - - ); -} - -export default observer(NotePopup) diff --git a/frontend/app/components/Signup/SignupForm/SignupForm.tsx b/frontend/app/components/Signup/SignupForm/SignupForm.tsx index 36f0f761a..f9d91201b 100644 --- a/frontend/app/components/Signup/SignupForm/SignupForm.tsx +++ b/frontend/app/components/Signup/SignupForm/SignupForm.tsx @@ -15,7 +15,8 @@ import { SITE_ID_STORAGE_KEY } from 'App/constants/storageKeys'; import { useStore } from 'App/mstore'; import { login } from 'App/routes'; import { validatePassword } from 'App/validate'; -import { Button, Form, Input, Link } from 'UI'; +import { Form, Input, Link } from 'UI'; +import { Button } from 'antd' import Select from 'Shared/Select'; @@ -221,8 +222,8 @@ const SignupForm = () => { ) : null} -
- - - ); -} - -export default withPageTitle('Password Change - OpenReplay')( - observer(UpdatePassword) -); diff --git a/frontend/app/components/UpdatePassword/updatePassword.module.css b/frontend/app/components/UpdatePassword/updatePassword.module.css deleted file mode 100644 index 386a99e19..000000000 --- a/frontend/app/components/UpdatePassword/updatePassword.module.css +++ /dev/null @@ -1,127 +0,0 @@ -@import 'icons.css'; - -.form { - position: absolute; - top: 50%; - margin-top: -300px; - width: 520px; - left: 50%; - margin-left: -260px; - - & .passwordPolicy { - color: $gray-medium; - padding: 5px 0 10px; - font-size: 13px; - } - - & form { - padding: 10px 70px; - border: solid 2px $gray-light; - border-radius: 2px; - background-color: white; - } - & h2 { - text-align: center; - font-size: 20px; - color: #555555; - margin: 35px 0; - font-weight: 300; - } -} - -.formFooter { - text-align: center; - padding: 15px 0; -} - -.links { - display: flex; - align-items: center; - justify-content: center; - padding: 10px 0; - margin-top: 20px; - - & .divider { - width: 1px; - height: 12px; - background-color: $gray-medium; - margin: 0 5px; - } -} - -.logo { - background-image: svg-load('logo.svg'); - background-repeat: no-repeat; - background-size: contain; - background-position: center center; - height: 50px; - margin-bottom: 20px; -} - - -.email, .password { - display: block; - margin-top: 15px; - width: 100%; - height: 45px; - line-height: 45px; - border: $gray-light solid 1px; - border-radius: 3px; - font-size: 14px; - padding: 0 10px; - transition: all 0.2s; - - &::placeholder { - color: #AAA; - } - - &:focus { - border-color: $teal; - transition: all 0.2s; - } -} - -.errors { - border-radius: 5px; - width: 400px; - margin: auto; - border: 2px solid $red; - padding: 15px; - background-color: $white; -} - -.submit { - display: block; - border-radius: 5px; - background: $teal; - width: 135px; - height: 45px; - margin: 20px auto; - color: $white; - font-size: 16px; - cursor: pointer; -} - -.inputWithIcon { - position: relative; - - & input { - padding-left: 45px; - } -} - -@define-mixin inputIcon $name { - position: absolute; - left: 15px; - top: calc(50% - 8px); - @mixin icon $name, $gray-medium, 15px; -} - -.inputIconUser { - @mixin inputIcon user-alt; -} - -.inputIconPassword { - @mixin inputIcon lock-alt; -} - diff --git a/frontend/app/components/shared/AlertTriggersModal/AlertTriggersModal.tsx b/frontend/app/components/shared/AlertTriggersModal/AlertTriggersModal.tsx index 3e73b8dad..6815680e4 100644 --- a/frontend/app/components/shared/AlertTriggersModal/AlertTriggersModal.tsx +++ b/frontend/app/components/shared/AlertTriggersModal/AlertTriggersModal.tsx @@ -1,5 +1,6 @@ import React, { useEffect } from 'react'; -import { Button, NoContent, Loader } from 'UI'; +import { NoContent, Loader } from 'UI'; +import { Button } from 'antd' import cn from 'classnames'; import AnimatedSVG, { ICONS } from 'Shared/AnimatedSVG/AnimatedSVG'; import ListItem from './ListItem' @@ -37,7 +38,6 @@ function AlertTriggersModal(props: Props) { { count > 0 && (
diff --git a/frontend/app/components/shared/DevTools/TimeTable/TimeTable.tsx b/frontend/app/components/shared/DevTools/TimeTable/TimeTable.tsx index 47bbf8b78..d4729ecb1 100644 --- a/frontend/app/components/shared/DevTools/TimeTable/TimeTable.tsx +++ b/frontend/app/components/shared/DevTools/TimeTable/TimeTable.tsx @@ -2,7 +2,8 @@ import React from 'react'; import { VList, VListHandle } from 'virtua'; import cn from 'classnames'; import { Duration } from 'luxon'; -import { NoContent, Button } from 'UI'; +import { NoContent, Icon } from 'UI'; +import { Button } from 'antd' import { percentOf } from 'App/utils'; import BarRow from './BarRow'; @@ -214,21 +215,13 @@ function TimeTable(props: Props) { {navigation && (
diff --git a/frontend/app/components/shared/DocLink/DocLink.js b/frontend/app/components/shared/DocLink/DocLink.js index 3647e79e5..c3ae25f11 100644 --- a/frontend/app/components/shared/DocLink/DocLink.js +++ b/frontend/app/components/shared/DocLink/DocLink.js @@ -1,5 +1,6 @@ import React from 'react' -import { Button, Icon } from 'UI' +import { Icon } from 'UI' +import { Button } from 'antd' export default function DocLink({ className = '', url, label }) { const openLink = () => { @@ -8,7 +9,7 @@ export default function DocLink({ className = '', url, label }) { return (
- diff --git a/frontend/app/components/shared/ImageViewer/ImageViewer.js b/frontend/app/components/shared/ImageViewer/ImageViewer.js deleted file mode 100644 index 28d9aadfc..000000000 --- a/frontend/app/components/shared/ImageViewer/ImageViewer.js +++ /dev/null @@ -1,30 +0,0 @@ -import React, { useState } from 'react' -import { Button } from 'UI'; - -export default function ImageViewer( - { source, activeIndex, onClose } -) { - const [currentIndex, setCurrentIndex] = useState(activeIndex) - const onPrevClick = () => { - setCurrentIndex(currentIndex - 1); - } - const onNextClick = () => { - setCurrentIndex(currentIndex + 1); - } - return ( -
-
- - - -
- -
- ) -} diff --git a/frontend/app/components/shared/ImageViewer/index.js b/frontend/app/components/shared/ImageViewer/index.js deleted file mode 100644 index 86ec5cbec..000000000 --- a/frontend/app/components/shared/ImageViewer/index.js +++ /dev/null @@ -1 +0,0 @@ -export { default } from './ImageViewer'; \ No newline at end of file diff --git a/frontend/app/components/shared/IntegrateSlackButton/IntegrateSlackButton.js b/frontend/app/components/shared/IntegrateSlackButton/IntegrateSlackButton.js index fa806a0d2..bc1900336 100644 --- a/frontend/app/components/shared/IntegrateSlackButton/IntegrateSlackButton.js +++ b/frontend/app/components/shared/IntegrateSlackButton/IntegrateSlackButton.js @@ -1,5 +1,6 @@ import React from 'react' -import { Button, Icon } from 'UI' +import { Icon } from 'UI' +import { Button } from 'antd' import { CLIENT_TABS, client as clientRoute } from 'App/routes'; import { withRouter } from 'react-router-dom'; @@ -14,7 +15,7 @@ function IntegrateSlackTeamsButton({ history }) {
{savedSearch.exists() && ( - )} diff --git a/frontend/app/components/shared/SessionItem/MetaMoreButton/MetaMoreButton.tsx b/frontend/app/components/shared/SessionItem/MetaMoreButton/MetaMoreButton.tsx index 9253b2de9..c8bdaff61 100644 --- a/frontend/app/components/shared/SessionItem/MetaMoreButton/MetaMoreButton.tsx +++ b/frontend/app/components/shared/SessionItem/MetaMoreButton/MetaMoreButton.tsx @@ -1,5 +1,6 @@ import React from 'react'; -import { Popover, Button } from 'UI'; +import { Popover } from 'UI'; +import { Button } from 'antd' import MetaItem from '../MetaItem'; interface Props { @@ -23,7 +24,7 @@ export default function MetaMoreButton(props: Props) { placement="bottom" >
- +
); diff --git a/frontend/app/components/shared/SessionSettings/components/ConditionalRecordingSettings.tsx b/frontend/app/components/shared/SessionSettings/components/ConditionalRecordingSettings.tsx index 90e9dc2df..a6a710831 100644 --- a/frontend/app/components/shared/SessionSettings/components/ConditionalRecordingSettings.tsx +++ b/frontend/app/components/shared/SessionSettings/components/ConditionalRecordingSettings.tsx @@ -1,7 +1,8 @@ import { Conditions } from 'App/mstore/types/FeatureFlag'; import React from 'react'; import ConditionSet from 'Shared/ConditionSet'; -import { Button } from 'UI'; +import { Icon } from 'UI'; +import { Button } from 'antd'; import { nonConditionalFlagFilters } from 'Types/filter/newFilter'; function ConditionalRecordingSettings({ @@ -43,7 +44,7 @@ function ConditionalRecordingSettings({ />
matching -
diff --git a/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx b/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx index 6d30059c2..a03997648 100644 --- a/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx +++ b/frontend/app/components/shared/SessionSettings/components/DefaultTimezone.tsx @@ -5,8 +5,8 @@ import { toast } from 'react-toastify'; import { useStore } from 'App/mstore'; import { Timezone } from 'App/mstore/types/sessionSettings'; -import { Button, Icon } from 'UI'; - +import { Icon } from 'UI'; +import { Button } from 'antd' import Select from 'Shared/Select'; type TimezonesDropdown = Timezone[]; @@ -104,8 +104,7 @@ function DefaultTimezone() {
- +
diff --git a/frontend/app/components/shared/SessionsTabOverview/components/SessionList/SessionList.tsx b/frontend/app/components/shared/SessionsTabOverview/components/SessionList/SessionList.tsx index 2ede00e77..c6ecbf091 100644 --- a/frontend/app/components/shared/SessionsTabOverview/components/SessionList/SessionList.tsx +++ b/frontend/app/components/shared/SessionsTabOverview/components/SessionList/SessionList.tsx @@ -1,7 +1,8 @@ import React, { useEffect } from 'react'; import { FilterKey } from 'Types/filter/filterType'; import SessionItem from 'Shared/SessionItem'; -import { NoContent, Loader, Pagination, Button } from 'UI'; +import { NoContent, Loader, Pagination, Icon } from 'UI'; +import { Button } from 'antd' import { useLocation, withRouter } from 'react-router-dom'; import AnimatedSVG, { ICONS } from 'Shared/AnimatedSVG/AnimatedSVG'; import { numberWithCommas } from 'App/utils'; @@ -188,10 +189,9 @@ function SessionList() { )} + )} { (focused || !selected) && ( diff --git a/frontend/app/components/ui/Avatar/Avatar.js b/frontend/app/components/ui/Avatar/Avatar.js index 536ee6a62..67a10c550 100644 --- a/frontend/app/components/ui/Avatar/Avatar.js +++ b/frontend/app/components/ui/Avatar/Avatar.js @@ -1,7 +1,8 @@ import React from 'react'; import cn from 'classnames'; import { avatarIconName } from 'App/iconNames'; -import { Icon, Tooltip } from 'UI'; +import { Icon } from 'UI'; +import { Tooltip } from 'antd' const Avatar = ({ isActive = false, @@ -13,7 +14,7 @@ const Avatar = ({ }) => { var iconName = avatarIconName(seed); return ( - +
{ const { className = '', label = '', ...rest } = props; return ( - + + {label} + ); }; diff --git a/frontend/app/components/ui/ErrorDetails/ErrorDetails.tsx b/frontend/app/components/ui/ErrorDetails/ErrorDetails.tsx index 9cd076295..c869a4d18 100644 --- a/frontend/app/components/ui/ErrorDetails/ErrorDetails.tsx +++ b/frontend/app/components/ui/ErrorDetails/ErrorDetails.tsx @@ -1,6 +1,7 @@ import React, { useState } from 'react'; import ErrorFrame from '../ErrorFrame/ErrorFrame'; -import { Button, Icon } from 'UI'; +import { Icon } from 'UI'; +import { Button } from 'antd' import { observer } from 'mobx-react-lite'; import { useStore } from 'App/mstore'; @@ -44,10 +45,10 @@ function ErrorDetails(props: Props) {

Stacktrace

- -
diff --git a/frontend/app/components/ui/HelpText/HelpText.tsx b/frontend/app/components/ui/HelpText/HelpText.tsx deleted file mode 100644 index 0bfdfdc5e..000000000 --- a/frontend/app/components/ui/HelpText/HelpText.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import React from 'react'; -import { Icon, Tooltip } from 'UI'; - -interface Props { - text: string; - className?: string; - position?: string; -} -export default function HelpText(props: Props) { - const { text, className = '', position = 'top center' } = props; - return ( -
- -
- -
-
-
- ); -} diff --git a/frontend/app/components/ui/HelpText/index.ts b/frontend/app/components/ui/HelpText/index.ts deleted file mode 100644 index 0868cbffd..000000000 --- a/frontend/app/components/ui/HelpText/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { default } from './HelpText'; \ No newline at end of file diff --git a/frontend/app/components/ui/IconButton/IconButton.js b/frontend/app/components/ui/IconButton/IconButton.js index 2d24bd1f5..6e325a016 100644 --- a/frontend/app/components/ui/IconButton/IconButton.js +++ b/frontend/app/components/ui/IconButton/IconButton.js @@ -1,6 +1,7 @@ import React from 'react'; import cn from 'classnames'; -import { CircularLoader, Icon, Tooltip } from 'UI'; +import { Tooltip } from 'antd' +import { CircularLoader, Icon } from 'UI'; import stl from './iconButton.module.css'; const IconButton = React.forwardRef( diff --git a/frontend/app/components/ui/Input/Input.tsx b/frontend/app/components/ui/Input/Input.tsx index 9e93376c8..6bfb67853 100644 --- a/frontend/app/components/ui/Input/Input.tsx +++ b/frontend/app/components/ui/Input/Input.tsx @@ -1,6 +1,6 @@ import cn from 'classnames'; import React from 'react'; - +import { Input as AntInput } from 'antd' import { Icon } from 'UI'; interface Props { @@ -36,7 +36,7 @@ const Input = React.forwardRef((props: Props, ref: any) => { /> )} {type === 'textarea' ? ( -