Skip to content

Commit 2908267

Browse files
authored
Merge pull request #60 from back4app/update-version
Update version
2 parents b1c4f15 + dd84e97 commit 2908267

34 files changed

+8218
-4256
lines changed

.travis.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
language: node_js
22
node_js:
3-
- '4.4'
4-
- '5.7'
5-
- '6.1'
3+
- '6.11'
4+
- '8.8'
5+
before_script: ./scripts/before_script.sh
66
cache:
77
directories:
88
- node_modules

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,15 @@
44

55
* _Contributing to this repo? Add info about your change here to be included in next release_
66

7+
### 1.2.0
8+
* Fix: Filtering with a 1-digit number (#831), thanks to [Pascal Giguère](https://github.com/pgiguere1)
9+
* Fix: Databrowser shows correct count of filtered objects, thanks to [Tom Engelbrecht](https://github.com/engel)
10+
* Feature: Add primaryBackgroundColor and secondaryBackgroundColor in AppCard, thanks to [AreyouHappy](https://github.com/AreyouHappy)
11+
* Improvement: Removes forcing sort on createdAt (#796), thanks to [Florent Vilmart](https://github.com/flovilmart)
12+
* Fix: Broken Learn More link to cloud code documentation page (#828), thanks to [Stefan Trauth](https://github.com/funkenstrahlen)
13+
* Fix: Add `_PushStatus` add to SpecialClasses (#701), thanks to [Dongwoo Gim](https://github.com/gimdongwoo)
14+
* Fix: Include PushAudience query (#795), thanks to [marvelm](https://github.com/marvelm)
15+
716
### 1.1.2
817

918
* Fix: An issue introduced when using readOnlyMasterKey would make all users readOnly after one has logged in.
Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,3 @@
11
{
2-
"apps": [
3-
{
4-
"apiKey": "d49d9171-44ab-4903-ad48-8583bbd71ceb",
5-
"appId": "btziWLgauIatUgdmWDYFHx0pqTnSoEcfNtJHZR5i",
6-
"appName": "Android app",
7-
"appNameForURL": "53d10528-9d77-41b3-9d3e-3fbe3c438d2b",
8-
"clientKey": "i3wX3QTodhcPwUi03lLUlMaMY36qf6kBQCS6FErX",
9-
"feedbackEmail": "[email protected]",
10-
"javascriptKey": "6BRNN5R0tOyrAAS3U74NX7q1cTESzyDDVISYzUX2",
11-
"masterKey": "9fhEU3de6jH5HraCeKAWvMR7l62aODM7DZlYRmh8",
12-
"production": true,
13-
"restKey": "cjLSL2KvBhneFU2nfP0jvXmdslO2Tlv2MNxhSbZq",
14-
"serverURL": "https://parseapi.back4app.com",
15-
"webhookKey": "XEQLleEHliYjJrK26z3Gzv3hGpL1Q3oApRq4IvPk",
16-
"windowsKey": "udHVnp9l91VAmdKXM0MyOVD2w9z0TLaQOOzORZXT"
17-
}
18-
]
2+
"apps": []
193
}

README.md

Lines changed: 97 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Parse Dashboard
22

3+
[![Greenkeeper badge](https://badges.greenkeeper.io/parse-community/parse-dashboard.svg)](https://greenkeeper.io/)
4+
35
[![Build Status](https://img.shields.io/travis/parse-community/parse-dashboard/master.svg?style=flat)](https://travis-ci.org/parse-community/parse-dashboard)
46
[![npm version](https://img.shields.io/npm/v/parse-dashboard.svg?style=flat)](https://www.npmjs.com/package/parse-dashboard)
57

@@ -8,14 +10,25 @@ Parse Dashboard is a standalone dashboard for managing your Parse apps. You can
810
* [Getting Started](#getting-started)
911
* [Local Installation](#local-installation)
1012
* [Configuring Parse Dashboard](#configuring-parse-dashboard)
13+
* [File](#file)
14+
* [Environment variables](#environment-variables)
15+
* [Multiple apps](#multiple-apps)
16+
* [Single app](#single-app)
1117
* [Managing Multiple Apps](#managing-multiple-apps)
18+
* [App Icon Configuration](#app-icon-configuration)
19+
* [App Background Color Configuration](#app-background-color-configuration)
1220
* [Other Configuration Options](#other-configuration-options)
1321
* [Running as Express Middleware](#running-as-express-middleware)
1422
* [Deploying Parse Dashboard](#deploying-parse-dashboard)
1523
* [Preparing for Deployment](#preparing-for-deployment)
1624
* [Security Considerations](#security-considerations)
1725
* [Configuring Basic Authentication](#configuring-basic-authentication)
1826
* [Separating App Access Based on User Identity](#separating-app-access-based-on-user-identity)
27+
* [Use Read-Only masterKey](#use-read-only-masterKey)
28+
* [Making an app read-only for all users](#making-an-app-read-only-for-all-users)
29+
* [Makings users read-only](#makings-users-read-only)
30+
* [Making user's apps readOnly](#making-users-apps-readonly)
31+
* [Configuring Localized Push Notifications](#configuring-localized-push-notifications)
1932
* [Run with Docker](#run-with-docker)
2033
* [Contributing](#contributing)
2134

@@ -100,7 +113,7 @@ Managing multiple apps from the same dashboard is also possible. Simply add add
100113

101114
You can manage self-hosted [Parse Server](https://github.com/ParsePlatform/parse-server) apps, *and* apps that are hosted on [Parse.com](http://parse.com/) from the same dashboard. In your config file, you will need to add the `restKey` and `javascriptKey` as well as the other paramaters, which you can find on `dashboard.parse.com`. Set the serverURL to `http://api.parse.com/1`:
102115

103-
```js
116+
```json
104117
{
105118
"apps": [
106119
{
@@ -141,6 +154,33 @@ Parse Dashboard supports adding an optional icon for each app, so you can identi
141154
}
142155
```
143156

157+
## App Background Color Configuration
158+
159+
Parse Dashboard supports adding an optional background color for each app, so you can identify them easier in the list. To do so, you *must* use the configuration file, define an `primaryBackgroundColor` and `secondaryBackgroundColor` in it, parameter for each app. It is `CSS style`. To visualize what it means, in the following example `backgroundColor` is a configuration file:
160+
161+
```json
162+
{
163+
"apps": [
164+
{
165+
"serverURL": "http://localhost:1337/parse",
166+
"appId": "myAppId",
167+
"masterKey": "myMasterKey",
168+
"appName": "My Parse Server App",
169+
"primaryBackgroundColor": "#FFA500", // Orange
170+
"secondaryBackgroundColor": "#FF4500" // OrangeRed
171+
},
172+
{
173+
"serverURL": "http://localhost:1337/parse",
174+
"appId": "myAppId",
175+
"masterKey": "myMasterKey",
176+
"appName": "My Parse Server App [2]",
177+
"primaryBackgroundColor": "rgb(255, 0, 0)", // Red
178+
"secondaryBackgroundColor": "rgb(204, 0, 0)" // DarkRed
179+
}
180+
]
181+
}
182+
```
183+
144184
## Other Configuration Options
145185

146186
You can set `appNameForURL` in the config file for each app to control the url of your app within the dashboard. This can make it easier to use bookmarks or share links on your dashboard.
@@ -151,7 +191,7 @@ To change the app to production, simply set `production` to `true` in your confi
151191

152192
Instead of starting Parse Dashboard with the CLI, you can also run it as an [express](https://github.com/expressjs/express) middleware.
153193

154-
```
194+
```javascript
155195
var express = require('express');
156196
var ParseDashboard = require('parse-dashboard');
157197

@@ -177,20 +217,20 @@ httpServer.listen(4040);
177217

178218
If you want to run both [Parse Server](https://github.com/ParsePlatform/parse-server) and Parse Dashboard on the same server/port, you can run them both as express middleware:
179219

180-
```
220+
```javascript
181221
var express = require('express');
182222
var ParseServer = require('parse-server').ParseServer;
183223
var ParseDashboard = require('parse-dashboard');
184224

185-
var allowInsecureHTTP = false
186-
187225
var api = new ParseServer({
188226
// Parse Server settings
189227
});
190228

229+
var options = { allowInsecureHTTP: false };
230+
191231
var dashboard = new ParseDashboard({
192232
// Parse Dashboard settings
193-
}, allowInsecureHTTP);
233+
}, options);
194234

195235
var app = express();
196236

@@ -215,7 +255,7 @@ In order to securely deploy the dashboard without leaking your apps master key,
215255

216256
The deployed dashboard detects if you are using a secure connection. If you are deploying the dashboard behind a load balancer or front-facing proxy, then the app won't be able to detect that the connection is secure. In this case, you can start the dashboard with the `--trustProxy=1` option (or set the PARSE_DASHBOARD_TRUST_PROXY config var to 1) to rely on the X-Forwarded-* headers for the client's connection security. This is useful for hosting on services like Heroku, where you can trust the provided proxy headers to correctly determine whether you're using HTTP or HTTPS. You can also turn on this setting when using the dashboard as [express](https://github.com/expressjs/express) middleware:
217257

218-
```
258+
```javascript
219259
var trustProxy = true;
220260
var dashboard = new ParseDashboard({
221261
"apps": [
@@ -300,7 +340,7 @@ Start your `parse-server` with
300340

301341
Then in your dashboard configuration:
302342

303-
```
343+
```javascript
304344
var trustProxy = true;
305345
var dashboard = new ParseDashboard({
306346
"apps": [
@@ -317,41 +357,72 @@ var dashboard = new ParseDashboard({
317357

318358
### Makings users read-only
319359

360+
Make sure you specify the `readOnlyMasterKey` for the apps that you want to use read-only feature in "apps" configuration.
320361
You can mark a user as a read-only user:
321362

322363
```json
323364
{
324-
"apps": [{"...": "..."}],
365+
"apps": [
366+
{
367+
"appId": "myAppId1",
368+
"masterKey": "myMasterKey1",
369+
"readOnlyMasterKey": "myReadOnlyMasterKey1",
370+
"serverURL": "myURL1",
371+
"port": 4040,
372+
"production": true
373+
},
374+
{
375+
"appId": "myAppId2",
376+
"masterKey": "myMasterKey2",
377+
"readOnlyMasterKey": "myReadOnlyMasterKey2",
378+
"serverURL": "myURL2",
379+
"port": 4041,
380+
"production": true
381+
}
382+
],
325383
"users": [
326-
{
327-
"user":"user1",
328-
"pass":"pass1",
329-
"readOnly": true,
330-
"apps": [{"appId": "myAppId1"}, {"appId": "myAppId2"}]
331-
},
332-
{
333-
"user":"user2",
334-
"pass":"pass2",
335-
"apps": [{"appId": "myAppId1"}]
336-
} ]
384+
{
385+
"user":"user1",
386+
"pass":"pass1",
387+
"readOnly": true,
388+
"apps": [{"appId": "myAppId1"}, {"appId": "myAppId2"}]
389+
},
390+
{
391+
"user":"user2",
392+
"pass":"pass2",
393+
"apps": [{"appId": "myAppId1"}]
394+
}
395+
]
337396
}
338397
```
339398

340399
This way `user1` will have a readOnly access to `myAppId1` and `myAppId2`
341400

342401
### Making user's apps readOnly
343402

403+
Make sure you specify the `readOnlyMasterKey` for the apps that you want to use read-only feature in "apps" configuration.
344404
You can give read only access to a user on a per-app basis:
345405

346406
```json
347407
{
348-
"apps": [{"...": "..."}],
408+
"apps": [
409+
{
410+
"appId": "myAppId1",
411+
"masterKey": "myMasterKey1",
412+
"readOnlyMasterKey": "myReadOnlyMasterKey1",
413+
"serverURL": "myURL",
414+
"port": 4040,
415+
"production": true
416+
},
417+
{"...": "..."}
418+
],
349419
"users": [
350-
{
351-
"user":"user1",
352-
"pass":"pass1",
353-
"apps": [{"appId": "myAppId1", "readOnly": true}, {"appId": "myAppId2"}]
354-
} ]
420+
{
421+
"user":"user",
422+
"pass":"pass",
423+
"apps": [{"appId": "myAppId", "readOnly": true}, {"appId": "myAppId2"}]
424+
}
425+
]
355426
}
356427
```
357428

deploy-homolog.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ pem=AppContainers.pem
88

99
branch=$(git symbolic-ref --short HEAD)
1010
git='~/bin/git-parse-dashboard'
11-
ssh -t -i $b4a_certs_path/$pem $user@$host "sudo su back4app -c '. ~/.nvm/nvm.sh && nvm use 9 && cd ~/scm/parse-dashboard && $git reset --hard && $git remote update && $git checkout $branch && $git merge origin/$branch && yarn install && npm run prepublish && npm run build'"
11+
ssh -t -i $b4a_certs_path/$pem $user@$host "sudo su back4app -c '. ~/.nvm/nvm.sh && nvm use 9 && cd ~/scm/parse-dashboard && $git reset --hard && $git remote update && $git checkout $branch && $git merge origin/$branch && npm install && npm run prepublish && npm run build'"
1212
#ssh -t aws_B4ANFS_Homolog "sudo su back4app -c '. ~/.nvm/nvm.sh && nvm use 9 && cd ~/scm/back4app-site && yarn install && npm run build && pm2 reload site'"

0 commit comments

Comments
 (0)