diff --git a/public/landing-gif-2c.mp4 b/public/landing-gif-2c.mp4 new file mode 100644 index 0000000..b129352 Binary files /dev/null and b/public/landing-gif-2c.mp4 differ diff --git a/public/landing-gifc.mp4 b/public/landing-gifc.mp4 new file mode 100644 index 0000000..489edf8 Binary files /dev/null and b/public/landing-gifc.mp4 differ diff --git a/src/components/AnimatedSVG/index.tsx b/src/components/AnimatedSVG/index.tsx index d7e184b..ea946c1 100644 --- a/src/components/AnimatedSVG/index.tsx +++ b/src/components/AnimatedSVG/index.tsx @@ -1,15 +1,16 @@ import React from "react"; import styles from "./AnimatedSVG.module.css"; -const AnimatedSVG = (): React.ReactNode => { +type AnimatedSVGProps = { size?: number }; +const AnimatedSVG = ({ size = 256 }: AnimatedSVGProps): React.ReactNode => { const stroke = "#fff"; return (
{/* width, height and viewBox are necessary */} diff --git a/src/components/StyledNavLink/StyledNavLink.module.css b/src/components/StyledNavLink/StyledNavLink.module.css index 3abf3a7..2d327ab 100644 --- a/src/components/StyledNavLink/StyledNavLink.module.css +++ b/src/components/StyledNavLink/StyledNavLink.module.css @@ -1,10 +1,7 @@ -a { +.base_link { padding: var(--mb-3) var(--mb-1); border-radius: 2%; width: 100%; - cursor: pointer; - text-decoration: none; - color: var(--text); text-align: center; } @@ -15,5 +12,5 @@ a { .inactive_link { background-color: var(--bgLinkInactive); - box-shadow: 2px 2px var(--bg); + box-shadow: 6px 6px var(--bg); } diff --git a/src/components/StyledNavLink/index.tsx b/src/components/StyledNavLink/index.tsx index 599d166..ea2861b 100644 --- a/src/components/StyledNavLink/index.tsx +++ b/src/components/StyledNavLink/index.tsx @@ -18,7 +18,9 @@ const StyledNavLink = ({ return ( (isActive ? activeClass : inactiveClass)} + className={({ isActive }) => + `${styles.base_link} ${isActive ? activeClass : inactiveClass}` + } > {text} diff --git a/src/index.css b/src/index.css index 42e8acd..e103842 100644 --- a/src/index.css +++ b/src/index.css @@ -69,6 +69,32 @@ ul { h1 { font-size: var(--headingFontSize); } +h2 { + font-size: calc(0.9 * var(--headingFontSize)); +} +h3 { + font-size: calc(0.8 * var(--headingFontSize)); +} +h4 { + font-size: calc(0.7 * var(--headingFontSize)); +} +h5 { + font-size: calc(0.6 * var(--headingFontSize)); +} +h6 { + font-size: calc(0.5 * var(--headingFontSize)); +} + +a, +a:link, +a:visited, +a:focus, +a:hover, +a:active { + text-decoration: none; + cursor: pointer; + color: var(--text); +} img { max-width: 100%; diff --git a/src/pages/Graph/index.tsx b/src/pages/Graph/index.tsx index 06be3aa..5d284c3 100644 --- a/src/pages/Graph/index.tsx +++ b/src/pages/Graph/index.tsx @@ -31,7 +31,7 @@ import styles from "./Graph.module.css"; import { IoIosGitNetwork } from "react-icons/io"; import { WiCloudRefresh } from "react-icons/wi"; import { MdOutlineLock, MdOutlineLockOpen } from "react-icons/md"; -import { AiFillSpotify } from "react-icons/ai"; +import { AiFillSpotify, AiOutlineDisconnect } from "react-icons/ai"; import { GiFamilyTree } from "react-icons/gi"; import { IoArrowDownOutline, IoArrowUpOutline } from "react-icons/io5"; @@ -241,6 +241,13 @@ const Graph = (): React.ReactNode => { [setLinkEdges, refreshAuth] ); + // manually triggering edge removal + const removeSelectedEdge = async () => { + await flowInstance.deleteElements({ + edges: linkEdges.filter((ed) => ed.id === selectedEdgeID), + }); + }; + // remove edge const onFlowBeforeDelete: OnBeforeDelete = useCallback( async ({ nodes, edges }) => { @@ -588,45 +595,63 @@ const Graph = (): React.ReactNode => { /> {loading && } + {selectedEdgeID !== "" && ( + + + + )}
- - -
- - -
- - -
+ {linkEdges.length > 0 ? ( + <> + + +
+ + +
+ + +
+ + ) : null}