parse-dashboard 7.1.1-alpha.3 → 7.2.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -126,25 +126,25 @@ Parse Dashboard is continuously tested with the most recent releases of Node.js
126
126
 
127
127
  ### Options
128
128
 
129
- | Parameter | Type | Optional | Default | Example | Description |
130
- |----------------------------------------|---------------------|----------|---------|----------------------|---------------------------------------------------------------------------------------------------------------------------------------------|
131
- | `apps` | Array<Object> | no | - | `[{ ... }, { ... }]` | The apps that are configured for the dashboard. |
132
- | `apps.appId` | String | yes | - | `"myAppId"` | The Application ID for your Parse Server instance. |
133
- | `apps.masterKey` | String \| Function | yes | - | `"exampleMasterKey"`, `() => "exampleMasterKey"` | The master key for full access to Parse Server. It can be provided directly as a String or as a Function returning a String. |
134
- | `apps.masterKeyTtl` | Number | no | - | `3600` | Time-to-live (TTL) for the master key in seconds. This defines how long the master key is cached before the `masterKey` function is re-triggered. |
135
- | `apps.serverURL` | String | yes | - | `"http://localhost:1337/parse"` | The URL where your Parse Server is running. |
136
- | `apps.appName` | String | no | - | `"MyApp"` | The display name of the app in the dashboard. |
137
- | `infoPanel` | Array<Object> | yes | - | `[{ ... }, { ... }]` | The [info panel](#info-panel) configuration. |
138
- | `infoPanel[*].title` | String | no | - | `User Details` | The panel title. |
139
- | `infoPanel[*].classes` | Array<String> | no | - | `["_User"]` | The classes for which the info panel should be displayed. |
140
- | `infoPanel[*].cloudCodeFunction` | String | no | - | `getUserDetails` | The Cloud Code Function which received the selected object in the data browser and returns the response to be displayed in the info panel. |
141
- | `apps.scripts` | Array<Object> | yes | `[]` | `[{ ... }, { ... }]` | The scripts that can be executed for that app. |
142
- | `apps.scripts.title` | String | no | - | `'Delete User'` | The title that will be displayed in the data browser context menu and the script run confirmation dialog. |
143
- | `apps.scripts.classes` | Array<String> | no | - | `['_User']` | The classes of Parse Objects for which the scripts can be executed. |
144
- | `apps.scripts.cloudCodeFunction` | String | no | - | `'deleteUser'` | The name of the Parse Cloud Function to execute. |
145
- | `apps.scripts.showConfirmationDialog` | Bool | yes | `false` | `true` | Is `true` if a confirmation dialog should be displayed before the script is executed, `false` if the script should be executed immediately. |
146
- | `apps.scripts.confirmationDialogStyle` | String | yes | `info` | `critical` | The style of the confirmation dialog. Valid values: `info` (blue style), `critical` (red style). |
147
- | `apps.cloudConfigHistoryLimit` | Integer | yes | `100` | `100` | The number of historic values that should be saved in the Cloud Config change history. Valid values: `0`...`Number.MAX_SAFE_INTEGER`. |
129
+ | Parameter | Type | Optional | Default | Example | Description |
130
+ |----------------------------------------|---------------------|----------|---------|--------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|
131
+ | `apps` | Array<Object> | no | - | `[{ ... }, { ... }]` | The apps that are configured for the dashboard. |
132
+ | `apps.appId` | String | yes | - | `"myAppId"` | The Application ID for your Parse Server instance. |
133
+ | `apps.masterKey` | String \| Function | yes | - | `"exampleMasterKey"`, `() => "exampleMasterKey"` | The master key for full access to Parse Server. It can be provided directly as a String or as a Function returning a String. |
134
+ | `apps.masterKeyTtl` | Number | no | - | `3600` | Time-to-live (TTL) for the master key in seconds. This defines how long the master key is cached before the `masterKey` function is re-triggered. |
135
+ | `apps.serverURL` | String | yes | - | `"http://localhost:1337/parse"` | The URL where your Parse Server is running. |
136
+ | `apps.appName` | String | no | - | `"MyApp"` | The display name of the app in the dashboard. |
137
+ | `infoPanel` | Array<Object> | yes | - | `[{ ... }, { ... }]` | The [info panel](#info-panel) configuration. |
138
+ | `infoPanel[*].title` | String | no | - | `User Details` | The panel title. |
139
+ | `infoPanel[*].classes` | Array<String> | no | - | `["_User"]` | The classes for which the info panel should be displayed. |
140
+ | `infoPanel[*].cloudCodeFunction` | String | no | - | `getUserDetails` | The Cloud Code Function which received the selected object in the data browser and returns the response to be displayed in the info panel. |
141
+ | `apps.scripts` | Array<Object> | yes | `[]` | `[{ ... }, { ... }]` | The scripts that can be executed for that app. |
142
+ | `apps.scripts.title` | String | no | - | `'Delete User'` | The title that will be displayed in the data browser context menu and the script run confirmation dialog. |
143
+ | `apps.scripts.classes` | Array<String> | no | - | `['_User']` | The classes of Parse Objects for which the scripts can be executed. |
144
+ | `apps.scripts.cloudCodeFunction` | String | no | - | `'deleteUser'` | The name of the Parse Cloud Function to execute. |
145
+ | `apps.scripts.showConfirmationDialog` | Bool | yes | `false` | `true` | Is `true` if a confirmation dialog should be displayed before the script is executed, `false` if the script should be executed immediately. |
146
+ | `apps.scripts.confirmationDialogStyle` | String | yes | `info` | `critical` | The style of the confirmation dialog. Valid values: `info` (blue style), `critical` (red style). |
147
+ | `apps.cloudConfigHistoryLimit` | Integer | yes | `100` | `100` | The number of historic values that should be saved in the Cloud Config change history. Valid values: `0`...`Number.MAX_SAFE_INTEGER`. |
148
148
 
149
149
  ### File
150
150
 
@@ -883,11 +883,13 @@ The Cloud Code Function receives the selected object in the payload and returns
883
883
 
884
884
  The info panel can contain multiple segments to display different groups of information.
885
885
 
886
- | Parameter | Value | Optional | Description |
887
- |---------------------|--------|----------|----------------------------------------------------------------------------------------------------------------------------------------|
888
- | `segments` | Array | No | An ordered array of segments, where each segment represents a distinct group of items to display. |
889
- | `segments[i].title` | String | No | The title of the segment that will be displayed. |
890
- | `segments[i].items` | Array | No | An ordered array of items within the segment. Each item can be of different types, such as text, key-value pairs, tables, images, etc. |
886
+ | Parameter | Value | Optional | Description |
887
+ |--------------------------|--------|----------|----------------------------------------------------------------------------------------------------------------------------------------|
888
+ | `segments` | Array | No | An ordered array of segments, where each segment represents a distinct group of items to display. |
889
+ | `segments[i].title` | String | No | The title of the segment that will be displayed. |
890
+ | `segments[i].items` | Array | No | An ordered array of items within the segment. Each item can be of different types, such as text, key-value pairs, tables, images, etc. |
891
+ | `segments[i].style` | Object | Yes | The CSS style definition for the segment. |
892
+ | `segments[i].titleStyle` | Object | Yes | The CSS style definition for the segment title. |
891
893
 
892
894
  Example:
893
895
 
@@ -897,6 +899,8 @@ Example:
897
899
  "segments": [
898
900
  {
899
901
  "title": "Purchases",
902
+ "style": { "backgroundColor": "lightgray", "font-size": "10px" },
903
+ "titleStyle": { "backgroundColor": "orange", "color": "white" },
900
904
  "items": [
901
905
  {
902
906
  "type": "text",
@@ -915,17 +919,19 @@ The items array can include various types of content such as text, key-value pai
915
919
 
916
920
  A simple text field.
917
921
 
918
- | Parameter | Value | Optional | Description |
919
- |-----------|--------|----------|----------------------|
920
- | `type` | String | No | Must be `"text"`. |
921
- | `text` | String | No | The text to display. |
922
+ | Parameter | Value | Optional | Description |
923
+ |-----------|--------|----------|---------------------------|
924
+ | `type` | String | No | Must be `"text"`. |
925
+ | `text` | String | No | The text to display. |
926
+ | `style` | Object | Yes | The CSS style definition. |
922
927
 
923
928
  Example:
924
929
 
925
930
  ```json
926
931
  {
927
932
  "type": "text",
928
- "text": "This user has a high churn risk!"
933
+ "text": "This user has a high churn risk!",
934
+ "style": { "backgroundColor": "red" },
929
935
  }
930
936
  ```
931
937
 
@@ -940,6 +946,7 @@ A text item that consists of a key and a value. The value can optionally be link
940
946
  | `value` | String | - | No | The value text to display. |
941
947
  | `url` | String | `undefined` | Yes | The URL that will be opened in a new browser tab when clicking on the value text. It can be set to an absolute URL or a relative URL in which case the base URL is `<PROTOCOL>://<HOST>/<MOUNT_PATH>/`. |
942
948
  | `isRelativeUrl` | Boolean | `false` | Yes | Set this to `true` when linking to another dashboard page, in which case the base URL for the relative URL will be `<PROTOCOL>://<HOST>/<MOUNT_PATH>/apps/<APP_NAME>/`. |
949
+ | `style` | Object | - | Yes | The CSS style definition. |
943
950
 
944
951
  Examples:
945
952
 
@@ -947,7 +954,8 @@ Examples:
947
954
  {
948
955
  "type": "keyValue",
949
956
  "key": "Lifetime purchase value",
950
- "value": "$10k"
957
+ "value": "$10k",
958
+ "style": { "backgroundColor": "green" },
951
959
  }
952
960
  ```
953
961
 
@@ -997,6 +1005,7 @@ A table with columns and rows to display data in a structured format.
997
1005
  | `columns[*].name` | String | No | The name of the column to display. |
998
1006
  | `columns[*].type` | String | No | The type of the column value (e.g., `"string"`, `"number"`). |
999
1007
  | `rows` | Array | No | The rows of data, where each row is an object containing values for each column. |
1008
+ | `style` | Object | Yes | The CSS style definition. |
1000
1009
 
1001
1010
  Example:
1002
1011
 
@@ -1022,7 +1031,8 @@ Example:
1022
1031
  "Name": "Bob",
1023
1032
  "Age": 40
1024
1033
  }
1025
- ]
1034
+ ],
1035
+ "style": { "backgroundColor": "lightGray" }
1026
1036
  }
1027
1037
  ```
1028
1038
 
@@ -1034,13 +1044,15 @@ An image to be displayed in the panel.
1034
1044
  |-----------|--------|----------|----------------------------------|
1035
1045
  | `type` | String | No | Must be `"image"`. |
1036
1046
  | `url` | String | No | The URL of the image to display. |
1047
+ | `style` | Object | Yes | The CSS style definition. |
1037
1048
 
1038
1049
  Example:
1039
1050
 
1040
1051
  ```json
1041
1052
  {
1042
1053
  "type": "image",
1043
- "url": "https://example.com/images?purchaseId=012345"
1054
+ "url": "https://example.com/images?purchaseId=012345",
1055
+ "style": { "backgroundColor": "white" }
1044
1056
  }
1045
1057
  ```
1046
1058
 
@@ -1052,13 +1064,15 @@ A video to be displayed in the panel.
1052
1064
  |-----------|--------|----------|----------------------------------|
1053
1065
  | `type` | String | No | Must be `"video"`. |
1054
1066
  | `url` | String | No | The URL of the video to display. |
1067
+ | `style` | Object | Yes | The CSS style definition. |
1055
1068
 
1056
1069
  Example:
1057
1070
 
1058
1071
  ```json
1059
1072
  {
1060
1073
  "type": "video",
1061
- "url": "https://example.com/video.mp4"
1074
+ "url": "https://example.com/video.mp4",
1075
+ "style": { "backgroundColor": "white" }
1062
1076
  }
1063
1077
  ```
1064
1078
 
@@ -1070,13 +1084,15 @@ An audio file to be played in the panel.
1070
1084
  |-----------|--------|----------|-------------------------------|
1071
1085
  | `type` | String | No | Must be `"audio"`. |
1072
1086
  | `url` | String | No | The URL of the audio to play. |
1087
+ | `style` | Object | Yes | The CSS style definition. |
1073
1088
 
1074
1089
  Example:
1075
1090
 
1076
1091
  ```json
1077
1092
  {
1078
1093
  "type": "audio",
1079
- "url": "https://example.com/audio.mp3"
1094
+ "url": "https://example.com/audio.mp3",
1095
+ "style": { "backgroundColor": "white" }
1080
1096
  }
1081
1097
  ```
1082
1098
 
@@ -1093,6 +1109,7 @@ A button that triggers an action when clicked.
1093
1109
  | `action.method` | String | No | The HTTP method to use for the action (e.g., `"POST"`). |
1094
1110
  | `action.headers` | Object | Yes | Optional headers to include in the request. |
1095
1111
  | `action.body` | Object | Yes | The body of the request in JSON format. |
1112
+ | `style` | Object | Yes | The CSS style definition. |
1096
1113
 
1097
1114
  Example:
1098
1115
 
@@ -1109,7 +1126,8 @@ Example:
1109
1126
  "body": {
1110
1127
  "key": "value"
1111
1128
  }
1112
- }
1129
+ },
1130
+ "style": { "backgroundColor": "pink", "color": "white" }
1113
1131
  }
1114
1132
  ```
1115
1133
 
@@ -1122,6 +1140,7 @@ A sub-panel whose data is loaded on-demand by expanding the item.
1122
1140
  | `type` | String | No | Must be `"infoPanel"`. |
1123
1141
  | `title` | String | No | The title to display in the expandable headline. |
1124
1142
  | `cloudCodeFunction` | String | No | The Cloud Code Function to call which receives the selected object in the data browser and returns the response to be displayed in the sub-panel. |
1143
+ | `style` | Object | Yes | The CSS style definition. |
1125
1144
 
1126
1145
  Example:
1127
1146
 
@@ -1129,7 +1148,8 @@ Example:
1129
1148
  {
1130
1149
  "type": "panel",
1131
1150
  "title": "Purchase History",
1132
- "cloudCodeFunction": "getUserPurchaseHistory"
1151
+ "cloudCodeFunction": "getUserPurchaseHistory",
1152
+ "style": { "backgroundColor": "lightGray" },
1133
1153
  }
1134
1154
  ```
1135
1155
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "parse-dashboard",
3
- "version": "7.1.1-alpha.3",
3
+ "version": "7.2.0-alpha.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/parse-community/parse-dashboard"
@@ -39,7 +39,7 @@
39
39
  "@babel/runtime-corejs3": "7.27.0",
40
40
  "bcryptjs": "2.3.0",
41
41
  "body-parser": "2.2.0",
42
- "commander": "9.4.0",
42
+ "commander": "13.1.0",
43
43
  "connect-flash": "0.1.1",
44
44
  "cookie-session": "2.1.0",
45
45
  "copy-to-clipboard": "3.3.3",
@@ -50,7 +50,7 @@
50
50
  "graphql": "16.8.1",
51
51
  "immutable": "5.1.1",
52
52
  "immutable-devtools": "0.1.5",
53
- "inquirer": "12.5.2",
53
+ "inquirer": "12.6.0",
54
54
  "js-beautify": "1.14.10",
55
55
  "otpauth": "8.0.3",
56
56
  "package-json": "7.0.0",
@@ -61,7 +61,7 @@
61
61
  "prop-types": "15.8.1",
62
62
  "qrcode": "1.5.4",
63
63
  "react": "16.14.0",
64
- "react-ace": "11.0.1",
64
+ "react-ace": "14.0.1",
65
65
  "react-dnd": "10.0.2",
66
66
  "react-dnd-html5-backend": "16.0.1",
67
67
  "react-dom": "16.14.0",
@@ -118,7 +118,7 @@
118
118
  "typescript": "5.8.2",
119
119
  "webpack": "5.99.5",
120
120
  "webpack-cli": "6.0.1",
121
- "yaml": "1.10.0"
121
+ "yaml": "2.7.1"
122
122
  },
123
123
  "scripts": {
124
124
  "ci:check": "node ./ci/ciCheck.js",