parse-community / parse-community/parse-dashboard
Dashboard doesn't load when there is value in non-Date "expiresAt" column
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 3.8k
- Forks
- 1.4k
- PR merge metrics
- No merged PRs in 30d
Description
New Issue Checklist
- I am not disclosing a vulnerability.
- I am not just asking a question.
- I have searched through existing issues.
- I can reproduce the issue with the latest versions of Parse Server and Parse Dashboard.
Issue Description
If a column named "expiresAt" is added to a class with a type other than Date (e.g. String), populating this column with a value will make the dashboard unable to load.
Steps to reproduce
- In any class, create a new column called "expiresAt" with "String" type
- For any object in this class, add a value to the expiresAt column
- Refresh the class or the webpage
Actual Outcome
Dashboard doesn't successfully load. It briefly loads the left panel of classes, then eventually shows a blank/white page.
Expected Outcome
Dashboard successfully loads and displays the class and all the objects in it.
Environment
Dashboard
- Parse Dashboard version:
3.2.1 - Browser (Safari, Chrome, Firefox, Edge, etc.):
Chrome - Browser version:
95.0.4638.69
Server
- Parse Server version:
4.10.4 - Operating system:
Node.js 14 running on 64bit Amazon Linux 2/5.4.7 - Local or remote host (AWS, Azure, Google Cloud, Heroku, Digital Ocean, etc):
AWS
Database
- System (MongoDB or Postgres):
MongoDB - Database version:
5.0.3 - Local or remote host (MongoDB Atlas, mLab, AWS, Azure, Google Cloud, etc):
MongoDB Atlas
Logs
Chrome console shows this error when issue happens:
dashboard.bundle.js:2
Error: Minified React error #31; visit https://reactjs.org/docs/error-decoder.html?invariant=31&args[]=Sun%20Dec%2031%202000%2016%3A00%3A00%20GMT-0800%20(Pacific%20Standard%20Time)&args[]= for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
at So (dashboard.bundle.js:2)
at dashboard.bundle.js:2
at Da (dashboard.bundle.js:2)
at _s (dashboard.bundle.js:2)
at pl (dashboard.bundle.js:2)
at dl (dashboard.bundle.js:2)
at rl (dashboard.bundle.js:2)
at dashboard.bundle.js:2
at t.unstable_runWithPriority (dashboard.bundle.js:2)
at qi (dashboard.bundle.js:2)
dashboard.bundle.js:2
Uncaught (in promise) Error: Minified React error #31; visit https://reactjs.org/docs/error-decoder.html?invariant=31&args[]=Sun%20Dec%2031%202000%2016%3A00%3A00%20GMT-0800%20(Pacific%20Standard%20Time)&args[]= for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
at So (dashboard.bundle.js:2)
at dashboard.bundle.js:2
at Da (dashboard.bundle.js:2)
at _s (dashboard.bundle.js:2)
at pl (dashboard.bundle.js:2)
at dl (dashboard.bundle.js:2)
at rl (dashboard.bundle.js:2)
at dashboard.bundle.js:2
at t.unstable_runWithPriority (dashboard.bundle.js:2)
at qi (dashboard.bundle.js:2)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue by adding a String expiresAt column and value, then run npm run dev to inspect the non-minified React error instead of dashboard.bundle.js. Trace the dashboard rendering path for the expiresAt value and verify that the class and its objects load normally with the non-Date value.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, react
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100