@sequencemedia/music-library
Version:
Watch Apple Music Library XML and parse to JSON, JS, ES, or M3U
53 lines (40 loc) • 952 B
JavaScript
import debug from 'debug'
import musicLibraryParser from '@sequencemedia/music-library-parser'
import {
DEFAULT_ERROR_MESSAGE
} from '#music-library/common'
import normalise from '#music-library/common/normalise'
const {
library: {
tracks: {
toM3U: parseToM3U
}
}
} = musicLibraryParser
const log = debug('@sequencemedia/music-library')
const error = debug('@sequencemedia/music-library:error')
log('`music-library` is awake')
function handleError ({
message = DEFAULT_ERROR_MESSAGE
} = {}) {
error(message)
}
export async function toM3U (jar, xml, destination) {
try {
const j = jar
? normalise(jar)
: jar
const x = xml
? normalise(xml)
: xml
const d = destination
? normalise(destination)
: destination
return (
await parseToM3U(j, x, d)
)
} catch (e) {
handleError(e)
}
}
export * as transform from '#music-library/library/tracks/transform'