Skip to content

Rewrites Spotify URIs and HTTP links to Spotify application URIs

License

Notifications You must be signed in to change notification settings

mcicoria/rewrite-to-spotify-uri

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ac20ac4 · Jun 28, 2018

History

2 Commits
Jun 28, 2018
Jun 28, 2018
Jun 28, 2018
Jun 28, 2018
Jun 28, 2018
Jun 28, 2018
Jun 28, 2018
Jun 28, 2018

Repository files navigation

rewrite-to-spotify-uri Build Status

Rewrites all Spotify links and uris like:

https://open.spotify.com/user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw   
spotify:user:markcicoria:playlist:2Wz5C4qI9cpOV0xWurixU0  

To Spotify application links like:
spotify://user:markcicoria:playlist:2Wz5C4qI9cpOV0xWurixU0

Install

$ npm install --save rewrite-to-spotify-uri

Test

$ npm test

Or watch with:

$ npm test -- --watch

Usage

const rewriteSpotifyUri = require('rewrite-to-spotify-uri');

rewriteSpotifyUri.rewrite('spotify:user:markcicoria:playlist:2Wz5C4qI9cpOV0xWurixU0 foo bar');
//=> spotify://user:markcicoria:playlist:2Wz5C4qI9cpOV0xWurixU0 foo bar

rewriteSpotifyUri.rewrite('https://open.spotify.com/user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw foo bar spotify:track:6JD5hXgXe7z5edGKpQK0AE');
//=> spotify://user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw foo bar spotify://track:6JD5hXgXe7z5edGKpQK0AE

rewriteSpotifyUri.isSpotifyUri('http://github.com');
//=> false

rewriteSpotifyUri.isSpotifyUri('spotify:user:markcicoria:playlist:2Wz5C4qI9cpOV0xWurixU0');
//=> true

rewriteSpotifyUri.isSpotifyUri('https://open.spotify.com/user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw');
//=> false

rewriteSpotifyUri.isSpotifyLink('https://open.spotify.com/user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw');
//=> true

rewriteSpotifyUri.extractUris('https://open.spotify.com/user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw foo bar spotify:track:6JD5hXgXe7z5edGKpQK0AE');
//=> ['https://open.spotify.com/user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw', 'spotify:track:6JD5hXgXe7z5edGKpQK0AE']

rewriteSpotifyUri.extractSpotifyUris('https://open.spotify.com/user/markcicoria/playlist/2Wz5C4qI9cpOV0xWurixU0?si=9VHvI4znToSovfHHUSdEpw foo bar spotify:track:6JD5hXgXe7z5edGKpQK0AE');
//=> ['spotify:track:6JD5hXgXe7z5edGKpQK0AE']

API

rewrite(string)

Returns a string with all Spotify links and uris replaced with the spotify:// version.

isSpotifyUri(string)

Returns a boolean. True if the string is a Spotify uri like spotify:track:id, false otherwise.

isSpotifyLink(string)

Returns a boolean. True if the string is a Spotify uri like open.spotify://track/id, false otherwise.

extractUris(string)

Returns an array of matched Spotify links and uris.

extractSpotifyUris(string)

Returns an array of matched Spotify uris only.

Related

License

MIT © Mark Cicoria, Kevin Mårtensson, and Diego Perini

About

Rewrites Spotify URIs and HTTP links to Spotify application URIs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published