Web Analytics

prettier-plugin-classnames

⭐ 175 stars Portuguese by ony3000

🌐 Idioma

prettier-plugin-classnames

Um plugin do Prettier que quebra nomes de classes longos com base na opção printWidth.

Um caso de uso para este plugin.

Instalação[^1]

npm install -D prettier prettier-plugin-classnames

[^1]: Se sua versão do prettier-plugin-classnames for inferior a 0.4.0, você também precisará instalar o @prettier/sync.

Configuração

Exemplo de JSON:

{
  "plugins": ["prettier-plugin-classnames"]
}

Exemplo de JS (módulo CommonJS):

module.exports = {
  plugins: ['prettier-plugin-classnames'],
  customAttributes: ['myClassProp'],
  customFunctions: ['clsx'],
};

Exemplo JS (módulo ES):

export default {
  plugins: ['prettier-plugin-classnames'],
  endingPosition: 'absolute',
};

Opções

Atributos Personalizados

Lista de atributos que envolvem nomes de classe.
Os atributos class e className são sempre suportados, mesmo que nenhuma opção seja especificada.

Padrão | Substituição CLI | Substituição API --- | --- | --- [] | --custom-attributes | customAttributes: [""]

Funções Personalizadas

Lista de funções que envolvem nomes de classe.
A função classNames é sempre suportada, mesmo que nenhuma opção seja especificada.

Padrão | Substituição CLI | Substituição API --- | --- | --- [] | --custom-functions | customFunctions: [""]

Posição Final

Disponível pela primeira vez na v0.5.0.
absolute-with-indent foi adicionada na v0.6.0.
absolute-with-indent foi removida na v0.8.0, mas você pode obter o mesmo resultado com absolute.
O valor padrão mudou de relative para absolute na v0.8.0.

Este é o critério para terminar o nome da classe em cada linha ao substituir o nome de classe original por um nome de classe multilinha.

  --------------------------------------------------| printWidth=50
  export function Callout({ children }) {
    return (
      
{children}
); } ``

  • Exemplo de relative:
` --------------------------------------------------| printWidth=50 export function Callout({ children }) { return (
{children}
); }
`

Padrão | Substituição CLI | Substituição API --- | --- | --- "absolute" | --ending-position | endingPosition: ""

Transformação de Sintaxe

Disponível pela primeira vez na v0.7.7.

Se ocorrer quebra de linha em um nome de classe escrito em sintaxe não-expressão, ele é transformado em sintaxe de expressão. Esta transformação não suporta formatação reversível.

Padrão | Substituição CLI | Substituição API --- | --- | --- false | --syntax-transformation | syntaxTransformation:

Correlação de versões com plugins irmãos

A partir da versão 0.6.0, quando houver um lançamento secundário de um lado, pretendo refletir essa alteração no outro lado também, se possível.

Correlação de versões.

Compatibilidade com outros plugins do Prettier

Se mais de um plugin do Prettier puder processar o texto que você deseja formatar, o Prettier usará apenas o último desses plugins.

Neste caso, você pode configurar da seguinte forma, adicionando o prettier-plugin-merge para aplicar esses plugins sequencialmente.

Exemplo em JSON:

json { "plugins": [ "prettier-plugin-tailwindcss", "prettier-plugin-classnames", "prettier-plugin-merge" ] } ``

--- Tranlated By Open Ai Tx | Last indexed: 2025-09-09 ---