summaryrefslogtreecommitdiff
path: root/packages/backend/src/server
diff options
context:
space:
mode:
authorMarie <marie@kaifa.ch>2024-01-12 20:27:01 +0100
committerMarie <marie@kaifa.ch>2024-01-12 20:27:01 +0100
commitb20425b736331c8e5dbb66074ada50d82c1966cd (patch)
treea610f6cfd1b06ccf197db5768a76ebb00b2bc592 /packages/backend/src/server
parentmerge: upstream (diff)
parentemoji search: show closest match first #338 (diff)
downloadsharkey-b20425b736331c8e5dbb66074ada50d82c1966cd.tar.gz
sharkey-b20425b736331c8e5dbb66074ada50d82c1966cd.tar.bz2
sharkey-b20425b736331c8e5dbb66074ada50d82c1966cd.zip
merge: emoji search show closest match first (#351)
Fixes #338
Diffstat (limited to 'packages/backend/src/server')
-rw-r--r--packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts5
-rw-r--r--packages/backend/src/server/api/endpoints/admin/emoji/list.ts2
2 files changed, 4 insertions, 3 deletions
diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts b/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts
index f3e0c1ef1f..be4d165898 100644
--- a/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts
+++ b/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts
@@ -98,11 +98,12 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
}
if (ps.query) {
- q.andWhere('emoji.name like :query', { query: '%' + sqlLikeEscape(ps.query) + '%' });
+ q.andWhere('emoji.name like :query', { query: '%' + sqlLikeEscape(ps.query) + '%' })
+ .orderBy('length(emoji.name)', 'ASC');
}
const emojis = await q
- .orderBy('emoji.id', 'DESC')
+ .addOrderBy('emoji.id', 'DESC')
.limit(ps.limit)
.getMany();
diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/list.ts b/packages/backend/src/server/api/endpoints/admin/emoji/list.ts
index 59e87253f6..26b70587a8 100644
--- a/packages/backend/src/server/api/endpoints/admin/emoji/list.ts
+++ b/packages/backend/src/server/api/endpoints/admin/emoji/list.ts
@@ -91,7 +91,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
//q.andWhere('emoji.name ILIKE :q', { q: `%${ sqlLikeEscape(ps.query) }%` });
//const emojis = await q.limit(ps.limit).getMany();
- emojis = await q.getMany();
+ emojis = await q.orderBy('length(emoji.name)', 'ASC').getMany();
const queryarry = ps.query.match(/\:([a-z0-9_]*)\:/g);
if (queryarry) {