refactor(client): refactor dialog functions to improve type inference
This commit is contained in:
parent
63415f1074
commit
ea9aeef9d8
84 changed files with 415 additions and 460 deletions
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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)
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});*/
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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,
|
||||
});
|
||||
|
|
|
@ -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.',
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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 });
|
||||
},
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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', {
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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', {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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}`);
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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 });
|
||||
|
|
|
@ -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 });
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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', {
|
||||
|
|
|
@ -52,7 +52,7 @@ export default defineComponent({
|
|||
permission: permissions,
|
||||
});
|
||||
|
||||
os.dialog({
|
||||
os.alert({
|
||||
type: 'success',
|
||||
title: this.$ts.token,
|
||||
text: token
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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,
|
||||
});
|
||||
|
||||
|
|
|
@ -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', {
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 :('
|
||||
});
|
||||
|
|
|
@ -221,7 +221,7 @@ export default defineComponent({
|
|||
}).then(i => {
|
||||
os.success();
|
||||
}).catch(err => {
|
||||
os.dialog({
|
||||
os.alert({
|
||||
type: 'error',
|
||||
text: err.id
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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', {
|
||||
|
|
|
@ -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', {
|
||||
|
|
|
@ -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 })
|
||||
});
|
||||
|
|
|
@ -154,7 +154,7 @@ export default defineComponent({
|
|||
}
|
||||
//#endregion
|
||||
} catch (e) {
|
||||
os.dialog({
|
||||
os.alert({
|
||||
type: 'error',
|
||||
title: e.message,
|
||||
text: e.name
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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 })
|
||||
});
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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()
|
||||
});
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -57,7 +57,7 @@ export default defineComponent({
|
|||
}).catch(() => {
|
||||
this.submitting = false;
|
||||
|
||||
os.dialog({
|
||||
os.alert({
|
||||
type: 'error',
|
||||
text: this.$ts.somethingHappened
|
||||
});
|
||||
|
|
|
@ -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,
|
||||
});
|
||||
|
|
|
@ -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,
|
||||
});
|
||||
|
|
|
@ -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);
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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}`);
|
||||
|
|
|
@ -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,
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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, {
|
||||
|
|
|
@ -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, {
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
|
@ -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
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue