Comments (5)
👋 Sorry to revive an old thread, but I'd like to add my vote for setting a fixed height on the table. I think aesthetically option 3 would be best, did you ever get a chance to try it?
I can take a stab at an implementation if no prior work has been done.
Hey there, I've not really done much with this yet. I may get some time in the future but if you're willing to take a crack at it please feel free!
from bubble-table.
Hey there, glad you like it!
A flag for toggling outer borders, but still allowing inner borders. This could allow the user to draw their own border. Currently, toggling border settings seems to apply across the board, including all columns/rows.
First I want to touch on this: this is something I've considered for other reasons, but this has a sneaky pain point for your particular use case. Trying to draw the border outside is actually going to be nearly impossible due to the connection characters at joints between borders, or at least any outside border will not be able to connect to the inside borders. So, technically this might work, but I don't think it would look like what you want it to look like.
An empty row, with no column dividers (and depending on if footer is enabled, the borders would be rounded).
I'm definitely open to thoughts here as I think having a constant fixed height is absolutely a valid feature. The other approach that seems useful is by basically adding empty rows until the desired height is reached. This would have the column bars go down further, but it would make the footer be a fixed height which has appeal compared to making the footer variable height to fill.
So I think we have the following options (forgive my awful drawings):
1) Add empty space in footer
-------------------------
header | header | header |
-------------------------
data | data | data |
data | data | data |
-------------------------
footer
-------------------------
2) Add a second 'footer' for spacing
-------------------------
header | header | header |
-------------------------
data | data | data |
data | data | data |
-------------------------
-------------------------
footer
-------------------------
3) Add empty rows with columns
-------------------------
header | header | header |
-------------------------
data | data | data |
data | data | data |
| | |
| | |
| | |
-------------------------
footer
-------------------------
I think for 1, this has potentially bad effects when the user is specifically trying to make a multiline footer... does it align top or bottom? Maybe this isn't terrible, but 2 and 3 seem more appealing for achieving constant height. Is 2 what you were thinking?
from bubble-table.
First I want to touch on this: this is something I've considered for other reasons, but this has a sneaky pain point for your particular use case. Trying to draw the border outside is actually going to be nearly impossible due to the connection characters at joints between borders, or at least any outside border will not be able to connect to the inside borders. So, technically this might work, but I don't think it would look like what you want it to look like.
Ah, yes, I totally forgot, yeah that won't work.
I actually think 3 would be the most ideal, as long as the highlighted row doesn't let you go below actual rows, and the visible row-based methods don't return empty values.
I have added a temporary (and very hacky... :D) solution that would be like 1, but a bunch of additional logic is necessary and it gets rather complicated when doing those calculations externally. Also have to dynamically change the pagination size depending on the view size as well.
from bubble-table.
I'm slightly wavering between 2 and 3. I'll have to toy with this a bit, I think, and will probably try 3 first.
from bubble-table.
👋 Sorry to revive an old thread, but I'd like to add my vote for setting a fixed height on the table. I think aesthetically option 3 would be best, did you ever get a chance to try it?
I can take a stab at an implementation if no prior work has been done.
from bubble-table.
Related Issues (20)
- Support mouse hover and mouse click event
- Option to Turn Off Page Wrapping HOT 1
- Support independent styling for column data vs column headers HOT 1
- feat: custom filter text HOT 13
- Filter text cursor resets base style such as color
- artifacts on terminal resize HOT 8
- How to find out if filter input is currently active? HOT 2
- align
- How can I format numbers in a sortable column? HOT 3
- Flexible max number of rows based on size of the terminal HOT 8
- Columns seem to ignore lipgloss padding HOT 7
- Filtering doesn't work on non-stringer values
- performance of filtering a large table HOT 13
- redraw after filtering HOT 3
- Deselect all rows programatically
- Row select method docs are misleading
- Test failure: Test3xWithFilterFooter HOT 4
- Dynamically adding rows to table HOT 3
- Private fields and no getters for table.Column HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bubble-table.