summaryrefslogtreecommitdiff
path: root/src/api/models
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/models')
-rw-r--r--src/api/models/app.ts7
-rw-r--r--src/api/models/appdata.ts1
-rw-r--r--src/api/models/auth-session.ts1
-rw-r--r--src/api/models/drive-file.ts11
-rw-r--r--src/api/models/drive-folder.ts8
-rw-r--r--src/api/models/drive-tag.ts1
-rw-r--r--src/api/models/favorite.ts1
-rw-r--r--src/api/models/following.ts1
-rw-r--r--src/api/models/like.ts1
-rw-r--r--src/api/models/messaging-history.ts1
-rw-r--r--src/api/models/messaging-message.ts1
-rw-r--r--src/api/models/notification.ts1
-rw-r--r--src/api/models/post.ts1
-rw-r--r--src/api/models/signin.ts1
-rw-r--r--src/api/models/user.ts10
-rw-r--r--src/api/models/userkey.ts5
16 files changed, 52 insertions, 0 deletions
diff --git a/src/api/models/app.ts b/src/api/models/app.ts
new file mode 100644
index 0000000000..221a53906a
--- /dev/null
+++ b/src/api/models/app.ts
@@ -0,0 +1,7 @@
+const collection = global.db.collection('apps');
+
+collection.createIndex('name_id');
+collection.createIndex('name_id_lower');
+collection.createIndex('secret');
+
+export default collection;
diff --git a/src/api/models/appdata.ts b/src/api/models/appdata.ts
new file mode 100644
index 0000000000..2d471c4347
--- /dev/null
+++ b/src/api/models/appdata.ts
@@ -0,0 +1 @@
+export default global.db.collection('appdata');
diff --git a/src/api/models/auth-session.ts b/src/api/models/auth-session.ts
new file mode 100644
index 0000000000..6dbe2fa70e
--- /dev/null
+++ b/src/api/models/auth-session.ts
@@ -0,0 +1 @@
+export default global.db.collection('auth_sessions');
diff --git a/src/api/models/drive-file.ts b/src/api/models/drive-file.ts
new file mode 100644
index 0000000000..06ebf02005
--- /dev/null
+++ b/src/api/models/drive-file.ts
@@ -0,0 +1,11 @@
+export default global.db.collection('drive_files');
+
+export function validateFileName(name: string): boolean {
+ return (
+ (name.trim().length > 0) &&
+ (name.length <= 200) &&
+ (name.indexOf('\\') === -1) &&
+ (name.indexOf('/') === -1) &&
+ (name.indexOf('..') === -1)
+ );
+}
diff --git a/src/api/models/drive-folder.ts b/src/api/models/drive-folder.ts
new file mode 100644
index 0000000000..f345b3c340
--- /dev/null
+++ b/src/api/models/drive-folder.ts
@@ -0,0 +1,8 @@
+export default global.db.collection('drive_folders');
+
+export function isValidFolderName(name: string): boolean {
+ return (
+ (name.trim().length > 0) &&
+ (name.length <= 200)
+ );
+}
diff --git a/src/api/models/drive-tag.ts b/src/api/models/drive-tag.ts
new file mode 100644
index 0000000000..83c0a8f681
--- /dev/null
+++ b/src/api/models/drive-tag.ts
@@ -0,0 +1 @@
+export default global.db.collection('drive_tags');
diff --git a/src/api/models/favorite.ts b/src/api/models/favorite.ts
new file mode 100644
index 0000000000..6d9e7c72b3
--- /dev/null
+++ b/src/api/models/favorite.ts
@@ -0,0 +1 @@
+export default global.db.collection('favorites');
diff --git a/src/api/models/following.ts b/src/api/models/following.ts
new file mode 100644
index 0000000000..f9d8a41c5e
--- /dev/null
+++ b/src/api/models/following.ts
@@ -0,0 +1 @@
+export default global.db.collection('following');
diff --git a/src/api/models/like.ts b/src/api/models/like.ts
new file mode 100644
index 0000000000..aa3bd75c1c
--- /dev/null
+++ b/src/api/models/like.ts
@@ -0,0 +1 @@
+export default global.db.collection('likes');
diff --git a/src/api/models/messaging-history.ts b/src/api/models/messaging-history.ts
new file mode 100644
index 0000000000..3505e94b57
--- /dev/null
+++ b/src/api/models/messaging-history.ts
@@ -0,0 +1 @@
+export default global.db.collection('messaging_histories');
diff --git a/src/api/models/messaging-message.ts b/src/api/models/messaging-message.ts
new file mode 100644
index 0000000000..0e900bda58
--- /dev/null
+++ b/src/api/models/messaging-message.ts
@@ -0,0 +1 @@
+export default global.db.collection('messaging_messages');
diff --git a/src/api/models/notification.ts b/src/api/models/notification.ts
new file mode 100644
index 0000000000..1cb7b80838
--- /dev/null
+++ b/src/api/models/notification.ts
@@ -0,0 +1 @@
+export default global.db.collection('notifications');
diff --git a/src/api/models/post.ts b/src/api/models/post.ts
new file mode 100644
index 0000000000..bea92a5f61
--- /dev/null
+++ b/src/api/models/post.ts
@@ -0,0 +1 @@
+export default global.db.collection('posts');
diff --git a/src/api/models/signin.ts b/src/api/models/signin.ts
new file mode 100644
index 0000000000..896afaaf84
--- /dev/null
+++ b/src/api/models/signin.ts
@@ -0,0 +1 @@
+export default global.db.collection('signin');
diff --git a/src/api/models/user.ts b/src/api/models/user.ts
new file mode 100644
index 0000000000..1742f5cafb
--- /dev/null
+++ b/src/api/models/user.ts
@@ -0,0 +1,10 @@
+const collection = global.db.collection('users');
+
+collection.createIndex('username');
+collection.createIndex('token');
+
+export default collection;
+
+export function validateUsername(username: string): boolean {
+ return /^[a-zA-Z0-9\-]{3,20}$/.test(username);
+}
diff --git a/src/api/models/userkey.ts b/src/api/models/userkey.ts
new file mode 100644
index 0000000000..204f283a28
--- /dev/null
+++ b/src/api/models/userkey.ts
@@ -0,0 +1,5 @@
+const collection = global.db.collection('userkeys');
+
+collection.createIndex('key');
+
+export default collection;