@aigamo/hydrangean-diva 0.0.1-alpha.32 → 0.0.1-alpha.33

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.
Files changed (107) hide show
  1. package/dist/App.d.ts +9 -0
  2. package/dist/api/apis/MediaPlayerPlaylistsApi.d.ts +79 -0
  3. package/dist/api/apis/index.d.ts +1 -0
  4. package/dist/api/index.d.ts +3 -0
  5. package/dist/api/models/HydrangeanDivaMediaPlayerContractsPlaylistsDtosGetPlaylistResponseDto.d.ts +22 -0
  6. package/dist/api/models/HydrangeanDivaMediaPlayerContractsPlaylistsDtosListPlaylistsResponseDto.d.ts +22 -0
  7. package/dist/api/models/HydrangeanDivaMediaPlayerContractsPlaylistsDtosListTracksResponseDto.d.ts +22 -0
  8. package/dist/api/models/HydrangeanDivaMediaPlayerContractsPlaylistsDtosPlaylistDto.d.ts +38 -0
  9. package/dist/api/models/HydrangeanDivaMediaPlayerContractsPlaylistsDtosTrackDto.d.ts +56 -0
  10. package/dist/api/models/HydrangeanDivaMediaPlayerEndpointsPlaylistsCreatePlaylistRequest.d.ts +32 -0
  11. package/dist/api/models/HydrangeanDivaMediaPlayerEndpointsPlaylistsRenamePlaylistRequest.d.ts +32 -0
  12. package/dist/api/models/index.d.ts +7 -0
  13. package/dist/api/runtime.d.ts +184 -0
  14. package/dist/common/components/AppLink.d.ts +6 -0
  15. package/dist/common/components/AppPageTemplateHeader.d.ts +18 -0
  16. package/dist/favicon.svg +39 -0
  17. package/dist/features/common/components/Compose.d.ts +7 -0
  18. package/dist/features/common/components/useLocationStateHandler.d.ts +10 -0
  19. package/dist/features/common/helpers/bottomBarHeight.d.ts +1 -0
  20. package/dist/features/common/helpers/featureFlags.d.ts +5 -0
  21. package/dist/features/common/helpers/index.d.ts +1 -0
  22. package/dist/features/common/helpers/miniPlayerSize.d.ts +4 -0
  23. package/dist/features/common/helpers/videoServiceIcons.d.ts +2 -0
  24. package/dist/features/common/index.d.ts +3 -0
  25. package/dist/features/common/interfaces/IObservableStateProvider.d.ts +4 -0
  26. package/dist/features/common/interfaces/index.d.ts +1 -0
  27. package/dist/features/common/stores/MobXObservableStateProvider.d.ts +5 -0
  28. package/dist/features/common/stores/ObservableStateProvider.d.ts +5 -0
  29. package/dist/features/common/stores/getOrAddSchema.d.ts +2 -0
  30. package/dist/features/common/stores/index.d.ts +2 -0
  31. package/dist/features/index.d.ts +5 -0
  32. package/dist/features/media-player/components/HydrangeanDivaProvider.d.ts +7 -0
  33. package/dist/features/media-player/components/index.d.ts +1 -0
  34. package/dist/features/media-player/index.d.ts +1 -0
  35. package/dist/features/media-player.header/components/Header.d.ts +2 -0
  36. package/dist/features/media-player.play-queue/components/AddToSelectablePopover.d.ts +8 -0
  37. package/dist/features/media-player.play-queue/components/AddVideoButton.d.ts +10 -0
  38. package/dist/features/media-player.play-queue/components/DeveloperToolsButton.d.ts +9 -0
  39. package/dist/features/media-player.play-queue/components/PlayQueue.d.ts +9 -0
  40. package/dist/features/media-player.play-queue/components/PlayQueueProvider.d.ts +6 -0
  41. package/dist/features/media-player.play-queue/components/PlayQueueTable.d.ts +9 -0
  42. package/dist/features/media-player.play-queue/components/index.d.ts +1 -0
  43. package/dist/features/media-player.play-queue/helpers/isNoembedResult.d.ts +5 -0
  44. package/dist/features/media-player.play-queue/helpers/mediaPlayerPlaylistsApi.d.ts +2 -0
  45. package/dist/features/media-player.play-queue/index.d.ts +2 -0
  46. package/dist/features/media-player.play-queue/pages/PlayQueuePage.d.ts +2 -0
  47. package/dist/features/media-player.play-queue/pages/index.d.ts +1 -0
  48. package/dist/features/media-player.play-queue/stores/PlayQueueItemStore.d.ts +40 -0
  49. package/dist/features/media-player.play-queue/stores/PlayQueueStore.d.ts +61 -0
  50. package/dist/features/media-player.play-queue.abstractions/contexts/PlayQueueContext.d.ts +3 -0
  51. package/dist/features/media-player.play-queue.abstractions/contexts/index.d.ts +1 -0
  52. package/dist/features/media-player.play-queue.abstractions/index.d.ts +2 -0
  53. package/dist/features/media-player.play-queue.abstractions/interfaces/IPlayQueueItemStore.d.ts +29 -0
  54. package/dist/features/media-player.play-queue.abstractions/interfaces/IPlayQueueStore.d.ts +48 -0
  55. package/dist/features/media-player.play-queue.abstractions/interfaces/PlayQueueDto.d.ts +11 -0
  56. package/dist/features/media-player.play-queue.abstractions/interfaces/PlayQueueItemDto.d.ts +9 -0
  57. package/dist/features/media-player.play-queue.abstractions/interfaces/RepeatMode.d.ts +5 -0
  58. package/dist/features/media-player.play-queue.abstractions/interfaces/index.d.ts +3 -0
  59. package/dist/features/media-player.player/components/CookieConsentPanel.d.ts +8 -0
  60. package/dist/features/media-player.player/components/MediaPlayerLayout.d.ts +8 -0
  61. package/dist/features/media-player.player/components/PlayerProvider.d.ts +6 -0
  62. package/dist/features/media-player.player/components/bottom-bar/BottomBar.d.ts +8 -0
  63. package/dist/features/media-player.player/components/bottom-bar/BottomBarCenterControls.d.ts +4 -0
  64. package/dist/features/media-player.player/components/bottom-bar/BottomBarLeftControls.d.ts +4 -0
  65. package/dist/features/media-player.player/components/bottom-bar/BottomBarProvider.d.ts +6 -0
  66. package/dist/features/media-player.player/components/bottom-bar/BottomBarRightControls.d.ts +6 -0
  67. package/dist/features/media-player.player/components/bottom-bar/SeekBar.d.ts +4 -0
  68. package/dist/features/media-player.player/components/bottom-bar/index.d.ts +1 -0
  69. package/dist/features/media-player.player/components/index.d.ts +3 -0
  70. package/dist/features/media-player.player/components/mini-player/MiniPlayer.d.ts +4 -0
  71. package/dist/features/media-player.player/components/mini-player/MiniPlayerProvider.d.ts +6 -0
  72. package/dist/features/media-player.player/components/mini-player/index.d.ts +1 -0
  73. package/dist/features/media-player.player/contexts/BottomBarContext.d.ts +3 -0
  74. package/dist/features/media-player.player/contexts/MiniPlayerContext.d.ts +3 -0
  75. package/dist/features/media-player.player/contexts/PlayerContext.d.ts +3 -0
  76. package/dist/features/media-player.player/index.d.ts +2 -0
  77. package/dist/features/media-player.player/interfaces/IBottomBarStore.d.ts +32 -0
  78. package/dist/features/media-player.player/interfaces/IMiniPlayerStore.d.ts +12 -0
  79. package/dist/features/media-player.player/interfaces/IPlayerStore.d.ts +13 -0
  80. package/dist/features/media-player.player/interfaces/index.d.ts +3 -0
  81. package/dist/features/media-player.player/stores/BottomBarStore.d.ts +39 -0
  82. package/dist/features/media-player.player/stores/MiniPlayerStore.d.ts +18 -0
  83. package/dist/features/media-player.player/stores/PlayerStore.d.ts +18 -0
  84. package/dist/features/media-player.playlists/components/CreatePlaylistButton.d.ts +10 -0
  85. package/dist/features/media-player.playlists/components/PlaylistTable.d.ts +9 -0
  86. package/dist/features/media-player.playlists/helpers/mediaPlayerPlaylistsApi.d.ts +2 -0
  87. package/dist/features/media-player.playlists/pages/PlaylistDetailsPage.d.ts +9 -0
  88. package/dist/features/media-player.playlists/pages/PlaylistListPage.d.ts +2 -0
  89. package/dist/features/media-player.playlists/stores/PlaylistItemStore.d.ts +20 -0
  90. package/dist/features/media-player.playlists/stores/PlaylistListStore.d.ts +16 -0
  91. package/dist/features/media-player.playlists/stores/PlaylistStore.d.ts +33 -0
  92. package/dist/icons.d.ts +1 -0
  93. package/dist/index.cjs.js +15 -0
  94. package/dist/index.cjs.js.map +1 -0
  95. package/dist/index.d.ts +1 -0
  96. package/dist/index.es.js +3374 -0
  97. package/dist/index.es.js.map +1 -0
  98. package/dist/main.d.ts +1 -0
  99. package/dist/routeTree.gen.d.ts +91 -0
  100. package/dist/routes/__root.d.ts +1 -0
  101. package/dist/routes/_authenticated/index.d.ts +1 -0
  102. package/dist/routes/_authenticated/play-queue.d.ts +1 -0
  103. package/dist/routes/_authenticated/playlists/$playlistId.index.d.ts +1 -0
  104. package/dist/routes/_authenticated/playlists/index.d.ts +1 -0
  105. package/dist/routes/_authenticated.d.ts +1 -0
  106. package/dist/sw.d.ts +1 -0
  107. package/package.json +4 -7
