@deskthing/cli
Version:
An emulator for the DeskThing Server
117 lines (111 loc) • 2.81 kB
text/typescript
import {
App,
ClientConnectionMethod,
ClientManifest,
ClientPlatformIDs,
PlatformTypes,
SongData,
TagTypes,
} from "@deskthing/types";
import { useClientStore } from "../stores/clientStore"
export const sampleSongs: SongData = {
album: "Random Access Memories",
artist: "Daft Punk",
playlist: "Electronic Essentials",
playlist_id: "playlist_001",
track_name: "Get Lucky",
shuffle_state: false,
repeat_state: "off",
is_playing: true,
can_fast_forward: true,
can_skip: true,
can_like: true,
can_change_volume: true,
can_set_output: true,
track_duration: 369000,
track_progress: 145000,
volume: 75,
thumbnail: "https://i.scdn.co/image/ab67616d0000b273e787cffec20aa2a396a61647",
device: "Desktop Speaker",
id: "track_001",
device_id: "device_001",
liked: true,
color: {
value: [41, 128, 185],
rgb: "rgb(41, 128, 185)",
rgba: "rgba(41, 128, 185, 1)",
hex: "#2980b9",
hexa: "#2980b9ff",
isDark: true,
isLight: false,
},
version: 1
};
export const sampleApps: App[] = [
{
name: "sample-app-1",
manifest: {
id: "sample-app-1",
requires: [],
version: "1.0.0",
description: "Sample App 1",
author: "Sample Author",
platforms: [PlatformTypes.WINDOWS, PlatformTypes.ANDROID],
tags: [TagTypes.UTILITY_ONLY],
requiredVersions: {
server: "1.0.0",
client: "1.0.0",
},
},
enabled: false,
running: false,
timeStarted: 0,
prefIndex: 0,
},
{
name: "sample-app-2",
manifest: {
id: "sample-app-2",
requires: [],
version: "1.0.0",
description: "Sample App 2",
author: "Sample Author",
platforms: [PlatformTypes.WINDOWS, PlatformTypes.ANDROID],
tags: [TagTypes.AUDIO_SOURCE],
requiredVersions: {
server: "1.0.0",
client: "1.0.0",
},
},
enabled: false,
running: false,
timeStarted: 0,
prefIndex: 0,
},
];
// Dynamic client manifest that uses store config
export const getSampleClientManifest = (): ClientManifest => {
return {
id: "sample-client",
name: "Sample Client",
short_name: "SampleClient",
description: "A sample client manifest",
reactive: true,
repository: "https://github.com/sample/client",
author: "Sample Author",
version: "1.0.0",
compatibility: {
server: "1.0.0",
app: "1.0.0",
},
context: {
ip: "127.0.0.1",
port: 3000,
method: ClientConnectionMethod.LAN,
id: ClientPlatformIDs.Desktop,
name: "Desktop",
},
}
}
// For backward compatibility
export const sampleClientManifest = getSampleClientManifest()