From e17c142a13b768780e73f14f316cb814862cab5a Mon Sep 17 00:00:00 2001 From: Hanxing Yang Date: Sun, 29 Sep 2024 14:14:37 +0800 Subject: [PATCH] Navbar for community pages (#958) * navbar for community * comment for NavbarWrapper centered * adjust responsive breakpoint --- .../components/community/CenteredWrapper.vue | 4 +- .../components/community/CommunityNavbar.vue | 50 ++++ spx-gui/src/components/community/TopNav.vue | 8 - .../components/editor/navbar/EditorNavbar.vue | 276 ++++++++++++++++++ .../navbar}/icons/cloud-check.svg | 0 .../navbar}/icons/export-project.svg | 0 .../navbar}/icons/failed-to-save.svg | 0 .../navbar}/icons/import-project.svg | 0 .../navbar}/icons/import-scratch.svg | 0 .../navbar}/icons/offline.svg | 0 .../{top-nav => editor/navbar}/icons/redo.svg | 0 .../navbar}/icons/remove-project.svg | 0 .../navbar}/icons/saving.svg | 0 .../navbar}/icons/share.svg | 0 .../navbar}/icons/stop-sharing.svg | 0 .../{top-nav => editor/navbar}/icons/undo.svg | 0 .../src/components/navbar/NavbarDropdown.vue | 38 +++ spx-gui/src/components/navbar/NavbarLang.vue | 40 +++ spx-gui/src/components/navbar/NavbarLogo.vue | 18 ++ .../navbar/NavbarNewProjectItem.vue | 25 ++ .../navbar/NavbarOpenProjectItem.vue | 19 ++ .../src/components/navbar/NavbarProfile.vue | 63 ++++ .../src/components/navbar/NavbarWrapper.vue | 88 ++++++ .../components/{top-nav => navbar}/TopNav.vue | 0 .../src/components/{top-nav => navbar}/bg.svg | 0 .../{top-nav => navbar}/icons/en.svg | 0 .../{top-nav => navbar}/icons/new.svg | 0 .../{top-nav => navbar}/icons/open.svg | 0 .../{top-nav => navbar}/icons/zh.svg | 0 .../components/{top-nav => navbar}/logo.svg | 0 spx-gui/src/components/ui/responsive.scss | 21 ++ spx-gui/src/pages/community/index.vue | 4 +- spx-gui/src/pages/editor/index.vue | 4 +- spx-gui/src/router.ts | 4 + 34 files changed, 648 insertions(+), 14 deletions(-) create mode 100644 spx-gui/src/components/community/CommunityNavbar.vue delete mode 100644 spx-gui/src/components/community/TopNav.vue create mode 100644 spx-gui/src/components/editor/navbar/EditorNavbar.vue rename spx-gui/src/components/{top-nav => editor/navbar}/icons/cloud-check.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/export-project.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/failed-to-save.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/import-project.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/import-scratch.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/offline.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/redo.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/remove-project.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/saving.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/share.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/stop-sharing.svg (100%) rename spx-gui/src/components/{top-nav => editor/navbar}/icons/undo.svg (100%) create mode 100644 spx-gui/src/components/navbar/NavbarDropdown.vue create mode 100644 spx-gui/src/components/navbar/NavbarLang.vue create mode 100644 spx-gui/src/components/navbar/NavbarLogo.vue create mode 100644 spx-gui/src/components/navbar/NavbarNewProjectItem.vue create mode 100644 spx-gui/src/components/navbar/NavbarOpenProjectItem.vue create mode 100644 spx-gui/src/components/navbar/NavbarProfile.vue create mode 100644 spx-gui/src/components/navbar/NavbarWrapper.vue rename spx-gui/src/components/{top-nav => navbar}/TopNav.vue (100%) rename spx-gui/src/components/{top-nav => navbar}/bg.svg (100%) rename spx-gui/src/components/{top-nav => navbar}/icons/en.svg (100%) rename spx-gui/src/components/{top-nav => navbar}/icons/new.svg (100%) rename spx-gui/src/components/{top-nav => navbar}/icons/open.svg (100%) rename spx-gui/src/components/{top-nav => navbar}/icons/zh.svg (100%) rename spx-gui/src/components/{top-nav => navbar}/logo.svg (100%) create mode 100644 spx-gui/src/components/ui/responsive.scss diff --git a/spx-gui/src/components/community/CenteredWrapper.vue b/spx-gui/src/components/community/CenteredWrapper.vue index b11f26a6f..05f37d7fe 100644 --- a/spx-gui/src/components/community/CenteredWrapper.vue +++ b/spx-gui/src/components/community/CenteredWrapper.vue @@ -5,7 +5,7 @@ diff --git a/spx-gui/src/components/community/TopNav.vue b/spx-gui/src/components/community/TopNav.vue deleted file mode 100644 index d5ff27f08..000000000 --- a/spx-gui/src/components/community/TopNav.vue +++ /dev/null @@ -1,8 +0,0 @@ - - - diff --git a/spx-gui/src/components/editor/navbar/EditorNavbar.vue b/spx-gui/src/components/editor/navbar/EditorNavbar.vue new file mode 100644 index 000000000..4acbd5d38 --- /dev/null +++ b/spx-gui/src/components/editor/navbar/EditorNavbar.vue @@ -0,0 +1,276 @@ + + + + + + diff --git a/spx-gui/src/components/top-nav/icons/cloud-check.svg b/spx-gui/src/components/editor/navbar/icons/cloud-check.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/cloud-check.svg rename to spx-gui/src/components/editor/navbar/icons/cloud-check.svg diff --git a/spx-gui/src/components/top-nav/icons/export-project.svg b/spx-gui/src/components/editor/navbar/icons/export-project.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/export-project.svg rename to spx-gui/src/components/editor/navbar/icons/export-project.svg diff --git a/spx-gui/src/components/top-nav/icons/failed-to-save.svg b/spx-gui/src/components/editor/navbar/icons/failed-to-save.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/failed-to-save.svg rename to spx-gui/src/components/editor/navbar/icons/failed-to-save.svg diff --git a/spx-gui/src/components/top-nav/icons/import-project.svg b/spx-gui/src/components/editor/navbar/icons/import-project.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/import-project.svg rename to spx-gui/src/components/editor/navbar/icons/import-project.svg diff --git a/spx-gui/src/components/top-nav/icons/import-scratch.svg b/spx-gui/src/components/editor/navbar/icons/import-scratch.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/import-scratch.svg rename to spx-gui/src/components/editor/navbar/icons/import-scratch.svg diff --git a/spx-gui/src/components/top-nav/icons/offline.svg b/spx-gui/src/components/editor/navbar/icons/offline.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/offline.svg rename to spx-gui/src/components/editor/navbar/icons/offline.svg diff --git a/spx-gui/src/components/top-nav/icons/redo.svg b/spx-gui/src/components/editor/navbar/icons/redo.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/redo.svg rename to spx-gui/src/components/editor/navbar/icons/redo.svg diff --git a/spx-gui/src/components/top-nav/icons/remove-project.svg b/spx-gui/src/components/editor/navbar/icons/remove-project.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/remove-project.svg rename to spx-gui/src/components/editor/navbar/icons/remove-project.svg diff --git a/spx-gui/src/components/top-nav/icons/saving.svg b/spx-gui/src/components/editor/navbar/icons/saving.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/saving.svg rename to spx-gui/src/components/editor/navbar/icons/saving.svg diff --git a/spx-gui/src/components/top-nav/icons/share.svg b/spx-gui/src/components/editor/navbar/icons/share.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/share.svg rename to spx-gui/src/components/editor/navbar/icons/share.svg diff --git a/spx-gui/src/components/top-nav/icons/stop-sharing.svg b/spx-gui/src/components/editor/navbar/icons/stop-sharing.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/stop-sharing.svg rename to spx-gui/src/components/editor/navbar/icons/stop-sharing.svg diff --git a/spx-gui/src/components/top-nav/icons/undo.svg b/spx-gui/src/components/editor/navbar/icons/undo.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/undo.svg rename to spx-gui/src/components/editor/navbar/icons/undo.svg diff --git a/spx-gui/src/components/navbar/NavbarDropdown.vue b/spx-gui/src/components/navbar/NavbarDropdown.vue new file mode 100644 index 000000000..8c270f349 --- /dev/null +++ b/spx-gui/src/components/navbar/NavbarDropdown.vue @@ -0,0 +1,38 @@ + + + + + diff --git a/spx-gui/src/components/navbar/NavbarLang.vue b/spx-gui/src/components/navbar/NavbarLang.vue new file mode 100644 index 000000000..d165b80f1 --- /dev/null +++ b/spx-gui/src/components/navbar/NavbarLang.vue @@ -0,0 +1,40 @@ + + + + + + diff --git a/spx-gui/src/components/navbar/NavbarLogo.vue b/spx-gui/src/components/navbar/NavbarLogo.vue new file mode 100644 index 000000000..608c7814c --- /dev/null +++ b/spx-gui/src/components/navbar/NavbarLogo.vue @@ -0,0 +1,18 @@ + + + + + diff --git a/spx-gui/src/components/navbar/NavbarNewProjectItem.vue b/spx-gui/src/components/navbar/NavbarNewProjectItem.vue new file mode 100644 index 000000000..ef9940021 --- /dev/null +++ b/spx-gui/src/components/navbar/NavbarNewProjectItem.vue @@ -0,0 +1,25 @@ + + + diff --git a/spx-gui/src/components/navbar/NavbarOpenProjectItem.vue b/spx-gui/src/components/navbar/NavbarOpenProjectItem.vue new file mode 100644 index 000000000..3722dc09d --- /dev/null +++ b/spx-gui/src/components/navbar/NavbarOpenProjectItem.vue @@ -0,0 +1,19 @@ + + + diff --git a/spx-gui/src/components/navbar/NavbarProfile.vue b/spx-gui/src/components/navbar/NavbarProfile.vue new file mode 100644 index 000000000..88f673f44 --- /dev/null +++ b/spx-gui/src/components/navbar/NavbarProfile.vue @@ -0,0 +1,63 @@ + + + + + diff --git a/spx-gui/src/components/navbar/NavbarWrapper.vue b/spx-gui/src/components/navbar/NavbarWrapper.vue new file mode 100644 index 000000000..797a5bf86 --- /dev/null +++ b/spx-gui/src/components/navbar/NavbarWrapper.vue @@ -0,0 +1,88 @@ + + + + + diff --git a/spx-gui/src/components/top-nav/TopNav.vue b/spx-gui/src/components/navbar/TopNav.vue similarity index 100% rename from spx-gui/src/components/top-nav/TopNav.vue rename to spx-gui/src/components/navbar/TopNav.vue diff --git a/spx-gui/src/components/top-nav/bg.svg b/spx-gui/src/components/navbar/bg.svg similarity index 100% rename from spx-gui/src/components/top-nav/bg.svg rename to spx-gui/src/components/navbar/bg.svg diff --git a/spx-gui/src/components/top-nav/icons/en.svg b/spx-gui/src/components/navbar/icons/en.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/en.svg rename to spx-gui/src/components/navbar/icons/en.svg diff --git a/spx-gui/src/components/top-nav/icons/new.svg b/spx-gui/src/components/navbar/icons/new.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/new.svg rename to spx-gui/src/components/navbar/icons/new.svg diff --git a/spx-gui/src/components/top-nav/icons/open.svg b/spx-gui/src/components/navbar/icons/open.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/open.svg rename to spx-gui/src/components/navbar/icons/open.svg diff --git a/spx-gui/src/components/top-nav/icons/zh.svg b/spx-gui/src/components/navbar/icons/zh.svg similarity index 100% rename from spx-gui/src/components/top-nav/icons/zh.svg rename to spx-gui/src/components/navbar/icons/zh.svg diff --git a/spx-gui/src/components/top-nav/logo.svg b/spx-gui/src/components/navbar/logo.svg similarity index 100% rename from spx-gui/src/components/top-nav/logo.svg rename to spx-gui/src/components/navbar/logo.svg diff --git a/spx-gui/src/components/ui/responsive.scss b/spx-gui/src/components/ui/responsive.scss new file mode 100644 index 000000000..7e9b4c28b --- /dev/null +++ b/spx-gui/src/components/ui/responsive.scss @@ -0,0 +1,21 @@ +// definition for responsive mixin + +@mixin responsive($size) { + @if $size == mobile { + @media (max-width: 767px) { + @content; + } + } @else if $size == tablet { + @media (min-width: 768px) { + @content; + } + } @else if $size == desktop { + @media (min-width: 1280px) { + @content; + } + } @else if $size == desktop-large { + @media (min-width: 1680px) { + @content; + } + } +} diff --git a/spx-gui/src/pages/community/index.vue b/spx-gui/src/pages/community/index.vue index 64252668c..343079e45 100644 --- a/spx-gui/src/pages/community/index.vue +++ b/spx-gui/src/pages/community/index.vue @@ -1,12 +1,12 @@