Code Duplication    Length = 8-12 lines in 5 locations

src/ID3Util.js 3 locations

@@ 202-213 (lines=12) @@
199
            dataLengthIndicator: !!(flagsSecondByte & 128)
200
        }
201
    }
202
    if(ID3Version === 4) {
203
        return {
204
            tagAlterPreservation: !!(flagsFirstByte & 64),
205
            fileAlterPreservation: !!(flagsFirstByte & 32),
206
            readOnly: !!(flagsFirstByte & 16),
207
            groupingIdentity: !!(flagsSecondByte & 64),
208
            compression: !!(flagsSecondByte & 8),
209
            encryption: !!(flagsSecondByte & 4),
210
            unsynchronisation: !!(flagsSecondByte & 2),
211
            dataLengthIndicator: !!(flagsSecondByte & 1)
212
        }
213
    }
214
    return {}
215
}
216
@@ 191-201 (lines=11) @@
188
    }
189
    const flagsFirstByte = header[8]
190
    const flagsSecondByte = header[9]
191
    if(ID3Version === 3) {
192
        return {
193
            tagAlterPreservation: !!(flagsFirstByte & 128),
194
            fileAlterPreservation: !!(flagsFirstByte & 64),
195
            readOnly: !!(flagsFirstByte & 32),
196
            compression: !!(flagsSecondByte & 128),
197
            encryption: !!(flagsSecondByte & 64),
198
            groupingIdentity: !!(flagsSecondByte & 32),
199
            dataLengthIndicator: !!(flagsSecondByte & 128)
200
        }
201
    }
202
    if(ID3Version === 4) {
203
        return {
204
            tagAlterPreservation: !!(flagsFirstByte & 64),
@@ 174-181 (lines=8) @@
171
            experimentalIndicator: !!(flagsByte & 32)
172
        }
173
    }
174
    if(version === 4) {
175
        return {
176
            unsynchronisation: !!(flagsByte & 128),
177
            extendedHeader: !!(flagsByte & 64),
178
            experimentalIndicator: !!(flagsByte & 32),
179
            footerPresent: !!(flagsByte & 16)
180
        }
181
    }
182
    return {}
183
}
184

src/ID3FrameHeader.js 2 locations

@@ 71-82 (lines=12) @@
68
            }
69
        }
70
71
        if(version === 4) {
72
            return {
73
                tagAlterPreservation: !!(statusFlag & 64),
74
                fileAlterPreservation: !!(statusFlag & 32),
75
                readOnly: !!(statusFlag & 16),
76
                groupingIdentity: !!(encodingFlag & 64),
77
                compression: !!(encodingFlag & 8),
78
                encryption: !!(encodingFlag & 4),
79
                unsynchronisation: !!(encodingFlag & 2),
80
                dataLengthIndicator: !!(encodingFlag & 1)
81
            }
82
        }
83
84
        return {}
85
    }
@@ 59-69 (lines=11) @@
56
            return {}
57
        }
58
59
        if(version === 3) {
60
            return {
61
                tagAlterPreservation: !!(statusFlag & 128),
62
                fileAlterPreservation: !!(statusFlag & 64),
63
                readOnly: !!(statusFlag & 32),
64
                compression: !!(encodingFlag & 128),
65
                encryption: !!(encodingFlag & 64),
66
                groupingIdentity: !!(encodingFlag & 32),
67
                dataLengthIndicator: !!(encodingFlag & 128)
68
            }
69
        }
70
71
        if(version === 4) {
72
            return {