Skip to content

fix: Dashboard crashes when adding Parse Pointer JSON to array field in data browser#3125

Merged
mtrezza merged 2 commits intoparse-community:alphafrom
mtrezza:fix/pointer-array
Jan 17, 2026
Merged

fix: Dashboard crashes when adding Parse Pointer JSON to array field in data browser#3125
mtrezza merged 2 commits intoparse-community:alphafrom
mtrezza:fix/pointer-array

Conversation

@mtrezza
Copy link
Copy Markdown
Member

@mtrezza mtrezza commented Jan 17, 2026

New Pull Request Checklist

Issue Description

Closes: #3079

Summary by CodeRabbit

  • Refactor

    • Restructured array item rendering to display as an organized list with improved layout management.
  • Style

    • Enhanced scrollbar styling for array lists with custom appearance and improved overflow handling.
    • Updated list item spacing and flex behavior for better visual alignment.

✏️ Tip: You can customize this high-level summary in your review settings.

@parse-github-assistant
Copy link
Copy Markdown

parse-github-assistant Bot commented Jan 17, 2026

🚀 Thanks for opening this pull request! We appreciate your effort in improving the project. Please let us know once your pull request is ready for review.

@parseplatformorg
Copy link
Copy Markdown
Contributor

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Jan 17, 2026

📝 Walkthrough

Walkthrough

The changes modify how array fields are displayed in the BrowserCell component. Arrays are now rendered with index-based keys in a <ul> element styled with a new .pointerList CSS class. The copyable representation is changed from JSX to JSON.stringify to avoid infinite render loops. Styling transitions from .hasMore to .pointerList with improved scrollbar behavior.

Changes

