Рефакторинг

This commit is contained in:
saber-nyan 2019-11-26 18:17:12 +03:00
parent 07586b33d3
commit d88bf17c30
No known key found for this signature in database
GPG Key ID: 7B069E9C295E6B4A

View File

@ -37,7 +37,7 @@
}, },
stringdata() { stringdata() {
const dataString = atob(this.packet.content); const dataString = atob(this.packet.content);
const dump = this.base64ToHtml(dataString); const dump = this.highlightPatterns(dataString);
return this.escapeHtml(dump) return this.escapeHtml(dump)
.split('\n') .split('\n')
.join('<br>'); .join('<br>');
@ -87,11 +87,11 @@
return $1 ? $1 : entityMap[$0]; return $1 ? $1 : entityMap[$0];
}); });
}, },
base64ToHtml(raw) { // FIXME: Пересекающиеся паттерны приводят к неожиданным результатам highlightPatterns(raw) { // FIXME: Пересекающиеся паттерны приводят к неожиданным результатам
const patterns = this.$store.state.patterns.reduce((obj, item) => { const patterns = this.$store.state.patterns.reduce((obj, item) => {
obj[item.id] = item; obj[item.id] = item;
return obj; return obj;
}, {}); }, {}); // Array to object
let offset = 0; let offset = 0;
this.packet.matches this.packet.matches
.sort((a, b) => a.startPosition - b.startPosition) .sort((a, b) => a.startPosition - b.startPosition)