react-lgpd-consent 0.2.3 → 0.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +751 -739
- package/dist/{PreferencesModal-UMNANMVX.js → PreferencesModal-B6N62JYB.js} +1 -1
- package/dist/{chunk-E763JXNL.js → chunk-4LLZREFO.js} +50 -52
- package/dist/index.cjs +50 -52
- package/dist/index.d.cts +9 -1
- package/dist/index.d.ts +9 -1
- package/dist/index.js +2 -2
- package/package.json +109 -105
|
@@ -112,63 +112,58 @@ function analyzeDeveloperConfiguration(config) {
|
|
|
112
112
|
}
|
|
113
113
|
return guidance;
|
|
114
114
|
}
|
|
115
|
-
function logDeveloperGuidance(guidance) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
(suggestion) => console.info(`${PREFIX} ${suggestion}`)
|
|
137
|
-
);
|
|
138
|
-
console.groupEnd();
|
|
139
|
-
}
|
|
140
|
-
if (guidance.usingDefaults) {
|
|
141
|
-
console.info(
|
|
142
|
-
`${PREFIX} \u{1F4CB} Usando configura\xE7\xE3o padr\xE3o. Para personalizar, use a prop "categories" no ConsentProvider.`
|
|
143
|
-
);
|
|
144
|
-
}
|
|
145
|
-
console.group(`${PREFIX} \u{1F527} Categorias Ativas (para UI customizada)`);
|
|
146
|
-
console.table(
|
|
147
|
-
guidance.activeCategoriesInfo.map((cat) => ({
|
|
148
|
-
ID: cat.id,
|
|
149
|
-
Nome: cat.name,
|
|
150
|
-
"Toggle UI?": cat.uiRequired ? "\u2705 SIM" : "\u274C N\xC3O (sempre ativo)",
|
|
151
|
-
"Essencial?": cat.essential ? "\u{1F512} SIM" : "\u2699\uFE0F N\xC3O"
|
|
152
|
-
}))
|
|
115
|
+
function logDeveloperGuidance(guidance, disableGuidanceProp) {
|
|
116
|
+
if (disableGuidanceProp === true) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
const isProduction = (
|
|
120
|
+
// 1. NODE_ENV de bundlers (Vite, webpack, etc.)
|
|
121
|
+
typeof globalThis.process !== "undefined" && globalThis.process.env?.NODE_ENV === "production" || // 2. Flag customizada para desabilitar logs
|
|
122
|
+
typeof globalThis !== "undefined" && globalThis.__LGPD_PRODUCTION__ === true || // 3. Flag de desenvolvimento desabilitada via window global (legado)
|
|
123
|
+
typeof window !== "undefined" && window.__LGPD_DISABLE_GUIDANCE__ === true
|
|
124
|
+
);
|
|
125
|
+
if (isProduction) return;
|
|
126
|
+
const PREFIX = "[\u{1F36A} LGPD-CONSENT]";
|
|
127
|
+
if (guidance.warnings.length > 0) {
|
|
128
|
+
console.group(`${PREFIX} \u26A0\uFE0F Avisos de Configura\xE7\xE3o`);
|
|
129
|
+
guidance.warnings.forEach((warning) => console.warn(`${PREFIX} ${warning}`));
|
|
130
|
+
console.groupEnd();
|
|
131
|
+
}
|
|
132
|
+
if (guidance.suggestions.length > 0) {
|
|
133
|
+
console.group(`${PREFIX} \u{1F4A1} Sugest\xF5es`);
|
|
134
|
+
guidance.suggestions.forEach(
|
|
135
|
+
(suggestion) => console.info(`${PREFIX} ${suggestion}`)
|
|
153
136
|
);
|
|
137
|
+
console.groupEnd();
|
|
138
|
+
}
|
|
139
|
+
if (guidance.usingDefaults) {
|
|
154
140
|
console.info(
|
|
155
|
-
`${PREFIX} \
|
|
141
|
+
`${PREFIX} \u{1F4CB} Usando configura\xE7\xE3o padr\xE3o. Para personalizar, use a prop "categories" no ConsentProvider.`
|
|
156
142
|
);
|
|
157
|
-
console.groupEnd();
|
|
158
|
-
} catch (error) {
|
|
159
|
-
if (typeof console !== "undefined" && console.warn) {
|
|
160
|
-
console.warn(
|
|
161
|
-
"[\u{1F36A} LGPD-CONSENT] Sistema de orienta\xE7\xF5es encontrou erro:",
|
|
162
|
-
error
|
|
163
|
-
);
|
|
164
|
-
}
|
|
165
143
|
}
|
|
144
|
+
console.group(`${PREFIX} \u{1F527} Categorias Ativas (para UI customizada)`);
|
|
145
|
+
console.table(
|
|
146
|
+
guidance.activeCategoriesInfo.map((cat) => ({
|
|
147
|
+
ID: cat.id,
|
|
148
|
+
Nome: cat.name,
|
|
149
|
+
"Toggle UI?": cat.uiRequired ? "\u2705 SIM" : "\u274C N\xC3O (sempre ativo)",
|
|
150
|
+
"Essencial?": cat.essential ? "\u{1F512} SIM" : "\u2699\uFE0F N\xC3O"
|
|
151
|
+
}))
|
|
152
|
+
);
|
|
153
|
+
console.info(
|
|
154
|
+
`${PREFIX} \u2139\uFE0F Use estes dados para criar componentes customizados adequados.`
|
|
155
|
+
);
|
|
156
|
+
console.groupEnd();
|
|
166
157
|
}
|
|
167
|
-
function useDeveloperGuidance(config) {
|
|
158
|
+
function useDeveloperGuidance(config, disableGuidanceProp) {
|
|
168
159
|
const guidance = analyzeDeveloperConfiguration(config);
|
|
160
|
+
const stringifiedConfig = React.useMemo(
|
|
161
|
+
() => JSON.stringify(config),
|
|
162
|
+
[config]
|
|
163
|
+
);
|
|
169
164
|
React.useEffect(() => {
|
|
170
|
-
logDeveloperGuidance(guidance);
|
|
171
|
-
}, [
|
|
165
|
+
logDeveloperGuidance(guidance, disableGuidanceProp);
|
|
166
|
+
}, [guidance, stringifiedConfig, disableGuidanceProp]);
|
|
172
167
|
return guidance;
|
|
173
168
|
}
|
|
174
169
|
|
|
@@ -389,7 +384,7 @@ var defaultConsentTheme = createTheme({
|
|
|
389
384
|
// src/context/ConsentContext.tsx
|
|
390
385
|
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
|
391
386
|
var PreferencesModal = React3.lazy(
|
|
392
|
-
() => import("./PreferencesModal-
|
|
387
|
+
() => import("./PreferencesModal-B6N62JYB.js").then((m) => ({
|
|
393
388
|
default: m.PreferencesModal
|
|
394
389
|
}))
|
|
395
390
|
);
|
|
@@ -522,6 +517,7 @@ function ConsentProvider({
|
|
|
522
517
|
customCategories,
|
|
523
518
|
// LEGACY: compatibilidade
|
|
524
519
|
scriptIntegrations,
|
|
520
|
+
// eslint-disable-line no-unused-vars
|
|
525
521
|
PreferencesModalComponent,
|
|
526
522
|
preferencesModalProps = {},
|
|
527
523
|
disableAutomaticModal = false,
|
|
@@ -529,6 +525,8 @@ function ConsentProvider({
|
|
|
529
525
|
onConsentGiven,
|
|
530
526
|
onPreferencesSaved,
|
|
531
527
|
cookie: cookieOpts,
|
|
528
|
+
disableDeveloperGuidance,
|
|
529
|
+
// NOVO: desabilita avisos de dev
|
|
532
530
|
children
|
|
533
531
|
}) {
|
|
534
532
|
const texts = React3.useMemo(
|
|
@@ -554,7 +552,7 @@ function ConsentProvider({
|
|
|
554
552
|
}
|
|
555
553
|
return void 0;
|
|
556
554
|
}, [categories, customCategories]);
|
|
557
|
-
useDeveloperGuidance(finalCategoriesConfig);
|
|
555
|
+
useDeveloperGuidance(finalCategoriesConfig, disableDeveloperGuidance);
|
|
558
556
|
const boot = React3.useMemo(() => {
|
|
559
557
|
if (initialState) return { ...initialState, isModalOpen: false };
|
|
560
558
|
return createFullConsentState(
|
package/dist/index.cjs
CHANGED
|
@@ -279,63 +279,58 @@ function analyzeDeveloperConfiguration(config) {
|
|
|
279
279
|
}
|
|
280
280
|
return guidance;
|
|
281
281
|
}
|
|
282
|
-
function logDeveloperGuidance(guidance) {
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
(suggestion) => console.info(`${PREFIX} ${suggestion}`)
|
|
304
|
-
);
|
|
305
|
-
console.groupEnd();
|
|
306
|
-
}
|
|
307
|
-
if (guidance.usingDefaults) {
|
|
308
|
-
console.info(
|
|
309
|
-
`${PREFIX} \u{1F4CB} Usando configura\xE7\xE3o padr\xE3o. Para personalizar, use a prop "categories" no ConsentProvider.`
|
|
310
|
-
);
|
|
311
|
-
}
|
|
312
|
-
console.group(`${PREFIX} \u{1F527} Categorias Ativas (para UI customizada)`);
|
|
313
|
-
console.table(
|
|
314
|
-
guidance.activeCategoriesInfo.map((cat) => ({
|
|
315
|
-
ID: cat.id,
|
|
316
|
-
Nome: cat.name,
|
|
317
|
-
"Toggle UI?": cat.uiRequired ? "\u2705 SIM" : "\u274C N\xC3O (sempre ativo)",
|
|
318
|
-
"Essencial?": cat.essential ? "\u{1F512} SIM" : "\u2699\uFE0F N\xC3O"
|
|
319
|
-
}))
|
|
282
|
+
function logDeveloperGuidance(guidance, disableGuidanceProp) {
|
|
283
|
+
if (disableGuidanceProp === true) {
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
const isProduction = (
|
|
287
|
+
// 1. NODE_ENV de bundlers (Vite, webpack, etc.)
|
|
288
|
+
typeof globalThis.process !== "undefined" && globalThis.process.env?.NODE_ENV === "production" || // 2. Flag customizada para desabilitar logs
|
|
289
|
+
typeof globalThis !== "undefined" && globalThis.__LGPD_PRODUCTION__ === true || // 3. Flag de desenvolvimento desabilitada via window global (legado)
|
|
290
|
+
typeof window !== "undefined" && window.__LGPD_DISABLE_GUIDANCE__ === true
|
|
291
|
+
);
|
|
292
|
+
if (isProduction) return;
|
|
293
|
+
const PREFIX = "[\u{1F36A} LGPD-CONSENT]";
|
|
294
|
+
if (guidance.warnings.length > 0) {
|
|
295
|
+
console.group(`${PREFIX} \u26A0\uFE0F Avisos de Configura\xE7\xE3o`);
|
|
296
|
+
guidance.warnings.forEach((warning) => console.warn(`${PREFIX} ${warning}`));
|
|
297
|
+
console.groupEnd();
|
|
298
|
+
}
|
|
299
|
+
if (guidance.suggestions.length > 0) {
|
|
300
|
+
console.group(`${PREFIX} \u{1F4A1} Sugest\xF5es`);
|
|
301
|
+
guidance.suggestions.forEach(
|
|
302
|
+
(suggestion) => console.info(`${PREFIX} ${suggestion}`)
|
|
320
303
|
);
|
|
304
|
+
console.groupEnd();
|
|
305
|
+
}
|
|
306
|
+
if (guidance.usingDefaults) {
|
|
321
307
|
console.info(
|
|
322
|
-
`${PREFIX} \
|
|
308
|
+
`${PREFIX} \u{1F4CB} Usando configura\xE7\xE3o padr\xE3o. Para personalizar, use a prop "categories" no ConsentProvider.`
|
|
323
309
|
);
|
|
324
|
-
console.groupEnd();
|
|
325
|
-
} catch (error) {
|
|
326
|
-
if (typeof console !== "undefined" && console.warn) {
|
|
327
|
-
console.warn(
|
|
328
|
-
"[\u{1F36A} LGPD-CONSENT] Sistema de orienta\xE7\xF5es encontrou erro:",
|
|
329
|
-
error
|
|
330
|
-
);
|
|
331
|
-
}
|
|
332
310
|
}
|
|
311
|
+
console.group(`${PREFIX} \u{1F527} Categorias Ativas (para UI customizada)`);
|
|
312
|
+
console.table(
|
|
313
|
+
guidance.activeCategoriesInfo.map((cat) => ({
|
|
314
|
+
ID: cat.id,
|
|
315
|
+
Nome: cat.name,
|
|
316
|
+
"Toggle UI?": cat.uiRequired ? "\u2705 SIM" : "\u274C N\xC3O (sempre ativo)",
|
|
317
|
+
"Essencial?": cat.essential ? "\u{1F512} SIM" : "\u2699\uFE0F N\xC3O"
|
|
318
|
+
}))
|
|
319
|
+
);
|
|
320
|
+
console.info(
|
|
321
|
+
`${PREFIX} \u2139\uFE0F Use estes dados para criar componentes customizados adequados.`
|
|
322
|
+
);
|
|
323
|
+
console.groupEnd();
|
|
333
324
|
}
|
|
334
|
-
function useDeveloperGuidance(config) {
|
|
325
|
+
function useDeveloperGuidance(config, disableGuidanceProp) {
|
|
335
326
|
const guidance = analyzeDeveloperConfiguration(config);
|
|
327
|
+
const stringifiedConfig = React.useMemo(
|
|
328
|
+
() => JSON.stringify(config),
|
|
329
|
+
[config]
|
|
330
|
+
);
|
|
336
331
|
React.useEffect(() => {
|
|
337
|
-
logDeveloperGuidance(guidance);
|
|
338
|
-
}, [
|
|
332
|
+
logDeveloperGuidance(guidance, disableGuidanceProp);
|
|
333
|
+
}, [guidance, stringifiedConfig, disableGuidanceProp]);
|
|
339
334
|
return guidance;
|
|
340
335
|
}
|
|
341
336
|
var React, DEFAULT_PROJECT_CATEGORIES;
|
|
@@ -689,6 +684,7 @@ function ConsentProvider({
|
|
|
689
684
|
customCategories,
|
|
690
685
|
// LEGACY: compatibilidade
|
|
691
686
|
scriptIntegrations,
|
|
687
|
+
// eslint-disable-line no-unused-vars
|
|
692
688
|
PreferencesModalComponent,
|
|
693
689
|
preferencesModalProps = {},
|
|
694
690
|
disableAutomaticModal = false,
|
|
@@ -696,6 +692,8 @@ function ConsentProvider({
|
|
|
696
692
|
onConsentGiven,
|
|
697
693
|
onPreferencesSaved,
|
|
698
694
|
cookie: cookieOpts,
|
|
695
|
+
disableDeveloperGuidance,
|
|
696
|
+
// NOVO: desabilita avisos de dev
|
|
699
697
|
children
|
|
700
698
|
}) {
|
|
701
699
|
const texts = React3.useMemo(
|
|
@@ -721,7 +719,7 @@ function ConsentProvider({
|
|
|
721
719
|
}
|
|
722
720
|
return void 0;
|
|
723
721
|
}, [categories, customCategories]);
|
|
724
|
-
useDeveloperGuidance(finalCategoriesConfig);
|
|
722
|
+
useDeveloperGuidance(finalCategoriesConfig, disableDeveloperGuidance);
|
|
725
723
|
const boot = React3.useMemo(() => {
|
|
726
724
|
if (initialState) return { ...initialState, isModalOpen: false };
|
|
727
725
|
return createFullConsentState(
|
|
@@ -1240,7 +1238,7 @@ function createGoogleAnalyticsIntegration(config) {
|
|
|
1240
1238
|
init: () => {
|
|
1241
1239
|
if (typeof window !== "undefined") {
|
|
1242
1240
|
let gtag2 = function(...args) {
|
|
1243
|
-
window.dataLayer.push(
|
|
1241
|
+
window.dataLayer.push(...args);
|
|
1244
1242
|
};
|
|
1245
1243
|
var gtag = gtag2;
|
|
1246
1244
|
window.dataLayer = window.dataLayer || [];
|
package/dist/index.d.cts
CHANGED
|
@@ -469,6 +469,12 @@ interface ConsentProviderProps {
|
|
|
469
469
|
* ```
|
|
470
470
|
*/
|
|
471
471
|
cookie?: Partial<ConsentCookieOptions>;
|
|
472
|
+
/**
|
|
473
|
+
* Desabilita os avisos e sugestões para desenvolvedores no console.
|
|
474
|
+
* Útil para ambientes de produção ou quando os avisos não são desejados.
|
|
475
|
+
* Por padrão, os avisos já são desabilitados em builds de produção.
|
|
476
|
+
*/
|
|
477
|
+
disableDeveloperGuidance?: boolean;
|
|
472
478
|
/** Elementos filhos - toda a aplicação que precisa de contexto de consentimento. */
|
|
473
479
|
children: React.ReactNode;
|
|
474
480
|
}
|
|
@@ -515,7 +521,9 @@ interface ConsentContextValue {
|
|
|
515
521
|
*/
|
|
516
522
|
declare function ConsentProvider({ initialState, categories, // NOVO: configuração completa de categorias
|
|
517
523
|
texts: textsProp, theme, customCategories, // LEGACY: compatibilidade
|
|
518
|
-
scriptIntegrations,
|
|
524
|
+
scriptIntegrations, // eslint-disable-line no-unused-vars
|
|
525
|
+
PreferencesModalComponent, preferencesModalProps, disableAutomaticModal, hideBranding, onConsentGiven, onPreferencesSaved, cookie: cookieOpts, disableDeveloperGuidance, // NOVO: desabilita avisos de dev
|
|
526
|
+
children, }: Readonly<ConsentProviderProps>): react_jsx_runtime.JSX.Element;
|
|
519
527
|
|
|
520
528
|
/**
|
|
521
529
|
* Hook principal para acessar e manipular o estado de consentimento de cookies.
|
package/dist/index.d.ts
CHANGED
|
@@ -469,6 +469,12 @@ interface ConsentProviderProps {
|
|
|
469
469
|
* ```
|
|
470
470
|
*/
|
|
471
471
|
cookie?: Partial<ConsentCookieOptions>;
|
|
472
|
+
/**
|
|
473
|
+
* Desabilita os avisos e sugestões para desenvolvedores no console.
|
|
474
|
+
* Útil para ambientes de produção ou quando os avisos não são desejados.
|
|
475
|
+
* Por padrão, os avisos já são desabilitados em builds de produção.
|
|
476
|
+
*/
|
|
477
|
+
disableDeveloperGuidance?: boolean;
|
|
472
478
|
/** Elementos filhos - toda a aplicação que precisa de contexto de consentimento. */
|
|
473
479
|
children: React.ReactNode;
|
|
474
480
|
}
|
|
@@ -515,7 +521,9 @@ interface ConsentContextValue {
|
|
|
515
521
|
*/
|
|
516
522
|
declare function ConsentProvider({ initialState, categories, // NOVO: configuração completa de categorias
|
|
517
523
|
texts: textsProp, theme, customCategories, // LEGACY: compatibilidade
|
|
518
|
-
scriptIntegrations,
|
|
524
|
+
scriptIntegrations, // eslint-disable-line no-unused-vars
|
|
525
|
+
PreferencesModalComponent, preferencesModalProps, disableAutomaticModal, hideBranding, onConsentGiven, onPreferencesSaved, cookie: cookieOpts, disableDeveloperGuidance, // NOVO: desabilita avisos de dev
|
|
526
|
+
children, }: Readonly<ConsentProviderProps>): react_jsx_runtime.JSX.Element;
|
|
519
527
|
|
|
520
528
|
/**
|
|
521
529
|
* Hook principal para acessar e manipular o estado de consentimento de cookies.
|
package/dist/index.js
CHANGED
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
useConsentHydration,
|
|
12
12
|
useConsentTexts,
|
|
13
13
|
useCustomCategories
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-4LLZREFO.js";
|
|
15
15
|
|
|
16
16
|
// src/components/CookieBanner.tsx
|
|
17
17
|
import Button from "@mui/material/Button";
|
|
@@ -309,7 +309,7 @@ function createGoogleAnalyticsIntegration(config) {
|
|
|
309
309
|
init: () => {
|
|
310
310
|
if (typeof window !== "undefined") {
|
|
311
311
|
let gtag2 = function(...args) {
|
|
312
|
-
window.dataLayer.push(
|
|
312
|
+
window.dataLayer.push(...args);
|
|
313
313
|
};
|
|
314
314
|
var gtag = gtag2;
|
|
315
315
|
window.dataLayer = window.dataLayer || [];
|
package/package.json
CHANGED
|
@@ -1,105 +1,109 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "react-lgpd-consent",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"description": "Biblioteca completa de consentimento LGPD com 6 categorias ANPD, integrações nativas e sistema extensível para React.",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"lgpd",
|
|
7
|
-
"anpd",
|
|
8
|
-
"cookie",
|
|
9
|
-
"consent",
|
|
10
|
-
"react",
|
|
11
|
-
"client-side",
|
|
12
|
-
"spa",
|
|
13
|
-
"material-ui",
|
|
14
|
-
"mui",
|
|
15
|
-
"typescript",
|
|
16
|
-
"js-cookie",
|
|
17
|
-
"consentimento",
|
|
18
|
-
"privacidade",
|
|
19
|
-
"acessibilidade",
|
|
20
|
-
"google-analytics",
|
|
21
|
-
"tag-manager",
|
|
22
|
-
"userway",
|
|
23
|
-
"categorias-extensiveis"
|
|
24
|
-
],
|
|
25
|
-
"publishConfig": {
|
|
26
|
-
"access": "public"
|
|
27
|
-
},
|
|
28
|
-
"author": {
|
|
29
|
-
"name": "Luciano Édipo",
|
|
30
|
-
"email": "luciano.psilva@anpd.gov.br",
|
|
31
|
-
"url": "https://github.com/lucianoedipo"
|
|
32
|
-
},
|
|
33
|
-
"license": "MIT",
|
|
34
|
-
"type": "module",
|
|
35
|
-
"main": "dist/index.cjs",
|
|
36
|
-
"module": "dist/index.mjs",
|
|
37
|
-
"types": "dist/index.d.ts",
|
|
38
|
-
"exports": {
|
|
39
|
-
".": {
|
|
40
|
-
"types": "./dist/index.d.ts",
|
|
41
|
-
"import": "./dist/index.js",
|
|
42
|
-
"require": "./dist/index.cjs"
|
|
43
|
-
},
|
|
44
|
-
"./package.json": "./package.json"
|
|
45
|
-
},
|
|
46
|
-
"sideEffects": false,
|
|
47
|
-
"files": [
|
|
48
|
-
"dist",
|
|
49
|
-
"README.md",
|
|
50
|
-
"LICENSE",
|
|
51
|
-
"COMPLIANCE.md"
|
|
52
|
-
],
|
|
53
|
-
"engines": {
|
|
54
|
-
"node": ">=18.18"
|
|
55
|
-
},
|
|
56
|
-
"packageManager": "pnpm@9.0.0",
|
|
57
|
-
"scripts": {
|
|
58
|
-
"clean": "rimraf dist",
|
|
59
|
-
"build": "cross-env NODE_ENV=production tsup src/index.ts --format esm,cjs --dts --clean",
|
|
60
|
-
"dev": "cross-env NODE_ENV=development tsup src/index.ts --format esm,cjs --dts --watch",
|
|
61
|
-
"lint": "eslint . --ext .ts,.tsx",
|
|
62
|
-
"format": "prettier --write \"src/**/*.{ts,tsx,json,md}\"",
|
|
63
|
-
"type-check": "tsc --noEmit",
|
|
64
|
-
"prepublishOnly": "npm run build"
|
|
65
|
-
},
|
|
66
|
-
"repository": {
|
|
67
|
-
"type": "git",
|
|
68
|
-
"url": "git+https://github.com/lucianoedipo/react-lgpd-consent.git"
|
|
69
|
-
},
|
|
70
|
-
"bugs": {
|
|
71
|
-
"url": "https://github.com/lucianoedipo/react-lgpd-consent/issues"
|
|
72
|
-
},
|
|
73
|
-
"homepage": "https://github.com/lucianoedipo/react-lgpd-consent#readme",
|
|
74
|
-
"peerDependencies": {
|
|
75
|
-
"@mui/material": "^7.0.0 || ^6.0.0 || ^5.15.0",
|
|
76
|
-
"@mui/
|
|
77
|
-
"react": "^18.2.0 || ^19.0.0",
|
|
78
|
-
"react-dom": "^18.2.0 || ^19.0.0"
|
|
79
|
-
},
|
|
80
|
-
"peerDependenciesMeta": {
|
|
81
|
-
"@mui/icons-material": {
|
|
82
|
-
"optional": true
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
|
-
"dependencies": {
|
|
86
|
-
"js-cookie": "^3.0.5"
|
|
87
|
-
},
|
|
88
|
-
"devDependencies": {
|
|
89
|
-
"@
|
|
90
|
-
"@
|
|
91
|
-
"@
|
|
92
|
-
"@
|
|
93
|
-
"@
|
|
94
|
-
"react": "^19.1.
|
|
95
|
-
"
|
|
96
|
-
"
|
|
97
|
-
"
|
|
98
|
-
"eslint
|
|
99
|
-
"eslint-
|
|
100
|
-
"
|
|
101
|
-
"
|
|
102
|
-
"
|
|
103
|
-
"
|
|
104
|
-
|
|
105
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "react-lgpd-consent",
|
|
3
|
+
"version": "0.2.5",
|
|
4
|
+
"description": "Biblioteca completa de consentimento LGPD com 6 categorias ANPD, integrações nativas e sistema extensível para React.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"lgpd",
|
|
7
|
+
"anpd",
|
|
8
|
+
"cookie",
|
|
9
|
+
"consent",
|
|
10
|
+
"react",
|
|
11
|
+
"client-side",
|
|
12
|
+
"spa",
|
|
13
|
+
"material-ui",
|
|
14
|
+
"mui",
|
|
15
|
+
"typescript",
|
|
16
|
+
"js-cookie",
|
|
17
|
+
"consentimento",
|
|
18
|
+
"privacidade",
|
|
19
|
+
"acessibilidade",
|
|
20
|
+
"google-analytics",
|
|
21
|
+
"tag-manager",
|
|
22
|
+
"userway",
|
|
23
|
+
"categorias-extensiveis"
|
|
24
|
+
],
|
|
25
|
+
"publishConfig": {
|
|
26
|
+
"access": "public"
|
|
27
|
+
},
|
|
28
|
+
"author": {
|
|
29
|
+
"name": "Luciano Édipo",
|
|
30
|
+
"email": "luciano.psilva@anpd.gov.br",
|
|
31
|
+
"url": "https://github.com/lucianoedipo"
|
|
32
|
+
},
|
|
33
|
+
"license": "MIT",
|
|
34
|
+
"type": "module",
|
|
35
|
+
"main": "dist/index.cjs",
|
|
36
|
+
"module": "dist/index.mjs",
|
|
37
|
+
"types": "dist/index.d.ts",
|
|
38
|
+
"exports": {
|
|
39
|
+
".": {
|
|
40
|
+
"types": "./dist/index.d.ts",
|
|
41
|
+
"import": "./dist/index.js",
|
|
42
|
+
"require": "./dist/index.cjs"
|
|
43
|
+
},
|
|
44
|
+
"./package.json": "./package.json"
|
|
45
|
+
},
|
|
46
|
+
"sideEffects": false,
|
|
47
|
+
"files": [
|
|
48
|
+
"dist",
|
|
49
|
+
"README.md",
|
|
50
|
+
"LICENSE",
|
|
51
|
+
"COMPLIANCE.md"
|
|
52
|
+
],
|
|
53
|
+
"engines": {
|
|
54
|
+
"node": ">=18.18"
|
|
55
|
+
},
|
|
56
|
+
"packageManager": "pnpm@9.0.0",
|
|
57
|
+
"scripts": {
|
|
58
|
+
"clean": "rimraf dist",
|
|
59
|
+
"build": "cross-env NODE_ENV=production tsup src/index.ts --format esm,cjs --dts --clean",
|
|
60
|
+
"dev": "cross-env NODE_ENV=development tsup src/index.ts --format esm,cjs --dts --watch",
|
|
61
|
+
"lint": "eslint . --ext .ts,.tsx",
|
|
62
|
+
"format": "prettier --write \"src/**/*.{ts,tsx,json,md}\" \"eslint.config.js\"",
|
|
63
|
+
"type-check": "tsc --noEmit",
|
|
64
|
+
"prepublishOnly": "npm run build"
|
|
65
|
+
},
|
|
66
|
+
"repository": {
|
|
67
|
+
"type": "git",
|
|
68
|
+
"url": "git+https://github.com/lucianoedipo/react-lgpd-consent.git"
|
|
69
|
+
},
|
|
70
|
+
"bugs": {
|
|
71
|
+
"url": "https://github.com/lucianoedipo/react-lgpd-consent/issues"
|
|
72
|
+
},
|
|
73
|
+
"homepage": "https://github.com/lucianoedipo/react-lgpd-consent#readme",
|
|
74
|
+
"peerDependencies": {
|
|
75
|
+
"@mui/icons-material": "^7.0.0 || ^6.0.0 || ^5.15.0",
|
|
76
|
+
"@mui/material": "^7.0.0 || ^6.0.0 || ^5.15.0",
|
|
77
|
+
"react": "^18.2.0 || ^19.0.0",
|
|
78
|
+
"react-dom": "^18.2.0 || ^19.0.0"
|
|
79
|
+
},
|
|
80
|
+
"peerDependenciesMeta": {
|
|
81
|
+
"@mui/icons-material": {
|
|
82
|
+
"optional": true
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
"dependencies": {
|
|
86
|
+
"js-cookie": "^3.0.5"
|
|
87
|
+
},
|
|
88
|
+
"devDependencies": {
|
|
89
|
+
"@eslint/compat": "^1.3.2",
|
|
90
|
+
"@mui/icons-material": "^7.3.1",
|
|
91
|
+
"@mui/material": "^7.3.1",
|
|
92
|
+
"@types/js-cookie": "^3.0.6",
|
|
93
|
+
"@types/react": "^19.1.9",
|
|
94
|
+
"@types/react-dom": "^19.1.7",
|
|
95
|
+
"@typescript-eslint/eslint-plugin": "^8.39.1",
|
|
96
|
+
"@typescript-eslint/parser": "^8.39.1",
|
|
97
|
+
"cross-env": "^10.0.0",
|
|
98
|
+
"eslint": "^9.33.0",
|
|
99
|
+
"eslint-config-prettier": "^10.1.8",
|
|
100
|
+
"eslint-plugin-react-hooks": "^5.2.0",
|
|
101
|
+
"prettier": "^3.6.2",
|
|
102
|
+
"react": "^19.1.1",
|
|
103
|
+
"react-dom": "^19.1.1",
|
|
104
|
+
"rimraf": "^6.0.1",
|
|
105
|
+
"tsup": "^8.5.0",
|
|
106
|
+
"typescript": "^5.9.2",
|
|
107
|
+
"typescript-eslint": "^8.39.1"
|
|
108
|
+
}
|
|
109
|
+
}
|