Cohort / File(s) Summary
Array rendering and styling
src/components/BrowserCell/BrowserCell.react.js, src/components/BrowserCell/BrowserCell.scss
Updated array display to use index-based keys instead of value-based keys and render items in a <ul> with .pointerList styling. Changed copyableValue from JSX to JSON.stringify() to prevent infinite render loops. Removed hasMore class logic for arrays. Replaced .hasMore CSS rules with new .pointerList block featuring flex column layout, custom WebKit scrollbar styling, and adjusted item spacing.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: fixing a dashboard crash when adding Parse Pointer JSON to array fields in the data browser.
Description check ✅ Passed The PR description includes the required checklist items and references the linked issue (#3079), but lacks details on approach, affected components, and testing considerations.
Linked Issues check ✅ Passed The code changes address the core issue by modifying array handling in BrowserCell to prevent crashes: using JSON.stringify for copyableValue instead of JSX avoids infinite render loops, and restructuring the list rendering with proper styling prevents the crash reported in #3079.
Out of Scope Changes check ✅ Passed All changes are scoped to the BrowserCell component's array handling and associated styles, directly addressing the crash issue in #3079 without introducing unrelated modifications.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mtrezza mtrezza changed the title fix: Dashboard crashes when adding pointer to array field fix: Dashboard crashes when adding pointer to array field in data browser Jan 17, 2026
@mtrezza mtrezza changed the title fix: Dashboard crashes when adding pointer to array field in data browser fix: Dashboard crashes when adding Parse Pointer object to array field in data browser Jan 17, 2026
@mtrezza mtrezza changed the title fix: Dashboard crashes when adding Parse Pointer object to array field in data browser fix: Dashboard crashes when adding Parse Pointer JSON to array field in data browser Jan 17, 2026
@mtrezza mtrezza merged commit 70bf081 into parse-community:alpha Jan 17, 2026
12 checks passed
@mtrezza mtrezza deleted the fix/pointer-array branch January 17, 2026 20:10
parseplatformorg pushed a commit that referenced this pull request Jan 17, 2026
# [8.3.0-alpha.8](8.3.0-alpha.7...8.3.0-alpha.8) (2026-01-17)

### Bug Fixes

* Dashboard crashes when adding Parse Pointer JSON to array field in data browser ([#3125](#3125)) ([70bf081](70bf081))
@parseplatformorg
Copy link
Copy Markdown
Contributor

🎉 This change has been released in version 8.3.0-alpha.8

@parseplatformorg parseplatformorg added the state:released-alpha Released as alpha version label Jan 17, 2026
parseplatformorg pushed a commit that referenced this pull request Feb 5, 2026
# [8.3.0](8.2.0...8.3.0) (2026-02-05)

### Bug Fixes

* Canvas graph element does not apply data filter option ([#3128](#3128)) ([00ff1aa](00ff1aa))
* Canvas is not expandable or scrollable beyond current view size ([#3140](#3140)) ([cb73122](cb73122))
* Cloud Config parameter modal cannot scroll when content scales beyond visible area ([#3124](#3124)) ([bb6de31](bb6de31))
* Context menu of header cell in info panel does not group related records by class name ([#3122](#3122)) ([230c1e2](230c1e2))
* Context menu sub-menu in data browser vertically misaligned when scrolling in parent menu ([#3120](#3120)) ([2acaa27](2acaa27))
* Dashboard crashes when adding Parse Pointer JSON to array field in data browser ([#3125](#3125)) ([70bf081](70bf081))
* Data browser graph requires value field even when calculated value is defined ([#3127](#3127)) ([53e4f2b](53e4f2b))
* Graph in canvas ignores date filter constraints ([#3137](#3137)) ([6d8b8e6](6d8b8e6))
* Group-by not using custom aggregation type for single-series graph ([#3159](#3159)) ([b8e8891](b8e8891))
* Incorrect percentage and average calculation for calculated values in graphs ([#3152](#3152)) ([14b4d48](14b4d48))
* Info panel auto-scrolling not pausing during UI interaction like text selection or context menu display ([#3165](#3165)) ([bfe4e8a](bfe4e8a))
* Name of calculated value in data browser graph allows leading and trailing spaces ([#3132](#3132)) ([9493b18](9493b18))
* Optimize data browser cell context menu grouping and readability ([#3141](#3141)) ([5c711e1](5c711e1))
* Security upgrade react-router and react-router-dom ([#3107](#3107)) ([b76b9d1](b76b9d1))
* Setting a keyboard shortcut to its default value creates an unnecessary dashboard config storage entry ([#3173](#3173)) ([4949053](4949053))

### Features

* Add auto-scrolling for info panels ([#3149](#3149)) ([3cd8197](3cd8197))
* Add canvas tree to sidebar instead of loading dialog and favorite functionality ([#3146](#3146)) ([e58dc82](e58dc82))
* Add cloning of element in canvas ([#3144](#3144)) ([dec06ad](dec06ad))
* Add context menu in data browser to add cell content or selected text to Cloud Config parameter ([#3123](#3123)) ([9bc5197](9bc5197))
* Add context menu in data browser to get related records from String and Number fields ([#3118](#3118)) ([824bebd](824bebd))
* Add context menu item to get related records for selected text in data browser cell ([#3142](#3142)) ([33d3595](33d3595))
* Add custom dashboard canvas with graphs and data tables ([#3126](#3126)) ([d45c27b](d45c27b))
* Add customizable styles for line and bar series in data browser graph ([#3131](#3131)) ([501dd4b](501dd4b))
* Add customizable Y-axis titles for data browser graphs ([#3130](#3130)) ([2946e64](2946e64))
* Add dialog to execute Cloud Job with parameters ([#3158](#3158)) ([da419e0](da419e0))
* Add expanded view for canvas elements graph, table, view ([#3156](#3156)) ([0ffd767](0ffd767))
* Add field `objectId` to get related records context menu in data browser ([#3161](#3161)) ([2847ccf](2847ccf))
* Add formula-based calculated value to data browser graph ([#3129](#3129)) ([7c5d1b3](7c5d1b3))
* Add keyboard shortcut for executing script on selected rows in data browser ([#3171](#3171)) ([75389ad](75389ad))
* Add more customization options for graphs in canvas ([#3134](#3134)) ([ddbd666](ddbd666))
* Add non-alphanumeric character detection in Cloud Config parameters ([#3143](#3143)) ([1594ec8](1594ec8))
* Add quick-remove button to array parameter in Cloud Config ([#3121](#3121)) ([b632074](b632074))
* Add support for server side storage of Cloud Config parameter history ([#3169](#3169)) ([964e540](964e540))
* Allow adding View elements to canvas ([#3133](#3133)) ([2f2ae9a](2f2ae9a))
* Allow to favorite canvas for quick-access via sidebar menu ([#3135](#3135)) ([1e3a3c7](1e3a3c7))
* Allow to pause auto-scroll of info panel by holding the Option key ([#3160](#3160)) ([db38f14](db38f14))
* Allow to use ESC key to cancel, Cmd + Enter key to submit, Tab key to navigate a modal dialog ([#3172](#3172)) ([debdc09](debdc09))
* Detect and warn about unprintable characters in Cloud Config parameter values ([#3119](#3119)) ([26c909c](26c909c))
* Improve usability and layout of canvas and elements ([#3148](#3148)) ([cd654dc](cd654dc))
* Optimize appearance of graph tick labels on x-axis for date values ([#3147](#3147)) ([a9edcaf](a9edcaf))
* Optimize canvas menu organization ([#3145](#3145)) ([1558826](1558826))
* Replace graph fields with graph series for more customization ([#3157](#3157)) ([51feba4](51feba4))
* Various improvements for auto-scrolling info panel ([#3151](#3151)) ([423d83a](423d83a))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

state:released-alpha Released as alpha version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dashboard get crashed when click on array of pointer field

2 participants