@soundretouch/api 1.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.
- package/LICENSE +21 -0
- package/README.md +107 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/src/client/errors.d.ts +35 -0
- package/dist/src/client/errors.d.ts.map +1 -0
- package/dist/src/client/errors.js +44 -0
- package/dist/src/client/errors.js.map +1 -0
- package/dist/src/client/http.d.ts +40 -0
- package/dist/src/client/http.d.ts.map +1 -0
- package/dist/src/client/http.js +88 -0
- package/dist/src/client/http.js.map +1 -0
- package/dist/src/client/ws.d.ts +82 -0
- package/dist/src/client/ws.d.ts.map +1 -0
- package/dist/src/client/ws.js +153 -0
- package/dist/src/client/ws.js.map +1 -0
- package/dist/src/client/xml.d.ts +8 -0
- package/dist/src/client/xml.d.ts.map +1 -0
- package/dist/src/client/xml.js +18 -0
- package/dist/src/client/xml.js.map +1 -0
- package/dist/src/device/SoundTouchDevice.d.ts +457 -0
- package/dist/src/device/SoundTouchDevice.d.ts.map +1 -0
- package/dist/src/device/SoundTouchDevice.js +623 -0
- package/dist/src/device/SoundTouchDevice.js.map +1 -0
- package/dist/src/discovery/SoundTouchDiscovery.d.ts +18 -0
- package/dist/src/discovery/SoundTouchDiscovery.d.ts.map +1 -0
- package/dist/src/discovery/SoundTouchDiscovery.js +42 -0
- package/dist/src/discovery/SoundTouchDiscovery.js.map +1 -0
- package/dist/src/endpoints/audioProductLevelControls.d.ts +24 -0
- package/dist/src/endpoints/audioProductLevelControls.d.ts.map +1 -0
- package/dist/src/endpoints/audioProductLevelControls.js +44 -0
- package/dist/src/endpoints/audioProductLevelControls.js.map +1 -0
- package/dist/src/endpoints/audioProductToneControls.d.ts +24 -0
- package/dist/src/endpoints/audioProductToneControls.d.ts.map +1 -0
- package/dist/src/endpoints/audioProductToneControls.js +44 -0
- package/dist/src/endpoints/audioProductToneControls.js.map +1 -0
- package/dist/src/endpoints/audiodspcontrols.d.ts +24 -0
- package/dist/src/endpoints/audiodspcontrols.d.ts.map +1 -0
- package/dist/src/endpoints/audiodspcontrols.js +44 -0
- package/dist/src/endpoints/audiodspcontrols.js.map +1 -0
- package/dist/src/endpoints/bass.d.ts +23 -0
- package/dist/src/endpoints/bass.d.ts.map +1 -0
- package/dist/src/endpoints/bass.js +33 -0
- package/dist/src/endpoints/bass.js.map +1 -0
- package/dist/src/endpoints/bassCapabilities.d.ts +11 -0
- package/dist/src/endpoints/bassCapabilities.d.ts.map +1 -0
- package/dist/src/endpoints/bassCapabilities.js +16 -0
- package/dist/src/endpoints/bassCapabilities.js.map +1 -0
- package/dist/src/endpoints/capabilities.d.ts +11 -0
- package/dist/src/endpoints/capabilities.d.ts.map +1 -0
- package/dist/src/endpoints/capabilities.js +16 -0
- package/dist/src/endpoints/capabilities.js.map +1 -0
- package/dist/src/endpoints/info.d.ts +11 -0
- package/dist/src/endpoints/info.d.ts.map +1 -0
- package/dist/src/endpoints/info.js +16 -0
- package/dist/src/endpoints/info.js.map +1 -0
- package/dist/src/endpoints/key.d.ts +37 -0
- package/dist/src/endpoints/key.d.ts.map +1 -0
- package/dist/src/endpoints/key.js +45 -0
- package/dist/src/endpoints/key.js.map +1 -0
- package/dist/src/endpoints/name.d.ts +14 -0
- package/dist/src/endpoints/name.d.ts.map +1 -0
- package/dist/src/endpoints/name.js +23 -0
- package/dist/src/endpoints/name.js.map +1 -0
- package/dist/src/endpoints/nowPlaying.d.ts +11 -0
- package/dist/src/endpoints/nowPlaying.d.ts.map +1 -0
- package/dist/src/endpoints/nowPlaying.js +16 -0
- package/dist/src/endpoints/nowPlaying.js.map +1 -0
- package/dist/src/endpoints/presets.d.ts +11 -0
- package/dist/src/endpoints/presets.d.ts.map +1 -0
- package/dist/src/endpoints/presets.js +20 -0
- package/dist/src/endpoints/presets.js.map +1 -0
- package/dist/src/endpoints/select.d.ts +20 -0
- package/dist/src/endpoints/select.d.ts.map +1 -0
- package/dist/src/endpoints/select.js +33 -0
- package/dist/src/endpoints/select.js.map +1 -0
- package/dist/src/endpoints/sources.d.ts +11 -0
- package/dist/src/endpoints/sources.d.ts.map +1 -0
- package/dist/src/endpoints/sources.js +16 -0
- package/dist/src/endpoints/sources.js.map +1 -0
- package/dist/src/endpoints/trackInfo.d.ts +11 -0
- package/dist/src/endpoints/trackInfo.d.ts.map +1 -0
- package/dist/src/endpoints/trackInfo.js +16 -0
- package/dist/src/endpoints/trackInfo.js.map +1 -0
- package/dist/src/endpoints/volume.d.ts +21 -0
- package/dist/src/endpoints/volume.d.ts.map +1 -0
- package/dist/src/endpoints/volume.js +33 -0
- package/dist/src/endpoints/volume.js.map +1 -0
- package/dist/src/endpoints/zone.d.ts +57 -0
- package/dist/src/endpoints/zone.d.ts.map +1 -0
- package/dist/src/endpoints/zone.js +83 -0
- package/dist/src/endpoints/zone.js.map +1 -0
- package/dist/src/types/AudioDspControls.d.ts +7 -0
- package/dist/src/types/AudioDspControls.d.ts.map +1 -0
- package/dist/src/types/AudioDspControls.js +2 -0
- package/dist/src/types/AudioDspControls.js.map +1 -0
- package/dist/src/types/AudioProductLevelControls.d.ts +15 -0
- package/dist/src/types/AudioProductLevelControls.d.ts.map +1 -0
- package/dist/src/types/AudioProductLevelControls.js +2 -0
- package/dist/src/types/AudioProductLevelControls.js.map +1 -0
- package/dist/src/types/AudioProductToneControls.d.ts +15 -0
- package/dist/src/types/AudioProductToneControls.d.ts.map +1 -0
- package/dist/src/types/AudioProductToneControls.js +2 -0
- package/dist/src/types/AudioProductToneControls.js.map +1 -0
- package/dist/src/types/Bass.d.ts +6 -0
- package/dist/src/types/Bass.d.ts.map +1 -0
- package/dist/src/types/Bass.js +2 -0
- package/dist/src/types/Bass.js.map +1 -0
- package/dist/src/types/BassCapabilities.d.ts +8 -0
- package/dist/src/types/BassCapabilities.d.ts.map +1 -0
- package/dist/src/types/BassCapabilities.js +2 -0
- package/dist/src/types/BassCapabilities.js.map +1 -0
- package/dist/src/types/Capabilities.d.ts +10 -0
- package/dist/src/types/Capabilities.d.ts.map +1 -0
- package/dist/src/types/Capabilities.js +2 -0
- package/dist/src/types/Capabilities.js.map +1 -0
- package/dist/src/types/ContentItem.d.ts +5 -0
- package/dist/src/types/ContentItem.d.ts.map +1 -0
- package/dist/src/types/ContentItem.js +2 -0
- package/dist/src/types/ContentItem.js.map +1 -0
- package/dist/src/types/DeviceInfo.d.ts +22 -0
- package/dist/src/types/DeviceInfo.d.ts.map +1 -0
- package/dist/src/types/DeviceInfo.js +2 -0
- package/dist/src/types/DeviceInfo.js.map +1 -0
- package/dist/src/types/Enums.d.ts +8 -0
- package/dist/src/types/Enums.d.ts.map +1 -0
- package/dist/src/types/Enums.js +2 -0
- package/dist/src/types/Enums.js.map +1 -0
- package/dist/src/types/NowPlaying.d.ts +25 -0
- package/dist/src/types/NowPlaying.d.ts.map +1 -0
- package/dist/src/types/NowPlaying.js +2 -0
- package/dist/src/types/NowPlaying.js.map +1 -0
- package/dist/src/types/Presets.d.ts +15 -0
- package/dist/src/types/Presets.d.ts.map +1 -0
- package/dist/src/types/Presets.js +2 -0
- package/dist/src/types/Presets.js.map +1 -0
- package/dist/src/types/Recents.d.ts +14 -0
- package/dist/src/types/Recents.d.ts.map +1 -0
- package/dist/src/types/Recents.js +2 -0
- package/dist/src/types/Recents.js.map +1 -0
- package/dist/src/types/Sources.d.ts +12 -0
- package/dist/src/types/Sources.d.ts.map +1 -0
- package/dist/src/types/Sources.js +2 -0
- package/dist/src/types/Sources.js.map +1 -0
- package/dist/src/types/Updates.d.ts +37 -0
- package/dist/src/types/Updates.d.ts.map +1 -0
- package/dist/src/types/Updates.js +2 -0
- package/dist/src/types/Updates.js.map +1 -0
- package/dist/src/types/Volume.d.ts +6 -0
- package/dist/src/types/Volume.d.ts.map +1 -0
- package/dist/src/types/Volume.js +2 -0
- package/dist/src/types/Volume.js.map +1 -0
- package/dist/src/types/Zone.d.ts +22 -0
- package/dist/src/types/Zone.d.ts.map +1 -0
- package/dist/src/types/Zone.js +2 -0
- package/dist/src/types/Zone.js.map +1 -0
- package/docs/SoundTouch-Web-API.pdf +0 -0
- package/package.json +86 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import createDebug from 'debug';
|
|
2
|
+
const log = createDebug('soundretouch:endpoints:nowplaying');
|
|
3
|
+
/**
|
|
4
|
+
* Gets info about the currently playing media.
|
|
5
|
+
*
|
|
6
|
+
* GET /now_playing
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<NowPlaying> A promise that resolves to the now playing payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export async function fetchNowPlaying(client) {
|
|
11
|
+
log('GET /now_playing');
|
|
12
|
+
const data = await client.getXml('/now_playing');
|
|
13
|
+
log('response %O', data.nowPlaying ?? {});
|
|
14
|
+
return data.nowPlaying ?? {};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=nowPlaying.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nowPlaying.js","sourceRoot":"","sources":["../../../src/endpoints/nowPlaying.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAK/B,MAAM,GAAG,GAAG,WAAW,CAAC,mCAAmC,CAAC,CAAA;AAM5D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAkB;IACpD,GAAG,CAAC,kBAAkB,CAAC,CAAA;IAEvB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAqB,cAAc,CAAC,CAAA;IACpE,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;IAEzC,OAAO,IAAI,CAAC,UAAU,IAAI,EAAE,CAAA;AAChC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { HttpClient } from '../client/http';
|
|
2
|
+
import { Presets } from '../types/Presets';
|
|
3
|
+
/**
|
|
4
|
+
* Gets the list of current presets from the device.
|
|
5
|
+
*
|
|
6
|
+
* GET /presets
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<Presets> A promise that resolves to the presets payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export declare function fetchPresets(client: HttpClient): Promise<Presets>;
|
|
11
|
+
//# sourceMappingURL=presets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/endpoints/presets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAU,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAUlD;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAYvE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import createDebug from 'debug';
|
|
2
|
+
const log = createDebug('soundretouch:endpoints:presets');
|
|
3
|
+
/**
|
|
4
|
+
* Gets the list of current presets from the device.
|
|
5
|
+
*
|
|
6
|
+
* GET /presets
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<Presets> A promise that resolves to the presets payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export async function fetchPresets(client) {
|
|
11
|
+
log('GET /presets');
|
|
12
|
+
const data = await client.getXml('/presets');
|
|
13
|
+
log('response %O', data.presets ?? {});
|
|
14
|
+
const preset = data.presets?.preset;
|
|
15
|
+
if (Array.isArray(preset)) {
|
|
16
|
+
return preset;
|
|
17
|
+
}
|
|
18
|
+
return preset ? [preset] : [];
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=presets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/endpoints/presets.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAK/B,MAAM,GAAG,GAAG,WAAW,CAAC,gCAAgC,CAAC,CAAA;AAQzD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAkB;IACjD,GAAG,CAAC,cAAc,CAAC,CAAA;IAEnB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAkB,UAAU,CAAC,CAAA;IAC7D,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;IAEtC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAA;IACnC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,MAAM,CAAA;IACjB,CAAC;IAED,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AACjC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { HttpClient } from '../client/http';
|
|
2
|
+
import { ContentItem } from '../types/ContentItem';
|
|
3
|
+
/**
|
|
4
|
+
* Selects a content source on the device using the /select endpoint.
|
|
5
|
+
*
|
|
6
|
+
* Use the /sources endpoint to discover which sources are available for a device.
|
|
7
|
+
* The available sources vary by product and SoundTouch account.
|
|
8
|
+
*
|
|
9
|
+
* POST /select
|
|
10
|
+
*
|
|
11
|
+
* @param item ContentItem describing the source and optional source account.
|
|
12
|
+
* @returns A promise that resolves when the device accepts the selection.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* await device.select({ source: 'AUX', sourceAccount: 'AUX' })
|
|
16
|
+
* await device.select({ source: 'BLUETOOTH' })
|
|
17
|
+
* await device.select({ source: 'PRODUCT', sourceAccount: 'TV' })
|
|
18
|
+
*/
|
|
19
|
+
export declare function selectSource(client: HttpClient, item: ContentItem): Promise<void>;
|
|
20
|
+
//# sourceMappingURL=select.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/endpoints/select.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAclD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAMvF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import createDebug from 'debug';
|
|
2
|
+
const log = createDebug('soundretouch:endpoints:select');
|
|
3
|
+
function escapeXml(value) {
|
|
4
|
+
return value.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''');
|
|
5
|
+
}
|
|
6
|
+
function buildContentItemXml(item) {
|
|
7
|
+
const source = `source="${escapeXml(item.source)}"`;
|
|
8
|
+
const account = item.sourceAccount ? ` sourceAccount="${escapeXml(item.sourceAccount)}"` : '';
|
|
9
|
+
return `<ContentItem ${source}${account}></ContentItem>`;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Selects a content source on the device using the /select endpoint.
|
|
13
|
+
*
|
|
14
|
+
* Use the /sources endpoint to discover which sources are available for a device.
|
|
15
|
+
* The available sources vary by product and SoundTouch account.
|
|
16
|
+
*
|
|
17
|
+
* POST /select
|
|
18
|
+
*
|
|
19
|
+
* @param item ContentItem describing the source and optional source account.
|
|
20
|
+
* @returns A promise that resolves when the device accepts the selection.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* await device.select({ source: 'AUX', sourceAccount: 'AUX' })
|
|
24
|
+
* await device.select({ source: 'BLUETOOTH' })
|
|
25
|
+
* await device.select({ source: 'PRODUCT', sourceAccount: 'TV' })
|
|
26
|
+
*/
|
|
27
|
+
export async function selectSource(client, item) {
|
|
28
|
+
const body = buildContentItemXml(item);
|
|
29
|
+
log('POST /select');
|
|
30
|
+
log('payload %s', body);
|
|
31
|
+
await client.post('/select', body);
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/endpoints/select.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAK/B,MAAM,GAAG,GAAG,WAAW,CAAC,+BAA+B,CAAC,CAAA;AAExD,SAAS,SAAS,CAAC,KAAa;IAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;AACnI,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB;IAC1C,MAAM,MAAM,GAAG,WAAW,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAA;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IAC7F,OAAO,gBAAgB,MAAM,GAAG,OAAO,iBAAiB,CAAA;AAC5D,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAkB,EAAE,IAAiB;IACpE,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;IACtC,GAAG,CAAC,cAAc,CAAC,CAAA;IACnB,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAEvB,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AACtC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { HttpClient } from '../client/http';
|
|
2
|
+
import { Sources } from '../types/Sources';
|
|
3
|
+
/**
|
|
4
|
+
* Fetches the list of available content sources from the device.
|
|
5
|
+
*
|
|
6
|
+
* GET /sources
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<Sources> A promise that resolves to the sources payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export declare function fetchSources(client: HttpClient): Promise<Sources>;
|
|
11
|
+
//# sourceMappingURL=sources.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sources.d.ts","sourceRoot":"","sources":["../../../src/endpoints/sources.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAQ1C;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAOvE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import createDebug from 'debug';
|
|
2
|
+
const log = createDebug('soundretouch:endpoints:sources');
|
|
3
|
+
/**
|
|
4
|
+
* Fetches the list of available content sources from the device.
|
|
5
|
+
*
|
|
6
|
+
* GET /sources
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<Sources> A promise that resolves to the sources payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export async function fetchSources(client) {
|
|
11
|
+
log('GET /sources');
|
|
12
|
+
const data = await client.getXml('/sources');
|
|
13
|
+
log('response %O', data.sources ?? {});
|
|
14
|
+
return data.sources ?? {};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=sources.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../src/endpoints/sources.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAK/B,MAAM,GAAG,GAAG,WAAW,CAAC,gCAAgC,CAAC,CAAA;AAMzD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAkB;IACjD,GAAG,CAAC,cAAc,CAAC,CAAA;IAEnB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAkB,UAAU,CAAC,CAAA;IAC7D,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;IAEtC,OAAO,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;AAC7B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { HttpClient } from '../client/http';
|
|
2
|
+
import { NowPlaying } from '../types/NowPlaying';
|
|
3
|
+
/**
|
|
4
|
+
* Gets track information for the currently playing media.
|
|
5
|
+
*
|
|
6
|
+
* GET /trackInfo
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<NowPlaying> A promise that resolves to the now playing payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export declare function fetchTrackInfo(client: HttpClient): Promise<NowPlaying>;
|
|
11
|
+
//# sourceMappingURL=trackInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trackInfo.d.ts","sourceRoot":"","sources":["../../../src/endpoints/trackInfo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAQhD;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAM5E"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import createDebug from 'debug';
|
|
2
|
+
const log = createDebug('soundretouch:endpoints:trackinfo');
|
|
3
|
+
/**
|
|
4
|
+
* Gets track information for the currently playing media.
|
|
5
|
+
*
|
|
6
|
+
* GET /trackInfo
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<NowPlaying> A promise that resolves to the now playing payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export async function fetchTrackInfo(client) {
|
|
11
|
+
log('GET /trackInfo');
|
|
12
|
+
const data = await client.getXml('/trackInfo');
|
|
13
|
+
log('response %O', data.nowPlaying ?? {});
|
|
14
|
+
return data.nowPlaying ?? {};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=trackInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trackInfo.js","sourceRoot":"","sources":["../../../src/endpoints/trackInfo.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAK/B,MAAM,GAAG,GAAG,WAAW,CAAC,kCAAkC,CAAC,CAAA;AAM3D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAkB;IACnD,GAAG,CAAC,gBAAgB,CAAC,CAAA;IAErB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAoB,YAAY,CAAC,CAAA;IACjE,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;IACzC,OAAO,IAAI,CAAC,UAAU,IAAI,EAAE,CAAA;AAChC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { HttpClient } from '../client/http';
|
|
2
|
+
import { Volume } from '../types/Volume';
|
|
3
|
+
export declare function fetchVolume(client: HttpClient): Promise<Volume>;
|
|
4
|
+
/**
|
|
5
|
+
* Sets the volume level and mute state for the device. Volume ranges between 0 and 100 inclusive.
|
|
6
|
+
*
|
|
7
|
+
* POST /volume
|
|
8
|
+
*
|
|
9
|
+
* The muteenabled setting is applied first, if present. The system will be unmuted if the
|
|
10
|
+
* volume value is larger than the current volume setting.
|
|
11
|
+
*
|
|
12
|
+
* @param value Volume value to set.
|
|
13
|
+
* @param muteenabled Optional mute state to set before applying the volume value.
|
|
14
|
+
* @returns A promise that resolves when the device accepts the volume value.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* await device.setVolume(25)
|
|
18
|
+
* await device.setVolume(10, true)
|
|
19
|
+
*/
|
|
20
|
+
export declare function setVolume(client: HttpClient, value: number, muteenabled?: boolean): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=volume.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"volume.d.ts","sourceRoot":"","sources":["../../../src/endpoints/volume.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAQxC,wBAAsB,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAOrE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CASvG"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import createDebug from 'debug';
|
|
2
|
+
const log = createDebug('soundretouch:endpoints:volume');
|
|
3
|
+
export async function fetchVolume(client) {
|
|
4
|
+
log('GET /volume');
|
|
5
|
+
const data = await client.getXml('/volume');
|
|
6
|
+
log('response %O', data.volume ?? {});
|
|
7
|
+
return data.volume ?? {};
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Sets the volume level and mute state for the device. Volume ranges between 0 and 100 inclusive.
|
|
11
|
+
*
|
|
12
|
+
* POST /volume
|
|
13
|
+
*
|
|
14
|
+
* The muteenabled setting is applied first, if present. The system will be unmuted if the
|
|
15
|
+
* volume value is larger than the current volume setting.
|
|
16
|
+
*
|
|
17
|
+
* @param value Volume value to set.
|
|
18
|
+
* @param muteenabled Optional mute state to set before applying the volume value.
|
|
19
|
+
* @returns A promise that resolves when the device accepts the volume value.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* await device.setVolume(25)
|
|
23
|
+
* await device.setVolume(10, true)
|
|
24
|
+
*/
|
|
25
|
+
export async function setVolume(client, value, muteenabled) {
|
|
26
|
+
const normalized = Math.max(0, Math.min(100, Math.round(value)));
|
|
27
|
+
const muteXml = typeof muteenabled === 'boolean' ? `<muteenabled>${muteenabled}</muteenabled>` : '';
|
|
28
|
+
const body = `<volume>${normalized}${muteXml}</volume>`;
|
|
29
|
+
log('POST /volume');
|
|
30
|
+
log('payload %s', body);
|
|
31
|
+
await client.post('/volume', body);
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=volume.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"volume.js","sourceRoot":"","sources":["../../../src/endpoints/volume.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAK/B,MAAM,GAAG,GAAG,WAAW,CAAC,+BAA+B,CAAC,CAAA;AAMxD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAkB;IAChD,GAAG,CAAC,aAAa,CAAC,CAAA;IAElB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAiB,SAAS,CAAC,CAAA;IAC3D,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IAErC,OAAO,IAAI,CAAC,MAAM,IAAI,EAAE,CAAA;AAC5B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAkB,EAAE,KAAa,EAAE,WAAqB;IACpF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChE,MAAM,OAAO,GAAG,OAAO,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,WAAW,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAA;IACnG,MAAM,IAAI,GAAG,WAAW,UAAU,GAAG,OAAO,WAAW,CAAA;IAEvD,GAAG,CAAC,cAAc,CAAC,CAAA;IACnB,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAEvB,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AACtC,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { HttpClient } from '../client/http';
|
|
2
|
+
import { Zone, ZoneConfig, ZoneSlaveConfig } from '../types/Zone';
|
|
3
|
+
/**
|
|
4
|
+
* Gets the current multi-room zone state from the device.
|
|
5
|
+
*
|
|
6
|
+
* GET /getZone
|
|
7
|
+
*
|
|
8
|
+
* @returns Promise<Zone> A promise that resolves to the zone payload as returned by the device.
|
|
9
|
+
*/
|
|
10
|
+
export declare function fetchZone(client: HttpClient): Promise<Zone>;
|
|
11
|
+
/**
|
|
12
|
+
* Creates or updates a multi-room zone.
|
|
13
|
+
*
|
|
14
|
+
* POST /setZone
|
|
15
|
+
*
|
|
16
|
+
* @param config Zone configuration including master, sender IP, and member list.
|
|
17
|
+
* @returns A promise that resolves when the device accepts the zone configuration.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* await device.setZone({
|
|
21
|
+
* master: '00A040123456',
|
|
22
|
+
* senderIPAddress: '192.168.1.10',
|
|
23
|
+
* members: [{ ipaddress: '192.168.1.10', macAddress: '00A040123456' }],
|
|
24
|
+
* })
|
|
25
|
+
*/
|
|
26
|
+
export declare function setZone(client: HttpClient, config: ZoneConfig): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Adds one or more slaves to a "play everywhere" zone.
|
|
29
|
+
*
|
|
30
|
+
* POST /addZoneSlave
|
|
31
|
+
*
|
|
32
|
+
* @param config Zone slave configuration including master and member list.
|
|
33
|
+
* @returns A promise that resolves when the device accepts the zone update.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* await device.addZoneSlave({
|
|
37
|
+
* master: '00A040123456',
|
|
38
|
+
* members: [{ ipaddress: '192.168.1.11', macAddress: '00A040654321' }],
|
|
39
|
+
* })
|
|
40
|
+
*/
|
|
41
|
+
export declare function addZoneSlave(client: HttpClient, config: ZoneSlaveConfig): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Removes one or more slaves from a "play everywhere" zone.
|
|
44
|
+
*
|
|
45
|
+
* POST /removeZoneSlave
|
|
46
|
+
*
|
|
47
|
+
* @param config Zone slave configuration including master and member list.
|
|
48
|
+
* @returns A promise that resolves when the device accepts the zone update.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* await device.removeZoneSlave({
|
|
52
|
+
* master: '00A040123456',
|
|
53
|
+
* members: [{ ipaddress: '192.168.1.11', macAddress: '00A040654321' }],
|
|
54
|
+
* })
|
|
55
|
+
*/
|
|
56
|
+
export declare function removeZoneSlave(client: HttpClient, config: ZoneSlaveConfig): Promise<void>;
|
|
57
|
+
//# sourceMappingURL=zone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zone.d.ts","sourceRoot":"","sources":["../../../src/endpoints/zone.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAoB,eAAe,EAAE,MAAM,eAAe,CAAA;AAYnF;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAOjE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAQnF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ7F;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhG"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import createDebug from 'debug';
|
|
2
|
+
const log = createDebug('soundretouch:endpoints:zone');
|
|
3
|
+
function buildZoneMembersXml(members) {
|
|
4
|
+
return members.map((member) => `<member ipaddress="${member.ipaddress}">${member.macAddress}</member>`).join('');
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Gets the current multi-room zone state from the device.
|
|
8
|
+
*
|
|
9
|
+
* GET /getZone
|
|
10
|
+
*
|
|
11
|
+
* @returns Promise<Zone> A promise that resolves to the zone payload as returned by the device.
|
|
12
|
+
*/
|
|
13
|
+
export async function fetchZone(client) {
|
|
14
|
+
log('GET /getZone');
|
|
15
|
+
const data = await client.getXml('/getZone');
|
|
16
|
+
log('response %O', data.zone ?? {});
|
|
17
|
+
return data.zone ?? {};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Creates or updates a multi-room zone.
|
|
21
|
+
*
|
|
22
|
+
* POST /setZone
|
|
23
|
+
*
|
|
24
|
+
* @param config Zone configuration including master, sender IP, and member list.
|
|
25
|
+
* @returns A promise that resolves when the device accepts the zone configuration.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* await device.setZone({
|
|
29
|
+
* master: '00A040123456',
|
|
30
|
+
* senderIPAddress: '192.168.1.10',
|
|
31
|
+
* members: [{ ipaddress: '192.168.1.10', macAddress: '00A040123456' }],
|
|
32
|
+
* })
|
|
33
|
+
*/
|
|
34
|
+
export async function setZone(client, config) {
|
|
35
|
+
const membersXml = buildZoneMembersXml(config.members);
|
|
36
|
+
const body = `<zone master="${config.master}" senderIPAddress="${config.senderIPAddress}">${membersXml}</zone>`;
|
|
37
|
+
log('POST /setZone');
|
|
38
|
+
log('payload %s', body);
|
|
39
|
+
await client.post('/setZone', body);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Adds one or more slaves to a "play everywhere" zone.
|
|
43
|
+
*
|
|
44
|
+
* POST /addZoneSlave
|
|
45
|
+
*
|
|
46
|
+
* @param config Zone slave configuration including master and member list.
|
|
47
|
+
* @returns A promise that resolves when the device accepts the zone update.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* await device.addZoneSlave({
|
|
51
|
+
* master: '00A040123456',
|
|
52
|
+
* members: [{ ipaddress: '192.168.1.11', macAddress: '00A040654321' }],
|
|
53
|
+
* })
|
|
54
|
+
*/
|
|
55
|
+
export async function addZoneSlave(client, config) {
|
|
56
|
+
const membersXml = buildZoneMembersXml(config.members);
|
|
57
|
+
const body = `<zone master="${config.master}">${membersXml}</zone>`;
|
|
58
|
+
log('POST /addZoneSlave');
|
|
59
|
+
log('payload %s', body);
|
|
60
|
+
await client.post('/addZoneSlave', body);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Removes one or more slaves from a "play everywhere" zone.
|
|
64
|
+
*
|
|
65
|
+
* POST /removeZoneSlave
|
|
66
|
+
*
|
|
67
|
+
* @param config Zone slave configuration including master and member list.
|
|
68
|
+
* @returns A promise that resolves when the device accepts the zone update.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* await device.removeZoneSlave({
|
|
72
|
+
* master: '00A040123456',
|
|
73
|
+
* members: [{ ipaddress: '192.168.1.11', macAddress: '00A040654321' }],
|
|
74
|
+
* })
|
|
75
|
+
*/
|
|
76
|
+
export async function removeZoneSlave(client, config) {
|
|
77
|
+
const membersXml = buildZoneMembersXml(config.members);
|
|
78
|
+
const body = `<zone master="${config.master}">${membersXml}</zone>`;
|
|
79
|
+
log('POST /removeZoneSlave');
|
|
80
|
+
log('payload %s', body);
|
|
81
|
+
await client.post('/removeZoneSlave', body);
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=zone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zone.js","sourceRoot":"","sources":["../../../src/endpoints/zone.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAK/B,MAAM,GAAG,GAAG,WAAW,CAAC,6BAA6B,CAAC,CAAA;AAMtD,SAAS,mBAAmB,CAAC,OAA2B;IACpD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,sBAAsB,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,UAAU,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACpH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAkB;IAC9C,GAAG,CAAC,cAAc,CAAC,CAAA;IAEnB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAe,UAAU,CAAC,CAAA;IAC1D,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAEnC,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,CAAA;AAC1B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAkB,EAAE,MAAkB;IAChE,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACtD,MAAM,IAAI,GAAG,iBAAiB,MAAM,CAAC,MAAM,sBAAsB,MAAM,CAAC,eAAe,KAAK,UAAU,SAAS,CAAA;IAE/G,GAAG,CAAC,eAAe,CAAC,CAAA;IACpB,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAEvB,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AACvC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAkB,EAAE,MAAuB;IAC1E,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACtD,MAAM,IAAI,GAAG,iBAAiB,MAAM,CAAC,MAAM,KAAK,UAAU,SAAS,CAAA;IAEnE,GAAG,CAAC,oBAAoB,CAAC,CAAA;IACzB,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAEvB,MAAM,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;AAC5C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAkB,EAAE,MAAuB;IAC7E,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACtD,MAAM,IAAI,GAAG,iBAAiB,MAAM,CAAC,MAAM,KAAK,UAAU,SAAS,CAAA;IAEnE,GAAG,CAAC,uBAAuB,CAAC,CAAA;IAC5B,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAEvB,MAAM,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;AAC/C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AudioDspControls.d.ts","sourceRoot":"","sources":["../../../src/types/AudioDspControls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,MAAM,gBAAgB,GAAG;IAC3B,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC/B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AudioDspControls.js","sourceRoot":"","sources":["../../../src/types/AudioDspControls.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type LevelControl = {
|
|
2
|
+
value?: number;
|
|
3
|
+
minValue?: number;
|
|
4
|
+
maxValue?: number;
|
|
5
|
+
step?: number;
|
|
6
|
+
};
|
|
7
|
+
export type AudioProductLevelControls = {
|
|
8
|
+
frontCenterSpeakerLevel?: LevelControl;
|
|
9
|
+
rearSurroundSpeakersLevel?: LevelControl;
|
|
10
|
+
};
|
|
11
|
+
export type AudioProductLevelControlsUpdate = {
|
|
12
|
+
frontCenterSpeakerLevel?: number;
|
|
13
|
+
rearSurroundSpeakersLevel?: number;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=AudioProductLevelControls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AudioProductLevelControls.d.ts","sourceRoot":"","sources":["../../../src/types/AudioProductLevelControls.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACpC,uBAAuB,CAAC,EAAE,YAAY,CAAA;IACtC,yBAAyB,CAAC,EAAE,YAAY,CAAA;CAC3C,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG;IAC1C,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAA;CACrC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AudioProductLevelControls.js","sourceRoot":"","sources":["../../../src/types/AudioProductLevelControls.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type ToneControl = {
|
|
2
|
+
value?: number;
|
|
3
|
+
minValue?: number;
|
|
4
|
+
maxValue?: number;
|
|
5
|
+
step?: number;
|
|
6
|
+
};
|
|
7
|
+
export type AudioProductToneControls = {
|
|
8
|
+
bass?: ToneControl;
|
|
9
|
+
treble?: ToneControl;
|
|
10
|
+
};
|
|
11
|
+
export type AudioProductToneControlsUpdate = {
|
|
12
|
+
bass?: number;
|
|
13
|
+
treble?: number;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=AudioProductToneControls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AudioProductToneControls.d.ts","sourceRoot":"","sources":["../../../src/types/AudioProductToneControls.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACnC,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,MAAM,CAAC,EAAE,WAAW,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG;IACzC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AudioProductToneControls.js","sourceRoot":"","sources":["../../../src/types/AudioProductToneControls.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bass.d.ts","sourceRoot":"","sources":["../../../src/types/Bass.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bass.js","sourceRoot":"","sources":["../../../src/types/Bass.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BassCapabilities.d.ts","sourceRoot":"","sources":["../../../src/types/BassCapabilities.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BassCapabilities.js","sourceRoot":"","sources":["../../../src/types/BassCapabilities.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Capabilities.d.ts","sourceRoot":"","sources":["../../../src/types/Capabilities.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAA;CACzC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Capabilities.js","sourceRoot":"","sources":["../../../src/types/Capabilities.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContentItem.d.ts","sourceRoot":"","sources":["../../../src/types/ContentItem.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContentItem.js","sourceRoot":"","sources":["../../../src/types/ContentItem.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export type DeviceInfo = {
|
|
2
|
+
deviceID?: string;
|
|
3
|
+
name?: string;
|
|
4
|
+
type?: string;
|
|
5
|
+
margeAccountUUID?: string;
|
|
6
|
+
components?: {
|
|
7
|
+
component?: DeviceInfoComponent | DeviceInfoComponent[];
|
|
8
|
+
};
|
|
9
|
+
margeURL?: string;
|
|
10
|
+
networkInfo?: DeviceNetworkInfo | DeviceNetworkInfo[];
|
|
11
|
+
};
|
|
12
|
+
export type DeviceInfoComponent = {
|
|
13
|
+
componentCategory?: string;
|
|
14
|
+
softwareVersion?: string;
|
|
15
|
+
serialNumber?: string;
|
|
16
|
+
};
|
|
17
|
+
export type DeviceNetworkInfo = {
|
|
18
|
+
type?: string;
|
|
19
|
+
macAddress?: string;
|
|
20
|
+
ipAddress?: string;
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=DeviceInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeviceInfo.d.ts","sourceRoot":"","sources":["../../../src/types/DeviceInfo.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,UAAU,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,CAAA;KAC1D,CAAA;IACD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,CAAA;CACxD,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeviceInfo.js","sourceRoot":"","sources":["../../../src/types/DeviceInfo.ts"],"names":[],"mappings":""}
|