-
-
- Anyame
-
+
+
+
+ Anyame
+
+
+
+
+
-
-
-
-
-
\ No newline at end of file
+
diff --git a/nuxt.config.ts b/nuxt.config.ts
index 92fc551..954634e 100644
--- a/nuxt.config.ts
+++ b/nuxt.config.ts
@@ -8,7 +8,10 @@ export default defineNuxtConfig({
colorMode: {
classSuffix: ''
},
- css: ['~/assets/css/tailwind.css'],
+ css: [
+ '~/assets/css/tailwind.css',
+ '~/assets/css/main.css',
+ ],
vite: {
plugins: [
tailwindcss(),
diff --git a/pages/index.vue b/pages/index.vue
index 1277988..bd94fe5 100644
--- a/pages/index.vue
+++ b/pages/index.vue
@@ -3,85 +3,78 @@
import kodikImage from "assets/img/kodik.png";
import shikimoriImage from "assets/img/shikimori.png";
import {
- Select,
- SelectContent,
- SelectGroup,
- SelectItem,
- SelectLabel,
- SelectTrigger,
- SelectValue
+ Select,
+ SelectContent,
+ SelectGroup,
+ SelectItem,
+ SelectLabel,
+ SelectTrigger,
+ SelectValue
} from "~/components/ui/select";
import { toast } from "vue-sonner";
-import { Toaster } from "~/components/ui/sonner";
-import { Navbar } from "~/components/ui/navbar";
import 'vue-sonner/style.css'
import { Icon } from "#components";
const router = useRouter()
const searchProvider = ref('kodik')
const displaySearchProvider = computed(() => {
- let label = '';
- let image;
- if (searchProvider.value === 'kodik') {
- label = 'Kodik';
- image = kodikImage;
- }
- if (searchProvider.value === 'shikimori') {
- label = 'Shikimori';
- image = shikimoriImage;
- }
- return {
- label,
- image
- }
+ let label = '';
+ let image;
+ if (searchProvider.value === 'kodik') {
+ label = 'Kodik';
+ image = kodikImage;
+ }
+ if (searchProvider.value === 'shikimori') {
+ label = 'Shikimori';
+ image = shikimoriImage;
+ }
+ return {
+ label,
+ image
+ }
})
const search = defineModel
("")
function querySearch() {
- if (!search.value || search.value.trim() === "") {
- toast('Please enter a value');
- return;
- }
- router.push({ path: '/search', query: { title: search.value, provider: searchProvider.value } })
- .catch(err => {
- console.error('Navigation error:', err);
- toast.error('Failed to navigate to search results');
- });
+ if (!search.value || search.value.trim() === "") {
+ toast('Please enter a value');
+ return;
+ }
+ router.push({ path: '/search', query: { title: search.value, provider: searchProvider.value } })
+ .catch(err => {
+ console.error('Navigation error:', err);
+ toast.error('Failed to navigate to search results');
+ });
}
-
-
-
-
-
diff --git a/pages/search.vue b/pages/search.vue
index aa4ff44..edba0d2 100644
--- a/pages/search.vue
+++ b/pages/search.vue
@@ -9,50 +9,53 @@ const isLoading = ref(false)
const error = ref
(null)
watchEffect(async () => {
- if (!searchQuery.value) return
+ if (!searchQuery.value) return
- try {
- isLoading.value = true
- error.value = null
- const response = await search({ title: searchQuery.value })
- results.value = response.data.results || []
- } catch (err) {
- error.value = err
- console.error('Search failed:', err)
- } finally {
- isLoading.value = false
- }
+ try {
+ isLoading.value = true
+ error.value = null
+ const response = await search({ title: searchQuery.value })
+ results.value = response.data.results || []
+ } catch (err) {
+ error.value = err
+ console.error('Search failed:', err)
+ } finally {
+ isLoading.value = false
+ }
})
-
-
- Loading results...
-
+
+
+ Loading results...
+
-
- Error loading results: {{ error }}
-
+
+ Error loading results: {{ error }}
+
-
-
-
-
-
-
{{ item.title }}
-
Year: {{ item.material_data.year }}
-
Type: {{ item.material_data.anime_kind }}
-
Episodes: {{ item.material_data.episodes_total }}
-
-
-
-
-
+
+
+
+
+
+
+
+
{{ item.title }}
+
Year: {{ item.material_data.year }}
+
Type: {{ item.material_data.anime_kind }}
+
Episodes: {{ item.material_data.episodes_total }}
+
+
+
+
+
-
- No results found for "{{ searchQuery }}"
+
+ No results found for "{{ searchQuery }}"
+
-