webamp 1.4.3-beta.5 → 2.0.0

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 (154) hide show
  1. package/README.md +20 -0
  2. package/built/types/js/Disposable.d.ts +11 -0
  3. package/built/types/js/actionCreators/equalizer.d.ts +8 -0
  4. package/built/types/js/actionCreators/files.d.ts +24 -0
  5. package/built/types/js/actionCreators/index.d.ts +22 -0
  6. package/built/types/js/actionCreators/media.d.ts +20 -0
  7. package/built/types/js/actionCreators/milkdrop.d.ts +13 -0
  8. package/built/types/js/actionCreators/playlist.d.ts +16 -0
  9. package/built/types/js/actionCreators/windows.d.ts +27 -0
  10. package/built/types/js/actionTypes.d.ts +87 -0
  11. package/built/types/js/components/App.d.ts +12 -0
  12. package/built/types/js/components/Balance.d.ts +8 -0
  13. package/built/types/js/components/Character.d.ts +9 -0
  14. package/built/types/js/components/CharacterString.d.ts +6 -0
  15. package/built/types/js/components/ClickedDiv.d.ts +8 -0
  16. package/built/types/js/components/ClipPaths.d.ts +8 -0
  17. package/built/types/js/components/ContextMenu.d.ts +31 -0
  18. package/built/types/js/components/ContextMenuTarget.d.ts +9 -0
  19. package/built/types/js/components/ContextMenuWrapper.d.ts +7 -0
  20. package/built/types/js/components/Css.d.ts +7 -0
  21. package/built/types/js/components/DropTarget.d.ts +13 -0
  22. package/built/types/js/components/EqualizerWindow/Band.d.ts +14 -0
  23. package/built/types/js/components/EqualizerWindow/EqAuto.d.ts +3 -0
  24. package/built/types/js/components/EqualizerWindow/EqGraph.d.ts +2 -0
  25. package/built/types/js/components/EqualizerWindow/EqOn.d.ts +2 -0
  26. package/built/types/js/components/EqualizerWindow/EqTitleButtons.d.ts +1 -0
  27. package/built/types/js/components/EqualizerWindow/EqualizerShade.d.ts +2 -0
  28. package/built/types/js/components/EqualizerWindow/PresetsContextMenu.d.ts +2 -0
  29. package/built/types/js/components/EqualizerWindow/index.d.ts +2 -0
  30. package/built/types/js/components/EqualizerWindow/spline.d.ts +1 -0
  31. package/built/types/js/components/FFTNullsoft.d.ts +16 -0
  32. package/built/types/js/components/FocusTarget.d.ts +9 -0
  33. package/built/types/js/components/Fullscreen.d.ts +8 -0
  34. package/built/types/js/components/GenWindow/index.d.ts +14 -0
  35. package/built/types/js/components/MainWindow/ActionButtons.d.ts +3 -0
  36. package/built/types/js/components/MainWindow/Close.d.ts +3 -0
  37. package/built/types/js/components/MainWindow/ClutterBar.d.ts +3 -0
  38. package/built/types/js/components/MainWindow/Eject.d.ts +3 -0
  39. package/built/types/js/components/MainWindow/EqToggleButton.d.ts +3 -0
  40. package/built/types/js/components/MainWindow/Kbps.d.ts +3 -0
  41. package/built/types/js/components/MainWindow/Khz.d.ts +3 -0
  42. package/built/types/js/components/MainWindow/MainBalance.d.ts +4 -0
  43. package/built/types/js/components/MainWindow/MainContextMenu.d.ts +7 -0
  44. package/built/types/js/components/MainWindow/MainVolume.d.ts +3 -0
  45. package/built/types/js/components/MainWindow/Marquee.d.ts +7 -0
  46. package/built/types/js/components/MainWindow/Minimize.d.ts +3 -0
  47. package/built/types/js/components/MainWindow/MonoStereo.d.ts +3 -0
  48. package/built/types/js/components/MainWindow/PlaylistToggleButton.d.ts +3 -0
  49. package/built/types/js/components/MainWindow/Position.d.ts +3 -0
  50. package/built/types/js/components/MainWindow/Repeat.d.ts +3 -0
  51. package/built/types/js/components/MainWindow/Shade.d.ts +3 -0
  52. package/built/types/js/components/MainWindow/Shuffle.d.ts +3 -0
  53. package/built/types/js/components/MainWindow/Time.d.ts +3 -0
  54. package/built/types/js/components/MainWindow/index.d.ts +8 -0
  55. package/built/types/js/components/MilkdropWindow/Background.d.ts +7 -0
  56. package/built/types/js/components/MilkdropWindow/Desktop.d.ts +7 -0
  57. package/built/types/js/components/MilkdropWindow/MilkdropContextMenu.d.ts +6 -0
  58. package/built/types/js/components/MilkdropWindow/PresetOverlay.d.ts +7 -0
  59. package/built/types/js/components/MilkdropWindow/Visualizer.d.ts +7 -0
  60. package/built/types/js/components/MilkdropWindow/index.d.ts +5 -0
  61. package/built/types/js/components/MiniTime.d.ts +2 -0
  62. package/built/types/js/components/OptionsContextMenu.d.ts +2 -0
  63. package/built/types/js/components/PlaybackContextMenu.d.ts +2 -0
  64. package/built/types/js/components/PlaylistWindow/AddMenu.d.ts +2 -0
  65. package/built/types/js/components/PlaylistWindow/ListMenu.d.ts +1 -0
  66. package/built/types/js/components/PlaylistWindow/MiscMenu.d.ts +2 -0
  67. package/built/types/js/components/PlaylistWindow/MiscOptionsContextMenu.d.ts +2 -0
  68. package/built/types/js/components/PlaylistWindow/PlaylistActionArea.d.ts +2 -0
  69. package/built/types/js/components/PlaylistWindow/PlaylistMenu.d.ts +8 -0
  70. package/built/types/js/components/PlaylistWindow/PlaylistMenuEntry.d.ts +7 -0
  71. package/built/types/js/components/PlaylistWindow/PlaylistResizeTarget.d.ts +5 -0
  72. package/built/types/js/components/PlaylistWindow/PlaylistScrollBar.d.ts +1 -0
  73. package/built/types/js/components/PlaylistWindow/PlaylistShade.d.ts +2 -0
  74. package/built/types/js/components/PlaylistWindow/RemoveMenu.d.ts +2 -0
  75. package/built/types/js/components/PlaylistWindow/RunningTimeDisplay.d.ts +2 -0
  76. package/built/types/js/components/PlaylistWindow/SelectionMenu.d.ts +1 -0
  77. package/built/types/js/components/PlaylistWindow/SortContextMenu.d.ts +1 -0
  78. package/built/types/js/components/PlaylistWindow/TrackCell.d.ts +9 -0
  79. package/built/types/js/components/PlaylistWindow/TrackList.d.ts +2 -0
  80. package/built/types/js/components/PlaylistWindow/TrackTitle.d.ts +6 -0
  81. package/built/types/js/components/PlaylistWindow/index.d.ts +5 -0
  82. package/built/types/js/components/ResizeTarget.d.ts +11 -0
  83. package/built/types/js/components/Skin.d.ts +1 -0
  84. package/built/types/js/components/SkinsContextMenu.d.ts +2 -0
  85. package/built/types/js/components/VerticalSlider.d.ts +15 -0
  86. package/built/types/js/components/Vis.d.ts +5 -0
  87. package/built/types/js/components/VisPainter.d.ts +147 -0
  88. package/built/types/js/components/Volume.d.ts +8 -0
  89. package/built/types/js/components/WinampButton.d.ts +23 -0
  90. package/built/types/js/components/WindowManager.d.ts +8 -0
  91. package/built/types/js/constants.d.ts +38 -0
  92. package/built/types/js/emitter.d.ts +9 -0
  93. package/built/types/js/fileUtils.d.ts +15 -0
  94. package/built/types/js/hooks.d.ts +21 -0
  95. package/built/types/js/hotkeys.d.ts +2 -0
  96. package/built/types/js/loadQueue.d.ts +9 -0
  97. package/built/types/js/marqueeUtils.d.ts +6 -0
  98. package/built/types/js/marqueeUtils.test.d.ts +1 -0
  99. package/built/types/js/media/StereoBalanceNode.d.ts +3 -0
  100. package/built/types/js/media/elementSource.d.ts +26 -0
  101. package/built/types/js/media/index.d.ts +43 -0
  102. package/built/types/js/mediaMiddleware.d.ts +4 -0
  103. package/built/types/js/playlistHtml.d.ts +10 -0
  104. package/built/types/js/reducers/display.d.ts +26 -0
  105. package/built/types/js/reducers/equalizer.d.ts +10 -0
  106. package/built/types/js/reducers/index.d.ts +4 -0
  107. package/built/types/js/reducers/media.d.ts +14 -0
  108. package/built/types/js/reducers/milkdrop.d.ts +15 -0
  109. package/built/types/js/reducers/network.d.ts +6 -0
  110. package/built/types/js/reducers/playlist.d.ts +9 -0
  111. package/built/types/js/reducers/settings.d.ts +6 -0
  112. package/built/types/js/reducers/tracks.d.ts +7 -0
  113. package/built/types/js/reducers/tracks.test.d.ts +1 -0
  114. package/built/types/js/reducers/userInput.d.ts +9 -0
  115. package/built/types/js/reducers/windows.d.ts +34 -0
  116. package/built/types/js/regionParser.d.ts +6 -0
  117. package/built/types/js/resizeUtils.d.ts +23 -0
  118. package/built/types/js/resizeUtils.test.d.ts +1 -0
  119. package/built/types/js/selectors.d.ts +184 -0
  120. package/built/types/js/selectors.test.d.ts +1 -0
  121. package/built/types/js/serialization.test.d.ts +1 -0
  122. package/built/types/js/serializedStates/v1Types.d.ts +64 -0
  123. package/built/types/js/skinParser.d.ts +12 -0
  124. package/built/types/js/skinParserUtils.d.ts +19 -0
  125. package/built/types/js/skinSelectors.d.ts +6 -0
  126. package/built/types/js/skinSprites.d.ts +17 -0
  127. package/built/types/js/snapUtils.d.ts +32 -0
  128. package/built/types/js/snapUtils.test.d.ts +1 -0
  129. package/built/types/js/spinParserUtils.test.d.ts +1 -0
  130. package/built/types/js/store.d.ts +4 -0
  131. package/built/types/js/trackUtils.d.ts +3 -0
  132. package/built/types/js/types.d.ts +734 -0
  133. package/built/types/js/utils.d.ts +71 -0
  134. package/built/types/js/utils.test.d.ts +1 -0
  135. package/built/types/js/webamp.d.ts +6 -0
  136. package/built/types/js/webampLazy.d.ts +156 -0
  137. package/built/types/scripts/postcss-optimize-data-uri-pngs.d.ts +2 -0
  138. package/built/types/scripts/rollupPlugins.d.mts +8 -0
  139. package/built/types/vite.config.d.ts +2 -0
  140. package/built/webamp.bundle.js +43627 -36184
  141. package/built/webamp.bundle.js.map +1 -0
  142. package/built/webamp.bundle.min.js +43 -71
  143. package/built/webamp.bundle.min.js.map +1 -1
  144. package/built/webamp.bundle.min.mjs +44 -0
  145. package/built/webamp.bundle.min.mjs.map +1 -0
  146. package/built/webamp.lazy-bundle.js +14215 -18995
  147. package/built/webamp.lazy-bundle.js.map +1 -0
  148. package/built/webamp.lazy-bundle.min.js +41 -50
  149. package/built/webamp.lazy-bundle.min.js.map +1 -1
  150. package/built/webamp.lazy-bundle.min.mjs +42 -0
  151. package/built/webamp.lazy-bundle.min.mjs.map +1 -0
  152. package/package.json +68 -75
  153. package/CHANGELOG.md +0 -198
  154. package/index.d.ts +0 -277
