music-metadata 7.12.1 → 7.12.4
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.txt +9 -9
- package/README.md +434 -434
- package/lib/ParserFactory.d.ts +48 -48
- package/lib/ParserFactory.js +252 -252
- package/lib/aiff/AiffParser.d.ts +14 -14
- package/lib/aiff/AiffParser.js +84 -84
- package/lib/aiff/AiffToken.d.ts +22 -22
- package/lib/aiff/AiffToken.js +43 -43
- package/lib/apev2/APEv2Parser.d.ts +30 -30
- package/lib/apev2/APEv2Parser.js +164 -161
- package/lib/apev2/APEv2TagMapper.d.ts +4 -4
- package/lib/apev2/APEv2TagMapper.js +86 -86
- package/lib/apev2/APEv2Token.d.ts +100 -100
- package/lib/apev2/APEv2Token.js +126 -126
- package/lib/asf/AsfObject.d.ts +319 -319
- package/lib/asf/AsfObject.js +381 -381
- package/lib/asf/AsfParser.d.ts +17 -17
- package/lib/asf/AsfParser.js +135 -135
- package/lib/asf/AsfTagMapper.d.ts +7 -7
- package/lib/asf/AsfTagMapper.js +95 -95
- package/lib/asf/AsfUtil.d.ts +13 -13
- package/lib/asf/AsfUtil.js +38 -38
- package/lib/asf/GUID.d.ts +84 -84
- package/lib/asf/GUID.js +121 -121
- package/lib/common/BasicParser.d.ts +17 -17
- package/lib/common/BasicParser.js +18 -18
- package/lib/common/CaseInsensitiveTagMap.d.ts +10 -10
- package/lib/common/CaseInsensitiveTagMap.js +21 -21
- package/lib/common/CombinedTagMapper.d.ts +19 -19
- package/lib/common/CombinedTagMapper.js +51 -51
- package/lib/common/FourCC.d.ts +6 -6
- package/lib/common/FourCC.js +28 -28
- package/lib/common/GenericTagMapper.d.ts +51 -51
- package/lib/common/GenericTagMapper.js +55 -55
- package/lib/common/GenericTagTypes.d.ts +33 -33
- package/lib/common/GenericTagTypes.js +131 -131
- package/lib/common/MetadataCollector.d.ts +76 -76
- package/lib/common/MetadataCollector.js +275 -275
- package/lib/common/RandomFileReader.d.ts +22 -22
- package/lib/common/RandomFileReader.js +34 -34
- package/lib/common/RandomUint8ArrayReader.d.ts +18 -18
- package/lib/common/RandomUint8ArrayReader.js +25 -25
- package/lib/common/Util.d.ts +57 -57
- package/lib/common/Util.js +157 -157
- package/lib/core.d.ts +48 -48
- package/lib/core.js +90 -90
- package/lib/dsdiff/DsdiffParser.d.ts +14 -14
- package/lib/dsdiff/DsdiffParser.js +143 -143
- package/lib/dsdiff/DsdiffToken.d.ts +9 -9
- package/lib/dsdiff/DsdiffToken.js +21 -21
- package/lib/dsf/DsfChunk.d.ts +86 -86
- package/lib/dsf/DsfChunk.js +54 -54
- package/lib/dsf/DsfParser.d.ts +9 -9
- package/lib/dsf/DsfParser.js +56 -56
- package/lib/flac/FlacParser.d.ts +28 -28
- package/lib/flac/FlacParser.js +175 -175
- package/lib/id3v1/ID3v1Parser.d.ts +13 -13
- package/lib/id3v1/ID3v1Parser.js +134 -134
- package/lib/id3v1/ID3v1TagMap.d.ts +4 -4
- package/lib/id3v1/ID3v1TagMap.js +22 -22
- package/lib/id3v2/AbstractID3Parser.d.ts +17 -17
- package/lib/id3v2/AbstractID3Parser.js +60 -60
- package/lib/id3v2/FrameParser.d.ts +31 -31
- package/lib/id3v2/FrameParser.js +329 -329
- package/lib/id3v2/ID3v22TagMapper.d.ts +9 -9
- package/lib/id3v2/ID3v22TagMapper.js +55 -55
- package/lib/id3v2/ID3v24TagMapper.d.ts +14 -14
- package/lib/id3v2/ID3v24TagMapper.js +193 -193
- package/lib/id3v2/ID3v2Parser.d.ts +28 -28
- package/lib/id3v2/ID3v2Parser.js +182 -182
- package/lib/id3v2/ID3v2Token.d.ts +73 -73
- package/lib/id3v2/ID3v2Token.js +106 -106
- package/lib/iff/index.d.ts +33 -33
- package/lib/iff/index.js +19 -19
- package/lib/index.d.ts +45 -45
- package/lib/index.js +74 -74
- package/lib/lyrics3/Lyrics3.d.ts +3 -3
- package/lib/lyrics3/Lyrics3.js +17 -17
- package/lib/matroska/MatroskaDtd.d.ts +8 -8
- package/lib/matroska/MatroskaDtd.js +279 -279
- package/lib/matroska/MatroskaParser.d.ts +37 -37
- package/lib/matroska/MatroskaParser.js +235 -235
- package/lib/matroska/MatroskaTagMapper.d.ts +4 -4
- package/lib/matroska/MatroskaTagMapper.js +35 -35
- package/lib/matroska/types.d.ts +175 -175
- package/lib/matroska/types.js +32 -32
- package/lib/mp4/Atom.d.ts +16 -16
- package/lib/mp4/Atom.js +70 -70
- package/lib/mp4/AtomToken.d.ts +395 -395
- package/lib/mp4/AtomToken.js +406 -406
- package/lib/mp4/MP4Parser.d.ts +30 -30
- package/lib/mp4/MP4Parser.js +511 -511
- package/lib/mp4/MP4TagMapper.d.ts +5 -5
- package/lib/mp4/MP4TagMapper.js +115 -115
- package/lib/mpeg/ExtendedLameHeader.d.ts +27 -27
- package/lib/mpeg/ExtendedLameHeader.js +31 -31
- package/lib/mpeg/MpegParser.d.ts +49 -49
- package/lib/mpeg/MpegParser.js +524 -524
- package/lib/mpeg/ReplayGainDataFormat.d.ts +55 -55
- package/lib/mpeg/ReplayGainDataFormat.js +69 -69
- package/lib/mpeg/XingTag.d.ts +45 -45
- package/lib/mpeg/XingTag.js +69 -69
- package/lib/musepack/index.d.ts +5 -5
- package/lib/musepack/index.js +32 -32
- package/lib/musepack/sv7/BitReader.d.ts +13 -13
- package/lib/musepack/sv7/BitReader.js +54 -54
- package/lib/musepack/sv7/MpcSv7Parser.d.ts +8 -8
- package/lib/musepack/sv7/MpcSv7Parser.js +46 -46
- package/lib/musepack/sv7/StreamVersion7.d.ts +28 -28
- package/lib/musepack/sv7/StreamVersion7.js +41 -41
- package/lib/musepack/sv8/MpcSv8Parser.d.ts +6 -6
- package/lib/musepack/sv8/MpcSv8Parser.js +55 -55
- package/lib/musepack/sv8/StreamVersion8.d.ts +40 -40
- package/lib/musepack/sv8/StreamVersion8.js +80 -80
- package/lib/ogg/Ogg.d.ts +72 -72
- package/lib/ogg/Ogg.js +2 -2
- package/lib/ogg/OggParser.d.ts +23 -23
- package/lib/ogg/OggParser.js +126 -126
- package/lib/ogg/opus/Opus.d.ts +48 -48
- package/lib/ogg/opus/Opus.js +28 -28
- package/lib/ogg/opus/OpusParser.d.ts +25 -25
- package/lib/ogg/opus/OpusParser.js +56 -56
- package/lib/ogg/speex/Speex.d.ts +36 -36
- package/lib/ogg/speex/Speex.js +31 -31
- package/lib/ogg/speex/SpeexParser.d.ts +22 -22
- package/lib/ogg/speex/SpeexParser.js +35 -35
- package/lib/ogg/theora/Theora.d.ts +20 -20
- package/lib/ogg/theora/Theora.js +23 -23
- package/lib/ogg/theora/TheoraParser.d.ts +28 -28
- package/lib/ogg/theora/TheoraParser.js +44 -44
- package/lib/ogg/vorbis/Vorbis.d.ts +69 -69
- package/lib/ogg/vorbis/Vorbis.js +78 -78
- package/lib/ogg/vorbis/VorbisDecoder.d.ts +12 -12
- package/lib/ogg/vorbis/VorbisDecoder.js +32 -32
- package/lib/ogg/vorbis/VorbisParser.d.ts +36 -36
- package/lib/ogg/vorbis/VorbisParser.js +128 -128
- package/lib/ogg/vorbis/VorbisTagMapper.d.ts +7 -7
- package/lib/ogg/vorbis/VorbisTagMapper.js +132 -132
- package/lib/riff/RiffChunk.d.ts +16 -16
- package/lib/riff/RiffChunk.js +32 -32
- package/lib/riff/RiffInfoTagMap.d.ts +10 -10
- package/lib/riff/RiffInfoTagMap.js +37 -37
- package/lib/type.d.ts +592 -592
- package/lib/type.js +5 -5
- package/lib/wav/BwfChunk.d.ts +17 -17
- package/lib/wav/BwfChunk.js +29 -28
- package/lib/wav/WaveChunk.d.ts +64 -64
- package/lib/wav/WaveChunk.js +65 -65
- package/lib/wav/WaveParser.d.ts +24 -24
- package/lib/wav/WaveParser.js +158 -156
- package/lib/wavpack/WavPackParser.d.ts +14 -14
- package/lib/wavpack/WavPackParser.js +99 -99
- package/lib/wavpack/WavPackToken.d.ts +64 -64
- package/lib/wavpack/WavPackToken.js +76 -76
- package/package.json +150 -150
package/lib/asf/GUID.d.ts
CHANGED
|
@@ -1,84 +1,84 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/**
|
|
3
|
-
* Ref:
|
|
4
|
-
* - https://tools.ietf.org/html/draft-fleischman-asf-01, Appendix A: ASF GUIDs
|
|
5
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
6
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/index.html
|
|
7
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
8
|
-
*
|
|
9
|
-
* ASF File Structure:
|
|
10
|
-
* - https://msdn.microsoft.com/en-us/library/windows/desktop/ee663575(v=vs.85).aspx
|
|
11
|
-
*
|
|
12
|
-
* ASF GUIDs:
|
|
13
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
14
|
-
* - https://github.com/dji-sdk/FFmpeg/blob/master/libavformat/asf.c
|
|
15
|
-
*/
|
|
16
|
-
export default class GUID {
|
|
17
|
-
str: string;
|
|
18
|
-
static HeaderObject: GUID;
|
|
19
|
-
static DataObject: GUID;
|
|
20
|
-
static SimpleIndexObject: GUID;
|
|
21
|
-
static IndexObject: GUID;
|
|
22
|
-
static MediaObjectIndexObject: GUID;
|
|
23
|
-
static TimecodeIndexObject: GUID;
|
|
24
|
-
static FilePropertiesObject: GUID;
|
|
25
|
-
static StreamPropertiesObject: GUID;
|
|
26
|
-
static HeaderExtensionObject: GUID;
|
|
27
|
-
static CodecListObject: GUID;
|
|
28
|
-
static ScriptCommandObject: GUID;
|
|
29
|
-
static MarkerObject: GUID;
|
|
30
|
-
static BitrateMutualExclusionObject: GUID;
|
|
31
|
-
static ErrorCorrectionObject: GUID;
|
|
32
|
-
static ContentDescriptionObject: GUID;
|
|
33
|
-
static ExtendedContentDescriptionObject: GUID;
|
|
34
|
-
static ContentBrandingObject: GUID;
|
|
35
|
-
static StreamBitratePropertiesObject: GUID;
|
|
36
|
-
static ContentEncryptionObject: GUID;
|
|
37
|
-
static ExtendedContentEncryptionObject: GUID;
|
|
38
|
-
static DigitalSignatureObject: GUID;
|
|
39
|
-
static PaddingObject: GUID;
|
|
40
|
-
static ExtendedStreamPropertiesObject: GUID;
|
|
41
|
-
static AdvancedMutualExclusionObject: GUID;
|
|
42
|
-
static GroupMutualExclusionObject: GUID;
|
|
43
|
-
static StreamPrioritizationObject: GUID;
|
|
44
|
-
static BandwidthSharingObject: GUID;
|
|
45
|
-
static LanguageListObject: GUID;
|
|
46
|
-
static MetadataObject: GUID;
|
|
47
|
-
static MetadataLibraryObject: GUID;
|
|
48
|
-
static IndexParametersObject: GUID;
|
|
49
|
-
static MediaObjectIndexParametersObject: GUID;
|
|
50
|
-
static TimecodeIndexParametersObject: GUID;
|
|
51
|
-
static CompatibilityObject: GUID;
|
|
52
|
-
static AdvancedContentEncryptionObject: GUID;
|
|
53
|
-
static AudioMedia: GUID;
|
|
54
|
-
static VideoMedia: GUID;
|
|
55
|
-
static CommandMedia: GUID;
|
|
56
|
-
static JFIF_Media: GUID;
|
|
57
|
-
static Degradable_JPEG_Media: GUID;
|
|
58
|
-
static FileTransferMedia: GUID;
|
|
59
|
-
static BinaryMedia: GUID;
|
|
60
|
-
static ASF_Index_Placeholder_Object: GUID;
|
|
61
|
-
static fromBin(bin: Buffer, offset?: number): GUID;
|
|
62
|
-
/**
|
|
63
|
-
* Decode GUID in format like "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
64
|
-
* @param objectId Binary GUID
|
|
65
|
-
* @param offset Read offset in bytes, default 0
|
|
66
|
-
* @returns GUID as dashed hexadecimal representation
|
|
67
|
-
*/
|
|
68
|
-
static decode(objectId: Buffer, offset?: number): string;
|
|
69
|
-
/**
|
|
70
|
-
* Decode stream type
|
|
71
|
-
* @param mediaType Media type GUID
|
|
72
|
-
* @returns Media type
|
|
73
|
-
*/
|
|
74
|
-
static decodeMediaType(mediaType: GUID): 'audio' | 'video' | 'command' | 'degradable-jpeg' | 'file-transfer' | 'binary' | undefined;
|
|
75
|
-
/**
|
|
76
|
-
* Encode GUID
|
|
77
|
-
* @param guid GUID like: "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
78
|
-
* @returns Encoded Binary GUID
|
|
79
|
-
*/
|
|
80
|
-
static encode(str: string): Buffer;
|
|
81
|
-
constructor(str: string);
|
|
82
|
-
equals(guid: GUID): boolean;
|
|
83
|
-
toBin(): Buffer;
|
|
84
|
-
}
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/**
|
|
3
|
+
* Ref:
|
|
4
|
+
* - https://tools.ietf.org/html/draft-fleischman-asf-01, Appendix A: ASF GUIDs
|
|
5
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
6
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/index.html
|
|
7
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
8
|
+
*
|
|
9
|
+
* ASF File Structure:
|
|
10
|
+
* - https://msdn.microsoft.com/en-us/library/windows/desktop/ee663575(v=vs.85).aspx
|
|
11
|
+
*
|
|
12
|
+
* ASF GUIDs:
|
|
13
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
14
|
+
* - https://github.com/dji-sdk/FFmpeg/blob/master/libavformat/asf.c
|
|
15
|
+
*/
|
|
16
|
+
export default class GUID {
|
|
17
|
+
str: string;
|
|
18
|
+
static HeaderObject: GUID;
|
|
19
|
+
static DataObject: GUID;
|
|
20
|
+
static SimpleIndexObject: GUID;
|
|
21
|
+
static IndexObject: GUID;
|
|
22
|
+
static MediaObjectIndexObject: GUID;
|
|
23
|
+
static TimecodeIndexObject: GUID;
|
|
24
|
+
static FilePropertiesObject: GUID;
|
|
25
|
+
static StreamPropertiesObject: GUID;
|
|
26
|
+
static HeaderExtensionObject: GUID;
|
|
27
|
+
static CodecListObject: GUID;
|
|
28
|
+
static ScriptCommandObject: GUID;
|
|
29
|
+
static MarkerObject: GUID;
|
|
30
|
+
static BitrateMutualExclusionObject: GUID;
|
|
31
|
+
static ErrorCorrectionObject: GUID;
|
|
32
|
+
static ContentDescriptionObject: GUID;
|
|
33
|
+
static ExtendedContentDescriptionObject: GUID;
|
|
34
|
+
static ContentBrandingObject: GUID;
|
|
35
|
+
static StreamBitratePropertiesObject: GUID;
|
|
36
|
+
static ContentEncryptionObject: GUID;
|
|
37
|
+
static ExtendedContentEncryptionObject: GUID;
|
|
38
|
+
static DigitalSignatureObject: GUID;
|
|
39
|
+
static PaddingObject: GUID;
|
|
40
|
+
static ExtendedStreamPropertiesObject: GUID;
|
|
41
|
+
static AdvancedMutualExclusionObject: GUID;
|
|
42
|
+
static GroupMutualExclusionObject: GUID;
|
|
43
|
+
static StreamPrioritizationObject: GUID;
|
|
44
|
+
static BandwidthSharingObject: GUID;
|
|
45
|
+
static LanguageListObject: GUID;
|
|
46
|
+
static MetadataObject: GUID;
|
|
47
|
+
static MetadataLibraryObject: GUID;
|
|
48
|
+
static IndexParametersObject: GUID;
|
|
49
|
+
static MediaObjectIndexParametersObject: GUID;
|
|
50
|
+
static TimecodeIndexParametersObject: GUID;
|
|
51
|
+
static CompatibilityObject: GUID;
|
|
52
|
+
static AdvancedContentEncryptionObject: GUID;
|
|
53
|
+
static AudioMedia: GUID;
|
|
54
|
+
static VideoMedia: GUID;
|
|
55
|
+
static CommandMedia: GUID;
|
|
56
|
+
static JFIF_Media: GUID;
|
|
57
|
+
static Degradable_JPEG_Media: GUID;
|
|
58
|
+
static FileTransferMedia: GUID;
|
|
59
|
+
static BinaryMedia: GUID;
|
|
60
|
+
static ASF_Index_Placeholder_Object: GUID;
|
|
61
|
+
static fromBin(bin: Buffer, offset?: number): GUID;
|
|
62
|
+
/**
|
|
63
|
+
* Decode GUID in format like "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
64
|
+
* @param objectId Binary GUID
|
|
65
|
+
* @param offset Read offset in bytes, default 0
|
|
66
|
+
* @returns GUID as dashed hexadecimal representation
|
|
67
|
+
*/
|
|
68
|
+
static decode(objectId: Buffer, offset?: number): string;
|
|
69
|
+
/**
|
|
70
|
+
* Decode stream type
|
|
71
|
+
* @param mediaType Media type GUID
|
|
72
|
+
* @returns Media type
|
|
73
|
+
*/
|
|
74
|
+
static decodeMediaType(mediaType: GUID): 'audio' | 'video' | 'command' | 'degradable-jpeg' | 'file-transfer' | 'binary' | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* Encode GUID
|
|
77
|
+
* @param guid GUID like: "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
78
|
+
* @returns Encoded Binary GUID
|
|
79
|
+
*/
|
|
80
|
+
static encode(str: string): Buffer;
|
|
81
|
+
constructor(str: string);
|
|
82
|
+
equals(guid: GUID): boolean;
|
|
83
|
+
toBin(): Buffer;
|
|
84
|
+
}
|
package/lib/asf/GUID.js
CHANGED
|
@@ -1,121 +1,121 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Ref:
|
|
5
|
-
* - https://tools.ietf.org/html/draft-fleischman-asf-01, Appendix A: ASF GUIDs
|
|
6
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
7
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/index.html
|
|
8
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
9
|
-
*
|
|
10
|
-
* ASF File Structure:
|
|
11
|
-
* - https://msdn.microsoft.com/en-us/library/windows/desktop/ee663575(v=vs.85).aspx
|
|
12
|
-
*
|
|
13
|
-
* ASF GUIDs:
|
|
14
|
-
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
15
|
-
* - https://github.com/dji-sdk/FFmpeg/blob/master/libavformat/asf.c
|
|
16
|
-
*/
|
|
17
|
-
class GUID {
|
|
18
|
-
constructor(str) {
|
|
19
|
-
this.str = str;
|
|
20
|
-
}
|
|
21
|
-
static fromBin(bin, offset = 0) {
|
|
22
|
-
return new GUID(this.decode(bin, offset));
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Decode GUID in format like "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
26
|
-
* @param objectId Binary GUID
|
|
27
|
-
* @param offset Read offset in bytes, default 0
|
|
28
|
-
* @returns GUID as dashed hexadecimal representation
|
|
29
|
-
*/
|
|
30
|
-
static decode(objectId, offset = 0) {
|
|
31
|
-
const guid = objectId.readUInt32LE(offset).toString(16) + "-" +
|
|
32
|
-
objectId.readUInt16LE(offset + 4).toString(16) + "-" +
|
|
33
|
-
objectId.readUInt16LE(offset + 6).toString(16) + "-" +
|
|
34
|
-
objectId.readUInt16BE(offset + 8).toString(16) + "-" +
|
|
35
|
-
objectId.slice(offset + 10, offset + 16).toString('hex');
|
|
36
|
-
return guid.toUpperCase();
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Decode stream type
|
|
40
|
-
* @param mediaType Media type GUID
|
|
41
|
-
* @returns Media type
|
|
42
|
-
*/
|
|
43
|
-
static decodeMediaType(mediaType) {
|
|
44
|
-
switch (mediaType.str) {
|
|
45
|
-
case GUID.AudioMedia.str: return 'audio';
|
|
46
|
-
case GUID.VideoMedia.str: return 'video';
|
|
47
|
-
case GUID.CommandMedia.str: return 'command';
|
|
48
|
-
case GUID.Degradable_JPEG_Media.str: return 'degradable-jpeg';
|
|
49
|
-
case GUID.FileTransferMedia.str: return 'file-transfer';
|
|
50
|
-
case GUID.BinaryMedia.str: return 'binary';
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Encode GUID
|
|
55
|
-
* @param guid GUID like: "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
56
|
-
* @returns Encoded Binary GUID
|
|
57
|
-
*/
|
|
58
|
-
static encode(str) {
|
|
59
|
-
const bin = Buffer.alloc(16);
|
|
60
|
-
bin.writeUInt32LE(parseInt(str.slice(0, 8), 16), 0);
|
|
61
|
-
bin.writeUInt16LE(parseInt(str.slice(9, 13), 16), 4);
|
|
62
|
-
bin.writeUInt16LE(parseInt(str.slice(14, 18), 16), 6);
|
|
63
|
-
Buffer.from(str.slice(19, 23), "hex").copy(bin, 8);
|
|
64
|
-
Buffer.from(str.slice(24), "hex").copy(bin, 10);
|
|
65
|
-
return bin;
|
|
66
|
-
}
|
|
67
|
-
equals(guid) {
|
|
68
|
-
return this.str === guid.str;
|
|
69
|
-
}
|
|
70
|
-
toBin() {
|
|
71
|
-
return GUID.encode(this.str);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
exports.default = GUID;
|
|
75
|
-
// 10.1 Top-level ASF object GUIDs
|
|
76
|
-
GUID.HeaderObject = new GUID("75B22630-668E-11CF-A6D9-00AA0062CE6C");
|
|
77
|
-
GUID.DataObject = new GUID("75B22636-668E-11CF-A6D9-00AA0062CE6C");
|
|
78
|
-
GUID.SimpleIndexObject = new GUID("33000890-E5B1-11CF-89F4-00A0C90349CB");
|
|
79
|
-
GUID.IndexObject = new GUID("D6E229D3-35DA-11D1-9034-00A0C90349BE");
|
|
80
|
-
GUID.MediaObjectIndexObject = new GUID("FEB103F8-12AD-4C64-840F-2A1D2F7AD48C");
|
|
81
|
-
GUID.TimecodeIndexObject = new GUID("3CB73FD0-0C4A-4803-953D-EDF7B6228F0C");
|
|
82
|
-
// 10.2 Header Object GUIDs
|
|
83
|
-
GUID.FilePropertiesObject = new GUID("8CABDCA1-A947-11CF-8EE4-00C00C205365");
|
|
84
|
-
GUID.StreamPropertiesObject = new GUID("B7DC0791-A9B7-11CF-8EE6-00C00C205365");
|
|
85
|
-
GUID.HeaderExtensionObject = new GUID("5FBF03B5-A92E-11CF-8EE3-00C00C205365");
|
|
86
|
-
GUID.CodecListObject = new GUID("86D15240-311D-11D0-A3A4-00A0C90348F6");
|
|
87
|
-
GUID.ScriptCommandObject = new GUID("1EFB1A30-0B62-11D0-A39B-00A0C90348F6");
|
|
88
|
-
GUID.MarkerObject = new GUID("F487CD01-A951-11CF-8EE6-00C00C205365");
|
|
89
|
-
GUID.BitrateMutualExclusionObject = new GUID("D6E229DC-35DA-11D1-9034-00A0C90349BE");
|
|
90
|
-
GUID.ErrorCorrectionObject = new GUID("75B22635-668E-11CF-A6D9-00AA0062CE6C");
|
|
91
|
-
GUID.ContentDescriptionObject = new GUID("75B22633-668E-11CF-A6D9-00AA0062CE6C");
|
|
92
|
-
GUID.ExtendedContentDescriptionObject = new GUID("D2D0A440-E307-11D2-97F0-00A0C95EA850");
|
|
93
|
-
GUID.ContentBrandingObject = new GUID("2211B3FA-BD23-11D2-B4B7-00A0C955FC6E");
|
|
94
|
-
GUID.StreamBitratePropertiesObject = new GUID("7BF875CE-468D-11D1-8D82-006097C9A2B2");
|
|
95
|
-
GUID.ContentEncryptionObject = new GUID("2211B3FB-BD23-11D2-B4B7-00A0C955FC6E");
|
|
96
|
-
GUID.ExtendedContentEncryptionObject = new GUID("298AE614-2622-4C17-B935-DAE07EE9289C");
|
|
97
|
-
GUID.DigitalSignatureObject = new GUID("2211B3FC-BD23-11D2-B4B7-00A0C955FC6E");
|
|
98
|
-
GUID.PaddingObject = new GUID("1806D474-CADF-4509-A4BA-9AABCB96AAE8");
|
|
99
|
-
// 10.3 Header Extension Object GUIDs
|
|
100
|
-
GUID.ExtendedStreamPropertiesObject = new GUID("14E6A5CB-C672-4332-8399-A96952065B5A");
|
|
101
|
-
GUID.AdvancedMutualExclusionObject = new GUID("A08649CF-4775-4670-8A16-6E35357566CD");
|
|
102
|
-
GUID.GroupMutualExclusionObject = new GUID("D1465A40-5A79-4338-B71B-E36B8FD6C249");
|
|
103
|
-
GUID.StreamPrioritizationObject = new GUID("D4FED15B-88D3-454F-81F0-ED5C45999E24");
|
|
104
|
-
GUID.BandwidthSharingObject = new GUID("A69609E6-517B-11D2-B6AF-00C04FD908E9");
|
|
105
|
-
GUID.LanguageListObject = new GUID("7C4346A9-EFE0-4BFC-B229-393EDE415C85");
|
|
106
|
-
GUID.MetadataObject = new GUID("C5F8CBEA-5BAF-4877-8467-AA8C44FA4CCA");
|
|
107
|
-
GUID.MetadataLibraryObject = new GUID("44231C94-9498-49D1-A141-1D134E457054");
|
|
108
|
-
GUID.IndexParametersObject = new GUID("D6E229DF-35DA-11D1-9034-00A0C90349BE");
|
|
109
|
-
GUID.MediaObjectIndexParametersObject = new GUID("6B203BAD-3F11-48E4-ACA8-D7613DE2CFA7");
|
|
110
|
-
GUID.TimecodeIndexParametersObject = new GUID("F55E496D-9797-4B5D-8C8B-604DFE9BFB24");
|
|
111
|
-
GUID.CompatibilityObject = new GUID("26F18B5D-4584-47EC-9F5F-0E651F0452C9");
|
|
112
|
-
GUID.AdvancedContentEncryptionObject = new GUID("43058533-6981-49E6-9B74-AD12CB86D58C");
|
|
113
|
-
// 10.4 Stream Properties Object Stream Type GUIDs
|
|
114
|
-
GUID.AudioMedia = new GUID("F8699E40-5B4D-11CF-A8FD-00805F5C442B");
|
|
115
|
-
GUID.VideoMedia = new GUID("BC19EFC0-5B4D-11CF-A8FD-00805F5C442B");
|
|
116
|
-
GUID.CommandMedia = new GUID("59DACFC0-59E6-11D0-A3AC-00A0C90348F6");
|
|
117
|
-
GUID.JFIF_Media = new GUID("B61BE100-5B4E-11CF-A8FD-00805F5C442B");
|
|
118
|
-
GUID.Degradable_JPEG_Media = new GUID("35907DE0-E415-11CF-A917-00805F5C442B");
|
|
119
|
-
GUID.FileTransferMedia = new GUID("91BD222C-F21C-497A-8B6D-5AA86BFC0185");
|
|
120
|
-
GUID.BinaryMedia = new GUID("3AFB65E2-47EF-40F2-AC2C-70A90D71D343");
|
|
121
|
-
GUID.ASF_Index_Placeholder_Object = new GUID("D9AADE20-7C17-4F9C-BC28-8555DD98E2A2");
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/**
|
|
4
|
+
* Ref:
|
|
5
|
+
* - https://tools.ietf.org/html/draft-fleischman-asf-01, Appendix A: ASF GUIDs
|
|
6
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
7
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/index.html
|
|
8
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
9
|
+
*
|
|
10
|
+
* ASF File Structure:
|
|
11
|
+
* - https://msdn.microsoft.com/en-us/library/windows/desktop/ee663575(v=vs.85).aspx
|
|
12
|
+
*
|
|
13
|
+
* ASF GUIDs:
|
|
14
|
+
* - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html
|
|
15
|
+
* - https://github.com/dji-sdk/FFmpeg/blob/master/libavformat/asf.c
|
|
16
|
+
*/
|
|
17
|
+
class GUID {
|
|
18
|
+
constructor(str) {
|
|
19
|
+
this.str = str;
|
|
20
|
+
}
|
|
21
|
+
static fromBin(bin, offset = 0) {
|
|
22
|
+
return new GUID(this.decode(bin, offset));
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Decode GUID in format like "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
26
|
+
* @param objectId Binary GUID
|
|
27
|
+
* @param offset Read offset in bytes, default 0
|
|
28
|
+
* @returns GUID as dashed hexadecimal representation
|
|
29
|
+
*/
|
|
30
|
+
static decode(objectId, offset = 0) {
|
|
31
|
+
const guid = objectId.readUInt32LE(offset).toString(16) + "-" +
|
|
32
|
+
objectId.readUInt16LE(offset + 4).toString(16) + "-" +
|
|
33
|
+
objectId.readUInt16LE(offset + 6).toString(16) + "-" +
|
|
34
|
+
objectId.readUInt16BE(offset + 8).toString(16) + "-" +
|
|
35
|
+
objectId.slice(offset + 10, offset + 16).toString('hex');
|
|
36
|
+
return guid.toUpperCase();
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Decode stream type
|
|
40
|
+
* @param mediaType Media type GUID
|
|
41
|
+
* @returns Media type
|
|
42
|
+
*/
|
|
43
|
+
static decodeMediaType(mediaType) {
|
|
44
|
+
switch (mediaType.str) {
|
|
45
|
+
case GUID.AudioMedia.str: return 'audio';
|
|
46
|
+
case GUID.VideoMedia.str: return 'video';
|
|
47
|
+
case GUID.CommandMedia.str: return 'command';
|
|
48
|
+
case GUID.Degradable_JPEG_Media.str: return 'degradable-jpeg';
|
|
49
|
+
case GUID.FileTransferMedia.str: return 'file-transfer';
|
|
50
|
+
case GUID.BinaryMedia.str: return 'binary';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Encode GUID
|
|
55
|
+
* @param guid GUID like: "B503BF5F-2EA9-CF11-8EE3-00C00C205365"
|
|
56
|
+
* @returns Encoded Binary GUID
|
|
57
|
+
*/
|
|
58
|
+
static encode(str) {
|
|
59
|
+
const bin = Buffer.alloc(16);
|
|
60
|
+
bin.writeUInt32LE(parseInt(str.slice(0, 8), 16), 0);
|
|
61
|
+
bin.writeUInt16LE(parseInt(str.slice(9, 13), 16), 4);
|
|
62
|
+
bin.writeUInt16LE(parseInt(str.slice(14, 18), 16), 6);
|
|
63
|
+
Buffer.from(str.slice(19, 23), "hex").copy(bin, 8);
|
|
64
|
+
Buffer.from(str.slice(24), "hex").copy(bin, 10);
|
|
65
|
+
return bin;
|
|
66
|
+
}
|
|
67
|
+
equals(guid) {
|
|
68
|
+
return this.str === guid.str;
|
|
69
|
+
}
|
|
70
|
+
toBin() {
|
|
71
|
+
return GUID.encode(this.str);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
exports.default = GUID;
|
|
75
|
+
// 10.1 Top-level ASF object GUIDs
|
|
76
|
+
GUID.HeaderObject = new GUID("75B22630-668E-11CF-A6D9-00AA0062CE6C");
|
|
77
|
+
GUID.DataObject = new GUID("75B22636-668E-11CF-A6D9-00AA0062CE6C");
|
|
78
|
+
GUID.SimpleIndexObject = new GUID("33000890-E5B1-11CF-89F4-00A0C90349CB");
|
|
79
|
+
GUID.IndexObject = new GUID("D6E229D3-35DA-11D1-9034-00A0C90349BE");
|
|
80
|
+
GUID.MediaObjectIndexObject = new GUID("FEB103F8-12AD-4C64-840F-2A1D2F7AD48C");
|
|
81
|
+
GUID.TimecodeIndexObject = new GUID("3CB73FD0-0C4A-4803-953D-EDF7B6228F0C");
|
|
82
|
+
// 10.2 Header Object GUIDs
|
|
83
|
+
GUID.FilePropertiesObject = new GUID("8CABDCA1-A947-11CF-8EE4-00C00C205365");
|
|
84
|
+
GUID.StreamPropertiesObject = new GUID("B7DC0791-A9B7-11CF-8EE6-00C00C205365");
|
|
85
|
+
GUID.HeaderExtensionObject = new GUID("5FBF03B5-A92E-11CF-8EE3-00C00C205365");
|
|
86
|
+
GUID.CodecListObject = new GUID("86D15240-311D-11D0-A3A4-00A0C90348F6");
|
|
87
|
+
GUID.ScriptCommandObject = new GUID("1EFB1A30-0B62-11D0-A39B-00A0C90348F6");
|
|
88
|
+
GUID.MarkerObject = new GUID("F487CD01-A951-11CF-8EE6-00C00C205365");
|
|
89
|
+
GUID.BitrateMutualExclusionObject = new GUID("D6E229DC-35DA-11D1-9034-00A0C90349BE");
|
|
90
|
+
GUID.ErrorCorrectionObject = new GUID("75B22635-668E-11CF-A6D9-00AA0062CE6C");
|
|
91
|
+
GUID.ContentDescriptionObject = new GUID("75B22633-668E-11CF-A6D9-00AA0062CE6C");
|
|
92
|
+
GUID.ExtendedContentDescriptionObject = new GUID("D2D0A440-E307-11D2-97F0-00A0C95EA850");
|
|
93
|
+
GUID.ContentBrandingObject = new GUID("2211B3FA-BD23-11D2-B4B7-00A0C955FC6E");
|
|
94
|
+
GUID.StreamBitratePropertiesObject = new GUID("7BF875CE-468D-11D1-8D82-006097C9A2B2");
|
|
95
|
+
GUID.ContentEncryptionObject = new GUID("2211B3FB-BD23-11D2-B4B7-00A0C955FC6E");
|
|
96
|
+
GUID.ExtendedContentEncryptionObject = new GUID("298AE614-2622-4C17-B935-DAE07EE9289C");
|
|
97
|
+
GUID.DigitalSignatureObject = new GUID("2211B3FC-BD23-11D2-B4B7-00A0C955FC6E");
|
|
98
|
+
GUID.PaddingObject = new GUID("1806D474-CADF-4509-A4BA-9AABCB96AAE8");
|
|
99
|
+
// 10.3 Header Extension Object GUIDs
|
|
100
|
+
GUID.ExtendedStreamPropertiesObject = new GUID("14E6A5CB-C672-4332-8399-A96952065B5A");
|
|
101
|
+
GUID.AdvancedMutualExclusionObject = new GUID("A08649CF-4775-4670-8A16-6E35357566CD");
|
|
102
|
+
GUID.GroupMutualExclusionObject = new GUID("D1465A40-5A79-4338-B71B-E36B8FD6C249");
|
|
103
|
+
GUID.StreamPrioritizationObject = new GUID("D4FED15B-88D3-454F-81F0-ED5C45999E24");
|
|
104
|
+
GUID.BandwidthSharingObject = new GUID("A69609E6-517B-11D2-B6AF-00C04FD908E9");
|
|
105
|
+
GUID.LanguageListObject = new GUID("7C4346A9-EFE0-4BFC-B229-393EDE415C85");
|
|
106
|
+
GUID.MetadataObject = new GUID("C5F8CBEA-5BAF-4877-8467-AA8C44FA4CCA");
|
|
107
|
+
GUID.MetadataLibraryObject = new GUID("44231C94-9498-49D1-A141-1D134E457054");
|
|
108
|
+
GUID.IndexParametersObject = new GUID("D6E229DF-35DA-11D1-9034-00A0C90349BE");
|
|
109
|
+
GUID.MediaObjectIndexParametersObject = new GUID("6B203BAD-3F11-48E4-ACA8-D7613DE2CFA7");
|
|
110
|
+
GUID.TimecodeIndexParametersObject = new GUID("F55E496D-9797-4B5D-8C8B-604DFE9BFB24");
|
|
111
|
+
GUID.CompatibilityObject = new GUID("26F18B5D-4584-47EC-9F5F-0E651F0452C9");
|
|
112
|
+
GUID.AdvancedContentEncryptionObject = new GUID("43058533-6981-49E6-9B74-AD12CB86D58C");
|
|
113
|
+
// 10.4 Stream Properties Object Stream Type GUIDs
|
|
114
|
+
GUID.AudioMedia = new GUID("F8699E40-5B4D-11CF-A8FD-00805F5C442B");
|
|
115
|
+
GUID.VideoMedia = new GUID("BC19EFC0-5B4D-11CF-A8FD-00805F5C442B");
|
|
116
|
+
GUID.CommandMedia = new GUID("59DACFC0-59E6-11D0-A3AC-00A0C90348F6");
|
|
117
|
+
GUID.JFIF_Media = new GUID("B61BE100-5B4E-11CF-A8FD-00805F5C442B");
|
|
118
|
+
GUID.Degradable_JPEG_Media = new GUID("35907DE0-E415-11CF-A917-00805F5C442B");
|
|
119
|
+
GUID.FileTransferMedia = new GUID("91BD222C-F21C-497A-8B6D-5AA86BFC0185");
|
|
120
|
+
GUID.BinaryMedia = new GUID("3AFB65E2-47EF-40F2-AC2C-70A90D71D343");
|
|
121
|
+
GUID.ASF_Index_Placeholder_Object = new GUID("D9AADE20-7C17-4F9C-BC28-8555DD98E2A2");
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { ITokenizer } from 'strtok3/lib/core';
|
|
2
|
-
import { ITokenParser } from '../ParserFactory';
|
|
3
|
-
import { IOptions, IPrivateOptions } from '../type';
|
|
4
|
-
import { INativeMetadataCollector } from './MetadataCollector';
|
|
5
|
-
export declare abstract class BasicParser implements ITokenParser {
|
|
6
|
-
protected metadata: INativeMetadataCollector;
|
|
7
|
-
protected tokenizer: ITokenizer;
|
|
8
|
-
protected options: IPrivateOptions;
|
|
9
|
-
/**
|
|
10
|
-
* Initialize parser with output (metadata), input (tokenizer) & parsing options (options).
|
|
11
|
-
* @param {INativeMetadataCollector} metadata Output
|
|
12
|
-
* @param {ITokenizer} tokenizer Input
|
|
13
|
-
* @param {IOptions} options Parsing options
|
|
14
|
-
*/
|
|
15
|
-
init(metadata: INativeMetadataCollector, tokenizer: ITokenizer, options: IOptions): ITokenParser;
|
|
16
|
-
abstract parse(): any;
|
|
17
|
-
}
|
|
1
|
+
import { ITokenizer } from 'strtok3/lib/core';
|
|
2
|
+
import { ITokenParser } from '../ParserFactory';
|
|
3
|
+
import { IOptions, IPrivateOptions } from '../type';
|
|
4
|
+
import { INativeMetadataCollector } from './MetadataCollector';
|
|
5
|
+
export declare abstract class BasicParser implements ITokenParser {
|
|
6
|
+
protected metadata: INativeMetadataCollector;
|
|
7
|
+
protected tokenizer: ITokenizer;
|
|
8
|
+
protected options: IPrivateOptions;
|
|
9
|
+
/**
|
|
10
|
+
* Initialize parser with output (metadata), input (tokenizer) & parsing options (options).
|
|
11
|
+
* @param {INativeMetadataCollector} metadata Output
|
|
12
|
+
* @param {ITokenizer} tokenizer Input
|
|
13
|
+
* @param {IOptions} options Parsing options
|
|
14
|
+
*/
|
|
15
|
+
init(metadata: INativeMetadataCollector, tokenizer: ITokenizer, options: IOptions): ITokenParser;
|
|
16
|
+
abstract parse(): any;
|
|
17
|
+
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BasicParser = void 0;
|
|
4
|
-
class BasicParser {
|
|
5
|
-
/**
|
|
6
|
-
* Initialize parser with output (metadata), input (tokenizer) & parsing options (options).
|
|
7
|
-
* @param {INativeMetadataCollector} metadata Output
|
|
8
|
-
* @param {ITokenizer} tokenizer Input
|
|
9
|
-
* @param {IOptions} options Parsing options
|
|
10
|
-
*/
|
|
11
|
-
init(metadata, tokenizer, options) {
|
|
12
|
-
this.metadata = metadata;
|
|
13
|
-
this.tokenizer = tokenizer;
|
|
14
|
-
this.options = options;
|
|
15
|
-
return this;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.BasicParser = BasicParser;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BasicParser = void 0;
|
|
4
|
+
class BasicParser {
|
|
5
|
+
/**
|
|
6
|
+
* Initialize parser with output (metadata), input (tokenizer) & parsing options (options).
|
|
7
|
+
* @param {INativeMetadataCollector} metadata Output
|
|
8
|
+
* @param {ITokenizer} tokenizer Input
|
|
9
|
+
* @param {IOptions} options Parsing options
|
|
10
|
+
*/
|
|
11
|
+
init(metadata, tokenizer, options) {
|
|
12
|
+
this.metadata = metadata;
|
|
13
|
+
this.tokenizer = tokenizer;
|
|
14
|
+
this.options = options;
|
|
15
|
+
return this;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.BasicParser = BasicParser;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { INativeTagMap, TagType } from './GenericTagTypes';
|
|
2
|
-
import { CommonTagMapper } from './GenericTagMapper';
|
|
3
|
-
export declare class CaseInsensitiveTagMap extends CommonTagMapper {
|
|
4
|
-
constructor(tagTypes: TagType[], tagMap: INativeTagMap);
|
|
5
|
-
/**
|
|
6
|
-
* @tag Native header tag
|
|
7
|
-
* @return common tag name (alias)
|
|
8
|
-
*/
|
|
9
|
-
protected getCommonName(tag: string): import("./GenericTagTypes").GenericTagId;
|
|
10
|
-
}
|
|
1
|
+
import { INativeTagMap, TagType } from './GenericTagTypes';
|
|
2
|
+
import { CommonTagMapper } from './GenericTagMapper';
|
|
3
|
+
export declare class CaseInsensitiveTagMap extends CommonTagMapper {
|
|
4
|
+
constructor(tagTypes: TagType[], tagMap: INativeTagMap);
|
|
5
|
+
/**
|
|
6
|
+
* @tag Native header tag
|
|
7
|
+
* @return common tag name (alias)
|
|
8
|
+
*/
|
|
9
|
+
protected getCommonName(tag: string): import("./GenericTagTypes").GenericTagId;
|
|
10
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CaseInsensitiveTagMap = void 0;
|
|
4
|
-
const GenericTagMapper_1 = require("./GenericTagMapper");
|
|
5
|
-
class CaseInsensitiveTagMap extends GenericTagMapper_1.CommonTagMapper {
|
|
6
|
-
constructor(tagTypes, tagMap) {
|
|
7
|
-
const upperCaseMap = {};
|
|
8
|
-
for (const tag of Object.keys(tagMap)) {
|
|
9
|
-
upperCaseMap[tag.toUpperCase()] = tagMap[tag];
|
|
10
|
-
}
|
|
11
|
-
super(tagTypes, upperCaseMap);
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* @tag Native header tag
|
|
15
|
-
* @return common tag name (alias)
|
|
16
|
-
*/
|
|
17
|
-
getCommonName(tag) {
|
|
18
|
-
return this.tagMap[tag.toUpperCase()];
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.CaseInsensitiveTagMap = CaseInsensitiveTagMap;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CaseInsensitiveTagMap = void 0;
|
|
4
|
+
const GenericTagMapper_1 = require("./GenericTagMapper");
|
|
5
|
+
class CaseInsensitiveTagMap extends GenericTagMapper_1.CommonTagMapper {
|
|
6
|
+
constructor(tagTypes, tagMap) {
|
|
7
|
+
const upperCaseMap = {};
|
|
8
|
+
for (const tag of Object.keys(tagMap)) {
|
|
9
|
+
upperCaseMap[tag.toUpperCase()] = tagMap[tag];
|
|
10
|
+
}
|
|
11
|
+
super(tagTypes, upperCaseMap);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* @tag Native header tag
|
|
15
|
+
* @return common tag name (alias)
|
|
16
|
+
*/
|
|
17
|
+
getCommonName(tag) {
|
|
18
|
+
return this.tagMap[tag.toUpperCase()];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.CaseInsensitiveTagMap = CaseInsensitiveTagMap;
|
|
22
22
|
//# sourceMappingURL=CaseInsensitiveTagMap.js.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { IGenericTag, TagType } from './GenericTagTypes';
|
|
2
|
-
import { IGenericTagMapper } from './GenericTagMapper';
|
|
3
|
-
import { ITag } from '../type';
|
|
4
|
-
import { INativeMetadataCollector } from './MetadataCollector';
|
|
5
|
-
export declare class CombinedTagMapper {
|
|
6
|
-
tagMappers: {
|
|
7
|
-
[index: string]: IGenericTagMapper;
|
|
8
|
-
};
|
|
9
|
-
constructor();
|
|
10
|
-
/**
|
|
11
|
-
* Convert native to generic (common) tags
|
|
12
|
-
* @param tagType Originating tag format
|
|
13
|
-
* @param tag Native tag to map to a generic tag id
|
|
14
|
-
* @param warnings
|
|
15
|
-
* @return Generic tag result (output of this function)
|
|
16
|
-
*/
|
|
17
|
-
mapTag(tagType: TagType, tag: ITag, warnings: INativeMetadataCollector): IGenericTag;
|
|
18
|
-
private registerTagMapper;
|
|
19
|
-
}
|
|
1
|
+
import { IGenericTag, TagType } from './GenericTagTypes';
|
|
2
|
+
import { IGenericTagMapper } from './GenericTagMapper';
|
|
3
|
+
import { ITag } from '../type';
|
|
4
|
+
import { INativeMetadataCollector } from './MetadataCollector';
|
|
5
|
+
export declare class CombinedTagMapper {
|
|
6
|
+
tagMappers: {
|
|
7
|
+
[index: string]: IGenericTagMapper;
|
|
8
|
+
};
|
|
9
|
+
constructor();
|
|
10
|
+
/**
|
|
11
|
+
* Convert native to generic (common) tags
|
|
12
|
+
* @param tagType Originating tag format
|
|
13
|
+
* @param tag Native tag to map to a generic tag id
|
|
14
|
+
* @param warnings
|
|
15
|
+
* @return Generic tag result (output of this function)
|
|
16
|
+
*/
|
|
17
|
+
mapTag(tagType: TagType, tag: ITag, warnings: INativeMetadataCollector): IGenericTag;
|
|
18
|
+
private registerTagMapper;
|
|
19
|
+
}
|