diff --git a/packages/builder/src/components/settings/tabs/General.svelte b/packages/builder/src/components/settings/tabs/General.svelte
index bc0c17bc81..fbfb5f0136 100644
--- a/packages/builder/src/components/settings/tabs/General.svelte
+++ b/packages/builder/src/components/settings/tabs/General.svelte
@@ -1,15 +1,39 @@
General
diff --git a/packages/server/src/api/controllers/application.js b/packages/server/src/api/controllers/application.js
index 47addee330..be8e80a0c0 100644
--- a/packages/server/src/api/controllers/application.js
+++ b/packages/server/src/api/controllers/application.js
@@ -18,6 +18,8 @@ exports.fetch = async function(ctx) {
key: ["app"],
})
+ console.log("Apps: ", body)
+
ctx.body = body.rows.map(row => row.doc)
}
@@ -90,6 +92,22 @@ exports.create = async function(ctx) {
ctx.message = `Application ${ctx.request.body.name} created successfully`
}
+exports.update = async function(ctx) {
+ const clientId = await lookupClientId(ctx.params.applicationId)
+ const db = new CouchDB(ClientDb.name(clientId))
+ const application = await db.get(ctx.params.applicationId)
+
+ const data = ctx.request.body
+ const newData = { ...application, ...data }
+
+ const response = await db.put(newData)
+ data._rev = response.rev
+
+ ctx.status = 200
+ ctx.message = `Application ${application.name} updated successfully.`
+ ctx.body = response
+}
+
const createEmptyAppPackage = async (ctx, app) => {
const templateFolder = resolve(
__dirname,
diff --git a/packages/server/src/api/routes/application.js b/packages/server/src/api/routes/application.js
index 60cc781ac6..013dd6160d 100644
--- a/packages/server/src/api/routes/application.js
+++ b/packages/server/src/api/routes/application.js
@@ -12,6 +12,7 @@ router
authorized(BUILDER),
controller.fetchAppPackage
)
+ .put("/api/:applicationId/appPackage", authorized(BUILDER), controller.update)
.post("/api/applications", authorized(BUILDER), controller.create)
module.exports = router