misc: Apply import sorting

This commit is contained in:
Michael Manganiello
2025-09-01 15:08:06 -03:00
parent 53da2cfcf7
commit c02e9fdb88
146 changed files with 447 additions and 450 deletions

View File

@@ -1,7 +1,7 @@
import eslint from "@eslint/js";
import tseslint from "typescript-eslint";
import globals from "globals";
import vue from "eslint-plugin-vue";
import globals from "globals";
import tseslint from "typescript-eslint";
export default tseslint.config(
eslint.configs.recommended,

View File

@@ -1,10 +1,10 @@
<script setup lang="ts">
import languageStore from "@/stores/language";
import consoleStore from "@/stores/console";
import languageStore from "@/stores/language";
import { useIdle } from "@vueuse/core";
import { storeToRefs } from "pinia";
import { ref } from "vue";
import { useI18n } from "vue-i18n";
import { useIdle } from "@vueuse/core";
const { locale } = useI18n();
const storeLanguage = languageStore();

View File

@@ -2,11 +2,11 @@
import AdminMenu from "@/components/common/Game/AdminMenu.vue";
import CopyRomDownloadLinkDialog from "@/components/common/Game/Dialog/CopyDownloadLink.vue";
import romApi from "@/services/api/rom";
import storeAuth from "@/stores/auth";
import storeConfig from "@/stores/config";
import storeDownload from "@/stores/download";
import storeHeartbeat from "@/stores/heartbeat";
import storeConfig from "@/stores/config";
import type { DetailedRom } from "@/stores/roms";
import storeAuth from "@/stores/auth";
import type { Events } from "@/types/emitter";
import {
getDownloadLink,
@@ -15,8 +15,8 @@ import {
isRuffleEmulationSupported,
} from "@/utils";
import type { Emitter } from "mitt";
import { computed, inject, ref } from "vue";
import { storeToRefs } from "pinia";
import { computed, inject, ref } from "vue";
import { useI18n } from "vue-i18n";
const props = defineProps<{ rom: DetailedRom }>();

View File

@@ -3,8 +3,8 @@ import Saves from "@/components/Details/Saves.vue";
import States from "@/components/Details/States.vue";
import type { DetailedRom } from "@/stores/roms";
import { ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
defineProps<{ rom: DetailedRom }>();

View File

@@ -1,16 +1,17 @@
<script setup lang="ts">
import { type FilterType } from "@/stores/galleryFilter";
import RAvatar from "@/components/common/Collection/RAvatar.vue";
import RDialog from "@/components/common/RDialog.vue";
import { type DetailedRom } from "@/stores/roms";
import { ROUTES } from "@/plugins/router";
import { type FilterType } from "@/stores/galleryFilter";
import storeHeartbeat from "@/stores/heartbeat";
import type { DetailedRom } from "@/stores/roms";
import { get } from "lodash";
import { MdPreview } from "md-editor-v3";
import { storeToRefs } from "pinia";
import { computed, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { useDisplay, useTheme } from "vuetify";
import { useI18n } from "vue-i18n";
import { MdPreview } from "md-editor-v3";
import { get } from "lodash";
import storeHeartbeat from "@/stores/heartbeat";
import { storeToRefs } from "pinia";
const props = defineProps<{ rom: DetailedRom }>();
const { t } = useI18n();

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import { useTheme, useDisplay } from "vuetify";
import type { DetailedRom } from "@/stores/roms";
import VuePdfApp from "vue3-pdf-app";
import { useTheme, useDisplay } from "vuetify";
defineProps<{ rom: DetailedRom }>();
const { xs } = useDisplay();

View File

@@ -1,18 +1,18 @@
<script setup lang="ts">
import type { RomUserStatus } from "@/__generated__";
import RetroAchievements from "@/components/Details/RetroAchievements.vue";
import RSection from "@/components/common/RSection.vue";
import romApi from "@/services/api/rom";
import storeAuth from "@/stores/auth";
import type { DetailedRom } from "@/stores/roms";
import type { RomUserStatus } from "@/__generated__";
import { getTextForStatus, getEmojiForStatus } from "@/utils";
import { debounce } from "lodash";
import { MdEditor, MdPreview } from "md-editor-v3";
import "md-editor-v3/lib/style.css";
import { debounce } from "lodash";
import { ref, watch } from "vue";
import { useDisplay, useTheme } from "vuetify";
import { useI18n } from "vue-i18n";
import { storeToRefs } from "pinia";
import { ref, watch } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay, useTheme } from "vuetify";
const { t } = useI18n();
const props = defineProps<{ rom: DetailedRom }>();

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import type { DetailedRom } from "@/stores/roms";
import storeAuth from "@/stores/auth";
import { ref, onMounted, computed } from "vue";
import type { RAGameRomAchievement } from "@/__generated__/models/RAGameRomAchievement";
import storeAuth from "@/stores/auth";
import type { DetailedRom } from "@/stores/roms";
import { ref, onMounted, computed } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import EmptySaves from "@/components/common/EmptyStates/EmptySaves.vue";
import type { SaveSchema } from "@/__generated__";
import EmptySaves from "@/components/common/EmptyStates/EmptySaves.vue";
import storeAuth from "@/stores/auth";
import { type DetailedRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";

View File

@@ -1,14 +1,14 @@
<script setup lang="ts">
import EmptySates from "@/components/common/EmptyStates/EmptyStates.vue";
import type { StateSchema } from "@/__generated__";
import EmptySates from "@/components/common/EmptyStates/EmptyStates.vue";
import storeAuth from "@/stores/auth";
import { type DetailedRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import { formatBytes, formatTimestamp } from "@/utils";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import storeAuth from "@/stores/auth";
import { storeToRefs } from "pinia";
import { getEmptyCoverImage } from "@/utils/covers";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
const { t } = useI18n();

View File

@@ -1,13 +1,13 @@
<script setup lang="ts">
import FavBtn from "@/components/common/Game/FavBtn.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import { ROUTES } from "@/plugins/router";
import type { DetailedRom } from "@/stores/roms";
import storePlatforms from "@/stores/platforms";
import type { DetailedRom } from "@/stores/roms";
import { storeToRefs } from "pinia";
import { useDisplay } from "vuetify";
import { computed } from "vue";
import { useDisplay } from "vuetify";
const props = defineProps<{ rom: DetailedRom }>();
const { smAndDown } = useDisplay();

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import SearchTextField from "@/components/Gallery/AppBar/Search/SearchTextField.vue";
import FilterBtn from "@/components/Gallery/AppBar/common/FilterBtn.vue";
import FilterDrawer from "@/components/Gallery/AppBar/common/FilterDrawer/Base.vue";
import SelectingBtn from "@/components/Gallery/AppBar/common/SelectingBtn.vue";
import SmartCollectionBtn from "@/components/Gallery/AppBar/common/SmartCollectionBtn.vue";
import GalleryViewBtn from "@/components/Gallery/AppBar/common/GalleryViewBtn.vue";
import CharIndexBar from "@/components/Gallery/AppBar/common/CharIndexBar.vue";
import ContextualRandomBtn from "@/components/Gallery/AppBar/common/ContextualRandomBtn.vue";
import FilterBtn from "@/components/Gallery/AppBar/common/FilterBtn.vue";
import FilterDrawer from "@/components/Gallery/AppBar/common/FilterDrawer/Base.vue";
import GalleryViewBtn from "@/components/Gallery/AppBar/common/GalleryViewBtn.vue";
import SelectingBtn from "@/components/Gallery/AppBar/common/SelectingBtn.vue";
import SmartCollectionBtn from "@/components/Gallery/AppBar/common/SmartCollectionBtn.vue";
import { calculateMainLayoutWidth } from "@/utils";
withDefaults(

View File

@@ -6,8 +6,8 @@ import RAvatar from "@/components/common/Collection/RAvatar.vue";
import storeNavigation from "@/stores/navigation";
import storeRoms from "@/stores/roms";
import { storeToRefs } from "pinia";
import { useDisplay } from "vuetify";
import { computed } from "vue";
import { useDisplay } from "vuetify";
const { xs } = useDisplay();
const navigationStore = storeNavigation();

View File

@@ -4,19 +4,19 @@ import DeleteCollectionDialog from "@/components/common/Collection/Dialog/Delete
import DeleteSmartCollectionDialog from "@/components/common/Collection/Dialog/DeleteSmartCollection.vue";
import RSection from "@/components/common/RSection.vue";
import type { UpdatedCollection } from "@/services/api/collection";
import storeCollection from "@/stores/collections";
import collectionApi from "@/services/api/collection";
import storeAuth from "@/stores/auth";
import storeCollection from "@/stores/collections";
import storeHeartbeat from "@/stores/heartbeat";
import storeNavigation from "@/stores/navigation";
import storeRoms from "@/stores/roms";
import type { Events } from "@/types/emitter";
import { getCollectionCoverImage } from "@/utils/covers";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { computed, inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
import { getCollectionCoverImage } from "@/utils/covers";
const { t } = useI18n();
const { smAndDown } = useDisplay();

View File

@@ -2,9 +2,9 @@
import CollectionCard from "@/components/common/Collection/Card.vue";
import DeleteCollectionDialog from "@/components/common/Collection/Dialog/DeleteCollection.vue";
import RSection from "@/components/common/RSection.vue";
import storeCollection from "@/stores/collections";
import collectionApi from "@/services/api/collection";
import storeAuth from "@/stores/auth";
import storeCollection from "@/stores/collections";
import storeNavigation from "@/stores/navigation";
import storeRoms from "@/stores/roms";
import type { Events } from "@/types/emitter";

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import BaseGalleryAppBar from "@/components/Gallery/AppBar/Base.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import FirmwareBtn from "@/components/Gallery/AppBar/Platform/FirmwareBtn.vue";
import FirmwareDrawer from "@/components/Gallery/AppBar/Platform/FirmwareDrawer.vue";
import PlatformInfoDrawer from "@/components/Gallery/AppBar/Platform/PlatformInfoDrawer.vue";
import storeRoms from "@/stores/roms";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import storeNavigation from "@/stores/navigation";
import storeRoms from "@/stores/roms";
import { storeToRefs } from "pinia";
import { useDisplay } from "vuetify";

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import type { FirmwareSchema } from "@/__generated__";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import DeleteFirmwareDialog from "@/components/common/Platform/Dialog/DeleteFirmware.vue";
import UploadFirmwareDialog from "@/components/common/Platform/Dialog/UploadFirmware.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import storeAuth from "@/stores/auth";
import storeGalleryView from "@/stores/galleryView";
import storeRoms from "@/stores/roms";
@@ -11,8 +11,8 @@ import { formatBytes, calculateMainLayoutWidth } from "@/utils";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { inject, ref, computed } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { xs, mdAndUp } = useDisplay();

View File

@@ -13,12 +13,12 @@ import storeRoms from "@/stores/roms";
import storeScanning from "@/stores/scanning";
import type { Events } from "@/types/emitter";
import { formatBytes } from "@/utils";
import { identity } from "lodash";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { computed, inject, ref, watch } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
import { identity } from "lodash";
const { t } = useI18n();
const emitter = inject<Emitter<Events>>("emitter");

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import storeRoms from "@/stores/roms";
import storeGalleryFilter from "@/stores/galleryFilter";
import storeRoms from "@/stores/roms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, nextTick, onMounted, watch } from "vue";
import { storeToRefs } from "pinia";
import { useRouter } from "vue-router";
import { inject, nextTick, onMounted, watch } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
const { t } = useI18n();
const router = useRouter();

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import storeRoms from "@/stores/roms";
import storeGalleryFilter from "@/stores/galleryFilter";
import storeGalleryView from "@/stores/galleryView";
import storeRoms from "@/stores/roms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";

View File

@@ -1,14 +1,14 @@
<script setup lang="ts">
import { ROUTES } from "@/plugins/router";
import romApi from "@/services/api/rom";
import storeGalleryFilter from "@/stores/galleryFilter";
import storeRoms from "@/stores/roms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject } from "vue";
import { useRouter } from "vue-router";
import { ROUTES } from "@/plugins/router";
import { storeToRefs } from "pinia";
import { inject } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
const { t } = useI18n();
const router = useRouter();

View File

@@ -1,26 +1,26 @@
<script setup lang="ts">
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import FilterUnmatchedBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterUnmatchedBtn.vue";
import SearchTextField from "@/components/Gallery/AppBar/Search/SearchTextField.vue";
import FilterDuplicatesBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterDuplicatesBtn.vue";
import FilterFavouritesBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterFavouritesBtn.vue";
import FilterMatchedBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterMatchedBtn.vue";
import FilterMissingBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterMissingBtn.vue";
import FilterFavouritesBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterFavouritesBtn.vue";
import FilterDuplicatesBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterDuplicatesBtn.vue";
import FilterPlayablesBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterPlayablesBtn.vue";
import FilterVerifiedBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterVerifiedBtn.vue";
import FilterRaBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterRaBtn.vue";
import SearchTextField from "@/components/Gallery/AppBar/Search/SearchTextField.vue";
import FilterUnmatchedBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterUnmatchedBtn.vue";
import FilterVerifiedBtn from "@/components/Gallery/AppBar/common/FilterDrawer/FilterVerifiedBtn.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import storeGalleryFilter from "@/stores/galleryFilter";
import storeRoms from "@/stores/roms";
import storePlatforms from "@/stores/platforms";
import storeRoms from "@/stores/roms";
import type { Events } from "@/types/emitter";
import { debounce } from "lodash";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { inject, nextTick, onMounted, watch } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { debounce } from "lodash";
import { useDisplay } from "vuetify";
withDefaults(
defineProps<{

View File

@@ -1,10 +1,10 @@
<script setup lang="ts">
import storeGalleryFilter from "@/stores/galleryFilter";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { computed, inject } from "vue";
import { useI18n } from "vue-i18n";
import storeGalleryFilter from "@/stores/galleryFilter";
import type { Emitter } from "mitt";
import type { Events } from "@/types/emitter";
import { storeToRefs } from "pinia";
const { t } = useI18n();
const galleryFilterStore = storeGalleryFilter();

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import { inject, ref } from "vue";
import type { Emitter } from "mitt";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
const showSortBar = ref(false);
const emitter = inject<Emitter<Events>>("emitter");

View File

@@ -12,9 +12,9 @@ import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRoute } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
const { smAndDown } = useDisplay();
const romsStore = storeRoms();

View File

@@ -1,10 +1,10 @@
<script setup lang="ts">
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import { RECENT_ROMS_LIMIT } from "@/services/api/rom";
import storeGalleryView from "@/stores/galleryView";
import storeRoms from "@/stores/roms";
import { views } from "@/utils";
import { storeToRefs } from "pinia";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import storeGalleryView from "@/stores/galleryView";
import { RECENT_ROMS_LIMIT } from "@/services/api/rom";
import storeRoms from "@/stores/roms";
const props = withDefaults(
defineProps<{

View File

@@ -3,10 +3,10 @@ import GameCard from "@/components/common/Game/Card/Base.vue";
import RSection from "@/components/common/RSection.vue";
import storeRoms from "@/stores/roms";
import { views } from "@/utils";
import { storeToRefs } from "pinia";
import { isNull } from "lodash";
import { useI18n } from "vue-i18n";
import { storeToRefs } from "pinia";
import { ref } from "vue";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const romsStore = storeRoms();

View File

@@ -2,11 +2,11 @@
import PlatformCard from "@/components/common/Platform/Card.vue";
import RSection from "@/components/common/RSection.vue";
import storePlatforms from "@/stores/platforms";
import { isNull } from "lodash";
import { views } from "@/utils";
import { useI18n } from "vue-i18n";
import { isNull } from "lodash";
import { storeToRefs } from "pinia";
import { ref } from "vue";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const platformsStore = storePlatforms();

View File

@@ -1,9 +1,9 @@
<script setup lang="ts">
import RSection from "@/components/common/RSection.vue";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import RSection from "@/components/common/RSection.vue";
import { views } from "@/utils";
import { ref } from "vue";
import { isNull } from "lodash";
import { ref } from "vue";
import { useI18n } from "vue-i18n";
const { t } = useI18n();

View File

@@ -3,10 +3,10 @@ import GameCard from "@/components/common/Game/Card/Base.vue";
import RSection from "@/components/common/RSection.vue";
import storeRoms from "@/stores/roms";
import { views } from "@/utils";
import { storeToRefs } from "pinia";
import { isNull } from "lodash";
import { useI18n } from "vue-i18n";
import { storeToRefs } from "pinia";
import { ref } from "vue";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const romsStore = storeRoms();

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import RSection from "@/components/common/RSection.vue";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import { views } from "@/utils";
import RSection from "@/components/common/RSection.vue";
import { RECENT_ROMS_LIMIT } from "@/services/api/rom";
import { views } from "@/utils";
defineProps<{ title: string }>();
</script>

View File

@@ -1,10 +1,10 @@
<script setup lang="ts">
import storeHeartbeat from "@/stores/heartbeat";
import RDialog from "@/components/common/RDialog.vue";
import RIsotipo from "@/components/common/RIsotipo.vue";
import { ref, inject } from "vue";
import storeHeartbeat from "@/stores/heartbeat";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { ref, inject } from "vue";
import { useI18n } from "vue-i18n";
const { t } = useI18n();

View File

@@ -1,9 +1,9 @@
<script setup lang="ts">
import { inject, computed } from "vue";
import type { Events } from "@/types/emitter";
import taskApi from "@/services/api/task";
import type { Emitter } from "mitt";
import storeRunningTasks from "@/stores/runningTasks";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, computed } from "vue";
const props = withDefaults(
defineProps<{

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import Task from "@/components/Settings/Administration/TaskOption.vue";
import RSection from "@/components/common/RSection.vue";
import { convertCronExperssion } from "@/utils";
import storeTasks from "@/stores/tasks";
import { convertCronExperssion } from "@/utils";
import { storeToRefs } from "pinia";
import { computed } from "vue";

View File

@@ -3,8 +3,8 @@ import RDialog from "@/components/common/RDialog.vue";
import userApi from "@/services/api/user";
import storeUsers from "@/stores/users";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { getRoleIcon } from "@/utils";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";

View File

@@ -8,8 +8,8 @@ import type { UserItem } from "@/types/user";
import { defaultAvatarPath, getRoleIcon } from "@/utils";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const user = ref<UserItem | null>(null);

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import RDialog from "@/components/common/RDialog.vue";
import userApi from "@/services/api/user";
import type { Events } from "@/types/emitter";
import { getRoleIcon } from "@/utils";
import userApi from "@/services/api/user";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { lgAndUp } = useDisplay();

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import CreateUserDialog from "@/components/Settings/Administration/Users/Dialog/CreateUser.vue";
import InviteLinkDialog from "@/components/Settings/Administration/Users/Dialog/InviteLink.vue";
import DeleteUserDialog from "@/components/Settings/Administration/Users/Dialog/DeleteUser.vue";
import InviteLinkDialog from "@/components/Settings/Administration/Users/Dialog/InviteLink.vue";
import RSection from "@/components/common/RSection.vue";
import userApi from "@/services/api/user";
import storeAuth from "@/stores/auth";

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import RDialog from "@/components/common/RDialog.vue";
import configApi from "@/services/api/config";
import storeConfig from "@/stores/config";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import storeConfig from "@/stores/config";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { mdAndUp, smAndDown } = useDisplay();

View File

@@ -3,14 +3,14 @@ import PlatformIcon from "@/components/common/Platform/Icon.vue";
import RDialog from "@/components/common/RDialog.vue";
import configApi from "@/services/api/config";
import platformApi from "@/services/api/platform";
import storeHeartbeat from "@/stores/heartbeat";
import storeConfig from "@/stores/config";
import storeHeartbeat from "@/stores/heartbeat";
import { type Platform } from "@/stores/platforms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { mdAndUp } = useDisplay();

View File

@@ -4,13 +4,13 @@ import RDialog from "@/components/common/RDialog.vue";
import configApi from "@/services/api/config";
import platformApi from "@/services/api/platform";
import storeConfig from "@/stores/config";
import storeHeartbeat from "@/stores/heartbeat";
import { type Platform } from "@/stores/platforms";
import type { Events } from "@/types/emitter";
import storeHeartbeat from "@/stores/heartbeat";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { mdAndUp } = useDisplay();

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import RSection from "@/components/common/RSection.vue";
import CreateExclusionDialog from "@/components/Settings/LibraryManagement/Config/Dialog/CreateExclusion.vue";
import ExcludedCard from "@/components/Settings/LibraryManagement/Config/ExcludedCard.vue";
import RSection from "@/components/common/RSection.vue";
import storeAuth from "@/stores/auth";
import storeConfig from "@/stores/config";
import { ref } from "vue";

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import { formatBytes } from "@/utils";
import PlatformListItem from "@/components/common/Platform/ListItem.vue";
import RSection from "@/components/common/RSection.vue";
import storePlatforms from "@/stores/platforms";
import { formatBytes } from "@/utils";
import { storeToRefs } from "pinia";
import { ref, computed } from "vue";
import { useI18n } from "vue-i18n";

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import { formatBytes } from "@/utils";
import RSection from "@/components/common/RSection.vue";
import { formatBytes } from "@/utils";
import { useI18n } from "vue-i18n";
defineProps<{

View File

@@ -2,10 +2,10 @@
import InterfaceOption from "@/components/Settings/UserInterface/InterfaceOption.vue";
import RSection from "@/components/common/RSection.vue";
import storeCollections from "@/stores/collections";
import { computed, ref } from "vue";
import { useDisplay } from "vuetify";
import { isNull } from "lodash";
import { computed, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { smAndDown } = useDisplay();

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import RSection from "@/components/common/RSection.vue";
import LanguageSelector from "@/components/Settings/UserInterface/LanguageSelector.vue";
import RSection from "@/components/common/RSection.vue";
import { useI18n } from "vue-i18n";
const { t } = useI18n();

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import { ref } from "vue";
import { useI18n } from "vue-i18n";
import languageStore from "@/stores/language";
import { storeToRefs } from "pinia";
import { ref } from "vue";
import { useI18n } from "vue-i18n";
const { locale } = useI18n();
const storeLanguage = languageStore();

View File

@@ -4,8 +4,8 @@ import RSection from "@/components/common/RSection.vue";
import { autoThemeKey, themes } from "@/styles/themes";
import { isKeyof } from "@/types";
import { computed, ref } from "vue";
import { useTheme } from "vuetify";
import { useI18n } from "vue-i18n";
import { useTheme } from "vuetify";
const { t } = useI18n();
const theme = useTheme();

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { xs } = useDisplay();

View File

@@ -1,10 +1,10 @@
<script setup lang="ts">
import RSection from "@/components/common/RSection.vue";
import storeAuth from "@/stores/auth";
import { inject, ref } from "vue";
import type { Emitter } from "mitt";
import type { Events } from "@/types/emitter";
import userApi from "@/services/api/user";
import storeAuth from "@/stores/auth";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { watch } from "vue";
import { useI18n } from "vue-i18n";

View File

@@ -1,13 +1,13 @@
<script setup lang="ts">
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import { ROUTES } from "@/plugins/router";
import type { CollectionType } from "@/stores/collections";
import storeGalleryView from "@/stores/galleryView";
import storeHeartbeat from "@/stores/heartbeat";
import { ROUTES } from "@/plugins/router";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import { getCollectionCoverImage, getFavoriteCoverImage } from "@/utils/covers";
import VanillaTilt from "vanilla-tilt";
import { computed, ref, watchEffect, onMounted, onBeforeUnmount } from "vue";
import { useDisplay } from "vuetify";
import VanillaTilt from "vanilla-tilt";
import { getCollectionCoverImage, getFavoriteCoverImage } from "@/utils/covers";
const EXTENSION_REGEX = /\.png|\.jpg|\.jpeg$/;

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import RAvatarCollection from "@/components/common/Collection/RAvatar.vue";
import CollectionListItem from "@/components/common/Collection/ListItem.vue";
import RAvatarCollection from "@/components/common/Collection/RAvatar.vue";
import RomListItem from "@/components/common/Game/ListItem.vue";
import RDialog from "@/components/common/RDialog.vue";
import type { UpdatedCollection } from "@/services/api/collection";
@@ -10,8 +10,8 @@ import storeRoms, { type SimpleRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref, watch } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { mdAndUp } = useDisplay();

View File

@@ -1,19 +1,19 @@
<script setup lang="ts">
import CollectionCard from "@/components/common/Collection/Card.vue";
import RDialog from "@/components/common/RDialog.vue";
import { ROUTES } from "@/plugins/router";
import collectionApi, {
type UpdatedCollection,
} from "@/services/api/collection";
import storeCollections from "@/stores/collections";
import storeHeartbeat from "@/stores/heartbeat";
import type { Events } from "@/types/emitter";
import { getMissingCoverImage } from "@/utils/covers";
import type { Emitter } from "mitt";
import { computed, inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { getMissingCoverImage } from "@/utils/covers";
import { useRouter } from "vue-router";
import { ROUTES } from "@/plugins/router";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { mdAndUp } = useDisplay();

View File

@@ -1,18 +1,18 @@
<script setup lang="ts">
import { ref, computed } from "vue";
import RDialog from "@/components/common/RDialog.vue";
import storeGalleryFilter from "@/stores/galleryFilter";
import type { Events } from "@/types/emitter";
import { ROUTES } from "@/plugins/router";
import collectionApi from "@/services/api/collection";
import storeCollections from "@/stores/collections";
import { storeToRefs } from "pinia";
import type { Emitter } from "mitt";
import { inject } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { ROUTES } from "@/plugins/router";
import { useRouter } from "vue-router";
import storeGalleryFilter from "@/stores/galleryFilter";
import type { Events } from "@/types/emitter";
import { getStatusKeyForText } from "@/utils";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { ref, computed } from "vue";
import { inject } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const galleryFilterStore = storeGalleryFilter();

View File

@@ -1,15 +1,15 @@
<script setup lang="ts">
import RAvatarCollection from "@/components/common/Collection/RAvatar.vue";
import RDialog from "@/components/common/RDialog.vue";
import { ROUTES } from "@/plugins/router";
import collectionApi from "@/services/api/collection";
import storeCollections, { type Collection } from "@/stores/collections";
import type { Events } from "@/types/emitter";
import { ROUTES } from "@/plugins/router";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const router = useRouter();

View File

@@ -1,15 +1,15 @@
<script setup lang="ts">
import RAvatarCollection from "@/components/common/Collection/RAvatar.vue";
import RDialog from "@/components/common/RDialog.vue";
import { ROUTES } from "@/plugins/router";
import collectionApi from "@/services/api/collection";
import storeCollections, { type SmartCollection } from "@/stores/collections";
import type { Events } from "@/types/emitter";
import { ROUTES } from "@/plugins/router";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const router = useRouter();

View File

@@ -1,8 +1,9 @@
<script setup lang="ts">
import RAvatarCollection from "@/components/common/Collection/RAvatar.vue";
import CollectionListItem from "@/components/common/Collection/ListItem.vue";
import RAvatarCollection from "@/components/common/Collection/RAvatar.vue";
import RomListItem from "@/components/common/Game/ListItem.vue";
import RDialog from "@/components/common/RDialog.vue";
import { ROUTES } from "@/plugins/router";
import type { UpdatedCollection } from "@/services/api/collection";
import collectionApi from "@/services/api/collection";
import storeCollections from "@/stores/collections";
@@ -10,10 +11,9 @@ import storeRoms, { type SimpleRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref, watch } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { ROUTES } from "@/plugins/router";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { mdAndUp } = useDisplay();

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import type { CollectionType } from "@/stores/collections";
import RAvatar from "@/components/common/Collection/RAvatar.vue";
import { ROUTES } from "@/plugins/router";
import type { CollectionType } from "@/stores/collections";
import { computed } from "vue";
const props = withDefaults(

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import storeHeartbeat from "@/stores/heartbeat";
import { type CollectionType } from "@/stores/collections";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import { type CollectionType } from "@/stores/collections";
import storeHeartbeat from "@/stores/heartbeat";
import { getCollectionCoverImage, getFavoriteCoverImage } from "@/utils/covers";
import { computed, ref, watchEffect } from "vue";

View File

@@ -1,17 +1,17 @@
<script setup lang="ts">
import { useFavoriteToggle } from "@/composables/useFavoriteToggle";
import romApi from "@/services/api/rom";
import socket from "@/services/socket";
import storeAuth from "@/stores/auth";
import storeCollections from "@/stores/collections";
import storeRoms from "@/stores/roms";
import storeHeartbeat from "@/stores/heartbeat";
import storeRoms from "@/stores/roms";
import type { SimpleRom } from "@/stores/roms";
import storeScanning from "@/stores/scanning";
import socket from "@/services/socket";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject } from "vue";
import { useI18n } from "vue-i18n";
import romApi from "@/services/api/rom";
import { useFavoriteToggle } from "@/composables/useFavoriteToggle";
const { t } = useI18n();
const props = defineProps<{ rom: SimpleRom }>();

View File

@@ -1,21 +1,21 @@
<script setup lang="ts">
import AdminMenu from "@/components/common/Game/AdminMenu.vue";
import { ROUTES } from "@/plugins/router";
import romApi from "@/services/api/rom";
import storeAuth from "@/stores/auth";
import storeConfig from "@/stores/config";
import storeDownload from "@/stores/download";
import storeHeartbeat from "@/stores/heartbeat";
import storeConfig from "@/stores/config";
import type { SimpleRom } from "@/stores/roms";
import storeAuth from "@/stores/auth";
import type { Events } from "@/types/emitter";
import {
isEJSEmulationSupported,
isRuffleEmulationSupported,
is3DSCIARom,
} from "@/utils";
import { ROUTES } from "@/plugins/router";
import type { Emitter } from "mitt";
import { computed, inject, ref, watch } from "vue";
import { storeToRefs } from "pinia";
import { computed, inject, ref, watch } from "vue";
import { useI18n } from "vue-i18n";
const props = defineProps<{ rom: SimpleRom; sizeActionBar: number }>();

View File

@@ -2,24 +2,24 @@
import type { SearchRomSchema } from "@/__generated__";
import ActionBar from "@/components/common/Game/Card/ActionBar.vue";
import Flags from "@/components/common/Game/Card/Flags.vue";
import Sources from "@/components/common/Game/Card/Sources.vue";
import storePlatforms from "@/stores/platforms";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import Sources from "@/components/common/Game/Card/Sources.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import { ROUTES } from "@/plugins/router";
import storeCollections from "@/stores/collections";
import storeGalleryView from "@/stores/galleryView";
import { ROUTES } from "@/plugins/router";
import storeHeartbeat from "@/stores/heartbeat";
import storePlatforms from "@/stores/platforms";
import storeRoms from "@/stores/roms";
import { type SimpleRom } from "@/stores/roms";
import { computed, ref, onMounted, onBeforeUnmount, inject } from "vue";
import type { Events } from "@/types/emitter";
import { getMissingCoverImage, getUnmatchedCoverImage } from "@/utils/covers";
import { isNull } from "lodash";
import { useDisplay } from "vuetify";
import VanillaTilt from "vanilla-tilt";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import storeHeartbeat from "@/stores/heartbeat";
import VanillaTilt from "vanilla-tilt";
import { computed, ref, onMounted, onBeforeUnmount, inject } from "vue";
import { useDisplay } from "vuetify";
const EXTENSION_REGEX = /\.png|\.jpg|\.jpeg$/;

View File

@@ -1,5 +1,4 @@
<script setup lang="ts">
import { computed } from "vue";
import { type SimpleRom } from "@/stores/roms";
import {
languageToEmoji,
@@ -8,6 +7,7 @@ import {
getTextForStatus,
} from "@/utils";
import { identity, isNull } from "lodash";
import { computed } from "vue";
const props = defineProps<{ rom: SimpleRom }>();
const showRegions = isNull(localStorage.getItem("settings.showRegions"))

View File

@@ -1,9 +1,9 @@
<script setup lang="ts">
import storePlatforms from "@/stores/platforms";
import storeGalleryView from "@/stores/galleryView";
import storePlatforms from "@/stores/platforms";
import { isNull } from "lodash";
import { computed } from "vue";
import { useDisplay } from "vuetify";
import { isNull } from "lodash";
const props = withDefaults(
defineProps<{

View File

@@ -1,16 +1,16 @@
<script setup lang="ts">
import type { SaveSchema } from "@/__generated__";
import RDialog from "@/components/common/RDialog.vue";
import type { DetailedRom } from "@/stores/roms";
import storeAuth from "@/stores/auth";
import type { DetailedRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import { formatBytes, formatTimestamp } from "@/utils";
import { getEmptyCoverImage } from "@/utils/covers";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { storeToRefs } from "pinia";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const auth = storeAuth();

View File

@@ -1,16 +1,16 @@
<script setup lang="ts">
import type { StateSchema } from "@/__generated__";
import RDialog from "@/components/common/RDialog.vue";
import type { DetailedRom } from "@/stores/roms";
import storeAuth from "@/stores/auth";
import type { DetailedRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import { formatBytes, formatTimestamp } from "@/utils";
import { getEmptyCoverImage } from "@/utils/covers";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { storeToRefs } from "pinia";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const auth = storeAuth();

View File

@@ -3,8 +3,8 @@ import RDialog from "@/components/common/RDialog.vue";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { lgAndUp } = useDisplay();

View File

@@ -1,17 +1,17 @@
<script setup lang="ts">
import RomListItem from "@/components/common/Game/ListItem.vue";
import RDialog from "@/components/common/RDialog.vue";
import romApi from "@/services/api/rom";
import storeRoms, { type SimpleRom } from "@/stores/roms";
import configApi from "@/services/api/config";
import type { Events } from "@/types/emitter";
import storeConfig from "@/stores/config";
import { ROUTES } from "@/plugins/router";
import configApi from "@/services/api/config";
import romApi from "@/services/api/rom";
import storeConfig from "@/stores/config";
import storeRoms, { type SimpleRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter, useRoute } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const { mdAndUp } = useDisplay();

View File

@@ -8,12 +8,12 @@ import storePlatforms from "@/stores/platforms";
import storeRoms, { type SimpleRom } from "@/stores/roms";
import storeUpload from "@/stores/upload";
import type { Events } from "@/types/emitter";
import { getMissingCoverImage } from "@/utils/covers";
import type { Emitter } from "mitt";
import { computed, inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRoute } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { getMissingCoverImage } from "@/utils/covers";
const { t } = useI18n();
const { lgAndUp } = useDisplay();

View File

@@ -1,21 +1,21 @@
<script setup lang="ts">
import type { SearchRomSchema } from "@/__generated__";
import GameCard from "@/components/common/Game/Card/Base.vue";
import RDialog from "@/components/common/RDialog.vue";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import EmptyManualMatch from "@/components/common/EmptyStates/EmptyManualMatch.vue";
import GameCard from "@/components/common/Game/Card/Base.vue";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import RDialog from "@/components/common/RDialog.vue";
import romApi from "@/services/api/rom";
import storeGalleryView from "@/stores/galleryView";
import storeHeartbeat from "@/stores/heartbeat";
import storeRoms, { type SimpleRom } from "@/stores/roms";
import storePlatforms from "@/stores/platforms";
import romApi from "@/services/api/rom";
import storeRoms, { type SimpleRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import { getMissingCoverImage } from "@/utils/covers";
import type { Emitter } from "mitt";
import { computed, inject, onBeforeUnmount, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRoute } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { getMissingCoverImage } from "@/utils/covers";
type MatchedSource = {
url_cover: string | undefined;

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import type { SimpleRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import { MdPreview } from "md-editor-v3";
import "md-editor-v3/lib/style.css";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import type { SimpleRom } from "@/stores/roms";
import { useTheme } from "vuetify";
import { useI18n } from "vue-i18n";
import { useTheme } from "vuetify";
const theme = useTheme();
const emitter = inject<Emitter<Events>>("emitter");

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import RDialog from "@/components/common/RDialog.vue";
import type { SimpleRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import RDialog from "@/components/common/RDialog.vue";
import { get3DSCIAFiles, getDownloadLink, is3DSCIAFile } from "@/utils";
import type { Emitter } from "mitt";
import qrcode from "qrcode";
import { inject, nextTick, ref } from "vue";
import { useDisplay } from "vuetify";
import qrcode from "qrcode";
const { lgAndUp } = useDisplay();
const show = ref(false);

View File

@@ -6,14 +6,14 @@ import romApi from "@/services/api/rom";
import socket from "@/services/socket";
import storeHeartbeat from "@/stores/heartbeat";
import { type Platform } from "@/stores/platforms";
import storeUpload from "@/stores/upload";
import storeScanning from "@/stores/scanning";
import storeUpload from "@/stores/upload";
import type { Events } from "@/types/emitter";
import { formatBytes } from "@/utils";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { xs, mdAndUp, smAndUp } = useDisplay();

View File

@@ -1,11 +1,11 @@
<script setup lang="ts">
import { useFavoriteToggle } from "@/composables/useFavoriteToggle";
import storeAuth from "@/stores/auth";
import storeCollections from "@/stores/collections";
import { type SimpleRom } from "@/stores/roms";
import storeAuth from "@/stores/auth";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { inject } from "vue";
import { useFavoriteToggle } from "@/composables/useFavoriteToggle";
const props = defineProps<{ rom: SimpleRom }>();
const collectionsStore = storeCollections();

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import type { SimpleRom } from "@/stores/roms";
import RAvatarRom from "@/components/common/Game/RAvatar.vue";
import { formatBytes } from "@/utils";
import { ROUTES } from "@/plugins/router";
import type { SimpleRom } from "@/stores/roms";
import { formatBytes } from "@/utils";
withDefaults(
defineProps<{

View File

@@ -1,15 +1,16 @@
<script setup lang="ts">
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import AdminMenu from "@/components/common/Game/AdminMenu.vue";
import FavBtn from "@/components/common/Game/FavBtn.vue";
import RAvatarRom from "@/components/common/Game/RAvatar.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import { ROUTES } from "@/plugins/router";
import romApi from "@/services/api/rom";
import storeAuth from "@/stores/auth";
import storeConfig from "@/stores/config";
import storeDownload from "@/stores/download";
import storeHeartbeat from "@/stores/heartbeat";
import storeAuth from "@/stores/auth";
import storeGalleryFilter from "@/stores/galleryFilter";
import storeHeartbeat from "@/stores/heartbeat";
import storeRoms, { type SimpleRom } from "@/stores/roms";
import {
formatBytes,
@@ -18,7 +19,6 @@ import {
languageToEmoji,
regionToEmoji,
} from "@/utils";
import { ROUTES } from "@/plugins/router";
import { isNull } from "lodash";
import { storeToRefs } from "pinia";
import { computed } from "vue";

View File

@@ -1,16 +1,16 @@
<script setup lang="ts">
import storeCollections from "@/stores/collections";
import CollectionListItem from "@/components/common/Collection/ListItem.vue";
import CreateCollectionDialog from "@/components/common/Collection/Dialog/CreateCollection.vue";
import CreateSmartCollectionDialog from "@/components/common/Collection/Dialog/CreateSmartCollection.vue";
import CollectionListItem from "@/components/common/Collection/ListItem.vue";
import storeCollections from "@/stores/collections";
import storeNavigation from "@/stores/navigation";
import type { Events } from "@/types/emitter";
import { isNull } from "lodash";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
import { inject, onBeforeUnmount, onMounted, ref, watch, computed } from "vue";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { isNull } from "lodash";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const navigationStore = storeNavigation();

View File

@@ -1,9 +1,9 @@
<script setup lang="ts">
import RIsotipo from "@/components/common/RIsotipo.vue";
import { ROUTES } from "@/plugins/router";
import storeNavigation from "@/stores/navigation";
import RIsotipo from "@/components/common/RIsotipo.vue";
import { useDisplay } from "vuetify";
import { storeToRefs } from "pinia";
import { useDisplay } from "vuetify";
const { smAndDown } = useDisplay();
const navigationStore = storeNavigation();

View File

@@ -1,16 +1,16 @@
<script setup lang="ts">
import UploadRomDialog from "@/components/common/Game/Dialog/UploadRom.vue";
import CollectionsBtn from "@/components/common/Navigation/CollectionsBtn.vue";
import CollectionsDrawer from "@/components/common/Navigation/CollectionsDrawer.vue";
import ConsoleModeBtn from "@/components/common/Navigation/ConsoleModeBtn.vue";
import HomeBtn from "@/components/common/Navigation/HomeBtn.vue";
import PlatformsBtn from "@/components/common/Navigation/PlatformsBtn.vue";
import CollectionsBtn from "@/components/common/Navigation/CollectionsBtn.vue";
import PlatformsDrawer from "@/components/common/Navigation/PlatformsDrawer.vue";
import ScanBtn from "@/components/common/Navigation/ScanBtn.vue";
import SearchBtn from "@/components/common/Navigation/SearchBtn.vue";
import SettingsDrawer from "@/components/common/Navigation/SettingsDrawer.vue";
import UploadBtn from "@/components/common/Navigation/UploadBtn.vue";
import UserBtn from "@/components/common/Navigation/UserBtn.vue";
import PlatformsDrawer from "@/components/common/Navigation/PlatformsDrawer.vue";
import CollectionsDrawer from "@/components/common/Navigation/CollectionsDrawer.vue";
import UploadRomDialog from "@/components/common/Game/Dialog/UploadRom.vue";
import SettingsDrawer from "@/components/common/Navigation/SettingsDrawer.vue";
import ConsoleModeBtn from "@/components/common/Navigation/ConsoleModeBtn.vue";
import storeNavigation from "@/stores/navigation";
import { storeToRefs } from "pinia";
import { useDisplay } from "vuetify";

View File

@@ -1,12 +1,12 @@
<script setup lang="ts">
import type { Platform } from "@/stores/platforms";
import PlatformListItem from "@/components/common/Platform/ListItem.vue";
import storeNavigation from "@/stores/navigation";
import type { Platform } from "@/stores/platforms";
import storePlatforms from "@/stores/platforms";
import { storeToRefs } from "pinia";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
import { ref, watch, computed } from "vue";
import { useI18n } from "vue-i18n";
import { useDisplay } from "vuetify";
const { t } = useI18n();
const { mdAndUp, smAndDown } = useDisplay();

View File

@@ -1,18 +1,18 @@
<script setup lang="ts">
import AboutDialog from "@/components/Settings/AboutDialog.vue";
import identityApi from "@/services/api/identity";
import { ROUTES } from "@/plugins/router";
import { refetchCSRFToken } from "@/services/api";
import identityApi from "@/services/api/identity";
import storeAuth from "@/stores/auth";
import storeNavigation from "@/stores/navigation";
import type { Events } from "@/types/emitter";
import { defaultAvatarPath, getRoleIcon } from "@/utils";
import { ROUTES } from "@/plugins/router";
import type { Emitter } from "mitt";
import { storeToRefs, getActivePinia, type StateTree } from "pinia";
import { inject, ref, watch, computed } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const navigationStore = storeNavigation();

View File

@@ -1,10 +1,10 @@
<script setup lang="ts">
import { ref, onMounted, onBeforeUnmount } from "vue";
import type { Platform } from "@/stores/platforms";
import { ROUTES } from "@/plugins/router";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import { ROUTES } from "@/plugins/router";
import type { Platform } from "@/stores/platforms";
import VanillaTilt from "vanilla-tilt";
import { ref, onMounted, onBeforeUnmount } from "vue";
import { useDisplay } from "vuetify";
const props = withDefaults(

View File

@@ -1,17 +1,17 @@
<script setup lang="ts">
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import RDialog from "@/components/common/RDialog.vue";
import { ROUTES } from "@/plugins/router";
import configApi from "@/services/api/config";
import platformApi from "@/services/api/platform";
import storeConfig from "@/stores/config";
import storePlatforms, { type Platform } from "@/stores/platforms";
import type { Events } from "@/types/emitter";
import configApi from "@/services/api/config";
import storeConfig from "@/stores/config";
import { ROUTES } from "@/plugins/router";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import type { Emitter } from "mitt";
import { inject, ref } from "vue";
import { useI18n } from "vue-i18n";
import { useRouter } from "vue-router";
import { useDisplay } from "vuetify";
import { useI18n } from "vue-i18n";
const { t } = useI18n();
const router = useRouter();

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import MissingFromFSIcon from "@/components/common/MissingFromFSIcon.vue";
import PlatformIcon from "@/components/common/Platform/Icon.vue";
import { ROUTES } from "@/plugins/router";
import type { Platform } from "@/stores/platforms";

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import type { SearchCoverSchema } from "@/__generated__";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import RDialog from "@/components/common/RDialog.vue";
import sgdbApi from "@/services/api/sgdb";
import Skeleton from "@/components/common/Game/Card/Skeleton.vue";
import storeGalleryView from "@/stores/galleryView";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";

View File

@@ -1,9 +1,9 @@
import { storeToRefs } from "pinia";
import collectionApi from "@/services/api/collection";
import storeCollections, { type Collection } from "@/stores/collections";
import storeRoms, { type SimpleRom } from "@/stores/roms";
import type { Events } from "@/types/emitter";
import type { Emitter } from "mitt";
import { storeToRefs } from "pinia";
export function useFavoriteToggle(emitter?: Emitter<Events>) {
const collectionsStore = storeCollections();

View File

@@ -1,14 +1,14 @@
<script setup lang="ts">
import { InputBus, InputBusSymbol } from "@/console/input/bus";
import { attachGamepad } from "@/console/input/gamepad";
import { attachKeyboard } from "@/console/input/keyboard";
import { initializeSfx } from "@/console/utils/sfx";
import { ROUTES } from "@/plugins/router";
import { useConsoleTheme } from "@/stores/consoleTheme";
import { useIdle } from "@vueuse/core";
import { onMounted, onUnmounted, provide } from "vue";
import { type RouteLocationNormalized } from "vue-router";
import { InputBus, InputBusSymbol } from "@/console/input/bus";
import { attachKeyboard } from "@/console/input/keyboard";
import { attachGamepad } from "@/console/input/gamepad";
import { initializeSfx } from "@/console/utils/sfx";
import { useConsoleTheme } from "@/stores/consoleTheme";
import { ROUTES } from "@/plugins/router";
import { useRouter } from "vue-router";
import { useIdle } from "@vueuse/core";
const router = useRouter();
const bus = new InputBus();

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import { computed, onMounted, ref, watchEffect } from "vue";
import type { CollectionSchema } from "@/__generated__/models/CollectionSchema";
import { getFavoriteCoverImage } from "@/utils/covers";
import { collectionElementRegistry } from "@/console/composables/useElementRegistry";
import { getFavoriteCoverImage } from "@/utils/covers";
import { computed, onMounted, ref, watchEffect } from "vue";
const props = defineProps<{
collection: CollectionSchema;

View File

@@ -1,12 +1,11 @@
<script setup lang="ts">
import { computed, onMounted, ref } from "vue";
import storeCollections from "@/stores/collections";
import type { SimpleRomSchema } from "@/__generated__/models/SimpleRomSchema";
import {
recentElementRegistry,
gamesListElementRegistry,
} from "@/console/composables/useElementRegistry";
import type { SimpleRomSchema } from "@/__generated__/models/SimpleRomSchema";
import storeCollections from "@/stores/collections";
import { computed, onMounted, ref } from "vue";
const props = defineProps<{
rom: SimpleRomSchema;

View File

@@ -1,8 +1,8 @@
<script setup lang="ts">
import { computed, onMounted, onUnmounted, ref } from "vue";
import ArrowKeysIcon from "./icons/ArrowKeysIcon.vue";
import DPadIcon from "./icons/DPadIcon.vue";
import FaceButtons from "./icons/FaceButtons.vue";
import { computed, onMounted, onUnmounted, ref } from "vue";
interface Props {
showNavigation?: boolean;

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import { computed, onMounted } from "vue";
import NavigationText from "./NavigationText.vue";
import { computed, onMounted } from "vue";
const props = defineProps<{ urls: string[]; startIndex?: number }>();
const emit = defineEmits(["update:modelValue", "close"]);

View File

@@ -1,10 +1,10 @@
<script setup lang="ts">
import { ref, computed, onMounted, onUnmounted } from "vue";
import { useConsoleTheme } from "@/stores/consoleTheme";
import { useInputScope } from "@/console/composables/useInputScope";
import { getSfxEnabled, setSfxEnabled } from "@/console/utils/sfx";
import type { InputAction } from "@/console/input/actions";
import NavigationText from "@/console/components/NavigationText.vue";
import { useInputScope } from "@/console/composables/useInputScope";
import type { InputAction } from "@/console/input/actions";
import { getSfxEnabled, setSfxEnabled } from "@/console/utils/sfx";
import { useConsoleTheme } from "@/stores/consoleTheme";
import { ref, computed, onMounted, onUnmounted } from "vue";
const props = defineProps<{
modelValue: boolean;

View File

@@ -1,9 +1,9 @@
<script setup lang="ts">
import { computed, onMounted, ref } from "vue";
import { getPlatformTheme } from "@/console/constants/platforms";
import { systemElementRegistry } from "@/console/composables/useElementRegistry";
import { useThemeAssets } from "@/console/composables/useThemeAssets";
import { getPlatformTheme } from "@/console/constants/platforms";
import type { Platform } from "@/stores/platforms";
import { computed, onMounted, ref } from "vue";
const props = defineProps<{
platform: Platform;

View File

@@ -1,6 +1,6 @@
import { inject, onMounted, onUnmounted } from "vue";
import { InputBus, InputBusSymbol } from "@/console/input/bus";
import type { InputListener } from "@/console/input/actions";
import { InputBus, InputBusSymbol } from "@/console/input/bus";
import { inject, onMounted, onUnmounted } from "vue";
export function useInputScope() {
const bus = inject<InputBus>(InputBusSymbol);

View File

@@ -1,10 +1,10 @@
import { computed, type ComputedRef } from "vue";
import { useConsoleTheme } from "@/stores/consoleTheme";
import {
resolveAsset,
type AssetType,
type SupportedFormat,
} from "@/console/utils/assetResolver";
import { useConsoleTheme } from "@/stores/consoleTheme";
import { computed, type ComputedRef } from "vue";
// provides reactive asset paths for theme-aware components
// this is the single source of truth for all asset path resolution

View File

@@ -1,5 +1,5 @@
import type { InputAction, InputListener } from "./actions";
import { sfxForAction, playSfx } from "../utils/sfx";
import type { InputAction, InputListener } from "./actions";
export class InputBus {
private scopes: Array<Set<InputListener>> = [];

View File

@@ -1,3 +1,5 @@
import type { InputAction } from "./actions";
export interface InputConfig {
rtl: boolean;
repeat: { initialDelayMs: number; repeatEveryMs: number };
@@ -19,8 +21,6 @@ export interface InputConfig {
};
}
import type { InputAction } from "./actions";
export const defaultInputConfig: InputConfig = {
rtl: false,
repeat: { initialDelayMs: 350, repeatEveryMs: 120 },

View File

@@ -1,6 +1,6 @@
import type { InputAction } from "./actions";
import { InputBus } from "./bus";
import { defaultInputConfig } from "./config";
import type { InputAction } from "./actions";
interface ButtonState {
pressed: boolean;

View File

@@ -1,3 +1,5 @@
import type { InputAction } from "../input/actions";
let sfxEnabled = true;
export function setSfxEnabled(enabled: boolean): void {
@@ -241,7 +243,6 @@ export function playSfx(kind: SfxType) {
}
// map input actions to sfx categories
import type { InputAction } from "../input/actions";
export function sfxForAction(action: InputAction): SfxType | undefined {
switch (action) {
case "moveLeft":

View File

@@ -1,20 +1,20 @@
<script setup lang="ts">
import { computed, onMounted, onUnmounted, ref, watch, nextTick } from "vue";
import { formatDistanceToNow } from "date-fns";
import { useRoute, useRouter } from "vue-router";
import romApi from "@/services/api/rom";
import stateApi from "@/services/api/state";
import type { DetailedRomSchema } from "@/__generated__/models/DetailedRomSchema";
import ScreenshotLightbox from "@/console/components/ScreenshotLightbox.vue";
import BackButton from "@/console/components/BackButton.vue";
import NavigationText from "@/console/components/NavigationText.vue";
import NavigationHint from "@/console/components/NavigationHint.vue";
import NavigationText from "@/console/components/NavigationText.vue";
import ScreenshotLightbox from "@/console/components/ScreenshotLightbox.vue";
import { useInputScope } from "@/console/composables/useInputScope";
import type { InputAction } from "@/console/input/actions";
import { ROUTES } from "@/plugins/router";
import { getSupportedEJSCores } from "@/utils";
import romApi from "@/services/api/rom";
import stateApi from "@/services/api/state";
import storeRoms from "@/stores/roms";
import { getSupportedEJSCores } from "@/utils";
import { getMissingCoverImage, getUnmatchedCoverImage } from "@/utils/covers";
import { formatDistanceToNow } from "date-fns";
import { computed, onMounted, onUnmounted, ref, watch, nextTick } from "vue";
import { useRoute, useRouter } from "vue-router";
type FocusZone =
| "play"

Some files were not shown because too many files have changed in this diff Show More