diff --git a/src/__tests__/App.test.tsx b/src/__tests__/App.test.tsx
index f1857d85b..aa1b21aed 100644
--- a/src/__tests__/App.test.tsx
+++ b/src/__tests__/App.test.tsx
@@ -1,10 +1,9 @@
import '@testing-library/jest-dom';
-// import { render } from '@testing-library/react';
-// import { App } from 'renderer/app';
+import { render } from '@testing-library/react';
+import { App } from '../renderer/app';
describe('App', () => {
- // eslint-disable-next-line jest/no-commented-out-tests
- // it('should render', () => {
- // expect(render()).toBeTruthy();
- // });
+ it('should render', () => {
+ expect(render()).toBeTruthy();
+ });
});
diff --git a/src/renderer/api/albumsApi.ts b/src/renderer/api/albumsApi.ts
index a0d35c84e..3a07c23d8 100644
--- a/src/renderer/api/albumsApi.ts
+++ b/src/renderer/api/albumsApi.ts
@@ -1,4 +1,4 @@
-import { api } from 'renderer/lib';
+import { api } from '../lib';
import { AlbumsResponse, BasePaginationRequest } from './types';
export interface AlbumsRequest extends BasePaginationRequest {
diff --git a/src/renderer/api/serversApi.ts b/src/renderer/api/serversApi.ts
index a11b10803..9dfcfdac3 100644
--- a/src/renderer/api/serversApi.ts
+++ b/src/renderer/api/serversApi.ts
@@ -1,4 +1,4 @@
-import { api } from 'renderer/lib';
+import { api } from '../lib';
const getServers = async () => {
const { data } = await api.get('/servers');
diff --git a/src/renderer/api/usersApi.ts b/src/renderer/api/usersApi.ts
index 917ebef79..03f9b9336 100644
--- a/src/renderer/api/usersApi.ts
+++ b/src/renderer/api/usersApi.ts
@@ -1,4 +1,4 @@
-import { api } from 'renderer/lib';
+import { api } from '../lib';
import { UserResponse } from './types';
const getUsers = async () => {
diff --git a/src/renderer/components/audio-player/AudioPlayer.tsx b/src/renderer/components/audio-player/AudioPlayer.tsx
index cc05f0832..21e58453a 100644
--- a/src/renderer/components/audio-player/AudioPlayer.tsx
+++ b/src/renderer/components/audio-player/AudioPlayer.tsx
@@ -18,10 +18,10 @@ interface AudioPlayerProps extends ReactPlayerProps {
crossfadeDuration: number;
crossfadeStyle: CrossfadeStyle;
currentPlayer: 1 | 2;
+ playbackStyle: PlaybackStyle;
player1: Song;
player2: Song;
status: PlayerStatus;
- style: PlaybackStyle;
volume: number;
}
@@ -40,7 +40,7 @@ export const AudioPlayer = forwardRef(
(
{
status,
- style,
+ playbackStyle,
crossfadeStyle,
crossfadeDuration,
currentPlayer,
@@ -161,7 +161,9 @@ export const AudioPlayer = forwardRef(
width={0}
onEnded={handleOnEnded}
onProgress={
- style === PlaybackStyle.Gapless ? handleGapless1 : handleCrossfade1
+ playbackStyle === PlaybackStyle.Gapless
+ ? handleGapless1
+ : handleCrossfade1
}
/>
>
diff --git a/src/renderer/components/text/Text.tsx b/src/renderer/components/text/Text.tsx
index 44a4cc0d8..979d77890 100644
--- a/src/renderer/components/text/Text.tsx
+++ b/src/renderer/components/text/Text.tsx
@@ -9,8 +9,8 @@ import {
} from '@mantine/core';
import { Link } from 'react-router-dom';
import styled from 'styled-components';
-import { Font } from 'renderer/styles';
-import { textEllipsis } from 'renderer/styles/mixins';
+import { Font } from '../../styles';
+import { textEllipsis } from '../../styles/mixins';
type MantineTextDivProps = MantineTextProps & ComponentPropsWithoutRef<'div'>;
type MantineTextLinkProps = MantineTextProps & ComponentPropsWithRef<'link'>;
diff --git a/src/renderer/components/virtual-grid/GridCard.tsx b/src/renderer/components/virtual-grid/GridCard.tsx
index 90c102f57..fa36732d1 100644
--- a/src/renderer/components/virtual-grid/GridCard.tsx
+++ b/src/renderer/components/virtual-grid/GridCard.tsx
@@ -1,7 +1,7 @@
import { Card, Skeleton } from '@mantine/core';
import { motion } from 'framer-motion';
import styled from 'styled-components';
-import { CardRow } from 'renderer/types';
+import { CardRow } from '../../types';
import { Text } from '../text/Text';
import { GridCardControls } from './GridCardControls';
diff --git a/src/renderer/components/virtual-grid/GridCardControls.tsx b/src/renderer/components/virtual-grid/GridCardControls.tsx
index b57c0fbbf..b536f0ed2 100644
--- a/src/renderer/components/virtual-grid/GridCardControls.tsx
+++ b/src/renderer/components/virtual-grid/GridCardControls.tsx
@@ -1,8 +1,8 @@
import React from 'react';
import { UnstyledButton, UnstyledButtonProps } from '@mantine/core';
import { motion } from 'framer-motion';
+import { RiPlayFill } from 'react-icons/ri';
import styled from 'styled-components';
-import { PlayerPlay } from 'tabler-icons-react';
type PlayButtonType = UnstyledButtonProps &
React.ComponentPropsWithoutRef<'button'>;
@@ -81,7 +81,7 @@ export const GridCardControls = ({
});
}}
>
-
+
diff --git a/src/renderer/components/virtual-grid/VirtualGridWrapper.tsx b/src/renderer/components/virtual-grid/VirtualGridWrapper.tsx
index 3685aada7..c51b27ac0 100644
--- a/src/renderer/components/virtual-grid/VirtualGridWrapper.tsx
+++ b/src/renderer/components/virtual-grid/VirtualGridWrapper.tsx
@@ -1,7 +1,7 @@
import { Ref, useMemo } from 'react';
import { FixedSizeList, FixedSizeListProps } from 'react-window';
-import { usePlayQueueHandler } from 'renderer/features/player/hooks/usePlayQueueHandler';
-import { CardRow } from 'renderer/types';
+import { usePlayQueueHandler } from '../../features/player/hooks/usePlayQueueHandler';
+import { CardRow } from '../../types';
import { GridCard } from './GridCard';
export const VirtualGridWrapper = ({
diff --git a/src/renderer/components/virtual-grid/VirtualInfiniteGrid.tsx b/src/renderer/components/virtual-grid/VirtualInfiniteGrid.tsx
index 681e7f636..037822878 100644
--- a/src/renderer/components/virtual-grid/VirtualInfiniteGrid.tsx
+++ b/src/renderer/components/virtual-grid/VirtualInfiniteGrid.tsx
@@ -2,7 +2,7 @@ import { useState, useEffect, useRef, useMemo } from 'react';
import debounce from 'lodash/debounce';
import { FixedSizeListProps } from 'react-window';
import InfiniteLoader from 'react-window-infinite-loader';
-import { CardRow } from 'renderer/types';
+import { CardRow } from '../../types';
import { VirtualGridWrapper } from './VirtualGridWrapper';
interface VirtualGridProps
diff --git a/src/renderer/features/auth/queries/login.ts b/src/renderer/features/auth/queries/login.ts
index fd30e499f..3e96504c4 100644
--- a/src/renderer/features/auth/queries/login.ts
+++ b/src/renderer/features/auth/queries/login.ts
@@ -1,9 +1,9 @@
import md5 from 'md5';
import { nanoid } from 'nanoid';
import { useMutation, useQuery } from 'react-query';
-import { authApi } from 'renderer/api/authApi';
-import { queryKeys } from 'renderer/api/queryKeys';
-import { useAuthStore } from 'renderer/store';
+import { authApi } from '../../../api/authApi';
+import { queryKeys } from '../../../api/queryKeys';
+import { useAuthStore } from '../../../store';
export const useLogin = (
serverUrl: string,
diff --git a/src/renderer/features/auth/queries/usePingServer.ts b/src/renderer/features/auth/queries/usePingServer.ts
deleted file mode 100644
index c1e4d9958..000000000
--- a/src/renderer/features/auth/queries/usePingServer.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-import { useQuery } from 'react-query';
-import { authApi } from 'renderer/api/authApi';
-import { queryKeys } from 'renderer/api/queryKeys';
-
-export const usePingServer = (server: string) => {
- return useQuery({
- enabled: !!server,
- queryFn: () => authApi.ping(server),
- queryKey: queryKeys.ping(server),
- retry: false,
- });
-};
diff --git a/src/renderer/features/auth/routes/LoginRoute.tsx b/src/renderer/features/auth/routes/LoginRoute.tsx
index 5befd229e..1bb0dfe5d 100644
--- a/src/renderer/features/auth/routes/LoginRoute.tsx
+++ b/src/renderer/features/auth/routes/LoginRoute.tsx
@@ -12,7 +12,7 @@ import { useDebouncedValue } from '@mantine/hooks';
import { useTranslation } from 'react-i18next';
import { RiCheckboxCircleFill } from 'react-icons/ri';
import { useSearchParams } from 'react-router-dom';
-import { normalizeServerUrl } from 'renderer/utils';
+import { normalizeServerUrl } from '../../../utils';
import { useLogin, usePingServer } from '../queries/login';
import styles from './LoginRoute.module.scss';
diff --git a/src/renderer/features/library/components/LibraryTab.tsx b/src/renderer/features/library/components/LibraryTab.tsx
index 924d41882..bfdd529e8 100644
--- a/src/renderer/features/library/components/LibraryTab.tsx
+++ b/src/renderer/features/library/components/LibraryTab.tsx
@@ -2,7 +2,7 @@ import { ReactNode } from 'react';
import { motion } from 'framer-motion';
import { Link, LinkProps } from 'react-router-dom';
import styled from 'styled-components';
-import { fontGotham } from 'renderer/styles';
+import { fontGotham } from '../../../styles';
interface LibraryTabProps extends LinkProps {
children: ReactNode;
diff --git a/src/renderer/features/library/routes/LibraryAlbumsRoute.tsx b/src/renderer/features/library/routes/LibraryAlbumsRoute.tsx
index effe2fe93..980794a03 100644
--- a/src/renderer/features/library/routes/LibraryAlbumsRoute.tsx
+++ b/src/renderer/features/library/routes/LibraryAlbumsRoute.tsx
@@ -3,12 +3,12 @@ import { useState } from 'react';
import { Button, Group, Menu } from '@mantine/core';
import { useSetState } from '@mantine/hooks';
import AutoSizer from 'react-virtualized-auto-sizer';
-import i18n from 'i18n/i18n';
-import { albumsApi } from 'renderer/api/albumsApi';
-import { VirtualInfiniteGrid } from 'renderer/components/virtual-grid/VirtualInfiniteGrid';
-import { AnimatedPage } from 'renderer/features/shared/components/AnimatedPage';
-import { AppRoute } from 'renderer/router/utils/routes';
-import { Item } from 'types';
+import i18n from '../../../../i18n/i18n';
+import { Item } from '../../../../types';
+import { albumsApi } from '../../../api/albumsApi';
+import { VirtualInfiniteGrid } from '../../../components/virtual-grid/VirtualInfiniteGrid';
+import { AppRoute } from '../../../router/utils/routes';
+import { AnimatedPage } from '../../shared/components/AnimatedPage';
import { ViewType, ViewTypeButton } from '../components/ViewTypeButton';
import { useAlbums } from '../queries/getAlbums';
diff --git a/src/renderer/features/library/routes/LibraryArtistsRoute.tsx b/src/renderer/features/library/routes/LibraryArtistsRoute.tsx
index 83c30898f..946bf5d11 100644
--- a/src/renderer/features/library/routes/LibraryArtistsRoute.tsx
+++ b/src/renderer/features/library/routes/LibraryArtistsRoute.tsx
@@ -1,22 +1,18 @@
/* eslint-disable no-plusplus */
-import { useRef } from 'react';
-import InfiniteLoader from 'react-window-infinite-loader';
-import { AnimatedPage } from 'renderer/features/shared/components/AnimatedPage';
+import { AnimatedPage } from '../../shared/components/AnimatedPage';
import { useAlbums } from '../queries/getAlbums';
export const LibraryArtistsRoute = () => {
- const infiniteLoaderRef = useRef(null);
-
const params = {
orderBy: 'asc',
sortBy: 'title',
};
const { data: albums } = useAlbums({
- limit: 0,
- page: 0,
+ skip: 0,
+ take: 0,
...params,
});
- return ;
+ return Temp;
};
diff --git a/src/renderer/features/library/routes/LibraryRoute.tsx b/src/renderer/features/library/routes/LibraryRoute.tsx
index da47428c0..6f08b586b 100644
--- a/src/renderer/features/library/routes/LibraryRoute.tsx
+++ b/src/renderer/features/library/routes/LibraryRoute.tsx
@@ -1,6 +1,6 @@
import styled from 'styled-components';
-import { AnimatedPage } from 'renderer/features/shared/components/AnimatedPage';
-import { AppRoute } from 'renderer/router/utils/routes';
+import { AppRoute } from '../../../router/utils/routes';
+import { AnimatedPage } from '../../shared/components/AnimatedPage';
import LibraryTab from '../components/LibraryTab';
const TabContainer = styled.div`
diff --git a/src/renderer/features/player/components/CenterControls.tsx b/src/renderer/features/player/components/CenterControls.tsx
index aa4c7752f..dd73a9969 100644
--- a/src/renderer/features/player/components/CenterControls.tsx
+++ b/src/renderer/features/player/components/CenterControls.tsx
@@ -2,18 +2,18 @@ import { useEffect, useMemo, useState } from 'react';
import format from 'format-duration';
import { useTranslation } from 'react-i18next';
import {
- RiPlayFill,
- RiSkipForwardFill,
- RiSkipBackFill,
- RiSpeedFill,
- RiRewindFill,
RiPauseFill,
+ RiPlayFill,
+ RiRewindFill,
+ RiSkipBackFill,
+ RiSkipForwardFill,
+ RiSpeedFill,
} from 'react-icons/ri';
import styled from 'styled-components';
-import { Text } from 'renderer/components';
-import { usePlayerStore } from 'renderer/store';
-import { Font } from 'renderer/styles';
-import { PlaybackType, PlayerStatus } from 'types';
+import { PlaybackType, PlayerStatus } from '../../../../types';
+import { Text } from '../../../components';
+import { usePlayerStore } from '../../../store';
+import { Font } from '../../../styles';
import { useCenterControls } from '../hooks/useCenterControls';
import { PlayerButton } from './PlayerButton';
import { Slider } from './Slider';
diff --git a/src/renderer/features/player/components/LeftControls.tsx b/src/renderer/features/player/components/LeftControls.tsx
index eab370983..6d9bc2572 100644
--- a/src/renderer/features/player/components/LeftControls.tsx
+++ b/src/renderer/features/player/components/LeftControls.tsx
@@ -1,8 +1,8 @@
import { LazyLoadImage as Image } from 'react-lazy-load-image-component';
import styled from 'styled-components';
-import { Text } from 'renderer/components';
-import { usePlayerStore } from 'renderer/store';
-import { Font } from 'renderer/styles';
+import { Text } from '../../../components';
+import { usePlayerStore } from '../../../store';
+import { Font } from '../../../styles';
const LeftControlsContainer = styled.div`
display: flex;
diff --git a/src/renderer/features/player/components/PlayerButton.tsx b/src/renderer/features/player/components/PlayerButton.tsx
index 50bafa2ba..277d587e4 100644
--- a/src/renderer/features/player/components/PlayerButton.tsx
+++ b/src/renderer/features/player/components/PlayerButton.tsx
@@ -6,7 +6,7 @@ import {
} from '@mantine/core';
import { motion } from 'framer-motion';
import styled, { css } from 'styled-components';
-import { Tooltip } from 'renderer/components';
+import { Tooltip } from '../../../components';
type MantineButtonProps = UnstyledButtonProps &
ComponentPropsWithoutRef<'button'>;
diff --git a/src/renderer/features/player/components/Playerbar.tsx b/src/renderer/features/player/components/Playerbar.tsx
index b74f20181..456d8be39 100644
--- a/src/renderer/features/player/components/Playerbar.tsx
+++ b/src/renderer/features/player/components/Playerbar.tsx
@@ -1,8 +1,8 @@
import { useRef } from 'react';
import styled from 'styled-components';
-import { AudioPlayer } from 'renderer/components';
-import { usePlayerStore } from 'renderer/store';
-import { PlaybackType } from 'types';
+import { PlaybackType } from '../../../../types';
+import { AudioPlayer } from '../../../components';
+import { usePlayerStore } from '../../../store';
import { CenterControls } from './CenterControls';
import { LeftControls } from './LeftControls';
import { RightControls } from './RightControls';
diff --git a/src/renderer/features/player/components/RightControls.tsx b/src/renderer/features/player/components/RightControls.tsx
index de84104be..d256b4c82 100644
--- a/src/renderer/features/player/components/RightControls.tsx
+++ b/src/renderer/features/player/components/RightControls.tsx
@@ -1,7 +1,7 @@
import { RiVolumeUpFill, RiVolumeMuteFill } from 'react-icons/ri';
import styled from 'styled-components';
-import { IconButton } from 'renderer/components';
-import { usePlayerStore } from 'renderer/store';
+import { IconButton } from '../../../components';
+import { usePlayerStore } from '../../../store';
import { useRightControls } from '../hooks/useRightControls';
import { Slider } from './Slider';
diff --git a/src/renderer/features/player/hooks/useCenterControls.ts b/src/renderer/features/player/hooks/useCenterControls.ts
index 798c28a75..2653d764c 100644
--- a/src/renderer/features/player/hooks/useCenterControls.ts
+++ b/src/renderer/features/player/hooks/useCenterControls.ts
@@ -1,6 +1,6 @@
import { useCallback } from 'react';
-import { usePlayerStore } from 'renderer/store';
import { PlaybackType, PlayerStatus } from '../../../../types';
+import { usePlayerStore } from '../../../store';
import { mpvPlayer } from '../utils/mpvPlayer';
export const useCenterControls = (args: { playersRef: any }) => {
diff --git a/src/renderer/features/player/hooks/usePlayQueueHandler.ts b/src/renderer/features/player/hooks/usePlayQueueHandler.ts
index 0214ee4be..b865dda2e 100644
--- a/src/renderer/features/player/hooks/usePlayQueueHandler.ts
+++ b/src/renderer/features/player/hooks/usePlayQueueHandler.ts
@@ -1,11 +1,11 @@
import { useQueryClient } from 'react-query';
-import { usePlayerStore } from 'renderer/store';
+import { Item, Play } from '../../../../types';
+import { usePlayerStore } from '../../../store';
import {
getJellyfinStreamUrl,
getServerFolderAuth,
getSubsonicStreamUrl,
-} from 'renderer/utils';
-import { Item, Play } from 'types';
+} from '../../../utils';
import { mpvPlayer } from '../utils/mpvPlayer';
const getEndpoint = (item: Item) => {
diff --git a/src/renderer/features/player/hooks/useRightControls.ts b/src/renderer/features/player/hooks/useRightControls.ts
index 6695fc1c8..2701b666b 100644
--- a/src/renderer/features/player/hooks/useRightControls.ts
+++ b/src/renderer/features/player/hooks/useRightControls.ts
@@ -1,5 +1,5 @@
import { useEffect } from 'react';
-import { usePlayerStore } from 'renderer/store';
+import { usePlayerStore } from '../../../store';
import { mpvPlayer } from '../utils/mpvPlayer';
export const useRightControls = () => {
diff --git a/src/renderer/features/servers/components/AddServerModal.tsx b/src/renderer/features/servers/components/AddServerModal.tsx
index 7808c3e6c..d1500fc7b 100644
--- a/src/renderer/features/servers/components/AddServerModal.tsx
+++ b/src/renderer/features/servers/components/AddServerModal.tsx
@@ -35,7 +35,7 @@ export const AddServerModal = ({ ...rest }: ModalProps) => {
const res = await validateServer(values);
if (res?.token) {
- createServerMutation.mutateAsync({
+ createServerMutation.mutate({
...values,
remoteUserId: res.userId,
token: res.token,
diff --git a/src/renderer/features/servers/components/EditServerModal.tsx b/src/renderer/features/servers/components/EditServerModal.tsx
index c9451dbb3..0de734125 100644
--- a/src/renderer/features/servers/components/EditServerModal.tsx
+++ b/src/renderer/features/servers/components/EditServerModal.tsx
@@ -9,7 +9,7 @@ import {
} from '@mantine/core';
import { useForm } from '@mantine/form';
import { useTranslation } from 'react-i18next';
-import { ServerResponse } from 'renderer/api/types';
+import { ServerResponse } from '../../../api/types';
interface EditServerModalProps extends ModalProps {
server: ServerResponse | undefined;
diff --git a/src/renderer/features/servers/components/ServerList.tsx b/src/renderer/features/servers/components/ServerList.tsx
index 3f51494f7..eba606715 100644
--- a/src/renderer/features/servers/components/ServerList.tsx
+++ b/src/renderer/features/servers/components/ServerList.tsx
@@ -1,8 +1,7 @@
import { useEffect, useState } from 'react';
-import { Text } from '@mantine/core';
+import { Button, Text } from '@mantine/core';
import { useDisclosure } from '@mantine/hooks';
-import { ServerResponse } from 'renderer/api/types';
-import { IconButton } from 'renderer/components';
+import { ServerResponse } from '../../../api/types';
import { useServers } from '../queries/useServers';
import { EditServerModal } from './EditServerModal';
import styles from './ServerList.module.scss';
@@ -60,9 +59,7 @@ export const ServerList = () => {
{server.name}
Hello
- editServerHandlers.toggle()}>
- Edit
-
+
{selectedServer && (
{
return useQuery({
diff --git a/src/renderer/features/settings/hooks/useDefaultSettings.ts b/src/renderer/features/settings/hooks/useDefaultSettings.ts
index 1a0f74248..ea658dedd 100644
--- a/src/renderer/features/settings/hooks/useDefaultSettings.ts
+++ b/src/renderer/features/settings/hooks/useDefaultSettings.ts
@@ -1,11 +1,11 @@
import isElectron from 'is-electron';
-import { PlayerState } from 'renderer/store';
import {
CrossfadeStyle,
PlaybackStyle,
PlaybackType,
PlayerRepeat,
-} from 'types';
+} from '../../../../types';
+import { PlayerState } from '../../../store';
export interface WebSettings {
player: PlayerSettings;
diff --git a/src/renderer/features/sidebar/components/ListItem.tsx b/src/renderer/features/sidebar/components/ListItem.tsx
index b3f90166d..0e3fe0784 100644
--- a/src/renderer/features/sidebar/components/ListItem.tsx
+++ b/src/renderer/features/sidebar/components/ListItem.tsx
@@ -2,7 +2,7 @@ import { ReactNode } from 'react';
import { motion } from 'framer-motion';
import { Link, LinkProps } from 'react-router-dom';
import styled, { css } from 'styled-components';
-import { fontInter } from 'renderer/styles';
+import { fontInter } from '../../../styles';
interface ListItemProps {
children: ReactNode;
diff --git a/src/renderer/features/sidebar/components/Sidebar.tsx b/src/renderer/features/sidebar/components/Sidebar.tsx
index fd4eea9df..b02da3fa6 100644
--- a/src/renderer/features/sidebar/components/Sidebar.tsx
+++ b/src/renderer/features/sidebar/components/Sidebar.tsx
@@ -4,7 +4,7 @@ import {
RiSearch2Fill,
} from 'react-icons/ri';
import styled from 'styled-components';
-import { AppRoute } from 'renderer/router/utils/routes';
+import { AppRoute } from '../../../router/utils/routes';
import { ListItem } from './ListItem';
const StyledSidebar = styled.div``;
diff --git a/src/renderer/features/titlebar/components/Titlebar.tsx b/src/renderer/features/titlebar/components/Titlebar.tsx
index 24e843e24..6422283ab 100644
--- a/src/renderer/features/titlebar/components/Titlebar.tsx
+++ b/src/renderer/features/titlebar/components/Titlebar.tsx
@@ -3,8 +3,8 @@ import { Group } from '@mantine/core';
import { RiArrowLeftSLine, RiArrowRightSLine } from 'react-icons/ri';
import { useNavigate } from 'react-router-dom';
import styled from 'styled-components';
-import { IconButton } from 'renderer/components';
-import { WindowControls } from 'renderer/features/window-controls';
+import { IconButton } from '../../../components';
+import { WindowControls } from '../../window-controls';
interface TitlebarProps {
children?: ReactNode;
diff --git a/src/renderer/features/titlebar/components/UserMenu.tsx b/src/renderer/features/titlebar/components/UserMenu.tsx
index edac394d7..e12657ef2 100644
--- a/src/renderer/features/titlebar/components/UserMenu.tsx
+++ b/src/renderer/features/titlebar/components/UserMenu.tsx
@@ -2,8 +2,8 @@ import { Button, Menu } from '@mantine/core';
import { useDisclosure } from '@mantine/hooks';
import { RiLogoutBoxLine, RiServerFill, RiSettings3Fill } from 'react-icons/ri';
import { useNavigate } from 'react-router';
-import { AddServerModal } from 'renderer/features/servers';
-import { useAuthStore } from 'renderer/store';
+import { useAuthStore } from '../../../store';
+import { AddServerModal } from '../../servers';
export const UserMenu = () => {
const navigate = useNavigate();
diff --git a/src/renderer/features/user-menu/index.ts b/src/renderer/features/user-menu/index.ts
deleted file mode 100644
index 504e3c1e9..000000000
--- a/src/renderer/features/user-menu/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from './UserMenu';
diff --git a/src/renderer/index.tsx b/src/renderer/index.tsx
index 7509e2aa5..b5f6a3a56 100644
--- a/src/renderer/index.tsx
+++ b/src/renderer/index.tsx
@@ -1,7 +1,7 @@
import { createRoot } from 'react-dom/client';
import { I18nextProvider } from 'react-i18next';
import { QueryClientProvider } from 'react-query';
-import i18n from 'i18n/i18n';
+import i18n from '../i18n/i18n';
import { App } from './app';
import { queryClient } from './lib';
diff --git a/src/renderer/layouts/auth/AuthLayout.tsx b/src/renderer/layouts/auth/AuthLayout.tsx
index a9186c357..f8154e733 100644
--- a/src/renderer/layouts/auth/AuthLayout.tsx
+++ b/src/renderer/layouts/auth/AuthLayout.tsx
@@ -1,6 +1,6 @@
import { Outlet } from 'react-router-dom';
import styled from 'styled-components';
-import { Titlebar } from 'renderer/features/titlebar';
+import { Titlebar } from '../../features/titlebar';
const WindowsTitlebarContainer = styled.div`
position: absolute;
diff --git a/src/renderer/layouts/default/DefaultLayout.tsx b/src/renderer/layouts/default/DefaultLayout.tsx
index cf1b66403..d4ca45d32 100644
--- a/src/renderer/layouts/default/DefaultLayout.tsx
+++ b/src/renderer/layouts/default/DefaultLayout.tsx
@@ -2,9 +2,9 @@ import { AnimatePresence } from 'framer-motion';
import { Outlet, useLocation } from 'react-router-dom';
import * as Space from 'react-spaces';
import styled from 'styled-components';
-import { Playerbar } from 'renderer/features/player';
-import { Sidebar } from 'renderer/features/sidebar';
-import { Titlebar } from 'renderer/features/titlebar';
+import { Playerbar } from '../../features/player';
+import { Sidebar } from '../../features/sidebar';
+import { Titlebar } from '../../features/titlebar';
const LayoutContainer = styled(Space.ViewPort)``;
@@ -22,9 +22,7 @@ const TitlebarContainer = styled(Space.Top)`
border-bottom: var(--playerbar-border-top);
`;
-const ContentContainer = styled(Space.Fill)`
- padding: 1rem;
-`;
+const ContentContainer = styled(Space.Fill)``;
const PlayerbarContainer = styled(Space.Bottom)``;
@@ -54,7 +52,7 @@ export const DefaultLayout = () => {
return (
<>
-
+
@@ -75,7 +73,7 @@ export const DefaultLayout = () => {
maximumSize={400}
size={300}
/>
-
+
diff --git a/src/renderer/lib/axios.ts b/src/renderer/lib/axios.ts
index ecd686192..f9c8a9020 100644
--- a/src/renderer/lib/axios.ts
+++ b/src/renderer/lib/axios.ts
@@ -1,6 +1,6 @@
/* eslint-disable no-underscore-dangle */
import Axios from 'axios';
-import { authApi } from 'renderer/api/authApi';
+import { authApi } from '../api/authApi';
export const api = Axios.create({
headers: {
diff --git a/src/renderer/router/AppRouter.tsx b/src/renderer/router/AppRouter.tsx
index 451b8c74f..3af5bf442 100644
--- a/src/renderer/router/AppRouter.tsx
+++ b/src/renderer/router/AppRouter.tsx
@@ -1,11 +1,11 @@
/* eslint-disable sort-keys-fix/sort-keys-fix */
import { Routes, Route } from 'react-router-dom';
-import { LoginRoute } from 'renderer/features/auth';
-import { DashboardRoute } from 'renderer/features/dashboard';
-import { LibraryAlbumsRoute } from 'renderer/features/library/routes/LibraryAlbumsRoute';
-import { LibraryArtistsRoute } from 'renderer/features/library/routes/LibraryArtistsRoute';
-import { LibraryRoute } from 'renderer/features/library/routes/LibraryRoute';
-import { ServersRoute } from 'renderer/features/servers';
+import { LoginRoute } from '../features/auth';
+import { DashboardRoute } from '../features/dashboard';
+import { LibraryAlbumsRoute } from '../features/library/routes/LibraryAlbumsRoute';
+import { LibraryArtistsRoute } from '../features/library/routes/LibraryArtistsRoute';
+import { LibraryRoute } from '../features/library/routes/LibraryRoute';
+import { ServersRoute } from '../features/servers';
import { AuthLayout, DefaultLayout } from '../layouts';
import { AuthOutlet } from './outlets/AuthOutlet';
import { PrivateOutlet } from './outlets/PrivateOutlet';
diff --git a/src/renderer/router/outlets/AuthOutlet.tsx b/src/renderer/router/outlets/AuthOutlet.tsx
index 9401dffe0..ef60b6002 100644
--- a/src/renderer/router/outlets/AuthOutlet.tsx
+++ b/src/renderer/router/outlets/AuthOutlet.tsx
@@ -1,5 +1,5 @@
import { Navigate, Outlet, useLocation } from 'react-router-dom';
-import { useAuthStore } from 'renderer/store';
+import { useAuthStore } from '../../store';
interface AuthOutletProps {
redirectTo: string;
diff --git a/src/renderer/router/outlets/PrivateOutlet.tsx b/src/renderer/router/outlets/PrivateOutlet.tsx
index 9f37b8265..357ae96e5 100644
--- a/src/renderer/router/outlets/PrivateOutlet.tsx
+++ b/src/renderer/router/outlets/PrivateOutlet.tsx
@@ -1,5 +1,5 @@
import { Navigate, Outlet, useLocation } from 'react-router-dom';
-import { useAuthStore } from 'renderer/store';
+import { useAuthStore } from '../../store';
interface PrivateOutletProps {
redirectTo: string;
diff --git a/src/renderer/store/useAppStore.ts b/src/renderer/store/useAppStore.ts
index 104388f79..9bdb4587c 100644
--- a/src/renderer/store/useAppStore.ts
+++ b/src/renderer/store/useAppStore.ts
@@ -1,6 +1,6 @@
import create from 'zustand';
import { devtools } from 'zustand/middleware';
-import { Platform } from 'types';
+import { Platform } from '../../types';
export interface AppState {
currentPage: {
diff --git a/src/renderer/store/usePlayerStore.ts b/src/renderer/store/usePlayerStore.ts
index 842674677..4f24d96b6 100644
--- a/src/renderer/store/usePlayerStore.ts
+++ b/src/renderer/store/usePlayerStore.ts
@@ -2,7 +2,6 @@
import produce from 'immer';
import create from 'zustand';
import { devtools } from 'zustand/middleware';
-import { setLocalStorageSettings } from 'renderer/utils';
import {
CrossfadeStyle,
PlaybackStyle,
@@ -10,7 +9,8 @@ import {
PlayerRepeat,
PlayerStatus,
Song,
-} from 'types';
+} from '../../types';
+import { setLocalStorageSettings } from '../utils';
export interface PlayerState {
current: {
diff --git a/src/renderer/utils/getJellyfinStreamUrl.ts b/src/renderer/utils/getJellyfinStreamUrl.ts
index c7f2a2b25..0a86e119f 100644
--- a/src/renderer/utils/getJellyfinStreamUrl.ts
+++ b/src/renderer/utils/getJellyfinStreamUrl.ts
@@ -1,5 +1,4 @@
-import { Song } from 'renderer/api/types';
-// import { ServerFolderAuth } from 'renderer/features/servers';
+import { Song } from '../api/types';
export const getJellyfinStreamUrl = (
auth: any,
diff --git a/src/renderer/utils/getServerFolderAuth.ts b/src/renderer/utils/getServerFolderAuth.ts
index 9f5a42dc8..9e1e108e6 100644
--- a/src/renderer/utils/getServerFolderAuth.ts
+++ b/src/renderer/utils/getServerFolderAuth.ts
@@ -1,5 +1,5 @@
import md5 from 'md5';
-import { ServerFolderAuth } from 'types';
+import { ServerFolderAuth } from '../../types';
export const getServerFolderAuth = (
serverUrl: string,
diff --git a/src/renderer/utils/getSubsonicStreamUrl.ts b/src/renderer/utils/getSubsonicStreamUrl.ts
index aa6d19647..d341db4bf 100644
--- a/src/renderer/utils/getSubsonicStreamUrl.ts
+++ b/src/renderer/utils/getSubsonicStreamUrl.ts
@@ -1,5 +1,4 @@
-import { Song } from 'renderer/api/types';
-// import { ServerFolderAuth } from 'renderer/features/servers';
+import { Song } from '../api/types';
export const getSubsonicStreamUrl = (
auth: any,
diff --git a/tsconfig.json b/tsconfig.json
index 2b1c98736..207346724 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -9,7 +9,6 @@
"strict": true,
"pretty": true,
"sourceMap": true,
- "baseUrl": "./src",
"noUnusedLocals": true,
"noUnusedParameters": true,
"noImplicitReturns": true,