Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

List of Cards #141

Open
4 tasks
jozef-slezak opened this issue Jul 2, 2021 · 0 comments
Open
4 tasks

List of Cards #141

jozef-slezak opened this issue Jul 2, 2021 · 0 comments
Labels
help wanted Extra attention is needed

Comments

@jozef-slezak
Copy link
Contributor

jozef-slezak commented Jul 2, 2021

Goal: generate list of https://material-ui.com/components/cards/ (something like https://material-ui.com/components/grid-list/#grid-list-with-titlebars) using template. Current implementation is able to generate data grid https://example-material-ui.onrender.com/app/generated-customers for e Entity. In certain situation is better to generate list of cards.

Motivation: we use code templates help us to customize codegen without writing a code.

How it works?

What to do?

Template

Inspire by: https://material-ui.com/components/cards/#complex-interaction

Refactoring rules:

  • rename exported component name (e.g. ComponentXY - not just replace string but find exported function)
  • rename row variable to lowercase entity name (using AST - not using string replace)
  • replace all occurences of row like this (try to match row field):
    • replace row.title with a proper entity field (check first if entity contains name, title and if so use it - if not fallback to a first string)
    • replace row.subheader with a proper entity field (check first if entity contains name, title and if so use it - if not fallback to a first date/time/dateTime/timestamp and format it)
    • replace row.description (check description if not fallback to a first string)
imports ...

export ComponentXY = ({data}) => data.map((row) => (
  <Card>
      <CardHeader title={row.title} subheader={row.subheader} />
      ...
  </Card>
))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant