[#478] preserve multiple selection order

This commit is contained in:
Gani Georgiev committed 2022-09-18 00:29:32 +03:00
1 parent 9cf89870e7
commit 978fdd3ce7
13 files changed
+137 -116

No files matched your search

+14 -4
View File
@@ -41,14 +41,22 @@
filters.push(`id="${id}"`);
}
selected = await ApiClient.users.getFullList(100, {
sort: "-created",
const result = await ApiClient.users.getFullList(100, {
filter: filters.join("||"),
$cancelKey: uniqueId + "loadSelected",
});
// preserve selected order
selected = [];
for (const id of selectedIds) {
const item = CommonHelper.findByKey(result, "id", id);
if (item) {
selected.push(item);
}
}
// add the selected models to the list (if not already)
list = CommonHelper.filterDuplicatesByKey(list.concat(selected));
list = CommonHelper.filterDuplicatesByKey(selected.concat(list));
} catch (err) {
ApiClient.errorResponseHandler(err);
}
@@ -71,7 +79,9 @@
list = [];
}
list = CommonHelper.filterDuplicatesByKey(list.concat(result.items));
list = CommonHelper.filterDuplicatesByKey(
CommonHelper.toArray(selected).concat(list, result.items)
);
currentPage = result.page;
totalItems = result.totalItems;
} catch (err) {