diff --git a/public/icons/link-white.svg b/public/icons/link-white.svg
new file mode 100644
index 00000000..5a4bc439
--- /dev/null
+++ b/public/icons/link-white.svg
@@ -0,0 +1,4 @@
+
diff --git a/src/components/Nav/Header.module.scss b/src/components/Nav/Header.module.scss
index c04308a7..6e12aceb 100644
--- a/src/components/Nav/Header.module.scss
+++ b/src/components/Nav/Header.module.scss
@@ -20,6 +20,10 @@
}
}
+.mainHeaderInner {
+ position: relative;
+}
+
.headerFixed.headerScrolledBottom,
.headerFixed.headerScrolledTop {
.mainLogo {
@@ -31,6 +35,18 @@
}
}
+.popupShare {
+ opacity: 1;
+ transition: opacity 0.3s;
+ z-index: 1;
+
+ .headerScrolledTop & {
+ opacity: 0;
+ transition: opacity 0.3s, z-index 0s 0.3s;
+ z-index: -1;
+ }
+}
+
.headerFixed {
position: fixed;
top: 0;
diff --git a/src/components/Nav/Header.tsx b/src/components/Nav/Header.tsx
index 802db235..8d25caf2 100644
--- a/src/components/Nav/Header.tsx
+++ b/src/components/Nav/Header.tsx
@@ -3,12 +3,14 @@ import Private from './Private'
import Notifications from './Notifications'
import { Icon } from './Icon'
import { Modal } from './Modal'
+import { Popup } from './Popup'
import AuthModal from './AuthModal'
import { t } from '../../utils/intl'
-import { useModalStore, showModal, useWarningsStore } from '../../stores/ui'
+import {useModalStore, showModal, useWarningsStore, toggleModal} from '../../stores/ui'
import { useAuthStore } from '../../stores/auth'
import { handleClientRouteLinkClick, router, Routes, useRouter } from '../../stores/router'
import styles from './Header.module.scss'
+import stylesPopup from './Popup.module.scss'
import privateStyles from './Private.module.scss'
import { getPagePath } from '@nanostores/router'
import { getLogger } from '../../utils/logger'
@@ -49,11 +51,7 @@ export const Header = (props: Props) => {
const toggleFixed = () => setFixed(!fixed())
// effects
createEffect(() => {
- if (fixed() || getModal()) {
- document.body.classList.add('fixed')
- } else {
- document.body.classList.remove('fixed')
- }
+ document.body.classList.toggle('fixed', fixed() || (getModal() && getModal() !== 'share'));
}, [fixed(), getModal()])
// derived
@@ -71,8 +69,6 @@ export const Header = (props: Props) => {
onMount(() => {
let scrollTop = window.scrollY
- // window.console.log(props.title)
-
const handleScroll = () => {
setIsScrollingBottom(window.scrollY > scrollTop)
setIsScrolled(window.scrollY > 0)
@@ -98,7 +94,43 @@ export const Header = (props: Props) => {