summaryrefslogtreecommitdiff
path: root/src/client/app/mobile/api/post.ts
blob: 72919c6505105c3f5cba054a36bbc23e0424971e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import PostForm from '../views/components/post-form.vue';
//import RenoteForm from '../views/components/renote-form.vue';
import getNoteSummary from '../../../../renderers/get-note-summary';

export default (os) => (opts) => {
	const o = opts || {};

	if (o.renote) {
		/*const vm = new RenoteForm({
			propsData: {
				renote: o.renote
			}
		}).$mount();
		vm.$once('cancel', recover);
		vm.$once('note', recover);
		document.body.appendChild(vm.$el);*/

		const text = window.prompt(`「${getNoteSummary(o.renote)}」をRenote`);
		if (text == null) return;
		os.api('notes/create', {
			renoteId: o.renote.id,
			text: text == '' ? undefined : text
		});
	} else {
		const app = document.getElementById('app');
		app.style.display = 'none';

		function recover() {
			app.style.display = 'block';
		}

		const vm = new PostForm({
			parent: os.app,
			propsData: {
				reply: o.reply
			}
		}).$mount();
		vm.$once('cancel', recover);
		vm.$once('note', recover);
		document.body.appendChild(vm.$el);
		(vm as any).focus();
	}
};