Compare commits

...

4 Commits

Author SHA1 Message Date
syuilo 4390ccd664
Merge 808124ccb4 into 218070eb13 2025-09-26 03:50:28 +00:00
syuilo 808124ccb4 Update MkNoteDraftsDialog.vue 2025-09-26 12:50:24 +09:00
syuilo a5195b2628 wip 2025-09-26 12:38:18 +09:00
syuilo c4d5b0eb21 Update os.ts 2025-09-26 08:07:43 +09:00
3 changed files with 34 additions and 14 deletions

View File

@ -54,7 +54,13 @@ SPDX-License-Identifier: AGPL-3.0-only
:class="[$style.draft]"
>
<div :class="$style.draftBody" class="_gaps_s">
<MkInfo v-if="draft.scheduledAt != null && draft.isActuallyScheduled">{{ i18n.tsx.scheduledToPostOnX({ x: new Date(draft.scheduledAt).toLocaleString() }) }}</MkInfo>
<MkInfo v-if="draft.scheduledAt != null && draft.isActuallyScheduled">
<I18n :src="i18n.ts.scheduledToPostOnX" tag="span">
<template #x>
<MkTime :time="draft.scheduledAt" :mode="'detail'" style="font-weight: bold;"/>
</template>
</I18n>
</MkInfo>
<div :class="$style.draftInfo">
<div :class="$style.draftMeta">
<div v-if="draft.reply" class="_nowrap">
@ -110,23 +116,31 @@ SPDX-License-Identifier: AGPL-3.0-only
</div>
<div :class="$style.draftActions" class="_buttons">
<MkButton
v-if="draft.scheduledAt != null && draft.isActuallyScheduled"
:class="$style.itemButton"
small
@click="cancelSchedule(draft)"
>
<i class="ti ti-calendar-x"></i>
{{ i18n.ts._drafts.cancelSchedule }}
</MkButton>
<template v-if="draft.scheduledAt != null && draft.isActuallyScheduled">
<MkButton
:class="$style.itemButton"
small
@click="cancelSchedule(draft)"
>
<i class="ti ti-calendar-x"></i> {{ i18n.ts._drafts.cancelSchedule }}
</MkButton>
<!-- TODO
<MkButton
:class="$style.itemButton"
small
@click="reSchedule(draft)"
>
<i class="ti ti-calendar-time"></i> {{ i18n.ts._drafts.reSchedule }}
</MkButton>
-->
</template>
<MkButton
v-else
:class="$style.itemButton"
small
@click="restoreDraft(draft)"
>
<i class="ti ti-corner-up-left"></i>
{{ i18n.ts._drafts.restore }}
<i class="ti ti-corner-up-left"></i> {{ i18n.ts._drafts.restore }}
</MkButton>
<MkButton
v-tooltip="i18n.ts._drafts.delete"

View File

@ -61,7 +61,13 @@ SPDX-License-Identifier: AGPL-3.0-only
<button class="_buttonPrimary" style="padding: 4px; border-radius: 8px;" @click="addVisibleUser"><i class="ti ti-plus ti-fw"></i></button>
</div>
</div>
<MkInfo v-if="scheduledAt != null" :class="$style.scheduledAt">{{ i18n.tsx.scheduleToPostOnX({ x: new Date(scheduledAt).toLocaleString() }) }} - <button class="_textButton" @click="cancelSchedule()">{{ i18n.ts.cancel }}</button></MkInfo>
<MkInfo v-if="scheduledAt != null" :class="$style.scheduledAt">
<I18n :src="i18n.ts.scheduleToPostOnX" tag="span">
<template #x>
<MkTime :time="scheduledAt" :mode="'detail'" style="font-weight: bold;"/>
</template>
</I18n> - <button class="_textButton" @click="cancelSchedule()">{{ i18n.ts.cancel }}</button>
</MkInfo>
<MkInfo v-if="hasNotSpecifiedMentions" warn :class="$style.hasNotSpecifiedMentions">{{ i18n.ts.notSpecifiedMentionWarning }} - <button class="_textButton" @click="addMissingMention()">{{ i18n.ts.add }}</button></MkInfo>
<div v-show="useCw" :class="$style.cwOuter">
<input ref="cwInputEl" v-model="cw" :class="$style.cw" :placeholder="i18n.ts.annotation" @keydown="onKeydown" @keyup="onKeyup" @compositionend="onCompositionEnd">

View File

@ -481,7 +481,7 @@ export function inputDatetime(props: {
},
}, {
done: result => {
resolve(result ? { result: new Date(result.result), canceled: false } : { result: undefined, canceled: true });
resolve(result != null && result.result != null ? { result: new Date(result.result), canceled: false } : { result: undefined, canceled: true });
},
closed: () => dispose(),
});