enter key search
This commit is contained in:
parent
ac943195cf
commit
38b4197395
|
@ -13,49 +13,97 @@
|
||||||
|
|
||||||
<div class="_gaps">
|
<div class="_gaps">
|
||||||
<div :class="[[spMode ? $style.searchAreaSp : $style.searchArea]]">
|
<div :class="[[spMode ? $style.searchAreaSp : $style.searchArea]]">
|
||||||
<MkInput v-model="queryName" :debounce="true" type="search" autocapitalize="off" class="col1 row1">
|
<MkInput
|
||||||
|
v-model="queryName"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col1 row1"
|
||||||
|
@enter="onSearchRequest"
|
||||||
|
>
|
||||||
<template #label>name</template>
|
<template #label>name</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkInput
|
<MkInput
|
||||||
v-model="queryCategory" :debounce="true" type="search" autocapitalize="off" class="col2 row1"
|
v-model="queryCategory"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col2 row1"
|
||||||
|
@enter="onSearchRequest"
|
||||||
>
|
>
|
||||||
<template #label>category</template>
|
<template #label>category</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkInput
|
<MkInput
|
||||||
v-model="queryAlias" :debounce="true" type="search" autocapitalize="off" class="col3 row1"
|
v-model="queryAlias"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col3 row1"
|
||||||
|
@enter="onSearchRequest"
|
||||||
>
|
>
|
||||||
<template #label>alias</template>
|
<template #label>alias</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
|
|
||||||
<MkInput
|
<MkInput
|
||||||
v-model="queryType" :debounce="true" type="search" autocapitalize="off" class="col1 row2"
|
v-model="queryType"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col1 row2"
|
||||||
|
@enter="onSearchRequest"
|
||||||
>
|
>
|
||||||
<template #label>type</template>
|
<template #label>type</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkInput
|
<MkInput
|
||||||
v-model="queryLicense" :debounce="true" type="search" autocapitalize="off" class="col2 row2"
|
v-model="queryLicense"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col2 row2"
|
||||||
|
@enter="onSearchRequest"
|
||||||
>
|
>
|
||||||
<template #label>license</template>
|
<template #label>license</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkSelect v-model="querySensitive" class="col3 row2">
|
<MkSelect
|
||||||
|
v-model="querySensitive"
|
||||||
|
class="col3 row2"
|
||||||
|
>
|
||||||
<template #label>sensitive</template>
|
<template #label>sensitive</template>
|
||||||
<option :value="null">-</option>
|
<option :value="null">-</option>
|
||||||
<option :value="true">true</option>
|
<option :value="true">true</option>
|
||||||
<option :value="false">false</option>
|
<option :value="false">false</option>
|
||||||
</MkSelect>
|
</MkSelect>
|
||||||
|
|
||||||
<MkSelect v-model="queryLocalOnly" class="col1 row3">
|
<MkSelect
|
||||||
|
v-model="queryLocalOnly"
|
||||||
|
class="col1 row3"
|
||||||
|
>
|
||||||
<template #label>localOnly</template>
|
<template #label>localOnly</template>
|
||||||
<option :value="null">-</option>
|
<option :value="null">-</option>
|
||||||
<option :value="true">true</option>
|
<option :value="true">true</option>
|
||||||
<option :value="false">false</option>
|
<option :value="false">false</option>
|
||||||
</MkSelect>
|
</MkSelect>
|
||||||
<MkInput v-model="queryUpdatedAtFrom" :debounce="true" type="date" autocapitalize="off" class="col2 row3">
|
<MkInput
|
||||||
|
v-model="queryUpdatedAtFrom"
|
||||||
|
:debounce="true"
|
||||||
|
type="date"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col2 row3"
|
||||||
|
@enter="onSearchRequest"
|
||||||
|
>
|
||||||
<template #label>updatedAt(from)</template>
|
<template #label>updatedAt(from)</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkInput v-model="queryUpdatedAtTo" :debounce="true" type="date" autocapitalize="off" class="col3 row3">
|
<MkInput
|
||||||
|
v-model="queryUpdatedAtTo"
|
||||||
|
:debounce="true"
|
||||||
|
type="date"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col3 row3"
|
||||||
|
@enter="onSearchRequest"
|
||||||
|
>
|
||||||
<template #label>updatedAt(to)</template>
|
<template #label>updatedAt(to)</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
|
|
||||||
<MkInput
|
<MkInput
|
||||||
v-model="queryRolesText"
|
v-model="queryRolesText"
|
||||||
:debounce="true"
|
:debounce="true"
|
||||||
|
@ -92,7 +140,7 @@
|
||||||
</MkFolder>
|
</MkFolder>
|
||||||
|
|
||||||
<div :class="[[spMode ? $style.searchButtonsSp : $style.searchButtons]]">
|
<div :class="[[spMode ? $style.searchButtonsSp : $style.searchButtons]]">
|
||||||
<MkButton primary @click="onSearchButtonClicked">
|
<MkButton primary @click="onSearchRequest">
|
||||||
{{ i18n.ts.search }}
|
{{ i18n.ts.search }}
|
||||||
</MkButton>
|
</MkButton>
|
||||||
<MkButton @click="onQueryResetButtonClicked">
|
<MkButton @click="onQueryResetButtonClicked">
|
||||||
|
@ -502,7 +550,7 @@ function onAddSortOrderButtonClicked(ev: MouseEvent) {
|
||||||
os.contextMenu(menuItems, ev);
|
os.contextMenu(menuItems, ev);
|
||||||
}
|
}
|
||||||
|
|
||||||
async function onSearchButtonClicked() {
|
async function onSearchRequest() {
|
||||||
await refreshCustomEmojis();
|
await refreshCustomEmojis();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,16 +10,44 @@
|
||||||
|
|
||||||
<div class="_gaps">
|
<div class="_gaps">
|
||||||
<div :class="[[spMode ? $style.searchAreaSp : $style.searchArea]]">
|
<div :class="[[spMode ? $style.searchAreaSp : $style.searchArea]]">
|
||||||
<MkInput v-model="queryName" :debounce="true" type="search" autocapitalize="off" class="col1 row1">
|
<MkInput
|
||||||
|
v-model="queryName"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col1 row1"
|
||||||
|
@enter="onSearchRequest"
|
||||||
|
>
|
||||||
<template #label>name</template>
|
<template #label>name</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkInput v-model="queryHost" :debounce="true" type="search" autocapitalize="off" class="col2 row1">
|
<MkInput
|
||||||
|
v-model="queryHost"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col2 row1"
|
||||||
|
@enter="onSearchRequest"
|
||||||
|
>
|
||||||
<template #label>host</template>
|
<template #label>host</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkInput v-model="queryUri" :debounce="true" type="search" autocapitalize="off" class="col1 row2">
|
<MkInput
|
||||||
|
v-model="queryUri"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col1 row2"
|
||||||
|
@enter="onSearchRequest"
|
||||||
|
>
|
||||||
<template #label>uri</template>
|
<template #label>uri</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
<MkInput v-model="queryPublicUrl" :debounce="true" type="search" autocapitalize="off" class="col2 row2">
|
<MkInput
|
||||||
|
v-model="queryPublicUrl"
|
||||||
|
:debounce="true"
|
||||||
|
type="search"
|
||||||
|
autocapitalize="off"
|
||||||
|
class="col2 row2"
|
||||||
|
@enter="onSearchRequest"
|
||||||
|
>
|
||||||
<template #label>publicUrl</template>
|
<template #label>publicUrl</template>
|
||||||
</MkInput>
|
</MkInput>
|
||||||
</div>
|
</div>
|
||||||
|
@ -46,7 +74,7 @@
|
||||||
</MkFolder>
|
</MkFolder>
|
||||||
|
|
||||||
<div :class="[[spMode ? $style.searchButtonsSp : $style.searchButtons]]">
|
<div :class="[[spMode ? $style.searchButtonsSp : $style.searchButtons]]">
|
||||||
<MkButton primary @click="onSearchButtonClicked">
|
<MkButton primary @click="onSearchRequest">
|
||||||
{{ i18n.ts.search }}
|
{{ i18n.ts.search }}
|
||||||
</MkButton>
|
</MkButton>
|
||||||
<MkButton @click="onQueryResetButtonClicked">
|
<MkButton @click="onQueryResetButtonClicked">
|
||||||
|
@ -97,7 +125,6 @@ import { GridSetting } from '@/components/grid/grid.js';
|
||||||
import MkTagItem from '@/components/MkTagItem.vue';
|
import MkTagItem from '@/components/MkTagItem.vue';
|
||||||
import { deviceKind } from '@/scripts/device-kind.js';
|
import { deviceKind } from '@/scripts/device-kind.js';
|
||||||
import { MenuItem } from '@/types/menu.js';
|
import { MenuItem } from '@/types/menu.js';
|
||||||
import MkTab from '@/components/MkTab.vue';
|
|
||||||
import MkPagingButtons from '@/components/MkPagingButtons.vue';
|
import MkPagingButtons from '@/components/MkPagingButtons.vue';
|
||||||
|
|
||||||
type GridItem = {
|
type GridItem = {
|
||||||
|
@ -209,7 +236,7 @@ function onAddSortOrderButtonClicked(ev: MouseEvent) {
|
||||||
os.contextMenu(menuItems, ev);
|
os.contextMenu(menuItems, ev);
|
||||||
}
|
}
|
||||||
|
|
||||||
async function onSearchButtonClicked() {
|
async function onSearchRequest() {
|
||||||
await refreshCustomEmojis();
|
await refreshCustomEmojis();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -220,14 +247,6 @@ function onQueryResetButtonClicked() {
|
||||||
queryPublicUrl.value = null;
|
queryPublicUrl.value = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function onLatestButtonClicked() {
|
|
||||||
await refreshCustomEmojis();
|
|
||||||
}
|
|
||||||
|
|
||||||
async function onOldestButtonClicked() {
|
|
||||||
await refreshCustomEmojis();
|
|
||||||
}
|
|
||||||
|
|
||||||
async function onImportClicked() {
|
async function onImportClicked() {
|
||||||
const targets = gridItems.value.filter(it => it.checked);
|
const targets = gridItems.value.filter(it => it.checked);
|
||||||
await importEmojis(targets);
|
await importEmojis(targets);
|
||||||
|
@ -312,12 +331,18 @@ async function refreshCustomEmojis() {
|
||||||
currentPage.value = 1;
|
currentPage.value = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
const result = await misskeyApi('admin/emoji/v2/list', {
|
const result = await os.promiseDialog(
|
||||||
limit: 100,
|
misskeyApi('admin/emoji/v2/list', {
|
||||||
query: query,
|
limit: 100,
|
||||||
page: currentPage.value,
|
query: query,
|
||||||
sort: sortOrders.value.map(({ key, direction }) => ({ key: key as any, direction })),
|
page: currentPage.value,
|
||||||
});
|
sort: sortOrders.value.map(({ key, direction }) => ({ key: key as any, direction })),
|
||||||
|
}),
|
||||||
|
() => {
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
customEmojis.value = result.emojis;
|
customEmojis.value = result.emojis;
|
||||||
allPages.value = result.allPages;
|
allPages.value = result.allPages;
|
||||||
|
|
Loading…
Reference in New Issue