enhance: shareページでより多くの情報を渡せるように (#7606)

* shareでより多くの情報を渡せるように

* from chat ui post-form, remove instant and add share

* fix await eating array, make document

* add changelog

* https://github.com/misskey-dev/misskey/pull/7606/files/3581bf9a060742dc59bf7fb8ea7316809cc60522#r692265037

* reply, renoteにも型定義

* 🎨

* 閉じなければ100ms後タイムラインに
This commit is contained in:
tamaina 2021-10-20 03:10:36 +09:00 committed by GitHub
parent 202cb38c40
commit ea8e6d88ab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 233 additions and 35 deletions

View file

@ -117,11 +117,28 @@ export default defineComponent({
type: String,
required: false
},
initialVisibility: {
type: String,
required: false
},
initialFiles: {
type: Array,
required: false
},
initialLocalOnly: {
type: Boolean,
required: false
},
visibleUsers: {
type: Array,
required: false,
default: () => []
},
initialNote: {
type: Object,
required: false
},
instant: {
share: {
type: Boolean,
required: false,
default: false
@ -150,8 +167,7 @@ export default defineComponent({
showPreview: false,
cw: null,
localOnly: this.$store.state.rememberNoteVisibility ? this.$store.state.localOnly : this.$store.state.defaultNoteLocalOnly,
visibility: this.$store.state.rememberNoteVisibility ? this.$store.state.visibility : this.$store.state.defaultNoteVisibility,
visibleUsers: [],
visibility: (this.$store.state.rememberNoteVisibility ? this.$store.state.visibility : this.$store.state.defaultNoteVisibility) as typeof noteVisibilities[number],
autocomplete: null,
draghover: false,
quoteId: null,
@ -246,6 +262,18 @@ export default defineComponent({
this.text = this.initialText;
}
if (this.initialVisibility) {
this.visibility = this.initialVisibility;
}
if (this.initialFiles) {
this.files = this.initialFiles;
}
if (typeof this.initialLocalOnly === 'boolean') {
this.localOnly = this.initialLocalOnly;
}
if (this.mention) {
this.text = this.mention.host ? `@${this.mention.username}@${toASCII(this.mention.host)}` : `@${this.mention.username}`;
this.text += ' ';
@ -321,7 +349,7 @@ export default defineComponent({
this.$nextTick(() => {
// 稿
if (!this.instant && !this.mention && !this.specified) {
if (!this.share && !this.mention && !this.specified) {
const draft = JSON.parse(localStorage.getItem('drafts') || '{}')[this.draftKey];
if (draft) {
this.text = draft.data.text;
@ -582,8 +610,6 @@ export default defineComponent({
},
saveDraft() {
if (this.instant) return;
const data = JSON.parse(localStorage.getItem('drafts') || '{}');
data[this.draftKey] = {