Resolve #1867
This commit is contained in:
parent
dfd991a6c6
commit
2c76d410ab
|
@ -31,6 +31,7 @@ unreleased
|
||||||
* AP: attributedTo, to, cc が Array や Object のパターンに対応
|
* AP: attributedTo, to, cc が Array や Object のパターンに対応
|
||||||
* AP: object type が Audio, Document, Image, Page, Video のパターンに対応
|
* AP: object type が Audio, Document, Image, Page, Video のパターンに対応
|
||||||
* フォロー解除時に確認ダイアログを表示するように
|
* フォロー解除時に確認ダイアログを表示するように
|
||||||
|
* ユーザー入力ダイアログで、入力時にユーザーの存在を確認するように
|
||||||
|
|
||||||
### 🐛Fixes
|
### 🐛Fixes
|
||||||
* 自分のインスタンスのルートURIへのリンクが無になる問題を修正
|
* 自分のインスタンスのルートURIへのリンクが無になる問題を修正
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
</template>
|
</template>
|
||||||
</ui-select>
|
</ui-select>
|
||||||
<ui-horizon-group no-grow class="buttons fit-bottom" v-if="!splash && (showOkButton || showCancelButton)">
|
<ui-horizon-group no-grow class="buttons fit-bottom" v-if="!splash && (showOkButton || showCancelButton)">
|
||||||
<ui-button @click="ok" v-if="showOkButton" primary :autofocus="!input && !select && !user">{{ (showCancelButton || input || select || user) ? $t('@.ok') : $t('@.got-it') }}</ui-button>
|
<ui-button @click="ok" v-if="showOkButton" primary :autofocus="!input && !select && !user" :disabled="!canOk">{{ (showCancelButton || input || select || user) ? $t('@.ok') : $t('@.got-it') }}</ui-button>
|
||||||
<ui-button @click="cancel" v-if="showCancelButton || input || select || user">{{ $t('@.cancel') }}</ui-button>
|
<ui-button @click="cancel" v-if="showCancelButton || input || select || user">{{ $t('@.cancel') }}</ui-button>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
</template>
|
</template>
|
||||||
|
@ -99,11 +99,26 @@ export default Vue.extend({
|
||||||
inputValue: this.input && this.input.default ? this.input.default : null,
|
inputValue: this.input && this.input.default ? this.input.default : null,
|
||||||
userInputValue: null,
|
userInputValue: null,
|
||||||
selectedValue: this.select ? this.select.items ? this.select.items[0].value : this.select.groupedItems[0].items[0].value : null,
|
selectedValue: this.select ? this.select.items ? this.select.items[0].value : this.select.groupedItems[0].items[0].value : null,
|
||||||
|
canOk: true,
|
||||||
faTimesCircle, faQuestionCircle
|
faTimesCircle, faQuestionCircle
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
|
watch: {
|
||||||
|
userInputValue() {
|
||||||
|
if (this.user) {
|
||||||
|
this.$root.api('users/show', parseAcct(this.userInputValue)).then(u => {
|
||||||
|
this.canOk = u != null;
|
||||||
|
}).catch(() => {
|
||||||
|
this.canOk = false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
|
if (this.user) this.canOk = false;
|
||||||
|
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
(this.$refs.bg as any).style.pointerEvents = 'auto';
|
(this.$refs.bg as any).style.pointerEvents = 'auto';
|
||||||
anime({
|
anime({
|
||||||
|
@ -131,6 +146,7 @@ export default Vue.extend({
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
async ok() {
|
async ok() {
|
||||||
|
if (!this.canOk) return;
|
||||||
if (!this.showOkButton) return;
|
if (!this.showOkButton) return;
|
||||||
|
|
||||||
if (this.user) {
|
if (this.user) {
|
||||||
|
|
Loading…
Reference in a new issue