
Research
/Security News
npm Author Qix Compromised via Phishing Email in Major Supply Chain Attack
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.
react-lgpd-consent
Advanced tools
Biblioteca de consentimento LGPD, integrações nativas e sistema extensível para React.
Uma biblioteca React para gerenciamento de consentimento de cookies em conformidade com a LGPD.
Instalação • Uso Básico • 📚 Guia de Início Rápido • Documentação • 🇺🇸 🇬🇧 English • Contribuir
Comece por aqui: siga o Guia de Início Rápido (QUICKSTART.md) para um tutorial passo-a-passo, exemplos TypeScript, tabela de props e integração com MUI — recomendado para usuários novos.
npm install react-lgpd-consent @mui/material @emotion/react @emotion/styled js-cookie
Dependências peer: react
, react-dom
, @mui/material
e js-cookie
.
Envolva sua aplicação com o ConsentProvider
(exemplo mínimo):
import { ConsentProvider } from 'react-lgpd-consent'
export default function App() {
return (
<ConsentProvider categories={{ enabledCategories: ['analytics'] }}>
<YourApp />
</ConsentProvider>
)
}
A biblioteca não cria um ThemeProvider
global automaticamente. Ela tenta herdar o tema do seu app quando você já possui um ThemeProvider
do MUI. Se você quiser aplicar explicitamente um tema de fallback para os componentes de consentimento, use a fábrica exportada createDefaultConsentTheme()
e passe via prop theme
:
import { ConsentProvider, createDefaultConsentTheme } from 'react-lgpd-consent'
// Aplica um tema de fallback somente para os componentes da lib
;<ConsentProvider
theme={createDefaultConsentTheme()}
categories={{ enabledCategories: ['analytics'] }}
>
<App />
</ConsentProvider>
Evite depender de criação de tema no import (isso evita side-effects e problemas em SSR). Se você precisar de compatibilidade retroativa com quem importava defaultConsentTheme
, entre em contato para adicionarmos um export compatível com deprecação documentada.
Para mais detalhes sobre customização, hooks e funcionalidades, consulte os seguintes guias:
QUICKSTART.md
): Tutorial passo a passo com exemplos práticos, tabela completa de props, debugging e integrações.API.md
): Referência completa de todos os componentes, hooks e tipos.CONFORMIDADE.md
): Detalhes sobre as funcionalidades de conformidade com a LGPD.INTEGRACOES.md
): Como usar as integrações nativas e criar as suas.DEVELOPMENT.md
para enviar um PR.MIT — veja o arquivo LICENSE
.
[0.3.6] - 2025-08-28 - Correção crítica: Herança de ThemeProvider
Storybook
args
/argTypes
) para componentes-chave (FloatingPreferencesButton
, PreferencesModal
) e suporte a tema escuro nas histórias..storybook/preview.tsx
para compatibilidade com Vite/ESM.ConsentProvider
blockingStrategy
(opt-in) adicionado para permitir overlays de bloqueio controlados pelo provider.floatingPreferencesButtonProps
agora são repassadas corretamente quando o FloatingPreferencesButton
é instanciado automaticamente.Testes e qualidade
DesignContext
, useConsent
, CategoriesContext
, ConsentScriptLoader
, cookieUtils
, scriptLoader
, scriptIntegrations
, SafeThemeProvider
, logger
, ConsentGate
, PreferencesModal
e FloatingPreferencesButton
.developerGuidance
durante execução normal e permitir testes dedicados que verifiquem esses logs.Integração e DX
README
para facilitar adoção e contribuições.FloatingPreferencesButton
— props forward
tooltip
, hideWhenConsented
, etc.) não eram aplicadas quando o botão era renderizado automaticamente pelo ConsentProvider
.ConsentProvider
agora encaminha floatingPreferencesButtonProps
corretamente para o componente padrão. Stories atualizadas.Storybook fixes
preview.ts
que continham JSX; migrado para preview.tsx
e ajustadas exports para evitar erros com o bundler (esbuild/vite).ConsentProvider
(erros esperados), hidratação a partir de cookie, callbacks (onConsentGiven
, onPreferencesSaved
) e fluxos de UI (abrir/fechar modal, accept/reject).jest.setup
e um jest.console-setup.ts
para garantir suprimir logs antes da coleta de módulos, mantendo testes determinísticos.README
com foco em QUICKSTART
.docs
.ThemeProvider
global por si só. O ConsentProvider
agora herda o theme do app consumidor quando um ThemeProvider
do MUI estiver presente. O Provider só envolverá com ThemeProvider
se a prop theme
for explicitamente fornecida.createDefaultConsentTheme()
foi adicionada como fábrica para quem precisar de um fallback explícito. Mantemos também um getter de compatibilidade (deprecated) defaultConsentTheme()
que retorna uma nova instância quando chamada, evitando side-effects no import.ThemeProvider
o ConsentProvider
usará o theme existente. Para quem precisa de um fallback explícito, passe theme={createDefaultConsentTheme()}
ao ConsentProvider
.Nota: originalmente essa correção foi marcada como v0.3.5; devido a conflito de publicação a versão foi bumpada localmente para v0.3.6 e a entrada foi gravada nesta release.
fce823a
, 333ce0a
, a1eea7e
8f8c388
, 6e09058
, 329682c
, 9b1d977
, adf0d49
967d278
(blockingStrategy)db03ae3
27339e7
, 3b7fdba
, 11c3602
FAQs
Biblioteca de consentimento LGPD, integrações nativas e sistema extensível para React.
The npm package react-lgpd-consent receives a total of 228 weekly downloads. As such, react-lgpd-consent popularity was classified as not popular.
We found that react-lgpd-consent demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
/Security News
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.