fix: recommended timeline
I doubt itll work, but...
🙏
hail mairy
certified typeorm moment
im stuff
debug log
not a fan of js/ts
istg
missing parenthesis
postgres can kiss my ass
didnt need `::string[]` i think
hide caption button
Remove debug log
Clean up
no longer beta!
fix streaming
This commit is contained in:
parent
cc7ddc840d
commit
e7f2c7df03
@ -20,7 +20,6 @@
|
|||||||
|
|
||||||
## Work in progress
|
## Work in progress
|
||||||
|
|
||||||
- Recommended instances timeline
|
|
||||||
- OCR image captioning
|
- OCR image captioning
|
||||||
- Admin custom CSS
|
- Admin custom CSS
|
||||||
- Improve accesibility score
|
- Improve accesibility score
|
||||||
@ -35,6 +34,7 @@
|
|||||||
- Yarn 3
|
- Yarn 3
|
||||||
- Fix Dockerfile @hanna
|
- Fix Dockerfile @hanna
|
||||||
- Saner defaults
|
- Saner defaults
|
||||||
|
- Recommended instances timeline
|
||||||
- Star as default reaction
|
- Star as default reaction
|
||||||
- Recommended Instances timeline
|
- Recommended Instances timeline
|
||||||
- Rosé Pine by default (+ non-themable elements made Rosé Pine)
|
- Rosé Pine by default (+ non-themable elements made Rosé Pine)
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "misskey",
|
"name": "misskey",
|
||||||
"version": "12.118.1-calc.rc.4.13",
|
"version": "12.118.1-calc.rc.6",
|
||||||
"codename": "aqua",
|
"codename": "aqua",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { Brackets } from 'typeorm';
|
import { Brackets } from 'typeorm';
|
||||||
import { fetchMeta } from '@/misc/fetch-meta.js';
|
import { fetchMeta } from '@/misc/fetch-meta.js';
|
||||||
import { Notes, Users } from '@/models/index.js';
|
import { Notes } from '@/models/index.js';
|
||||||
import { activeUsersChart } from '@/services/chart/index.js';
|
import { activeUsersChart } from '@/services/chart/index.js';
|
||||||
import define from '../../define.js';
|
import define from '../../define.js';
|
||||||
import { ApiError } from '../../error.js';
|
import { ApiError } from '../../error.js';
|
||||||
@ -65,16 +65,10 @@ export default define(meta, paramDef, async (ps, user) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// .andWhere('(note.userHost IN (:instances)) OR (note.userHost IS NULL)', { instances: instances })
|
|
||||||
//#region Construct query
|
//#region Construct query
|
||||||
const query = makePaginationQuery(Notes.createQueryBuilder('note'),
|
const query = makePaginationQuery(Notes.createQueryBuilder('note'),
|
||||||
ps.sinceId, ps.untilId, ps.sinceDate, ps.untilDate)
|
ps.sinceId, ps.untilId, ps.sinceDate, ps.untilDate)
|
||||||
// Query where note.userHost is in recommended instances
|
.andWhere(`(note.userHost = ANY ('{"${m.recommendedInstances.join('","')}"}'))`)
|
||||||
.andWhere('(note.userHost IN (:instances)) OR (note.userHost IS NULL)', { instances: m.recommendedInstances })
|
|
||||||
// .andWhere(new Brackets(qb => {
|
|
||||||
// qb.where('note.userHost IN :instances', { instances: m.recommendedInstances })
|
|
||||||
// .orWhere('note.userHost IS NULL');
|
|
||||||
// }))
|
|
||||||
.andWhere('(note.visibility = \'public\')')
|
.andWhere('(note.visibility = \'public\')')
|
||||||
.innerJoinAndSelect('note.user', 'user')
|
.innerJoinAndSelect('note.user', 'user')
|
||||||
.leftJoinAndSelect('user.avatar', 'avatar')
|
.leftJoinAndSelect('user.avatar', 'avatar')
|
||||||
|
@ -30,7 +30,7 @@ export default class extends Channel {
|
|||||||
// フォローしているチャンネルの投稿 の場合だけ
|
// フォローしているチャンネルの投稿 の場合だけ
|
||||||
const meta = await fetchMeta();
|
const meta = await fetchMeta();
|
||||||
if (!(
|
if (!(
|
||||||
((note.user.host == null || meta.recommendedInstances.includes(note.user.host)) && note.visibility === 'public')
|
((note.user.host != null && meta.recommendedInstances.includes(note.user.host)) && note.visibility === 'public')
|
||||||
)) return;
|
)) return;
|
||||||
|
|
||||||
// Ignore notes from instances the user has muted
|
// Ignore notes from instances the user has muted
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
<textarea id="captioninput" v-model="inputValue" autofocus :placeholder="input.placeholder" @keydown="onInputKeydown"></textarea>
|
<textarea id="captioninput" v-model="inputValue" autofocus :placeholder="input.placeholder" @keydown="onInputKeydown"></textarea>
|
||||||
<div v-if="(showOkButton || showCaptionButton || showCancelButton)" class="buttons">
|
<div v-if="(showOkButton || showCaptionButton || showCancelButton)" class="buttons">
|
||||||
<MkButton inline primary :disabled="remainingLength < 0" @click="ok">{{ $ts.ok }}</MkButton>
|
<MkButton inline primary :disabled="remainingLength < 0" @click="ok">{{ $ts.ok }}</MkButton>
|
||||||
<MkButton inline @click="caption" >{{ $ts.caption }}</MkButton>
|
<!-- <MkButton inline @click="caption" >{{ $ts.caption }}</MkButton> -->
|
||||||
<MkButton inline @click="cancel" >{{ $ts.cancel }}</MkButton>
|
<MkButton inline @click="cancel" >{{ $ts.cancel }}</MkButton>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -56,7 +56,6 @@
|
|||||||
|
|
||||||
<FormSection>
|
<FormSection>
|
||||||
<FormSwitch v-model="enableRecommendedTimeline" class="_formBlock">{{ i18n.ts.enableRecommendedTimeline }}</FormSwitch>
|
<FormSwitch v-model="enableRecommendedTimeline" class="_formBlock">{{ i18n.ts.enableRecommendedTimeline }}</FormSwitch>
|
||||||
<template #label>{{ i18n.ts.recommendedInstances }}<span class="_beta">{{ i18n.ts.beta }}</span></template>
|
|
||||||
<FormTextarea v-model="recommendedInstances" class="_formBlock"></FormTextarea>
|
<FormTextarea v-model="recommendedInstances" class="_formBlock"></FormTextarea>
|
||||||
<template #caption>{{ i18n.ts.recommendedInstancesDescription }}</template>
|
<template #caption>{{ i18n.ts.recommendedInstancesDescription }}</template>
|
||||||
</FormSection>
|
</FormSection>
|
||||||
|
Loading…
Reference in New Issue
Block a user