forked from mirrors/bookwyrm
Fixes one option trie case
This commit is contained in:
parent
f6d6285009
commit
4202498442
1 changed files with 28 additions and 7 deletions
|
@ -58,15 +58,17 @@
|
||||||
function searchTrie(trie) {
|
function searchTrie(trie) {
|
||||||
const options = Object.values(trie);
|
const options = Object.values(trie);
|
||||||
|
|
||||||
if (!options.length) {
|
if (typeof trie == 'string') {
|
||||||
return;
|
return [trie];
|
||||||
} else if (typeof options[0] == 'string') {
|
|
||||||
return [options[0]];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return options.map(option => {
|
return options.map(option => {
|
||||||
const newTrie = option;
|
const newTrie = option;
|
||||||
|
|
||||||
|
if (typeof newTrie == 'string') {
|
||||||
|
return [newTrie];
|
||||||
|
}
|
||||||
|
|
||||||
return searchTrie(newTrie);
|
return searchTrie(newTrie);
|
||||||
}).reduce((prev, next) => prev.concat(next));
|
}).reduce((prev, next) => prev.concat(next));
|
||||||
}
|
}
|
||||||
|
@ -79,13 +81,32 @@
|
||||||
})();
|
})();
|
||||||
|
|
||||||
const mimetypeTrie = {
|
const mimetypeTrie = {
|
||||||
|
"a": {
|
||||||
|
"a": {
|
||||||
|
"c": "AAC",
|
||||||
|
},
|
||||||
|
"z": {
|
||||||
|
"w": "AZW",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"d": "Daisy",
|
||||||
|
"e": "ePub",
|
||||||
|
"f": "FLAC",
|
||||||
|
"h": "HTML",
|
||||||
|
"m": {
|
||||||
|
"4": {
|
||||||
|
"a": "M4A",
|
||||||
|
"b": "M4B",
|
||||||
|
},
|
||||||
|
"o": "MOBI",
|
||||||
|
"p": "MP3",
|
||||||
|
},
|
||||||
|
"o": "OGG",
|
||||||
"p": {
|
"p": {
|
||||||
"d": {
|
"d": {
|
||||||
"f": "PDF",
|
"f": "PDF",
|
||||||
},
|
},
|
||||||
"n": {
|
"l": "Plaintext",
|
||||||
"g": "PNG",
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue