fixing auth stuff, adding menu and other things

This commit is contained in:
talksik
2022-05-05 05:14:18 -05:00
parent 5d4b89ddaf
commit fa247c5d79
6 changed files with 239 additions and 161 deletions
+1 -1
View File
@@ -110,7 +110,7 @@
"@getstation/electron-google-oauth2": "^2.1.0", "@getstation/electron-google-oauth2": "^2.1.0",
"@mui/icons-material": "^5.6.2", "@mui/icons-material": "^5.6.2",
"@nirvana/core": "*", "@nirvana/core": "*",
"antd": "^4.19.2", "antd": "^4.20.2",
"axios": "^0.26.1", "axios": "^0.26.1",
"electron-squirrel-startup": "^1.0.0", "electron-squirrel-startup": "^1.0.0",
"electron-store": "^8.0.1", "electron-store": "^8.0.1",
@@ -1,10 +1,9 @@
import { useAuthCheck, useLogin } from "../../controller/index";
import { $jwtToken } from "../../controller/recoil"; import { $jwtToken } from "../../controller/recoil";
import Login from "../../pages/Login"; import Login from "../../pages/Login";
import NirvanaApi from "../../controller/nirvanaApi"; import NirvanaApi from "../../controller/nirvanaApi";
import { STORE_ITEMS } from "../../electron/constants"; import { STORE_ITEMS } from "../../electron/constants";
import SkeletonLoader from "../loading/skeleton"; import SkeletonLoader from "../loading/skeleton";
import { useAuthCheck } from "../../controller/index";
import { useEffect } from "react"; import { useEffect } from "react";
import { useRecoilState } from "recoil"; import { useRecoilState } from "recoil";
@@ -1,46 +1,41 @@
import { $desktopMode, $selectedOutputMode } from "../../controller/recoil"; import {
import { Avatar, Menu } from "antd"; $desktopMode,
$jwtToken,
$mediaSettings,
} from "../../controller/recoil";
import { Avatar, Dropdown, Menu, Tooltip } from "antd";
import { FiCheck, FiLogOut } from "react-icons/fi";
import { GlobalHotKeys, KeyMap } from "react-hotkeys"; import { GlobalHotKeys, KeyMap } from "react-hotkeys";
import { HeadsetMicSharp, VideocamSharp } from "@mui/icons-material";
import { useCallback, useEffect, useMemo, useRef, useState } from "react"; import { useCallback, useEffect, useMemo, useRef, useState } from "react";
import { useRecoilState, useRecoilValue } from "recoil"; import { useRecoilState, useRecoilValue, useSetRecoilState } from "recoil";
import { FaSearch } from "react-icons/fa"; import { FaSearch } from "react-icons/fa";
import Logo from "../Logo"; import Logo from "../Logo";
import { useGetUserDetails } from "../../controller/index"; import { useGetUserDetails } from "../../controller/index";
/**
* TODO: add in video mode
*
*/
export default function NirvanaHeader({ export default function NirvanaHeader({
onHeaderFocus, onHeaderFocus,
}: { }: {
onHeaderFocus: () => void; onHeaderFocus: () => void;
}) { }) {
const { data: userDetailsRes, isLoading } = useGetUserDetails(); const { data: userDetailsRes, isLoading, isError } = useGetUserDetails();
const inputRef = useRef<HTMLInputElement>(null); const inputRef = useRef<HTMLInputElement>(null);
const [searchInput, setSearchInput] = useState<string>(""); const [searchInput, setSearchInput] = useState<string>("");
const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);
const [outputMode, setOutputMode] = useRecoilState($selectedOutputMode);
const desktopMode = useRecoilValue($desktopMode); const desktopMode = useRecoilValue($desktopMode);
const [userVideoStream, setUserVideoStream] = const [mediaSettings, setMediaSettings] = useRecoilState($mediaSettings);
useState<MediaStream>(undefined);
// todo: show user local video stream const setJwtToken = useSetRecoilState($jwtToken);
useEffect(() => {
navigator.mediaDevices
.getUserMedia({ video: true, audio: true })
.then((stream: MediaStream) => {
setUserVideoStream(stream);
});
}, []);
useEffect(() => { useEffect(() => {
const videoElem = document.querySelector("video"); if (isError) setJwtToken(null);
if (userVideoStream && outputMode === "video" && videoElem) }, [isError]);
videoElem.srcObject = userVideoStream;
}, [userVideoStream, outputMode]);
/** hide the search bar in the header so that it's cleaner for these two modes */ /** hide the search bar in the header so that it's cleaner for these two modes */
const shouldHideSearch = useMemo(() => { const shouldHideSearch = useMemo(() => {
@@ -50,10 +45,6 @@ export default function NirvanaHeader({
return false; return false;
}, [desktopMode]); }, [desktopMode]);
const handleOpenMenu = useCallback((event: React.MouseEvent<HTMLElement>) => {
setAnchorEl(event.currentTarget);
}, []);
const selectSearch = () => { const selectSearch = () => {
inputRef.current?.focus(); inputRef.current?.focus();
}; };
@@ -73,8 +64,64 @@ export default function NirvanaHeader({
SELECT_SEARCH: selectSearch, SELECT_SEARCH: selectSearch,
}; };
const handleMuteToggle = useCallback(() => {
setMediaSettings((previousMediaSettings) => ({
...previousMediaSettings,
isMuted: !previousMediaSettings.isMuted,
}));
}, [setMediaSettings]);
const handleSignOut = useCallback(() => {
setJwtToken(null);
}, [setJwtToken]);
if (isLoading) return <>loading</>; if (isLoading) return <>loading</>;
const profileMenu = (
<Menu
items={[
{
label: (
<span onClick={handleMuteToggle}>
{mediaSettings.isMuted ? "Unmute" : "Mute"}
</span>
),
key: `profile-menu-${1}`,
},
{
label: <span>Audio Mode</span>,
icon: <> {mediaSettings.mode === "audio" ? <FiCheck /> : <></>} </>,
disabled: false,
key: `profile-menu-${2}`,
},
{
label: (
<Tooltip title="coming soon">
<span>Video Mode</span>
</Tooltip>
),
icon: <>{mediaSettings.mode === "video" ? <FiCheck /> : <></>} </>,
disabled: true,
key: `profile-menu-${3}`,
},
{
type: "divider",
key: `profile-menu-${4}`,
},
{
label: <span onClick={handleSignOut}>Sign Out</span>,
icon: <FiLogOut />,
key: `profile-menu-${5}`,
},
{
danger: true,
label: "a danger item",
key: `profile-menu-${6}`,
},
]}
/>
);
return ( return (
<> <>
<GlobalHotKeys handlers={handlers} keyMap={keyMap} /> <GlobalHotKeys handlers={handlers} keyMap={keyMap} />
@@ -88,7 +135,7 @@ export default function NirvanaHeader({
</div> </div>
{!shouldHideSearch && ( {!shouldHideSearch && (
<div className="mx-auto flex flex-row items-center space-x-2 ml-2"> <div className="mx-auto flex flex-row items-center space-x-2 ml-5">
<FaSearch className="text-xs text-gray-300" /> <FaSearch className="text-xs text-gray-300" />
<input <input
placeholder="Type / to search" placeholder="Type / to search"
@@ -101,24 +148,32 @@ export default function NirvanaHeader({
)} )}
{/* todo: move this ghost button to components */} {/* todo: move this ghost button to components */}
<button className="text-gray-300 ml-auto text-xs px-2 py-1 transition-all hover:bg-gray-200"> <button className="text-gray-300 ml-auto text-xs p-3 transition-all hover:bg-gray-200">
flow state flow state
</button> </button>
<div onClick={handleOpenMenu} className={"cursor-pointer ml-2"}> <Dropdown overlay={profileMenu}>
{outputMode === "video" && ( <div className={"cursor-pointer ml-2"}>
<video height={"64px"} width={"90"} muted autoPlay /> {userDetailsRes?.user?.picture &&
)} mediaSettings.mode === "audio" && (
<Avatar
className="mr-1"
alt={userDetailsRes?.user?.givenName}
src={userDetailsRes?.user?.picture}
shape="square"
/>
)}
</div>
</Dropdown>
{userDetailsRes?.user?.picture && outputMode === "audio" && ( {userDetailsRes?.user?.picture && mediaSettings.mode === "audio" && (
<Avatar <Avatar
className="mr-1" className="mr-1"
alt={userDetailsRes?.user?.givenName} alt={userDetailsRes?.user?.givenName}
src={userDetailsRes?.user?.picture} src={userDetailsRes?.user?.picture}
shape="square" shape="square"
/> />
)} )}
</div>
{/* menu for the output options */} {/* menu for the output options */}
{/* <Menu {/* <Menu
+11 -8
View File
@@ -22,14 +22,6 @@ export const $newConvoPage = atom<boolean>({
default: false, default: false,
}); });
type outputMode = "audio" | "video" | "off";
// selected output mode
export const $selectedOutputMode = atom<outputMode>({
key: "OUTPUT_MODE",
default: "video",
});
// number of active lines // number of active lines
export const $numberActiveLines = atom<number>({ export const $numberActiveLines = atom<number>({
key: "NUMBER_ACTIVE_LINES", key: "NUMBER_ACTIVE_LINES",
@@ -42,6 +34,8 @@ export const $maxNumberActiveStreams = atom<number>({
default: 0, default: 0,
}); });
// ============
type DesktopMode = "flowState" | "overlayOnly" | "terminal" | "terminalDetails"; type DesktopMode = "flowState" | "overlayOnly" | "terminal" | "terminalDetails";
export const $desktopMode = atom<DesktopMode>({ export const $desktopMode = atom<DesktopMode>({
@@ -53,3 +47,12 @@ export const $selectedLineId = atom<string>({
key: "SELECTED_LINE_ID", key: "SELECTED_LINE_ID",
default: null, default: null,
}); });
interface MediaSettings {
mode: "audio" | "video";
isMuted: boolean;
}
export const $mediaSettings = atom<MediaSettings>({
key: "MEDIA_SETTINGS",
default: { isMuted: false, mode: "audio" },
});
+2 -2
View File
@@ -233,8 +233,8 @@ export default function NirvanaRouter() {
console.log( console.log(
"window blurring now, should be always on top and then ill tell main process to change dimensions" "window blurring now, should be always on top and then ill tell main process to change dimensions"
); );
// todo: just in testing mode // TODO: testing mode
setDesktopMode("overlayOnly"); // setDesktopMode("overlayOnly");
}); });
}, [setDesktopMode]); }, [setDesktopMode]);
+128 -107
View File
@@ -1366,10 +1366,10 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0:
dependencies: dependencies:
color-convert "^2.0.1" color-convert "^2.0.1"
antd@^4.19.2: antd@^4.20.2:
version "4.19.2" version "4.20.2"
resolved "https://registry.yarnpkg.com/antd/-/antd-4.19.2.tgz#5438478aedf61bf670784611cba077387ff0f1b3" resolved "https://registry.yarnpkg.com/antd/-/antd-4.20.2.tgz#1ed2042a091eecfebd9650c014a1a2e57430ff2b"
integrity sha512-qXM6d6hFsT5rZJB4TRTHl32dixu1IHmPD0QLzG5YuUpzecv6QoTr1ZMp2/I1MMCb1+n99yQ5gFx7U677AbL5hw== integrity sha512-b+Gq1EY8LmcS/ARei/dGI0bWQlJ/j3f3oJ6XjM+ryyT5YWxvf7X3mGc++bTGuLmjn6+/icRL1zItIgcvplcomg==
dependencies: dependencies:
"@ant-design/colors" "^6.0.0" "@ant-design/colors" "^6.0.0"
"@ant-design/icons" "^4.7.0" "@ant-design/icons" "^4.7.0"
@@ -1380,39 +1380,40 @@ antd@^4.19.2:
copy-to-clipboard "^3.2.0" copy-to-clipboard "^3.2.0"
lodash "^4.17.21" lodash "^4.17.21"
memoize-one "^6.0.0" memoize-one "^6.0.0"
moment "^2.25.3" moment "^2.29.2"
rc-cascader "~3.2.1" rc-cascader "~3.5.0"
rc-checkbox "~2.3.0" rc-checkbox "~2.3.0"
rc-collapse "~3.1.0" rc-collapse "~3.1.0"
rc-dialog "~8.6.0" rc-dialog "~8.8.1"
rc-drawer "~4.4.2" rc-drawer "~4.4.2"
rc-dropdown "~3.3.2" rc-dropdown "~3.5.0"
rc-field-form "~1.24.0" rc-field-form "~1.26.1"
rc-image "~5.2.5" rc-image "~5.6.0"
rc-input "~0.0.1-alpha.5" rc-input "~0.0.1-alpha.5"
rc-input-number "~7.3.0" rc-input-number "~7.3.0"
rc-mentions "~1.6.1" rc-mentions "~1.7.0"
rc-menu "~9.3.2" rc-menu "~9.5.5"
rc-motion "^2.4.4" rc-motion "^2.5.1"
rc-notification "~4.5.7" rc-notification "~4.6.0"
rc-pagination "~3.1.9" rc-pagination "~3.1.9"
rc-picker "~2.6.4" rc-picker "~2.6.4"
rc-progress "~3.2.1" rc-progress "~3.2.1"
rc-rate "~2.9.0" rc-rate "~2.9.0"
rc-resize-observer "^1.2.0" rc-resize-observer "^1.2.0"
rc-select "~14.0.2" rc-segmented "~2.1.0 "
rc-slider "~10.0.0-alpha.4" rc-select "~14.1.1"
rc-slider "~10.0.0"
rc-steps "~4.1.0" rc-steps "~4.1.0"
rc-switch "~3.2.0" rc-switch "~3.2.0"
rc-table "~7.23.0" rc-table "~7.24.0"
rc-tabs "~11.10.0" rc-tabs "~11.13.0"
rc-textarea "~0.3.0" rc-textarea "~0.3.0"
rc-tooltip "~5.1.1" rc-tooltip "~5.1.1"
rc-tree "~5.4.3" rc-tree "~5.5.0"
rc-tree-select "~5.1.1" rc-tree-select "~5.3.0"
rc-trigger "^5.2.10" rc-trigger "^5.2.10"
rc-upload "~4.3.0" rc-upload "~4.3.0"
rc-util "^5.19.3" rc-util "^5.20.0"
scroll-into-view-if-needed "^2.2.25" scroll-into-view-if-needed "^2.2.25"
anymatch@~3.1.2: anymatch@~3.1.2:
@@ -1557,10 +1558,10 @@ ast-types-flow@^0.0.7:
resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0=
async-validator@^4.0.2: async-validator@^4.1.0:
version "4.0.7" version "4.1.1"
resolved "https://registry.yarnpkg.com/async-validator/-/async-validator-4.0.7.tgz#034a0fd2103a6b2ebf010da75183bec299247afe" resolved "https://registry.yarnpkg.com/async-validator/-/async-validator-4.1.1.tgz#3cd1437faa2de64743f7d56649dd904c946a18fe"
integrity sha512-Pj2IR7u8hmUEDOwB++su6baaRi+QvsgajuFB9j95foM1N2gy5HM4z60hfusIO0fBPG5uLAEl6yCJr1jNSVugEQ== integrity sha512-p4DO/JXwjs8klJyJL8Q2oM4ks5fUTze/h5k10oPPKMiLe1fj3G1QMzPHNmN1Py4ycOk7WlO2DcGXv1qiESJCZA==
async@^2.6.2: async@^2.6.2:
version "2.6.3" version "2.6.3"
@@ -5565,11 +5566,16 @@ mkdirp@^1.0.3, mkdirp@^1.0.4:
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
moment@^2.24.0, moment@^2.25.3, moment@^2.29.1: moment@^2.24.0, moment@^2.29.1:
version "2.29.1" version "2.29.1"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3"
integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
moment@^2.29.2:
version "2.29.3"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3"
integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw==
mongodb-connection-string-url@^2.5.2: mongodb-connection-string-url@^2.5.2:
version "2.5.2" version "2.5.2"
resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.2.tgz#f075c8d529e8d3916386018b8a396aed4f16e5ed" resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.2.tgz#f075c8d529e8d3916386018b8a396aed4f16e5ed"
@@ -6597,16 +6603,16 @@ rc-align@^4.0.0:
rc-util "^5.3.0" rc-util "^5.3.0"
resize-observer-polyfill "^1.5.1" resize-observer-polyfill "^1.5.1"
rc-cascader@~3.2.1: rc-cascader@~3.5.0:
version "3.2.9" version "3.5.0"
resolved "https://registry.yarnpkg.com/rc-cascader/-/rc-cascader-3.2.9.tgz#b993fa2829d77e9cb98cf4b7711e13a1b1812db6" resolved "https://registry.yarnpkg.com/rc-cascader/-/rc-cascader-3.5.0.tgz#a49b632bc2d0c8ef31b212c8ddd0bea346e64877"
integrity sha512-Mvkegzf506PD7qc38kg2tGllIBXs5dio3DPg+NER7SiOfCXBCATWYEs0CbUp8JDQgYHoHF0vPvFMYtxFTJuWaw== integrity sha512-rpXnWCfvk7Frh2dBzMoA0c7i0nn6aJU7L2NZo8R8pNkrT0sKgytQSpdtPWP+Pq8IkvwbEd8BU8Z8OnOljcqgZg==
dependencies: dependencies:
"@babel/runtime" "^7.12.5" "@babel/runtime" "^7.12.5"
array-tree-filter "^2.1.0" array-tree-filter "^2.1.0"
classnames "^2.3.1" classnames "^2.3.1"
rc-select "~14.0.0-alpha.23" rc-select "~14.1.0"
rc-tree "~5.4.3" rc-tree "~5.5.0"
rc-util "^5.6.1" rc-util "^5.6.1"
rc-checkbox@~2.3.0: rc-checkbox@~2.3.0:
@@ -6628,15 +6634,15 @@ rc-collapse@~3.1.0:
rc-util "^5.2.1" rc-util "^5.2.1"
shallowequal "^1.1.0" shallowequal "^1.1.0"
rc-dialog@~8.6.0: rc-dialog@~8.8.0, rc-dialog@~8.8.1:
version "8.6.0" version "8.8.1"
resolved "https://registry.yarnpkg.com/rc-dialog/-/rc-dialog-8.6.0.tgz#3b228dac085de5eed8c6237f31162104687442e7" resolved "https://registry.yarnpkg.com/rc-dialog/-/rc-dialog-8.8.1.tgz#cd8897fbee1de0eab6d237a6abe1e4db8d09dd72"
integrity sha512-GSbkfqjqxpZC5/zc+8H332+q5l/DKUhpQr0vdX2uDsxo5K0PhvaMEVjyoJUTkZ3+JstEADQji1PVLVb/2bJeOQ== integrity sha512-7M1WKZCjfIABKEaJVskdYvb80z+RX7I11PeSjPVfLOOaJAmIepvDEd0alBtOZvOL3fZFWlMs4JVZtp9LZgONxA==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "^2.2.6" classnames "^2.2.6"
rc-motion "^2.3.0" rc-motion "^2.3.0"
rc-util "^5.6.1" rc-util "^5.21.0"
rc-drawer@~4.4.2: rc-drawer@~4.4.2:
version "4.4.3" version "4.4.3"
@@ -6647,33 +6653,33 @@ rc-drawer@~4.4.2:
classnames "^2.2.6" classnames "^2.2.6"
rc-util "^5.7.0" rc-util "^5.7.0"
rc-dropdown@^3.2.0, rc-dropdown@~3.3.2: rc-dropdown@~3.5.0:
version "3.3.3" version "3.5.2"
resolved "https://registry.yarnpkg.com/rc-dropdown/-/rc-dropdown-3.3.3.tgz#17ba32ebd066ae397b00e9e4d570c7c21daed88f" resolved "https://registry.yarnpkg.com/rc-dropdown/-/rc-dropdown-3.5.2.tgz#2f1f4eeb36c07fb67cd599c0cb8e861da3de5527"
integrity sha512-UNe68VpvtrpU0CS4jh5hD4iGqzi4Pdp7uOya6+H3QIEZxe7K+Xs11BNjZm6W4MaL0jTmzUj+bxvnq5bP3rRoVQ== integrity sha512-Ty4LsXjkspZuFJSRx3blCLLCDicXM5qds6F1odgEa+jcjC+OJKHQGnvE4FqtoljPaqWm4wG78pbgXH6Ddh2DkA==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "^2.2.6" classnames "^2.2.6"
rc-trigger "^5.0.4" rc-trigger "^5.0.4"
rc-util "^5.17.0" rc-util "^5.17.0"
rc-field-form@~1.24.0: rc-field-form@~1.26.1:
version "1.24.0" version "1.26.3"
resolved "https://registry.yarnpkg.com/rc-field-form/-/rc-field-form-1.24.0.tgz#2510a5c34713831ddcb412d4560be9057fc0dc5e" resolved "https://registry.yarnpkg.com/rc-field-form/-/rc-field-form-1.26.3.tgz#4050000eae0d879fde85672a965c9558ed6ff04b"
integrity sha512-5beNBU5gEyi8YRYyqbTWSu5hO0jZQN0AWpY3U7TcllUKrDLcZZdRXuAOpyxJQcttWFs+UAFsbcRAUtnOGBjl7w== integrity sha512-wzQToAwdr8fiq/Nb1KFq+9WYFeALJXKwNGk5/MaCu1AUS7PpVQaN2anzVfWdVBFiiM2N+3DOh64JSOH8s1w3FQ==
dependencies: dependencies:
"@babel/runtime" "^7.8.4" "@babel/runtime" "^7.8.4"
async-validator "^4.0.2" async-validator "^4.1.0"
rc-util "^5.8.0" rc-util "^5.8.0"
rc-image@~5.2.5: rc-image@~5.6.0:
version "5.2.5" version "5.6.2"
resolved "https://registry.yarnpkg.com/rc-image/-/rc-image-5.2.5.tgz#44e6ffc842626827960e7ab72e1c0d6f3a8ce440" resolved "https://registry.yarnpkg.com/rc-image/-/rc-image-5.6.2.tgz#31892b0b22aa5122fd9b1a067e9a4ba627004214"
integrity sha512-qUfZjYIODxO0c8a8P5GeuclYXZjzW4hV/5hyo27XqSFo1DmTCs2HkVeQObkcIk5kNsJtgsj1KoPThVsSc/PXOw== integrity sha512-qhKOVvivCZkd6CrzS/4ST2+Auu16mtPSFVqVzwE7sELWfuvzcLGTzGv8UsVvm6qRNIz6SeaueUetqi4Ii16XQA==
dependencies: dependencies:
"@babel/runtime" "^7.11.2" "@babel/runtime" "^7.11.2"
classnames "^2.2.6" classnames "^2.2.6"
rc-dialog "~8.6.0" rc-dialog "~8.8.0"
rc-util "^5.0.6" rc-util "^5.0.6"
rc-input-number@~7.3.0: rc-input-number@~7.3.0:
@@ -6694,35 +6700,22 @@ rc-input@~0.0.1-alpha.5:
classnames "^2.2.1" classnames "^2.2.1"
rc-util "^5.18.1" rc-util "^5.18.1"
rc-mentions@~1.6.1: rc-mentions@~1.7.0:
version "1.6.4" version "1.7.1"
resolved "https://registry.yarnpkg.com/rc-mentions/-/rc-mentions-1.6.4.tgz#b1c3c3864cee7a12bd51067f93eec24ba1000c70" resolved "https://registry.yarnpkg.com/rc-mentions/-/rc-mentions-1.7.1.tgz#480ad04af4460ee01b6ccd9137fcea23067aa9be"
integrity sha512-fhY6i39oATTW0F3+zXJKc2wyFVGu14j/HT0eQKf963JBwunuTRXpwbsB4XxxNjl3ZyV6KecPCfRGBAHR8cLHnQ== integrity sha512-JbCS9bTqt6BYN2vfTPythlScLuc42rIlX85n7975RnkfawXlJjskHOlR3o8EpD4asl4KuA2jKTy0dj39DtSVqg==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "^2.2.6" classnames "^2.2.6"
rc-menu "^9.0.0" rc-menu "~9.5.1"
rc-textarea "^0.3.0" rc-textarea "^0.3.0"
rc-trigger "^5.0.4" rc-trigger "^5.0.4"
rc-util "^5.0.1" rc-util "^5.0.1"
rc-menu@^9.0.0: rc-menu@~9.5.1, rc-menu@~9.5.5:
version "9.5.1" version "9.5.5"
resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-9.5.1.tgz#c9347a0aa047ce2b653374372ba912691fa7468b" resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-9.5.5.tgz#aa2f151d4191ed089dc1a8141fe365c9b77d61a9"
integrity sha512-eiwxqD+a6RdOqmppgcuSWP+d0OnWhD0aMxCjpE9ZR61CoRv9zeLhxPVLvYM/v8pJ/mb52E1Nw150Xb6B9PsOQQ== integrity sha512-wj2y2BAKwSMyWXO3RBf9sNN5V+DFWxFl45Ma6qQEHA5nwwh7p07bNgc6AAJc+L1+LAz+rWz3AU8PYyT17hMHCw==
dependencies:
"@babel/runtime" "^7.10.1"
classnames "2.x"
rc-motion "^2.4.3"
rc-overflow "^1.2.0"
rc-trigger "^5.1.2"
rc-util "^5.12.0"
shallowequal "^1.1.0"
rc-menu@~9.3.2:
version "9.3.2"
resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-9.3.2.tgz#bb842d37ebf71da912bea201cf7ef0a27267ad49"
integrity sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "2.x" classnames "2.x"
@@ -6741,15 +6734,24 @@ rc-motion@^2.0.0, rc-motion@^2.0.1, rc-motion@^2.2.0, rc-motion@^2.3.0, rc-motio
classnames "^2.2.1" classnames "^2.2.1"
rc-util "^5.19.2" rc-util "^5.19.2"
rc-notification@~4.5.7: rc-motion@^2.5.1:
version "4.5.7" version "2.6.0"
resolved "https://registry.yarnpkg.com/rc-notification/-/rc-notification-4.5.7.tgz#265e6e6a0c1a0fac63d6abd4d832eb8ff31522f1" resolved "https://registry.yarnpkg.com/rc-motion/-/rc-motion-2.6.0.tgz#c60c3e7f15257f55a8cd7794a539f0e2cc751399"
integrity sha512-zhTGUjBIItbx96SiRu3KVURcLOydLUHZCPpYEn1zvh+re//Tnq/wSxN4FKgp38n4HOgHSVxcLEeSxBMTeBBDdw== integrity sha512-1MDWA9+i174CZ0SIDenSYm2Wb9YbRkrexjZWR0CUFu7D6f23E8Y0KsTgk9NGOLJsGak5ELZK/Y5lOlf5wQdzbw==
dependencies:
"@babel/runtime" "^7.11.1"
classnames "^2.2.1"
rc-util "^5.21.0"
rc-notification@~4.6.0:
version "4.6.0"
resolved "https://registry.yarnpkg.com/rc-notification/-/rc-notification-4.6.0.tgz#4e76fc2d0568f03cc93ac18c9e20763ebe29fa46"
integrity sha512-xF3MKgIoynzjQAO4lqsoraiFo3UXNYlBfpHs0VWvwF+4pimen9/H1DYLN2mfRWhHovW6gRpla73m2nmyIqAMZQ==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "2.x" classnames "2.x"
rc-motion "^2.2.0" rc-motion "^2.2.0"
rc-util "^5.0.1" rc-util "^5.20.1"
rc-overflow@^1.0.0, rc-overflow@^1.2.0: rc-overflow@^1.0.0, rc-overflow@^1.2.0:
version "1.2.4" version "1.2.4"
@@ -6811,10 +6813,20 @@ rc-resize-observer@^1.0.0, rc-resize-observer@^1.1.0, rc-resize-observer@^1.2.0:
rc-util "^5.15.0" rc-util "^5.15.0"
resize-observer-polyfill "^1.5.1" resize-observer-polyfill "^1.5.1"
rc-select@~14.0.0-alpha.23, rc-select@~14.0.0-alpha.8, rc-select@~14.0.2: "rc-segmented@~2.1.0 ":
version "14.0.5" version "2.1.0"
resolved "https://registry.yarnpkg.com/rc-select/-/rc-select-14.0.5.tgz#145c42e7fd66a7fc6c5c56f6b0cf35d8b50f9e23" resolved "https://registry.yarnpkg.com/rc-segmented/-/rc-segmented-2.1.0.tgz#0e0afe646c1a0e44a0e18785f518c42633ec8efc"
integrity sha512-5X1bcktpE9++7Ef9Uq7f35kobGBNnddaDhkECjeICWIkCsl9xfYtujQiK1YEYXO5EIYoTVLV30PwN/E3mWAKOQ== integrity sha512-hUlonro+pYoZcwrH6Vm56B2ftLfQh046hrwif/VwLIw1j3zGt52p5mREBwmeVzXnSwgnagpOpfafspzs1asjGw==
dependencies:
"@babel/runtime" "^7.11.1"
classnames "^2.2.1"
rc-motion "^2.4.4"
rc-util "^5.17.0"
rc-select@~14.1.0, rc-select@~14.1.1:
version "14.1.2"
resolved "https://registry.yarnpkg.com/rc-select/-/rc-select-14.1.2.tgz#59a73726ef82a87b174ed0784cddfccc7e797e4b"
integrity sha512-/QgarL/T/d7MIPcoRmTca2TWHBoHBM1EQIgdaFmvl3qsYRSbrb8NpWcQuJoc9fprXERWxdYSTUThQObHvdEVBQ==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "2.x" classnames "2.x"
@@ -6824,10 +6836,10 @@ rc-select@~14.0.0-alpha.23, rc-select@~14.0.0-alpha.8, rc-select@~14.0.2:
rc-util "^5.16.1" rc-util "^5.16.1"
rc-virtual-list "^3.2.0" rc-virtual-list "^3.2.0"
rc-slider@~10.0.0-alpha.4: rc-slider@~10.0.0:
version "10.0.0-alpha.5" version "10.0.0"
resolved "https://registry.yarnpkg.com/rc-slider/-/rc-slider-10.0.0-alpha.5.tgz#cf13751bda15ce210a1c0d80e1675411e4c4b995" resolved "https://registry.yarnpkg.com/rc-slider/-/rc-slider-10.0.0.tgz#8ffe1dd3c8799c9d1f81ac808976f18af3dca206"
integrity sha512-EUAl7silkx+vtBbRkjUEzFWzxnMJrxOLcmUhCwP2xdZybRInRnLMU6TfE1fJLxb6ZN77ghSai6k7yExayVC+Gg== integrity sha512-Bk54UIKWW4wyhHcL8ehAxt+wX+n69dscnHTX6Uv0FMxSke/TGrlkZz1LSIWblCpfE2zr/dwR2Ca8nZGk3U+Tbg==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "^2.2.5" classnames "^2.2.5"
@@ -6853,10 +6865,10 @@ rc-switch@~3.2.0:
classnames "^2.2.1" classnames "^2.2.1"
rc-util "^5.0.1" rc-util "^5.0.1"
rc-table@~7.23.0: rc-table@~7.24.0:
version "7.23.1" version "7.24.1"
resolved "https://registry.yarnpkg.com/rc-table/-/rc-table-7.23.1.tgz#39f101a2ebd20fe4947a83be68e3cd9b4784f9e3" resolved "https://registry.yarnpkg.com/rc-table/-/rc-table-7.24.1.tgz#15ecabc9d69f8300b988caa52986e3b215150f2b"
integrity sha512-UJblLeDmv/6290lkjDvaMr85OUV3eCNXyRtBAk2LaZF0lF1+wqOvRKkbE8N5TvlWLwXcrH7ZPRRXrRXxtgfRYA== integrity sha512-DRWpv5z5pmOaTmy5GqWoskeV1thaOu5HuD+2f61b/CkbBqlgJR3cygc5R/Qvd2uVW6pHU0lYulhmz0VLVFm+rw==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "^2.2.5" classnames "^2.2.5"
@@ -6864,15 +6876,15 @@ rc-table@~7.23.0:
rc-util "^5.14.0" rc-util "^5.14.0"
shallowequal "^1.1.0" shallowequal "^1.1.0"
rc-tabs@~11.10.0: rc-tabs@~11.13.0:
version "11.10.7" version "11.13.0"
resolved "https://registry.yarnpkg.com/rc-tabs/-/rc-tabs-11.10.7.tgz#7d8b5dcc17f1608cf3b9425d80069f1415479335" resolved "https://registry.yarnpkg.com/rc-tabs/-/rc-tabs-11.13.0.tgz#083eed578f8ad02dc0d462d73da487fe32e3a573"
integrity sha512-7IKmcU7QU3CdYnJTabeXs2DDeLiXLyALC8fvOtgyWWFXUD47G5vG+4bFO3f9+AI+rcFAPpfwapZbXxgmiRuWYQ== integrity sha512-aUw1Pq0B1a2zGX4o/m3yrQycZcCLgDp6gKwn8IAU07q148RRONsVGxi0oLVVe5SE51kOB+j0bk1RX43ZBdZNgA==
dependencies: dependencies:
"@babel/runtime" "^7.11.2" "@babel/runtime" "^7.11.2"
classnames "2.x" classnames "2.x"
rc-dropdown "^3.2.0" rc-dropdown "~3.5.0"
rc-menu "^9.0.0" rc-menu "~9.5.1"
rc-resize-observer "^1.0.0" rc-resize-observer "^1.0.0"
rc-util "^5.5.0" rc-util "^5.5.0"
@@ -6895,21 +6907,21 @@ rc-tooltip@^5.0.1, rc-tooltip@~5.1.1:
"@babel/runtime" "^7.11.2" "@babel/runtime" "^7.11.2"
rc-trigger "^5.0.0" rc-trigger "^5.0.0"
rc-tree-select@~5.1.1: rc-tree-select@~5.3.0:
version "5.1.5" version "5.3.0"
resolved "https://registry.yarnpkg.com/rc-tree-select/-/rc-tree-select-5.1.5.tgz#ed51cc45eb490d18d67eba6864e9c7321199fcc0" resolved "https://registry.yarnpkg.com/rc-tree-select/-/rc-tree-select-5.3.0.tgz#6edd19d1066ad2bfa212f043c3ff701b93828026"
integrity sha512-OXAwCFO0pQmb48NcjUJtiX6rp4FroCXMfzqPmuVVoBGBV/uwO1TPyb+uBZ2/972zkCA8u4je5M5Qx51sL8y7jg== integrity sha512-UN6CUBulmch+CsihnJ73+DtWijEB1hVTC8sdVxq6E0teVAkHQZUvDj+cwZShtShAKvWwXy73PZ1hIHEUrmVcKw==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "2.x" classnames "2.x"
rc-select "~14.0.0-alpha.8" rc-select "~14.1.0"
rc-tree "~5.4.3" rc-tree "~5.5.0"
rc-util "^5.16.1" rc-util "^5.16.1"
rc-tree@~5.4.3: rc-tree@~5.5.0:
version "5.4.4" version "5.5.0"
resolved "https://registry.yarnpkg.com/rc-tree/-/rc-tree-5.4.4.tgz#2ea3663ad3c566aef79a46ba6a1e050d24323e01" resolved "https://registry.yarnpkg.com/rc-tree/-/rc-tree-5.5.0.tgz#ba7c8aea2ad29f40a9c7168e490300f7a50c0f22"
integrity sha512-2qoObRgp31DBXmVzMJmo4qmwP20XEa4hR3imWQtRPcgN3pmljW3WKFmZRrYdOFHz7CyTnRsFZR065bBkIoUpiA== integrity sha512-vpKeFsDyj7weik8UPseCTaSNAPt939qn1dQd8goSbRDajbjJEja0v/WFXyRhOiF1HLemNTfqMz4MYc9qlqyNXg==
dependencies: dependencies:
"@babel/runtime" "^7.10.1" "@babel/runtime" "^7.10.1"
classnames "2.x" classnames "2.x"
@@ -6937,7 +6949,7 @@ rc-upload@~4.3.0:
classnames "^2.2.5" classnames "^2.2.5"
rc-util "^5.2.0" rc-util "^5.2.0"
rc-util@^5.0.1, rc-util@^5.0.6, rc-util@^5.0.7, rc-util@^5.12.0, rc-util@^5.14.0, rc-util@^5.15.0, rc-util@^5.16.1, rc-util@^5.17.0, rc-util@^5.18.1, rc-util@^5.19.2, rc-util@^5.19.3, rc-util@^5.2.0, rc-util@^5.2.1, rc-util@^5.3.0, rc-util@^5.4.0, rc-util@^5.5.0, rc-util@^5.6.1, rc-util@^5.7.0, rc-util@^5.8.0, rc-util@^5.9.4, rc-util@^5.9.8: rc-util@^5.0.1, rc-util@^5.0.6, rc-util@^5.0.7, rc-util@^5.12.0, rc-util@^5.14.0, rc-util@^5.15.0, rc-util@^5.16.1, rc-util@^5.17.0, rc-util@^5.18.1, rc-util@^5.19.2, rc-util@^5.2.0, rc-util@^5.2.1, rc-util@^5.3.0, rc-util@^5.4.0, rc-util@^5.5.0, rc-util@^5.6.1, rc-util@^5.7.0, rc-util@^5.8.0, rc-util@^5.9.4, rc-util@^5.9.8:
version "5.19.3" version "5.19.3"
resolved "https://registry.yarnpkg.com/rc-util/-/rc-util-5.19.3.tgz#5f6aa854820f6d5824451d80771035b013eaf6d8" resolved "https://registry.yarnpkg.com/rc-util/-/rc-util-5.19.3.tgz#5f6aa854820f6d5824451d80771035b013eaf6d8"
integrity sha512-S28epi9E2s7Nir05q8Ffl3hzDLwkavTGi0PGH1cTqCmkpG1AeBEuZgQDpksYeU6IgHcds5hWIPE5PUcdFiZl8w== integrity sha512-S28epi9E2s7Nir05q8Ffl3hzDLwkavTGi0PGH1cTqCmkpG1AeBEuZgQDpksYeU6IgHcds5hWIPE5PUcdFiZl8w==
@@ -6946,6 +6958,15 @@ rc-util@^5.0.1, rc-util@^5.0.6, rc-util@^5.0.7, rc-util@^5.12.0, rc-util@^5.14.0
react-is "^16.12.0" react-is "^16.12.0"
shallowequal "^1.1.0" shallowequal "^1.1.0"
rc-util@^5.20.0, rc-util@^5.20.1, rc-util@^5.21.0:
version "5.21.2"
resolved "https://registry.yarnpkg.com/rc-util/-/rc-util-5.21.2.tgz#fa23277ba84e5561af2febdca64de3fc2b3e1528"
integrity sha512-QuuZ2tKMScGtxSx3rLzgPGGDZm/np7phMqA7OcDidSf44abvSk+AdtdD7ZvQPvCEtdC6nCSI5tEVnUaYjjD9/w==
dependencies:
"@babel/runtime" "^7.12.5"
react-is "^16.12.0"
shallowequal "^1.1.0"
rc-virtual-list@^3.2.0, rc-virtual-list@^3.4.2: rc-virtual-list@^3.2.0, rc-virtual-list@^3.4.2:
version "3.4.4" version "3.4.4"
resolved "https://registry.yarnpkg.com/rc-virtual-list/-/rc-virtual-list-3.4.4.tgz#be42832edecdcffc56260df131e437a2e0473bca" resolved "https://registry.yarnpkg.com/rc-virtual-list/-/rc-virtual-list-3.4.4.tgz#be42832edecdcffc56260df131e437a2e0473bca"