Skip to content

Refactor DevRank Grid components to use dedicated classes #9008

@tobiu

Description

@tobiu

The current implementation of the User and Location columns in apps/devrank/view/GridContainer.mjs uses an anti-pattern where the component config function returns a raw vdom object. This leads to component.set({vdom: ...}) calls, which are problematic (stale state, ID loss).

The goal is to refactor these into dedicated component classes (UserCell, LocationCell) that manage their own VDOM updates reactively based on input configs. This will fix the stale rendering issues and align with proper Neo.mjs architectural patterns.

Tasks:

  1. Revert debug logs in src/grid/column/Component.mjs.
  2. Create apps/devrank/view/cell/UserCell.mjs.
  3. Create apps/devrank/view/cell/LocationCell.mjs.
  4. Update apps/devrank/view/GridContainer.mjs to use these new components.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions