Addepar / Addepar/ember-table

Performant occlusion of columns (module not found when extending `ember-tbody`)

Open
#962 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
1.7k
Forks
351
Avg merge
1d 22h
Merged PRs (30d)
1

Description

I have a table with a lot more columns than rows (the columns can be a long scroll of dates, easily more than hundred):

Scoreboard April 2 April 3 April 4 April 5 April 6 April 7 April 8 April 9 April 10 April 11 April 12 April 13
Person A 9 8 6 6 5 10 78 13 8 83 7 9
Person B 8 2 9 0 8 72 72 9 9 0 0 5

Ember table struggles with the performance here, and I guess that is because it is not built for horizontal occlusion.

Over at vertical-collection there is a horizontal-collection PR which I was tempted to try out by extending ember-tbody. However, when trying to extend ember-tbody, I get the following error on import:

// ember-tbody-horizontal.js
import EmberTbody from 'ember-table/components/ember-tbody/component';
export default class EmberTbodyHorizontal extends EmberTbody {}
-Cannot find module 'ember-table/components/ember-tbody/component' or its corresponding type declarations.

I was planning to extend ember-tbody in the following way:

// ember-tbody-horizontal.hbs
-{{#vertical-collection
+{{#horzontal-collection
...

As I understand from @pzuraq's comment on #612, extending a component is an anti-pattern in the first place – are there any other composable way to try out horizontal collection for performant occlusion of columns?

Thanks!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the ember-tbody extension import shown in the issue and the linked horizontal-collection PR in vertical-collection. Read the discussion referenced from #612 about component extension, then determine whether a composable approach can support horizontal occlusion for wide tables. Done means a documented, viable direction for trying horizontal collection without relying on the failing extension.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.