fix code quality issues
This commit is contained in:
		
							parent
							
								
									73f2d69113
								
							
						
					
					
						commit
						26198a15b7
					
				|  | @ -66,11 +66,9 @@ const XCode = defineAsyncComponent(() => import('@/components/MkCode.core.vue')) | |||
| .codePlaceholderRoot { | ||||
| 	display: block; | ||||
| 	width: 100%; | ||||
| 	background: none; | ||||
| 	border: none; | ||||
| 	outline: none; | ||||
|   font: inherit; | ||||
|   color: inherit; | ||||
| 	font: inherit; | ||||
| 	cursor: pointer; | ||||
| 
 | ||||
| 	box-sizing: border-box; | ||||
|  |  | |||
|  | @ -74,7 +74,7 @@ async function calcAspectRatio() { | |||
| 			gallery.value.style.aspectRatio = ratioMax(16 / 9); | ||||
| 			break; | ||||
| 		case '1_1': | ||||
| 			gallery.value.style.aspectRatio = ratioMax(1 / 1); | ||||
| 			gallery.value.style.aspectRatio = ratioMax(1); | ||||
| 			break; | ||||
| 		case '2_3': | ||||
| 			gallery.value.style.aspectRatio = ratioMax(2 / 3); | ||||
|  |  | |||
|  | @ -100,7 +100,7 @@ SPDX-License-Identifier: AGPL-3.0-only | |||
| </template> | ||||
| 
 | ||||
| <script lang="ts" setup> | ||||
| import { inject, watch, nextTick, onMounted, defineAsyncComponent, provide, shallowRef, ref, computed } from 'vue'; | ||||
| import { inject, watch, nextTick, onMounted, onUnmounted, defineAsyncComponent, provide, shallowRef, ref, computed } from 'vue'; | ||||
| import * as mfm from 'mfm-js'; | ||||
| import * as Misskey from 'misskey-js'; | ||||
| import insertTextAtCursor from 'insert-text-at-cursor'; | ||||
|  | @ -191,7 +191,9 @@ if (props.initialVisibleUsers) { | |||
| 	props.initialVisibleUsers.forEach(pushVisibleUser); | ||||
| } | ||||
| const reactionAcceptance = ref(defaultStore.state.reactionAcceptance); | ||||
| const autocomplete = ref(null); | ||||
| const autocompleteTextareaInput = ref<Autocomplete | null>(null); | ||||
| const autocompleteCwInput = ref<Autocomplete | null>(null); | ||||
| const autocompleteHashtagsInput = ref<Autocomplete | null>(null); | ||||
| const draghover = ref(false); | ||||
| const quoteId = ref(null); | ||||
| const hasNotSpecifiedMentions = ref(false); | ||||
|  | @ -909,10 +911,9 @@ onMounted(() => { | |||
| 		}); | ||||
| 	} | ||||
| 
 | ||||
| 	// TODO: detach when unmount | ||||
| 	new Autocomplete(textareaEl.value, text); | ||||
| 	new Autocomplete(cwInputEl.value, cw); | ||||
| 	new Autocomplete(hashtagsInputEl.value, hashtags); | ||||
| 	autocompleteTextareaInput.value = new Autocomplete(textareaEl.value, text); | ||||
| 	autocompleteCwInput.value = new Autocomplete(cwInputEl.value, cw); | ||||
| 	autocompleteHashtagsInput.value = new Autocomplete(hashtagsInputEl.value, hashtags); | ||||
| 
 | ||||
| 	nextTick(() => { | ||||
| 		// 書きかけの投稿を復元 | ||||
|  | @ -955,6 +956,15 @@ onMounted(() => { | |||
| 	}); | ||||
| }); | ||||
| 
 | ||||
| onUnmounted(() => { | ||||
| 	autocompleteTextareaInput.value?.detach(); | ||||
| 	autocompleteTextareaInput.value = null; | ||||
| 	autocompleteCwInput.value?.detach(); | ||||
| 	autocompleteCwInput.value = null; | ||||
| 	autocompleteHashtagsInput.value?.detach(); | ||||
| 	autocompleteHashtagsInput.value = null; | ||||
| }); | ||||
| 
 | ||||
| defineExpose({ | ||||
| 	clear, | ||||
| }); | ||||
|  |  | |||
|  | @ -6,7 +6,7 @@ | |||
| import * as Misskey from 'misskey-js'; | ||||
| import { Ref } from 'vue'; | ||||
| 
 | ||||
| export type MenuAction = (ev: MouseEvent) => void; | ||||
| export type MenuAction = (ev: MouseEvent) => Promise<void> | void; | ||||
| 
 | ||||
| export type MenuDivider = { type: 'divider' }; | ||||
| export type MenuNull = undefined; | ||||
|  |  | |||
|  | @ -7,5 +7,5 @@ export type PageHeaderItem = { | |||
|     text: string; | ||||
|     icon: string; | ||||
|     highlighted?: boolean; | ||||
|     handler: (ev: MouseEvent) => void; | ||||
|     handler: (ev: MouseEvent) => Promise<void> | void; | ||||
| }; | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue