-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Row Grouping & Aggregation #1
Comments
I'm vetting table components for work and this is one of our key requirements. I like what you have going, so let me review the source over the weekend to assess the scope. If you could recommend where to look first, that would help a lot. Thanks. |
I'll take a look in the morning myself. We can chat more on the slack org
if you want.
…On Wed, Dec 7, 2016 at 10:35 PM Lukas Welinder ***@***.***> wrote:
I'm vetting table components for work and this is one of our key
requirements. I like what you have going, so let me review the source over
the weekend to assess the scope.
If you could recommend where to look first, that would help a lot. Thanks.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#1 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AFUmCfMUKNz5sTUj-cODe55_r2y5YYyUks5rF5cHgaJpZM4KfII0>
.
|
Adding row grouping and aggregation will likely need several additions and edits throughout the entire core. These are some of the requirements/ideas I have in mind out of the gate:
Thoughts? |
@tannerlinsley Sorry for the delay, been quite busy. Awesome list, thanks for taking the time to put that together. I think the infinite nesting makes it much more challenging to implement, but its usefulness outweighs that. The operation order (grouping then sorting) is a good idea, especially for performance on massive lists. Do you imagine the sorting controls on the group or globally on the table head?
Not sure I follow what you mean by this. Do you mean that pagination of collapsed groups counts rows and not groups? ie: 3 groups w/ 30 items, 10/page would show a single group per page? I do see the challenge here thought...
By actual rows do you mean
I think this is a great idea. Also, regarding this and the above snippet, should there be a way to disabled or prevent internal state (make it a fully controlled component)? This and next week I will be diving into working with the library; our initial implementation doesn't require anything fancy, so it'll give me a chance to get a feel for when you already have in place. I'll circle back early January with more detailed thoughts and feedback. |
This is going to become a higher priority for me very soon. I plan on hopefully having support for this out by the end of February. I think the best option for now is to assume a like-schema for sub-rows and implement what we have discussed in previous comments to achieve this. I'll comment again when I begin to work on this if anyone is interested in collaborating on the effort. :) |
Just released 4.0.0 which was a big overhaul of the display logic and styling. Everything is flexbox now, which should lay a lot of the groundwork for what we're talking about here. Along with those styling upgrades, a new This is merely a simple proof of concept of how we could implement pivoting and row-grouping in a serious manner. But we also get another win here. Let me explain: If you're data already contains aggregated rows and drill through data, you can easily pass nested Tables without having to do any aggregation at all. You could even utilize subComponents for charting, large-format meta-data or other types of drill-through. I'll be working on the actual pivoting and grouping logic in the weeks to come. |
Implemented with 8fa7975! Huzzah! |
Congrats on the release @tannerlinsley, great job on the implementation. Wish I could have lended a hand; things have just been a little too busy lately 😬 |
Thanks! I'm sure they're is much more to polish but it works! Let me know
what you think?
…On Fri, Jan 20, 2017 at 11:27 AM Lukas Welinder ***@***.***> wrote:
Congrats on the release @tannerlinsley <https://github.com/tannerlinsley>,
great job on the implementation.
Wish I could have lended a hand; things have just been a little too busy
lately 😬
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#1 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AFUmCcYO1Dtj3oYLMzLZGsVqaHFdNET-ks5rUPyEgaJpZM4KfII0>
.
|
Update to 6.7.4 from original
…Better type safety, allows reactive values into cell content, re-render when cell context changes, allow to pass signal inputs into custom components (#5856) * feat: flex render granular updates * updates * cleanup * cleanup * cleanup * fix test * angular add explicit version of typescript * Fix typescript versions * add some testing for flex render in table * fix test infra * refactor flex render * update lock * fix tests, cleanup code * fix tests, cleanup code * flex render signal content support * flex render signal content support * improve view flags, handle state update in zoneless * improve view flags, handle state update in zoneless * fix * ci: apply automated fixes * clean docs test fix doc add flexRenderComponent util * test cases * fix: enable computed rowModels * fix test for rowModel * assures that `updateProps` update inputs only for Component reference type * Merge pull request #1 from riccardoperra/feat/angular-flex-render-support-output-binding add support for angular outputs in flex-render-component --------- Co-authored-by: Lachlan Collins <[email protected]> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* feat(angular-table): Refactor Flex render implementation - Zoneless, Better type safety, allows reactive values into cell content, re-render when cell context changes, allow to pass signal inputs into custom components (#5856) * feat: flex render granular updates * updates * cleanup * cleanup * cleanup * fix test * angular add explicit version of typescript * Fix typescript versions * add some testing for flex render in table * fix test infra * refactor flex render * update lock * fix tests, cleanup code * fix tests, cleanup code * flex render signal content support * flex render signal content support * improve view flags, handle state update in zoneless * improve view flags, handle state update in zoneless * fix * ci: apply automated fixes * clean docs test fix doc add flexRenderComponent util * test cases * fix: enable computed rowModels * fix test for rowModel * assures that `updateProps` update inputs only for Component reference type * Merge pull request #1 from riccardoperra/feat/angular-flex-render-support-output-binding add support for angular outputs in flex-render-component --------- Co-authored-by: Lachlan Collins <[email protected]> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * release: v8.21.0 * docs(angular): add editable, row-dnd and performant column resizing example (#5881) * add editable cell example * add editable cell example * row dnd exmaple * revert basic * ci: apply automated fixes * column resizing performant example * fix * fix budgets * ci: apply automated fixes * typo --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * docs(angular): add missing faker-js deps (#5883) * fix(lit-table): dynamic data updates in the Lit Table Adapter (#5884) * this fixes an issue I discussed in discord where with the lit table adapter, updating a data array did not get reflected by the table. It is a one-line change to the TableController, and a new example that demonstrates the difference. * Update packages/lit-table/src/index.ts per suggestion from @kadoshms Co-authored-by: Mor Kadosh <[email protected]> --------- Co-authored-by: Luke Schierer <[email protected]> Co-authored-by: Mor Kadosh <[email protected]> * docs: add experimental virtualization example (#5895) * docs: add experimental virtualization example * work on experimental virtualized column examples --------- Co-authored-by: Kevin Van Cott <[email protected]> * release: v8.21.1 * docs: example name * docs(angular): add expanding and sub components examples (#5898) * docs(angular): add expanding example * docs(angular): add sub components example * docs(angular): fix config.json * fix conflicts in lit package * remove angular package non-fesm export * since angular 19, ng-packgr only bundle a `fesm2022` export * docs: exp virtual - remeasure when table state changes * docs: virtualizer tbody from onchange * update all angular examples * fix conflicts in examples/react * ci: apply automated fixes * fix tests * ci: apply automated fixes * fix tests * ci: apply automated fixes * angular: update vite config to support vitest workspaces * docs(angular): fix examples * ci: apply automated fixes --------- Co-authored-by: Lachlan Collins <[email protected]> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Tanner Linsley <[email protected]> Co-authored-by: Luke Schierer <[email protected]> Co-authored-by: Luke Schierer <[email protected]> Co-authored-by: Mor Kadosh <[email protected]> Co-authored-by: Kevin Van Cott <[email protected]> Co-authored-by: Kevin Van Cott <[email protected]>
* feat(angular-table): Refactor Flex render implementation - Zoneless, Better type safety, allows reactive values into cell content, re-render when cell context changes, allow to pass signal inputs into custom components (#5856) * feat: flex render granular updates * updates * cleanup * cleanup * cleanup * fix test * angular add explicit version of typescript * Fix typescript versions * add some testing for flex render in table * fix test infra * refactor flex render * update lock * fix tests, cleanup code * fix tests, cleanup code * flex render signal content support * flex render signal content support * improve view flags, handle state update in zoneless * improve view flags, handle state update in zoneless * fix * ci: apply automated fixes * clean docs test fix doc add flexRenderComponent util * test cases * fix: enable computed rowModels * fix test for rowModel * assures that `updateProps` update inputs only for Component reference type * Merge pull request #1 from riccardoperra/feat/angular-flex-render-support-output-binding add support for angular outputs in flex-render-component --------- Co-authored-by: Lachlan Collins <[email protected]> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * release: v8.21.0 * docs(angular): add editable, row-dnd and performant column resizing example (#5881) * add editable cell example * add editable cell example * row dnd exmaple * revert basic * ci: apply automated fixes * column resizing performant example * fix * fix budgets * ci: apply automated fixes * typo --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * docs(angular): add missing faker-js deps (#5883) * fix(lit-table): dynamic data updates in the Lit Table Adapter (#5884) * this fixes an issue I discussed in discord where with the lit table adapter, updating a data array did not get reflected by the table. It is a one-line change to the TableController, and a new example that demonstrates the difference. * Update packages/lit-table/src/index.ts per suggestion from @kadoshms Co-authored-by: Mor Kadosh <[email protected]> --------- Co-authored-by: Luke Schierer <[email protected]> Co-authored-by: Mor Kadosh <[email protected]> * docs: add experimental virtualization example (#5895) * docs: add experimental virtualization example * work on experimental virtualized column examples --------- Co-authored-by: Kevin Van Cott <[email protected]> * release: v8.21.1 * docs: example name * docs(angular): add expanding and sub components examples (#5898) * docs(angular): add expanding example * docs(angular): add sub components example * docs(angular): fix config.json * fix conflicts in lit package * remove angular package non-fesm export * since angular 19, ng-packgr only bundle a `fesm2022` export * docs: exp virtual - remeasure when table state changes * docs: virtualizer tbody from onchange * update all angular examples * fix conflicts in examples/react * ci: apply automated fixes * fix tests * ci: apply automated fixes * fix tests * ci: apply automated fixes * angular: update vite config to support vitest workspaces * init shadcn example --------- Co-authored-by: Riccardo Perra <[email protected]> Co-authored-by: Lachlan Collins <[email protected]> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Tanner Linsley <[email protected]> Co-authored-by: Riccardo Perra <[email protected]> Co-authored-by: Luke Schierer <[email protected]> Co-authored-by: Luke Schierer <[email protected]> Co-authored-by: Mor Kadosh <[email protected]> Co-authored-by: Kevin Van Cott <[email protected]> Co-authored-by: Kevin Van Cott <[email protected]>
Would love to implement this, and honestly wouldn't be too difficult. Any help here would be appreciated as well. This would be a great intermediate PR for anyone looking to contribute. Let's further discuss some of the requirements of the feature here until we have a solid grasp of the feature.
The text was updated successfully, but these errors were encountered: