Huakun 9cf06b1835
Feature: custom transition animation (#266)
* Add loading animation to general settings

* Update dependencies and integrate @tauri-store/svelte

- Added `bon` and `bon-macros` packages to Cargo.lock.
- Upgraded `tauri-plugin-svelte`, `tauri-store`, and related packages to their latest versions.
- Updated `@tauri-store/svelte` integration in the desktop app, including changes to app configuration and layout handling.
- Adjusted pnpm-lock.yaml to reflect updated package versions and added new dependencies.
- Introduced a new app configuration file for development.

* Enhance loading animation handling in FullScreenLoading component

- Integrated conditional rendering for loading animations based on app configuration.
- Updated default loading animation to "kunkun-dancing" in app configuration.
- Adjusted general settings to ensure proper type handling for language labels.
- Modified ui-iframe component to manage full-screen loading state more effectively.

* remove a mis-placed config file

* Refactor window handling to ensure focus after showing

- Updated various components to use promise chaining with `show()` and `setFocus()` for better window management.
- Introduced `data.win` in multiple places to streamline access to the current webview window.
- Enhanced splashscreen and app layout handling to improve user experience by ensuring the window is focused after being shown.

* Refactor window handling to improve safety and consistency

- Introduced optional chaining for `data.win` to prevent potential runtime errors when accessing window methods.
- Updated various components to ensure proper handling of window focus and visibility.
- Enhanced the layout and extension pages to utilize the current webview window more effectively, improving overall user experience.
2025-03-28 07:45:25 -04:00

33 lines
639 B
Svelte

<script lang="ts">
import { Layouts } from "@kksh/ui"
import { onMount } from "svelte"
let { data } = $props()
onMount(() => {
data.win?.show().then(() => data.win?.setFocus())
})
</script>
<Layouts.Center class="h-screen w-screen">
<div class="animate-zoom-in flex flex-col items-center justify-center gap-2 pb-20">
<img src="/favicon.png" alt="Logo" />
<h2 class="font-mono text-2xl font-extrabold">Kunkun</h2>
</div>
</Layouts.Center>
<style scoped>
.animate-zoom-in {
animation: zoom-in 0.2s ease-in-out;
}
@keyframes zoom-in {
from {
transform: scale(0);
}
to {
transform: scale(1);
}
}
</style>