Hello,
I am working in Svelte-kit and trying to implement a table as part of my interface. The table is used to show a list of options and can be updated both programmatically and by the user directly changing things. In my endeavors I found a couple of issues which I would like to list here, some as ideas and others as bug reports.
First of all, when I first saw that you can pass the data as an attribute to the active-table component, I really hoped that this would work reactively in the spirit of Svelte! So I hoped that by doing:
<active-table data={mydata}/>
This would update the table whenever my data was programmatically updated, and update my data whenever the table was directly edited by the user. I understand that this might be too hard to do, but I will leave it here as an idea, as it would be an amazing feature to have. The closest I got, was to update the table, by hiding it and showing it again after myData
was updated. The problem with this, and this is what I consider the first bug, is that if you supply the data like this, the on****Update events do not seem to work at all!
So then I switched to using updateData() to update my data, and then the update events work fine, but I got another bug, which is that the displayAddNewColumn="false"
is no longer respected, and I always get the button to add new rows! Then I switched to updateStructure() which has much smoother update, but again the displayAddNewColumn="false"
is not respected. It seems that this only works if the data is passed as a property.
Finally, one thing that has been bugging me a lot, is the cell styling, and specifically the cell height! I wanted to remove the default padding, so that I can fit more cells in my screen. I did this by adding cellStyle='{"padding": "1px"}'
and the padding is indeed respected. But the height is not adjusted to match the new padding, so the cell content just moves to the top of the cell. I tried setting height=auto or even a fixed height=20px in different places (cellStyle, rootCell, row, table etc.) but nothing seems to work. Is there a way to make this work?
Thanks and sorry for bundling so many issues in one request, but I thought it might be better than spamming with different requests, especially as most issues are connected.
Pay now to fund the work behind this issue.
Get updates on progress being made.
Maintainer is rewarded once the issue is completed.
You're funding impactful open source efforts
You want to contribute to this effort
You want to get funding like this too