mirror of
https://github.com/BetterSEQTA/BetterSEQTA-Plus.git
synced 2026-08-28 17:21:05 +00:00
feat: minor fixes before update
This commit is contained in:
@@ -327,12 +327,6 @@
|
||||
if (menuEl) syncCalendarSyncTheme(menuEl);
|
||||
}
|
||||
|
||||
$effect(() => {
|
||||
const host = rootEl?.closest(".timetable-calendar-controls");
|
||||
host?.classList.toggle("bsplus-cal-menu-open", menuOpen);
|
||||
return () => host?.classList.remove("bsplus-cal-menu-open");
|
||||
});
|
||||
|
||||
$effect(() => {
|
||||
if (menuOpen && menuEl) syncHostTheme();
|
||||
});
|
||||
@@ -496,7 +490,7 @@
|
||||
>
|
||||
<div class="bsplus-cal-menu-header">
|
||||
<span class="bsplus-cal-menu-title">Calendar sync</span>
|
||||
<span class="bsplus-cal-menu-sub">Copy your SEQTA timetable classes to Google or Outlook</span>
|
||||
<span class="bsplus-cal-menu-sub">Copy your SEQTA classes and appointments to Google or Outlook</span>
|
||||
</div>
|
||||
|
||||
{@render providerPanel(
|
||||
@@ -697,10 +691,14 @@
|
||||
min-width: auto;
|
||||
height: auto;
|
||||
padding: 0 10px;
|
||||
margin-left: 4px;
|
||||
margin: 0;
|
||||
border-radius: 16px !important;
|
||||
font-family: inherit;
|
||||
transition: transform 0.2s ease, opacity 0.2s ease;
|
||||
background: var(--bsplus-cal-surface, var(--background-primary, #232323)) !important;
|
||||
transition:
|
||||
transform 0.2s ease,
|
||||
opacity 0.2s ease,
|
||||
background-color 0.2s ease;
|
||||
overflow: hidden;
|
||||
isolation: isolate;
|
||||
}
|
||||
@@ -751,8 +749,13 @@
|
||||
transform: scale(0.97);
|
||||
}
|
||||
|
||||
.bsplus-cal-trigger--open {
|
||||
background: color-mix(in srgb, var(--bsplus-cal-accent, var(--better-main, #3b82f6)) 14%, transparent) !important;
|
||||
.bsplus-cal-trigger--open,
|
||||
.bsplus-cal-trigger--open:hover,
|
||||
.bsplus-cal-trigger--open:active {
|
||||
background: var(
|
||||
--bsplus-cal-surface-muted,
|
||||
color-mix(in srgb, var(--bsplus-cal-text, #fff) 12%, var(--bsplus-cal-surface, #232323))
|
||||
) !important;
|
||||
}
|
||||
|
||||
.bsplus-cal-trigger--busy {
|
||||
@@ -829,7 +832,7 @@
|
||||
|
||||
.bsplus-cal-menu {
|
||||
position: fixed;
|
||||
z-index: var(--bsplus-cal-z-menu, 2147483646);
|
||||
z-index: var(--bsplus-cal-z-menu, 1200);
|
||||
width: min(320px, calc(100vw - 24px));
|
||||
padding: 10px;
|
||||
border-radius: 14px;
|
||||
@@ -951,7 +954,7 @@
|
||||
.bsplus-cal-modal-backdrop {
|
||||
position: fixed;
|
||||
inset: 0;
|
||||
z-index: var(--bsplus-cal-z-modal, 2147483647);
|
||||
z-index: var(--bsplus-cal-z-modal, 1300);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
@@ -1027,7 +1030,7 @@
|
||||
position: fixed;
|
||||
right: 16px;
|
||||
bottom: 16px;
|
||||
z-index: 100000;
|
||||
z-index: var(--bsplus-cal-z-modal, 1300);
|
||||
max-width: min(360px, calc(100vw - 32px));
|
||||
padding: 12px 14px;
|
||||
border-radius: 12px;
|
||||
|
||||
@@ -1,28 +1,16 @@
|
||||
.timetablepage #toolbar {
|
||||
position: relative;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
.timetable-calendar-controls {
|
||||
position: relative;
|
||||
z-index: 100001;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.timetable-calendar-controls.bsplus-cal-menu-open {
|
||||
z-index: 2147483645;
|
||||
}
|
||||
|
||||
.timetablepage #toolbar:has(.bsplus-cal-menu-open) {
|
||||
z-index: 2147483645 !important;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
:root {
|
||||
--bsplus-cal-z-menu: 2147483646;
|
||||
--bsplus-cal-z-modal: 2147483647;
|
||||
--bsplus-cal-z-menu: 1200;
|
||||
--bsplus-cal-z-modal: 1300;
|
||||
}
|
||||
|
||||
.bsplus-calendar-sync-mount {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
@@ -155,8 +155,18 @@ export async function mountGoogleCalendarButton(): Promise<void> {
|
||||
registerCalendarContentHandlers();
|
||||
|
||||
const controls = document.createElement("div");
|
||||
controls.className = `${CONTROLS_CLASS} bsplus-timetable-control`;
|
||||
toolbar.appendChild(controls);
|
||||
controls.className = CONTROLS_CLASS;
|
||||
|
||||
// Sit between the date selector and zoom controls (same spacing as neighbours).
|
||||
const zoomControls = toolbar.querySelector(".timetable-zoom-controls");
|
||||
const dateButton = toolbar.querySelector(".buttonCalendar, button.calendar");
|
||||
if (zoomControls) {
|
||||
toolbar.insertBefore(controls, zoomControls);
|
||||
} else if (dateButton?.nextSibling) {
|
||||
toolbar.insertBefore(controls, dateButton.nextSibling);
|
||||
} else {
|
||||
toolbar.appendChild(controls);
|
||||
}
|
||||
|
||||
const mountRoot = document.createElement("div");
|
||||
mountRoot.className = "bsplus-calendar-sync-mount";
|
||||
|
||||
Reference in New Issue
Block a user