-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathtemplates.js
More file actions
75 lines (62 loc) · 2.48 KB
/
templates.js
File metadata and controls
75 lines (62 loc) · 2.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
function servicesTemplate(project) {
const serviceFields = [
{ name: "Authentication", key: "hasAuthentication" },
{ name: "Storage", key: "hasStorage" },
{ name: "Realtime", key: "hasRealtime" },
{ name: "Functions", key: "hasFunctions" },
{ name: "Databases", key: "hasDatabases" },
];
return serviceFields
.filter(({ key }) => project[key])
.map(({ name }) => name)
.join(", ");
}
function formatFields(project, fields) {
return fields
.map(({ name, key }) => (project[key] ? `${name}: ${project[key]}\n` : ""))
.join("");
}
function projectTemplate(project) {
const projectFields = [
{ name: "Name", key: "name" },
{ name: "Description", key: "description" },
{ name: "Tagline", key: "tagline" },
{ name: "Use Case", key: "useCase" },
{ name: "Services", key: "services" },
{ name: "Framework", key: "framework" },
{ name: "UI Library", key: "uiLibrary" },
{ name: "Platform", key: "platform" },
{ name: "Website", key: "urlWebsite" },
{ name: "Article", key: "urlArticle" },
{ name: "Twitter", key: "urlTwitter" },
{ name: "GitHub", key: "urlGitHub" },
{ name: "Google Play", key: "urlGooglePlay" },
{ name: "App Store", key: "urlAppStore" },
{ name: "Linux", key: "urlLinux" },
{ name: "MacOS", key: "urlMacOs" },
{ name: "Windows", key: "urlWindows" },
];
project.services = servicesTemplate(project);
return formatFields(project, projectFields);
}
function rejectionTemplate(project) {
return `Hey 👋,
Thank you for submitting your project "${project.name}" to Built With Appwrite.
Unfortunately, we have decided to reject it for the following reason:
> ${project.rejectionReason}
Don't sweat it, though! This is all part of the process and an opportunity for growth. 🌱
After addressing the reason for rejection, feel free to submit the project again. We'd be excited to see your improved version! 🚀
Your Project
${projectTemplate(project)}
Keep on coding and creating awesome stuff! 💻🔥
The Built With Appwrite Team`;
}
function approvalTemplate(project) {
return `Hey 👋,
Thank you for submitting your project "${project.name}" to Built With Appwrite.
After reviewing your project, we have decided to approve it! 🎉
You can now find it on our website: https://builtwith.appwrite.io/projects/${project.$id}
Keep on coding and creating awesome stuff! 💻🔥
The Built With Appwrite Team`;
}
module.exports = { rejection: rejectionTemplate, approval: approvalTemplate };