diff --git a/packages/client/src/components/abuse-report-window.vue b/packages/client/src/components/abuse-report-window.vue index 700ce30bb2fb17798c1c6be0a9cb3588f5aa0cb1..d6d229bc8d417261a3d2dd826015fc6d07434bca 100644 --- a/packages/client/src/components/abuse-report-window.vue +++ b/packages/client/src/components/abuse-report-window.vue @@ -61,7 +61,7 @@ export default defineComponent({ userId: this.user.id, comment: this.comment, }, undefined, res => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.abuseReported }); diff --git a/packages/client/src/components/drive.file.vue b/packages/client/src/components/drive.file.vue index c191127e8c96296639e85f2fb8bf43aef22fbb6f..7e510e4f5d61ba857db35c559fdd234bce5e5c9f 100644 --- a/packages/client/src/components/drive.file.vue +++ b/packages/client/src/components/drive.file.vue @@ -138,13 +138,11 @@ export default defineComponent({ }, rename() { - os.dialog({ + os.inputText({ title: this.$ts.renameFile, - input: { - placeholder: this.$ts.inputNewFileName, - default: this.file.name, - allowEmpty: false - } + placeholder: this.$ts.inputNewFileName, + default: this.file.name, + allowEmpty: false }).then(({ canceled, result: name }) => { if (canceled) return; os.api('drive/files/update', { @@ -191,10 +189,9 @@ export default defineComponent({ }, async deleteFile() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('driveFileDeleteConfirm', { name: this.file.name }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/components/drive.folder.vue b/packages/client/src/components/drive.folder.vue index 91e27cc8a1f9d467ef209f2c4823e5af33a066d5..95690b7e61edb2821537acd1670865084f6a278d 100644 --- a/packages/client/src/components/drive.folder.vue +++ b/packages/client/src/components/drive.folder.vue @@ -151,13 +151,13 @@ export default defineComponent({ }).catch(err => { switch (err) { case 'detected-circular-definition': - os.dialog({ + os.alert({ title: this.$ts.unableToProcess, text: this.$ts.circularReferenceFolder }); break; default: - os.dialog({ + os.alert({ type: 'error', text: this.$ts.somethingHappened }); @@ -191,12 +191,10 @@ export default defineComponent({ }, rename() { - os.dialog({ + os.inputText({ title: this.$ts.renameFolder, - input: { - placeholder: this.$ts.inputNewFolderName, - default: this.folder.name - } + placeholder: this.$ts.inputNewFolderName, + default: this.folder.name }).then(({ canceled, result: name }) => { if (canceled) return; os.api('drive/folders/update', { @@ -216,14 +214,14 @@ export default defineComponent({ }).catch(err => { switch(err.id) { case 'b0fc8a17-963c-405d-bfbc-859a487295e1': - os.dialog({ + os.alert({ type: 'error', title: this.$ts.unableToDelete, text: this.$ts.hasChildFilesOrFolders }); break; default: - os.dialog({ + os.alert({ type: 'error', text: this.$ts.unableToDelete }); diff --git a/packages/client/src/components/drive.vue b/packages/client/src/components/drive.vue index 2b72a0a1c6bbe178e98f8c7afc2c714d074e3be8..a785751ad2c9e852cea4eb9df82909cdc81620c0 100644 --- a/packages/client/src/components/drive.vue +++ b/packages/client/src/components/drive.vue @@ -274,13 +274,13 @@ export default defineComponent({ }).catch(err => { switch (err) { case 'detected-circular-definition': - os.dialog({ + os.alert({ title: this.$ts.unableToProcess, text: this.$ts.circularReferenceFolder }); break; default: - os.dialog({ + os.alert({ type: 'error', text: this.$ts.somethingHappened }); @@ -295,11 +295,10 @@ export default defineComponent({ }, urlUpload() { - os.dialog({ + os.inputText({ title: this.$ts.uploadFromUrl, - input: { - placeholder: this.$ts.uploadFromUrlDescription - } + type: 'url', + placeholder: this.$ts.uploadFromUrlDescription }).then(({ canceled, result: url }) => { if (canceled) return; os.api('drive/files/upload-from-url', { @@ -307,7 +306,7 @@ export default defineComponent({ folderId: this.folder ? this.folder.id : undefined }); - os.dialog({ + os.alert({ title: this.$ts.uploadFromUrlRequested, text: this.$ts.uploadFromUrlMayTakeTime }); @@ -315,11 +314,9 @@ export default defineComponent({ }, createFolder() { - os.dialog({ + os.inputText({ title: this.$ts.createFolder, - input: { - placeholder: this.$ts.folderName - } + placeholder: this.$ts.folderName }).then(({ canceled, result: name }) => { if (canceled) return; os.api('drive/folders/create', { @@ -332,12 +329,10 @@ export default defineComponent({ }, renameFolder(folder) { - os.dialog({ + os.inputText({ title: this.$ts.renameFolder, - input: { - placeholder: this.$ts.inputNewFolderName, - default: folder.name - } + placeholder: this.$ts.inputNewFolderName, + default: folder.name }).then(({ canceled, result: name }) => { if (canceled) return; os.api('drive/folders/update', { @@ -359,14 +354,14 @@ export default defineComponent({ }).catch(err => { switch(err.id) { case 'b0fc8a17-963c-405d-bfbc-859a487295e1': - os.dialog({ + os.alert({ type: 'error', title: this.$ts.unableToDelete, text: this.$ts.hasChildFilesOrFolders }); break; default: - os.dialog({ + os.alert({ type: 'error', text: this.$ts.unableToDelete }); diff --git a/packages/client/src/components/follow-button.vue b/packages/client/src/components/follow-button.vue index a96899027f4137467f3819f9476be00391c564e5..ab19c64768e93cae5f2c7bba3f33d4d57ff8fd54 100644 --- a/packages/client/src/components/follow-button.vue +++ b/packages/client/src/components/follow-button.vue @@ -94,10 +94,9 @@ export default defineComponent({ try { if (this.isFollowing) { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('unfollowConfirm', { name: this.user.name || this.user.username }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/components/note-detailed.vue b/packages/client/src/components/note-detailed.vue index 3b5b12a60a2e35c470144718c168253108a195fd..55e0fb8614cf5368e50595b0d795b9999cc0f0ad 100644 --- a/packages/client/src/components/note-detailed.vue +++ b/packages/client/src/components/note-detailed.vue @@ -456,18 +456,18 @@ export default defineComponent({ os.apiWithDialog('notes/create', { renoteId: this.appearNote.id }, undefined, (res: any) => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.renoted, }); }, (e: Error) => { if (e.id === 'b5c90186-4ab0-49c8-9bba-a1f76c282ba4') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantRenote, }); } else if (e.id === 'fd4cc33e-2a37-48dd-99cc-9b806eb2031a') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantReRenote, }); @@ -508,18 +508,18 @@ export default defineComponent({ os.apiWithDialog('notes/favorites/create', { noteId: this.appearNote.id }, undefined, (res: any) => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.favorited, }); }, (e: Error) => { if (e.id === 'a402c12b-34dd-41d2-97d8-4d2ffd96a1a6') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.alreadyFavorited, }); } else if (e.id === '6dd26674-e060-4816-909a-45ba3f4da458') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantFavorite, }); @@ -528,10 +528,9 @@ export default defineComponent({ }, del() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.noteDeleteConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; @@ -542,10 +541,9 @@ export default defineComponent({ }, delEdit() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.deleteAndEditConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; @@ -781,7 +779,7 @@ export default defineComponent({ noteId: this.appearNote.id }, undefined, null, e => { if (e.id === '72dab508-c64d-498f-8740-a8eec1ba385a') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.pinLimitExceeded }); @@ -828,9 +826,8 @@ export default defineComponent({ }, async promote() { - const { canceled, result: days } = await os.dialog({ + const { canceled, result: days } = await os.inputNumber({ title: this.$ts.numberOfDays, - input: { type: 'number' } }); if (canceled) return; diff --git a/packages/client/src/components/note.vue b/packages/client/src/components/note.vue index 2ab769db437e98d71ac8bd13224ad83a91821c5c..a948ca2e49dc80517df62906cc48de2c124861f7 100644 --- a/packages/client/src/components/note.vue +++ b/packages/client/src/components/note.vue @@ -432,18 +432,18 @@ export default defineComponent({ os.apiWithDialog('notes/create', { renoteId: this.appearNote.id }, undefined, (res: any) => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.renoted, }); }, (e: Error) => { if (e.id === 'b5c90186-4ab0-49c8-9bba-a1f76c282ba4') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantRenote, }); } else if (e.id === 'fd4cc33e-2a37-48dd-99cc-9b806eb2031a') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantReRenote, }); @@ -484,18 +484,18 @@ export default defineComponent({ os.apiWithDialog('notes/favorites/create', { noteId: this.appearNote.id }, undefined, (res: any) => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.favorited, }); }, (e: Error) => { if (e.id === 'a402c12b-34dd-41d2-97d8-4d2ffd96a1a6') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.alreadyFavorited, }); } else if (e.id === '6dd26674-e060-4816-909a-45ba3f4da458') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantFavorite, }); @@ -504,10 +504,9 @@ export default defineComponent({ }, del() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.noteDeleteConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; @@ -518,10 +517,9 @@ export default defineComponent({ }, delEdit() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.deleteAndEditConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; @@ -757,7 +755,7 @@ export default defineComponent({ noteId: this.appearNote.id }, undefined, null, e => { if (e.id === '72dab508-c64d-498f-8740-a8eec1ba385a') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.pinLimitExceeded }); @@ -804,9 +802,8 @@ export default defineComponent({ }, async promote() { - const { canceled, result: days } = await os.dialog({ + const { canceled, result: days } = await os.inputNumber({ title: this.$ts.numberOfDays, - input: { type: 'number' } }); if (canceled) return; diff --git a/packages/client/src/components/page/page.button.vue b/packages/client/src/components/page/page.button.vue index 51da84bd490741912bef341dbbf36377a0b37086..d6fa42bd59755a4453bb903910fa18f800873689 100644 --- a/packages/client/src/components/page/page.button.vue +++ b/packages/client/src/components/page/page.button.vue @@ -29,7 +29,7 @@ export default defineComponent({ click() { if (this.block.action === 'dialog') { this.hpml.eval(); - os.dialog({ + os.alert({ text: this.hpml.interpolate(this.block.content) }); } else if (this.block.action === 'resetRandom') { @@ -44,7 +44,7 @@ export default defineComponent({ } : {}) }); - os.dialog({ + os.alert({ type: 'success', text: this.hpml.interpolate(this.block.message) }); diff --git a/packages/client/src/components/page/page.vue b/packages/client/src/components/page/page.vue index 6d1c419a402c0cbc3efb2bc99d1e914aafb44b1d..cd81b16c5511ca2416f00c6316c3a7cbc259a745 100644 --- a/packages/client/src/components/page/page.vue +++ b/packages/client/src/components/page/page.vue @@ -40,7 +40,7 @@ export default defineComponent({ ast = parse(props.page.script); } catch (e) { console.error(e); - /*os.dialog({ + /*os.alert({ type: 'error', text: 'Syntax error :(' });*/ @@ -50,7 +50,7 @@ export default defineComponent({ hpml.eval(); }).catch(e => { console.error(e); - /*os.dialog({ + /*os.alert({ type: 'error', text: e });*/ diff --git a/packages/client/src/components/post-form-attaches.vue b/packages/client/src/components/post-form-attaches.vue index dff0dec21e43db4b05f322f8bdf0fa60f99b085c..23ccd54dd8abe11e866f024e9cd70c252e54c7ab 100644 --- a/packages/client/src/components/post-form-attaches.vue +++ b/packages/client/src/components/post-form-attaches.vue @@ -73,11 +73,9 @@ export default defineComponent({ }); }, async rename(file) { - const { canceled, result } = await os.dialog({ + const { canceled, result } = await os.inputText({ title: this.$ts.enterFileName, - input: { - default: file.name - }, + default: file.name, allowEmpty: false }); if (canceled) return; diff --git a/packages/client/src/components/post-form.vue b/packages/client/src/components/post-form.vue index 882a71a371b7eebe04138fffc05670dfd0aa0447..88b88e17eb521dd05b1cd36efd4988c74e575055 100644 --- a/packages/client/src/components/post-form.vue +++ b/packages/client/src/components/post-form.vue @@ -554,10 +554,9 @@ export default defineComponent({ if (!this.renote && !this.quoteId && paste.startsWith(url + '/notes/')) { e.preventDefault(); - os.dialog({ + os.confirm({ type: 'info', text: this.$ts.quoteQuestion, - showCancelButton: true }).then(({ canceled }) => { if (canceled) { insertTextAtCursor(this.$refs.text, paste); @@ -676,7 +675,7 @@ export default defineComponent({ }); }).catch(err => { this.posting = false; - os.dialog({ + os.alert({ type: 'error', text: err.message + '\n' + (err as any).id, }); diff --git a/packages/client/src/components/sample.vue b/packages/client/src/components/sample.vue index ba6c682c4442849112144f162aa48173d931834c..03ad6a98380c542d55ab412ff5ce31704ebeaf9f 100644 --- a/packages/client/src/components/sample.vue +++ b/packages/client/src/components/sample.vue @@ -57,7 +57,7 @@ export default defineComponent({ methods: { async openDialog() { - os.dialog({ + os.alert({ type: 'warning', title: 'Oh my Aichan', text: 'Lorem ipsum dolor sit amet, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', diff --git a/packages/client/src/components/signin.vue b/packages/client/src/components/signin.vue index 68bbd5368ebc282f682e00c2d2f736384fcba02b..ef299090fa568b968e1e6131685081dab13ccc61 100644 --- a/packages/client/src/components/signin.vue +++ b/packages/client/src/components/signin.vue @@ -150,7 +150,7 @@ export default defineComponent({ return this.onLogin(res); }).catch(err => { if (err === null) return; - os.dialog({ + os.alert({ type: 'error', text: this.$ts.signinFailed }); @@ -190,7 +190,7 @@ export default defineComponent({ loginFailed(err) { switch (err.id) { case '6cc579cc-885d-43d8-95c2-b8c7fc963280': { - os.dialog({ + os.alert({ type: 'error', title: this.$ts.loginFailed, text: this.$ts.noSuchUser @@ -202,7 +202,7 @@ export default defineComponent({ break; } default: { - os.dialog({ + os.alert({ type: 'error', title: this.$ts.loginFailed, text: JSON.stringify(err) diff --git a/packages/client/src/components/signup.vue b/packages/client/src/components/signup.vue index 621f30486fd217ea46bd2bf8a7d68616dcd9c697..0572fdaa7aeaf2fdfa3629c0b1115f8fb75b1df3 100644 --- a/packages/client/src/components/signup.vue +++ b/packages/client/src/components/signup.vue @@ -220,7 +220,7 @@ export default defineComponent({ 'g-recaptcha-response': this.reCaptchaResponse, }).then(() => { if (this.meta.emailRequiredForSignup) { - os.dialog({ + os.alert({ type: 'success', title: this.$ts._signup.almostThere, text: this.$t('_signup.emailSent', { email: this.email }), @@ -243,7 +243,7 @@ export default defineComponent({ this.$refs.hcaptcha?.reset?.(); this.$refs.recaptcha?.reset?.(); - os.dialog({ + os.alert({ type: 'error', text: this.$ts.somethingHappened }); diff --git a/packages/client/src/os.ts b/packages/client/src/os.ts index a570ffc9ed8a406940fae2169d3553affaa9ff14..4f547ba5a5d12888f22adc50b6ca8b273c61e617 100644 --- a/packages/client/src/os.ts +++ b/packages/client/src/os.ts @@ -214,13 +214,141 @@ export function modalPageWindow(path: string) { }, {}, 'closed'); } -export function dialog(props: { - type: 'error' | 'info' | 'success' | 'warning' | 'waiting'; +export function alert(props: { + type?: 'error' | 'info' | 'success' | 'warning' | 'waiting' | 'question'; title?: string | null; text?: string | null; -}) { +}): Promise<void> { return new Promise((resolve, reject) => { popup(import('@/components/dialog.vue'), props, { + done: result => { + resolve(); + }, + }, 'closed'); + }); +} + +export function confirm(props: { + type: 'error' | 'info' | 'success' | 'warning' | 'waiting' | 'question'; + title?: string | null; + text?: string | null; +}): Promise<{ canceled: boolean }> { + return new Promise((resolve, reject) => { + popup(import('@/components/dialog.vue'), { + ...props, + showCancelButton: true, + }, { + done: result => { + resolve(result ? result : { canceled: true }); + }, + }, 'closed'); + }); +} + +export function inputText(props: { + type?: 'text' | 'email' | 'password' | 'url'; + title?: string | null; + text?: string | null; + placeholder?: string | null; + default?: string | null; +}): Promise<{ canceled: true; result: undefined; } | { + canceled: false; result: string; +}> { + return new Promise((resolve, reject) => { + popup(import('@/components/dialog.vue'), { + title: props.title, + text: props.text, + input: { + type: props.type, + placeholder: props.placeholder, + default: props.default, + } + }, { + done: result => { + resolve(result ? result : { canceled: true }); + }, + }, 'closed'); + }); +} + +export function inputNumber(props: { + title?: string | null; + text?: string | null; + placeholder?: string | null; + default?: number | null; +}): Promise<{ canceled: true; result: undefined; } | { + canceled: false; result: number; +}> { + return new Promise((resolve, reject) => { + popup(import('@/components/dialog.vue'), { + title: props.title, + text: props.text, + input: { + type: 'number', + placeholder: props.placeholder, + default: props.default, + } + }, { + done: result => { + resolve(result ? result : { canceled: true }); + }, + }, 'closed'); + }); +} + +export function inputDate(props: { + title?: string | null; + text?: string | null; + placeholder?: string | null; + default?: Date | null; +}): Promise<{ canceled: true; result: undefined; } | { + canceled: false; result: Date; +}> { + return new Promise((resolve, reject) => { + popup(import('@/components/dialog.vue'), { + title: props.title, + text: props.text, + input: { + type: 'date', + placeholder: props.placeholder, + default: props.default, + } + }, { + done: result => { + resolve(result ? { result: new Date(result.result), canceled: false } : { canceled: true }); + }, + }, 'closed'); + }); +} + +export function select(props: { + title?: string | null; + text?: string | null; + default?: string | null; + items?: { + value: string; + text: string; + }[]; + groupedItems?: { + label: string; + items: { + value: string; + text: string; + }[]; + }[]; +}): Promise<{ canceled: true; result: undefined; } | { + canceled: false; result: string; +}> { + return new Promise((resolve, reject) => { + popup(import('@/components/dialog.vue'), { + title: props.title, + text: props.text, + select: { + items: props.items, + groupedItems: props.groupedItems, + default: props.default, + } + }, { done: result => { resolve(result ? result : { canceled: true }); }, diff --git a/packages/client/src/pages/admin/ads.vue b/packages/client/src/pages/admin/ads.vue index df6c9d5d00ff2b8bfdedbaaa09efb56da75caa1e..5652080cd758a6f6d3e8bfda30cf661bbc0d2b18 100644 --- a/packages/client/src/pages/admin/ads.vue +++ b/packages/client/src/pages/admin/ads.vue @@ -101,10 +101,9 @@ export default defineComponent({ }, remove(ad) { - os.dialog({ + os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: ad.url }), - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; this.ads = this.ads.filter(x => x != ad); diff --git a/packages/client/src/pages/admin/announcements.vue b/packages/client/src/pages/admin/announcements.vue index a64008967fe314215f9e5962065130f623bd05b8..301b0f9f5f9c9150e4441bb620b109dc6ec5a1e5 100644 --- a/packages/client/src/pages/admin/announcements.vue +++ b/packages/client/src/pages/admin/announcements.vue @@ -76,10 +76,9 @@ export default defineComponent({ }, remove(announcement) { - os.dialog({ + os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: announcement.title }), - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; this.announcements = this.announcements.filter(x => x != announcement); @@ -90,24 +89,24 @@ export default defineComponent({ save(announcement) { if (announcement.id == null) { os.api('admin/announcements/create', announcement).then(() => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.saved }); }).catch(e => { - os.dialog({ + os.alert({ type: 'error', text: e }); }); } else { os.api('admin/announcements/update', announcement).then(() => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.saved }); }).catch(e => { - os.dialog({ + os.alert({ type: 'error', text: e }); diff --git a/packages/client/src/pages/admin/email-settings.vue b/packages/client/src/pages/admin/email-settings.vue index 3733f53a23c7659fabb6facbb239e84c1ff7636b..aad971830e77797200b0e2c5e2432eda47205215 100644 --- a/packages/client/src/pages/admin/email-settings.vue +++ b/packages/client/src/pages/admin/email-settings.vue @@ -96,11 +96,10 @@ export default defineComponent({ }, async testEmail() { - const { canceled, result: destination } = await os.dialog({ + const { canceled, result: destination } = await os.inputText({ title: this.$ts.destination, - input: { - placeholder: this.$instance.maintainerEmail - } + type: 'email', + placeholder: this.$instance.maintainerEmail }); if (canceled) return; os.apiWithDialog('admin/send-email', { diff --git a/packages/client/src/pages/admin/emoji-edit-dialog.vue b/packages/client/src/pages/admin/emoji-edit-dialog.vue index e61285510551f89c805563f76d650098723c7c45..dcc5a9cbeedfeb06076c18161414620cee892539 100644 --- a/packages/client/src/pages/admin/emoji-edit-dialog.vue +++ b/packages/client/src/pages/admin/emoji-edit-dialog.vue @@ -89,10 +89,9 @@ export default defineComponent({ }, async del() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: this.emoji.name }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/admin/file-dialog.vue b/packages/client/src/pages/admin/file-dialog.vue index 016a012ea5189dc17797c9e5a90a25c7b5f33335..0d36276553ea40a921fe2695587a96ab887b9937 100644 --- a/packages/client/src/pages/admin/file-dialog.vue +++ b/packages/client/src/pages/admin/file-dialog.vue @@ -86,10 +86,9 @@ export default defineComponent({ }, async del() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: this.file.name }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/admin/files.vue b/packages/client/src/pages/admin/files.vue index e291d97bbcd41297c75a9a20856bf429d0d99c39..30bef13356db6ae8a1a0cc1b6ac5b2672b53a5c4 100644 --- a/packages/client/src/pages/admin/files.vue +++ b/packages/client/src/pages/admin/files.vue @@ -124,10 +124,9 @@ export default defineComponent({ methods: { clear() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.clearCachedFilesConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; @@ -146,7 +145,7 @@ export default defineComponent({ this.show(file); }).catch(e => { if (e.code === 'NO_SUCH_FILE') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.notFound }); diff --git a/packages/client/src/pages/admin/index.vue b/packages/client/src/pages/admin/index.vue index d3f9406db75c0b235d02a2f7a76c95baf881fe11..24ca2f65f25f9e5ebb3d97b6dcd24c910bbbfc1e 100644 --- a/packages/client/src/pages/admin/index.vue +++ b/packages/client/src/pages/admin/index.vue @@ -281,12 +281,12 @@ export default defineComponent({ const invite = () => { os.api('admin/invite').then(x => { - os.dialog({ + os.alert({ type: 'info', text: x.code }); }).catch(e => { - os.dialog({ + os.alert({ type: 'error', text: e }); diff --git a/packages/client/src/pages/admin/queue.vue b/packages/client/src/pages/admin/queue.vue index 896298840c7df0a6aa74590c0ba30f5577a78968..0886216c7b203673c87cb0891da11df4633a5982 100644 --- a/packages/client/src/pages/admin/queue.vue +++ b/packages/client/src/pages/admin/queue.vue @@ -57,11 +57,10 @@ export default defineComponent({ methods: { clear() { - os.dialog({ + os.confirm({ type: 'warning', title: this.$ts.clearQueueConfirmTitle, text: this.$ts.clearQueueConfirmText, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; diff --git a/packages/client/src/pages/admin/relays.vue b/packages/client/src/pages/admin/relays.vue index fd0ce97d57e42863c78cc4f58408d709ef8b468c..f4cfc2a8852f87e5be2ee356ec1ba5488cad1a0a 100644 --- a/packages/client/src/pages/admin/relays.vue +++ b/packages/client/src/pages/admin/relays.vue @@ -53,11 +53,10 @@ export default defineComponent({ methods: { async addRelay() { - const { canceled, result: inbox } = await os.dialog({ + const { canceled, result: inbox } = await os.inputText({ title: this.$ts.addRelay, - input: { - placeholder: this.$ts.inboxUrl - } + type: 'url', + placeholder: this.$ts.inboxUrl }); if (canceled) return; os.api('admin/relays/add', { @@ -65,7 +64,7 @@ export default defineComponent({ }).then((relay: any) => { this.refresh(); }).catch((e: any) => { - os.dialog({ + os.alert({ type: 'error', text: e.message || e }); @@ -78,7 +77,7 @@ export default defineComponent({ }).then(() => { this.refresh(); }).catch((e: any) => { - os.dialog({ + os.alert({ type: 'error', text: e.message || e }); diff --git a/packages/client/src/pages/admin/users.vue b/packages/client/src/pages/admin/users.vue index f4a2ffa6d2d6431d862ced68686f89c5d09910a6..3c43c7aa365ecf162978ebfa0093a011b81fd49f 100644 --- a/packages/client/src/pages/admin/users.vue +++ b/packages/client/src/pages/admin/users.vue @@ -150,15 +150,14 @@ export default defineComponent({ }, async addUser() { - const { canceled: canceled1, result: username } = await os.dialog({ + const { canceled: canceled1, result: username } = await os.inputText({ title: this.$ts.username, - input: true }); if (canceled1) return; - const { canceled: canceled2, result: password } = await os.dialog({ + const { canceled: canceled2, result: password } = await os.inputText({ title: this.$ts.password, - input: { type: 'password' } + type: 'password' }); if (canceled2) return; diff --git a/packages/client/src/pages/advanced-theme-editor.vue b/packages/client/src/pages/advanced-theme-editor.vue index eebfc21b3f1d2b61c4d81c787578bacbddee4bdc..122c7821b7aca7d9537b8ff4dfa604a9aa26eee4 100644 --- a/packages/client/src/pages/advanced-theme-editor.vue +++ b/packages/client/src/pages/advanced-theme-editor.vue @@ -175,10 +175,9 @@ export default defineComponent({ }, async confirm(): Promise<boolean> { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$ts.leaveConfirm, - showCancelButton: true }); return !canceled; }, @@ -192,9 +191,8 @@ export default defineComponent({ }, async del(i: number) { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', - showCancelButton: true, text: this.$t('_theme.deleteConstantConfirm', { const: this.theme[i][0] }), }); if (canceled) return; @@ -202,9 +200,8 @@ export default defineComponent({ }, async addConst() { - const { canceled, result } = await os.dialog({ + const { canceled, result } = await os.inputText({ title: this.$ts._theme.inputConstantName, - input: true }); if (canceled) return; this.theme.push([ '$' + result, '#000000']); @@ -213,7 +210,7 @@ export default defineComponent({ save() { const theme = convertToMisskeyTheme(this.theme, this.name, this.description, this.author, this.baseTheme); addTheme(theme); - os.dialog({ + os.alert({ type: 'success', text: this.$t('_theme.installed', { name: theme.name }) }); @@ -225,7 +222,7 @@ export default defineComponent({ try { applyTheme(theme, false); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: e.message }); @@ -246,7 +243,7 @@ export default defineComponent({ this.theme = convertToViewModel(theme); this.themeToImport = ''; } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: e.message }); diff --git a/packages/client/src/pages/antenna-timeline.vue b/packages/client/src/pages/antenna-timeline.vue index f7f6990fa87d1a72f141302779c165196701a7db..a874ca60258d6e625959337dbd6f42786ff659d9 100644 --- a/packages/client/src/pages/antenna-timeline.vue +++ b/packages/client/src/pages/antenna-timeline.vue @@ -93,15 +93,12 @@ export default defineComponent({ }, async timetravel() { - const { canceled, result: date } = await os.dialog({ + const { canceled, result: date } = await os.inputDate({ title: this.$ts.date, - input: { - type: 'date' - } }); if (canceled) return; - this.$refs.tl.timetravel(new Date(date)); + this.$refs.tl.timetravel(date); }, settings() { diff --git a/packages/client/src/pages/clip.vue b/packages/client/src/pages/clip.vue index 510a73ce68615da49d1ac665c05332c9713fa693..dc7abf36b45ac67b1ed531972ab183f0071a79a4 100644 --- a/packages/client/src/pages/clip.vue +++ b/packages/client/src/pages/clip.vue @@ -114,10 +114,9 @@ export default defineComponent({ text: this.$ts.delete, danger: true, action: async () => { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('deleteAreYouSure', { x: this.clip.name }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/follow.vue b/packages/client/src/pages/follow.vue index e8eaad73bfe681dde520fac167fe1f9043bb5401..d8a6824dcaf1df7f22e70aaa262459ced0924ab2 100644 --- a/packages/client/src/pages/follow.vue +++ b/packages/client/src/pages/follow.vue @@ -25,7 +25,7 @@ export default defineComponent({ } else if (res.type === 'Note') { this.$router.push(`/notes/${res.object.id}`); } else { - os.dialog({ + os.alert({ type: 'error', text: 'Not a user' }).then(() => { @@ -45,10 +45,9 @@ export default defineComponent({ methods: { async follow(user) { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'question', text: this.$t('followConfirm', { name: user.name || user.username }), - showCancelButton: true }); if (canceled) { diff --git a/packages/client/src/pages/gallery/edit.vue b/packages/client/src/pages/gallery/edit.vue index 1ee3a9390b1e63dfca8f61fbeb48b7f407680513..b34928713d4817556c1bbc8dc4a55a2ab5e9a555 100644 --- a/packages/client/src/pages/gallery/edit.vue +++ b/packages/client/src/pages/gallery/edit.vue @@ -126,10 +126,9 @@ export default defineComponent({ }, async del() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$ts.deleteConfirm, - showCancelButton: true }); if (canceled) return; await os.apiWithDialog('gallery/posts/delete', { diff --git a/packages/client/src/pages/gallery/post.vue b/packages/client/src/pages/gallery/post.vue index 255954def094b15b8cd8f9c6a01cdb69148d9620..531ecda8deba61b5605c25df2ae0b124e83e46a2 100644 --- a/packages/client/src/pages/gallery/post.vue +++ b/packages/client/src/pages/gallery/post.vue @@ -148,9 +148,8 @@ export default defineComponent({ }, async unlike() { - const confirm = await os.dialog({ + const confirm = await os.confirm({ type: 'warning', - showCancelButton: true, text: this.$ts.unlikeConfirm, }); if (confirm.canceled) return; diff --git a/packages/client/src/pages/messaging/index.vue b/packages/client/src/pages/messaging/index.vue index 896c3927ce97d2c5cac7fe2b2358427044877083..d0a02aa443e11accd77b2b8376675fefb2df8dcb 100644 --- a/packages/client/src/pages/messaging/index.vue +++ b/packages/client/src/pages/messaging/index.vue @@ -140,22 +140,18 @@ export default defineComponent({ const groups1 = await os.api('users/groups/owned'); const groups2 = await os.api('users/groups/joined'); if (groups1.length === 0 && groups2.length === 0) { - os.dialog({ + os.alert({ type: 'warning', title: this.$ts.youHaveNoGroups, text: this.$ts.joinOrCreateGroup, }); return; } - const { canceled, result: group } = await os.dialog({ - type: null, + const { canceled, result: group } = await os.select({ title: this.$ts.group, - select: { - items: groups1.concat(groups2).map(group => ({ - value: group, text: group.name - })) - }, - showCancelButton: true + items: groups1.concat(groups2).map(group => ({ + value: group, text: group.name + })) }); if (canceled) return; this.$router.push(`/my/messaging/group/${group.id}`); diff --git a/packages/client/src/pages/messaging/messaging-room.form.vue b/packages/client/src/pages/messaging/messaging-room.form.vue index aafed2632dc1330586681822853ac17a77a807a0..d378fc186b925247c5de7e2b94f2b2e6b13029f3 100644 --- a/packages/client/src/pages/messaging/messaging-room.form.vue +++ b/packages/client/src/pages/messaging/messaging-room.form.vue @@ -95,20 +95,11 @@ export default defineComponent({ const lio = file.name.lastIndexOf('.'); const ext = lio >= 0 ? file.name.slice(lio) : ''; const formatted = `${formatTimeString(new Date(file.lastModified), this.$store.state.pastedFileName).replace(/{{number}}/g, '1')}${ext}`; - const name = this.$store.state.pasteDialog - ? await os.dialog({ - title: this.$ts.enterFileName, - input: { - default: formatted - }, - allowEmpty: false - }).then(({ canceled, result }) => canceled ? false : result) - : formatted; - if (name) this.upload(file, name); + if (formatted) this.upload(file, formatted); } } else { if (items[0].kind == 'file') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.onlyOneFileCanBeAttached }); @@ -133,7 +124,7 @@ export default defineComponent({ return; } else if (e.dataTransfer.files.length > 1) { e.preventDefault(); - os.dialog({ + os.alert({ type: 'error', text: this.$ts.onlyOneFileCanBeAttached }); diff --git a/packages/client/src/pages/messaging/messaging-room.vue b/packages/client/src/pages/messaging/messaging-room.vue index 3a19b12762d63de9c8259397dd0236035a450af4..d71e415c8fa23246bc624dce52f837f72c92edd0 100644 --- a/packages/client/src/pages/messaging/messaging-room.vue +++ b/packages/client/src/pages/messaging/messaging-room.vue @@ -182,7 +182,7 @@ const Component = defineComponent({ this.form.upload(e.dataTransfer.files[0]); return; } else if (e.dataTransfer.files.length > 1) { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.onlyOneFileCanBeAttached }); diff --git a/packages/client/src/pages/my-antennas/editor.vue b/packages/client/src/pages/my-antennas/editor.vue index 5ad3d504860377b0bdb25b013bf8d485d04bc128..bf3ed25b42c73b7718dfe319ff20acb99aff707e 100644 --- a/packages/client/src/pages/my-antennas/editor.vue +++ b/packages/client/src/pages/my-antennas/editor.vue @@ -150,10 +150,9 @@ export default defineComponent({ }, async deleteAntenna() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: this.antenna.name }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/my-groups/group.vue b/packages/client/src/pages/my-groups/group.vue index 9548c374d22fc697530347c8a32f5a46bfa12fca..b79e1cb49cd470c35ad78167675a2ae4c8c89069 100644 --- a/packages/client/src/pages/my-groups/group.vue +++ b/packages/client/src/pages/my-groups/group.vue @@ -106,11 +106,9 @@ export default defineComponent({ }, async renameGroup() { - const { canceled, result: name } = await os.dialog({ + const { canceled, result: name } = await os.inputText({ title: this.$ts.groupName, - input: { - default: this.group.name - } + default: this.group.name }); if (canceled) return; @@ -132,10 +130,9 @@ export default defineComponent({ }, async deleteGroup() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: this.group.name }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/my-groups/index.vue b/packages/client/src/pages/my-groups/index.vue index 77e7d6088eef0a204abc970cea091324027ac240..1c66eb14ddf104cace8e569ac9c3c9ff4c354024 100644 --- a/packages/client/src/pages/my-groups/index.vue +++ b/packages/client/src/pages/my-groups/index.vue @@ -88,9 +88,8 @@ export default defineComponent({ methods: { async create() { - const { canceled, result: name } = await os.dialog({ + const { canceled, result: name } = await os.inputText({ title: this.$ts.groupName, - input: true }); if (canceled) return; await os.api('users/groups/create', { name: name }); diff --git a/packages/client/src/pages/my-lists/index.vue b/packages/client/src/pages/my-lists/index.vue index adb59db665e94a7612629d38144b401879d5586f..a1b0fee3179c9b4b5b428cc19d0c4de9ea458b0d 100644 --- a/packages/client/src/pages/my-lists/index.vue +++ b/packages/client/src/pages/my-lists/index.vue @@ -46,9 +46,8 @@ export default defineComponent({ methods: { async create() { - const { canceled, result: name } = await os.dialog({ + const { canceled, result: name } = await os.inputText({ title: this.$ts.enterListName, - input: true }); if (canceled) return; await os.api('users/lists/create', { name: name }); diff --git a/packages/client/src/pages/my-lists/list.vue b/packages/client/src/pages/my-lists/list.vue index f2a02cadc93e4f4b3c2881de27eca10aef9fe519..fd986b4097aa678ba639df48eb0ce7b6439923f6 100644 --- a/packages/client/src/pages/my-lists/list.vue +++ b/packages/client/src/pages/my-lists/list.vue @@ -100,11 +100,9 @@ export default defineComponent({ }, async renameList() { - const { canceled, result: name } = await os.dialog({ + const { canceled, result: name } = await os.inputText({ title: this.$ts.enterListName, - input: { - default: this.list.name - } + default: this.list.name }); if (canceled) return; @@ -117,10 +115,9 @@ export default defineComponent({ }, async deleteList() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: this.list.name }), - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.if.vue b/packages/client/src/pages/page-editor/els/page-editor.el.if.vue index f76d59abe352778156029ff8a522e135255cb264..9a49de846ebacd9eb2a51ad5014e81d20e9bcd0b 100644 --- a/packages/client/src/pages/page-editor/els/page-editor.el.if.vue +++ b/packages/client/src/pages/page-editor/els/page-editor.el.if.vue @@ -60,13 +60,9 @@ export default defineComponent({ methods: { async add() { - const { canceled, result: type } = await os.dialog({ - type: null, + const { canceled, result: type } = await os.select({ title: this.$ts._pages.chooseBlock, - select: { - groupedItems: this.getPageBlockList() - }, - showCancelButton: true + groupedItems: this.getPageBlockList() }); if (canceled) return; diff --git a/packages/client/src/pages/page-editor/els/page-editor.el.section.vue b/packages/client/src/pages/page-editor/els/page-editor.el.section.vue index 16e32d8400cfd5cb680aaf4ed35a87cd8b9dc242..6be31a39cb3e3385142645e5185e843919a4f0f0 100644 --- a/packages/client/src/pages/page-editor/els/page-editor.el.section.vue +++ b/packages/client/src/pages/page-editor/els/page-editor.el.section.vue @@ -57,26 +57,18 @@ export default defineComponent({ methods: { async rename() { - const { canceled, result: title } = await os.dialog({ + const { canceled, result: title } = await os.inputText({ title: 'Enter title', - input: { - type: 'text', - default: this.value.title - }, - showCancelButton: true + default: this.value.title }); if (canceled) return; this.value.title = title; }, async add() { - const { canceled, result: type } = await os.dialog({ - type: null, + const { canceled, result: type } = await os.select({ title: this.$ts._pages.chooseBlock, - select: { - groupedItems: this.getPageBlockList() - }, - showCancelButton: true + groupedItems: this.getPageBlockList() }); if (canceled) return; diff --git a/packages/client/src/pages/page-editor/page-editor.script-block.vue b/packages/client/src/pages/page-editor/page-editor.script-block.vue index 07958c902b22353631a75ef01a046dcf109ce3f2..610c33ad8b877861462b298ce26f213662652e70 100644 --- a/packages/client/src/pages/page-editor/page-editor.script-block.vue +++ b/packages/client/src/pages/page-editor/page-editor.script-block.vue @@ -212,13 +212,9 @@ export default defineComponent({ methods: { async changeType() { - const { canceled, result: type } = await os.dialog({ - type: null, + const { canceled, result: type } = await os.select({ title: this.$ts._pages.selectType, - select: { - groupedItems: this.getScriptBlockList(this.getExpectedType ? this.getExpectedType() : null) - }, - showCancelButton: true + groupedItems: this.getScriptBlockList(this.getExpectedType ? this.getExpectedType() : null) }); if (canceled) return; this.modelValue.type = type; diff --git a/packages/client/src/pages/page-editor/page-editor.vue b/packages/client/src/pages/page-editor/page-editor.vue index 684b1f8c75d53eb1c32c389d1fb8dd14447063fe..31b1dddef511ceb7af3f6f71f8cc370621a67ad1 100644 --- a/packages/client/src/pages/page-editor/page-editor.vue +++ b/packages/client/src/pages/page-editor/page-editor.vue @@ -272,14 +272,14 @@ export default defineComponent({ const onError = err => { if (err.id == '3d81ceae-475f-4600-b2a8-2bc116157532') { if (err.info.param == 'name') { - os.dialog({ + os.alert({ type: 'error', title: this.$ts._pages.invalidNameTitle, text: this.$ts._pages.invalidNameText }); } } else if (err.code == 'NAME_ALREADY_EXISTS') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts._pages.nameAlreadyExists }); @@ -291,7 +291,7 @@ export default defineComponent({ os.api('pages/update', options) .then(page => { this.currentName = this.name.trim(); - os.dialog({ + os.alert({ type: 'success', text: this.$ts._pages.updated }); @@ -301,7 +301,7 @@ export default defineComponent({ .then(page => { this.pageId = page.id; this.currentName = this.name.trim(); - os.dialog({ + os.alert({ type: 'success', text: this.$ts._pages.created }); @@ -311,16 +311,15 @@ export default defineComponent({ }, del() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$t('removeAreYouSure', { x: this.title.trim() }), - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; os.api('pages/delete', { pageId: this.pageId, }).then(() => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts._pages.deleted }); @@ -335,7 +334,7 @@ export default defineComponent({ os.api('pages/create', this.getSaveOptions()).then(page => { this.pageId = page.id; this.currentName = this.name.trim(); - os.dialog({ + os.alert({ type: 'success', text: this.$ts._pages.created }); @@ -344,13 +343,10 @@ export default defineComponent({ }, async add() { - const { canceled, result: type } = await os.dialog({ + const { canceled, result: type } = await os.select({ type: null, title: this.$ts._pages.chooseBlock, - select: { - groupedItems: this.getPageBlockList() - }, - showCancelButton: true + groupedItems: this.getPageBlockList() }); if (canceled) return; @@ -359,19 +355,15 @@ export default defineComponent({ }, async addVariable() { - let { canceled, result: name } = await os.dialog({ + let { canceled, result: name } = await os.inputText({ title: this.$ts._pages.enterVariableName, - input: { - type: 'text', - }, - showCancelButton: true }); if (canceled) return; name = name.trim(); if (this.hpml.isUsedName(name)) { - os.dialog({ + os.alert({ type: 'error', text: this.$ts._pages.variableNameIsAlreadyUsed }); diff --git a/packages/client/src/pages/page.vue b/packages/client/src/pages/page.vue index 1eff1a98cb0dcb703ae4105403f72e022712ec1e..5cc56e443b90161c812a80c49bf48ea804b8ada2 100644 --- a/packages/client/src/pages/page.vue +++ b/packages/client/src/pages/page.vue @@ -168,9 +168,8 @@ export default defineComponent({ }, async unlike() { - const confirm = await os.dialog({ + const confirm = await os.confirm({ type: 'warning', - showCancelButton: true, text: this.$ts.unlikeConfirm, }); if (confirm.canceled) return; diff --git a/packages/client/src/pages/room/room.vue b/packages/client/src/pages/room/room.vue index 1671bcd587aaa1a7fd22603c80ab9c621e9a985a..926a681e888bdf3161e86ddf661c7fcd54e23472 100644 --- a/packages/client/src/pages/room/room.vue +++ b/packages/client/src/pages/room/room.vue @@ -137,10 +137,9 @@ export default defineComponent({ beforeRouteLeave(to, from, next) { if (this.changed) { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.leaveConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) { next(false); @@ -167,15 +166,11 @@ export default defineComponent({ }, async add() { - const { canceled, result: id } = await os.dialog({ - type: null, + const { canceled, result: id } = await os.select({ title: this.$ts._rooms.addFurniture, - select: { - items: storeItems.map(item => ({ - value: item.id, text: this.$t('_rooms._furnitures.' + item.id) - })) - }, - showCancelButton: true + items: storeItems.map(item => ({ + value: item.id, text: this.$t('_rooms._furnitures.' + item.id) + })) }); if (canceled) return; room.addFurniture(id); @@ -196,7 +191,7 @@ export default defineComponent({ this.changed = false; os.success(); }).catch((e: any) => { - os.dialog({ + os.alert({ type: 'error', text: e.message }); @@ -204,10 +199,9 @@ export default defineComponent({ }, clear() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts._rooms.clearConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; room.removeAllFurnitures(); diff --git a/packages/client/src/pages/scratchpad.vue b/packages/client/src/pages/scratchpad.vue index c26658cbc4f53ab72a9b91299e3b28afe8af0cf4..65f6fa07d53c4c279a3fddd7e8c8f42ac76e1d0e 100644 --- a/packages/client/src/pages/scratchpad.vue +++ b/packages/client/src/pages/scratchpad.vue @@ -74,9 +74,8 @@ export default defineComponent({ }), { in: (q) => { return new Promise(ok => { - os.dialog({ + os.inputText({ title: q, - input: {} }).then(({ canceled, result: a }) => { ok(a); }); @@ -105,7 +104,7 @@ export default defineComponent({ try { ast = parse(this.code); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: 'Syntax error :(' }); @@ -114,7 +113,7 @@ export default defineComponent({ try { await aiscript.exec(ast); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: e }); diff --git a/packages/client/src/pages/settings/2fa.vue b/packages/client/src/pages/settings/2fa.vue index dce217559aa67cd6beda49c3cd51b7cb644a8324..67c8b626ee980094b4471fe7eaf728138879a356 100644 --- a/packages/client/src/pages/settings/2fa.vue +++ b/packages/client/src/pages/settings/2fa.vue @@ -105,11 +105,9 @@ export default defineComponent({ methods: { register() { - os.dialog({ + os.inputText({ title: this.$ts.password, - input: { - type: 'password' - } + type: 'password' }).then(({ canceled, result: password }) => { if (canceled) return; os.api('i/2fa/register', { @@ -121,11 +119,9 @@ export default defineComponent({ }, unregister() { - os.dialog({ + os.inputText({ title: this.$ts.password, - input: { - type: 'password' - } + type: 'password' }).then(({ canceled, result: password }) => { if (canceled) return; os.api('i/2fa/unregister', { @@ -147,7 +143,7 @@ export default defineComponent({ os.success(); this.$i.twoFactorEnabled = true; }).catch(e => { - os.dialog({ + os.alert({ type: 'error', text: e }); @@ -171,11 +167,9 @@ export default defineComponent({ }, unregisterKey(key) { - os.dialog({ + os.inputText({ title: this.$ts.password, - input: { - type: 'password' - } + type: 'password' }).then(({ canceled, result: password }) => { if (canceled) return; return os.api('i/2fa/remove-key', { @@ -191,11 +185,9 @@ export default defineComponent({ }, addSecurityKey() { - os.dialog({ + os.inputText({ title: this.$ts.password, - input: { - type: 'password' - } + type: 'password' }).then(({ canceled, result: password }) => { if (canceled) return; os.api('i/2fa/register-key', { diff --git a/packages/client/src/pages/settings/api.vue b/packages/client/src/pages/settings/api.vue index 1def0189ec3daee0e52fdc9e82281895b9b9c4eb..b6bff51c7fe2bf233b19687f58463b37e9523dc2 100644 --- a/packages/client/src/pages/settings/api.vue +++ b/packages/client/src/pages/settings/api.vue @@ -52,7 +52,7 @@ export default defineComponent({ permission: permissions, }); - os.dialog({ + os.alert({ type: 'success', title: this.$ts.token, text: token diff --git a/packages/client/src/pages/settings/custom-css.vue b/packages/client/src/pages/settings/custom-css.vue index 8c878fb0843407fb0e28fb89967985da5578d000..155956923c1971976fe225f7b45dfcb20699a124 100644 --- a/packages/client/src/pages/settings/custom-css.vue +++ b/packages/client/src/pages/settings/custom-css.vue @@ -59,10 +59,9 @@ export default defineComponent({ async apply() { localStorage.setItem('customCss', this.localCustomCss); - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'info', text: this.$ts.reloadToApplySetting, - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/settings/deck.vue b/packages/client/src/pages/settings/deck.vue index a96c6cd685b5895e0d6f6d48a4cc61bcceb29ac7..bc82b0ca84779d118f5e93d1f5143579cd5c473f 100644 --- a/packages/client/src/pages/settings/deck.vue +++ b/packages/client/src/pages/settings/deck.vue @@ -75,10 +75,9 @@ export default defineComponent({ watch: { async navWindow() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'info', text: this.$ts.reloadToApplySetting, - showCancelButton: true }); if (canceled) return; @@ -92,11 +91,9 @@ export default defineComponent({ methods: { async setProfile() { - const { canceled, result: name } = await os.dialog({ + const { canceled, result: name } = await os.inputText({ title: this.$ts._deck.profile, - input: { - allowEmpty: false - } + allowEmpty: false }); if (canceled) return; this.profile = name; diff --git a/packages/client/src/pages/settings/delete-account.vue b/packages/client/src/pages/settings/delete-account.vue index 77dc0fe2a8a6356087f18fc2967044e51e200f1b..d5ad648939b234ade0f8315aed7aca677320c495 100644 --- a/packages/client/src/pages/settings/delete-account.vue +++ b/packages/client/src/pages/settings/delete-account.vue @@ -46,19 +46,16 @@ export default defineComponent({ methods: { async deleteAccount() { { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$ts.deleteAccountConfirm, - showCancelButton: true }); if (canceled) return; } - const { canceled, result: password } = await os.dialog({ + const { canceled, result: password } = await os.inputText({ title: this.$ts.password, - input: { - type: 'password' - } + type: 'password' }); if (canceled) return; @@ -66,7 +63,7 @@ export default defineComponent({ password: password }); - await os.dialog({ + await os.alert({ title: this.$ts._accountDelete.started, }); diff --git a/packages/client/src/pages/settings/email-address.vue b/packages/client/src/pages/settings/email-address.vue index 476d0c0e177936d6bb828e40c943256fb610ef02..c2c56ed0a84d17164deff9a9d2b6b04921899d00 100644 --- a/packages/client/src/pages/settings/email-address.vue +++ b/packages/client/src/pages/settings/email-address.vue @@ -52,11 +52,9 @@ export default defineComponent({ methods: { save() { - os.dialog({ + os.inputText({ title: this.$ts.password, - input: { - type: 'password' - } + type: 'password' }).then(({ canceled, result: password }) => { if (canceled) return; os.apiWithDialog('i/update-email', { diff --git a/packages/client/src/pages/settings/general.vue b/packages/client/src/pages/settings/general.vue index 8e3dcc3e4104cc5b164f56486aa1755e0e30b87c..e0fcf70102b02a50064d5b017d23da16f49c616a 100644 --- a/packages/client/src/pages/settings/general.vue +++ b/packages/client/src/pages/settings/general.vue @@ -209,10 +209,9 @@ export default defineComponent({ methods: { async reloadAsk() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'info', text: this.$ts.reloadToApplySetting, - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/settings/import-export.vue b/packages/client/src/pages/settings/import-export.vue index 8923483b987b770d0b930a811d827d9df0e4a40e..4cc92adfb37663cd71b8a754dfbd689067dce8d0 100644 --- a/packages/client/src/pages/settings/import-export.vue +++ b/packages/client/src/pages/settings/import-export.vue @@ -67,12 +67,12 @@ export default defineComponent({ target === 'muting' ? 'i/export-mute' : null, {}) .then(() => { - os.dialog({ + os.alert({ type: 'info', text: this.$ts.exportRequested }); }).catch((e: any) => { - os.dialog({ + os.alert({ type: 'error', text: e.message }); @@ -90,12 +90,12 @@ export default defineComponent({ null, { fileId: file.id }).then(() => { - os.dialog({ + os.alert({ type: 'info', text: this.$ts.importRequested }); }).catch((e: any) => { - os.dialog({ + os.alert({ type: 'error', text: e.message }); diff --git a/packages/client/src/pages/settings/menu.vue b/packages/client/src/pages/settings/menu.vue index e40740a3a40ddd7e1c7155b1dcb6d9bbe434f235..6027910e03d4ac74846691307c82e40b16a28366 100644 --- a/packages/client/src/pages/settings/menu.vue +++ b/packages/client/src/pages/settings/menu.vue @@ -76,17 +76,13 @@ export default defineComponent({ methods: { async addItem() { const menu = Object.keys(this.menuDef).filter(k => !this.$store.state.menu.includes(k)); - const { canceled, result: item } = await os.dialog({ - type: null, + const { canceled, result: item } = await os.select({ title: this.$ts.addItem, - select: { - items: [...menu.map(k => ({ - value: k, text: this.$ts[this.menuDef[k].title] - })), ...[{ - value: '-', text: this.$ts.divider - }]] - }, - showCancelButton: true + items: [...menu.map(k => ({ + value: k, text: this.$ts[this.menuDef[k].title] + })), ...[{ + value: '-', text: this.$ts.divider + }]] }); if (canceled) return; this.items = [...this.splited, item].join('\n'); @@ -103,7 +99,7 @@ export default defineComponent({ }, async reloadAsk() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'info', text: this.$ts.reloadToApplySetting, showCancelButton: true diff --git a/packages/client/src/pages/settings/plugin.install.vue b/packages/client/src/pages/settings/plugin.install.vue index 9958f98f58ad3aad0ac62585387ae2cf5bcbdc06..d79979bc2d67dce8c2adf5e6dbcd6e429debc7bd 100644 --- a/packages/client/src/pages/settings/plugin.install.vue +++ b/packages/client/src/pages/settings/plugin.install.vue @@ -76,7 +76,7 @@ export default defineComponent({ try { ast = parse(this.code); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: 'Syntax error :(' }); @@ -84,7 +84,7 @@ export default defineComponent({ } const meta = AiScript.collectMetadata(ast); if (meta == null) { - os.dialog({ + os.alert({ type: 'error', text: 'No metadata found :(' }); @@ -92,7 +92,7 @@ export default defineComponent({ } const data = meta.get(null); if (data == null) { - os.dialog({ + os.alert({ type: 'error', text: 'No metadata found :(' }); @@ -100,7 +100,7 @@ export default defineComponent({ } const { name, version, author, description, permissions, config } = data; if (name == null || version == null || author == null) { - os.dialog({ + os.alert({ type: 'error', text: 'Required property not found :(' }); diff --git a/packages/client/src/pages/settings/profile.vue b/packages/client/src/pages/settings/profile.vue index a7ddc6d178f09b25c30b53fe6f0606361cb91cc5..e7d0d9b418966a29c6d7056d1e9f075415fb5146 100644 --- a/packages/client/src/pages/settings/profile.vue +++ b/packages/client/src/pages/settings/profile.vue @@ -221,7 +221,7 @@ export default defineComponent({ }).then(i => { os.success(); }).catch(err => { - os.dialog({ + os.alert({ type: 'error', text: err.id }); diff --git a/packages/client/src/pages/settings/reaction.vue b/packages/client/src/pages/settings/reaction.vue index 905a3e49576c51308b279b3bf140f4c7fc92c520..8878b4149f26104543f50d75591981462a47a8c4 100644 --- a/packages/client/src/pages/settings/reaction.vue +++ b/packages/client/src/pages/settings/reaction.vue @@ -111,10 +111,9 @@ export default defineComponent({ }, async setDefault() { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$ts.resetAreYouSure, - showCancelButton: true }); if (canceled) return; diff --git a/packages/client/src/pages/settings/registry.value.vue b/packages/client/src/pages/settings/registry.value.vue index 36f989dbc5c66687a76453843ce507d7cf9b813e..6604cf056b49553616f00d626bd054f3a0f95be6 100644 --- a/packages/client/src/pages/settings/registry.value.vue +++ b/packages/client/src/pages/settings/registry.value.vue @@ -110,17 +110,16 @@ export default defineComponent({ try { JSON5.parse(this.valueForEditor); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.invalidValue }); return; } - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.saveConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; os.apiWithDialog('i/registry/set', { @@ -132,10 +131,9 @@ export default defineComponent({ }, del() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.deleteConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; os.apiWithDialog('i/registry/remove', { diff --git a/packages/client/src/pages/settings/security.vue b/packages/client/src/pages/settings/security.vue index 4d81bf1b9e73bd6f063dbdf3ac474a843c229d23..879fd83f70cde71f83ecc5c2e0e57a2f7543dcf7 100644 --- a/packages/client/src/pages/settings/security.vue +++ b/packages/client/src/pages/settings/security.vue @@ -64,32 +64,26 @@ export default defineComponent({ methods: { async change() { - const { canceled: canceled1, result: currentPassword } = await os.dialog({ + const { canceled: canceled1, result: currentPassword } = await os.inputText({ title: this.$ts.currentPassword, - input: { - type: 'password' - } + type: 'password' }); if (canceled1) return; - const { canceled: canceled2, result: newPassword } = await os.dialog({ + const { canceled: canceled2, result: newPassword } = await os.inputText({ title: this.$ts.newPassword, - input: { - type: 'password' - } + type: 'password' }); if (canceled2) return; - const { canceled: canceled3, result: newPassword2 } = await os.dialog({ + const { canceled: canceled3, result: newPassword2 } = await os.inputText({ title: this.$ts.newPasswordRetype, - input: { - type: 'password' - } + type: 'password' }); if (canceled3) return; if (newPassword !== newPassword2) { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.retypedNotMatch }); @@ -103,11 +97,9 @@ export default defineComponent({ }, regenerateToken() { - os.dialog({ + os.inputText({ title: this.$ts.password, - input: { - type: 'password' - } + type: 'password' }).then(({ canceled, result: password }) => { if (canceled) return; os.api('i/regenerate_token', { diff --git a/packages/client/src/pages/settings/theme.install.vue b/packages/client/src/pages/settings/theme.install.vue index 59ad3ad9b7c758c846e2923e942b8d3775216f1a..95c6f4c7eef9319a9a5449bd4bd38b2f2c8b6f34 100644 --- a/packages/client/src/pages/settings/theme.install.vue +++ b/packages/client/src/pages/settings/theme.install.vue @@ -62,21 +62,21 @@ export default defineComponent({ try { theme = JSON5.parse(code); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: this.$ts._theme.invalid }); return false; } if (!validateTheme(theme)) { - os.dialog({ + os.alert({ type: 'error', text: this.$ts._theme.invalid }); return false; } if (getThemes().some(t => t.id === theme.id)) { - os.dialog({ + os.alert({ type: 'info', text: this.$ts._theme.alreadyInstalled }); @@ -95,7 +95,7 @@ export default defineComponent({ const theme = this.parseThemeCode(code); if (!theme) return; await addTheme(theme); - os.dialog({ + os.alert({ type: 'success', text: this.$t('_theme.installed', { name: theme.name }) }); diff --git a/packages/client/src/pages/share.vue b/packages/client/src/pages/share.vue index c0af44fdd17a31a1a9aa8935509fd3913ebcd17e..488c432f224d4d57f28a24f7e0a78fbf448a2e98 100644 --- a/packages/client/src/pages/share.vue +++ b/packages/client/src/pages/share.vue @@ -154,7 +154,7 @@ export default defineComponent({ } //#endregion } catch (e) { - os.dialog({ + os.alert({ type: 'error', title: e.message, text: e.name diff --git a/packages/client/src/pages/test.vue b/packages/client/src/pages/test.vue index 9dd9ae5e0ccf102f3ace6f1d2fff6296105dde61..d05e00d37405c096ae3200cbddfec61001213a71 100644 --- a/packages/client/src/pages/test.vue +++ b/packages/client/src/pages/test.vue @@ -202,6 +202,7 @@ export default defineComponent({ methods: { async showDialog() { this.dialogResult = null; + /* this.dialogResult = await os.dialog({ type: this.dialogType, title: this.dialogTitle, @@ -209,7 +210,7 @@ export default defineComponent({ showCancelButton: this.dialogCancel, cancelableByBgClick: this.dialogCancelByBgClick, input: this.dialogInput ? {} : null - }); + });*/ }, async form() { diff --git a/packages/client/src/pages/theme-editor.vue b/packages/client/src/pages/theme-editor.vue index d1a892629bbf40b3ab3bd4b16e1648392d2dd10d..c0bb1bd5313240c8d14c8fc62e15e34be0d28c92 100644 --- a/packages/client/src/pages/theme-editor.vue +++ b/packages/client/src/pages/theme-editor.vue @@ -155,10 +155,9 @@ export default defineComponent({ }, async leaveConfirm(): Promise<boolean> { - const { canceled } = await os.dialog({ + const { canceled } = await os.confirm({ type: 'warning', text: this.$ts.leaveConfirm, - showCancelButton: true }); return !canceled; }, @@ -205,7 +204,7 @@ export default defineComponent({ try { parsed = JSON5.parse(this.themeCode); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: this.$ts._theme.invalid }); @@ -216,11 +215,9 @@ export default defineComponent({ }, async saveAs() { - const { canceled, result: name } = await os.dialog({ + const { canceled, result: name } = await os.inputText({ title: this.$ts.name, - input: { - allowEmpty: false - } + allowEmpty: false }); if (canceled) return; @@ -236,7 +233,7 @@ export default defineComponent({ ColdDeviceStorage.set('lightTheme', this.theme); } this.changed = false; - os.dialog({ + os.alert({ type: 'success', text: this.$t('_theme.installed', { name: this.theme.name }) }); diff --git a/packages/client/src/pages/timeline.vue b/packages/client/src/pages/timeline.vue index 911d6f5c6affa94b9b2b898af65023363ffc71ef..71e82382697de28e3f5e9a229c2d984ec943108c 100644 --- a/packages/client/src/pages/timeline.vue +++ b/packages/client/src/pages/timeline.vue @@ -171,15 +171,12 @@ export default defineComponent({ }, async timetravel() { - const { canceled, result: date } = await os.dialog({ + const { canceled, result: date } = await os.inputDate({ title: this.$ts.date, - input: { - type: 'date' - } }); if (canceled) return; - this.$refs.tl.timetravel(new Date(date)); + this.$refs.tl.timetravel(date); }, focus() { diff --git a/packages/client/src/pages/user-info.vue b/packages/client/src/pages/user-info.vue index b77d879a7e0d9d002947b0c91be5165ba7ff80da..28cef97db4e704a5aa4cac8c98f708ef197d9f7c 100644 --- a/packages/client/src/pages/user-info.vue +++ b/packages/client/src/pages/user-info.vue @@ -171,16 +171,15 @@ export default defineComponent({ userId: this.user.id, }); - os.dialog({ + os.alert({ type: 'success', text: this.$t('newPasswordIs', { password }) }); }, async toggleSilence(v) { - const confirm = await os.dialog({ + const confirm = await os.confirm({ type: 'warning', - showCancelButton: true, text: v ? this.$ts.silenceConfirm : this.$ts.unsilenceConfirm, }); if (confirm.canceled) { @@ -192,9 +191,8 @@ export default defineComponent({ }, async toggleSuspend(v) { - const confirm = await os.dialog({ + const confirm = await os.confirm({ type: 'warning', - showCancelButton: true, text: v ? this.$ts.suspendConfirm : this.$ts.unsuspendConfirm, }); if (confirm.canceled) { @@ -211,9 +209,8 @@ export default defineComponent({ }, async deleteAllFiles() { - const confirm = await os.dialog({ + const confirm = await os.confirm({ type: 'warning', - showCancelButton: true, text: this.$ts.deleteAllFilesConfirm, }); if (confirm.canceled) return; @@ -222,7 +219,7 @@ export default defineComponent({ os.success(); }; await process().catch(e => { - os.dialog({ + os.alert({ type: 'error', text: e.toString() }); diff --git a/packages/client/src/pages/user-list-timeline.vue b/packages/client/src/pages/user-list-timeline.vue index 2fc2476fba4e2988d7dcf04d16c04004657fbf16..a2773e2d4950d27d5cf43ef6c83c5812acf3b10b 100644 --- a/packages/client/src/pages/user-list-timeline.vue +++ b/packages/client/src/pages/user-list-timeline.vue @@ -97,15 +97,12 @@ export default defineComponent({ }, async timetravel() { - const { canceled, result: date } = await os.dialog({ + const { canceled, result: date } = await os.inputDate({ title: this.$ts.date, - input: { - type: 'date' - } }); if (canceled) return; - this.$refs.tl.timetravel(new Date(date)); + this.$refs.tl.timetravel(date); }, focus() { diff --git a/packages/client/src/pages/welcome.setup.vue b/packages/client/src/pages/welcome.setup.vue index 8c88720cf3d363f92d1c1abb9fbc8dfda27fa856..3dca5b3e7866b0775aea4920b535dd0872c4672e 100644 --- a/packages/client/src/pages/welcome.setup.vue +++ b/packages/client/src/pages/welcome.setup.vue @@ -57,7 +57,7 @@ export default defineComponent({ }).catch(() => { this.submitting = false; - os.dialog({ + os.alert({ type: 'error', text: this.$ts.somethingHappened }); diff --git a/packages/client/src/scripts/aiscript/api.ts b/packages/client/src/scripts/aiscript/api.ts index 20c15d809e10757077a08ef70d893759fcdeed01..01b8fd05fe02ac56cd757921d618af7a832b7516 100644 --- a/packages/client/src/scripts/aiscript/api.ts +++ b/packages/client/src/scripts/aiscript/api.ts @@ -9,16 +9,15 @@ export function createAiScriptEnv(opts) { USER_NAME: $i ? values.STR($i.name) : values.NULL, USER_USERNAME: $i ? values.STR($i.username) : values.NULL, 'Mk:dialog': values.FN_NATIVE(async ([title, text, type]) => { - await os.dialog({ + await os.alert({ type: type ? type.value : 'info', title: title.value, text: text.value, }); }), 'Mk:confirm': values.FN_NATIVE(async ([title, text, type]) => { - const confirm = await os.dialog({ + const confirm = await os.confirm({ type: type ? type.value : 'question', - showCancelButton: true, title: title.value, text: text.value, }); diff --git a/packages/client/src/scripts/get-user-menu.ts b/packages/client/src/scripts/get-user-menu.ts index 8d767afa25d989678112f2ab28b439c17d833f30..0c0454710162b485d3a37bf4798ba6171b40aa4c 100644 --- a/packages/client/src/scripts/get-user-menu.ts +++ b/packages/client/src/scripts/get-user-menu.ts @@ -14,21 +14,17 @@ export function getUserMenu(user) { const t = i18n.locale.selectList; // ãªãœã‹å¾Œã§å‚ç…§ã™ã‚‹ã¨ null ã«ãªã‚‹ã®ã§æœ€åˆã«ãƒ¡ãƒ¢ãƒªã«ç¢ºä¿ã—ã¦ãŠã const lists = await os.api('users/lists/list'); if (lists.length === 0) { - os.dialog({ + os.alert({ type: 'error', text: i18n.locale.youHaveNoLists }); return; } - const { canceled, result: listId } = await os.dialog({ - type: null, + const { canceled, result: listId } = await os.select({ title: t, - select: { - items: lists.map(list => ({ - value: list.id, text: list.name - })) - }, - showCancelButton: true + items: lists.map(list => ({ + value: list.id, text: list.name + })) }); if (canceled) return; os.apiWithDialog('users/lists/push', { @@ -40,21 +36,17 @@ export function getUserMenu(user) { async function inviteGroup() { const groups = await os.api('users/groups/owned'); if (groups.length === 0) { - os.dialog({ + os.alert({ type: 'error', text: i18n.locale.youHaveNoGroups }); return; } - const { canceled, result: groupId } = await os.dialog({ - type: null, + const { canceled, result: groupId } = await os.select({ title: i18n.locale.group, - select: { - items: groups.map(group => ({ - value: group.id, text: group.name - })) - }, - showCancelButton: true + items: groups.map(group => ({ + value: group.id, text: group.name + })) }); if (canceled) return; os.apiWithDialog('users/groups/invite', { @@ -108,9 +100,8 @@ export function getUserMenu(user) { } async function getConfirmed(text: string): Promise<boolean> { - const confirm = await os.dialog({ + const confirm = await os.confirm({ type: 'warning', - showCancelButton: true, title: 'confirm', text, }); diff --git a/packages/client/src/scripts/hpml/evaluator.ts b/packages/client/src/scripts/hpml/evaluator.ts index 20261d333d712d330378bb79299bdf71dfa3d398..6329c0860eff01a24423d99c41a9685a3552db9d 100644 --- a/packages/client/src/scripts/hpml/evaluator.ts +++ b/packages/client/src/scripts/hpml/evaluator.ts @@ -39,9 +39,8 @@ export class Hpml { }), ...initAiLib(this)}, { in: (q) => { return new Promise(ok => { - os.dialog({ + os.inputText({ title: q, - input: {} }).then(({ canceled, result: a }) => { ok(a); }); diff --git a/packages/client/src/scripts/lookup-user.ts b/packages/client/src/scripts/lookup-user.ts index 174fa9f879b73f113a1c5e0acb6a8aaf51376105..64874f86f6f55bc3ab7ff80e50fbca7d8bcf4c28 100644 --- a/packages/client/src/scripts/lookup-user.ts +++ b/packages/client/src/scripts/lookup-user.ts @@ -3,9 +3,8 @@ import { i18n } from '@/i18n'; import * as os from '@/os'; export async function lookupUser() { - const { canceled, result } = await os.dialog({ + const { canceled, result } = await os.inputText({ title: i18n.locale.usernameOrUserId, - input: true }); if (canceled) return; @@ -18,7 +17,7 @@ export async function lookupUser() { let _notFound = false; const notFound = () => { if (_notFound) { - os.dialog({ + os.alert({ type: 'error', text: i18n.locale.noSuchUser }); diff --git a/packages/client/src/scripts/search.ts b/packages/client/src/scripts/search.ts index b28cccfab7e9cbb614ff714bec1ec42dc9b76b21..a070b1121c5be5934d675a802f7519bd204e2127 100644 --- a/packages/client/src/scripts/search.ts +++ b/packages/client/src/scripts/search.ts @@ -3,9 +3,8 @@ import { i18n } from '@/i18n'; import { router } from '@/router'; export async function search() { - const { canceled, result: query } = await os.dialog({ + const { canceled, result: query } = await os.inputText({ title: i18n.locale.search, - input: true }); if (canceled || query == null || query === '') return; @@ -35,7 +34,7 @@ export async function search() { // TODO //v.$root.$emit('warp', date); - os.dialog({ + os.alert({ icon: 'fas fa-history', iconOnly: true, autoClose: true }); diff --git a/packages/client/src/scripts/select-file.ts b/packages/client/src/scripts/select-file.ts index 5fbc545b26d959058084f3b85dddf46ab67a507d..0c6bd7ccded92db457abf92197abf35113eaa9d6 100644 --- a/packages/client/src/scripts/select-file.ts +++ b/packages/client/src/scripts/select-file.ts @@ -14,7 +14,7 @@ export function selectFile(src: any, label: string | null, multiple = false) { Promise.all(promises).then(driveFiles => { res(multiple ? driveFiles : driveFiles[0]); }).catch(e => { - os.dialog({ + os.alert({ type: 'error', text: e }); @@ -38,11 +38,10 @@ export function selectFile(src: any, label: string | null, multiple = false) { }; const chooseFileFromUrl = () => { - os.dialog({ + os.inputText({ title: i18n.locale.uploadFromUrl, - input: { - placeholder: i18n.locale.uploadFromUrlDescription - } + type: 'url', + placeholder: i18n.locale.uploadFromUrlDescription }).then(({ canceled, result: url }) => { if (canceled) return; @@ -62,7 +61,7 @@ export function selectFile(src: any, label: string | null, multiple = false) { marker }); - os.dialog({ + os.alert({ title: i18n.locale.uploadFromUrlRequested, text: i18n.locale.uploadFromUrlMayTakeTime }); diff --git a/packages/client/src/scripts/show-suspended-dialog.ts b/packages/client/src/scripts/show-suspended-dialog.ts index 3bc48000300616eebbe7acda1b59ff0f6a346090..dcbb66933cad48371db526e6f8e48ebd6e424d68 100644 --- a/packages/client/src/scripts/show-suspended-dialog.ts +++ b/packages/client/src/scripts/show-suspended-dialog.ts @@ -2,7 +2,7 @@ import * as os from '@/os'; import { i18n } from '@/i18n'; export function showSuspendedDialog() { - return os.dialog({ + return os.alert({ type: 'error', title: i18n.locale.yourAccountSuspendedTitle, text: i18n.locale.yourAccountSuspendedDescription diff --git a/packages/client/src/ui/chat/note.vue b/packages/client/src/ui/chat/note.vue index c0b5cebd9416ec98ca7fc2830626cc506b1eb8a3..412f47e3175cebc7a0512db71d2f321b7a13f7bc 100644 --- a/packages/client/src/ui/chat/note.vue +++ b/packages/client/src/ui/chat/note.vue @@ -459,18 +459,18 @@ export default defineComponent({ os.apiWithDialog('notes/create', { renoteId: this.appearNote.id }, undefined, (res: any) => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.renoted, }); }, (e: Error) => { if (e.id === 'b5c90186-4ab0-49c8-9bba-a1f76c282ba4') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantRenote, }); } else if (e.id === 'fd4cc33e-2a37-48dd-99cc-9b806eb2031a') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantReRenote, }); @@ -513,18 +513,18 @@ export default defineComponent({ os.apiWithDialog('notes/favorites/create', { noteId: this.appearNote.id }, undefined, (res: any) => { - os.dialog({ + os.alert({ type: 'success', text: this.$ts.favorited, }); }, (e: Error) => { if (e.id === 'a402c12b-34dd-41d2-97d8-4d2ffd96a1a6') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.alreadyFavorited, }); } else if (e.id === '6dd26674-e060-4816-909a-45ba3f4da458') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.cantFavorite, }); @@ -533,10 +533,9 @@ export default defineComponent({ }, del() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.noteDeleteConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; @@ -547,10 +546,9 @@ export default defineComponent({ }, delEdit() { - os.dialog({ + os.confirm({ type: 'warning', text: this.$ts.deleteAndEditConfirm, - showCancelButton: true }).then(({ canceled }) => { if (canceled) return; @@ -770,7 +768,7 @@ export default defineComponent({ noteId: this.appearNote.id }, undefined, null, e => { if (e.id === '72dab508-c64d-498f-8740-a8eec1ba385a') { - os.dialog({ + os.alert({ type: 'error', text: this.$ts.pinLimitExceeded }); @@ -817,9 +815,8 @@ export default defineComponent({ }, async promote() { - const { canceled, result: days } = await os.dialog({ + const { canceled, result: days } = await os.inputNumber({ title: this.$ts.numberOfDays, - input: { type: 'number' } }); if (canceled) return; diff --git a/packages/client/src/ui/chat/pages/channel.vue b/packages/client/src/ui/chat/pages/channel.vue index 5152af20f961c7232c845f0cf6810bac17effa0d..f2488347d11760a0ddf85836969a86fa8f599761 100644 --- a/packages/client/src/ui/chat/pages/channel.vue +++ b/packages/client/src/ui/chat/pages/channel.vue @@ -155,9 +155,8 @@ export default defineComponent({ }, async inChannelSearch() { - const { canceled, result: query } = await os.dialog({ + const { canceled, result: query } = await os.inputText({ title: this.$ts.inChannelSearch, - input: true }); if (canceled || query == null || query === '') return; router.push(`/search?q=${encodeURIComponent(query)}&channel=${this.channelId}`); diff --git a/packages/client/src/ui/chat/post-form.vue b/packages/client/src/ui/chat/post-form.vue index 62aa3a6aa76d31d240ee38c9aa0f83cdf37373fc..1f272c36031478fb267f3f636cff1231bf390048 100644 --- a/packages/client/src/ui/chat/post-form.vue +++ b/packages/client/src/ui/chat/post-form.vue @@ -450,10 +450,9 @@ export default defineComponent({ if (!this.renote && !this.quoteId && paste.startsWith(url + '/notes/')) { e.preventDefault(); - os.dialog({ + os.confirm({ type: 'info', text: this.$ts.quoteQuestion, - showCancelButton: true }).then(({ canceled }) => { if (canceled) { insertTextAtCursor(this.$refs.text, paste); @@ -567,7 +566,7 @@ export default defineComponent({ }); }).catch(err => { this.posting = false; - os.dialog({ + os.alert({ type: 'error', text: err.message + '\n' + (err as any).id, }); diff --git a/packages/client/src/ui/deck.vue b/packages/client/src/ui/deck.vue index cc8bf5a5119eded1572668238b7d4fb5239a8348..596d14c5cd207e00a22459e21e23c67dd16d53e4 100644 --- a/packages/client/src/ui/deck.vue +++ b/packages/client/src/ui/deck.vue @@ -118,15 +118,11 @@ export default defineComponent({ 'direct', ]; - const { canceled, result: column } = await os.dialog({ + const { canceled, result: column } = await os.select({ title: this.$ts._deck.addColumn, - type: null, - select: { - items: columns.map(column => ({ - value: column, text: this.$t('_deck._columns.' + column) - })) - }, - showCancelButton: true + items: columns.map(column => ({ + value: column, text: this.$t('_deck._columns.' + column) + })) }); if (canceled) return; diff --git a/packages/client/src/ui/deck/antenna-column.vue b/packages/client/src/ui/deck/antenna-column.vue index d42b8a5a101a19efe264f862b1ae56802c6c4827..198ebbbefafafdddff6a875c361827ed3fa2224e 100644 --- a/packages/client/src/ui/deck/antenna-column.vue +++ b/packages/client/src/ui/deck/antenna-column.vue @@ -52,16 +52,12 @@ export default defineComponent({ methods: { async setAntenna() { const antennas = await os.api('antennas/list'); - const { canceled, result: antenna } = await os.dialog({ + const { canceled, result: antenna } = await os.select({ title: this.$ts.selectAntenna, - type: null, - select: { - items: antennas.map(x => ({ - value: x, text: x.name - })), + items: antennas.map(x => ({ + value: x, text: x.name + })), default: this.column.antennaId - }, - showCancelButton: true }); if (canceled) return; updateColumn(this.column.id, { diff --git a/packages/client/src/ui/deck/list-column.vue b/packages/client/src/ui/deck/list-column.vue index 3ebba8032f8943f619711cd93a5fc2a457a47416..ab04aee4e7a079c09744904d19423b50674f9a1f 100644 --- a/packages/client/src/ui/deck/list-column.vue +++ b/packages/client/src/ui/deck/list-column.vue @@ -52,16 +52,12 @@ export default defineComponent({ methods: { async setList() { const lists = await os.api('users/lists/list'); - const { canceled, result: list } = await os.dialog({ + const { canceled, result: list } = await os.select({ title: this.$ts.selectList, - type: null, - select: { - items: lists.map(x => ({ - value: x, text: x.name - })), - default: this.column.listId - }, - showCancelButton: true + items: lists.map(x => ({ + value: x, text: x.name + })), + default: this.column.listId }); if (canceled) return; updateColumn(this.column.id, { diff --git a/packages/client/src/ui/deck/tl-column.vue b/packages/client/src/ui/deck/tl-column.vue index faf692c447f8b1c8d49a1b50f704761a690b735c..80216883340754e655fb3bf6a3cbb1ad7019f759 100644 --- a/packages/client/src/ui/deck/tl-column.vue +++ b/packages/client/src/ui/deck/tl-column.vue @@ -69,20 +69,17 @@ export default defineComponent({ methods: { async setType() { - const { canceled, result: src } = await os.dialog({ + const { canceled, result: src } = await os.select({ title: this.$ts.timeline, - type: null, - select: { - items: [{ - value: 'home', text: this.$ts._timelines.home - }, { - value: 'local', text: this.$ts._timelines.local - }, { - value: 'social', text: this.$ts._timelines.social - }, { - value: 'global', text: this.$ts._timelines.global - }] - }, + items: [{ + value: 'home', text: this.$ts._timelines.home + }, { + value: 'local', text: this.$ts._timelines.local + }, { + value: 'social', text: this.$ts._timelines.social + }, { + value: 'global', text: this.$ts._timelines.global + }] }); if (canceled) { if (this.column.tl == null) { diff --git a/packages/client/src/widgets/aiscript.vue b/packages/client/src/widgets/aiscript.vue index 992ec2f8a180eeb8207b88ab6fb2986bcbaef800..f2ea5e268af1fd928c9c1edc42c95b2a682c3299 100644 --- a/packages/client/src/widgets/aiscript.vue +++ b/packages/client/src/widgets/aiscript.vue @@ -57,9 +57,8 @@ export default defineComponent({ }), { in: (q) => { return new Promise(ok => { - os.dialog({ + os.inputText({ title: q, - input: {} }).then(({ canceled, result: a }) => { ok(a); }); @@ -88,7 +87,7 @@ export default defineComponent({ try { ast = parse(this.props.script); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: 'Syntax error :(' }); @@ -97,7 +96,7 @@ export default defineComponent({ try { await aiscript.exec(ast); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: e }); diff --git a/packages/client/src/widgets/button.vue b/packages/client/src/widgets/button.vue index 3417181d0c245ab02819bf06fd631bb21c5c9be2..e98570862effa67f2da650619081d6f3d06e3115 100644 --- a/packages/client/src/widgets/button.vue +++ b/packages/client/src/widgets/button.vue @@ -50,9 +50,8 @@ export default defineComponent({ }), { in: (q) => { return new Promise(ok => { - os.dialog({ + os.inputText({ title: q, - input: {} }).then(({ canceled, result: a }) => { ok(a); }); @@ -70,7 +69,7 @@ export default defineComponent({ try { ast = parse(this.props.script); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: 'Syntax error :(' }); @@ -79,7 +78,7 @@ export default defineComponent({ try { await aiscript.exec(ast); } catch (e) { - os.dialog({ + os.alert({ type: 'error', text: e });