Skip to content

Commit fde626e

Browse files
2.0.14 Release (#119)
* Added extra option (standalone dashboard by URL to build config * WIP on dockerfile * Reverted back to old Docker config * Fixed import for react-color-picker, clean up Dockerfile * Updated material-ui-color-picker dependency * Report updates base on global params (#114) * Report updates base on global params Disable refresh when a global parameter is changed that is not used in the report * Update CardView.tsx Removing extra logs * Optimized dockerfile, removed unused imports * Added edge case to dictionary based parameter handling * Added option to deeplink global dashboard parameters in the URL * Added configurable timeout for parameter selection updates * Increased the default row limit for pie/bar/line reports. Added option to disable row limiting * Resolved bug where map chart crashes on undefined point values * Added CSV download button to tables * Replace dashboard parameter in graph drilldown link * Added replacement of global parameters to iFrame URLs * Bumped suggested npm version to 8.6 * Added option to overwrite existing dashboards with the same name * Added option to load standalone dashboards from URL * Added release notes for 2.0.14, bumped version in relevant files * Fixed broken link in README Co-authored-by: BennuFire <[email protected]>
1 parent 18f07b9 commit fde626e

30 files changed

+305
-80
lines changed

Dockerfile

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,11 @@ RUN apk add --no-cache git
44
RUN git clone https://github.com/nielsdejong/neodash.git /usr/local/src/neodash
55
RUN npm install -g typescript jest
66
WORKDIR /usr/local/src/neodash
7+
COPY ./package.json /usr/local/src/neodash/package.json
78
RUN npm install
9+
COPY ./ /usr/local/src/neodash
10+
# ENV PUBLIC_URL=/neodash
11+
# RUN git checkout develop
812
RUN npm run build
913

1014
# production stage
@@ -28,17 +32,18 @@ HEALTHCHECK cmd curl --fail http://localhost:5005 || exit 1
2832

2933
# Set the defaults for the build arguments. When the image is created, these variables can be changed with --build-arg
3034
# Such as --build-arg ssoEnabled=true
31-
ARG standalone=false
3235
ARG ssoEnabled=false
3336
ARG ssoDiscoveryUrl='https://example.com'
37+
ARG standalone=false
3438
ARG standaloneProtocol='neo4j+s'
3539
ARG standaloneHost='test.databases.neo4j.io'
3640
ARG standalonePort=7687
3741
ARG standaloneDatabase='neo4j'
3842
ARG standaloneDashboardName='My Dashboard'
3943
ARG standaloneDashboardDatabase='neo4j'
44+
ARG standaloneDashboardURL='' # set this variable to load a standalone dashboard from a URL instead of a database.
4045

41-
LABEL version="2.0.13"
46+
LABEL version="2.0.14"
4247

4348
# Dynamically set app config on container startup.
4449
RUN echo " \
@@ -51,7 +56,8 @@ RUN echo " \
5156
\"standalonePort\": ${standalonePort}, \
5257
\"standaloneDatabase\": \"${standaloneDatabase}\", \
5358
\"standaloneDashboardName\": \"${standaloneDashboardName}\", \
54-
\"standaloneDashboardDatabase\": \"${standaloneDashboardDatabase}\" \
59+
\"standaloneDashboardDatabase\": \"${standaloneDashboardDatabase}\", \
60+
\"standaloneDashboardURL\": \"${standaloneDashboardURL}\" \
5561
}" > /usr/share/nginx/html/config.json
5662

5763
CMD echo '-----------------------------------------------------------------------------------------' && \

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ docker run -it --rm -p 5005:5005 nielsdejong/neodash
2626
## Run & Build using npm
2727
NeoDash is built with React. You'll need `npm` installed to run the web app.
2828

29-
> Use a recent version of `npm` and `node` to build NeoDash. The application has been tested with npm 8.3.1 & node v17.4.0.
29+
> Use a recent version of `npm` and `node` to build NeoDash. The application has been tested with npm 8.6 & node v17.4.0.
3030
3131
To run the application in development mode:
3232
- clone this repository.
@@ -139,5 +139,5 @@ To add your visualization to the config, add a new key to the `REPORT_TYPES` dic
139139
If all works, please consider contributing your code to this repository.
140140

141141
## Questions / Suggestions
142-
If you have any questions about NeoDash, please reach out. For feature requests, consider opening an issue(link) on GitHub.
142+
If you have any questions about NeoDash, please reach out. For feature requests, consider opening an issue on GitHub.
143143

package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"name": "neodash",
3-
"version": "2.0.13",
3+
"version": "2.0.14",
4+
"homepage": "",
45
"description": "NeoDash - Neo4j Dashboard Builder",
56
"neo4jDesktop": {
67
"apiVersion": "^1.2.0"
@@ -47,7 +48,7 @@
4748
"cypher-codemirror": "github:nielsdejong/cypher-editor#c0eff97fc97f22355e60b57fb6f8dc26b16f9a5f",
4849
"d3-scale-chromatic": "^3.0.0",
4950
"leaflet": "^1.7.1",
50-
"material-ui-color-picker": "github:nielsdejong/material-ui-color-picker#fd4766cc4e8e38966417fbdbf62ebe628dd699ec",
51+
"material-ui-color-picker": "github:nielsdejong/material-ui-color-picker#c1bae552c1daf81952bf0478d7f71c1a416527d3",
5152
"neo4j-client-sso": "^1.2.2",
5253
"react": "^17.0.2",
5354
"react-cool-dimensions": "^2.0.7",

public/config.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@
77
"standalonePort": "7687",
88
"standaloneDatabase": "neo4j",
99
"standaloneDashboardName": "My Dashboard",
10-
"standaloneDashboardDatabase": "dashboards"
10+
"standaloneDashboardDatabase": "dashboards",
11+
"standaloneDashboardURL": ""
1112
}

public/style.css

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@
7676
.MuiTablePagination-root{
7777
margin-top: -10px;
7878
} */
79+
.MuiDataGrid-footerContainer {
80+
border-top: none !important;
81+
}
7982
.chrome-picker {
8083
margin-top: -285px;
8184
margin-left: 10px;

release-notes.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,22 @@
1+
## NeoDash 2.0.14
2+
Report features:
3+
- Added optional "Download as CSV" button to table reports.
4+
- Dashboard parameters can now be used in iFrames/Graph drilldown links, and they are automatically replaced when parameters get updated.
5+
- Updating a dashboard parameter now only refreshes the reports that use the parameter.
6+
7+
Standalone mode:
8+
- Enabled deploying standalone dashboards with a direct URL to the dashboard.
9+
- Added functionality to deep link into a NeoDash dashboard with dashboard parameters (use ?neodash_variable_name=value in the URL).
10+
11+
12+
Miscellaneous Bug fixes and improvements:
13+
- Resolved crash caused by invalid geospatial properties in a Map visualization.
14+
- Saving a dashboard now lets users override an existing dashboard with the same name (enabled by default).
15+
- Increased the default row limits for line/bar/pie charts to 250. Added option to override the row limiter in the dashboard settings.
16+
- Updated project README file to refer to the correct port number on Docker deployments.
17+
- Enabled a configurable timeout for parameter selection reports, both a timeout for the suggestion retrieval and a timeout for updating the parameters.
18+
- Fixed dependency issues when installing the application on Windows systems. Bumped suggested npm version to 8.6.
19+
120
## NeoDash 2.0.13
221
This is a bug fix/minor usability update.
322

scripts/docker-build-run-unix.bash

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,12 @@ standaloneDatabase='neo4j'
1414
standaloneDashboardName='My Dashboard'
1515
# If `standalone=true`, the database name that the "to be loaded" dashboard is stored in.
1616
standaloneDashboardDatabase='neo4j'
17+
# If `standalone=true`, set this variable to load a dashboard from a URL instead of from a database.
18+
standaloneDashboardURL=''
1719

1820
# SSO settings. Experimental.
1921
ssoEnabled=false
2022
ssoDiscoveryUrl='https://example.com'
2123

22-
docker build --build-arg standalone=$standalone --build-arg ssoEnabled=$ssoEnabled --build-arg ssoDiscoveryUrl=$ssoDiscoveryUrl --build-arg standaloneProtocol=$standaloneProtocol --build-arg standaloneHost=$standaloneHost --build-arg standalonePort=$standalonePort --build-arg standaloneDatabase=$standaloneDatabase --build-arg standaloneDashboardName="${standaloneDashboardName}" --build-arg standaloneDashboardDatabase=$standaloneDashboardDatabase -t neodash .
24+
docker build --no-cache --build-arg standalone=$standalone --build-arg ssoEnabled=$ssoEnabled --build-arg ssoDiscoveryUrl=$ssoDiscoveryUrl --build-arg standaloneProtocol=$standaloneProtocol --build-arg standaloneHost=$standaloneHost --build-arg standalonePort=$standalonePort --build-arg standaloneDatabase=$standaloneDatabase --build-arg standaloneDashboardName="${standaloneDashboardName}" --build-arg standaloneDashboardDatabase=$standaloneDashboardDatabase --build-arg standaloneDashboardURL="${standaloneDashboardURL}" -t neodash .
2325
docker run -it --rm -p $port:5005 neodash

scripts/docker-build-run-windows.bash

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,12 @@ standaloneDatabase='neo4j'
1414
standaloneDashboardName='My Dashboard'
1515
# If `standalone=true`, the database name that the "to be loaded" dashboard is stored in.
1616
standaloneDashboardDatabase='neo4j'
17+
# If `standalone=true`, set this variable to load a dashboard from a URL instead of from a database.
18+
standaloneDashboardURL=''
1719

1820
# SSO settings. Experimental.
1921
ssoEnabled=false
2022
ssoDiscoveryUrl='https://example.com'
2123

22-
winpty docker build --build-arg standalone=$standalone --build-arg ssoEnabled=$ssoEnabled --build-arg ssoDiscoveryUrl=$ssoDiscoveryUrl --build-arg standaloneProtocol=$standaloneProtocol --build-arg standaloneHost=$standaloneHost --build-arg standalonePort=$standalonePort --build-arg standaloneDatabase=$standaloneDatabase --build-arg standaloneDashboardName="${standaloneDashboardName}" --build-arg standaloneDashboardDatabase=$standaloneDashboardDatabase -t neodash .
24+
winpty docker build --build-arg standalone=$standalone --build-arg ssoEnabled=$ssoEnabled --build-arg ssoDiscoveryUrl=$ssoDiscoveryUrl --build-arg standaloneProtocol=$standaloneProtocol --build-arg standaloneHost=$standaloneHost --build-arg standalonePort=$standalonePort --build-arg standaloneDatabase=$standaloneDatabase --build-arg standaloneDashboardName="${standaloneDashboardName}" --build-arg standaloneDashboardDatabase=$standaloneDashboardDatabase --build-arg standaloneDashboardURL="${standaloneDashboardURL}" -t neodash .
2325
winpty docker run -it --rm -p $port:5005 neodash

scripts/push-docker-image.bash

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
docker build --no-cache --label "version=2.0.13" . -t neodash
2-
docker image tag neodash nielsdejong/neodash:2.0.13
1+
docker build --no-cache --label "version=2.0.14" . -t neodash
2+
docker image tag neodash nielsdejong/neodash:2.0.14
33
docker image tag neodash nielsdejong/neodash:latest
4-
docker push nielsdejong/neodash:2.0.13
4+
docker push nielsdejong/neodash:2.0.14
55
docker push nielsdejong/neodash:latest
66

src/application/ApplicationActions.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,9 @@ export const setShareDetailsFromUrl = (type: string, id: string, standalone: boo
8383
});
8484

8585
export const SET_STANDALONE_ENABLED = 'APPLICATION/SET_STANDALONE_ENABLED';
86-
export const setStandaloneEnabled = (standalone: boolean, standaloneProtocol: string, standaloneHost: string, standalonePort: string, standaloneDatabase: string, standaloneDashboardName: string, standaloneDashboardDatabase: string ) => ({
86+
export const setStandaloneEnabled = (standalone: boolean, standaloneProtocol: string, standaloneHost: string, standalonePort: string, standaloneDatabase: string, standaloneDashboardName: string, standaloneDashboardDatabase: string, standaloneDashboardURL: string ) => ({
8787
type: SET_STANDALONE_ENABLED,
88-
payload: { standalone, standaloneProtocol, standaloneHost, standalonePort, standaloneDatabase, standaloneDashboardName, standaloneDashboardDatabase },
88+
payload: { standalone, standaloneProtocol, standaloneHost, standalonePort, standaloneDatabase, standaloneDashboardName, standaloneDashboardDatabase, standaloneDashboardURL },
8989
});
9090

9191
export const SET_STANDALONE_MODE = 'APPLICATION/SET_STANDALONE_MODE';
@@ -112,9 +112,14 @@ export const setWaitForSSO = (wait: boolean ) => ({
112112
payload: { wait },
113113
});
114114

115-
116115
export const SET_DASHBOARD_TO_LOAD_AFTER_CONNECTING = 'APPLICATION/SET_DASHBOARD_TO_LOAD_AFTER_CONNECTING';
117116
export const setDashboardToLoadAfterConnecting = (id: any) => ({
118117
type: SET_DASHBOARD_TO_LOAD_AFTER_CONNECTING,
119118
payload: { id },
120119
});
120+
121+
export const SET_PARAMETERS_TO_LOAD_AFTER_CONNECTING = 'APPLICATION/SET_PARAMETERS_TO_LOAD_AFTER_CONNECTING';
122+
export const setParametersToLoadAfterConnecting = (parameters: any) => ({
123+
type: SET_PARAMETERS_TO_LOAD_AFTER_CONNECTING,
124+
payload: { parameters },
125+
});

0 commit comments

Comments
 (0)