1
0
Fork 0

Merge pull request #64 from romanrizzi/debounce_wrapper

Use the new discourseDebounce function wrapper.
Dieser Commit ist enthalten in:
Angus McLeod 2021-01-04 14:24:08 +08:00 committet von GitHub
Commit 7389afe239
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 4AEE18F83AFDEB23
2 geänderte Dateien mit 21 neuen und 16 gelöschten Zeilen

Datei anzeigen

@ -14,7 +14,6 @@
//= require discourse/app/lib/notification-levels //= require discourse/app/lib/notification-levels
//= require discourse/app/lib/computed //= require discourse/app/lib/computed
//= require discourse/app/lib/user-search //= require discourse/app/lib/user-search
//= require discourse/app/lib/debounce
//= require discourse/app/lib/text //= require discourse/app/lib/text
//= require discourse/app/lib/formatter //= require discourse/app/lib/formatter
//= require discourse/app/lib/quote //= require discourse/app/lib/quote

Datei anzeigen

@ -1,6 +1,6 @@
import { CANCELLED_STATUS } from 'discourse/lib/autocomplete'; import { CANCELLED_STATUS } from 'discourse/lib/autocomplete';
import { debounce } from "@ember/runloop";
import getUrl from 'discourse-common/lib/get-url'; import getUrl from 'discourse-common/lib/get-url';
import discourseDebounce from "discourse/lib/debounce";
var cache = {}, var cache = {},
cacheTopicId, cacheTopicId,
@ -40,8 +40,6 @@ function performSearch(term, topicId, includeGroups, includeMentionableGroups, i
}); });
} }
var debouncedSearch = discourseDebounce(performSearch, 300);
function organizeResults(r, options) { function organizeResults(r, options) {
if (r === CANCELLED_STATUS) { return r; } if (r === CANCELLED_STATUS) { return r; }
@ -119,17 +117,25 @@ export default function userSearch(options) {
resolve(CANCELLED_STATUS); resolve(CANCELLED_STATUS);
}, 5000); }, 5000);
debouncedSearch(term, // TODO: Use discouseDebounce after it is available on stable.
topicId, debounce(
includeGroups, this,
includeMentionableGroups, function() {
includeMessageableGroups, performSearch(
allowedUsers, term,
group, topicId,
function(r) { includeGroups,
clearTimeout(clearPromise); includeMentionableGroups,
resolve(organizeResults(r, options)); includeMessageableGroups,
}); allowedUsers,
group,
function(r) {
clearTimeout(clearPromise);
resolve(organizeResults(r, options));
}
)
},
300
)
}); });
} }