narmi / design_system

⚡ Narmi Design System and UI Library
https://narmi.github.io/design_system
Other
34 stars 6 forks source link

[Table] New Component to replace semantic-ui components #995

Open JohnathanWeisner opened 1 year ago

JohnathanWeisner commented 1 year ago

Short Description

A Table component that handles all the visual pieces for a Table. This will eventually be a requirement to replace Semantic UI.

Requirements

Mockup

TK

Responsibilities

This component should be responsible for the following: TK

This component should NOT be responsible for... TK

Props Signature

<Component
  propA={}
  propB={}
Component.propTypes = {
}
akdetrick commented 1 year ago

Table usage in Narmi product

Lots of things look like tables. Does it mean they should all be handled by the same component? No. This comment is an attempt to audit table-like things in our product to figure out what component(s) NDS should provide for each kind of usage, if at all.

Balance table

It may look like a table in UI, but it's more of a list with a heading and actions on each item.

Screenshot 2023-09-21 at 6 14 49 PM Screenshot 2023-09-21 at 6 15 24 PM Screenshot 2023-09-21 at 6 18 22 PM Screenshot 2023-09-21 at 6 21 59 PM

Transaction table (dashboard)

Static standard table that could be expressed using actual table elements.

Screenshot 2023-09-21 at 6 18 56 PM

Transaction table (account)

Mostly the same as the dashboard transaction table except sorting and filtering controls are above the tabs.

Screenshot 2023-09-21 at 6 27 23 PM

Details list

Not really a table, but shares some similar styling. We should probably name this (with design team buy in) and make it a separate component from any table components.

Screenshot 2023-09-21 at 6 20 56 PM Screenshot 2023-09-21 at 6 28 43 PM Screenshot 2023-09-21 at 6 29 32 PM
akdetrick commented 1 year ago

Notes from design

Some headings may have popover for filtering, other tables have filter outside

Screenshot 2023-09-26 at 4 17 01 PM Screenshot 2023-09-26 at 4 17 30 PM

Responsive table options

  1. Compact rows with wrapping
  2. Use attr() functions to repeat th labels in each stacked row

TODO:

akdetrick commented 4 months ago

DetailsTable is under development, which covers some of these cases.

JohnathanWeisner commented 4 months ago

This blocks us from removing Semantic-UI fully. There is no hard deadline for this to be in, but the sooner we remove Semantic-UI fully the better.

akdetrick commented 4 months ago

Labelled with "Needs Design" because the NDS standard may not match 1:1 with the semantic-ui tables in functionality and/or visual design.

Any Semantic-UI tables we replace should go through a redesign process