UNPKG

taglib-wasm

Version:

TagLib for TypeScript platforms: Deno, Node.js, Bun, Electron, browsers, and Cloudflare Workers

81 lines (80 loc) 2.15 kB
const Tags = { // Basic Properties Title: "TITLE", Artist: "ARTIST", Album: "ALBUM", Date: "DATE", TrackNumber: "TRACKNUMBER", Genre: "GENRE", Comment: "COMMENT", // Extended Properties AlbumArtist: "ALBUMARTIST", Composer: "COMPOSER", Copyright: "COPYRIGHT", EncodedBy: "ENCODEDBY", DiscNumber: "DISCNUMBER", Bpm: "BPM", Lyricist: "LYRICIST", Conductor: "CONDUCTOR", Remixer: "REMIXEDBY", Language: "LANGUAGE", Publisher: "PUBLISHER", Mood: "MOOD", Media: "MEDIA", RadioStationOwner: "RADIOSTATIONOWNER", Producer: "PRODUCER", Subtitle: "SUBTITLE", Label: "LABEL", // Sorting Properties TitleSort: "TITLESORT", ArtistSort: "ARTISTSORT", AlbumArtistSort: "ALBUMARTISTSORT", AlbumSort: "ALBUMSORT", ComposerSort: "COMPOSERSORT", // Identifiers Isrc: "ISRC", Asin: "ASIN", CatalogNumber: "CATALOGNUMBER", Barcode: "BARCODE", // MusicBrainz Identifiers MusicBrainzArtistId: "MUSICBRAINZ_ARTISTID", MusicBrainzReleaseArtistId: "MUSICBRAINZ_ALBUMARTISTID", MusicBrainzWorkId: "MUSICBRAINZ_WORKID", MusicBrainzReleaseId: "MUSICBRAINZ_ALBUMID", MusicBrainzRecordingId: "MUSICBRAINZ_TRACKID", MusicBrainzTrackId: "MUSICBRAINZ_TRACKID", MusicBrainzReleaseGroupId: "MUSICBRAINZ_RELEASEGROUPID", MusicBrainzReleaseTrackId: "MUSICBRAINZ_RELEASETRACKID", // Podcast Properties PodcastId: "PODCASTID", PodcastUrl: "PODCASTURL", // Grouping and Work Grouping: "GROUPING", Work: "WORK", // Additional Metadata Lyrics: "LYRICS", AlbumGain: "REPLAYGAIN_ALBUM_GAIN", AlbumPeak: "REPLAYGAIN_ALBUM_PEAK", TrackGain: "REPLAYGAIN_TRACK_GAIN", TrackPeak: "REPLAYGAIN_TRACK_PEAK", // Special handling OriginalArtist: "ORIGINALARTIST", OriginalAlbum: "ORIGINALALBUM", OriginalDate: "ORIGINALDATE", Script: "SCRIPT", InvolvedPeopleList: "INVOLVEDPEOPLELIST", // Technical Properties EncoderSettings: "ENCODERSETTINGS", SourceMedia: "SOURCEMEDIA" }; function isValidTagName(name) { return Object.values(Tags).includes(name); } function getAllTagNames() { return Object.values(Tags); } export { Tags, getAllTagNames, isValidTagName };