From 014440850014ee86d766bb07467c2970b17a1fc6 Mon Sep 17 00:00:00 2001 From: syuilo Date: Wed, 25 Nov 2020 21:31:34 +0900 Subject: nanka iroiro (#6853) * wip * Update maps.ts * wip * wip * wip * wip * Update base.vue * wip * wip * wip * wip * Update link.vue * wip * wip * wip * wip * wip * wip * wip * wip * wip * Update privacy.vue * wip * wip * wip * wip * Update range.vue * wip * wip * wip * wip * Update profile.vue * wip * Update a.vue * Update index.vue * wip * Update sidebar.vue * wip * wip * Update account-info.vue * Update a.vue * wip * wip * Update sounds.vue * wip * wip * wip * wip * wip * wip * wip * wip * Update account-info.vue * Update account-info.vue * wip * wip * wip * Update d-persimmon.json5 * wip --- src/client/assets/sounds/syuilo/kick.mp3 | Bin 0 -> 15672 bytes src/client/assets/sounds/syuilo/snare.mp3 | Bin 0 -> 26121 bytes src/client/cold-storage.ts | 34 ++ src/client/components/form-dialog.vue | 63 ++- src/client/components/form/base.vue | 56 +++ src/client/components/form/button.vue | 81 ++++ src/client/components/form/form.scss | 34 ++ src/client/components/form/group.vue | 42 ++ src/client/components/form/input.vue | 306 ++++++++++++ src/client/components/form/key-value-view.vue | 30 ++ src/client/components/form/link.vue | 90 ++++ src/client/components/form/pagination.vue | 42 ++ src/client/components/form/radios.vue | 106 +++++ src/client/components/form/range.vue | 122 +++++ src/client/components/form/select.vue | 147 ++++++ src/client/components/form/switch.vue | 132 ++++++ src/client/components/form/textarea.vue | 136 ++++++ src/client/components/form/tuple.vue | 36 ++ src/client/components/media-image.vue | 2 +- src/client/components/media-video.vue | 2 +- src/client/components/taskmanager.api-window.vue | 5 +- src/client/components/taskmanager.vue | 3 +- src/client/components/timeline.vue | 3 +- src/client/components/ui/range.vue | 4 +- src/client/components/ui/switch.vue | 6 +- src/client/components/ui/textarea.vue | 3 +- src/client/init.ts | 11 +- src/client/os.ts | 10 +- src/client/pages/announcements.vue | 2 +- src/client/pages/apps.vue | 103 ---- src/client/pages/instance/settings.vue | 8 + src/client/pages/messaging/messaging-room.vue | 3 +- src/client/pages/reversi/game.board.vue | 13 +- src/client/pages/settings/2fa.vue | 248 ++++++++++ src/client/pages/settings/account-info.vue | 185 ++++++++ src/client/pages/settings/api.vue | 27 +- src/client/pages/settings/apps.vue | 113 +++++ src/client/pages/settings/deck.vue | 90 ++++ src/client/pages/settings/email-address.vue | 71 +++ src/client/pages/settings/email.vue | 52 ++ src/client/pages/settings/general.vue | 217 ++++----- src/client/pages/settings/index.vue | 149 +++--- src/client/pages/settings/notifications.vue | 30 +- src/client/pages/settings/other.vue | 53 ++- src/client/pages/settings/privacy.vue | 56 ++- src/client/pages/settings/profile.vue | 240 ++++++---- src/client/pages/settings/reaction.vue | 69 ++- src/client/pages/settings/security.2fa.vue | 235 --------- src/client/pages/settings/security.vue | 85 +++- src/client/pages/settings/sidebar.vue | 56 +-- src/client/pages/settings/sounds.vue | 200 ++++---- src/client/pages/settings/theme.install.vue | 106 +++++ src/client/pages/settings/theme.manage.vue | 103 ++++ src/client/pages/settings/theme.vue | 575 ++++++++++------------- src/client/pages/settings/word-mute.vue | 48 +- src/client/pages/user/follow-list.vue | 2 +- src/client/pages/user/index.activity.vue | 18 +- src/client/pages/user/index.photos.vue | 42 +- src/client/pages/user/index.vue | 544 ++++++++++----------- src/client/pages/welcome.entrance.vue | 28 -- src/client/router.ts | 3 +- src/client/scripts/sound.ts | 24 + src/client/scripts/theme.ts | 13 +- src/client/store.ts | 10 +- src/client/style.scss | 6 +- src/client/themes/_dark.json5 | 1 + src/client/themes/_light.json5 | 1 + src/client/themes/d-battery-saver.json5 | 18 - src/client/themes/d-black.json5 | 24 +- src/client/themes/d-blue.json5 | 29 -- src/client/themes/d-dark.json5 | 29 ++ src/client/themes/d-green.json5 | 29 -- src/client/themes/d-persimmon.json5 | 12 +- src/client/themes/d-red.json5 | 29 -- src/client/themes/l-apricot.json5 | 2 +- src/client/themes/l-blue.json5 | 21 - src/client/themes/l-green.json5 | 21 - src/client/themes/l-light.json5 | 21 + src/client/themes/l-red.json5 | 21 - src/client/themes/l-white.json5 | 21 - src/client/ui/_common_/common.vue | 5 +- src/client/ui/visitor.vue | 202 +------- src/client/ui/visitor/a.vue | 357 ++++++++++++++ src/client/ui/visitor/b.vue | 372 +++++++++++++++ src/client/widgets/digital-clock.vue | 3 +- 85 files changed, 4501 insertions(+), 2050 deletions(-) create mode 100644 src/client/assets/sounds/syuilo/kick.mp3 create mode 100644 src/client/assets/sounds/syuilo/snare.mp3 create mode 100644 src/client/cold-storage.ts create mode 100644 src/client/components/form/base.vue create mode 100644 src/client/components/form/button.vue create mode 100644 src/client/components/form/form.scss create mode 100644 src/client/components/form/group.vue create mode 100644 src/client/components/form/input.vue create mode 100644 src/client/components/form/key-value-view.vue create mode 100644 src/client/components/form/link.vue create mode 100644 src/client/components/form/pagination.vue create mode 100644 src/client/components/form/radios.vue create mode 100644 src/client/components/form/range.vue create mode 100644 src/client/components/form/select.vue create mode 100644 src/client/components/form/switch.vue create mode 100644 src/client/components/form/textarea.vue create mode 100644 src/client/components/form/tuple.vue delete mode 100644 src/client/pages/apps.vue create mode 100644 src/client/pages/settings/2fa.vue create mode 100644 src/client/pages/settings/account-info.vue create mode 100644 src/client/pages/settings/apps.vue create mode 100644 src/client/pages/settings/deck.vue create mode 100644 src/client/pages/settings/email-address.vue create mode 100644 src/client/pages/settings/email.vue delete mode 100644 src/client/pages/settings/security.2fa.vue create mode 100644 src/client/pages/settings/theme.install.vue create mode 100644 src/client/pages/settings/theme.manage.vue create mode 100644 src/client/scripts/sound.ts delete mode 100644 src/client/themes/d-battery-saver.json5 delete mode 100644 src/client/themes/d-blue.json5 create mode 100644 src/client/themes/d-dark.json5 delete mode 100644 src/client/themes/d-green.json5 delete mode 100644 src/client/themes/d-red.json5 delete mode 100644 src/client/themes/l-blue.json5 delete mode 100644 src/client/themes/l-green.json5 create mode 100644 src/client/themes/l-light.json5 delete mode 100644 src/client/themes/l-red.json5 delete mode 100644 src/client/themes/l-white.json5 create mode 100644 src/client/ui/visitor/a.vue create mode 100644 src/client/ui/visitor/b.vue (limited to 'src/client') diff --git a/src/client/assets/sounds/syuilo/kick.mp3 b/src/client/assets/sounds/syuilo/kick.mp3 new file mode 100644 index 0000000000..4e0e72091c Binary files /dev/null and b/src/client/assets/sounds/syuilo/kick.mp3 differ diff --git a/src/client/assets/sounds/syuilo/snare.mp3 b/src/client/assets/sounds/syuilo/snare.mp3 new file mode 100644 index 0000000000..9244189c2d Binary files /dev/null and b/src/client/assets/sounds/syuilo/snare.mp3 differ diff --git a/src/client/cold-storage.ts b/src/client/cold-storage.ts new file mode 100644 index 0000000000..1bee2313fa --- /dev/null +++ b/src/client/cold-storage.ts @@ -0,0 +1,34 @@ +// 常にメモリにロードしておく必要がないような設定情報を保管するストレージ + +const PREFIX = 'miux:'; + +export const defaultDeviceSettings = { + sound_masterVolume: 0.3, + sound_note: { type: 'syuilo/down', volume: 1 }, + sound_noteMy: { type: 'syuilo/up', volume: 1 }, + sound_notification: { type: 'syuilo/pope2', volume: 1 }, + sound_chat: { type: 'syuilo/pope1', volume: 1 }, + sound_chatBg: { type: 'syuilo/waon', volume: 1 }, + sound_antenna: { type: 'syuilo/triple', volume: 1 }, + sound_channel: { type: 'syuilo/square-pico', volume: 1 }, + sound_reversiPutBlack: { type: 'syuilo/kick', volume: 0.3 }, + sound_reversiPutWhite: { type: 'syuilo/snare', volume: 0.3 }, +}; + +export const device = { + get(key: T): typeof defaultDeviceSettings[T] { + // TODO: indexedDBにする + // ただしその際はnullチェックではなくキー存在チェックにしないとダメ + // (indexedDBはnullを保存できるため、ユーザーが意図してnullを格納した可能性がある) + const value = localStorage.getItem(PREFIX + key); + if (value == null) { + return defaultDeviceSettings[key]; + } else { + return JSON.parse(value); + } + }, + + set(key: keyof typeof defaultDeviceSettings, value: any): any { + localStorage.setItem(PREFIX + key, JSON.stringify(value)); + }, +}; diff --git a/src/client/components/form-dialog.vue b/src/client/components/form-dialog.vue index 0dc02258af..add6b230d3 100644 --- a/src/client/components/form-dialog.vue +++ b/src/client/components/form-dialog.vue @@ -1,6 +1,6 @@ -
-
@@ -67,7 +67,6 @@ export default defineComponent({ font-size: 0.9em; tab-size: 2; white-space: pre; - font-family: Fira code, Fira Mono, Consolas, Menlo, Courier, monospace; } } diff --git a/src/client/components/taskmanager.vue b/src/client/components/taskmanager.vue index 92c56442c3..1ed8c8bd5e 100644 --- a/src/client/components/taskmanager.vue +++ b/src/client/components/taskmanager.vue @@ -3,7 +3,7 @@ -
+
@@ -150,7 +150,6 @@ export default defineComponent({ display: flex; flex-direction: column; height: 100%; - font-family: Fira code, Fira Mono, Consolas, Menlo, Courier, monospace; > .content { flex: 1; diff --git a/src/client/components/timeline.vue b/src/client/components/timeline.vue index 930f47b1a5..df9424d8ed 100644 --- a/src/client/components/timeline.vue +++ b/src/client/components/timeline.vue @@ -6,6 +6,7 @@ import { defineComponent } from 'vue'; import XNotes from './notes.vue'; import * as os from '@/os'; +import * as sound from '@/scripts/sound'; export default defineComponent({ components: { @@ -65,7 +66,7 @@ export default defineComponent({ this.$emit('note'); if (this.sound) { - os.sound(note.userId === this.$store.state.i.id ? 'noteMy' : 'note'); + sound.play(note.userId === this.$store.state.i.id ? 'noteMy' : 'note'); } }; diff --git a/src/client/components/ui/range.vue b/src/client/components/ui/range.vue index c6e585cf50..4cfe66a8fc 100644 --- a/src/client/components/ui/range.vue +++ b/src/client/components/ui/range.vue @@ -1,7 +1,7 @@