Closed jpdriver closed 6 years ago
Definitely looking for expandable rows which I believe is the same things as Nested Grids. Like this example: http://allenfang.github.io/react-bootstrap-table/example.html#expand "Custom Expand Row Indicator"
hey @smorin -- so that's actually two features
the first is the functional ability to expand a row. we refer to that as a tree view, and it's currently being implemented in this PR https://github.com/adazzle/react-data-grid/pull/664
the second (which i believe is beyond the scope of tree view in it's current form) is the nested Grids
@jpdriver I guess I am not understanding clearly what the difference between functionality in a tree view would be vs a nested grid. For example is a tree view just extra canvas space that opens under a row, while a nested grid is extra rows that get expanded?
So by Tree View we mean something like this -- where you can expand one or more child rows that have the same structure as the parent grid.
Nested Grids on the other hand involve rendering a whole separate Grid, essentially instead of a Row on a parent Grid.
That Nested Grid could have it's own structure, columns, rows, etc.
Make sense?
Much clearer now, makes sense.
Would it make sense then as a step on to allow basically a arbitrary "area"/"canvas" to be opened up like that so that any component could be put in the expanded space? One implementation of that would be a "Nested Grid".
Hi everyone, the version I am using now cannot disable the "drag and drop" function. It seems when I made the cell editable, it will automatically trigger the "drag and drop to copy" function. I am trying to read the github source code to modify the function myself. I wish in the next version it will have a better documentation of every single element, from Cell, Editor to Canvas, Viewport. Besides, the current version uses a lot of of "mixin", not sure if they will be replaced by the 'composition pattern', or 'presentational and container ' components, in the future.
Is there a slack channel for this project? I saw a reference to that in the contributing page.
@hkjpotato -- better documentation is something several people are asking for, and something that i'm hoping to include as part of the V3 improvements.
@smorin you can join the Slack channel at https://react-data-grid.herokuapp.com/
Feature request: easy way to implement custom cell theme (i.e. background color) according to data value, for example:
While on the topic of next versions... can someone explaining the version numbering for this project? There seems to be a version bump with literally every single commit. Why is that? Should the stuff on the 'releases' section of the project be considered the 'official' release, and the version bumps in the commit history are not actually 'official' releases and people should ignore the versions in the commit history?
hey @mattknoxca -- we follow semver, which dictates that any patch releases to fix bugs should bump the version number. Because of this, we have an automated script that bumps the version number after every merge commit into the master
branch.
As for why GitHub Releases shows a different "latest version", that's because we adopted Lerna -- which lets you split your source code into multiple NPM packages within one repository. We actually have two version numbers. If you look at the package.json
file in the root, it says the version for the repository is 2.0.1. But the latest version of the packages within it is 2.0.33.
So both are official -- but we'll only publish a new Github Release when we need to bump the repository version. Let me know if that all makes sense 😄
One feature I think would be nice, though possibly difficult to implement, and only necessary on the most advanced grids would be virtual columns.
I have grids where the user can include up to 50 different columns, with the first 3 of them locked. Most of those columns are simple render the value from the DB, though others need complex formatting that depends on other values and things. This makes horizontal scrolling laggy in some instances. If there were a way to only render the X columns visible, that would be great!
hey @lord-xeon -- as things are right now, the Grid already has "virtualised columns" in that if a cell is within a column which is outside the currently viewable <Viewport />
bounds, it will render as an <OverflowCell />
.
These are empty divs that have the same dimensions as their fully-rendered counterparts, so they provide a slight performance boost while maintaining Grid structure.
But you still get something rendered for every Column, visible or otherwise.
V3 on the other hand silently unmounts non-visible Rows and Columns components from the DOM.
We needed to adopt that pattern to make the performance as fast as it is now, and that's actually also how I solved a tricky bug whereby the 1,000,000 rows example has never fully worked before because we hit the maximum px height limit for the DOM.
(Go to the example and scroll all the way to the final row. It's not 1,000,000 and the styling is all over the place!)
So don't worry -- it's coming! 😄
@jpdriver We're using this component as part of a production system and looking forward to future releases and improvements!
Great work!
Formula's are crucial IMO- otherwise this really just an excel like table. In saying that0 it's still amazing work.
This one does it nicely- but there is no mobile/touch support. https://github.com/nadbm/react-datasheet
What about an 'Undo' feature? If some values are changed, sort happens, columns re-ordered on the data grid then an undo mechanism would be great to roll-back the changes.
hey @akkie -- i'm not familiar with Footable, but is the idea that you hide certain columns at certain breakpoints? Because if so then the answer is yes!
Yes, this is the idea! They can then be opened with the plus icon at the beginning of the row.
Cool -- that's already included in the draft spec as "Hide Order" for Columns at certain breakpoints
.
You have to set a minimum column width for it to work, but if you try and resize below this V3 will now start removing columns one by one according to an order you specify.
I'm looking for this amazing feature in your Library "File Import & Exports (.json & .csv)", can we have an expected date for this functionality to be implemented?
hey @sjain-mi9 -- there's no expected date, and i won't be able to give you one. V3 will ship when it's ready.
ps -- issue updated with some new V3 teaser screenshots / GIFs
Hey @jpdriver, I'm planning to use react-data-grid soon in a project! I'm new to open-source, but would love to help somehow, mostly in the Functions section. Is there anyone working on those? Could I pick one and try to implement it?
Thanks for the great work!
Hey @jpdriver ,
I was wondering if Copy / Paste Continuous Cell Ranges
has already been implemented or not? I have had a solution to the problem that's running in production shown here https://github.com/adazzle/react-data-grid/issues/293, I said I will be making a PR but didn't get the time to do it, if it's not been implemented yet, I can take it on and submit a PR soon.
hey @leimd -- no that hasn't been implemented yet! if you already have a working solution, i'd love to see it in action 😄
@jpdriver nice! I will let you know when I put up the PR
@jpdriver Hey , I had a hard stop when i was coding data-grid React. to my surprise there is no hide/show columns feature integrated which is very essential for users perspective . Any alternative to achieve this feature in react data-grid , if so pls help me out . I am badly in need of it. Thanks in advance. :-)
Some additional functionality regarding the contextmenu would be really great:
This sounds really conservative but I would like to see the 177 open issues addressed.
hey @supamanda -- first of all, thank you for your continued support by opening many of those issues yourself.
One of the primary aims of these changes is not only to address the majority of open issues right now, but also to provide a more stable and performant base for continued future development.
The motivation behind the changes was driven by metrics like # of issues open for longer than 1 month / 2 months / 3 months, as well as the rate the community opens issues at.
Getting the project core in better shape should help reduce the support cost a lot; and in turn as a community we'll be able to better focus on fewer issues.
I should also note that the list above relates solely to the "New and Noteworthy" features. When the V3 update is ready, the Release Notes will include a full list of Issues addressed.
HTH.
I like this component so far, but run-time customization is difficult to achieve, needing stylesheet and ref to achieve.
One small enhancement would be to allow inline styling and adding classes to the different parts: table, header-row, header-cell, table-body, table-row, table-cell.
Second, allowing custom props to be passed through into the RowRenderer.
RowSpan would be amazing.
@jpdriver in the same vein, would it be possible to have expandable rows which do not have the same structure as their parent row? E.g. if I want to show (say) 6 columns of data, and then expand the row to see a full-length chart (spanning all 6 columns) which plots all 6?
@jpdriver could you please help or suggest me with below features in tree view structure:
Please help me with this features?
re the nested grid suggestion above I agree it would be better if it was just a panel we could put whatever we want into. I'm not sure why it would be better to explicitly make it a grid only, unless I'm missing something.
@DanHarman "Nested Grids" as a feature is only referred to as such because we got a bunch of similar requests for it. In practice, we'd want Cell contents to be as agnostic as possible so you could render a Grid, a Chart, a Sub-row, etc.
Is there currently a way to expand column width to fit the largest cell content? Similar to in Excel by double-clicking on the column boundary.
Copy / Paste Continuous Cell Ranges (finally!!) Copy / Paste Random Cell Sequences I'm looking for this features any update on this @jpdriver
Thanks
is there any feature for limiting the row count or pagination so data we show only limited data at once?
@jpdriver any update on V3? I am eagerly waiting for SSR.......
Hey everyone,
It looks like Adazzle are getting ready to release v3.0.0 -- which is a major version bump required to address breaking changes that were merged in anyway; even after I flagged they would cause script errors directly to one of the core maintainers (see https://github.com/adazzle/react-data-grid/pull/1027).
Subsequently I proposed that we spin this project off as a truly open-source repo outside Adazzle. I would have liked the internal team to support the initiative as they had nothing to lose in doing so, but that plea has apparently fallen on deaf ears.
So TL:DR; the version 3 update about to be released contains none of the above features, and I'll rename this PR to clear up any confusion.
I'm also personally stepping away from this library. There are too many issues, too many bugs, and the internal team ignores any contributions and efforts to help outside of their own.
In my own opinion, that -- coupled with the state this project is in -- makes it unsuitable for use in any production environment.
Based on my time spent working with this project (since the initial public release in 2014) I can only assume the project state and the way it's managed are unlikely to change. I've poured hours of effort into this project and only got sleepless nights to show for it -- so I'm out.
To conclude, the work that was done and the ideas that were explored as part of this issue will never appear as part of this project.
My personal stance is that there is clearly appetite for a proper open-source Grid project with similar functionality to this one, as evidenced by the community and you (if you're still reading) -- so maybe there's something else out there, or a new library we could create to house these features. But this project is not that, and nor will it ever be.
If you choose to keep using it, I wish you the best of luck.
@jpdriver I'm very sorry to hear that is the kind of treatment you got from Adazzle. You have done a tremendous amount of work on this lib, I believe I speak for the whole userbase when I say that you have my sincere thanks for all your efforts.
@jpdriver are you abandoning the idea of setting up a fork? This library is a gem, but it also became useless now that React 16 is out. That would be a shame to let dies because of the lack of openess of the current maintainers.
OK lets get a few things straight. First of all the proposals created in this issue all look like excellent additions to the library. Just because they did not get included in version 3 of the grid does not mean that they are not worthwhile ideas. Furthermore, it does not mean that they will not be considered for development in the future either.
Once again, I will admit some shortcomings on the management of this project in the last year, but that is something that is actively being tackled right now, and we are committed to making this project the best open source data grid for React.
Now to address the above comments. As none of these features are currently high priority for us right now (except for more performant rendering) , it means that for one of them to get released, an external contributor needs to work on them. We never saw a single idea here presented as a pull request. It is clear there is a demand for these features. However, the work that can be seen in the attached screenshots only ever lived on the commenters local machine or on his fork.
As for you being upset with the features not being included in version 3.0, I'm afraid that is not how our release process works. If something introduces a breaking change, then we will bump the major version, just like we did in v3.0 to fix a more pressing issue, which moves us one step closer to being React 16 compatible. I agree that this could be better communicated, and that we can do a better job of managing expectations.
We are sorry @jpdriver that you feel so bitter, but we thank you for all your previous hard work. Best of luck in maintaining your fork, and if you ever feel like contributing again, you are more than welcome to.
Is there a way we can implement copying outside the context of this data grid and paste the text in the data grid cells? Like copy texts from cells in an excel sheet and paste them in the data grid.
Hey everyone,
Bit of background first — I’m JP, one of the original maintainers of React Data Grid.
I’m opening this issue as a place to track and discuss a set of potential new features for the next version of the Grid project.
Below is a list of notable features I personally want to explore for V3; beyond a bunch of bug-fixes and stability improvements.
If you have any additional features / comments / suggestions / can help, please leave a comment below.
⚠️ ☢️
DISCLAIMER: This is not an official announcement of new features. I'm trying to gather feedback / gauge interest on this proposed feature set.
⚠️ ☢️
Core
Columns
Rows
Cells
Editors
Functions
Theming
Tooling