fix(frontend): 連合なしの状態の読み書きができない問題 (#13777)
* fix: 連合なしの状態の読み書きができない問題 * update changelog * fix types: https://github.com/misskey-dev/misskey/pull/13777#discussion_r1585901601
This commit is contained in:
parent
ef630df443
commit
9f66f22953
|
@ -56,6 +56,7 @@
|
||||||
- Fix: ページのOGP URLが間違っているのを修正
|
- Fix: ページのOGP URLが間違っているのを修正
|
||||||
- Fix: リバーシの対局を正しく共有できないことがある問題を修正
|
- Fix: リバーシの対局を正しく共有できないことがある問題を修正
|
||||||
- Fix: 通知をグループ化している際に、人数が正常に表示されないことがある問題を修正
|
- Fix: 通知をグループ化している際に、人数が正常に表示されないことがある問題を修正
|
||||||
|
- Fix: 連合なしの状態の読み書きができない問題を修正
|
||||||
|
|
||||||
### Server
|
### Server
|
||||||
- Enhance: エンドポイント`antennas/update`の必須項目を`antennaId`のみに
|
- Enhance: エンドポイント`antennas/update`の必須項目を`antennaId`のみに
|
||||||
|
|
|
@ -156,6 +156,7 @@ const props = withDefaults(defineProps<{
|
||||||
initialVisibleUsers: () => [],
|
initialVisibleUsers: () => [],
|
||||||
autofocus: true,
|
autofocus: true,
|
||||||
mock: false,
|
mock: false,
|
||||||
|
initialLocalOnly: undefined,
|
||||||
});
|
});
|
||||||
|
|
||||||
provide('mock', props.mock);
|
provide('mock', props.mock);
|
||||||
|
@ -185,8 +186,8 @@ watch(showPreview, () => defaultStore.set('showPreview', showPreview.value));
|
||||||
const showAddMfmFunction = ref(defaultStore.state.enableQuickAddMfmFunction);
|
const showAddMfmFunction = ref(defaultStore.state.enableQuickAddMfmFunction);
|
||||||
watch(showAddMfmFunction, () => defaultStore.set('enableQuickAddMfmFunction', showAddMfmFunction.value));
|
watch(showAddMfmFunction, () => defaultStore.set('enableQuickAddMfmFunction', showAddMfmFunction.value));
|
||||||
const cw = ref<string | null>(props.initialCw ?? null);
|
const cw = ref<string | null>(props.initialCw ?? null);
|
||||||
const localOnly = ref<boolean>(props.initialLocalOnly ?? defaultStore.state.rememberNoteVisibility ? defaultStore.state.localOnly : defaultStore.state.defaultNoteLocalOnly);
|
const localOnly = ref(props.initialLocalOnly ?? (defaultStore.state.rememberNoteVisibility ? defaultStore.state.localOnly : defaultStore.state.defaultNoteLocalOnly));
|
||||||
const visibility = ref(props.initialVisibility ?? (defaultStore.state.rememberNoteVisibility ? defaultStore.state.visibility : defaultStore.state.defaultNoteVisibility) as typeof Misskey.noteVisibilities[number]);
|
const visibility = ref(props.initialVisibility ?? (defaultStore.state.rememberNoteVisibility ? defaultStore.state.visibility : defaultStore.state.defaultNoteVisibility));
|
||||||
const visibleUsers = ref<Misskey.entities.UserDetailed[]>([]);
|
const visibleUsers = ref<Misskey.entities.UserDetailed[]>([]);
|
||||||
if (props.initialVisibleUsers) {
|
if (props.initialVisibleUsers) {
|
||||||
props.initialVisibleUsers.forEach(pushVisibleUser);
|
props.initialVisibleUsers.forEach(pushVisibleUser);
|
||||||
|
@ -518,6 +519,9 @@ async function toggleLocalOnly() {
|
||||||
}
|
}
|
||||||
|
|
||||||
localOnly.value = !localOnly.value;
|
localOnly.value = !localOnly.value;
|
||||||
|
if (defaultStore.state.rememberNoteVisibility) {
|
||||||
|
defaultStore.set('localOnly', localOnly.value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function toggleReactionAcceptance() {
|
async function toggleReactionAcceptance() {
|
||||||
|
|
|
@ -15,7 +15,7 @@ import * as Misskey from 'misskey-js';
|
||||||
import MkModal from '@/components/MkModal.vue';
|
import MkModal from '@/components/MkModal.vue';
|
||||||
import MkPostForm from '@/components/MkPostForm.vue';
|
import MkPostForm from '@/components/MkPostForm.vue';
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = withDefaults(defineProps<{
|
||||||
reply?: Misskey.entities.Note;
|
reply?: Misskey.entities.Note;
|
||||||
renote?: Misskey.entities.Note;
|
renote?: Misskey.entities.Note;
|
||||||
channel?: any; // TODO
|
channel?: any; // TODO
|
||||||
|
@ -31,7 +31,9 @@ const props = defineProps<{
|
||||||
instant?: boolean;
|
instant?: boolean;
|
||||||
fixed?: boolean;
|
fixed?: boolean;
|
||||||
autofocus?: boolean;
|
autofocus?: boolean;
|
||||||
}>();
|
}>(), {
|
||||||
|
initialLocalOnly: undefined,
|
||||||
|
});
|
||||||
|
|
||||||
const emit = defineEmits<{
|
const emit = defineEmits<{
|
||||||
(ev: 'closed'): void;
|
(ev: 'closed'): void;
|
||||||
|
|
|
@ -492,10 +492,9 @@ export function getNoteMenu(props: {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
type Visibility = 'public' | 'home' | 'followers' | 'specified';
|
type Visibility = (typeof Misskey.noteVisibilities)[number];
|
||||||
|
|
||||||
// defaultStore.state.visibilityがstringなためstringも受け付けている
|
function smallerVisibility(a: Visibility, b: Visibility): Visibility {
|
||||||
function smallerVisibility(a: Visibility | string, b: Visibility | string): Visibility {
|
|
||||||
if (a === 'specified' || b === 'specified') return 'specified';
|
if (a === 'specified' || b === 'specified') return 'specified';
|
||||||
if (a === 'followers' || b === 'followers') return 'followers';
|
if (a === 'followers' || b === 'followers') return 'followers';
|
||||||
if (a === 'home' || b === 'home') return 'home';
|
if (a === 'home' || b === 'home') return 'home';
|
||||||
|
|
|
@ -94,7 +94,7 @@ export const defaultStore = markRaw(new Storage('base', {
|
||||||
},
|
},
|
||||||
defaultNoteVisibility: {
|
defaultNoteVisibility: {
|
||||||
where: 'account',
|
where: 'account',
|
||||||
default: 'public',
|
default: 'public' as (typeof Misskey.noteVisibilities)[number],
|
||||||
},
|
},
|
||||||
defaultNoteLocalOnly: {
|
defaultNoteLocalOnly: {
|
||||||
where: 'account',
|
where: 'account',
|
||||||
|
@ -150,7 +150,7 @@ export const defaultStore = markRaw(new Storage('base', {
|
||||||
},
|
},
|
||||||
visibility: {
|
visibility: {
|
||||||
where: 'deviceAccount',
|
where: 'deviceAccount',
|
||||||
default: 'public' as 'public' | 'home' | 'followers' | 'specified',
|
default: 'public' as (typeof Misskey.noteVisibilities)[number],
|
||||||
},
|
},
|
||||||
localOnly: {
|
localOnly: {
|
||||||
where: 'deviceAccount',
|
where: 'deviceAccount',
|
||||||
|
|
Loading…
Reference in New Issue