Upgraded dependencies, bumped to Node 24.
This commit is contained in:
@@ -1,3 +1,73 @@
|
||||
<script setup>
|
||||
import {
|
||||
inject,
|
||||
nextTick,
|
||||
onMounted,
|
||||
ref,
|
||||
} from 'vue';
|
||||
|
||||
import Footer from '#/components/footer/footer.vue';
|
||||
|
||||
import BottomNavigation from '#/components/footer/navigation.vue';
|
||||
import Header from '#/components/header/header.vue';
|
||||
import Sidebar from '#/components/sidebar/sidebar.vue';
|
||||
import events from '#/src/events.js';
|
||||
|
||||
const pageContext = inject('pageContext');
|
||||
const { psa } = pageContext.env;
|
||||
const theme = ref(pageContext.env.theme);
|
||||
|
||||
const content = ref(null);
|
||||
const feedback = ref(null);
|
||||
const feedbackContainer = ref(null);
|
||||
const feedbackBubble = ref(null);
|
||||
const showSidebar = ref(false);
|
||||
|
||||
function blur() {
|
||||
events.emit('blur');
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
events.on('scrollUp', () => {
|
||||
content.value.scrollTop = 0;
|
||||
});
|
||||
|
||||
events.on('feedback', async (event) => {
|
||||
feedback.value = event;
|
||||
|
||||
await nextTick();
|
||||
|
||||
feedbackBubble.value.animate([
|
||||
{
|
||||
visibility: 'visible',
|
||||
transform: 'scaleY(0)',
|
||||
opacity: 1,
|
||||
},
|
||||
{
|
||||
transform: 'scaleY(1)',
|
||||
opacity: 1,
|
||||
offset: 0.002,
|
||||
},
|
||||
{
|
||||
transform: 'scaleY(1)',
|
||||
opacity: 1,
|
||||
offset: 0.5,
|
||||
},
|
||||
{
|
||||
opacity: 0,
|
||||
},
|
||||
], {
|
||||
duration: event.type === 'error' ? 5000 : 3000,
|
||||
easing: 'ease-in-out',
|
||||
});
|
||||
});
|
||||
|
||||
events.on('theme', (newTheme) => {
|
||||
theme.value = newTheme;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div
|
||||
id="container"
|
||||
@@ -50,74 +120,6 @@
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import {
|
||||
ref,
|
||||
onMounted,
|
||||
nextTick,
|
||||
inject,
|
||||
} from 'vue';
|
||||
|
||||
import events from '#/src/events.js';
|
||||
|
||||
import Header from '#/components/header/header.vue';
|
||||
import Footer from '#/components/footer/footer.vue';
|
||||
import Sidebar from '#/components/sidebar/sidebar.vue';
|
||||
import BottomNavigation from '#/components/footer/navigation.vue';
|
||||
|
||||
const pageContext = inject('pageContext');
|
||||
const { psa } = pageContext.env;
|
||||
const theme = ref(pageContext.env.theme);
|
||||
|
||||
const content = ref(null);
|
||||
const feedback = ref(null);
|
||||
const feedbackContainer = ref(null);
|
||||
const feedbackBubble = ref(null);
|
||||
const showSidebar = ref(false);
|
||||
|
||||
function blur() {
|
||||
events.emit('blur');
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
events.on('scrollUp', () => { content.value.scrollTop = 0; });
|
||||
|
||||
events.on('feedback', async (event) => {
|
||||
feedback.value = event;
|
||||
|
||||
await nextTick();
|
||||
|
||||
feedbackBubble.value.animate([
|
||||
{
|
||||
visibility: 'visible',
|
||||
transform: 'scaleY(0)',
|
||||
opacity: 1,
|
||||
},
|
||||
{
|
||||
transform: 'scaleY(1)',
|
||||
opacity: 1,
|
||||
offset: 0.002,
|
||||
},
|
||||
{
|
||||
transform: 'scaleY(1)',
|
||||
opacity: 1,
|
||||
offset: 0.5,
|
||||
},
|
||||
{
|
||||
opacity: 0,
|
||||
},
|
||||
], {
|
||||
duration: event.type === 'error' ? 5000 : 3000,
|
||||
easing: 'ease-in-out',
|
||||
});
|
||||
});
|
||||
|
||||
events.on('theme', (newTheme) => {
|
||||
theme.value = newTheme;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.slide-enter-active,
|
||||
.slide-leave-active {
|
||||
|
||||
Reference in New Issue
Block a user