export type VitruvioComponentDoc = {
   component: string;
   summary: string;
   status: "draft" | "review" | "ready";
   context: {
      module: string;
      family: string;
      mappedFrom: string[];
      occurrences: {
         total: number;
         paineis: number;
         processos: number;
      };
   };
   sections: {
      purpose: string;
      basicUsage: string;
      properties: string[];
      propertyValues: { [property: string]: string[] };
      propertyValueTypes: { [property: string]: "boolean" | "enum" | "numeric" | "text" | "mixed" };
      events: string[];
      examples: string[];
      notes: string[];
   };
};

const VerticalLayoutDoc: VitruvioComponentDoc = {
   component: "VerticalLayout",
   summary: "Documentacao do componente VerticalLayout mapeada a partir de exemplos reais de XML.",
   status: "draft",
   context: {
      module: "Vitruvio",
      family: "Layout",
      mappedFrom: ["Vitruvio/Paineis", "Vitruvio/Processos"],
      occurrences: { total: 6153, paineis: 3715, processos: 2438 }
   },
   sections: {
      purpose: "Componente de organizacao visual da tela para estruturar conteudo e navegacao.",
      basicUsage: "Usar VerticalLayout no contexto adequado da tela; as propriedades abaixo foram observadas em exemplos reais do projeto.",
      properties: [
         "align",
         "backgroundColor",
         "caption",
         "cssAlign",
         "expandRatio",
         "height",
         "heigth",
         "id",
         "isLayout",
         "margem",
         "margin",
         "spacing",
         "visible",
         "width"
      ],
      propertyValues: {
         "align": ["BOTTOM_CENTER", "BOTTOM_LEFT", "BOTTOM_RIGHT", "MIDDLE_CENTER", "MIDDLE_LEFT", "MIDDLE_RIGHT", "TOP_CENTER", "TOP_LEFT", "TOP_RIGHT"],
         "backgroundColor": ["", "#AEAEAE", "#B2B2FF", "#BFBFBF", "#c9fff6", "#cedef0", "#D2B48C", "#D8BFD8", "#DCD9D9", "#DCDCDC", "#DFE9F5", "#dfffe4", "#e3e3e3", "#e9ebfe", "#ef940c", "__TRUNCADO__"],
         "caption": ["Anexo Proforma", "Enviar relatório de divergências para:", "Filtros", "Importar Excel", "Resumos", "Separar Pedidos"],
         "cssAlign": ["top: -10 px; left: 5px; bottom: 5px; right: 5px;", "top: -20px", "top: 0px; left: 0px;", "top: 3px; left: 3px; right: 3px"],
         "expandRatio": [".1", ".25", ".3", ".33", ".4", ".5", ".55", ".6", ".7", ".8", ".85", ".9", "0", "0.01", "0.1", "__TRUNCADO__"],
         "height": ["1%", "10%", "100%", "1000px", "10px", "145px", "2000px", "230px", "300px", "350px", "355", "385px", "400px", "420", "50%", "__TRUNCADO__"],
         "heigth": ["100%"],
         "id": ["bandejasHamburguer", "BKcQkmpX", "campo1", "campo2", "configuracaoLayout", "containerProxVencimento", "dataAquisicaoLayout", "descarteLayout", "detalhesConta", "detalhesProdsInfos", "detalhesVendas", "esconderCampos", "exibirDetalhesMantis", "exportAtrasados1", "exportAtrasados2", "__TRUNCADO__"],
         "isLayout": ["true"],
         "margem": ["true"],
         "margin": ["false", "true"],
         "spacing": ["false", "TRUE", "true"],
         "visible": ["false", "true"],
         "width": ["10%", "100%", "100% ", "1000px", "1100px", "15%", "280px", "30%", "400px", "50%", "500px", "550px", "5px", "60%", "70%", "__TRUNCADO__"]
      },
      propertyValueTypes: {
         "align": "enum",
         "backgroundColor": "text",
         "caption": "text",
         "cssAlign": "mixed",
         "expandRatio": "text",
         "height": "numeric",
         "heigth": "numeric",
         "id": "text",
         "isLayout": "boolean",
         "margem": "boolean",
         "margin": "boolean",
         "spacing": "boolean",
         "visible": "boolean",
         "width": "mixed"
      },
      events: [

      ],
      examples: [
         "Vitruvio/Paineis/imp - Pônica - aux - Ações(Previsão_Real).xml:393",
         "Vitruvio/Paineis/imp - Pônica - aux - Ações(Previsão_Real).xml:734",
         "Vitruvio/Paineis/imp - Pônica - aux - Ações(Previsão_Real).xml:810",
         "Vitruvio/Paineis/imp - Pônica - aux - Ações(Previsão_Real).xml:863",
         "Vitruvio/Paineis/Ficha Azul_ Cadastro de Tipo.xml:149",
         "Vitruvio/Paineis/Ficha Azul_ Cadastro de Tipo.xml:227",
         "Vitruvio/Paineis/Impressão de etiqueta LJ06 WS.xml:521",
         "Vitruvio/Paineis/Impressão de etiqueta LJ06 WS.xml:684",
         "Vitruvio/Paineis/Relatório de Transferências.xml:276",
         "Vitruvio/Paineis/imp - Pônica - aux - Detalhes Pré Pedido.xml:348",
         "Vitruvio/Paineis/imp - Pônica - aux - Detalhes Pré Pedido.xml:369",
         "Vitruvio/Paineis/imp - Pônica - aux - Detalhes Pré Pedido.xml:374"
      ],
      notes: [
         "Mapeamento automatico baseado em uso observado nos XMLs de paineis e processos.",
         "Valores ruidosos/textos muito longos sao filtrados para facilitar consulta.",
         "propertyValueTypes classifica o perfil observado da propriedade (boolean, enum, numeric, text ou mixed).",
         "Validar com documentacao oficial do Vitruvio quando houver divergencia funcional."
      ]
   }
};

export default VerticalLayoutDoc;
