Infoglobo / desafio-back-end

Quer ser integrante de nosso time de Engenharia? Divirta-se com esse projeto!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sugestão de alteração no formato do content

shinneider opened this issue · comments

Olá, venho sugerir algumas alterações.

Atualmente no retorno do item é bastante limitado, não sendo possível referenciar uma matéria externa, definir uma formatação para uma palavra em específico, ou definir comportamento para um seguimento, pois está no seguinte formato:

{  
   "type": "type here",
   "content": "content text here"
}

minha sugestão é transformar o campo content em uma lista de discionário(s) contend os campos data, formatting, attributes e meta este ultimo apenas quando for imagem, e adicionar o campo formatting e attributes na raiz do item, desta forma:

{  
   "type": "type here",
   "content": [{
       "data": "content text here",
       "formatting": ["bold", "color-#FFF or color-white"],
       "attributes": [
          {
              "type": "link"
              "content": "http://"
           },
           {
              "type": "id"
              "content": "content id for 'scroll to' "
           }
        ]
       "meta": ["centered", "100vw"]  # usado apenas para imagens. vw -> viewport width (css attr) 
   }],
  "formatting": ["more", "justify"],   # more -> saiba mais
  "attributes": [] 
}

Gostaria de salientar que os valores nos campos attributes e meta são apenas fictícios para exemplo, devera ser padronizado valores reais para tal formato.

Segue exemplo de converção do 1° paragrafo do exemplo no Readme para este formato

XML:

<div class="foto componente_materia midia-largura-620">
    <img alt="Volkswagen Arteon (Foto: Divulgação)" height="413" id="209451" 
         src="http://s2.glbimg.com/DIgFxpN0aAu99uvuZ3WmSqAUV2E=/620x413/e.glbimg.com/og/ed/f/original/2017/03/06/1_WKIn5xh.jpg" 
         title="Volkswagen Arteon (Foto: Divulgação)" width="620" />
    <label class="foto-legenda">Volkswagen Arteon (Foto: Divulga&ccedil;&atilde;o)</label>
</div>
<p>&nbsp;</p>
<p>
    <strong>A <a href="http://revistaautoesporte.globo.com/carros/volkswagen">Volkswagen</a> revelou hoje (6) o Arteon, cup&ecirc; de quatro portas escolhido para suceder o CC </strong> 
    &ndash; antes chamado Passat CC &ndash; e que ser&aacute; apresentado ao p&uacute;blico durante o Sal&atilde;o de Genebra. 
    <strong>O visual n&atilde;o chega a ser novidade, j&aacute; que &eacute; praticamente o mesmo h&aacute; dois anos</strong>, 
    <a href="http://revistaautoesporte.globo.com/Noticias/noticia/2015/03/volkswagen-sport-coupe-gte-adianta-visual-de-futuros-sedas.html">quando deu as caras no evento su&iacute;&ccedil;o como o prot&oacute;tipo Sport Coup&eacute; GTE Concept</a>.
</p>

JSON

[
  {
    "type": "image",
    "content": [
      {
        "data":"http://s2.glbimg.com/DIgFxpN0aAu99uvuZ3WmSqAUV2E=/620x413/e.glbimg.com/og/ed/f/original/2017/03/06/1_WKIn5xh.jpg",
        "formatting": [],
        "attributes": [
          {
            "type": "legend"
            "content": "Volkswagen Arteon (Foto: Divulgação)"
          },
          {
            "type": "id"
            "content": "209451"
          },
          {
            "type": "width"
            "content": "620"
          },
          {
            "type": "height"
            "content": "413"
          }
        ],
        "meta": ""
      },
      {
        "data": "Volkswagen Arteon (Foto: Divulga&ccedil;&atilde;o)",
        "formatting": ["foto-legenda"],
        "attributes": []
      }
    ],
    "formatting": ["foto", "componente_materia", "midia-largura-620"],
    "attributes": [] 
  }
  {  
    "type": "text",
    "content": [
      {
        "data": "A",
        "formatting": ["bold"],
        "attributes": []
      },
      {
        "data": "Volkswagen",
        "formatting": ["color-blue", "bold"],
        "attributes": [
          {
            "type": "link"
            "content": "http://revistaautoesporte.globo.com/carros/volkswagen"
          }
        ]
      },
      {
        "data": "revelou hoje (6) o Arteon, cup&ecirc; de quatro portas escolhido para suceder o CC",
        "formatting": ["bold"],
        "attributes": []
      },
      {
        "data": "&ndash; antes chamado Passat CC &ndash; e que ser&aacute; apresentado ao p&uacute;blico durante o Sal&atilde;o de Genebra.",
        "formatting": [],
        "attributes": []
      },
      {
        "data": "O visual n&atilde;o chega a ser novidade, j&aacute; que &eacute; praticamente o mesmo h&aacute; dois anos",
        "formatting": ["bold"],
        "attributes": []
      },
      {
        "data": "quando deu as caras no evento su&iacute;&ccedil;o como o prot&oacute;tipo Sport Coup&eacute; GTE Concept",
        "formatting": [],
        "attributes": [
          {
            "type": "link"
            "content": "http://revistaautoesporte.globo.com/Noticias/noticia/2015/03/volkswagen-sport-coupe-gte-adianta-visual-de-futuros-sedas.html"
          }
        ]
      }
    ],
    "formatting": ["justify", "capitalize"],   # more -> saiba mais
    "attributes": [] 
  },
  {

  }
]