@@ -0,0 +1 @@
1
+ export * from './IObservableStateProvider';
@@ -0,0 +1,5 @@
1
+ import { IObservableStateProvider } from '../interfaces/IObservableStateProvider';
2
+ import { AnnotationsMap } from 'mobx';
3
+ export declare class MobXObservableStateProvider implements IObservableStateProvider {
4
+ makeObservable<T extends object, AdditionalKeys extends PropertyKey = never>(target: T, annotations?: AnnotationsMap<T, AdditionalKeys>): T;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { IObservableStateProvider } from '../interfaces/IObservableStateProvider';
2
+ import { AnnotationsMap } from 'mobx';
3
+ export declare class ObservableStateProvider implements IObservableStateProvider {
4
+ makeObservable<T extends object, AdditionalKeys extends PropertyKey = never>(target: T, _annotations?: AnnotationsMap<T, AdditionalKeys>): T;
5
+ }
@@ -0,0 +1,2 @@
1
+ import { JSONSchemaType, ValidateFunction } from 'ajv';
2
+ export declare function getOrAddSchema<T>(schema: JSONSchemaType<T>, keyRef: string): ValidateFunction<T>;
@@ -0,0 +1,2 @@
1
+ export * from './MobXObservableStateProvider';
2
+ export * from './ObservableStateProvider';
@@ -0,0 +1,5 @@
1
+ export * from './common';
2
+ export * from './media-player';
3
+ export * from './media-player.play-queue.abstractions';
4
+ export * from './media-player.play-queue';
5
+ export * from './media-player.player';
@@ -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;
@@ -0,0 +1 @@
1
+ export * from './HydrangeanDivaProvider';
@@ -0,0 +1 @@
1
+ export * from './components';
@@ -0,0 +1,2 @@
1
+ import { ReactElement } from 'react';
2
+ export declare const Header: () => ReactElement;
@@ -0,0 +1,8 @@
1
+ import { EuiSelectableOption } from '@elastic/eui';
2
+ import { ReactElement } from 'react';
3
+ interface AddToSelectablePopoverProps {
4
+ disabled: boolean;
5
+ onAddToPlaylist: (option: EuiSelectableOption) => Promise<void>;
6
+ }
7
+ export declare const AddToSelectablePopover: ({ disabled, onAddToPlaylist, }: AddToSelectablePopoverProps) => ReactElement;
8
+ export {};
@@ -0,0 +1,10 @@
1
+ import { ReactElement } from 'react';
2
+ export interface AddVideoFormSubmitEvent {
3
+ url: string;
4
+ title: string;
5
+ }
6
+ interface AddVideoButtonProps {
7
+ onSave: (e: AddVideoFormSubmitEvent) => Promise<void>;
8
+ }
9
+ export declare const AddVideoButton: import('react').MemoExoticComponent<({ onSave }: AddVideoButtonProps) => ReactElement>;
10
+ 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 '../../media-player.play-queue.abstractions/interfaces/IPlayQueueStore';
2
+ import { ReactElement } from 'react';
3
+ interface PlayQueueProps {
4
+ playQueue: IPlayQueueStore;
5
+ }
6
+ export declare const PlayQueue: (({ playQueue }: PlayQueueProps) => ReactElement) & {
7
+ displayName: string;
8
+ };
9
+ export {};
@@ -0,0 +1,6 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ interface PlayQueueProviderProps {
3
+ children?: ReactNode;
4
+ }
5
+ export declare const PlayQueueProvider: ({ children, }: PlayQueueProviderProps) => ReactElement;
6
+ export {};
@@ -0,0 +1,9 @@
1
+ import { IPlayQueueStore } from '../../media-player.play-queue.abstractions/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 @@
1
+ export * from './PlayQueue';
@@ -0,0 +1,5 @@
1
+ interface NoembedResult {
2
+ title: string;
3
+ }
4
+ export declare function isNoembedResult(value: any): value is NoembedResult;
5
+ export {};
@@ -0,0 +1,2 @@
1
+ import { MediaPlayerPlaylistsApi } from '../../../api';
2
+ export declare const mediaPlayerPlaylistsApi: MediaPlayerPlaylistsApi;
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ export * from './pages';
@@ -0,0 +1,2 @@
1
+ import { ReactElement } from 'react';
2
+ export declare const PlayQueuePage: () => ReactElement;
@@ -0,0 +1 @@
1
+ export * from './PlayQueuePage';
@@ -0,0 +1,40 @@
1
+ import { IObservableStateProvider } from '../../common/interfaces/IObservableStateProvider';
2
+ import { IPlayQueueItemStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueItemStore';
3
+ import { IPlayQueueStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueStore';
4
+ import { PlayQueueItemDto } from '../../media-player.play-queue.abstractions/interfaces/PlayQueueItemDto';
5
+ import { PlayerType } from '@aigamo/nostalgic-diva';
6
+ export declare class PlayQueueItemStore implements IPlayQueueItemStore {
7
+ readonly observableStateProvider: IObservableStateProvider;
8
+ readonly playQueue: IPlayQueueStore;
9
+ readonly dto: PlayQueueItemDto;
10
+ static nextId: number;
11
+ readonly id: number;
12
+ isSelected: boolean;
13
+ constructor(observableStateProvider: IObservableStateProvider, playQueue: IPlayQueueStore, dto: PlayQueueItemDto);
14
+ static fromDto(observableStateProvider: IObservableStateProvider, playQueue: IPlayQueueStore, dto: PlayQueueItemDto): IPlayQueueItemStore;
15
+ get url(): string;
16
+ get type(): PlayerType;
17
+ get videoId(): string;
18
+ get title(): string;
19
+ get isCurrent(): boolean;
20
+ get index(): number;
21
+ get isFirst(): boolean;
22
+ get isLast(): boolean;
23
+ get canMoveToTop(): boolean;
24
+ get canMoveToBottom(): boolean;
25
+ get canRemoveToTop(): boolean;
26
+ get canRemoveOthers(): boolean;
27
+ clone(): IPlayQueueItemStore;
28
+ unselect(): void;
29
+ select(): void;
30
+ toggleSelected(): void;
31
+ play(): void;
32
+ remove(): Promise<void>;
33
+ playFirst(): Promise<void>;
34
+ playNext(): Promise<void>;
35
+ addToPlayQueue(): Promise<void>;
36
+ moveToTop(): void;
37
+ moveToBottom(): void;
38
+ removeToTop(): Promise<void>;
39
+ removeOthers(): Promise<void>;
40
+ }
@@ -0,0 +1,61 @@
1
+ import { IObservableStateProvider } from '../../common/interfaces/IObservableStateProvider';
2
+ import { IPlayQueueItemStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueItemStore';
3
+ import { IPlayQueueStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueStore';
4
+ import { PlayQueueDto } from '../../media-player.play-queue.abstractions/interfaces/PlayQueueDto';
5
+ import { PlayQueueItemDto } from '../../media-player.play-queue.abstractions/interfaces/PlayQueueItemDto';
6
+ import { RepeatMode } from '../../media-player.play-queue.abstractions/interfaces/RepeatMode';
7
+ import { LocalStorageStateStore } from '@aigamo/route-sphere';
8
+ export declare class PlayQueueStore implements IPlayQueueStore, LocalStorageStateStore<PlayQueueDto> {
9
+ readonly observableStateProvider: IObservableStateProvider;
10
+ interacted: boolean;
11
+ items: IPlayQueueItemStore[];
12
+ currentId: number | undefined;
13
+ repeat: RepeatMode;
14
+ shuffle: boolean;
15
+ constructor(observableStateProvider: IObservableStateProvider);
16
+ createItem(dto: PlayQueueItemDto): IPlayQueueItemStore;
17
+ get localStorageState(): PlayQueueDto;
18
+ set localStorageState(value: PlayQueueDto);
19
+ validateLocalStorageState(localStorageState: any): localStorageState is PlayQueueDto;
20
+ get isEmpty(): boolean;
21
+ get canClear(): boolean;
22
+ get currentItem(): IPlayQueueItemStore | undefined;
23
+ get canPlay(): boolean;
24
+ get canPause(): boolean;
25
+ get hasMultipleItems(): boolean;
26
+ get currentIndex(): number | undefined;
27
+ set currentIndex(value: number | undefined);
28
+ get hasPreviousItem(): boolean;
29
+ get hasNextItem(): boolean;
30
+ get isLastItem(): boolean;
31
+ get selectedItems(): IPlayQueueItemStore[];
32
+ get allItemsSelected(): boolean;
33
+ get hasSelectedItems(): boolean;
34
+ get selectedItemsOrAllItems(): IPlayQueueItemStore[];
35
+ get canAddSelectedItems(): boolean;
36
+ get canPlaySelectedItemsNext(): boolean;
37
+ get canRemoveSelectedItems(): boolean;
38
+ setItems(value: IPlayQueueItemStore[]): void;
39
+ interact(): void;
40
+ clear(): void;
41
+ unselectAll(): void;
42
+ selectAll(): void;
43
+ setCurrentItem(item: IPlayQueueItemStore | undefined): void;
44
+ setNextItems(items: IPlayQueueItemStore[]): void;
45
+ clearAndSetItems(items: IPlayQueueItemStore[]): void;
46
+ playNext(items: IPlayQueueItemStore[]): Promise<void>;
47
+ playSelectedItemsNext(): Promise<void>;
48
+ addItems(items: IPlayQueueItemStore[]): Promise<void>;
49
+ addSelectedItems(): Promise<void>;
50
+ playFirst(items: IPlayQueueItemStore[]): Promise<void>;
51
+ moveItem(item: IPlayQueueItemStore, index: number): void;
52
+ goToFirst(): Promise<void>;
53
+ removeItems(items: IPlayQueueItemStore[]): Promise<void>;
54
+ removeSelectedItems(): Promise<void>;
55
+ removeOtherItems(item: IPlayQueueItemStore): Promise<void>;
56
+ removeItemsAbove(item: IPlayQueueItemStore): Promise<void>;
57
+ toggleRepeat(): void;
58
+ toggleShuffle(): void;
59
+ previous(): Promise<void>;
60
+ next(): Promise<void>;
61
+ }
@@ -0,0 +1,3 @@
1
+ import { IPlayQueueStore } from '../interfaces/IPlayQueueStore';
2
+ export declare const PlayQueueContext: import('react').Context<IPlayQueueStore>;
3
+ export declare const usePlayQueue: () => IPlayQueueStore;
@@ -0,0 +1 @@
1
+ export * from './PlayQueueContext';
@@ -0,0 +1,2 @@
1
+ export * from './contexts';
2
+ export * from './interfaces';
@@ -0,0 +1,29 @@
1
+ import { PlayQueueItemDto } from './PlayQueueItemDto';
2
+ import { PlayerType } from '@aigamo/nostalgic-diva';
3
+ export interface IPlayQueueItemStore {
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 canMoveToTop: boolean;
12
+ readonly canMoveToBottom: boolean;
13
+ readonly canRemoveToTop: boolean;
14
+ readonly canRemoveOthers: boolean;
15
+ readonly isCurrent: boolean;
16
+ clone(): IPlayQueueItemStore;
17
+ unselect(): void;
18
+ select(): void;
19
+ toggleSelected(): void;
20
+ play(): void;
21
+ remove(): Promise<void>;
22
+ playFirst(): Promise<void>;
23
+ playNext(): Promise<void>;
24
+ addToPlayQueue(): Promise<void>;
25
+ moveToTop(): void;
26
+ moveToBottom(): void;
27
+ removeToTop(): Promise<void>;
28
+ removeOthers(): Promise<void>;
29
+ }
@@ -0,0 +1,48 @@
1
+ import { IPlayQueueItemStore } from './IPlayQueueItemStore';
2
+ import { PlayQueueDto } from './PlayQueueDto';
3
+ import { PlayQueueItemDto } from './PlayQueueItemDto';
4
+ import { RepeatMode } from './RepeatMode';
5
+ import { LocalStorageStateStore } from '@aigamo/route-sphere';
6
+ export interface IPlayQueueStore extends LocalStorageStateStore<PlayQueueDto> {
7
+ readonly interacted: boolean;
8
+ readonly items: IPlayQueueItemStore[];
9
+ readonly repeat: RepeatMode;
10
+ readonly shuffle: boolean;
11
+ createItem(dto: PlayQueueItemDto): IPlayQueueItemStore;
12
+ readonly isEmpty: boolean;
13
+ readonly canClear: boolean;
14
+ readonly currentItem: IPlayQueueItemStore | undefined;
15
+ readonly canPlay: boolean;
16
+ readonly canPause: boolean;
17
+ readonly hasMultipleItems: boolean;
18
+ readonly hasPreviousItem: boolean;
19
+ readonly hasNextItem: boolean;
20
+ readonly isLastItem: boolean;
21
+ readonly selectedItems: IPlayQueueItemStore[];
22
+ readonly allItemsSelected: boolean;
23
+ readonly selectedItemsOrAllItems: IPlayQueueItemStore[];
24
+ readonly canAddSelectedItems: boolean;
25
+ readonly canPlaySelectedItemsNext: boolean;
26
+ readonly canRemoveSelectedItems: boolean;
27
+ setItems(value: IPlayQueueItemStore[]): void;
28
+ clear(): void;
29
+ unselectAll(): void;
30
+ selectAll(): void;
31
+ setCurrentItem(item: IPlayQueueItemStore | undefined): void;
32
+ clearAndSetItems(items: IPlayQueueItemStore[]): void;
33
+ playNext(items: IPlayQueueItemStore[]): Promise<void>;
34
+ playSelectedItemsNext(): Promise<void>;
35
+ addItems(items: IPlayQueueItemStore[]): Promise<void>;
36
+ addSelectedItems(): Promise<void>;
37
+ playFirst(items: IPlayQueueItemStore[]): Promise<void>;
38
+ moveItem(item: IPlayQueueItemStore, index: number): void;
39
+ goToFirst(): Promise<void>;
40
+ removeItems(items: IPlayQueueItemStore[]): Promise<void>;
41
+ removeSelectedItems(): Promise<void>;
42
+ removeItemsAbove(item: IPlayQueueItemStore): Promise<void>;
43
+ removeOtherItems(item: IPlayQueueItemStore): Promise<void>;
44
+ toggleRepeat(): void;
45
+ toggleShuffle(): void;
46
+ previous(): Promise<void>;
47
+ next(): Promise<void>;
48
+ }
@@ -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,5 @@
1
+ export declare enum RepeatMode {
2
+ Off = "Off",
3
+ All = "All",
4
+ One = "One"
5
+ }
@@ -0,0 +1,3 @@
1
+ export * from './IPlayQueueItemStore';
2
+ export * from './IPlayQueueStore';
3
+ export * from './RepeatMode';
@@ -0,0 +1,8 @@
1
+ import { PlayerType } from '@aigamo/nostalgic-diva';
2
+ import { ReactElement } from 'react';
3
+ type ThirdPartyPlayerType = Exclude<PlayerType, PlayerType.Audio>;
4
+ interface CookieConsentPanelProps {
5
+ playerType: ThirdPartyPlayerType;
6
+ }
7
+ export declare const CookieConsentPanel: ({ playerType, }: CookieConsentPanelProps) => ReactElement;
8
+ export {};
@@ -0,0 +1,8 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ interface MediaPlayerLayoutProps {
3
+ children?: ReactNode;
4
+ }
5
+ export declare const MediaPlayerLayout: (({ children }: MediaPlayerLayoutProps) => ReactElement) & {
6
+ displayName: string;
7
+ };
8
+ export {};
@@ -0,0 +1,6 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ interface PlayerProviderProps {
3
+ children?: ReactNode;
4
+ }
5
+ export declare const PlayerProvider: ({ children, }: PlayerProviderProps) => ReactElement;
6
+ 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,4 @@
1
+ import { ReactElement } from 'react';
2
+ export declare const BottomBarCenterControls: (() => ReactElement) & {
3
+ displayName: string;
4
+ };
@@ -0,0 +1,4 @@
1
+ import { ReactElement } from 'react';
2
+ export declare const BottomBarLeftControls: (() => ReactElement) & {
3
+ displayName: string;
4
+ };
@@ -0,0 +1,6 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ interface BottomBarProviderProps {
3
+ children?: ReactNode;
4
+ }
5
+ export declare const BottomBarProvider: ({ children, }: BottomBarProviderProps) => ReactElement;
6
+ export {};
@@ -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,4 @@
1
+ import { ReactElement } from 'react';
2
+ export declare const SeekBar: (() => ReactElement) & {
3
+ displayName: string;
4
+ };
@@ -0,0 +1 @@
1
+ export * from './BottomBar';
@@ -0,0 +1,3 @@
1
+ export * from './bottom-bar';
2
+ export * from './mini-player';
3
+ export * from './MediaPlayerLayout';
@@ -0,0 +1,4 @@
1
+ import { ReactElement } from 'react';
2
+ export declare const MiniPlayer: (() => ReactElement) & {
3
+ displayName: string;
4
+ };
@@ -0,0 +1,6 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ interface MiniPlayerProviderProps {
3
+ children?: ReactNode;
4
+ }
5
+ export declare const MiniPlayerProvider: ({ children, }: MiniPlayerProviderProps) => ReactElement;
6
+ export {};
@@ -0,0 +1 @@
1
+ export * from './MiniPlayer';
@@ -0,0 +1,3 @@
1
+ import { IBottomBarStore } from '../interfaces/IBottomBarStore';
2
+ export declare const BottomBarContext: import('react').Context<IBottomBarStore>;
3
+ export declare const useBottomBar: () => IBottomBarStore;
@@ -0,0 +1,3 @@
1
+ import { IMiniPlayerStore } from '../interfaces/IMiniPlayerStore';
2
+ export declare const MiniPlayerContext: import('react').Context<IMiniPlayerStore>;
3
+ export declare const useMiniPlayer: () => IMiniPlayerStore;
@@ -0,0 +1,3 @@
1
+ import { IPlayerStore } from '../interfaces/IPlayerStore';
2
+ export declare const PlayerContext: import('react').Context<IPlayerStore>;
3
+ export declare const usePlayer: () => IPlayerStore;
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ export * from './interfaces';
@@ -0,0 +1,32 @@
1
+ import { IPlayQueueItemStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueItemStore';
2
+ import { RepeatMode } from '../../media-player.play-queue.abstractions/interfaces/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 '../../media-player.play-queue.abstractions/interfaces/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
+ }
@@ -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,3 @@
1
+ export * from './IBottomBarStore';
2
+ export * from './IMiniPlayerStore';
3
+ export * from './IPlayerStore';
@@ -0,0 +1,39 @@
1
+ import { IObservableStateProvider } from '../../common/interfaces/IObservableStateProvider';
2
+ import { IPlayQueueItemStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueItemStore';
3
+ import { IPlayQueueStore } from '../../media-player.play-queue.abstractions/interfaces/IPlayQueueStore';
4
+ import { RepeatMode } from '../../media-player.play-queue.abstractions/interfaces/RepeatMode';
5
+ import { IBottomBarStore } from '../interfaces/IBottomBarStore';
6
+ import { IPlayerStore } from '../interfaces/IPlayerStore';
7
+ import { IPlayerController } from '@aigamo/nostalgic-diva';
8
+ export declare class BottomBarStore implements IBottomBarStore {
9
+ private readonly player;
10
+ private readonly playQueue;
11
+ constructor(observableStateProvider: IObservableStateProvider, player: IPlayerStore, playQueue: IPlayQueueStore);
12
+ get controller(): IPlayerController;
13
+ get playing(): boolean;
14
+ get percent(): number;
15
+ get canSeek(): boolean;
16
+ get currentItem(): IPlayQueueItemStore | undefined;
17
+ get repeat(): RepeatMode;
18
+ get shuffle(): boolean;
19
+ get canToggleRepeat(): boolean;
20
+ get canToggleShuffle(): boolean;
21
+ get canPlay(): boolean;
22
+ get canPause(): boolean;
23
+ get canPrevious(): boolean;
24
+ get canNext(): boolean;
25
+ get canSkipBack10(): boolean;
26
+ get canSkipForward30(): boolean;
27
+ get canRemoveFromPlayQueue(): boolean;
28
+ setPercent(value: number): void;
29
+ setSeeking(value: boolean): void;
30
+ toggleRepeat(): void;
31
+ toggleShuffle(): void;
32
+ play(): Promise<void>;
33
+ pause(): Promise<void>;
34
+ previous(): Promise<void>;
35
+ next(): Promise<void>;
36
+ skipBack10(): Promise<void>;
37
+ skipForward30(): Promise<void>;
38
+ removeFromPlayQueue(): Promise<void>;
39
+ }
@@ -0,0 +1,18 @@
1
+ import { IObservableStateProvider } from '../../common/interfaces/IObservableStateProvider';
2
+ import { IPlayQueueItemStore, IPlayQueueStore } from '../../media-player.play-queue.abstractions';
3
+ import { IMiniPlayerStore } from '../interfaces/IMiniPlayerStore';
4
+ import { IPlayerStore } from '../interfaces/IPlayerStore';
5
+ import { IPlayerController, TimeEvent } from '@aigamo/nostalgic-diva';
6
+ export declare class MiniPlayerStore implements IMiniPlayerStore {
7
+ private readonly player;
8
+ private readonly playQueue;
9
+ constructor(observableStateProvider: IObservableStateProvider, player: IPlayerStore, playQueue: IPlayQueueStore);
10
+ get controller(): IPlayerController;
11
+ get currentItem(): IPlayQueueItemStore | undefined;
12
+ onLoaded(): Promise<void>;
13
+ onPlay(): void;
14
+ onPause(): void;
15
+ onEnded(): Promise<void>;
16
+ onTimeUpdate(event: TimeEvent): void;
17
+ onControllerChange(value: IPlayerController): void;
18
+ }