This commit is contained in:
NoriDev 2023-06-19 00:11:43 +09:00
parent fe714d1457
commit ab8a920a80
9 changed files with 17 additions and 4 deletions

View file

@ -46,6 +46,7 @@
- 「이미 본 리노트를 간략화하기」 옵션의 기본값을 꺼짐으로 설정 - 「이미 본 리노트를 간략화하기」 옵션의 기본값을 꺼짐으로 설정
- 이벤트 기능 (misskey-dev/misskey#10628) - 이벤트 기능 (misskey-dev/misskey#10628)
- プレイにAPI Tokenを要求できる関数を追加 (misskey-dev/misskey#10949) - プレイにAPI Tokenを要求できる関数を追加 (misskey-dev/misskey#10949)
- 절대 시간 표기 (sakura-tel/milkey#69)
### Client ### Client
- (Friendly) 일부 페이지를 제외하고 플로팅 버튼을 표시하지 않음 - (Friendly) 일부 페이지를 제외하고 플로팅 버튼을 표시하지 않음

1
locales/index.d.ts vendored
View file

@ -1117,6 +1117,7 @@ export interface Locale {
"thisFlashRequiresTheFollowingPermissions": string; "thisFlashRequiresTheFollowingPermissions": string;
"doYouWantToAllowThisPlayToAccessYourAccount": string; "doYouWantToAllowThisPlayToAccessYourAccount": string;
"translateProfile": string; "translateProfile": string;
"enableAbsoluteTime": string;
"_group": { "_group": {
"leader": string; "leader": string;
"banish": string; "banish": string;

View file

@ -1114,6 +1114,7 @@ additionalPermissionsForFlash: "Play에 대한 추가 권한"
thisFlashRequiresTheFollowingPermissions: "이 Play는 다음 권한을 요구해요" thisFlashRequiresTheFollowingPermissions: "이 Play는 다음 권한을 요구해요"
doYouWantToAllowThisPlayToAccessYourAccount: "이 Play가 계정에 접근하도록 허용할까요?" doYouWantToAllowThisPlayToAccessYourAccount: "이 Play가 계정에 접근하도록 허용할까요?"
translateProfile: "프로필 번역하기" translateProfile: "프로필 번역하기"
enableAbsoluteTime: "절대 시간 표기 사용"
_group: _group:
leader: "그룹 주인" leader: "그룹 주인"
banish: "추방" banish: "추방"

View file

@ -37,7 +37,8 @@
<span v-if="note.channel" style="margin-right: 0.5em;"><i v-tooltip="note.channel.name" class="ti ti-device-tv"></i></span> <span v-if="note.channel" style="margin-right: 0.5em;"><i v-tooltip="note.channel.name" class="ti ti-device-tv"></i></span>
<button ref="renoteTime" :class="$style.renoteTime" class="_button" @click="showRenoteMenu()"> <button ref="renoteTime" :class="$style.renoteTime" class="_button" @click="showRenoteMenu()">
<i v-if="isMyRenote" class="ti ti-dots" :class="$style.renoteMenu"></i> <i v-if="isMyRenote" class="ti ti-dots" :class="$style.renoteMenu"></i>
<MkTime :time="note.createdAt"/> <MkTime v-if="defaultStore.state.enableAbsoluteTime" :time="note.createdAt" mode="absolute"/>
<MkTime v-else-if="!defaultStore.state.enableAbsoluteTime" :time="note.createdAt" mode="relative"/>
</button> </button>
</div> </div>
</div> </div>

View file

@ -32,7 +32,8 @@
<span v-if="note.localOnly" style="margin-right: 0.5em;"><i v-tooltip="i18n.ts._visibility['disableFederation']" class="ti ti-rocket-off"></i></span> <span v-if="note.localOnly" style="margin-right: 0.5em;"><i v-tooltip="i18n.ts._visibility['disableFederation']" class="ti ti-rocket-off"></i></span>
<button ref="renoteTime" class="_button" :class="$style.renoteTime" @click="showRenoteMenu()"> <button ref="renoteTime" class="_button" :class="$style.renoteTime" @click="showRenoteMenu()">
<i v-if="isMyRenote" class="ti ti-dots" style="margin-right: 4px;"></i> <i v-if="isMyRenote" class="ti ti-dots" style="margin-right: 4px;"></i>
<MkTime :time="note.createdAt"/> <MkTime v-if="defaultStore.state.enableAbsoluteTime" :time="note.createdAt" mode="absolute"/>
<MkTime v-else-if="!defaultStore.state.enableAbsoluteTime" :time="note.createdAt" mode="relative"/>
</button> </button>
</div> </div>
</div> </div>

View file

@ -28,7 +28,8 @@
<span v-if="note.localOnly" style="margin-right: 0.5em;"><i v-tooltip="i18n.ts._visibility['disableFederation']" class="ti ti-rocket-off"></i></span> <span v-if="note.localOnly" style="margin-right: 0.5em;"><i v-tooltip="i18n.ts._visibility['disableFederation']" class="ti ti-rocket-off"></i></span>
<span v-if="note.channel" style="margin-right: 0.5em;"><i v-tooltip="note.channel.name" class="ti ti-device-tv"></i></span> <span v-if="note.channel" style="margin-right: 0.5em;"><i v-tooltip="note.channel.name" class="ti ti-device-tv"></i></span>
<MkA :class="$style.time" :to="notePage(note)"> <MkA :class="$style.time" :to="notePage(note)">
<MkTime :time="note.createdAt"/> <MkTime v-if="defaultStore.state.enableAbsoluteTime" :time="note.createdAt" mode="absolute"/>
<MkTime v-else-if="!defaultStore.state.enableAbsoluteTime" :time="note.createdAt" mode="relative"/>
</MkA> </MkA>
</div> </div>
<div :style="$style.info"><MkInstanceTicker v-if="showTicker" :instance="note.user.instance"/></div> <div :style="$style.info"><MkInstanceTicker v-if="showTicker" :instance="note.user.instance"/></div>

View file

@ -45,7 +45,8 @@
<span v-else-if="notification.type === 'achievementEarned'">{{ i18n.ts._notification.achievementEarned }}</span> <span v-else-if="notification.type === 'achievementEarned'">{{ i18n.ts._notification.achievementEarned }}</span>
<MkA v-else-if="notification.user" v-user-preview="notification.user.id" :class="$style.headerName" :to="userPage(notification.user)"><MkUserName :user="notification.user"/></MkA> <MkA v-else-if="notification.user" v-user-preview="notification.user.id" :class="$style.headerName" :to="userPage(notification.user)"><MkUserName :user="notification.user"/></MkA>
<span v-else>{{ notification.header }}</span> <span v-else>{{ notification.header }}</span>
<MkTime v-if="withTime" :time="notification.createdAt" :class="$style.headerTime"/> <MkTime v-if="withTime && defaultStore.state.enableAbsoluteTime" :time="notification.createdAt" :class="$style.headerTime" mode="absolute"/>
<MkTime v-else-if="withTime && !defaultStore.state.enableAbsoluteTime" :time="notification.createdAt" :class="$style.headerTime" mode="relative"/>
</header> </header>
<div> <div>
<MkA v-if="notification.type === 'reaction'" :class="$style.text" :to="notePage(notification.note)" :title="getNoteSummary(notification.note)"> <MkA v-if="notification.type === 'reaction'" :class="$style.text" :to="notePage(notification.note)" :title="getNoteSummary(notification.note)">

View file

@ -60,6 +60,7 @@
<template #label>{{ i18n.ts.postFormVisibilityHotkey }} <span class="_beta">CherryPick</span></template> <template #label>{{ i18n.ts.postFormVisibilityHotkey }} <span class="_beta">CherryPick</span></template>
<template #caption>{{ i18n.ts.postFormVisibilityHotkeyDescription }}</template> <template #caption>{{ i18n.ts.postFormVisibilityHotkeyDescription }}</template>
</MkSwitch> </MkSwitch>
<MkSwitch v-model="enableAbsoluteTime">{{ i18n.ts.enableAbsoluteTime }}</MkSwitch>
</div> </div>
<MkSelect v-model="instanceTicker"> <MkSelect v-model="instanceTicker">
@ -332,6 +333,7 @@ const collapseDefault = computed(defaultStore.makeGetterSetter('collapseDefault'
const requireRefreshBehavior = computed(defaultStore.makeGetterSetter('requireRefreshBehavior')); const requireRefreshBehavior = computed(defaultStore.makeGetterSetter('requireRefreshBehavior'));
const hideAvatarsInNote = computed(defaultStore.makeGetterSetter('hideAvatarsInNote')); const hideAvatarsInNote = computed(defaultStore.makeGetterSetter('hideAvatarsInNote'));
const showTranslateButtonInNote = computed(defaultStore.makeGetterSetter('showTranslateButtonInNote')); const showTranslateButtonInNote = computed(defaultStore.makeGetterSetter('showTranslateButtonInNote'));
const enableAbsoluteTime = computed(defaultStore.makeGetterSetter('enableAbsoluteTime'));
watch(lang, () => { watch(lang, () => {
miLocalStorage.setItem('lang', lang.value as string); miLocalStorage.setItem('lang', lang.value as string);

View file

@ -383,6 +383,10 @@ export const defaultStore = markRaw(new Storage('base', {
where: 'device', where: 'device',
default: true, default: true,
}, },
enableAbsoluteTime: {
where: 'device',
default: false,
},
// - Settings/CherryPick // - Settings/CherryPick
nicknameEnabled: { nicknameEnabled: {