aboutsummaryrefslogtreecommitdiff
path: root/src/components/timeline_menu/timeline_menu.vue
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/timeline_menu/timeline_menu.vue')
-rw-r--r--src/components/timeline_menu/timeline_menu.vue150
1 files changed, 81 insertions, 69 deletions
diff --git a/src/components/timeline_menu/timeline_menu.vue b/src/components/timeline_menu/timeline_menu.vue
index c24b9d72..5f1da1f7 100644
--- a/src/components/timeline_menu/timeline_menu.vue
+++ b/src/components/timeline_menu/timeline_menu.vue
@@ -10,7 +10,19 @@
@close="() => isOpen = false"
>
<template #content>
- <TimelineMenuContent />
+ <ListsMenuContent
+ v-if="useListsMenu"
+ :show-pin="false"
+ class="timelines"
+ />
+ <ul v-else>
+ <NavigationEntry
+ v-for="item in timelinesList"
+ :key="item.name"
+ :show-pin="false"
+ :item="item"
+ />
+ </ul>
</template>
<template #trigger>
<span class="button-unstyled title timeline-menu-title">
@@ -33,56 +45,7 @@
<script src="./timeline_menu.js"></script>
<style lang="scss">
-@import '../../_variables.scss';
-
-.TimelineMenu {
- margin-right: auto;
- min-width: 0;
-
- .popover-trigger-button {
- vertical-align: bottom;
- }
-
- .panel::after {
- border-top-right-radius: 0;
- border-top-left-radius: 0;
- }
-
- .timeline-menu-title {
- margin: 0;
- cursor: pointer;
- user-select: none;
- width: 100%;
- display: flex;
-
- .timeline-menu-name {
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- }
-
- svg {
- margin-left: 0.6em;
- transition: transform 100ms;
- }
-
- .click-blocker {
- cursor: default;
- flex-grow: 1;
- }
- }
-
- &.open .timeline-menu-title svg {
- color: $fallback--text;
- color: var(--panelText, $fallback--text);
- transform: rotate(180deg);
- }
-
- .panel {
- box-shadow: var(--popoverShadow);
- }
-
-}
+@import "../../variables";
.timeline-menu-popover {
min-width: 24rem;
@@ -98,24 +61,6 @@
padding: 0;
}
- li {
- border-bottom: 1px solid;
- border-color: $fallback--border;
- border-color: var(--border, $fallback--border);
- padding: 0;
-
- &:last-child a {
- border-bottom-right-radius: $fallback--panelRadius;
- border-bottom-right-radius: var(--panelRadius, $fallback--panelRadius);
- border-bottom-left-radius: $fallback--panelRadius;
- border-bottom-left-radius: var(--panelRadius, $fallback--panelRadius);
- }
-
- &:last-child {
- border: none;
- }
- }
-
a {
display: block;
padding: 0 0.65em;
@@ -127,6 +72,7 @@
background-color: var(--selectedMenu, $fallback--lightBg);
color: $fallback--link;
color: var(--selectedMenuText, $fallback--link);
+
--faint: var(--selectedMenuFaintText, $fallback--faint);
--faintLink: var(--selectedMenuFaintLink, $fallback--faint);
--lightText: var(--selectedMenuLightText, $fallback--lightText);
@@ -139,6 +85,7 @@
background-color: var(--selectedMenu, $fallback--lightBg);
color: $fallback--text;
color: var(--selectedMenuText, $fallback--text);
+
--faint: var(--selectedMenuFaintText, $fallback--faint);
--faintLink: var(--selectedMenuFaintLink, $fallback--faint);
--lightText: var(--selectedMenuLightText, $fallback--lightText);
@@ -154,6 +101,71 @@
margin-left: -0.2em;
}
}
+
+ li {
+ border-bottom: 1px solid;
+ border-color: $fallback--border;
+ border-color: var(--border, $fallback--border);
+ padding: 0;
+
+ &:last-child a {
+ border-bottom-right-radius: $fallback--panelRadius;
+ border-bottom-right-radius: var(--panelRadius, $fallback--panelRadius);
+ border-bottom-left-radius: $fallback--panelRadius;
+ border-bottom-left-radius: var(--panelRadius, $fallback--panelRadius);
+ }
+
+ &:last-child {
+ border: none;
+ }
+ }
}
+.TimelineMenu {
+ margin-right: auto;
+ min-width: 0;
+
+ .popover-trigger-button {
+ vertical-align: bottom;
+ }
+
+ .panel::after {
+ border-top-right-radius: 0;
+ border-top-left-radius: 0;
+ }
+
+ .timeline-menu-title {
+ margin: 0;
+ cursor: pointer;
+ user-select: none;
+ width: 100%;
+ display: flex;
+
+ .timeline-menu-name {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+
+ svg {
+ margin-left: 0.6em;
+ transition: transform 100ms;
+ }
+
+ .click-blocker {
+ cursor: default;
+ flex-grow: 1;
+ }
+ }
+
+ &.open .timeline-menu-title svg {
+ color: $fallback--text;
+ color: var(--panelText, $fallback--text);
+ transform: rotate(180deg);
+ }
+
+ .panel {
+ box-shadow: var(--popoverShadow);
+ }
+}
</style>