Sort deck and model names in Anki card settings (#956)

This commit is contained in:
toasted-nutbread 2020-10-25 19:04:59 -04:00 committed by GitHub
parent defd7402cf
commit 92c083ee9f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -36,6 +36,7 @@ class AnkiController {
'clipboard-image',
'clipboard-text'
]);
this._stringComparer = new Intl.Collator(); // Locale does not matter
this._ankiOptions = null;
this._getAnkiDataPromise = null;
this._ankiErrorContainer = null;
@ -210,6 +211,7 @@ class AnkiController {
async _getDeckNames() {
try {
const result = await this._ankiConnect.getDeckNames();
this._sortStringArray(result);
return [result, null];
} catch (e) {
return [[], e];
@ -219,6 +221,7 @@ class AnkiController {
async _getModelNames() {
try {
const result = await this._ankiConnect.getModelNames();
this._sortStringArray(result);
return [result, null];
} catch (e) {
return [[], e];
@ -270,6 +273,11 @@ class AnkiController {
}
return markers;
}
_sortStringArray(array) {
const stringComparer = this._stringComparer;
array.sort((a, b) => stringComparer.compare(a, b));
}
}
class AnkiCardController {