@aigamo/hydrangean-diva 0.0.1-alpha.7 → 0.0.1-alpha.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +2 -45
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.es.js +2264 -2463
- package/dist/index.es.js.map +1 -1
- package/dist/src/App.d.ts +9 -0
- package/dist/src/features/media-player/components/AddVideoButton.d.ts +7 -0
- package/dist/src/features/media-player/components/AddVideoModal.d.ts +5 -0
- package/dist/src/features/media-player/components/BottomBar.d.ts +8 -0
- package/dist/src/features/media-player/components/BottomBarCenterControls.d.ts +7 -0
- package/dist/src/features/media-player/components/BottomBarLeftControls.d.ts +4 -0
- package/dist/src/features/media-player/components/BottomBarRightControls.d.ts +6 -0
- package/dist/src/features/media-player/components/CookieConsentPanel.d.ts +8 -0
- package/dist/src/features/media-player/components/CreatePlaylistButton.d.ts +7 -0
- package/dist/src/features/media-player/components/CreatePlaylistModal.d.ts +4 -0
- package/dist/src/features/media-player/components/DeletePlaylistConfirmModal.d.ts +7 -0
- package/dist/src/features/media-player/components/DeveloperToolsButton.d.ts +9 -0
- package/dist/src/features/media-player/components/MiniPlayer.d.ts +4 -0
- package/dist/src/features/media-player/components/PlayQueueCommandBar.d.ts +9 -0
- package/dist/src/features/media-player/components/PlayQueueSection.d.ts +9 -0
- package/dist/src/features/media-player/components/PlayQueueTable.d.ts +9 -0
- package/dist/src/features/media-player/components/PlaylistCommandBar.d.ts +9 -0
- package/dist/src/features/media-player/components/PlaylistListTable.d.ts +9 -0
- package/dist/src/features/media-player/components/PlaylistSection.d.ts +9 -0
- package/dist/src/features/media-player/components/PlaylistTable.d.ts +9 -0
- package/dist/src/features/media-player/components/RenamePlaylistModal.d.ts +7 -0
- package/dist/{AppRoutes.d.ts → src/features/media-player/components/SeekBar.d.ts} +1 -1
- package/dist/src/features/media-player/contexts/BottomBarContext.d.ts +3 -0
- package/dist/src/features/media-player/contexts/MiniPlayerContext.d.ts +3 -0
- package/dist/src/features/media-player/contexts/PlayQueueContext.d.ts +3 -0
- package/dist/src/features/media-player/contexts/PlayerContext.d.ts +3 -0
- package/dist/src/features/media-player/contexts/PlaylistListContext.d.ts +3 -0
- package/dist/src/features/media-player/helpers/bottomBarHeight.d.ts +1 -0
- package/dist/src/features/media-player/helpers/commandBarHeight.d.ts +1 -0
- package/dist/src/features/media-player/helpers/commandBarSpacerHeight.d.ts +1 -0
- package/dist/src/features/media-player/helpers/findVideoService.d.ts +1 -0
- package/dist/src/features/media-player/helpers/headerHeight.d.ts +1 -0
- package/dist/src/features/media-player/helpers/isNoembedResult.d.ts +5 -0
- package/dist/src/features/media-player/helpers/miniPlayerSize.d.ts +4 -0
- package/dist/src/features/media-player/helpers/videoServiceIcons.d.ts +2 -0
- package/dist/src/features/media-player/index.d.ts +19 -0
- package/dist/src/features/media-player/interfaces/IBottomBarStore.d.ts +32 -0
- package/dist/src/features/media-player/interfaces/IMiniPlayerStore.d.ts +12 -0
- package/dist/{features/media-player/stores → src/features/media-player/interfaces}/IPlayQueueItemStore.d.ts +4 -8
- package/dist/src/features/media-player/interfaces/IPlayQueueStore.d.ts +46 -0
- package/dist/src/features/media-player/interfaces/IPlayerStore.d.ts +13 -0
- package/dist/src/features/media-player/interfaces/IPlaylistItemStore.d.ts +28 -0
- package/dist/src/features/media-player/interfaces/IPlaylistListItemStore.d.ts +6 -0
- package/dist/src/features/media-player/interfaces/IPlaylistListStore.d.ts +8 -0
- package/dist/src/features/media-player/interfaces/IPlaylistStore.d.ts +26 -0
- package/dist/src/features/media-player/interfaces/PlayQueueDto.d.ts +11 -0
- package/dist/src/features/media-player/interfaces/PlayQueueItemDto.d.ts +9 -0
- package/dist/src/features/media-player/pages/PlaylistDetailsPage.d.ts +9 -0
- package/dist/src/features/media-player/pages/PlaylistListPage.d.ts +2 -0
- package/dist/src/features/media-player/providers/BottomBarProvider.d.ts +6 -0
- package/dist/src/features/media-player/providers/HydrangeanDivaProvider.d.ts +7 -0
- package/dist/src/features/media-player/providers/MiniPlayerProvider.d.ts +6 -0
- package/dist/src/features/media-player/providers/PlayQueueProvider.d.ts +6 -0
- package/dist/src/features/media-player/providers/PlayerProvider.d.ts +6 -0
- package/dist/src/features/media-player/providers/PlaylistListProvider.d.ts +6 -0
- package/dist/src/features/media-player/stores/BottomBarStore.d.ts +54 -0
- package/dist/src/features/media-player/stores/MiniPlayerStore.d.ts +21 -0
- package/dist/{features → src/features}/media-player/stores/PlayQueueItemStore.d.ts +8 -9
- package/dist/{features → src/features}/media-player/stores/PlayQueueStore.d.ts +25 -19
- package/dist/src/features/media-player/stores/PlayerStore.d.ts +17 -0
- package/dist/src/features/media-player/stores/PlaylistItemStore.d.ts +39 -0
- package/dist/src/features/media-player/stores/PlaylistListItemStore.d.ts +10 -0
- package/dist/src/features/media-player/stores/PlaylistListStore.d.ts +26 -0
- package/dist/src/features/media-player/stores/PlaylistStore.d.ts +46 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/routeTree.gen.d.ts +91 -0
- package/dist/src/routes/__root.d.ts +1 -0
- package/dist/src/routes/_authenticated/index.d.ts +1 -0
- package/dist/src/routes/_authenticated/play-queue.d.ts +1 -0
- package/dist/src/routes/_authenticated/playlists/$playlistId.index.d.ts +1 -0
- package/dist/src/routes/_authenticated/playlists/index.d.ts +1 -0
- package/dist/src/routes/_authenticated.d.ts +1 -0
- package/dist/src/shared/components/AppLink.d.ts +6 -0
- package/dist/src/shared/components/AppPageTemplateHeader.d.ts +18 -0
- package/dist/src/shared/lib/featureFlags.d.ts +5 -0
- package/dist/src/shared/stores/localStorageStateKeys.d.ts +6 -0
- package/dist/test/features/media-player/stores/PlayQueueStore.test.d.ts +1 -0
- package/dist/test/features/media-player/stores/PlayerStore.test.d.ts +1 -0
- package/package.json +59 -47
- package/dist/App.d.ts +0 -3
- package/dist/features/media-player/components/AddVideoButton.d.ts +0 -7
- package/dist/features/media-player/components/BottomBar.d.ts +0 -12
- package/dist/features/media-player/components/HydrangeanDiva.d.ts +0 -11
- package/dist/features/media-player/components/MiniPlayer.d.ts +0 -15
- package/dist/features/media-player/components/PlayQueueStoreContext.d.ts +0 -8
- package/dist/features/media-player/components/PlayQueueTable.d.ts +0 -9
- package/dist/features/media-player/components/PlayerStoreContext.d.ts +0 -8
- package/dist/features/media-player/components/index.d.ts +0 -6
- package/dist/features/media-player/index.d.ts +0 -2
- package/dist/features/media-player/stores/IObservableStateProvider.d.ts +0 -4
- package/dist/features/media-player/stores/IPlayQueueStore.d.ts +0 -15
- package/dist/features/media-player/stores/MobXObservableStateProvider.d.ts +0 -5
- package/dist/features/media-player/stores/ObservableStateProvider.d.ts +0 -5
- package/dist/features/media-player/stores/PlayQueueLocalStorageState.d.ts +0 -10
- package/dist/features/media-player/stores/PlayerStore.d.ts +0 -15
- package/dist/features/media-player/stores/index.d.ts +0 -6
- /package/dist/{features → src/features}/media-player/components/MediaPlayerLayout.d.ts +0 -0
- /package/dist/{features/media-player/stores → src/features/media-player/interfaces}/RepeatMode.d.ts +0 -0
- /package/dist/{features → src/features}/media-player/pages/PlayQueuePage.d.ts +0 -0
- /package/dist/{features/media-player/components → src/layout}/Header.d.ts +0 -0
- /package/dist/{main.d.ts → src/main.d.ts} +0 -0
- /package/dist/{common → src/shared}/components/Compose.d.ts +0 -0
- /package/dist/{features/media-player → src/shared}/stores/getOrAddSchema.d.ts +0 -0
- /package/dist/{sw.d.ts → src/sw.d.ts} +0 -0
- /package/dist/{icons.d.ts → test/features/media-player/stores/PlayQueueItemStore.test.d.ts} +0 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
2
|
+
declare const router: import('@tanstack/router-core').RouterCore<import('@tanstack/router-core').Route<import('@tanstack/react-router').Register, any, "/", "/", string, "__root__", undefined, {}, {}, import('@tanstack/react-router').AnyContext, import('@tanstack/react-router').AnyContext, {}, undefined, import('./routeTree.gen').RootRouteChildren, import('./routeTree.gen').FileRouteTypes, unknown, unknown, undefined>, "never", false, import('@tanstack/history').RouterHistory, Record<string, any>>;
|
|
3
|
+
declare module '@tanstack/react-router' {
|
|
4
|
+
interface Register {
|
|
5
|
+
router: typeof router;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
declare const App: () => ReactElement;
|
|
9
|
+
export default App;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PlayQueueItemDto } from '../interfaces/PlayQueueItemDto';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface AddVideoButtonProps {
|
|
4
|
+
onFulfilled: (value: PlayQueueItemDto) => Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
export declare const AddVideoButton: import('react').MemoExoticComponent<({ onFulfilled }: AddVideoButtonProps) => ReactElement>;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PlayQueueItemDto } from '../interfaces/PlayQueueItemDto';
|
|
2
|
+
import { InnerModalProps } from 'ez-modal-react';
|
|
3
|
+
type AddVideoModalProps = InnerModalProps<PlayQueueItemDto>;
|
|
4
|
+
export declare const AddVideoModal: import('ez-modal-react').EasyModalHOC<AddVideoModalProps, PlayQueueItemDto>;
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { MouseEventHandler, ReactElement } from 'react';
|
|
2
|
+
interface BottomBarProps {
|
|
3
|
+
onClickPlayQueueButton?: MouseEventHandler<HTMLButtonElement>;
|
|
4
|
+
}
|
|
5
|
+
export declare const BottomBar: (({ onClickPlayQueueButton }: BottomBarProps) => ReactElement) & {
|
|
6
|
+
displayName: string;
|
|
7
|
+
};
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { RepeatMode } from '../interfaces/RepeatMode';
|
|
2
|
+
import { IconType } from '@elastic/eui';
|
|
3
|
+
import { ReactElement } from 'react';
|
|
4
|
+
export declare const repeatIconTypes: Record<RepeatMode, IconType>;
|
|
5
|
+
export declare const BottomBarCenterControls: (() => ReactElement) & {
|
|
6
|
+
displayName: string;
|
|
7
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { MouseEventHandler, ReactElement } from 'react';
|
|
2
|
+
interface BottomBarRightControlsProps {
|
|
3
|
+
onClickPlayQueueButton?: MouseEventHandler<HTMLButtonElement>;
|
|
4
|
+
}
|
|
5
|
+
export declare const BottomBarRightControls: import('react').MemoExoticComponent<({ onClickPlayQueueButton }: BottomBarRightControlsProps) => ReactElement>;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PlayerType } from '@aigamo/nostalgic-diva';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
type ThirdPartyPlayerType = Exclude<PlayerType, 'Audio'>;
|
|
4
|
+
interface CookieConsentPanelProps {
|
|
5
|
+
playerType: ThirdPartyPlayerType;
|
|
6
|
+
}
|
|
7
|
+
export declare const CookieConsentPanel: ({ playerType, }: CookieConsentPanelProps) => ReactElement;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ReactElement, ReactNode } from 'react';
|
|
2
|
+
interface CreatePlaylistButtonProps {
|
|
3
|
+
children?: ReactNode;
|
|
4
|
+
onFulfilled: (value: string) => Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
export declare const CreatePlaylistButton: ({ children, onFulfilled, }: CreatePlaylistButtonProps) => ReactElement;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IPlaylistListItemStore } from '../interfaces/IPlaylistListItemStore';
|
|
2
|
+
import { InnerModalProps } from 'ez-modal-react';
|
|
3
|
+
interface DeletePlaylistConfirmModalProps extends InnerModalProps {
|
|
4
|
+
playlistListItem: IPlaylistListItemStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const DeletePlaylistConfirmModal: import('ez-modal-react').EasyModalHOC<DeletePlaylistConfirmModalProps, unknown>;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PlayQueueStore } from '../stores/PlayQueueStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface DeveloperToolsButtonProps {
|
|
4
|
+
playQueue: PlayQueueStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const DeveloperToolsButton: (({ playQueue }: DeveloperToolsButtonProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlayQueueStore } from '../interfaces/IPlayQueueStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlayQueueCommandBarProps {
|
|
4
|
+
playQueue: IPlayQueueStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlayQueueCommandBar: (({ playQueue }: PlayQueueCommandBarProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlayQueueStore } from '../interfaces/IPlayQueueStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlayQueueSectionProps {
|
|
4
|
+
playQueue: IPlayQueueStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlayQueueSection: (({ playQueue }: PlayQueueSectionProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlayQueueStore } from '../interfaces/IPlayQueueStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlayQueueTableProps {
|
|
4
|
+
playQueue: IPlayQueueStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlayQueueTable: (({ playQueue }: PlayQueueTableProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlaylistStore } from '../interfaces/IPlaylistStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlaylistCommandBarProps {
|
|
4
|
+
playlist: IPlaylistStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlaylistCommandBar: (({ playlist }: PlaylistCommandBarProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlaylistListStore } from '../interfaces/IPlaylistListStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlaylistListTableProps {
|
|
4
|
+
playlistList: IPlaylistListStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlaylistListTable: (({ playlistList }: PlaylistListTableProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlaylistStore } from '../interfaces/IPlaylistStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlaylistSectionProps {
|
|
4
|
+
playlist: IPlaylistStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlaylistSection: (({ playlist }: PlaylistSectionProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlaylistStore } from '../interfaces/IPlaylistStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlaylistTableProps {
|
|
4
|
+
playlist: IPlaylistStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlaylistTable: (({ playlist }: PlaylistTableProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IPlaylistListItemStore } from '../interfaces/IPlaylistListItemStore';
|
|
2
|
+
import { InnerModalProps } from 'ez-modal-react';
|
|
3
|
+
interface RenamePlaylistModalProps extends InnerModalProps<string> {
|
|
4
|
+
playlistListItem: IPlaylistListItemStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const RenamePlaylistModal: import('ez-modal-react').EasyModalHOC<RenamePlaylistModalProps, string>;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const bottomBarHeight: number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const commandBarHeight = 40;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const commandBarSpacerHeight = 24;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { findVideoService } from '@aigamo/nostalgic-diva';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const headerHeight = 48;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export * from './components/BottomBar';
|
|
2
|
+
export * from './components/MediaPlayerLayout';
|
|
3
|
+
export * from './components/MiniPlayer';
|
|
4
|
+
export * from './components/PlayQueueSection';
|
|
5
|
+
export * from './contexts/PlayQueueContext';
|
|
6
|
+
export * from './contexts/PlaylistListContext';
|
|
7
|
+
export * from './helpers/bottomBarHeight';
|
|
8
|
+
export * from './helpers/findVideoService';
|
|
9
|
+
export * from './helpers/videoServiceIcons';
|
|
10
|
+
export * from './interfaces/IBottomBarStore';
|
|
11
|
+
export * from './interfaces/IMiniPlayerStore';
|
|
12
|
+
export * from './interfaces/IPlayQueueItemStore';
|
|
13
|
+
export * from './interfaces/IPlayQueueStore';
|
|
14
|
+
export * from './interfaces/IPlayerStore';
|
|
15
|
+
export * from './interfaces/RepeatMode';
|
|
16
|
+
export * from './pages/PlayQueuePage';
|
|
17
|
+
export * from './pages/PlaylistDetailsPage';
|
|
18
|
+
export * from './pages/PlaylistListPage';
|
|
19
|
+
export * from './providers/HydrangeanDivaProvider';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { IPlayQueueItemStore } from './IPlayQueueItemStore';
|
|
2
|
+
import { RepeatMode } from './RepeatMode';
|
|
3
|
+
import { IPlayerController } from '@aigamo/nostalgic-diva';
|
|
4
|
+
export interface IBottomBarStore {
|
|
5
|
+
readonly controller: IPlayerController;
|
|
6
|
+
readonly playing: boolean;
|
|
7
|
+
readonly percent: number;
|
|
8
|
+
readonly canSeek: boolean;
|
|
9
|
+
readonly currentItem: IPlayQueueItemStore | undefined;
|
|
10
|
+
readonly repeat: RepeatMode;
|
|
11
|
+
readonly shuffle: boolean;
|
|
12
|
+
readonly canToggleRepeat: boolean;
|
|
13
|
+
readonly canToggleShuffle: boolean;
|
|
14
|
+
readonly canPlay: boolean;
|
|
15
|
+
readonly canPause: boolean;
|
|
16
|
+
readonly canPrevious: boolean;
|
|
17
|
+
readonly canNext: boolean;
|
|
18
|
+
readonly canSkipBack10: boolean;
|
|
19
|
+
readonly canSkipForward30: boolean;
|
|
20
|
+
readonly canRemoveFromPlayQueue: boolean;
|
|
21
|
+
setPercent(value: number): void;
|
|
22
|
+
setSeeking(value: boolean): void;
|
|
23
|
+
toggleRepeat(): void;
|
|
24
|
+
toggleShuffle(): void;
|
|
25
|
+
play(): Promise<void>;
|
|
26
|
+
pause(): Promise<void>;
|
|
27
|
+
previous(): Promise<void>;
|
|
28
|
+
next(): Promise<void>;
|
|
29
|
+
skipBack10(): Promise<void>;
|
|
30
|
+
skipForward30(): Promise<void>;
|
|
31
|
+
removeFromPlayQueue(): Promise<void>;
|
|
32
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IPlayQueueItemStore } from './IPlayQueueItemStore';
|
|
2
|
+
import { IPlayerController, TimeEvent } from '@aigamo/nostalgic-diva';
|
|
3
|
+
export interface IMiniPlayerStore {
|
|
4
|
+
readonly controller: IPlayerController;
|
|
5
|
+
readonly currentItem: IPlayQueueItemStore | undefined;
|
|
6
|
+
onLoaded(): Promise<void>;
|
|
7
|
+
onPlay(): void;
|
|
8
|
+
onPause(): void;
|
|
9
|
+
onEnded(): Promise<void>;
|
|
10
|
+
onTimeUpdate(event: TimeEvent): void;
|
|
11
|
+
onControllerChange(value: IPlayerController): void;
|
|
12
|
+
}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
|
+
import { PlayQueueItemDto } from './PlayQueueItemDto';
|
|
1
2
|
import { PlayerType } from '@aigamo/nostalgic-diva';
|
|
2
|
-
export interface PlayQueueItemDto {
|
|
3
|
-
readonly url: string;
|
|
4
|
-
readonly type: PlayerType;
|
|
5
|
-
readonly videoId: string;
|
|
6
|
-
readonly title: string;
|
|
7
|
-
}
|
|
8
3
|
export interface IPlayQueueItemStore {
|
|
9
4
|
readonly id: number;
|
|
10
|
-
isSelected: boolean;
|
|
5
|
+
readonly isSelected: boolean;
|
|
11
6
|
readonly dto: PlayQueueItemDto;
|
|
12
7
|
readonly url: string;
|
|
13
8
|
readonly type: PlayerType;
|
|
@@ -20,8 +15,9 @@ export interface IPlayQueueItemStore {
|
|
|
20
15
|
readonly isCurrent: boolean;
|
|
21
16
|
clone(): IPlayQueueItemStore;
|
|
22
17
|
unselect(): void;
|
|
18
|
+
select(): void;
|
|
23
19
|
toggleSelected(): void;
|
|
24
|
-
play(): void
|
|
20
|
+
play(): Promise<void>;
|
|
25
21
|
remove(): Promise<void>;
|
|
26
22
|
playFirst(): Promise<void>;
|
|
27
23
|
playNext(): Promise<void>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { IPlayQueueItemStore } from './IPlayQueueItemStore';
|
|
2
|
+
import { PlayQueueDto } from './PlayQueueDto';
|
|
3
|
+
import { PlayQueueItemDto } from './PlayQueueItemDto';
|
|
4
|
+
import { IStateStore } from '@aigamo/route-sphere';
|
|
5
|
+
export interface IPlayQueueStore {
|
|
6
|
+
readonly interacted: boolean;
|
|
7
|
+
readonly localStorageState: IStateStore<PlayQueueDto>;
|
|
8
|
+
readonly items: IPlayQueueItemStore[];
|
|
9
|
+
createItemFromDto(dto: PlayQueueItemDto): IPlayQueueItemStore;
|
|
10
|
+
readonly isEmpty: boolean;
|
|
11
|
+
readonly canClear: boolean;
|
|
12
|
+
readonly currentItem: IPlayQueueItemStore | undefined;
|
|
13
|
+
readonly canPlay: boolean;
|
|
14
|
+
readonly canPause: boolean;
|
|
15
|
+
readonly hasMultipleItems: boolean;
|
|
16
|
+
readonly currentIndex: number | undefined;
|
|
17
|
+
readonly hasPreviousItem: boolean;
|
|
18
|
+
readonly hasNextItem: boolean;
|
|
19
|
+
readonly isLastItem: boolean;
|
|
20
|
+
readonly selectedItems: IPlayQueueItemStore[];
|
|
21
|
+
readonly allItemsSelected: boolean;
|
|
22
|
+
readonly selectedItemsOrAllItems: IPlayQueueItemStore[];
|
|
23
|
+
readonly canAddSelectedItems: boolean;
|
|
24
|
+
readonly canPlaySelectedItemsNext: boolean;
|
|
25
|
+
readonly canRemoveSelectedItems: boolean;
|
|
26
|
+
setItems(value: IPlayQueueItemStore[]): void;
|
|
27
|
+
clear(): void;
|
|
28
|
+
unselectAll(): void;
|
|
29
|
+
selectAll(): void;
|
|
30
|
+
setCurrentItem(item: IPlayQueueItemStore | undefined): void;
|
|
31
|
+
clearAndSetItems(items: IPlayQueueItemStore[]): void;
|
|
32
|
+
playNext(items: IPlayQueueItemStore[]): Promise<void>;
|
|
33
|
+
playSelectedItemsNext(): Promise<void>;
|
|
34
|
+
addItems(items: IPlayQueueItemStore[]): Promise<void>;
|
|
35
|
+
addSelectedItems(): Promise<void>;
|
|
36
|
+
playFirst(items: IPlayQueueItemStore[]): Promise<void>;
|
|
37
|
+
moveItem(item: IPlayQueueItemStore, index: number): void;
|
|
38
|
+
goToFirst(): Promise<void>;
|
|
39
|
+
removeItems(items: IPlayQueueItemStore[]): Promise<void>;
|
|
40
|
+
removeSelectedItems(): Promise<void>;
|
|
41
|
+
removeItemsAbove(item: IPlayQueueItemStore): Promise<void>;
|
|
42
|
+
removeOtherItems(item: IPlayQueueItemStore): Promise<void>;
|
|
43
|
+
previous(): Promise<void>;
|
|
44
|
+
next(): Promise<void>;
|
|
45
|
+
addItemFromDto(dto: PlayQueueItemDto): Promise<void>;
|
|
46
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IPlayerController, TimeEvent } from '@aigamo/nostalgic-diva';
|
|
2
|
+
export interface IPlayerStore {
|
|
3
|
+
readonly controller: IPlayerController;
|
|
4
|
+
readonly playing: boolean;
|
|
5
|
+
readonly percent: number;
|
|
6
|
+
setPercent(value: number): void;
|
|
7
|
+
setSeeking(value: boolean): void;
|
|
8
|
+
onControllerChange(value: IPlayerController): void;
|
|
9
|
+
onPlay(): void;
|
|
10
|
+
onPause(): void;
|
|
11
|
+
onEnded(): void;
|
|
12
|
+
onTimeUpdate({ percent }: TimeEvent): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { PlayQueueItemDto } from './PlayQueueItemDto';
|
|
2
|
+
import { PlayerType } from '@aigamo/nostalgic-diva';
|
|
3
|
+
export interface IPlaylistItemStore {
|
|
4
|
+
readonly id: number;
|
|
5
|
+
readonly isSelected: boolean;
|
|
6
|
+
readonly dto: PlayQueueItemDto;
|
|
7
|
+
readonly url: string;
|
|
8
|
+
readonly type: PlayerType;
|
|
9
|
+
readonly videoId: string;
|
|
10
|
+
readonly title: string;
|
|
11
|
+
readonly isCurrent: boolean;
|
|
12
|
+
readonly canMoveToTop: boolean;
|
|
13
|
+
readonly canMoveToBottom: boolean;
|
|
14
|
+
readonly canRemoveToTop: boolean;
|
|
15
|
+
readonly canRemoveOthers: boolean;
|
|
16
|
+
unselect(): void;
|
|
17
|
+
select(): void;
|
|
18
|
+
toggleSelected(): void;
|
|
19
|
+
play(): Promise<void>;
|
|
20
|
+
remove(): Promise<void>;
|
|
21
|
+
playFirst(): Promise<void>;
|
|
22
|
+
playNext(): Promise<void>;
|
|
23
|
+
addToPlayQueue(): Promise<void>;
|
|
24
|
+
moveToTop(): void;
|
|
25
|
+
moveToBottom(): void;
|
|
26
|
+
removeToTop(): Promise<void>;
|
|
27
|
+
removeOthers(): Promise<void>;
|
|
28
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IPlaylistListItemStore } from './IPlaylistListItemStore';
|
|
2
|
+
export interface IPlaylistListStore {
|
|
3
|
+
readonly items: IPlaylistListItemStore[];
|
|
4
|
+
createItem(name: string): IPlaylistListItemStore;
|
|
5
|
+
setItems(value: IPlaylistListItemStore[]): void;
|
|
6
|
+
addItem(item: IPlaylistListItemStore): Promise<void>;
|
|
7
|
+
removeItem(item: IPlaylistListItemStore): Promise<void>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IPlaylistItemStore } from './IPlaylistItemStore';
|
|
2
|
+
import { PlayQueueItemDto } from './PlayQueueItemDto';
|
|
3
|
+
export interface IPlaylistStore {
|
|
4
|
+
readonly items: IPlaylistItemStore[];
|
|
5
|
+
createItemFromDto(dto: PlayQueueItemDto): IPlaylistItemStore;
|
|
6
|
+
readonly isEmpty: boolean;
|
|
7
|
+
readonly hasMultipleItems: boolean;
|
|
8
|
+
readonly selectedItems: IPlaylistItemStore[];
|
|
9
|
+
readonly allItemsSelected: boolean;
|
|
10
|
+
readonly canAddSelectedItems: boolean;
|
|
11
|
+
readonly canPlaySelectedItemsNext: boolean;
|
|
12
|
+
readonly canRemoveSelectedItems: boolean;
|
|
13
|
+
setItems(value: IPlaylistItemStore[]): void;
|
|
14
|
+
unselectAll(): void;
|
|
15
|
+
selectAll(): void;
|
|
16
|
+
playSelectedItemsNext(): Promise<void>;
|
|
17
|
+
addItems(items: IPlaylistItemStore[]): Promise<void>;
|
|
18
|
+
addSelectedItems(): Promise<void>;
|
|
19
|
+
moveItem(item: IPlaylistItemStore, index: number): void;
|
|
20
|
+
removeItems(items: IPlaylistItemStore[]): Promise<void>;
|
|
21
|
+
removeSelectedItems(): Promise<void>;
|
|
22
|
+
removeItemsAbove(item: IPlaylistItemStore): Promise<void>;
|
|
23
|
+
removeOtherItems(item: IPlaylistItemStore): Promise<void>;
|
|
24
|
+
addItemFromDto(dto: PlayQueueItemDto): Promise<void>;
|
|
25
|
+
playAll(): Promise<void>;
|
|
26
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { PlayQueueItemDto } from './PlayQueueItemDto';
|
|
2
|
+
import { RepeatMode } from './RepeatMode';
|
|
3
|
+
import { JSONSchemaType } from 'ajv';
|
|
4
|
+
export interface PlayQueueDto {
|
|
5
|
+
readonly version?: '1.0';
|
|
6
|
+
readonly repeat?: RepeatMode;
|
|
7
|
+
readonly shuffle?: boolean;
|
|
8
|
+
readonly items?: PlayQueueItemDto[];
|
|
9
|
+
readonly currentIndex?: number;
|
|
10
|
+
}
|
|
11
|
+
export declare const PlayQueueDtoSchema: JSONSchemaType<PlayQueueDto>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PlayerType } from '@aigamo/nostalgic-diva';
|
|
2
|
+
import { JSONSchemaType } from 'ajv';
|
|
3
|
+
export interface PlayQueueItemDto {
|
|
4
|
+
readonly url: string;
|
|
5
|
+
readonly type: PlayerType;
|
|
6
|
+
readonly videoId: string;
|
|
7
|
+
readonly title: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const PlayQueueItemDtoSchema: JSONSchemaType<PlayQueueItemDto>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IPlaylistListItemStore } from '../interfaces/IPlaylistListItemStore';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
interface PlaylistDetailsPageProps {
|
|
4
|
+
playlistListItem: IPlaylistListItemStore;
|
|
5
|
+
}
|
|
6
|
+
export declare const PlaylistDetailsPage: (({ playlistListItem }: PlaylistDetailsPageProps) => ReactElement) & {
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { NostalgicDivaProviderProps } from '@aigamo/nostalgic-diva';
|
|
2
|
+
import { ReactElement, ReactNode } from 'react';
|
|
3
|
+
export interface HydrangeanDivaProviderProps {
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
nostalgicDivaProps?: NostalgicDivaProviderProps;
|
|
6
|
+
}
|
|
7
|
+
export declare const HydrangeanDivaProvider: ({ children, nostalgicDivaProps, }: HydrangeanDivaProviderProps) => ReactElement;
|