diff --git a/packages/client/.eslintrc.js b/packages/client/.eslintrc.js index c3a78bd5fd..6c3bfb5a6e 100644 --- a/packages/client/.eslintrc.js +++ b/packages/client/.eslintrc.js @@ -61,6 +61,8 @@ module.exports = { 'vue/max-attributes-per-line': 'off', 'vue/html-self-closing': 'off', 'vue/singleline-html-element-content-newline': 'off', + // (vue/vue3-recommended disabled the autofix for Vue 2 compatibility) + 'vue/v-on-event-hyphenation': ['warn', 'always', { autofix: true }], }, globals: { // Node.js diff --git a/packages/client/src/components/MkDrive.vue b/packages/client/src/components/MkDrive.vue index c91fc95ab1..4053870950 100644 --- a/packages/client/src/components/MkDrive.vue +++ b/packages/client/src/components/MkDrive.vue @@ -7,8 +7,8 @@ :parent-folder="folder" @move="move" @upload="upload" - @removeFile="removeFile" - @removeFolder="removeFolder" + @remove-file="removeFile" + @remove-folder="removeFolder" /> <template v-for="f in hierarchyFolders"> <span class="separator"><i class="ti ti-chevron-right"></i></span> @@ -17,8 +17,8 @@ :parent-folder="folder" @move="move" @upload="upload" - @removeFile="removeFile" - @removeFolder="removeFolder" + @remove-file="removeFile" + @remove-folder="removeFolder" /> </template> <span v-if="folder != null" class="separator"><i class="ti ti-chevron-right"></i></span> @@ -48,8 +48,8 @@ @chosen="chooseFolder" @move="move" @upload="upload" - @removeFile="removeFile" - @removeFolder="removeFolder" + @remove-file="removeFile" + @remove-folder="removeFolder" @dragstart="isDragSource = true" @dragend="isDragSource = false" /> diff --git a/packages/client/src/components/MkDriveSelectDialog.vue b/packages/client/src/components/MkDriveSelectDialog.vue index baab7f1324..3ee821b539 100644 --- a/packages/client/src/components/MkDriveSelectDialog.vue +++ b/packages/client/src/components/MkDriveSelectDialog.vue @@ -14,7 +14,7 @@ {{ multiple ? ((type === 'file') ? i18n.ts.selectFiles : i18n.ts.selectFolders) : ((type === 'file') ? i18n.ts.selectFile : i18n.ts.selectFolder) }} <span v-if="selected.length > 0" style="margin-left: 8px; opacity: 0.5;">({{ number(selected.length) }})</span> </template> - <XDrive :multiple="multiple" :select="type" @changeSelection="onChangeSelection" @selected="ok()"/> + <XDrive :multiple="multiple" :select="type" @change-selection="onChangeSelection" @selected="ok()"/> </XModalWindow> </template> diff --git a/packages/client/src/components/MkPollEditor.vue b/packages/client/src/components/MkPollEditor.vue index 4b3bc58ed9..556abc5fd0 100644 --- a/packages/client/src/components/MkPollEditor.vue +++ b/packages/client/src/components/MkPollEditor.vue @@ -5,7 +5,7 @@ </p> <ul> <li v-for="(choice, i) in choices" :key="i"> - <MkInput class="input" small :model-value="choice" :placeholder="$t('_poll.choiceN', { n: i + 1 })" @update:modelValue="onInput(i, $event)"> + <MkInput class="input" small :model-value="choice" :placeholder="$t('_poll.choiceN', { n: i + 1 })" @update:model-value="onInput(i, $event)"> </MkInput> <button class="_button" @click="remove(i)"> <i class="ti ti-x"></i> diff --git a/packages/client/src/components/MkPostForm.vue b/packages/client/src/components/MkPostForm.vue index 6911899799..eb302ccc96 100644 --- a/packages/client/src/components/MkPostForm.vue +++ b/packages/client/src/components/MkPostForm.vue @@ -43,7 +43,7 @@ <input v-show="useCw" ref="cwInputEl" v-model="cw" class="cw" :placeholder="i18n.ts.annotation" @keydown="onKeydown"> <textarea ref="textareaEl" v-model="text" class="text" :class="{ withCw: useCw }" :disabled="posting" :placeholder="placeholder" data-cy-post-form-text @keydown="onKeydown" @paste="onPaste" @compositionupdate="onCompositionUpdate" @compositionend="onCompositionEnd"/> <input v-show="withHashtags" ref="hashtagsInputEl" v-model="hashtags" class="hashtags" :placeholder="i18n.ts.hashtags" list="hashtags"> - <XPostFormAttaches v-model="files" class="attaches" @detach="detachFile" @changeSensitive="updateFileSensitive" @changeName="updateFileName"/> + <XPostFormAttaches v-model="files" class="attaches" @detach="detachFile" @change-sensitive="updateFileSensitive" @change-name="updateFileName"/> <XPollEditor v-if="poll" v-model="poll" @destroyed="poll = null"/> <XNotePreview v-if="showPreview" class="preview" :text="text"/> <footer> diff --git a/packages/client/src/components/MkPostFormAttaches.vue b/packages/client/src/components/MkPostFormAttaches.vue index 2e16cc52a7..766cc9a06c 100644 --- a/packages/client/src/components/MkPostFormAttaches.vue +++ b/packages/client/src/components/MkPostFormAttaches.vue @@ -1,6 +1,6 @@ <template> <div v-show="props.modelValue.length != 0" class="skeikyzd"> - <Sortable :model-value="props.modelValue" class="files" item-key="id" :animation="150" :delay="100" :delay-on-touch-only="true" @update:modelValue="v => emit('update:modelValue', v)"> + <Sortable :model-value="props.modelValue" class="files" item-key="id" :animation="150" :delay="100" :delay-on-touch-only="true" @update:model-value="v => emit('update:modelValue', v)"> <template #item="{element}"> <div class="file" @click="showFileMenu(element, $event)" @contextmenu.prevent="showFileMenu(element, $event)"> <MkDriveFileThumbnail :data-id="element.id" class="thumbnail" :file="element" fit="cover"/> diff --git a/packages/client/src/components/MkSignin.vue b/packages/client/src/components/MkSignin.vue index a842ab6a5e..3fbd3dc4e7 100644 --- a/packages/client/src/components/MkSignin.vue +++ b/packages/client/src/components/MkSignin.vue @@ -6,7 +6,7 @@ {{ message }} </MkInfo> <div v-if="!totpLogin" class="normal-signin"> - <MkInput v-model="username" class="_formBlock" :placeholder="i18n.ts.username" type="text" pattern="^[a-zA-Z0-9_]+$" :spellcheck="false" autofocus required data-cy-signin-username @update:modelValue="onUsernameChange"> + <MkInput v-model="username" class="_formBlock" :placeholder="i18n.ts.username" type="text" pattern="^[a-zA-Z0-9_]+$" :spellcheck="false" autofocus required data-cy-signin-username @update:model-value="onUsernameChange"> <template #prefix>@</template> <template #suffix>@{{ host }}</template> </MkInput> diff --git a/packages/client/src/components/MkSignup.vue b/packages/client/src/components/MkSignup.vue index acb85438f0..d987425ca3 100644 --- a/packages/client/src/components/MkSignup.vue +++ b/packages/client/src/components/MkSignup.vue @@ -4,7 +4,7 @@ <template #label>{{ i18n.ts.invitationCode }}</template> <template #prefix><i class="ti ti-key"></i></template> </MkInput> - <MkInput v-model="username" class="_formBlock" type="text" pattern="^[a-zA-Z0-9_]{1,20}$" :spellcheck="false" required data-cy-signup-username @update:modelValue="onChangeUsername"> + <MkInput v-model="username" class="_formBlock" type="text" pattern="^[a-zA-Z0-9_]{1,20}$" :spellcheck="false" required data-cy-signup-username @update:model-value="onChangeUsername"> <template #label>{{ i18n.ts.username }} <div v-tooltip:dialog="i18n.ts.usernameInfo" class="_button _help"><i class="ti ti-question-circle"></i></div></template> <template #prefix>@</template> <template #suffix>@{{ host }}</template> @@ -18,7 +18,7 @@ <span v-else-if="usernameState === 'max-range'" style="color: var(--error)"><i class="ti ti-alert-triangle ti-fw"></i> {{ i18n.ts.tooLong }}</span> </template> </MkInput> - <MkInput v-if="instance.emailRequiredForSignup" v-model="email" class="_formBlock" :debounce="true" type="email" :spellcheck="false" required data-cy-signup-email @update:modelValue="onChangeEmail"> + <MkInput v-if="instance.emailRequiredForSignup" v-model="email" class="_formBlock" :debounce="true" type="email" :spellcheck="false" required data-cy-signup-email @update:model-value="onChangeEmail"> <template #label>{{ i18n.ts.emailAddress }} <div v-tooltip:dialog="i18n.ts._signup.emailAddressInfo" class="_button _help"><i class="ti ti-question-circle"></i></div></template> <template #prefix><i class="ti ti-mail"></i></template> <template #caption> @@ -33,7 +33,7 @@ <span v-else-if="emailState === 'error'" style="color: var(--error)"><i class="ti ti-alert-triangle ti-fw"></i> {{ i18n.ts.error }}</span> </template> </MkInput> - <MkInput v-model="password" class="_formBlock" type="password" autocomplete="new-password" required data-cy-signup-password @update:modelValue="onChangePassword"> + <MkInput v-model="password" class="_formBlock" type="password" autocomplete="new-password" required data-cy-signup-password @update:model-value="onChangePassword"> <template #label>{{ i18n.ts.password }}</template> <template #prefix><i class="ti ti-lock"></i></template> <template #caption> @@ -42,7 +42,7 @@ <span v-if="passwordStrength == 'high'" style="color: var(--success)"><i class="ti ti-check ti-fw"></i> {{ i18n.ts.strongPassword }}</span> </template> </MkInput> - <MkInput v-model="retypedPassword" class="_formBlock" type="password" autocomplete="new-password" required data-cy-signup-password-retype @update:modelValue="onChangePasswordRetype"> + <MkInput v-model="retypedPassword" class="_formBlock" type="password" autocomplete="new-password" required data-cy-signup-password-retype @update:model-value="onChangePasswordRetype"> <template #label>{{ i18n.ts.password }} ({{ i18n.ts.retype }})</template> <template #prefix><i class="ti ti-lock"></i></template> <template #caption> diff --git a/packages/client/src/components/MkSignupDialog.vue b/packages/client/src/components/MkSignupDialog.vue index d6d4553bc6..77497021c3 100644 --- a/packages/client/src/components/MkSignupDialog.vue +++ b/packages/client/src/components/MkSignupDialog.vue @@ -10,7 +10,7 @@ <div class="_monolithic_"> <div class="_section"> - <XSignup :auto-set="autoSet" @signup="onSignup" @signupEmailPending="onSignupEmailPending"/> + <XSignup :auto-set="autoSet" @signup="onSignup" @signup-email-pending="onSignupEmailPending"/> </div> </div> </XModalWindow> diff --git a/packages/client/src/components/MkUserSelectDialog.vue b/packages/client/src/components/MkUserSelectDialog.vue index 07caedfe3a..1d31769c30 100644 --- a/packages/client/src/components/MkUserSelectDialog.vue +++ b/packages/client/src/components/MkUserSelectDialog.vue @@ -12,11 +12,11 @@ <div class="tbhwbxda"> <div class="form"> <FormSplit :min-width="170"> - <MkInput v-model="username" :autofocus="true" @update:modelValue="search"> + <MkInput v-model="username" :autofocus="true" @update:model-value="search"> <template #label>{{ i18n.ts.username }}</template> <template #prefix>@</template> </MkInput> - <MkInput v-model="host" @update:modelValue="search"> + <MkInput v-model="host" @update:model-value="search"> <template #label>{{ i18n.ts.host }}</template> <template #prefix>@</template> </MkInput> diff --git a/packages/client/src/components/MkWidgets.vue b/packages/client/src/components/MkWidgets.vue index 5299b581b5..a0c77f91a9 100644 --- a/packages/client/src/components/MkWidgets.vue +++ b/packages/client/src/components/MkWidgets.vue @@ -14,20 +14,20 @@ item-key="id" handle=".handle" :animation="150" - @update:modelValue="v => emit('updateWidgets', v)" + @update:model-value="v => emit('updateWidgets', v)" > <template #item="{element}"> <div class="customize-container"> <button class="config _button" @click.prevent.stop="configWidget(element.id)"><i class="ti ti-settings"></i></button> <button class="remove _button" @click.prevent.stop="removeWidget(element)"><i class="ti ti-x"></i></button> <div class="handle"> - <component :is="`mkw-${element.name}`" :ref="el => widgetRefs[element.id] = el" class="widget" :widget="element" @updateProps="updateWidget(element.id, $event)"/> + <component :is="`mkw-${element.name}`" :ref="el => widgetRefs[element.id] = el" class="widget" :widget="element" @update-props="updateWidget(element.id, $event)"/> </div> </div> </template> </Sortable> </template> - <component :is="`mkw-${widget.name}`" v-for="widget in widgets" v-else :key="widget.id" :ref="el => widgetRefs[widget.id] = el" class="widget" :widget="widget" @updateProps="updateWidget(widget.id, $event)" @contextmenu.stop="onContextmenu(widget, $event)"/> + <component :is="`mkw-${widget.name}`" v-for="widget in widgets" v-else :key="widget.id" :ref="el => widgetRefs[widget.id] = el" class="widget" :widget="widget" @update-props="updateWidget(widget.id, $event)" @contextmenu.stop="onContextmenu(widget, $event)"/> </div> </template> diff --git a/packages/client/src/components/page/page.number-input.vue b/packages/client/src/components/page/page.number-input.vue index 0348ba7434..50cf6d0770 100644 --- a/packages/client/src/components/page/page.number-input.vue +++ b/packages/client/src/components/page/page.number-input.vue @@ -1,6 +1,6 @@ <template> <div> - <MkInput class="kudkigyw" :model-value="value" type="number" @update:modelValue="updateValue($event)"> + <MkInput class="kudkigyw" :model-value="value" type="number" @update:model-value="updateValue($event)"> <template #label>{{ hpml.interpolate(block.text) }}</template> </MkInput> </div> diff --git a/packages/client/src/components/page/page.radio-button.vue b/packages/client/src/components/page/page.radio-button.vue index b0940a8781..b4d9e01a54 100644 --- a/packages/client/src/components/page/page.radio-button.vue +++ b/packages/client/src/components/page/page.radio-button.vue @@ -1,7 +1,7 @@ <template> <div> <div>{{ hpml.interpolate(block.title) }}</div> - <MkRadio v-for="item in block.values" :key="item" :modelValue="value" :value="item" @update:modelValue="updateValue($event)">{{ item }}</MkRadio> + <MkRadio v-for="item in block.values" :key="item" :modelValue="value" :value="item" @update:model-value="updateValue($event)">{{ item }}</MkRadio> </div> </template> diff --git a/packages/client/src/components/page/page.switch.vue b/packages/client/src/components/page/page.switch.vue index ac8d5e05c8..64dc4ff8aa 100644 --- a/packages/client/src/components/page/page.switch.vue +++ b/packages/client/src/components/page/page.switch.vue @@ -1,6 +1,6 @@ <template> <div class="hkcxmtwj"> - <MkSwitch :model-value="value" @update:modelValue="updateValue($event)">{{ hpml.interpolate(block.text) }}</MkSwitch> + <MkSwitch :model-value="value" @update:model-value="updateValue($event)">{{ hpml.interpolate(block.text) }}</MkSwitch> </div> </template> diff --git a/packages/client/src/components/page/page.text-input.vue b/packages/client/src/components/page/page.text-input.vue index 5d7eef8bb9..840649ece6 100644 --- a/packages/client/src/components/page/page.text-input.vue +++ b/packages/client/src/components/page/page.text-input.vue @@ -1,6 +1,6 @@ <template> <div> - <MkInput class="kudkigyw" :model-value="value" type="text" @update:modelValue="updateValue($event)"> + <MkInput class="kudkigyw" :model-value="value" type="text" @update:model-value="updateValue($event)"> <template #label>{{ hpml.interpolate(block.text) }}</template> </MkInput> </div> diff --git a/packages/client/src/components/page/page.textarea-input.vue b/packages/client/src/components/page/page.textarea-input.vue index 6be0092851..507e1bd97b 100644 --- a/packages/client/src/components/page/page.textarea-input.vue +++ b/packages/client/src/components/page/page.textarea-input.vue @@ -1,6 +1,6 @@ <template> <div> - <MkTextarea :model-value="value" @update:modelValue="updateValue($event)"> + <MkTextarea :model-value="value" @update:model-value="updateValue($event)"> <template #label>{{ hpml.interpolate(block.text) }}</template> </MkTextarea> </div> diff --git a/packages/client/src/pages/admin-file.vue b/packages/client/src/pages/admin-file.vue index e923ca5df2..a11249e75d 100644 --- a/packages/client/src/pages/admin-file.vue +++ b/packages/client/src/pages/admin-file.vue @@ -32,7 +32,7 @@ <MkUserCardMini :user="file.user"/> </MkA> <div class="_formBlock"> - <MkSwitch v-model="isSensitive" @update:modelValue="toggleIsSensitive">NSFW</MkSwitch> + <MkSwitch v-model="isSensitive" @update:model-value="toggleIsSensitive">NSFW</MkSwitch> </div> <div class="_formBlock"> diff --git a/packages/client/src/pages/admin/security.vue b/packages/client/src/pages/admin/security.vue index 11c06257cc..2682bda337 100644 --- a/packages/client/src/pages/admin/security.vue +++ b/packages/client/src/pages/admin/security.vue @@ -65,7 +65,7 @@ <div class="_formRoot"> <span class="_formBlock">{{ i18n.ts.activeEmailValidationDescription }}</span> - <FormSwitch v-model="enableActiveEmailValidation" class="_formBlock" @update:modelValue="save"> + <FormSwitch v-model="enableActiveEmailValidation" class="_formBlock" @update:model-value="save"> <template #label>Enable</template> </FormSwitch> </div> @@ -77,7 +77,7 @@ <template v-else #suffix>Disabled</template> <div class="_formRoot"> - <FormSwitch v-model="enableIpLogging" class="_formBlock" @update:modelValue="save"> + <FormSwitch v-model="enableIpLogging" class="_formBlock" @update:model-value="save"> <template #label>Enable</template> </FormSwitch> </div> diff --git a/packages/client/src/pages/admin/users.vue b/packages/client/src/pages/admin/users.vue index bf630d28d2..d466e21907 100644 --- a/packages/client/src/pages/admin/users.vue +++ b/packages/client/src/pages/admin/users.vue @@ -30,11 +30,11 @@ </MkSelect> </div> <div class="inputs"> - <MkInput v-model="searchUsername" style="flex: 1;" type="text" :spellcheck="false" @update:modelValue="$refs.users.reload()"> + <MkInput v-model="searchUsername" style="flex: 1;" type="text" :spellcheck="false" @update:model-value="$refs.users.reload()"> <template #prefix>@</template> <template #label>{{ i18n.ts.username }}</template> </MkInput> - <MkInput v-model="searchHost" style="flex: 1;" type="text" :spellcheck="false" :disabled="pagination.params.origin === 'local'" @update:modelValue="$refs.users.reload()"> + <MkInput v-model="searchHost" style="flex: 1;" type="text" :spellcheck="false" :disabled="pagination.params.origin === 'local'" @update:model-value="$refs.users.reload()"> <template #prefix>@</template> <template #label>{{ i18n.ts.host }}</template> </MkInput> diff --git a/packages/client/src/pages/api-console.vue b/packages/client/src/pages/api-console.vue index a46b85462e..1d5339b44c 100644 --- a/packages/client/src/pages/api-console.vue +++ b/packages/client/src/pages/api-console.vue @@ -4,7 +4,7 @@ <MkSpacer :content-max="700"> <div class="_formRoot"> <div class="_formBlock"> - <MkInput v-model="endpoint" :datalist="endpoints" class="_formBlock" @update:modelValue="onEndpointChange()"> + <MkInput v-model="endpoint" :datalist="endpoints" class="_formBlock" @update:model-value="onEndpointChange()"> <template #label>Endpoint</template> </MkInput> <MkTextarea v-model="body" class="_formBlock" code> diff --git a/packages/client/src/pages/instance-info.vue b/packages/client/src/pages/instance-info.vue index 92288f573d..a2a1254360 100644 --- a/packages/client/src/pages/instance-info.vue +++ b/packages/client/src/pages/instance-info.vue @@ -26,8 +26,8 @@ <FormSection v-if="iAmModerator"> <template #label>Moderation</template> - <FormSwitch v-model="suspended" class="_formBlock" @update:modelValue="toggleSuspend">{{ i18n.ts.stopActivityDelivery }}</FormSwitch> - <FormSwitch v-model="isBlocked" class="_formBlock" @update:modelValue="toggleBlock">{{ i18n.ts.blockThisInstance }}</FormSwitch> + <FormSwitch v-model="suspended" class="_formBlock" @update:model-value="toggleSuspend">{{ i18n.ts.stopActivityDelivery }}</FormSwitch> + <FormSwitch v-model="isBlocked" class="_formBlock" @update:model-value="toggleBlock">{{ i18n.ts.blockThisInstance }}</FormSwitch> <MkButton @click="refreshMetadata"><i class="ti ti-refresh"></i> Refresh metadata</MkButton> </FormSection> diff --git a/packages/client/src/pages/settings/2fa.vue b/packages/client/src/pages/settings/2fa.vue index f0cb6bf79a..1803129aaa 100644 --- a/packages/client/src/pages/settings/2fa.vue +++ b/packages/client/src/pages/settings/2fa.vue @@ -18,7 +18,7 @@ </div> </div> - <MkSwitch v-if="$i.securityKeysList.length > 0" v-model="usePasswordLessLogin" @update:modelValue="updatePasswordLessLogin">{{ i18n.ts.passwordLessLogin }}</MkSwitch> + <MkSwitch v-if="$i.securityKeysList.length > 0" v-model="usePasswordLessLogin" @update:model-value="updatePasswordLessLogin">{{ i18n.ts.passwordLessLogin }}</MkSwitch> <MkInfo v-if="registration && registration.error" warn>{{ i18n.ts.error }} {{ registration.error }}</MkInfo> <MkButton v-if="!registration || registration.error" @click="addSecurityKey">{{ i18n.ts._2fa.registerKey }}</MkButton> diff --git a/packages/client/src/pages/settings/drive.vue b/packages/client/src/pages/settings/drive.vue index ed44509774..2d45b1add8 100644 --- a/packages/client/src/pages/settings/drive.vue +++ b/packages/client/src/pages/settings/drive.vue @@ -32,10 +32,10 @@ <template #label>{{ i18n.ts.keepOriginalUploading }}</template> <template #caption>{{ i18n.ts.keepOriginalUploadingDescription }}</template> </FormSwitch> - <FormSwitch v-model="alwaysMarkNsfw" class="_formBlock" @update:modelValue="saveProfile()"> + <FormSwitch v-model="alwaysMarkNsfw" class="_formBlock" @update:model-value="saveProfile()"> <template #label>{{ i18n.ts.alwaysMarkSensitive }}</template> </FormSwitch> - <FormSwitch v-model="autoSensitive" class="_formBlock" @update:modelValue="saveProfile()"> + <FormSwitch v-model="autoSensitive" class="_formBlock" @update:model-value="saveProfile()"> <template #label>{{ i18n.ts.enableAutoSensitive }}<span class="_beta">{{ i18n.ts.beta }}</span></template> <template #caption>{{ i18n.ts.enableAutoSensitiveDescription }}</template> </FormSwitch> diff --git a/packages/client/src/pages/settings/email.vue b/packages/client/src/pages/settings/email.vue index d4a6dc48e5..3fff8c6b1d 100644 --- a/packages/client/src/pages/settings/email.vue +++ b/packages/client/src/pages/settings/email.vue @@ -10,7 +10,7 @@ </FormSection> <FormSection> - <FormSwitch :model-value="$i.receiveAnnouncementEmail" @update:modelValue="onChangeReceiveAnnouncementEmail"> + <FormSwitch :model-value="$i.receiveAnnouncementEmail" @update:model-value="onChangeReceiveAnnouncementEmail"> {{ i18n.ts.receiveAnnouncementFromInstance }} </FormSwitch> </FormSection> diff --git a/packages/client/src/pages/settings/notifications.vue b/packages/client/src/pages/settings/notifications.vue index e24be99cb6..e85fede157 100644 --- a/packages/client/src/pages/settings/notifications.vue +++ b/packages/client/src/pages/settings/notifications.vue @@ -9,7 +9,7 @@ <FormSection> <template #label>{{ i18n.ts.pushNotification }}</template> <MkPushNotificationAllowButton ref="allowButton" /> - <FormSwitch class="_formBlock" :disabled="!pushRegistrationInServer" :model-value="sendReadMessage" @update:modelValue="onChangeSendReadMessage"> + <FormSwitch class="_formBlock" :disabled="!pushRegistrationInServer" :model-value="sendReadMessage" @update:model-value="onChangeSendReadMessage"> <template #label>{{ i18n.ts.sendPushNotificationReadMessage }}</template> <template #caption> <I18n :src="i18n.ts.sendPushNotificationReadMessageCaption"> diff --git a/packages/client/src/pages/settings/other.vue b/packages/client/src/pages/settings/other.vue index f8eb594740..40bb202789 100644 --- a/packages/client/src/pages/settings/other.vue +++ b/packages/client/src/pages/settings/other.vue @@ -1,6 +1,6 @@ <template> <div class="_formRoot"> - <FormSwitch v-model="$i.injectFeaturedNote" class="_formBlock" @update:modelValue="onChangeInjectFeaturedNote"> + <FormSwitch v-model="$i.injectFeaturedNote" class="_formBlock" @update:model-value="onChangeInjectFeaturedNote"> {{ i18n.ts.showFeaturedNotesInTimeline }} </FormSwitch> diff --git a/packages/client/src/pages/settings/plugin.vue b/packages/client/src/pages/settings/plugin.vue index 2e4d54ec5c..905efd833d 100644 --- a/packages/client/src/pages/settings/plugin.vue +++ b/packages/client/src/pages/settings/plugin.vue @@ -7,7 +7,7 @@ <div v-for="plugin in plugins" :key="plugin.id" class="_formBlock _panel" style="padding: 20px;"> <span style="display: flex;"><b>{{ plugin.name }}</b><span style="margin-left: auto;">v{{ plugin.version }}</span></span> - <FormSwitch class="_formBlock" :model-value="plugin.active" @update:modelValue="changeActive(plugin, $event)">{{ i18n.ts.makeActive }}</FormSwitch> + <FormSwitch class="_formBlock" :model-value="plugin.active" @update:model-value="changeActive(plugin, $event)">{{ i18n.ts.makeActive }}</FormSwitch> <MkKeyValue class="_formBlock"> <template #key>{{ i18n.ts.author }}</template> diff --git a/packages/client/src/pages/settings/privacy.vue b/packages/client/src/pages/settings/privacy.vue index 44ffae5446..915ca05767 100644 --- a/packages/client/src/pages/settings/privacy.vue +++ b/packages/client/src/pages/settings/privacy.vue @@ -1,14 +1,14 @@ <template> <div class="_formRoot"> - <FormSwitch v-model="isLocked" class="_formBlock" @update:modelValue="save()">{{ i18n.ts.makeFollowManuallyApprove }}<template #caption>{{ i18n.ts.lockedAccountInfo }}</template></FormSwitch> - <FormSwitch v-if="isLocked" v-model="autoAcceptFollowed" class="_formBlock" @update:modelValue="save()">{{ i18n.ts.autoAcceptFollowed }}</FormSwitch> + <FormSwitch v-model="isLocked" class="_formBlock" @update:model-value="save()">{{ i18n.ts.makeFollowManuallyApprove }}<template #caption>{{ i18n.ts.lockedAccountInfo }}</template></FormSwitch> + <FormSwitch v-if="isLocked" v-model="autoAcceptFollowed" class="_formBlock" @update:model-value="save()">{{ i18n.ts.autoAcceptFollowed }}</FormSwitch> - <FormSwitch v-model="publicReactions" class="_formBlock" @update:modelValue="save()"> + <FormSwitch v-model="publicReactions" class="_formBlock" @update:model-value="save()"> {{ i18n.ts.makeReactionsPublic }} <template #caption>{{ i18n.ts.makeReactionsPublicDescription }}</template> </FormSwitch> - <FormSelect v-model="ffVisibility" class="_formBlock" @update:modelValue="save()"> + <FormSelect v-model="ffVisibility" class="_formBlock" @update:model-value="save()"> <template #label>{{ i18n.ts.ffVisibility }}</template> <option value="public">{{ i18n.ts._ffVisibility.public }}</option> <option value="followers">{{ i18n.ts._ffVisibility.followers }}</option> @@ -16,21 +16,21 @@ <template #caption>{{ i18n.ts.ffVisibilityDescription }}</template> </FormSelect> - <FormSwitch v-model="hideOnlineStatus" class="_formBlock" @update:modelValue="save()"> + <FormSwitch v-model="hideOnlineStatus" class="_formBlock" @update:model-value="save()"> {{ i18n.ts.hideOnlineStatus }} <template #caption>{{ i18n.ts.hideOnlineStatusDescription }}</template> </FormSwitch> - <FormSwitch v-model="noCrawle" class="_formBlock" @update:modelValue="save()"> + <FormSwitch v-model="noCrawle" class="_formBlock" @update:model-value="save()"> {{ i18n.ts.noCrawle }} <template #caption>{{ i18n.ts.noCrawleDescription }}</template> </FormSwitch> - <FormSwitch v-model="isExplorable" class="_formBlock" @update:modelValue="save()"> + <FormSwitch v-model="isExplorable" class="_formBlock" @update:model-value="save()"> {{ i18n.ts.makeExplorable }} <template #caption>{{ i18n.ts.makeExplorableDescription }}</template> </FormSwitch> <FormSection> - <FormSwitch v-model="rememberNoteVisibility" class="_formBlock" @update:modelValue="save()">{{ i18n.ts.rememberNoteVisibility }}</FormSwitch> + <FormSwitch v-model="rememberNoteVisibility" class="_formBlock" @update:model-value="save()">{{ i18n.ts.rememberNoteVisibility }}</FormSwitch> <FormFolder v-if="!rememberNoteVisibility" class="_formBlock"> <template #label>{{ i18n.ts.defaultNoteVisibility }}</template> <template v-if="defaultNoteVisibility === 'public'" #suffix>{{ i18n.ts._visibility.public }}</template> @@ -48,7 +48,7 @@ </FormFolder> </FormSection> - <FormSwitch v-model="keepCw" class="_formBlock" @update:modelValue="save()">{{ i18n.ts.keepCw }}</FormSwitch> + <FormSwitch v-model="keepCw" class="_formBlock" @update:model-value="save()">{{ i18n.ts.keepCw }}</FormSwitch> </div> </template> diff --git a/packages/client/src/pages/user-info.vue b/packages/client/src/pages/user-info.vue index adb8350516..addc8db9e6 100644 --- a/packages/client/src/pages/user-info.vue +++ b/packages/client/src/pages/user-info.vue @@ -85,9 +85,9 @@ </FormSection> </div> <div v-else-if="tab === 'moderation'" class="_formRoot"> - <FormSwitch v-if="user.host == null && $i.isAdmin && (moderator || !user.isAdmin)" v-model="moderator" class="_formBlock" @update:modelValue="toggleModerator">{{ i18n.ts.moderator }}</FormSwitch> - <FormSwitch v-model="silenced" class="_formBlock" @update:modelValue="toggleSilence">{{ i18n.ts.silence }}</FormSwitch> - <FormSwitch v-model="suspended" class="_formBlock" @update:modelValue="toggleSuspend">{{ i18n.ts.suspend }}</FormSwitch> + <FormSwitch v-if="user.host == null && $i.isAdmin && (moderator || !user.isAdmin)" v-model="moderator" class="_formBlock" @update:model-value="toggleModerator">{{ i18n.ts.moderator }}</FormSwitch> + <FormSwitch v-model="silenced" class="_formBlock" @update:model-value="toggleSilence">{{ i18n.ts.silence }}</FormSwitch> + <FormSwitch v-model="suspended" class="_formBlock" @update:model-value="toggleSuspend">{{ i18n.ts.suspend }}</FormSwitch> {{ i18n.ts.reflectMayTakeTime }} <div class="_formBlock"> <FormButton v-if="user.host == null && iAmModerator" inline style="margin-right: 8px;" @click="resetPassword"><i class="ti ti-key"></i> {{ i18n.ts.resetPassword }}</FormButton>