summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/drive
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-07-17 04:36:44 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-07-17 04:36:44 +0900
commit16726789da8c20d35f127afff9d37f1c25575765 (patch)
tree66748a6243e4bc83580ff5a09a31383ba2fe3500 /src/server/api/endpoints/drive
parentMerge branch 'master' of https://github.com/syuilo/misskey (diff)
downloadsharkey-16726789da8c20d35f127afff9d37f1c25575765.tar.gz
sharkey-16726789da8c20d35f127afff9d37f1c25575765.tar.bz2
sharkey-16726789da8c20d35f127afff9d37f1c25575765.zip
Update api definitions
Diffstat (limited to 'src/server/api/endpoints/drive')
-rw-r--r--src/server/api/endpoints/drive/files.ts14
-rw-r--r--src/server/api/endpoints/drive/files/create.ts3
-rw-r--r--src/server/api/endpoints/drive/files/delete.ts14
-rw-r--r--src/server/api/endpoints/drive/files/find.ts9
-rw-r--r--src/server/api/endpoints/drive/files/show.ts14
-rw-r--r--src/server/api/endpoints/drive/files/update.ts14
-rw-r--r--src/server/api/endpoints/drive/files/upload_from_url.ts19
-rw-r--r--src/server/api/endpoints/drive/folders.ts14
-rw-r--r--src/server/api/endpoints/drive/folders/create.ts14
-rw-r--r--src/server/api/endpoints/drive/folders/find.ts9
-rw-r--r--src/server/api/endpoints/drive/folders/show.ts13
-rw-r--r--src/server/api/endpoints/drive/folders/update.ts14
-rw-r--r--src/server/api/endpoints/drive/stream.ts9
13 files changed, 123 insertions, 37 deletions
diff --git a/src/server/api/endpoints/drive/files.ts b/src/server/api/endpoints/drive/files.ts
index 000e4dcdd2..063b4adde1 100644
--- a/src/server/api/endpoints/drive/files.ts
+++ b/src/server/api/endpoints/drive/files.ts
@@ -2,9 +2,17 @@ import $ from 'cafy'; import ID from '../../../../misc/cafy-id';
import DriveFile, { pack } from '../../../../models/drive-file';
import { ILocalUser } from '../../../../models/user';
-/**
- * Get drive files
- */
+export const meta = {
+ desc: {
+ ja: 'ドライブのファイル一覧を取得します。',
+ en: 'Get files of drive.'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-read'
+};
+
export default async (params: any, user: ILocalUser) => {
// Get 'limit' parameter
const [limit = 10, limitErr] = $.num.optional.range(1, 100).get(params.limit);
diff --git a/src/server/api/endpoints/drive/files/create.ts b/src/server/api/endpoints/drive/files/create.ts
index c5eb29e1af..ca12be9104 100644
--- a/src/server/api/endpoints/drive/files/create.ts
+++ b/src/server/api/endpoints/drive/files/create.ts
@@ -8,7 +8,8 @@ import getParams from '../../../get-params';
export const meta = {
desc: {
- ja: 'ドライブにファイルをアップロードします。'
+ ja: 'ドライブにファイルをアップロードします。',
+ en: 'Upload a file to drive.'
},
requireCredential: true,
diff --git a/src/server/api/endpoints/drive/files/delete.ts b/src/server/api/endpoints/drive/files/delete.ts
index 8a63be0e2f..02cd96dd8f 100644
--- a/src/server/api/endpoints/drive/files/delete.ts
+++ b/src/server/api/endpoints/drive/files/delete.ts
@@ -4,9 +4,17 @@ import del from '../../../../../services/drive/delete-file';
import { publishDriveStream } from '../../../../../stream';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Delete a file
- */
+export const meta = {
+ desc: {
+ ja: 'ドライブのファイルを削除します。',
+ en: 'Delete a file of drive.'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-write'
+};
+
export default async (params: any, user: ILocalUser) => {
// Get 'fileId' parameter
const [fileId, fileIdErr] = $.type(ID).get(params.fileId);
diff --git a/src/server/api/endpoints/drive/files/find.ts b/src/server/api/endpoints/drive/files/find.ts
index 8b166e2dbc..aa44ee688e 100644
--- a/src/server/api/endpoints/drive/files/find.ts
+++ b/src/server/api/endpoints/drive/files/find.ts
@@ -2,9 +2,12 @@ import $ from 'cafy'; import ID from '../../../../../misc/cafy-id';
import DriveFile, { pack } from '../../../../../models/drive-file';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Find a file(s)
- */
+export const meta = {
+ requireCredential: true,
+
+ kind: 'drive-read'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'name' parameter
const [name, nameErr] = $.str.get(params.name);
diff --git a/src/server/api/endpoints/drive/files/show.ts b/src/server/api/endpoints/drive/files/show.ts
index 02faa6d5a7..6a66c7a272 100644
--- a/src/server/api/endpoints/drive/files/show.ts
+++ b/src/server/api/endpoints/drive/files/show.ts
@@ -2,9 +2,17 @@ import $ from 'cafy'; import ID from '../../../../../misc/cafy-id';
import DriveFile, { pack } from '../../../../../models/drive-file';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Show a file
- */
+export const meta = {
+ desc: {
+ ja: '指定したドライブのファイルの情報を取得します。',
+ en: 'Get specified file of drive.'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-read'
+};
+
export default async (params: any, user: ILocalUser) => {
// Get 'fileId' parameter
const [fileId, fileIdErr] = $.type(ID).get(params.fileId);
diff --git a/src/server/api/endpoints/drive/files/update.ts b/src/server/api/endpoints/drive/files/update.ts
index 95dd6c2acc..396bc97694 100644
--- a/src/server/api/endpoints/drive/files/update.ts
+++ b/src/server/api/endpoints/drive/files/update.ts
@@ -4,9 +4,17 @@ import DriveFile, { validateFileName, pack } from '../../../../../models/drive-f
import { publishDriveStream } from '../../../../../stream';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Update a file
- */
+export const meta = {
+ desc: {
+ ja: '指定したドライブのファイルの情報を更新します。',
+ en: 'Update specified file of drive.'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-write'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'fileId' parameter
const [fileId, fileIdErr] = $.type(ID).get(params.fileId);
diff --git a/src/server/api/endpoints/drive/files/upload_from_url.ts b/src/server/api/endpoints/drive/files/upload_from_url.ts
index 4af365c394..d634cf46db 100644
--- a/src/server/api/endpoints/drive/files/upload_from_url.ts
+++ b/src/server/api/endpoints/drive/files/upload_from_url.ts
@@ -1,11 +1,24 @@
-/**
- * Module dependencies
- */
import $ from 'cafy'; import ID from '../../../../../misc/cafy-id';
+const ms = require('ms');
import { pack } from '../../../../../models/drive-file';
import uploadFromUrl from '../../../../../services/drive/upload-from-url';
import { ILocalUser } from '../../../../../models/user';
+export const meta = {
+ desc: {
+ ja: 'ドライブに指定されたURLに存在するファイルをアップロードします。'
+ },
+
+ limit: {
+ duration: ms('1hour'),
+ max: 10
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-write'
+};
+
/**
* Create a file from a URL
*/
diff --git a/src/server/api/endpoints/drive/folders.ts b/src/server/api/endpoints/drive/folders.ts
index f1817ec42f..de398eb720 100644
--- a/src/server/api/endpoints/drive/folders.ts
+++ b/src/server/api/endpoints/drive/folders.ts
@@ -2,9 +2,17 @@ import $ from 'cafy'; import ID from '../../../../misc/cafy-id';
import DriveFolder, { pack } from '../../../../models/drive-folder';
import { ILocalUser } from '../../../../models/user';
-/**
- * Get drive folders
- */
+export const meta = {
+ desc: {
+ ja: 'ドライブのフォルダ一覧を取得します。',
+ en: 'Get folders of drive.'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-read'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'limit' parameter
const [limit = 10, limitErr] = $.num.optional.range(1, 100).get(params.limit);
diff --git a/src/server/api/endpoints/drive/folders/create.ts b/src/server/api/endpoints/drive/folders/create.ts
index 6205691e15..03f9504774 100644
--- a/src/server/api/endpoints/drive/folders/create.ts
+++ b/src/server/api/endpoints/drive/folders/create.ts
@@ -3,9 +3,17 @@ import DriveFolder, { isValidFolderName, pack } from '../../../../../models/driv
import { publishDriveStream } from '../../../../../stream';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Create drive folder
- */
+export const meta = {
+ desc: {
+ ja: 'ドライブのフォルダを作成します。',
+ en: 'Create a folder of drive.'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-write'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'name' parameter
const [name = '無題のフォルダー', nameErr] = $.str.optional.pipe(isValidFolderName).get(params.name);
diff --git a/src/server/api/endpoints/drive/folders/find.ts b/src/server/api/endpoints/drive/folders/find.ts
index 64065d9379..ec3c1d2e36 100644
--- a/src/server/api/endpoints/drive/folders/find.ts
+++ b/src/server/api/endpoints/drive/folders/find.ts
@@ -2,9 +2,12 @@ import $ from 'cafy'; import ID from '../../../../../misc/cafy-id';
import DriveFolder, { pack } from '../../../../../models/drive-folder';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Find a folder(s)
- */
+export const meta = {
+ requireCredential: true,
+
+ kind: 'drive-read'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'name' parameter
const [name, nameErr] = $.str.get(params.name);
diff --git a/src/server/api/endpoints/drive/folders/show.ts b/src/server/api/endpoints/drive/folders/show.ts
index 5f56606215..6a6c879a01 100644
--- a/src/server/api/endpoints/drive/folders/show.ts
+++ b/src/server/api/endpoints/drive/folders/show.ts
@@ -2,9 +2,16 @@ import $ from 'cafy'; import ID from '../../../../../misc/cafy-id';
import DriveFolder, { pack } from '../../../../../models/drive-folder';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Show a folder
- */
+export const meta = {
+ desc: {
+ ja: '指定したドライブのフォルダの情報を取得します。'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-read'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'folderId' parameter
const [folderId, folderIdErr] = $.type(ID).get(params.folderId);
diff --git a/src/server/api/endpoints/drive/folders/update.ts b/src/server/api/endpoints/drive/folders/update.ts
index b833655974..1b449428a6 100644
--- a/src/server/api/endpoints/drive/folders/update.ts
+++ b/src/server/api/endpoints/drive/folders/update.ts
@@ -3,9 +3,17 @@ import DriveFolder, { isValidFolderName, pack } from '../../../../../models/driv
import { publishDriveStream } from '../../../../../stream';
import { ILocalUser } from '../../../../../models/user';
-/**
- * Update a folder
- */
+export const meta = {
+ desc: {
+ ja: '指定したドライブのフォルダの情報を更新します。',
+ en: 'Update specified folder of drive.'
+ },
+
+ requireCredential: true,
+
+ kind: 'drive-write'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'folderId' parameter
const [folderId, folderIdErr] = $.type(ID).get(params.folderId);
diff --git a/src/server/api/endpoints/drive/stream.ts b/src/server/api/endpoints/drive/stream.ts
index 39c878a1f8..53f94a2639 100644
--- a/src/server/api/endpoints/drive/stream.ts
+++ b/src/server/api/endpoints/drive/stream.ts
@@ -2,9 +2,12 @@ import $ from 'cafy'; import ID from '../../../../misc/cafy-id';
import DriveFile, { pack } from '../../../../models/drive-file';
import { ILocalUser } from '../../../../models/user';
-/**
- * Get drive stream
- */
+export const meta = {
+ requireCredential: true,
+
+ kind: 'drive-read'
+};
+
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
// Get 'limit' parameter
const [limit = 10, limitErr] = $.num.optional.range(1, 100).get(params.limit);