@@ -0,0 +1,10 @@
1
+ import { Slider, Action } from "./../types";
2
+ import { EqualizerSerializedStateV1 } from "../serializedStates/v1Types";
3
+ export interface EqualizerState {
4
+ on: boolean;
5
+ auto: boolean;
6
+ sliders: Record<Slider, number>;
7
+ }
8
+ declare const equalizer: (state: EqualizerState | undefined, action: Action) => EqualizerState;
9
+ export declare function getSerializedState(state: EqualizerState): EqualizerSerializedStateV1;
10
+ export default equalizer;
@@ -0,0 +1,4 @@
1
+ import { AppState, Action } from "../types";
2
+ import { Reducer } from "redux";
3
+ declare const reducer: Reducer<AppState, Action, never>;
4
+ export default reducer;
@@ -0,0 +1,14 @@
1
+ import { Action, MediaStatus, TimeMode } from "../types";
2
+ import { MediaSerializedStateV1 } from "../serializedStates/v1Types";
3
+ export interface MediaState {
4
+ timeMode: TimeMode;
5
+ timeElapsed: number;
6
+ volume: number;
7
+ balance: number;
8
+ shuffle: boolean;
9
+ repeat: boolean;
10
+ status: MediaStatus;
11
+ }
12
+ declare const media: (state: MediaState | undefined, action: Action) => MediaState;
13
+ export declare function getSerializedState(state: MediaState): MediaSerializedStateV1;
14
+ export default media;
@@ -0,0 +1,15 @@
1
+ import { Action, StatePreset, TransitionType, MilkdropMessage } from "../types";
2
+ export interface MilkdropState {
3
+ display: "WINDOW" | "DESKTOP" | "FULLSCREEN";
4
+ overlay: boolean;
5
+ presetHistory: number[];
6
+ presets: StatePreset[];
7
+ currentPresetIndex: number | null;
8
+ butterchurn: any;
9
+ transitionType: TransitionType;
10
+ randomize: boolean;
11
+ cycling: boolean;
12
+ message: MilkdropMessage | null;
13
+ }
14
+ export declare const milkdrop: (state: MilkdropState | undefined, action: Action) => MilkdropState;
15
+ export default milkdrop;
@@ -0,0 +1,6 @@
1
+ import { Action } from "../types";
2
+ export interface NetworkState {
3
+ connected: boolean;
4
+ }
5
+ declare const network: (state: NetworkState | undefined, action: Action) => NetworkState;
6
+ export default network;
@@ -0,0 +1,9 @@
1
+ import { Action } from "../types";
2
+ export interface PlaylistState {
3
+ trackOrder: number[];
4
+ lastSelectedIndex: number | null;
5
+ currentTrack: number | null;
6
+ selectedTracks: Set<number>;
7
+ }
8
+ declare const playlist: (state: PlaylistState | undefined, action: Action) => PlaylistState;
9
+ export default playlist;
@@ -0,0 +1,6 @@
1
+ import { Action, Skin } from "../types";
2
+ export interface SettingsState {
3
+ availableSkins: Array<Skin>;
4
+ }
5
+ declare const settings: (state: SettingsState | undefined, action: Action) => SettingsState;
6
+ export default settings;
@@ -0,0 +1,7 @@
1
+ import { PlaylistTrack, Action } from "../types";
2
+ export interface TracksState {
3
+ [id: string]: PlaylistTrack;
4
+ }
5
+ declare const tracks: (state: TracksState | undefined, action: Action) => TracksState;
6
+ export default tracks;
7
+ export declare const getTrackDisplayName: (state: TracksState, id?: number | null) => string | null;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import { Action, Slider } from "../types";
2
+ export interface UserInputState {
3
+ focus: string | null;
4
+ bandFocused: Slider | null;
5
+ scrubPosition: number;
6
+ userMessage: string | null;
7
+ }
8
+ export declare const userInput: (state: UserInputState | undefined, action: Action) => UserInputState;
9
+ export default userInput;
@@ -0,0 +1,34 @@
1
+ import { Action, WindowId, Box, Point } from "../types";
2
+ import { WindowsSerializedStateV1 } from "../serializedStates/v1Types";
3
+ export type WindowPositions = {
4
+ [windowId: string]: Point;
5
+ };
6
+ export interface WebampWindow {
7
+ title: string;
8
+ size: [number, number];
9
+ open: boolean;
10
+ shade?: boolean;
11
+ canResize: boolean;
12
+ canShade: boolean;
13
+ canDouble: boolean;
14
+ hotkey?: string;
15
+ position: Point;
16
+ }
17
+ export interface WindowInfo extends Box {
18
+ key: WindowId;
19
+ }
20
+ export interface WindowsState {
21
+ focused: WindowId | null;
22
+ genWindows: {
23
+ [name: string]: WebampWindow;
24
+ };
25
+ browserWindowSize: {
26
+ height: number;
27
+ width: number;
28
+ };
29
+ positionsAreRelative: boolean;
30
+ windowOrder: WindowId[];
31
+ }
32
+ declare const windows: (state: WindowsState | undefined, action: Action) => WindowsState;
33
+ export declare function getSerializedState(state: WindowsState): WindowsSerializedStateV1;
34
+ export default windows;
@@ -0,0 +1,6 @@
1
+ export declare function pointPairs(arr: string[]): string[];
2
+ type RegionData = {
3
+ [section: string]: string[];
4
+ };
5
+ export default function regionParser(regionStr: string): RegionData;
6
+ export {};
@@ -0,0 +1,23 @@
1
+ import { WindowInfo } from "./types";
2
+ interface PositionDiff {
3
+ [key: string]: {
4
+ x: number;
5
+ y: number;
6
+ };
7
+ }
8
+ export interface SizeDiff {
9
+ [key: string]: {
10
+ width: number;
11
+ height: number;
12
+ };
13
+ }
14
+ export declare function getPositionDiff(graph: Graph, sizeDiff: SizeDiff): PositionDiff;
15
+ interface Edges {
16
+ below?: string;
17
+ right?: string;
18
+ }
19
+ export interface Graph {
20
+ [id: string]: Edges;
21
+ }
22
+ export declare function generateGraph(windows: WindowInfo[]): Graph;
23
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,184 @@
1
+ import { AppState, PlaylistTrack, WebampWindow, WindowId, LoadedURLTrack, PlaylistStyle, TransitionType, MediaStatus, TimeMode, SkinImages, Cursors, SkinRegion, GenLetterWidths, MilkdropMessage, DummyVizData } from "./types";
2
+ import * as fromTracks from "./reducers/tracks";
3
+ import * as fromWindows from "./reducers/windows";
4
+ import { SerializedStateV1 } from "./serializedStates/v1Types";
5
+ export declare const getSliders: (state: AppState) => Record<import("./types").Slider, number>;
6
+ export declare const getEqfData: import("reselect").OutputSelector<AppState, {
7
+ presets: {
8
+ [key: string]: string | number;
9
+ }[];
10
+ type: string;
11
+ }, (res: Record<import("./types").Slider, number>) => {
12
+ presets: {
13
+ [key: string]: string | number;
14
+ }[];
15
+ type: string;
16
+ }>;
17
+ export declare const getTracks: (state: AppState) => fromTracks.TracksState;
18
+ export declare const getTrackUrl: (state: AppState) => (id: number) => string | null;
19
+ export declare const getTrackOrder: (state: AppState) => number[];
20
+ export declare const getTrackCount: import("reselect").OutputSelector<AppState, number, (res: number[]) => number>;
21
+ export declare const getOrderedTracks: import("reselect").OutputSelector<AppState, number[], (res1: fromTracks.TracksState, res2: number[]) => number[]>;
22
+ export declare const getUserTracks: import("reselect").OutputSelector<AppState, {
23
+ url: string;
24
+ metaData: {
25
+ artist: string;
26
+ title: string;
27
+ album: string | undefined;
28
+ albumArtUrl: string;
29
+ };
30
+ }[], (res1: fromTracks.TracksState, res2: number[]) => {
31
+ url: string;
32
+ metaData: {
33
+ artist: string;
34
+ title: string;
35
+ album: string | undefined;
36
+ albumArtUrl: string;
37
+ };
38
+ }[]>;
39
+ export declare const getSelectedTrackIds: (state: AppState) => Set<number>;
40
+ export declare const getSelectedTrackObjects: import("reselect").OutputSelector<AppState, PlaylistTrack[], (res1: PlaylistTrack[], res2: Set<number>) => PlaylistTrack[]>;
41
+ export declare const getRunningTimeMessage: import("reselect").OutputSelector<AppState, string, (res1: number, res2: number) => string>;
42
+ export declare const getCurrentTrackIndex: (state: AppState) => number;
43
+ export declare const getCurrentTrackNumber: import("reselect").OutputSelector<AppState, number, (res: number) => number>;
44
+ export declare const getCurrentTrackId: (state: AppState) => number | null;
45
+ export declare const getRandomTrackId: (state: AppState) => number | null;
46
+ export declare const getNextTrackId: (state: AppState, n?: number) => number | null;
47
+ export declare const getGenWindows: (state: AppState) => {
48
+ [name: string]: fromWindows.WebampWindow;
49
+ };
50
+ export declare const getWindowOpen: import("reselect").OutputSelector<AppState, (windowId: WindowId) => boolean, (res: {
51
+ [name: string]: fromWindows.WebampWindow;
52
+ }) => (windowId: WindowId) => boolean>;
53
+ export declare const getWindowHidden: import("reselect").OutputSelector<AppState, (windowId: WindowId) => boolean, (res: boolean) => (windowId: WindowId) => boolean>;
54
+ export declare const getWindowShade: import("reselect").OutputSelector<AppState, (windowId: WindowId) => boolean | undefined, (res: {
55
+ [name: string]: fromWindows.WebampWindow;
56
+ }) => (windowId: WindowId) => boolean | undefined>;
57
+ export declare const getWindowSize: import("reselect").OutputSelector<AppState, (windowId: WindowId) => [number, number], (res: {
58
+ [name: string]: fromWindows.WebampWindow;
59
+ }) => (windowId: WindowId) => [number, number]>;
60
+ export declare const getWindowPositions: import("reselect").OutputSelector<AppState, fromWindows.WindowPositions, (res: {
61
+ [name: string]: fromWindows.WebampWindow;
62
+ }) => fromWindows.WindowPositions>;
63
+ export declare const getNumberOfVisibleTracks: import("reselect").OutputSelector<AppState, number, (res: (windowId: WindowId) => [number, number]) => number>;
64
+ export declare const getOverflowTrackCount: import("reselect").OutputSelector<AppState, number, (res1: number, res2: number) => number>;
65
+ export declare const getPlaylistScrollPosition: import("reselect").OutputSelector<AppState, number, (res1: number, res2: number) => number>;
66
+ export declare const getScrollOffset: import("reselect").OutputSelector<AppState, number, (res1: number, res2: number, res3: number) => number>;
67
+ export declare const getVisibleTrackIds: import("reselect").OutputSelector<AppState, number[], (res1: number, res2: number[], res3: number) => number[]>;
68
+ export declare function getAllTracksAreVisible(state: AppState): boolean;
69
+ export declare const getTrackIsVisibleFunction: import("reselect").OutputSelector<AppState, (id: number) => boolean, (res: number[]) => (id: number) => boolean>;
70
+ export declare const getVisibleTracks: import("reselect").OutputSelector<AppState, PlaylistTrack[], (res1: number[], res2: fromTracks.TracksState) => PlaylistTrack[]>;
71
+ export declare const getPlaylist: (state: AppState) => import("./reducers/playlist").PlaylistState;
72
+ export declare const getDuration: (state: AppState) => number | null;
73
+ export declare const getTrackDisplayName: import("reselect").OutputSelector<AppState, (trackId: number | null) => string | null, (res: fromTracks.TracksState) => (trackId: number | null) => string | null>;
74
+ export declare const getCurrentTrackDisplayName: import("reselect").OutputSelector<AppState, string | null, (res1: number | null, res2: (trackId: number | null) => string | null) => string | null>;
75
+ export declare const getMediaStatus: (state: AppState) => MediaStatus;
76
+ export declare const getMediaIsPlaying: (state: AppState) => boolean;
77
+ export declare const getCurrentTrack: import("reselect").OutputSelector<AppState, PlaylistTrack | null, (res1: number | null, res2: fromTracks.TracksState) => PlaylistTrack | null>;
78
+ export declare const getCurrentlyPlayingTrackIdIfLoaded: import("reselect").OutputSelector<AppState, number | null, (res1: boolean, res2: PlaylistTrack | null) => number | null>;
79
+ export declare const getCurrentTrackInfo: import("reselect").OutputSelector<AppState, LoadedURLTrack | null, (res: PlaylistTrack | null) => LoadedURLTrack | null>;
80
+ export declare const getMinimalMediaText: import("reselect").OutputSelector<AppState, string | null, (res1: number, res2: string | null) => string | null>;
81
+ export declare const getMediaText: import("reselect").OutputSelector<AppState, string | null, (res1: string | null, res2: number | null) => string | null>;
82
+ export declare const getNumberOfTracks: (state: AppState) => number;
83
+ export declare const getPlaylistURL: import("reselect").OutputSelector<AppState, string, (res1: number, res2: number, res3: number[], res4: fromTracks.TracksState, res5: (trackId: number | null) => string | null) => string>;
84
+ export declare function getFocusedWindow(state: AppState): WindowId | null;
85
+ export declare function getWindowPosition(state: AppState): (windowId: WindowId) => import("./types").Point;
86
+ export declare function getPositionsAreRelative(state: AppState): boolean;
87
+ export declare function getDoubled(state: AppState): boolean;
88
+ export declare function getLlamaMode(state: AppState): boolean;
89
+ export declare function getZIndex(state: AppState): number;
90
+ export declare const getWindowSizes: import("reselect").OutputSelector<AppState, {
91
+ [key: string]: {
92
+ height: number;
93
+ width: number;
94
+ };
95
+ }, (res1: {
96
+ [name: string]: fromWindows.WebampWindow;
97
+ }, res2: boolean) => {
98
+ [key: string]: {
99
+ height: number;
100
+ width: number;
101
+ };
102
+ }>;
103
+ export declare const getWindowPixelSize: import("reselect").OutputSelector<AppState, (windowId: WindowId) => {
104
+ height: number;
105
+ width: number;
106
+ }, (res: {
107
+ [key: string]: {
108
+ height: number;
109
+ width: number;
110
+ };
111
+ }) => (windowId: WindowId) => {
112
+ height: number;
113
+ width: number;
114
+ }>;
115
+ export declare const getNormalizedWindowOrder: import("reselect").OutputSelector<AppState, WindowId[], (res1: WindowId[], res2: {
116
+ [name: string]: fromWindows.WebampWindow;
117
+ }) => WindowId[]>;
118
+ export declare const getWindowsInfo: import("reselect").OutputSelector<AppState, fromWindows.WindowInfo[], (res1: {
119
+ [key: string]: {
120
+ height: number;
121
+ width: number;
122
+ };
123
+ }, res2: fromWindows.WindowPositions, res3: WindowId[]) => fromWindows.WindowInfo[]>;
124
+ export declare const getWindowGraph: import("reselect").OutputSelector<AppState, import("./resizeUtils").Graph, (res: fromWindows.WindowInfo[]) => import("./resizeUtils").Graph>;
125
+ export declare function getSkinColors(state: AppState): string[];
126
+ export declare const getSkinPlaylistStyle: (state: AppState) => PlaylistStyle;
127
+ export declare const getVisualizerStyle: (state: AppState) => string;
128
+ export declare const getVolume: (state: AppState) => number;
129
+ export declare const getBalance: (state: AppState) => number;
130
+ export declare const getShuffle: (state: AppState) => boolean;
131
+ export declare const getRepeat: (state: AppState) => boolean;
132
+ export declare const getChannels: import("reselect").OutputSelector<AppState, number | null, (res: PlaylistTrack | null) => number | null>;
133
+ export declare const getTimeElapsed: (state: AppState) => number;
134
+ export declare function getSerlializedState(state: AppState): SerializedStateV1;
135
+ export declare function getEqualizerEnabled(state: AppState): boolean;
136
+ export declare function getEqualizerAuto(state: AppState): boolean;
137
+ export declare function getBrowserWindowSize(state: AppState): {
138
+ height: number;
139
+ width: number;
140
+ };
141
+ export declare const getOpenWindows: import("reselect").OutputSelector<AppState, {
142
+ [key: string]: fromWindows.WebampWindow;
143
+ }, (res: {
144
+ [name: string]: fromWindows.WebampWindow;
145
+ }) => {
146
+ [key: string]: fromWindows.WebampWindow;
147
+ }>;
148
+ export declare const getStackedLayoutPositions: import("reselect").OutputSelector<AppState, fromWindows.WindowPositions, (res1: {
149
+ [key: string]: fromWindows.WebampWindow;
150
+ }, res2: boolean) => fromWindows.WindowPositions>;
151
+ export declare const getUserInputFocus: (state: AppState) => string | null;
152
+ export declare const getUserInputScrubPosition: (state: AppState) => number;
153
+ export declare const getMarqueeText: (state: AppState) => string;
154
+ export declare const getKbps: import("reselect").OutputSelector<AppState, string | null, (res: PlaylistTrack | null) => string | null>;
155
+ export declare const getKhz: import("reselect").OutputSelector<AppState, string | null, (res: PlaylistTrack | null) => string | null>;
156
+ export declare function getMilkdropMessage(state: AppState): MilkdropMessage | null;
157
+ export declare function getMilkdropWindowEnabled(state: AppState): boolean;
158
+ export declare function getMilkdropDesktopEnabled(state: AppState): boolean;
159
+ export declare function getMilkdropFullscreenEnabled(state: AppState): boolean;
160
+ export declare function getPresets(state: AppState): any;
161
+ export declare function getButterchurn(state: AppState): any;
162
+ export declare function getPresetTransitionType(state: AppState): TransitionType;
163
+ export declare function getCurrentPresetIndex(state: AppState): number | null;
164
+ export declare function getCurrentPreset(state: AppState): any | null;
165
+ export declare function getPresetNames(state: AppState): string[];
166
+ export declare function getPresetOverlayOpen(state: AppState): boolean;
167
+ export declare function getPresetsAreCycling(state: AppState): boolean;
168
+ export declare function getRandomizePresets(state: AppState): boolean;
169
+ export declare function getClosed(state: AppState): boolean;
170
+ export declare function getSkinImages(state: AppState): SkinImages;
171
+ export declare function getSkinCursors(state: AppState): Cursors | null;
172
+ export declare function getSkinRegion(state: AppState): SkinRegion;
173
+ export declare function getSkinLetterWidths(state: AppState): GenLetterWidths | null;
174
+ export declare function getPreampLineUrl(state: AppState): string | null;
175
+ export declare function getLineColorsUrl(state: AppState): string | null;
176
+ export declare const getPreampLineImage: import("reselect").OutputSelector<AppState, Promise<HTMLImageElement | null>, (res: string | null) => Promise<HTMLImageElement | null>>;
177
+ export declare const getLineColorsImage: import("reselect").OutputSelector<AppState, Promise<HTMLImageElement | null>, (res: string | null) => Promise<HTMLImageElement | null>>;
178
+ export declare function getDummyVizData(state: AppState): DummyVizData | null;
179
+ export declare function getMarqueeStep(state: AppState): number;
180
+ export declare function getNetworkConnected(state: AppState): boolean;
181
+ export declare function getTimeMode(state: AppState): TimeMode;
182
+ export declare function getLoading(state: AppState): boolean;
183
+ export declare function getWorking(state: AppState): boolean;
184
+ export declare function getAvaliableSkins(state: AppState): import("./types").Skin[];
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,64 @@
1
+ /**
2
+ * NOTE: This file must not import any other types
3
+ */
4
+ import { WindowId } from "../types";
5
+ export interface WindowsSerializedStateV1 {
6
+ positionsAreRelative: boolean;
7
+ genWindows: {
8
+ [windowId: string]: {
9
+ size: [number, number];
10
+ open: boolean;
11
+ hidden: boolean;
12
+ shade: boolean;
13
+ position: {
14
+ x: number;
15
+ y: number;
16
+ };
17
+ };
18
+ };
19
+ focused: WindowId | null;
20
+ }
21
+ export interface DisplaySerializedStateV1 {
22
+ visualizerStyle: number;
23
+ doubled: boolean;
24
+ llama: boolean;
25
+ marqueeStep: number;
26
+ skinImages: {
27
+ [sprite: string]: string;
28
+ };
29
+ skinCursors: {
30
+ [cursor: string]: string;
31
+ } | null;
32
+ skinRegion: {
33
+ [windowName: string]: string[];
34
+ };
35
+ skinGenLetterWidths: {
36
+ [letter: string]: number;
37
+ } | null;
38
+ skinColors: string[];
39
+ skinPlaylistStyle: {
40
+ normal: string;
41
+ current: string;
42
+ normalbg: string;
43
+ selectedbg: string;
44
+ font: string;
45
+ } | null;
46
+ }
47
+ export interface EqualizerSerializedStateV1 {
48
+ on: boolean;
49
+ auto: boolean;
50
+ sliders: Record<60 | 170 | 310 | 600 | 1000 | 3000 | 6000 | 12000 | 14000 | 16000 | "preamp", number>;
51
+ }
52
+ export interface MediaSerializedStateV1 {
53
+ volume: number;
54
+ balance: number;
55
+ shuffle: boolean;
56
+ repeat: boolean;
57
+ }
58
+ export interface SerializedStateV1 {
59
+ version: 1;
60
+ windows: WindowsSerializedStateV1;
61
+ media: MediaSerializedStateV1;
62
+ display: DisplaySerializedStateV1;
63
+ equalizer: EqualizerSerializedStateV1;
64
+ }
@@ -0,0 +1,12 @@
1
+ export default skinParser;
2
+ declare function skinParser(zipFileBuffer: any, JSZip: any): Promise<{
3
+ colors: string[];
4
+ playlistStyle: import("./types").PlaylistStyle;
5
+ images: any;
6
+ genLetterWidths: {} | null;
7
+ cursors: any;
8
+ region: {
9
+ [section: string]: string[];
10
+ };
11
+ genExColors: import("./types").SkinGenExColors | null;
12
+ }>;
@@ -0,0 +1,19 @@
1
+ import JSZip from "jszip";
2
+ import { PlaylistStyle, SkinGenExColors, CursorImage } from "./types";
3
+ import { Sprite } from "./skinSprites";
4
+ export declare const getFileExtension: (fileName: string) => string | null;
5
+ export declare function getFileFromZip(zip: JSZip, fileName: string, ext: string, mode: "blob" | "text" | "base64" | "uint8array"): Promise<{
6
+ contents: string | Uint8Array | Blob;
7
+ name: string;
8
+ } | null>;
9
+ export declare function getImgFromBlob(blob: Blob): Promise<ImageBitmap | HTMLImageElement | null>;
10
+ export declare function getSpriteUrisFromImg(img: HTMLImageElement | ImageBitmap, sprites: Sprite[]): {
11
+ [spriteName: string]: string;
12
+ };
13
+ export declare function getImgFromFilename(zip: JSZip, fileName: string): Promise<HTMLImageElement | ImageBitmap | null>;
14
+ export declare function getSpriteUrisFromFilename(zip: JSZip, fileName: string): Promise<{
15
+ [spriteName: string]: string;
16
+ }>;
17
+ export declare function getCursorFromFilename(zip: JSZip, fileName: string): Promise<CursorImage | null>;
18
+ export declare function getPlaylistStyle(zip: JSZip): Promise<PlaylistStyle>;
19
+ export declare function getGenExColors(zip: JSZip): Promise<null | SkinGenExColors>;
@@ -0,0 +1,6 @@
1
+ interface Selectors {
2
+ [name: string]: string[];
3
+ }
4
+ export declare const imageSelectors: Selectors;
5
+ export declare const cursorSelectors: Selectors;
6
+ export {};
@@ -0,0 +1,17 @@
1
+ export type SpriteName = string;
2
+ export interface Sprite {
3
+ name: SpriteName;
4
+ x: number;
5
+ y: number;
6
+ width: number;
7
+ height: number;
8
+ }
9
+ export declare const FONT_LOOKUP: {
10
+ [letter: string]: [number, number];
11
+ };
12
+ export declare const imageConstFromChar: (char: string) => string;
13
+ interface SpriteMap {
14
+ [sheet: string]: Sprite[];
15
+ }
16
+ declare const sprites: SpriteMap;
17
+ export default sprites;
@@ -0,0 +1,32 @@
1
+ import { Box, Point, Diff, BoundingBox } from "./types";
2
+ export declare const SNAP_DISTANCE = 15;
3
+ export declare const top: (box: Box) => number;
4
+ export declare const bottom: (box: Box) => number;
5
+ export declare const left: (box: Box) => number;
6
+ export declare const right: (box: Box) => number;
7
+ export declare const near: (a: number, b: number) => boolean;
8
+ export declare const overlapX: (a: Box, b: Box) => boolean;
9
+ export declare const overlapY: (a: Box, b: Box) => boolean;
10
+ export declare const snap: (boxA: Box, boxB: Box) => {
11
+ x: number | undefined;
12
+ y: number | undefined;
13
+ };
14
+ export declare const snapDiff: (a: Box, b: Box) => Point;
15
+ export declare const snapDiffManyToMany: (as: Box[], bs: Box[]) => Point;
16
+ export declare const snapToMany: (boxA: Box, otherBoxes: Box[]) => Diff;
17
+ export declare const snapWithin: (boxA: Box, boundingBox: BoundingBox) => Diff;
18
+ export declare const snapWithinDiff: (a: Box, b: BoundingBox) => {
19
+ x: number;
20
+ y: number;
21
+ };
22
+ export declare const applySnap: (original: Point, ...snaps: Diff[]) => Diff;
23
+ export declare const boundingBox: (nodes: Box[]) => Box;
24
+ export declare function traceConnection<B extends Box>(areConnected: (candidate: Box, n: Box) => boolean): (candidates: B[], node: B) => Set<B>;
25
+ export declare const applyDiff: (a: Point, b: Point) => {
26
+ x: number;
27
+ y: number;
28
+ };
29
+ export declare const applyMultipleDiffs: (initial: Point, ...diffs: Point[]) => {
30
+ x: number;
31
+ y: number;
32
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import Media from "./media";
2
+ import Emitter from "./emitter";
3
+ import { Extras, PartialState, Middleware, Store } from "./types";
4
+ export default function createWebampStore(media: Media, actionEmitter: Emitter, customMiddlewares: Middleware[] | undefined, stateOverrides: PartialState | undefined, extras: Extras): Store;
@@ -0,0 +1,3 @@
1
+ import { PlaylistTrack } from "./types";
2
+ export declare const trackName: (value: PlaylistTrack) => string;
3
+ export declare const trackFilename: (value: PlaylistTrack) => string;