Merge pull request 'develop' (#9098) from develop into main

Reviewed-on: https://codeberg.org/thatonecalculator/calckey/pulls/9098
This commit is contained in:
Kainoa Kanter 2022-11-10 05:48:03 +01:00
commit 047b71a68c
8 changed files with 44 additions and 33 deletions

View file

@ -180,7 +180,7 @@ pm2 start "NODE_ENV=production yarn start" --name Calckey
### 🐋 Prebuilt Docker image
```sh
docker pull thatonecalculator:calckey
docker pull thatonecalculator/calckey
docker up -d
```

View file

@ -1,6 +1,6 @@
{
"name": "calckey",
"version": "12.119.0-calc.12",
"version": "12.119.0-calc.12.5",
"codename": "aqua",
"repository": {
"type": "git",

View file

@ -2,14 +2,14 @@ import { IsNull } from 'typeorm';
import { Users } from '@/models/index.js';
import { fetchMeta } from '@/misc/fetch-meta.js';
import * as Acct from '@/misc/acct.js';
import { User } from '@/models/entities/user.js';
import type { User } from '@/models/entities/user.js';
import define from '../define.js';
export const meta = {
tags: ['users'],
requireCredential: false,
requireCredentialPrivateMode: true,
requireCredentialPrivateMode: false,
res: {
type: 'array',

View file

@ -169,12 +169,12 @@ const menuDef = $computed(() => [{
to: '/admin/security',
active: currentPage?.route.name === 'security',
}, {
icon: 'ph-planet-bold ph-lg',
icon: 'ph-flow-arrow-bold ph-lg',
text: i18n.ts.relays,
to: '/admin/relays',
active: currentPage?.route.name === 'relays',
}, {
icon: 'ph-share-network-bold ph-lg',
icon: 'ph-plug-bold ph-lg',
text: i18n.ts.integration,
to: '/admin/integrations',
active: currentPage?.route.name === 'integrations',

View file

@ -1,27 +1,29 @@
<template><MkStickyContainer>
<template>
<MkStickyContainer>
<template #header><MkPageHeader :actions="headerActions" :tabs="headerTabs"/></template>
<MkSpacer :content-max="700" :margin-min="16" :margin-max="32">
<FormSuspense :p="init">
<FormFolder class="_formBlock">
<template #icon><i class="fab fa-twitter"></i></template>
<template #label>Twitter</template>
<template #suffix>{{ enableTwitterIntegration ? i18n.ts.enabled : i18n.ts.disabled }}</template>
<XTwitter/>
</FormFolder>
<FormFolder class="_formBlock">
<template #icon><i class="fab fa-github"></i></template>
<template #label>GitHub</template>
<template #suffix>{{ enableGithubIntegration ? i18n.ts.enabled : i18n.ts.disabled }}</template>
<XGithub/>
</FormFolder>
<FormFolder class="_formBlock">
<template #icon><i class="fab fa-discord"></i></template>
<template #label>Discord</template>
<template #suffix>{{ enableDiscordIntegration ? i18n.ts.enabled : i18n.ts.disabled }}</template>
<XDiscord/>
</FormFolder>
</FormSuspense>
</MkSpacer></MkStickyContainer>
<MkSpacer :content-max="700" :margin-min="16" :margin-max="32">
<FormSuspense :p="init">
<FormFolder class="_formBlock">
<template #icon><i class="fab fa-twitter"></i></template>
<template #label>Twitter</template>
<template #suffix>{{ enableTwitterIntegration ? i18n.ts.enabled : i18n.ts.disabled }}</template>
<XTwitter/>
</FormFolder>
<FormFolder class="_formBlock">
<template #icon><i class="fab fa-github"></i></template>
<template #label>GitHub</template>
<template #suffix>{{ enableGithubIntegration ? i18n.ts.enabled : i18n.ts.disabled }}</template>
<XGithub/>
</FormFolder>
<FormFolder class="_formBlock">
<template #icon><i class="fab fa-discord"></i></template>
<template #label>Discord</template>
<template #suffix>{{ enableDiscordIntegration ? i18n.ts.enabled : i18n.ts.disabled }}</template>
<XDiscord/>
</FormFolder>
</FormSuspense>
</MkSpacer>
</MkStickyContainer>
</template>
<script lang="ts" setup>
@ -52,6 +54,6 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.integration,
icon: 'ph-share-network-bold ph-lg',
icon: 'ph-plug-bold ph-lg',
});
</script>

View file

@ -76,7 +76,7 @@ const headerTabs = $computed(() => []);
definePageMetadata({
title: i18n.ts.relays,
icon: 'ph-planet-bold ph-lg',
icon: 'ph-flow-arrow-bold ph-lg',
});
</script>

View file

@ -6,7 +6,7 @@
</MkTab>
<div v-if="origin === 'local'">
<template v-if="tag == null">
<MkFolder v-if="pinnedUsers.length > 0" class="_gap" persist-key="explore-pinned-users">
<MkFolder v-show="thereArePinnedUsers" class="_gap" persist-key="explore-pinned-users">
<template #header><i class="ph-bookmark-simple-bold ph-lg ph-fw ph-lg" style="margin-right: 0.5em;"></i>{{ i18n.ts.pinnedUsers }}</template>
<XUserList :pagination="pinnedUsers"/>
</MkFolder>
@ -75,11 +75,16 @@ let origin = $ref('local');
let tagsEl = $ref<InstanceType<typeof MkFolder>>();
let tagsLocal = $ref([]);
let tagsRemote = $ref([]);
let thereArePinnedUsers = $ref(false);
watch(() => props.tag, () => {
if (tagsEl) tagsEl.toggleContent(props.tag == null);
});
watch(() => pinnedUsersList, () => {
if (pinnedUsersList?.length > 0) thereArePinnedUsers = true;
});
const tagUsers = $computed(() => ({
endpoint: 'hashtags/users' as const,
limit: 30,
@ -90,6 +95,10 @@ const tagUsers = $computed(() => ({
},
}));
const pinnedUsersList = await os.api('pinned-users');
if (pinnedUsersList?.length > 0) { thereArePinnedUsers = true; }
const pinnedUsers = { endpoint: 'pinned-users' };
const popularUsers = { endpoint: 'users', limit: 10, noPaging: true, params: {
state: 'alive',

View file

@ -266,7 +266,7 @@ export const defaultStore = markRaw(new Storage('base', {
showAdminUpdates: {
where: 'account',
default: true,
}
},
}));
// TODO: 他のタブと永続化されたstateを同期