New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@svrooij/sonos

Package Overview
Dependencies
Maintainers
1
Versions
85
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@svrooij/sonos - npm Package Compare versions

Comparing version 2.5.0 to 2.5.1-beta.1

4

lib/helpers/metadata-helper.d.ts

@@ -24,7 +24,7 @@ import { Track } from '../models/track';

static TrackToMetaData(track: Track | undefined, includeResource?: boolean, cdudn?: string): string;
static GuessMetaDataAndTrackUri(trackUri: string, spotifyRegion?: string): {
static GuessMetaDataAndTrackUri(trackUri: string, musicServiceRegion?: string): {
trackUri: string;
metadata: Track | string;
};
static GuessTrack(trackUri: string, spotifyRegion?: string): Track | undefined;
static GuessTrack(trackUri: string, musicServiceRegion?: string): Track | undefined;
private static guessSpotifyMetadata;

@@ -31,0 +31,0 @@ private static deezerMetadata;

@@ -99,5 +99,5 @@ "use strict";

}
static GuessMetaDataAndTrackUri(trackUri, spotifyRegion = '2311') {
static GuessMetaDataAndTrackUri(trackUri, musicServiceRegion) {
var _a;
const metadata = MetadataHelper.GuessTrack(trackUri, spotifyRegion);
const metadata = MetadataHelper.GuessTrack(trackUri, musicServiceRegion);
return {

@@ -108,3 +108,3 @@ trackUri: metadata === undefined || metadata.TrackUri === undefined ? trackUri : (_a = xml_helper_1.default.DecodeTrackUri(metadata.TrackUri)) !== null && _a !== void 0 ? _a : '',

}
static GuessTrack(trackUri, spotifyRegion = '2311') {
static GuessTrack(trackUri, musicServiceRegion) {
MetadataHelper.debug('Guessing metadata for %s', trackUri);

@@ -183,11 +183,11 @@ let title = '';

if (appleAlbumItem) { // Apple Music Album
return MetadataHelper.appleMetadata(appleAlbumItem[1], appleAlbumItem[2]);
return MetadataHelper.appleMetadata(appleAlbumItem[1], appleAlbumItem[2], musicServiceRegion);
}
const applePlaylistItem = /x-rincon-cpcontainer:1006206c(libraryplaylist|playlist):([.\d\w]+)(?:\?|$)/.exec(trackUri);
if (applePlaylistItem) { // Apple Music Playlist
return MetadataHelper.appleMetadata(applePlaylistItem[1], applePlaylistItem[2]);
return MetadataHelper.appleMetadata(applePlaylistItem[1], applePlaylistItem[2], musicServiceRegion);
}
const appleTrackItem = /x-sonos-http:(librarytrack|song):([.\d\w]+)\.mp4\?.*sid=204/.exec(trackUri);
if (appleTrackItem) { // Apple Music Track
return MetadataHelper.appleMetadata(appleTrackItem[1], appleTrackItem[2]);
return MetadataHelper.appleMetadata(appleTrackItem[1], appleTrackItem[2], musicServiceRegion);
}

@@ -197,3 +197,3 @@ if (trackUri.startsWith('x-rincon-cpcontainer:10fe206ctracks-artist-')) { // Deezer Artists Top Tracks

if (numbers && numbers.length >= 3) {
return MetadataHelper.deezerMetadata('artistTopTracks', numbers[2]);
return MetadataHelper.deezerMetadata('artistTopTracks', numbers[2], musicServiceRegion);
}

@@ -204,3 +204,3 @@ }

if (numbers && numbers.length >= 3) {
return MetadataHelper.deezerMetadata('playlist', numbers[2]);
return MetadataHelper.deezerMetadata('playlist', numbers[2], musicServiceRegion);
}

@@ -211,3 +211,3 @@ }

if (numbers && numbers.length >= 2) {
return MetadataHelper.deezerMetadata('track', numbers[1]);
return MetadataHelper.deezerMetadata('track', numbers[1], musicServiceRegion);
}

@@ -217,9 +217,9 @@ }

if ((parts.length === 3 || parts.length === 5) && parts[0] === 'spotify') {
return MetadataHelper.guessSpotifyMetadata(trackUri, parts[1], spotifyRegion);
return MetadataHelper.guessSpotifyMetadata(trackUri, parts[1], musicServiceRegion);
}
if (parts.length === 3 && parts[0] === 'deezer') {
return MetadataHelper.deezerMetadata(parts[1], parts[2]);
return MetadataHelper.deezerMetadata(parts[1], parts[2], musicServiceRegion);
}
if (parts.length === 3 && parts[0] === 'apple') {
return MetadataHelper.appleMetadata(parts[1], parts[2]);
return MetadataHelper.appleMetadata(parts[1], parts[2], musicServiceRegion);
}

@@ -237,3 +237,5 @@ if (parts.length === 2 && parts[0] === 'radio' && parts[1].startsWith('s')) {

}
static guessSpotifyMetadata(trackUri, kind, region) {
static guessSpotifyMetadata(trackUri, kind, spotifyRegion) {
var _a;
const region = (_a = spotifyRegion !== null && spotifyRegion !== void 0 ? spotifyRegion : process.env.SONOS_REGION_SPOTIFY) !== null && _a !== void 0 ? _a : '2311';
const spotifyUri = trackUri.replace(/:/g, '%3a');

@@ -288,3 +290,5 @@ const track = {

}
static deezerMetadata(kind, id, region = '519') {
static deezerMetadata(kind, id, deezerRegion) {
var _a;
const region = (_a = deezerRegion !== null && deezerRegion !== void 0 ? deezerRegion : process.env.SONOS_REGION_DEEZER) !== null && _a !== void 0 ? _a : '519';
const track = {

@@ -319,3 +323,5 @@ CdUdn: `SA_RINCON${region}_X_#Svc${region}-0-Token`,

}
static appleMetadata(kind, id, region = '52231') {
static appleMetadata(kind, id, appleRegion) {
var _a;
const region = (_a = appleRegion !== null && appleRegion !== void 0 ? appleRegion : process.env.SONOS_REGION_APPLE) !== null && _a !== void 0 ? _a : '52231';
const track = {

@@ -322,0 +328,0 @@ Title: '',

{
"name": "@svrooij/sonos",
"version": "2.5.0",
"version": "2.5.1-beta.1",
"description": "A node library to control your sonos devices, written in typescript",

@@ -5,0 +5,0 @@ "main": "lib/index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc