keboola / indigo-ui

Indigo UI library, its CSS and React components. Also Styleguide app showing usages of this library.
https://indigo.keboola.com
MIT License
5 stars 0 forks source link

Show More List tuning #203

Closed janmichek closed 2 years ago

janmichek commented 6 years ago

Zatim to tu odkladam, aby to nevysumelo.

Pamatuju si ze kolem toho probehla trocha diskuze https://github.com/keboola/indigo-ui/issues/169

Se soucasnym stavam nejsem uplne OK.

image

ujovlado commented 6 years ago

Ak chces aby to bolo viac blackbox, tak ta komponenta myslim nebude moct prijimat children ako react komponenty ale namiesto toho nejake pole objektov cez props. Cez to pole by potom preiterovala a vyrenderovala to na 2 casti.

Ten inline style tam je preto aby to “simulovalo” ten list tak ako bol v detaile jobu. Ak je to matuce, kludne ho vyhod.

ujovlado commented 6 years ago

Viem si predstavit nieco taketo:

const items = [
  {
     "tableId": "in.c-keboola-ex-email-attachments-413120386.data",
     "seconds": 8
  },
  ...
]

const renderItemComponent = (item) => {
   return (
      <span><a href="">{item.tableId}</a>{item.seconds} seconds</span>
   );
}

a potom:

<ExpandableList items={items} ItemComponent={renderItemComponent} visibleItems="3" />

Pricom by sa to interne postaralo o to aby to vyrenderovalo len 3 polozky a zvysne cez "Read more".

Mozeme sa este spytat @kacurez, co si o tom mysli.

Idealne by ale bolo skusit pripravit nejake POC a tam uvidis, ci ti navrhovana implementacia vyhovuje alebo nie a doladime to.

kacurez commented 6 years ago

tiez ma napadlo tak ako to pise Vlado(ExpandableList). Uz sa nejedna o komponentu ktora rendruje(skryva/zobrazuje) any content ale o komponentu ktora rendruje pole komponent s default visible limitom. Potom je to cistejsie na implemntaciu kde sa vzdy vyrendruje jedno ul s nejakymi li podtym(+ jedno li na "show details"). Keby to malo byt zahrnute pod PanelWithDetails tak z toho imho vznikne grey box :)