{"_id":"@bossone0013/nu-cookie-consent-banner","_rev":"4-5e7f7fe9da74b05265ecd6eb3063b643","name":"@bossone0013/nu-cookie-consent-banner","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@bossone0013/nu-cookie-consent-banner","version":"1.0.0","keywords":["cookie","consent","gdpr","privacy","banner","es6","module","localization","third-party"],"author":{"url":"https://b1project.com","name":"Cyril Bosselut","email":"contact@b1project.com"},"license":"MIT","_id":"@bossone0013/nu-cookie-consent-banner@1.0.0","maintainers":[{"name":"bossone0013","email":"contact@b1project.com"}],"homepage":"https://github.com/BOSSoNe0013/CookieConsentBanner#readme","bugs":{"url":"https://github.com/BOSSoNe0013/CookieConsentBanner/issues"},"dist":{"shasum":"805186c8d4d4fd5c74a85635815ac97aa5a7a2a8","tarball":"https://registry.npmjs.org/@bossone0013/nu-cookie-consent-banner/-/nu-cookie-consent-banner-1.0.0.tgz","fileCount":13,"integrity":"sha512-U4dDiwG+dmI+SyJjgAladzsDnBiHs8RikogDZQJOZjzMrrMAsZtBEjGQlYi9EHybVNzdsGXLUf0kbbhjXEZE9Q==","signatures":[{"sig":"MEYCIQCHOBLHbLCWpp3NjOrm0cvmGGY+BbdwYB5hja61eKtFhAIhAIh18jkojfRcWEXbJtVXcZYMsWF7z7wT64VouKqrxVuF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133339},"main":"src/cookieConsentBanner.js","types":"src/cookieConsentBanner.d.ts","module":"src/cookieConsentBanner.js","gitHead":"4dba53200ca0cc24d5af9b1b34c0ef6efa2e22ba","scripts":{"dev":"live-server demo/","demo":"npm run build && live-server demo/","lint":"eslint src/","test":"jest","build":"npm run build:js && npm run build:css","build:js":"terser src/cookieConsentBanner.js -o src/cookieConsentBanner.min.js --compress --mangle","lint:fix":"eslint src/ --fix","build:css":"cleancss -o css/cookie-consent.min.css css/cookie-consent.css","typecheck":"tsc --noEmit","test:watch":"jest --watch","test:single":"jest --testPathPattern="},"_npmUser":{"name":"bossone0013","email":"contact@b1project.com"},"repository":{"url":"git+https://github.com/BOSSoNe0013/CookieConsentBanner.git","type":"git"},"_npmVersion":"9.5.0","description":"A comprehensive GDPR-compliant cookie consent banner ES6 module with localization support and third-party integrations","directories":{"test":"tests"},"_nodeVersion":"20.19.4","dependencies":{"co":"^4.6.0","ms":"^2.1.3","ws":"^8.18.3","ajv":"^6.12.6","opn":"^6.0.0","ret":"^0.1.15","use":"^3.1.1","atob":"^2.1.2","base":"^0.11.2","bser":"^2.1.1","cors":"^2.8.5","depd":"^2.0.0","etag":"^1.8.1","exit":"^0.1.2","from":"^0.1.7","glob":"^7.2.3","keyv":"^4.5.4","levn":"^0.4.1","once":"^1.4.0","send":"^1.2.0","tmpl":"^1.0.5","tr46":"^5.1.1","urix":"^0.1.0","uuid":"^3.4.0","vary":"^1.1.2","y18n":"^5.0.8","acorn":"^8.15.0","batch":"^0.6.1","chalk":"^4.1.2","cliui":"^8.0.1","debug":"^4.4.3","execa":"^5.1.1","fastq":"^1.19.1","fresh":"^2.0.0","isexe":"^2.0.0","jsdom":"^26.1.0","jsesc":"^3.1.0","json5":"^2.2.3","kleur":"^3.0.3","leven":"^3.1.0","mdurl":"^1.0.1","p-try":"^2.2.0","saxes":"^6.0.0","slash":"^3.0.0","split":"^0.3.3","tldts":"^6.1.86","upath":"^1.2.0","which":"^2.0.2","yargs":"^17.7.2","braces":"^3.0.3","colors":"^1.4.0","dedent":"^1.7.0","espree":"^9.6.1","expect":"^29.7.0","for-in":"^1.0.2","hasown":"^2.0.2","ignore":"^5.3.2","is-wsl":"^1.1.0","morgan":"^1.10.1","nwsapi":"^2.2.22","parse5":"^7.3.0","rimraf":"^3.0.2","semver":"^6.3.1","unpipe":"^1.0.0","uri-js":"^4.4.1","walker":"^1.0.8","wrappy":"^1.0.2","accepts":"^1.3.8","ci-info":"^3.9.0","connect":"^3.7.0","deep-is":"^0.1.4","esprima":"^4.0.1","esquery":"^1.6.0","esutils":"^2.0.3","extglob":"^2.0.4","find-up":"^5.0.0","flatted":"^3.3.3","gensync":"^1.0.0-beta.2","globals":"^13.24.0","is-glob":"^4.0.3","isarray":"^1.0.0","js-yaml":"^4.1.0","kind-of":"^4.0.0","mime-db":"^1.54.0","onetime":"^5.1.2","p-limit":"^3.1.0","pirates":"^4.0.7","pkg-dir":"^4.2.0","prompts":"^2.4.2","resolve":"^1.22.11","reusify":"^1.1.0","through":"^2.3.8","yallist":"^3.1.1","anymatch":"^3.1.3","argparse":"^2.0.1","arr-diff":"^4.0.0","bcryptjs":"^2.4.3","chokidar":"^3.6.0","cssstyle":"^4.6.0","doctrine":"^3.0.0","duplexer":"^0.1.2","ee-first":"^1.1.1","emittery":"^0.13.1","entities":"^3.0.1","error-ex":"^1.3.4","escalade":"^3.2.0","has-flag":"^4.0.0","inflight":"^1.0.6","inherits":"^2.0.4","isobject":"^3.0.1","jest-cli":"^29.7.0","make-dir":"^4.0.0","mimic-fn":"^2.1.0","p-locate":"^5.0.0","parseurl":"^1.3.3","path-key":"^3.1.1","punycode":"^2.3.1","react-is":"^18.3.1","readdirp":"^3.6.0","regjsgen":"^0.8.0","statuses":"^1.5.0","to-regex":"^3.0.2","uc.micro":"^1.0.6","xmlchars":"^2.2.0","acorn-jsx":"^5.3.2","arr-union":"^3.1.0","callsites":"^3.1.0","camelcase":"^5.3.1","clean-css":"^5.3.3","commander":"^7.2.0","data-urls":"^5.0.0","deepmerge":"^4.3.1","encodeurl":"^1.0.2","esrecurse":"^4.3.0","get-value":"^2.0.6","graphemer":"^1.4.0","has-value":"^1.0.0","http-auth":"^3.1.3","is-buffer":"^1.1.6","is-number":"^7.0.0","is-stream":"^2.0.1","jest-diff":"^29.7.0","jest-each":"^29.7.0","jest-mock":"^29.7.0","jest-util":"^29.7.0","js-tokens":"^4.0.0","lru-cache":"^5.1.1","makeerror":"^1.0.12","map-cache":"^0.2.2","map-visit":"^1.0.0","minimatch":"^3.1.2","nanomatch":"^1.2.13","picomatch":"^2.3.1","pure-rand":"^6.1.0","regex-not":"^1.0.2","set-value":"^2.0.1","strip-bom":"^4.0.0","type-fest":"^0.20.2","word-wrap":"^1.2.5","wrap-ansi":"^7.0.0","agent-base":"^7.1.4","ansi-regex":"^5.0.1","apache-md5":"^1.1.8","async-each":"^1.0.6","basic-auth":"^2.0.1","cache-base":"^1.0.1","char-regex":"^1.0.2","color-name":"^1.1.4","concat-map":"^0.0.1","decimal.js":"^10.6.0","estraverse":"^5.3.0","fill-range":"^7.1.1","flat-cache":"^3.2.0","get-stream":"^6.0.1","has-values":"^1.0.0","iconv-lite":"^0.6.3","is-extglob":"^2.1.1","is-windows":"^1.0.2","linkify-it":"^4.0.1","map-stream":"^0.1.0","micromatch":"^4.0.8","mime-types":"^3.0.1","mixin-deep":"^1.3.2","negotiator":"^0.6.3","node-int64":"^0.4.0","on-headers":"^1.1.0","optionator":"^0.9.4","parse-json":"^5.2.0","pascalcase":"^0.1.1","path-parse":"^1.0.7","picocolors":"^1.1.1","prelude-ls":"^1.2.1","regenerate":"^1.4.2","safe-regex":"^1.1.0","sisteransi":"^1.0.5","snapdragon":"^0.8.2","source-map":"^0.6.1","sprintf-js":"^1.0.3","strip-ansi":"^6.0.1","text-table":"^0.2.0","tldts-core":"^6.1.86","type-check":"^0.4.0","whatwg-url":"^14.2.0","ansi-styles":"^4.3.0","arr-flatten":"^1.1.0","buffer-from":"^1.1.2","class-utils":"^0.3.6","create-jest":"^29.7.0","cross-spawn":"^7.0.6","emoji-regex":"^8.0.0","escape-html":"^1.0.3","fb-watchman":"^2.0.2","fs.realpath":"^1.0.0","glob-parent":"^5.1.2","graceful-fs":"^4.2.11","http-errors":"^2.0.0","imurmurhash":"^0.1.4","is-arrayish":"^0.2.1","jest-circus":"^29.7.0","jest-config":"^29.7.0","jest-runner":"^29.7.0","jest-worker":"^29.7.0","json-buffer":"^3.0.1","locate-path":"^6.0.0","object-copy":"^0.1.0","object.pick":"^1.3.0","on-finished":"^2.3.0","path-exists":"^4.0.0","regjsparser":"^0.13.0","resolve-cwd":"^3.0.0","resolve-url":"^0.2.1","rrweb-cssom":"^0.8.0","safe-buffer":"^5.1.2","serve-index":"^1.9.1","signal-exit":"^3.0.7","stack-utils":"^2.0.6","symbol-tree":"^3.2.4","type-detect":"^4.0.8","union-value":"^1.0.1","unset-value":"^1.0.0","utils-merge":"^1.0.1","yocto-queue":"^0.1.0","ansi-escapes":"^4.3.2","apache-crypt":"^1.2.6","array-unique":"^0.3.2","browserslist":"^4.27.0","caniuse-lite":"^1.0.30001753","core-util-is":"^1.0.3","eslint-scope":"^7.2.2","event-stream":"^3.3.4","finalhandler":"^1.1.2","html-escaper":"^2.0.2","import-fresh":"^3.3.1","import-local":"^3.2.0","jest-resolve":"^29.7.0","jest-runtime":"^29.7.0","jest-watcher":"^29.7.0","lodash.merge":"^4.6.2","merge-stream":"^2.0.0","npm-run-path":"^4.0.1","object-visit":"^1.0.1","path-dirname":"^1.0.2","pause-stream":"^0.0.11","range-parser":"^1.2.1","regexpu-core":"^6.4.0","resolve-from":"^4.0.0","run-parallel":"^1.2.0","safer-buffer":"^2.1.2","split-string":"^3.1.0","string-width":"^4.2.3","test-exclude":"^6.0.0","toidentifier":"^1.0.1","tough-cookie":"^5.1.2","undici-types":"^7.16.0","yargs-parser":"^21.1.1","color-convert":"^2.0.1","function-bind":"^1.1.2","human-signals":"^2.1.0","is-descriptor":"^0.1.7","is-extendable":"^0.1.1","jest-docblock":"^29.7.0","jest-get-type":"^29.6.3","jest-snapshot":"^29.7.0","jest-validate":"^29.7.0","node-releases":"^2.0.27","object-assign":"^4.1.1","parent-module":"^1.0.1","pretty-format":"^29.7.0","repeat-string":"^1.6.1","shebang-regex":"^3.0.0","static-extend":"^0.1.2","string-length":"^4.0.2","assign-symbols":"^1.0.0","balanced-match":"^1.0.2","core-js-compat":"^3.46.0","detect-newline":"^3.1.0","diff-sequences":"^29.6.3","extend-shallow":"^2.0.1","faye-websocket":"^0.11.4","fragment-cache":"^0.2.1","http-parser-js":"^0.5.10","is-binary-path":"^2.1.0","is-core-module":"^2.16.1","is-path-inside":"^3.0.3","jest-haste-map":"^29.7.0","normalize-path":"^3.0.0","repeat-element":"^1.1.4","setprototypeof":"^1.2.0","source-map-url":"^0.4.1","string_decoder":"^1.1.1","supports-color":"^7.2.0","to-object-path":"^0.3.0","to-regex-range":"^5.0.1","util-deprecate":"^1.0.2","v8-to-istanbul":"^9.3.0","brace-expansion":"^1.1.12","copy-descriptor":"^0.1.1","define-property":"^0.2.5","expand-brackets":"^2.1.4","fast-deep-equal":"^3.1.3","get-caller-file":"^2.0.5","is-generator-fn":"^2.1.0","is-plain-object":"^2.0.4","jest-regex-util":"^29.6.3","lodash.debounce":"^4.0.8","natural-compare":"^1.4.0","queue-microtask":"^1.2.3","readable-stream":"^2.3.8","resolve.exports":"^2.0.3","shebang-command":"^2.0.0","snapdragon-node":"^2.1.1","snapdragon-util":"^3.0.1","stream-combiner":"^0.0.4","whatwg-encoding":"^3.1.1","whatwg-mimetype":"^4.0.0","cjs-module-lexer":"^1.4.3","collection-visit":"^1.0.0","fast-levenshtein":"^2.0.6","file-entry-cache":"^6.0.1","get-package-type":"^0.1.0","http-proxy-agent":"^7.0.2","istanbul-reports":"^3.2.0","path-is-absolute":"^1.0.1","proxy-middleware":"^0.15.0","unix-crypt-td-js":"^1.1.4","websocket-driver":"^0.7.4","babel-preset-jest":"^30.2.0","binary-extensions":"^2.3.0","component-emitter":"^1.3.1","https-proxy-agent":"^7.0.6","jest-message-util":"^29.7.0","jest-pnp-resolver":"^1.2.3","lines-and-columns":"^1.2.4","require-directory":"^2.1.1","w3c-xmlserializer":"^5.0.0","write-file-atomic":"^4.0.2","convert-source-map":"^2.0.0","is-data-descriptor":"^1.0.1","jest-changed-files":"^29.7.0","jest-leak-detector":"^29.7.0","jest-matcher-utils":"^29.7.0","source-map-resolve":"^0.5.3","source-map-support":"^0.5.13","webidl-conversions":"^7.0.0","xml-name-validator":"^5.0.0","collect-v8-coverage":"^1.0.3","eslint-visitor-keys":"^3.4.3","istanbul-lib-report":"^3.0.1","strip-final-newline":"^2.0.0","strip-json-comments":"^3.1.1","decode-uri-component":"^0.2.2","electron-to-chromium":"^1.5.245","escape-string-regexp":"^4.0.0","json-schema-traverse":"^0.4.1","process-nextick-args":"^2.0.1","websocket-extensions":"^0.1.4","babel-plugin-istanbul":"^6.1.1","html-encoding-sniffer":"^4.0.0","istanbul-lib-coverage":"^3.2.2","jest-environment-node":"^29.7.0","is-accessor-descriptor":"^1.0.1","update-browserslist-db":"^1.1.4","babel-plugin-jest-hoist":"^30.2.0","is-fullwidth-code-point":"^3.0.0","istanbul-lib-instrument":"^6.0.3","posix-character-classes":"^0.1.1","baseline-browser-mapping":"^2.8.24","istanbul-lib-source-maps":"^4.0.1","jest-resolve-dependencies":"^29.7.0","remove-trailing-separator":"^1.1.0","fast-json-stable-stringify":"^2.1.0","babel-plugin-polyfill-corejs2":"^0.4.14","babel-plugin-polyfill-corejs3":"^0.13.0","json-parse-even-better-errors":"^2.3.1","regenerate-unicode-properties":"^10.2.2","supports-preserve-symlinks-flag":"^1.0.0","babel-preset-current-node-syntax":"^1.2.0","is-potential-custom-element-name":"^1.0.1","babel-plugin-polyfill-regenerator":"^0.6.5","unicode-match-property-ecmascript":"^2.0.0","unicode-property-aliases-ecmascript":"^2.2.0","json-stable-stringify-without-jsonify":"^1.0.1","unicode-match-property-value-ecmascript":"^2.2.1","unicode-canonical-property-names-ecmascript":"^2.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","eslint":"^8.0.0","terser":"^5.0.0","babel-jest":"^30.2.0","typescript":"^5.0.0","@babel/core":"^7.28.5","live-server":"^1.2.2","markdown-it":"^13.0.1","clean-css-cli":"^5.6.2","@babel/preset-env":"^7.28.5","@types/markdown-it":"^12.2.3","jest-environment-jsdom":"^30.2.0"},"peerDependencies":{"markdown-it":"^13.0.1"},"_npmOperationalInternal":{"tmp":"tmp/nu-cookie-consent-banner_1.0.0_1762424027336_0.6607692362377315","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bossone0013/nu-cookie-consent-banner","version":"1.0.1","keywords":["cookie","consent","gdpr","privacy","banner","es6","module","localization","third-party"],"author":{"url":"https://b1project.com","name":"Cyril Bosselut","email":"contact@b1project.com"},"license":"MIT","_id":"@bossone0013/nu-cookie-consent-banner@1.0.1","maintainers":[{"name":"bossone0013","email":"contact@b1project.com"}],"homepage":"https://github.com/BOSSoNe0013/CookieConsentBanner#readme","bugs":{"url":"https://github.com/BOSSoNe0013/CookieConsentBanner/issues"},"dist":{"shasum":"6b1965bf17c3c4426dd51e4e3c8b24c66658d88a","tarball":"https://registry.npmjs.org/@bossone0013/nu-cookie-consent-banner/-/nu-cookie-consent-banner-1.0.1.tgz","fileCount":13,"integrity":"sha512-3wyWQ+g5nj/BeeEqMs6smEfqNOpnmJw6id0JHaJ2iwbS9lGSnUMxjSe0SWZ+O13eoXG2d6FS5MbSfAzq0jWCJg==","signatures":[{"sig":"MEUCIQDblm29sSDskq2ZOb1+TG/682nlcTi0rY8ZEUFjf7S7XgIgGLl38CIaUTkkDrfxDczIlsr5kPKGoCSO4dnZpQzoOoI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134423},"main":"src/cookieConsentBanner.js","types":"src/cookieConsentBanner.d.ts","module":"src/cookieConsentBanner.js","gitHead":"1e790e1de212dda952137b07dcd5e4260787fc20","scripts":{"dev":"live-server demo/","demo":"npm run build && live-server demo/","lint":"eslint src/","test":"jest","build":"npm run build:js && npm run build:css","build:js":"terser src/cookieConsentBanner.js -o src/cookieConsentBanner.min.js --compress --mangle","lint:fix":"eslint src/ --fix","build:css":"cleancss -o css/cookie-consent.min.css css/cookie-consent.css","typecheck":"tsc --noEmit","test:watch":"jest --watch","test:single":"jest --testPathPattern="},"_npmUser":{"name":"bossone0013","email":"contact@b1project.com"},"repository":{"url":"git+https://github.com/BOSSoNe0013/CookieConsentBanner.git","type":"git"},"_npmVersion":"9.5.0","description":"A comprehensive GDPR-compliant cookie consent banner ES6 module with localization support and third-party integrations","directories":{"test":"tests"},"_nodeVersion":"20.19.4","dependencies":{"co":"^4.6.0","ms":"^2.1.3","ws":"^8.18.3","ajv":"^6.12.6","opn":"^6.0.0","ret":"^0.1.15","use":"^3.1.1","atob":"^2.1.2","base":"^0.11.2","bser":"^2.1.1","cors":"^2.8.5","depd":"^2.0.0","etag":"^1.8.1","exit":"^0.1.2","from":"^0.1.7","glob":"^7.2.3","keyv":"^4.5.4","levn":"^0.4.1","once":"^1.4.0","send":"^1.2.0","tmpl":"^1.0.5","tr46":"^5.1.1","urix":"^0.1.0","uuid":"^3.4.0","vary":"^1.1.2","y18n":"^5.0.8","acorn":"^8.15.0","batch":"^0.6.1","chalk":"^4.1.2","cliui":"^8.0.1","debug":"^4.4.3","execa":"^5.1.1","fastq":"^1.19.1","fresh":"^2.0.0","isexe":"^2.0.0","jsdom":"^26.1.0","jsesc":"^3.1.0","json5":"^2.2.3","kleur":"^3.0.3","leven":"^3.1.0","mdurl":"^1.0.1","p-try":"^2.2.0","saxes":"^6.0.0","slash":"^3.0.0","split":"^0.3.3","tldts":"^6.1.86","upath":"^1.2.0","which":"^2.0.2","yargs":"^17.7.2","braces":"^3.0.3","colors":"^1.4.0","dedent":"^1.7.0","espree":"^9.6.1","expect":"^29.7.0","for-in":"^1.0.2","hasown":"^2.0.2","ignore":"^5.3.2","is-wsl":"^1.1.0","morgan":"^1.10.1","nwsapi":"^2.2.22","parse5":"^7.3.0","rimraf":"^3.0.2","semver":"^6.3.1","unpipe":"^1.0.0","uri-js":"^4.4.1","walker":"^1.0.8","wrappy":"^1.0.2","accepts":"^1.3.8","ci-info":"^3.9.0","connect":"^3.7.0","deep-is":"^0.1.4","esprima":"^4.0.1","esquery":"^1.6.0","esutils":"^2.0.3","extglob":"^2.0.4","find-up":"^5.0.0","flatted":"^3.3.3","gensync":"^1.0.0-beta.2","globals":"^13.24.0","is-glob":"^4.0.3","isarray":"^1.0.0","js-yaml":"^4.1.0","kind-of":"^4.0.0","mime-db":"^1.54.0","onetime":"^5.1.2","p-limit":"^3.1.0","pirates":"^4.0.7","pkg-dir":"^4.2.0","prompts":"^2.4.2","resolve":"^1.22.11","reusify":"^1.1.0","through":"^2.3.8","yallist":"^3.1.1","anymatch":"^3.1.3","argparse":"^2.0.1","arr-diff":"^4.0.0","bcryptjs":"^2.4.3","chokidar":"^3.6.0","cssstyle":"^4.6.0","doctrine":"^3.0.0","duplexer":"^0.1.2","ee-first":"^1.1.1","emittery":"^0.13.1","entities":"^3.0.1","error-ex":"^1.3.4","escalade":"^3.2.0","has-flag":"^4.0.0","inflight":"^1.0.6","inherits":"^2.0.4","isobject":"^3.0.1","jest-cli":"^29.7.0","make-dir":"^4.0.0","mimic-fn":"^2.1.0","p-locate":"^5.0.0","parseurl":"^1.3.3","path-key":"^3.1.1","punycode":"^2.3.1","react-is":"^18.3.1","readdirp":"^3.6.0","regjsgen":"^0.8.0","statuses":"^1.5.0","to-regex":"^3.0.2","uc.micro":"^1.0.6","xmlchars":"^2.2.0","acorn-jsx":"^5.3.2","arr-union":"^3.1.0","callsites":"^3.1.0","camelcase":"^5.3.1","clean-css":"^5.3.3","commander":"^7.2.0","data-urls":"^5.0.0","deepmerge":"^4.3.1","encodeurl":"^1.0.2","esrecurse":"^4.3.0","get-value":"^2.0.6","graphemer":"^1.4.0","has-value":"^1.0.0","http-auth":"^3.1.3","is-buffer":"^1.1.6","is-number":"^7.0.0","is-stream":"^2.0.1","jest-diff":"^29.7.0","jest-each":"^29.7.0","jest-mock":"^29.7.0","jest-util":"^29.7.0","js-tokens":"^4.0.0","lru-cache":"^5.1.1","makeerror":"^1.0.12","map-cache":"^0.2.2","map-visit":"^1.0.0","minimatch":"^3.1.2","nanomatch":"^1.2.13","picomatch":"^2.3.1","pure-rand":"^6.1.0","regex-not":"^1.0.2","set-value":"^2.0.1","strip-bom":"^4.0.0","type-fest":"^0.20.2","word-wrap":"^1.2.5","wrap-ansi":"^7.0.0","agent-base":"^7.1.4","ansi-regex":"^5.0.1","apache-md5":"^1.1.8","async-each":"^1.0.6","basic-auth":"^2.0.1","cache-base":"^1.0.1","char-regex":"^1.0.2","color-name":"^1.1.4","concat-map":"^0.0.1","decimal.js":"^10.6.0","estraverse":"^5.3.0","fill-range":"^7.1.1","flat-cache":"^3.2.0","get-stream":"^6.0.1","has-values":"^1.0.0","iconv-lite":"^0.6.3","is-extglob":"^2.1.1","is-windows":"^1.0.2","linkify-it":"^4.0.1","map-stream":"^0.1.0","micromatch":"^4.0.8","mime-types":"^3.0.1","mixin-deep":"^1.3.2","negotiator":"^0.6.3","node-int64":"^0.4.0","on-headers":"^1.1.0","optionator":"^0.9.4","parse-json":"^5.2.0","pascalcase":"^0.1.1","path-parse":"^1.0.7","picocolors":"^1.1.1","prelude-ls":"^1.2.1","regenerate":"^1.4.2","safe-regex":"^1.1.0","sisteransi":"^1.0.5","snapdragon":"^0.8.2","source-map":"^0.6.1","sprintf-js":"^1.0.3","strip-ansi":"^6.0.1","text-table":"^0.2.0","tldts-core":"^6.1.86","type-check":"^0.4.0","whatwg-url":"^14.2.0","ansi-styles":"^4.3.0","arr-flatten":"^1.1.0","buffer-from":"^1.1.2","class-utils":"^0.3.6","create-jest":"^29.7.0","cross-spawn":"^7.0.6","emoji-regex":"^8.0.0","escape-html":"^1.0.3","fb-watchman":"^2.0.2","fs.realpath":"^1.0.0","glob-parent":"^5.1.2","graceful-fs":"^4.2.11","http-errors":"^2.0.0","imurmurhash":"^0.1.4","is-arrayish":"^0.2.1","jest-circus":"^29.7.0","jest-config":"^29.7.0","jest-runner":"^29.7.0","jest-worker":"^29.7.0","json-buffer":"^3.0.1","locate-path":"^6.0.0","object-copy":"^0.1.0","object.pick":"^1.3.0","on-finished":"^2.3.0","path-exists":"^4.0.0","regjsparser":"^0.13.0","resolve-cwd":"^3.0.0","resolve-url":"^0.2.1","rrweb-cssom":"^0.8.0","safe-buffer":"^5.1.2","serve-index":"^1.9.1","signal-exit":"^3.0.7","stack-utils":"^2.0.6","symbol-tree":"^3.2.4","type-detect":"^4.0.8","union-value":"^1.0.1","unset-value":"^1.0.0","utils-merge":"^1.0.1","yocto-queue":"^0.1.0","ansi-escapes":"^4.3.2","apache-crypt":"^1.2.6","array-unique":"^0.3.2","browserslist":"^4.27.0","caniuse-lite":"^1.0.30001753","core-util-is":"^1.0.3","eslint-scope":"^7.2.2","event-stream":"^3.3.4","finalhandler":"^1.1.2","html-escaper":"^2.0.2","import-fresh":"^3.3.1","import-local":"^3.2.0","jest-resolve":"^29.7.0","jest-runtime":"^29.7.0","jest-watcher":"^29.7.0","lodash.merge":"^4.6.2","merge-stream":"^2.0.0","npm-run-path":"^4.0.1","object-visit":"^1.0.1","path-dirname":"^1.0.2","pause-stream":"^0.0.11","range-parser":"^1.2.1","regexpu-core":"^6.4.0","resolve-from":"^4.0.0","run-parallel":"^1.2.0","safer-buffer":"^2.1.2","split-string":"^3.1.0","string-width":"^4.2.3","test-exclude":"^6.0.0","toidentifier":"^1.0.1","tough-cookie":"^5.1.2","undici-types":"^7.16.0","yargs-parser":"^21.1.1","color-convert":"^2.0.1","function-bind":"^1.1.2","human-signals":"^2.1.0","is-descriptor":"^0.1.7","is-extendable":"^0.1.1","jest-docblock":"^29.7.0","jest-get-type":"^29.6.3","jest-snapshot":"^29.7.0","jest-validate":"^29.7.0","node-releases":"^2.0.27","object-assign":"^4.1.1","parent-module":"^1.0.1","pretty-format":"^29.7.0","repeat-string":"^1.6.1","shebang-regex":"^3.0.0","static-extend":"^0.1.2","string-length":"^4.0.2","assign-symbols":"^1.0.0","balanced-match":"^1.0.2","core-js-compat":"^3.46.0","detect-newline":"^3.1.0","diff-sequences":"^29.6.3","extend-shallow":"^2.0.1","faye-websocket":"^0.11.4","fragment-cache":"^0.2.1","http-parser-js":"^0.5.10","is-binary-path":"^2.1.0","is-core-module":"^2.16.1","is-path-inside":"^3.0.3","jest-haste-map":"^29.7.0","normalize-path":"^3.0.0","repeat-element":"^1.1.4","setprototypeof":"^1.2.0","source-map-url":"^0.4.1","string_decoder":"^1.1.1","supports-color":"^7.2.0","to-object-path":"^0.3.0","to-regex-range":"^5.0.1","util-deprecate":"^1.0.2","v8-to-istanbul":"^9.3.0","brace-expansion":"^1.1.12","copy-descriptor":"^0.1.1","define-property":"^0.2.5","expand-brackets":"^2.1.4","fast-deep-equal":"^3.1.3","get-caller-file":"^2.0.5","is-generator-fn":"^2.1.0","is-plain-object":"^2.0.4","jest-regex-util":"^29.6.3","lodash.debounce":"^4.0.8","natural-compare":"^1.4.0","queue-microtask":"^1.2.3","readable-stream":"^2.3.8","resolve.exports":"^2.0.3","shebang-command":"^2.0.0","snapdragon-node":"^2.1.1","snapdragon-util":"^3.0.1","stream-combiner":"^0.0.4","whatwg-encoding":"^3.1.1","whatwg-mimetype":"^4.0.0","cjs-module-lexer":"^1.4.3","collection-visit":"^1.0.0","fast-levenshtein":"^2.0.6","file-entry-cache":"^6.0.1","get-package-type":"^0.1.0","http-proxy-agent":"^7.0.2","istanbul-reports":"^3.2.0","path-is-absolute":"^1.0.1","proxy-middleware":"^0.15.0","unix-crypt-td-js":"^1.1.4","websocket-driver":"^0.7.4","babel-preset-jest":"^30.2.0","binary-extensions":"^2.3.0","component-emitter":"^1.3.1","https-proxy-agent":"^7.0.6","jest-message-util":"^29.7.0","jest-pnp-resolver":"^1.2.3","lines-and-columns":"^1.2.4","require-directory":"^2.1.1","w3c-xmlserializer":"^5.0.0","write-file-atomic":"^4.0.2","convert-source-map":"^2.0.0","is-data-descriptor":"^1.0.1","jest-changed-files":"^29.7.0","jest-leak-detector":"^29.7.0","jest-matcher-utils":"^29.7.0","source-map-resolve":"^0.5.3","source-map-support":"^0.5.13","webidl-conversions":"^7.0.0","xml-name-validator":"^5.0.0","collect-v8-coverage":"^1.0.3","eslint-visitor-keys":"^3.4.3","istanbul-lib-report":"^3.0.1","strip-final-newline":"^2.0.0","strip-json-comments":"^3.1.1","decode-uri-component":"^0.2.2","electron-to-chromium":"^1.5.245","escape-string-regexp":"^4.0.0","json-schema-traverse":"^0.4.1","process-nextick-args":"^2.0.1","websocket-extensions":"^0.1.4","babel-plugin-istanbul":"^6.1.1","html-encoding-sniffer":"^4.0.0","istanbul-lib-coverage":"^3.2.2","jest-environment-node":"^29.7.0","is-accessor-descriptor":"^1.0.1","update-browserslist-db":"^1.1.4","babel-plugin-jest-hoist":"^30.2.0","is-fullwidth-code-point":"^3.0.0","istanbul-lib-instrument":"^6.0.3","posix-character-classes":"^0.1.1","baseline-browser-mapping":"^2.8.24","istanbul-lib-source-maps":"^4.0.1","jest-resolve-dependencies":"^29.7.0","remove-trailing-separator":"^1.1.0","fast-json-stable-stringify":"^2.1.0","babel-plugin-polyfill-corejs2":"^0.4.14","babel-plugin-polyfill-corejs3":"^0.13.0","json-parse-even-better-errors":"^2.3.1","regenerate-unicode-properties":"^10.2.2","supports-preserve-symlinks-flag":"^1.0.0","babel-preset-current-node-syntax":"^1.2.0","is-potential-custom-element-name":"^1.0.1","babel-plugin-polyfill-regenerator":"^0.6.5","unicode-match-property-ecmascript":"^2.0.0","unicode-property-aliases-ecmascript":"^2.2.0","json-stable-stringify-without-jsonify":"^1.0.1","unicode-match-property-value-ecmascript":"^2.2.1","unicode-canonical-property-names-ecmascript":"^2.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","eslint":"^8.0.0","terser":"^5.0.0","babel-jest":"^30.2.0","typescript":"^5.0.0","@babel/core":"^7.28.5","live-server":"^1.2.2","markdown-it":"^13.0.1","clean-css-cli":"^5.6.2","@babel/preset-env":"^7.28.5","@types/markdown-it":"^12.2.3","jest-environment-jsdom":"^30.2.0"},"peerDependencies":{"markdown-it":"^13.0.1"},"_npmOperationalInternal":{"tmp":"tmp/nu-cookie-consent-banner_1.0.1_1762439209483_0.9059405860201792","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bossone0013/nu-cookie-consent-banner","version":"1.0.2","keywords":["cookie","consent","gdpr","privacy","banner","es6","module","localization","third-party"],"author":{"url":"https://b1project.com","name":"Cyril Bosselut","email":"contact@b1project.com"},"license":"MIT","_id":"@bossone0013/nu-cookie-consent-banner@1.0.2","maintainers":[{"name":"bossone0013","email":"contact@b1project.com"}],"homepage":"https://github.com/BOSSoNe0013/CookieConsentBanner#readme","bugs":{"url":"https://github.com/BOSSoNe0013/CookieConsentBanner/issues"},"dist":{"shasum":"eb2e7d675c19ce6f2f8232f457035deb4b758e5c","tarball":"https://registry.npmjs.org/@bossone0013/nu-cookie-consent-banner/-/nu-cookie-consent-banner-1.0.2.tgz","fileCount":13,"integrity":"sha512-gytIgDSCU5ANJEfZ9GlSRJVHGYAVnNEubU9ZuKb6Qouk8Q7vhdRWKCVZ12bVSk7udnxZemjllZ2MF+Us3wZcaw==","signatures":[{"sig":"MEQCIGxM6aFHgOSqM7Sh5PkkHKYi3LTFarhFdkOEtNfc3TKoAiATV2wBXBoXyEyWNGCx2HBIsnGMgzLevY+8jUNyk8CHsw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134341},"main":"src/cookieConsentBanner.js","types":"src/cookieConsentBanner.d.ts","module":"src/cookieConsentBanner.js","gitHead":"7d6e8dd7d6c348d9f2c90e0c09c347bf60265ad4","scripts":{"dev":"live-server demo/","demo":"npm run build && live-server demo/","lint":"eslint src/","test":"jest","build":"npm run build:js && npm run build:css","build:js":"terser src/cookieConsentBanner.js -o src/cookieConsentBanner.min.js --compress --mangle","lint:fix":"eslint src/ --fix","build:css":"cleancss -o css/cookie-consent.min.css css/cookie-consent.css","typecheck":"tsc --noEmit","test:watch":"jest --watch","test:single":"jest --testPathPattern="},"_npmUser":{"name":"bossone0013","email":"contact@b1project.com"},"repository":{"url":"git+https://github.com/BOSSoNe0013/CookieConsentBanner.git","type":"git"},"_npmVersion":"9.5.0","description":"A comprehensive GDPR-compliant cookie consent banner ES6 module with localization support and third-party integrations","directories":{"test":"tests"},"_nodeVersion":"20.19.4","dependencies":{"co":"^4.6.0","ms":"^2.1.3","ws":"^8.18.3","ajv":"^6.12.6","opn":"^6.0.0","ret":"^0.1.15","use":"^3.1.1","atob":"^2.1.2","base":"^0.11.2","bser":"^2.1.1","cors":"^2.8.5","depd":"^2.0.0","etag":"^1.8.1","exit":"^0.1.2","from":"^0.1.7","glob":"^7.2.3","keyv":"^4.5.4","levn":"^0.4.1","once":"^1.4.0","send":"^1.2.0","tmpl":"^1.0.5","tr46":"^5.1.1","urix":"^0.1.0","uuid":"^3.4.0","vary":"^1.1.2","y18n":"^5.0.8","acorn":"^8.15.0","batch":"^0.6.1","chalk":"^4.1.2","cliui":"^8.0.1","debug":"^4.4.3","execa":"^5.1.1","fastq":"^1.19.1","fresh":"^2.0.0","isexe":"^2.0.0","jsdom":"^26.1.0","jsesc":"^3.1.0","json5":"^2.2.3","kleur":"^3.0.3","leven":"^3.1.0","mdurl":"^1.0.1","p-try":"^2.2.0","saxes":"^6.0.0","slash":"^3.0.0","split":"^0.3.3","tldts":"^6.1.86","upath":"^1.2.0","which":"^2.0.2","yargs":"^17.7.2","braces":"^3.0.3","colors":"^1.4.0","dedent":"^1.7.0","espree":"^9.6.1","expect":"^29.7.0","for-in":"^1.0.2","hasown":"^2.0.2","ignore":"^5.3.2","is-wsl":"^1.1.0","morgan":"^1.10.1","nwsapi":"^2.2.22","parse5":"^7.3.0","rimraf":"^3.0.2","semver":"^6.3.1","unpipe":"^1.0.0","uri-js":"^4.4.1","walker":"^1.0.8","wrappy":"^1.0.2","accepts":"^1.3.8","ci-info":"^3.9.0","connect":"^3.7.0","deep-is":"^0.1.4","esprima":"^4.0.1","esquery":"^1.6.0","esutils":"^2.0.3","extglob":"^2.0.4","find-up":"^5.0.0","flatted":"^3.3.3","gensync":"^1.0.0-beta.2","globals":"^13.24.0","is-glob":"^4.0.3","isarray":"^1.0.0","js-yaml":"^4.1.0","kind-of":"^4.0.0","mime-db":"^1.54.0","onetime":"^5.1.2","p-limit":"^3.1.0","pirates":"^4.0.7","pkg-dir":"^4.2.0","prompts":"^2.4.2","resolve":"^1.22.11","reusify":"^1.1.0","through":"^2.3.8","yallist":"^3.1.1","anymatch":"^3.1.3","argparse":"^2.0.1","arr-diff":"^4.0.0","bcryptjs":"^2.4.3","chokidar":"^3.6.0","cssstyle":"^4.6.0","doctrine":"^3.0.0","duplexer":"^0.1.2","ee-first":"^1.1.1","emittery":"^0.13.1","entities":"^3.0.1","error-ex":"^1.3.4","escalade":"^3.2.0","has-flag":"^4.0.0","inflight":"^1.0.6","inherits":"^2.0.4","isobject":"^3.0.1","jest-cli":"^29.7.0","make-dir":"^4.0.0","mimic-fn":"^2.1.0","p-locate":"^5.0.0","parseurl":"^1.3.3","path-key":"^3.1.1","punycode":"^2.3.1","react-is":"^18.3.1","readdirp":"^3.6.0","regjsgen":"^0.8.0","statuses":"^1.5.0","to-regex":"^3.0.2","uc.micro":"^1.0.6","xmlchars":"^2.2.0","acorn-jsx":"^5.3.2","arr-union":"^3.1.0","callsites":"^3.1.0","camelcase":"^5.3.1","clean-css":"^5.3.3","commander":"^7.2.0","data-urls":"^5.0.0","deepmerge":"^4.3.1","encodeurl":"^1.0.2","esrecurse":"^4.3.0","get-value":"^2.0.6","graphemer":"^1.4.0","has-value":"^1.0.0","http-auth":"^3.2.4","is-buffer":"^1.1.6","is-number":"^7.0.0","is-stream":"^2.0.1","jest-diff":"^29.7.0","jest-each":"^29.7.0","jest-mock":"^29.7.0","jest-util":"^29.7.0","js-tokens":"^4.0.0","lru-cache":"^5.1.1","makeerror":"^1.0.12","map-cache":"^0.2.2","map-visit":"^1.0.0","minimatch":"^3.1.2","nanomatch":"^1.2.13","picomatch":"^2.3.1","pure-rand":"^6.1.0","regex-not":"^1.0.2","set-value":"^2.0.1","strip-bom":"^4.0.0","type-fest":"^0.20.2","word-wrap":"^1.2.5","wrap-ansi":"^7.0.0","agent-base":"^7.1.4","ansi-regex":"^5.0.1","apache-md5":"^1.1.8","async-each":"^1.0.6","basic-auth":"^2.0.1","cache-base":"^1.0.1","char-regex":"^1.0.2","color-name":"^1.1.4","concat-map":"^0.0.1","decimal.js":"^10.6.0","estraverse":"^5.3.0","fill-range":"^7.1.1","flat-cache":"^3.2.0","get-stream":"^6.0.1","has-values":"^1.0.0","iconv-lite":"^0.6.3","is-extglob":"^2.1.1","is-windows":"^1.0.2","linkify-it":"^4.0.1","map-stream":"^0.1.0","micromatch":"^4.0.8","mime-types":"^3.0.1","mixin-deep":"^1.3.2","negotiator":"^0.6.4","node-int64":"^0.4.0","on-headers":"^1.1.0","optionator":"^0.9.4","parse-json":"^5.2.0","pascalcase":"^0.1.1","path-parse":"^1.0.7","picocolors":"^1.1.1","prelude-ls":"^1.2.1","regenerate":"^1.4.2","safe-regex":"^1.1.0","sisteransi":"^1.0.5","snapdragon":"^0.8.2","source-map":"^0.6.1","sprintf-js":"^1.1.3","strip-ansi":"^6.0.1","text-table":"^0.2.0","tldts-core":"^6.1.86","type-check":"^0.4.0","whatwg-url":"^14.2.0","ansi-styles":"^4.3.0","arr-flatten":"^1.1.0","buffer-from":"^1.1.2","class-utils":"^0.3.6","create-jest":"^29.7.0","cross-spawn":"^7.0.6","emoji-regex":"^8.0.0","escape-html":"^1.0.3","fb-watchman":"^2.0.2","fs.realpath":"^1.0.0","glob-parent":"^5.1.2","graceful-fs":"^4.2.11","http-errors":"^2.0.0","imurmurhash":"^0.1.4","is-arrayish":"^0.2.1","jest-circus":"^29.7.0","jest-config":"^29.7.0","jest-runner":"^29.7.0","jest-worker":"^29.7.0","json-buffer":"^3.0.1","locate-path":"^6.0.0","object-copy":"^0.1.0","object.pick":"^1.3.0","on-finished":"^2.4.1","path-exists":"^4.0.0","regjsparser":"^0.13.0","resolve-cwd":"^3.0.0","resolve-url":"^0.2.1","rrweb-cssom":"^0.8.0","safe-buffer":"^5.2.1","serve-index":"^1.9.1","signal-exit":"^3.0.7","stack-utils":"^2.0.6","symbol-tree":"^3.2.4","type-detect":"^4.1.0","union-value":"^1.0.1","unset-value":"^1.0.0","utils-merge":"^1.0.1","yocto-queue":"^0.1.0","ansi-escapes":"^4.3.2","apache-crypt":"^1.2.6","array-unique":"^0.3.2","browserslist":"^4.27.0","caniuse-lite":"^1.0.30001754","core-util-is":"^1.0.3","eslint-scope":"^7.2.2","event-stream":"^3.3.5","finalhandler":"^1.3.1","html-escaper":"^2.0.2","import-fresh":"^3.3.1","import-local":"^3.2.0","jest-resolve":"^29.7.0","jest-runtime":"^29.7.0","jest-watcher":"^29.7.0","lodash.merge":"^4.6.2","merge-stream":"^2.0.0","npm-run-path":"^4.0.1","object-visit":"^1.0.1","path-dirname":"^1.0.2","pause-stream":"^0.0.11","range-parser":"^1.2.1","regexpu-core":"^6.4.0","resolve-from":"^4.0.0","run-parallel":"^1.2.0","safer-buffer":"^2.1.2","split-string":"^3.1.0","string-width":"^4.2.3","test-exclude":"^6.0.0","toidentifier":"^1.0.1","tough-cookie":"^5.1.2","undici-types":"^7.16.0","yargs-parser":"^21.1.1","color-convert":"^2.0.1","function-bind":"^1.1.2","human-signals":"^2.1.0","is-descriptor":"^0.1.7","is-extendable":"^0.1.1","jest-docblock":"^29.7.0","jest-get-type":"^29.6.3","jest-snapshot":"^29.7.0","jest-validate":"^29.7.0","node-releases":"^2.0.27","object-assign":"^4.1.1","parent-module":"^1.0.1","pretty-format":"^29.7.0","repeat-string":"^1.6.1","shebang-regex":"^3.0.0","static-extend":"^0.1.2","string-length":"^4.0.2","assign-symbols":"^1.0.0","balanced-match":"^1.0.2","core-js-compat":"^3.46.0","detect-newline":"^3.1.0","diff-sequences":"^29.6.3","extend-shallow":"^2.0.1","faye-websocket":"^0.11.4","fragment-cache":"^0.2.1","http-parser-js":"^0.5.10","is-binary-path":"^2.1.0","is-core-module":"^2.16.1","is-path-inside":"^3.0.3","jest-haste-map":"^29.7.0","normalize-path":"^3.0.0","repeat-element":"^1.1.4","setprototypeof":"^1.2.0","source-map-url":"^0.4.1","string_decoder":"^1.3.0","supports-color":"^7.2.0","to-object-path":"^0.3.0","to-regex-range":"^5.0.1","util-deprecate":"^1.0.2","v8-to-istanbul":"^9.3.0","brace-expansion":"^1.1.12","copy-descriptor":"^0.1.1","define-property":"^0.2.5","expand-brackets":"^2.1.4","fast-deep-equal":"^3.1.3","get-caller-file":"^2.0.5","is-generator-fn":"^2.1.0","is-plain-object":"^2.0.4","jest-regex-util":"^29.6.3","lodash.debounce":"^4.0.8","natural-compare":"^1.4.0","queue-microtask":"^1.2.3","readable-stream":"^2.3.8","resolve.exports":"^2.0.3","shebang-command":"^2.0.0","snapdragon-node":"^2.1.1","snapdragon-util":"^3.0.1","stream-combiner":"^0.0.4","whatwg-encoding":"^3.1.1","whatwg-mimetype":"^4.0.0","cjs-module-lexer":"^1.4.3","collection-visit":"^1.0.0","fast-levenshtein":"^2.0.6","file-entry-cache":"^6.0.1","get-package-type":"^0.1.0","http-proxy-agent":"^7.0.2","istanbul-reports":"^3.2.0","path-is-absolute":"^1.0.1","proxy-middleware":"^0.15.0","unix-crypt-td-js":"^1.1.4","websocket-driver":"^0.7.4","babel-preset-jest":"^30.2.0","binary-extensions":"^2.3.0","component-emitter":"^1.3.1","https-proxy-agent":"^7.0.6","jest-message-util":"^29.7.0","jest-pnp-resolver":"^1.2.3","lines-and-columns":"^1.2.4","require-directory":"^2.1.1","w3c-xmlserializer":"^5.0.0","write-file-atomic":"^4.0.2","convert-source-map":"^2.0.0","is-data-descriptor":"^1.0.1","jest-changed-files":"^29.7.0","jest-leak-detector":"^29.7.0","jest-matcher-utils":"^29.7.0","source-map-resolve":"^0.5.3","source-map-support":"^0.5.21","webidl-conversions":"^7.0.0","xml-name-validator":"^5.0.0","collect-v8-coverage":"^1.0.3","eslint-visitor-keys":"^3.4.3","istanbul-lib-report":"^3.0.1","strip-final-newline":"^2.0.0","strip-json-comments":"^3.1.1","decode-uri-component":"^0.2.2","electron-to-chromium":"^1.5.245","escape-string-regexp":"^4.0.0","json-schema-traverse":"^0.4.1","process-nextick-args":"^2.0.1","websocket-extensions":"^0.1.4","babel-plugin-istanbul":"^6.1.1","html-encoding-sniffer":"^4.0.0","istanbul-lib-coverage":"^3.2.2","jest-environment-node":"^29.7.0","is-accessor-descriptor":"^1.0.1","update-browserslist-db":"^1.1.4","babel-plugin-jest-hoist":"^30.2.0","is-fullwidth-code-point":"^3.0.0","istanbul-lib-instrument":"^6.0.3","posix-character-classes":"^0.1.1","baseline-browser-mapping":"^2.8.25","istanbul-lib-source-maps":"^4.0.1","jest-resolve-dependencies":"^29.7.0","remove-trailing-separator":"^1.1.0","fast-json-stable-stringify":"^2.1.0","babel-plugin-polyfill-corejs2":"^0.4.14","babel-plugin-polyfill-corejs3":"^0.13.0","json-parse-even-better-errors":"^2.3.1","regenerate-unicode-properties":"^10.2.2","supports-preserve-symlinks-flag":"^1.0.0","babel-preset-current-node-syntax":"^1.2.0","is-potential-custom-element-name":"^1.0.1","babel-plugin-polyfill-regenerator":"^0.6.5","unicode-match-property-ecmascript":"^2.0.0","unicode-property-aliases-ecmascript":"^2.2.0","json-stable-stringify-without-jsonify":"^1.0.1","unicode-match-property-value-ecmascript":"^2.2.1","unicode-canonical-property-names-ecmascript":"^2.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","terser":"^5.44.1","babel-jest":"^30.2.0","typescript":"^5.9.3","@babel/core":"^7.28.5","live-server":"^1.2.2","markdown-it":"^13.0.2","clean-css-cli":"^5.6.3","@babel/preset-env":"^7.28.5","@types/markdown-it":"^12.2.3","jest-environment-jsdom":"^30.2.0"},"peerDependencies":{"markdown-it":"^13.0.1"},"_npmOperationalInternal":{"tmp":"tmp/nu-cookie-consent-banner_1.0.2_1762445394921_0.8778818363487386","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bossone0013/nu-cookie-consent-banner","version":"1.0.3","description":"A comprehensive GDPR-compliant cookie consent banner ES6 module with localization support and third-party integrations","main":"src/cookieConsentBanner.js","module":"src/cookieConsentBanner.js","types":"src/cookieConsentBanner.d.ts","scripts":{"build":"npm run build:js && npm run build:css","build:js":"terser src/cookieConsentBanner.js -o src/cookieConsentBanner.min.js --compress --mangle","build:css":"cleancss -o css/cookie-consent.min.css css/cookie-consent.css","test":"jest","test:watch":"jest --watch","test:single":"jest --testPathPattern=","lint":"eslint src/","lint:fix":"eslint src/ --fix","typecheck":"tsc --noEmit","dev":"live-server demo/","demo":"npm run build && live-server demo/"},"keywords":["cookie","consent","gdpr","privacy","banner","es6","module","localization","third-party"],"author":{"name":"Cyril Bosselut","email":"contact@b1project.com","url":"https://b1project.com"},"license":"MIT","peerDependencies":{"markdown-it":"^13.0.1"},"devDependencies":{"@babel/core":"^7.28.5","@babel/preset-env":"^7.28.5","@types/markdown-it":"^12.2.3","babel-jest":"^30.2.0","clean-css-cli":"^5.6.3","eslint":"^8.57.1","jest":"^29.7.0","jest-environment-jsdom":"^30.2.0","live-server":"^1.2.2","markdown-it":"^13.0.2","terser":"^5.44.1","typescript":"^5.9.3"},"repository":{"type":"git","url":"git+https://github.com/BOSSoNe0013/CookieConsentBanner.git"},"bugs":{"url":"https://github.com/BOSSoNe0013/CookieConsentBanner/issues"},"homepage":"https://github.com/BOSSoNe0013/CookieConsentBanner#readme","directories":{"test":"tests"},"dependencies":{"accepts":"^1.3.8","acorn":"^8.15.0","acorn-jsx":"^5.3.2","agent-base":"^7.1.4","ajv":"^6.12.6","ansi-escapes":"^4.3.2","ansi-regex":"^5.0.1","ansi-styles":"^4.3.0","anymatch":"^3.1.3","apache-crypt":"^1.2.6","apache-md5":"^1.1.8","argparse":"^2.0.1","arr-diff":"^4.0.0","arr-flatten":"^1.1.0","arr-union":"^3.1.0","array-unique":"^0.3.2","assign-symbols":"^1.0.0","async-each":"^1.0.6","atob":"^2.1.2","babel-plugin-istanbul":"^6.1.1","babel-plugin-jest-hoist":"^30.2.0","babel-plugin-polyfill-corejs2":"^0.4.14","babel-plugin-polyfill-corejs3":"^0.13.0","babel-plugin-polyfill-regenerator":"^0.6.5","babel-preset-current-node-syntax":"^1.2.0","babel-preset-jest":"^30.2.0","balanced-match":"^1.0.2","base":"^0.11.2","baseline-browser-mapping":"^2.8.25","basic-auth":"^2.0.1","batch":"^0.6.1","bcryptjs":"^2.4.3","binary-extensions":"^2.3.0","brace-expansion":"^1.1.12","braces":"^3.0.3","browserslist":"^4.27.0","bser":"^2.1.1","buffer-from":"^1.1.2","cache-base":"^1.0.1","callsites":"^3.1.0","camelcase":"^5.3.1","caniuse-lite":"^1.0.30001754","chalk":"^4.1.2","char-regex":"^1.0.2","chokidar":"^3.6.0","ci-info":"^3.9.0","cjs-module-lexer":"^1.4.3","class-utils":"^0.3.6","clean-css":"^5.3.3","cliui":"^8.0.1","co":"^4.6.0","collect-v8-coverage":"^1.0.3","collection-visit":"^1.0.0","color-convert":"^2.0.1","color-name":"^1.1.4","colors":"^1.4.0","commander":"^7.2.0","component-emitter":"^1.3.1","concat-map":"^0.0.1","connect":"^3.7.0","convert-source-map":"^2.0.0","copy-descriptor":"^0.1.1","core-js-compat":"^3.46.0","core-util-is":"^1.0.3","cors":"^2.8.5","create-jest":"^29.7.0","cross-spawn":"^7.0.6","cssstyle":"^4.6.0","data-urls":"^5.0.0","debug":"^4.4.3","decimal.js":"^10.6.0","decode-uri-component":"^0.2.2","dedent":"^1.7.0","deep-is":"^0.1.4","deepmerge":"^4.3.1","define-property":"^0.2.5","depd":"^2.0.0","detect-newline":"^3.1.0","diff-sequences":"^29.6.3","doctrine":"^3.0.0","duplexer":"^0.1.2","ee-first":"^1.1.1","electron-to-chromium":"^1.5.245","emittery":"^0.13.1","emoji-regex":"^8.0.0","encodeurl":"^1.0.2","entities":"^3.0.1","error-ex":"^1.3.4","escalade":"^3.2.0","escape-html":"^1.0.3","escape-string-regexp":"^4.0.0","eslint-scope":"^7.2.2","eslint-visitor-keys":"^3.4.3","espree":"^9.6.1","esprima":"^4.0.1","esquery":"^1.6.0","esrecurse":"^4.3.0","estraverse":"^5.3.0","esutils":"^2.0.3","etag":"^1.8.1","event-stream":"^3.3.5","execa":"^5.1.1","exit":"^0.1.2","expand-brackets":"^2.1.4","expect":"^29.7.0","extend-shallow":"^2.0.1","extglob":"^2.0.4","fast-deep-equal":"^3.1.3","fast-json-stable-stringify":"^2.1.0","fast-levenshtein":"^2.0.6","fastq":"^1.19.1","faye-websocket":"^0.11.4","fb-watchman":"^2.0.2","file-entry-cache":"^6.0.1","fill-range":"^7.1.1","finalhandler":"^1.3.1","find-up":"^5.0.0","flat-cache":"^3.2.0","flatted":"^3.3.3","for-in":"^1.0.2","fragment-cache":"^0.2.1","fresh":"^2.0.0","from":"^0.1.7","fs.realpath":"^1.0.0","function-bind":"^1.1.2","gensync":"^1.0.0-beta.2","get-caller-file":"^2.0.5","get-package-type":"^0.1.0","get-stream":"^6.0.1","get-value":"^2.0.6","glob":"^7.2.3","glob-parent":"^5.1.2","globals":"^13.24.0","graceful-fs":"^4.2.11","graphemer":"^1.4.0","has-flag":"^4.0.0","has-value":"^1.0.0","has-values":"^1.0.0","hasown":"^2.0.2","html-encoding-sniffer":"^4.0.0","html-escaper":"^2.0.2","http-auth":"^3.2.4","http-errors":"^2.0.0","http-parser-js":"^0.5.10","http-proxy-agent":"^7.0.2","https-proxy-agent":"^7.0.6","human-signals":"^2.1.0","iconv-lite":"^0.6.3","ignore":"^5.3.2","import-fresh":"^3.3.1","import-local":"^3.2.0","imurmurhash":"^0.1.4","inflight":"^1.0.6","inherits":"^2.0.4","is-accessor-descriptor":"^1.0.1","is-arrayish":"^0.2.1","is-binary-path":"^2.1.0","is-buffer":"^1.1.6","is-core-module":"^2.16.1","is-data-descriptor":"^1.0.1","is-descriptor":"^0.1.7","is-extendable":"^0.1.1","is-extglob":"^2.1.1","is-fullwidth-code-point":"^3.0.0","is-generator-fn":"^2.1.0","is-glob":"^4.0.3","is-number":"^7.0.0","is-path-inside":"^3.0.3","is-plain-object":"^2.0.4","is-potential-custom-element-name":"^1.0.1","is-stream":"^2.0.1","is-windows":"^1.0.2","is-wsl":"^1.1.0","isarray":"^1.0.0","isexe":"^2.0.0","isobject":"^3.0.1","istanbul-lib-coverage":"^3.2.2","istanbul-lib-instrument":"^6.0.3","istanbul-lib-report":"^3.0.1","istanbul-lib-source-maps":"^4.0.1","istanbul-reports":"^3.2.0","jest-changed-files":"^29.7.0","jest-circus":"^29.7.0","jest-cli":"^29.7.0","jest-config":"^29.7.0","jest-diff":"^29.7.0","jest-docblock":"^29.7.0","jest-each":"^29.7.0","jest-environment-node":"^29.7.0","jest-get-type":"^29.6.3","jest-haste-map":"^29.7.0","jest-leak-detector":"^29.7.0","jest-matcher-utils":"^29.7.0","jest-message-util":"^29.7.0","jest-mock":"^29.7.0","jest-pnp-resolver":"^1.2.3","jest-regex-util":"^29.6.3","jest-resolve":"^29.7.0","jest-resolve-dependencies":"^29.7.0","jest-runner":"^29.7.0","jest-runtime":"^29.7.0","jest-snapshot":"^29.7.0","jest-util":"^29.7.0","jest-validate":"^29.7.0","jest-watcher":"^29.7.0","jest-worker":"^29.7.0","js-tokens":"^4.0.0","js-yaml":"^4.1.0","jsdom":"^26.1.0","jsesc":"^3.1.0","json-buffer":"^3.0.1","json-parse-even-better-errors":"^2.3.1","json-schema-traverse":"^0.4.1","json-stable-stringify-without-jsonify":"^1.0.1","json5":"^2.2.3","keyv":"^4.5.4","kind-of":"^4.0.0","kleur":"^3.0.3","leven":"^3.1.0","levn":"^0.4.1","lines-and-columns":"^1.2.4","linkify-it":"^4.0.1","locate-path":"^6.0.0","lodash.debounce":"^4.0.8","lodash.merge":"^4.6.2","lru-cache":"^5.1.1","make-dir":"^4.0.0","makeerror":"^1.0.12","map-cache":"^0.2.2","map-stream":"^0.1.0","map-visit":"^1.0.0","mdurl":"^1.0.1","merge-stream":"^2.0.0","micromatch":"^4.0.8","mime-db":"^1.54.0","mime-types":"^3.0.1","mimic-fn":"^2.1.0","minimatch":"^3.1.2","mixin-deep":"^1.3.2","morgan":"^1.10.1","ms":"^2.1.3","nanomatch":"^1.2.13","natural-compare":"^1.4.0","negotiator":"^0.6.4","node-int64":"^0.4.0","node-releases":"^2.0.27","normalize-path":"^3.0.0","npm-run-path":"^4.0.1","nwsapi":"^2.2.22","object-assign":"^4.1.1","object-copy":"^0.1.0","object-visit":"^1.0.1","object.pick":"^1.3.0","on-finished":"^2.4.1","on-headers":"^1.1.0","once":"^1.4.0","onetime":"^5.1.2","opn":"^6.0.0","optionator":"^0.9.4","p-limit":"^3.1.0","p-locate":"^5.0.0","p-try":"^2.2.0","parent-module":"^1.0.1","parse-json":"^5.2.0","parse5":"^7.3.0","parseurl":"^1.3.3","pascalcase":"^0.1.1","path-dirname":"^1.0.2","path-exists":"^4.0.0","path-is-absolute":"^1.0.1","path-key":"^3.1.1","path-parse":"^1.0.7","pause-stream":"^0.0.11","picocolors":"^1.1.1","picomatch":"^2.3.1","pirates":"^4.0.7","pkg-dir":"^4.2.0","posix-character-classes":"^0.1.1","prelude-ls":"^1.2.1","pretty-format":"^29.7.0","process-nextick-args":"^2.0.1","prompts":"^2.4.2","proxy-middleware":"^0.15.0","punycode":"^2.3.1","pure-rand":"^6.1.0","queue-microtask":"^1.2.3","range-parser":"^1.2.1","react-is":"^18.3.1","readable-stream":"^2.3.8","readdirp":"^3.6.0","regenerate":"^1.4.2","regenerate-unicode-properties":"^10.2.2","regex-not":"^1.0.2","regexpu-core":"^6.4.0","regjsgen":"^0.8.0","regjsparser":"^0.13.0","remove-trailing-separator":"^1.1.0","repeat-element":"^1.1.4","repeat-string":"^1.6.1","require-directory":"^2.1.1","resolve":"^1.22.11","resolve-cwd":"^3.0.0","resolve-from":"^4.0.0","resolve-url":"^0.2.1","resolve.exports":"^2.0.3","ret":"^0.1.15","reusify":"^1.1.0","rimraf":"^3.0.2","rrweb-cssom":"^0.8.0","run-parallel":"^1.2.0","safe-buffer":"^5.2.1","safe-regex":"^1.1.0","safer-buffer":"^2.1.2","saxes":"^6.0.0","semver":"^6.3.1","send":"^1.2.0","serve-index":"^1.9.1","set-value":"^2.0.1","setprototypeof":"^1.2.0","shebang-command":"^2.0.0","shebang-regex":"^3.0.0","signal-exit":"^3.0.7","sisteransi":"^1.0.5","slash":"^3.0.0","snapdragon":"^0.8.2","snapdragon-node":"^2.1.1","snapdragon-util":"^3.0.1","source-map":"^0.6.1","source-map-resolve":"^0.5.3","source-map-support":"^0.5.21","source-map-url":"^0.4.1","split":"^0.3.3","split-string":"^3.1.0","sprintf-js":"^1.1.3","stack-utils":"^2.0.6","static-extend":"^0.1.2","statuses":"^1.5.0","stream-combiner":"^0.0.4","string_decoder":"^1.3.0","string-length":"^4.0.2","string-width":"^4.2.3","strip-ansi":"^6.0.1","strip-bom":"^4.0.0","strip-final-newline":"^2.0.0","strip-json-comments":"^3.1.1","supports-color":"^7.2.0","supports-preserve-symlinks-flag":"^1.0.0","symbol-tree":"^3.2.4","test-exclude":"^6.0.0","text-table":"^0.2.0","through":"^2.3.8","tldts":"^6.1.86","tldts-core":"^6.1.86","tmpl":"^1.0.5","to-object-path":"^0.3.0","to-regex":"^3.0.2","to-regex-range":"^5.0.1","toidentifier":"^1.0.1","tough-cookie":"^5.1.2","tr46":"^5.1.1","type-check":"^0.4.0","type-detect":"^4.1.0","type-fest":"^0.20.2","uc.micro":"^1.0.6","undici-types":"^7.16.0","unicode-canonical-property-names-ecmascript":"^2.0.1","unicode-match-property-ecmascript":"^2.0.0","unicode-match-property-value-ecmascript":"^2.2.1","unicode-property-aliases-ecmascript":"^2.2.0","union-value":"^1.0.1","unix-crypt-td-js":"^1.1.4","unpipe":"^1.0.0","unset-value":"^1.0.0","upath":"^1.2.0","update-browserslist-db":"^1.1.4","uri-js":"^4.4.1","urix":"^0.1.0","use":"^3.1.1","util-deprecate":"^1.0.2","utils-merge":"^1.0.1","uuid":"^3.4.0","v8-to-istanbul":"^9.3.0","vary":"^1.1.2","w3c-xmlserializer":"^5.0.0","walker":"^1.0.8","webidl-conversions":"^7.0.0","websocket-driver":"^0.7.4","websocket-extensions":"^0.1.4","whatwg-encoding":"^3.1.1","whatwg-mimetype":"^4.0.0","whatwg-url":"^14.2.0","which":"^2.0.2","word-wrap":"^1.2.5","wrap-ansi":"^7.0.0","wrappy":"^1.0.2","write-file-atomic":"^4.0.2","ws":"^8.18.3","xml-name-validator":"^5.0.0","xmlchars":"^2.2.0","y18n":"^5.0.8","yallist":"^3.1.1","yargs":"^17.7.2","yargs-parser":"^21.1.1","yocto-queue":"^0.1.0"},"gitHead":"e7741868c8c5cb76058fc09e3037d72496fbf207","_id":"@bossone0013/nu-cookie-consent-banner@1.0.3","_nodeVersion":"20.19.4","_npmVersion":"9.5.0","dist":{"integrity":"sha512-4YNP6SpNvmYrQV7BZyhFfPAIbFwc1Ti9c3V0hmC9RCe2ect2tEXVKomAaDyn8Tjb63whza+orivl1UUpING6WQ==","shasum":"f2b11b3e07fedb59b75588daa9a2d8dd48123100","tarball":"https://registry.npmjs.org/@bossone0013/nu-cookie-consent-banner/-/nu-cookie-consent-banner-1.0.3.tgz","fileCount":13,"unpackedSize":134903,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICxYNe3CrQNeF7ogfnLHlBHROp6bdJAHiDf2B/FijQpGAiEA3H/0SF+7zBA39Dz06wDOpWJNt1i3ECdqMvE8VyuDs3s="}]},"_npmUser":{"name":"bossone0013","email":"contact@b1project.com"},"maintainers":[{"name":"bossone0013","email":"contact@b1project.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nu-cookie-consent-banner_1.0.3_1762448600652_0.7510004776413366"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-06T10:13:47.280Z","modified":"2025-11-06T17:03:21.117Z","1.0.0":"2025-11-06T10:13:47.536Z","1.0.1":"2025-11-06T14:26:49.684Z","1.0.2":"2025-11-06T16:09:55.129Z","1.0.3":"2025-11-06T17:03:20.913Z"},"bugs":{"url":"https://github.com/BOSSoNe0013/CookieConsentBanner/issues"},"author":{"name":"Cyril Bosselut","email":"contact@b1project.com","url":"https://b1project.com"},"license":"MIT","homepage":"https://github.com/BOSSoNe0013/CookieConsentBanner#readme","keywords":["cookie","consent","gdpr","privacy","banner","es6","module","localization","third-party"],"repository":{"type":"git","url":"git+https://github.com/BOSSoNe0013/CookieConsentBanner.git"},"description":"A comprehensive GDPR-compliant cookie consent banner ES6 module with localization support and third-party integrations","maintainers":[{"name":"bossone0013","email":"contact@b1project.com"}],"readme":"# Cookie Consent Banner 🍪\n\nA comprehensive, GDPR-compliant cookie consent banner ES6 module with localization support, third-party integrations, and customizable themes.\n\n## Features\n\n### 🛡️ GDPR & Privacy Compliance\n\n- **Granular consent management** for different cookie categories\n- **Consent withdrawal capability** with easy-to-use management interface\n- **Consent logging** with timestamps and user language\n- **Cookie categorization** (functional, analytical, performance, advertising, social, other)\n- **Third-party cookie blocking** based on user preferences\n\n### 🌍 Localization & Content\n\n- **Auto-detection** of user's browser language\n- **Markdown policy file support** for Privacy Policy, Cookie Policy, and Terms of Use\n- **Custom text overrides** for all interface elements\n- **Multiple language support** with fallback to English\n- **Dynamic policy loading** from localized markdown files\n\n### 🎨 UI & User Experience\n\n- **Three modal types**: banner, fullscreen, and management panel\n- **Policy display modals** for markdown content\n- **CSS custom properties** for easy theming\n- **Responsive design** that works on all devices\n- **Accessibility features** with proper focus management\n- **Smooth animations** with reduced motion support\n\n### 🔧 Technical Features\n\n- **ES6 module** compatible with modern browsers and bundlers\n- **Vanilla JavaScript** with no external dependencies (except markdown-it for policy parsing)\n- **Pre-configured blockers** for common third-party services\n- **Custom handler registration** for any service\n- **API endpoint integration** for consent logging\n- **Cookie expiration** configuration\n\n### 🚀 Third-Party Integrations\n\nBuilt-in support and blocking for:\n\n- Google Analytics\n- Google AdSense & AdWords\n- Facebook SDK\n- Twitter widgets\n- Firebase services\n- Custom handler registration\n\n## Installation\n\n### NPM\n\n```bash\nnpm install cookie-consent-banner\n```\n\n### CDN\n\n```html\n<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@bossone0013/nu-cookie-consent-banner@1.0.1/css/cookie-consent.min.css\">\n<script type=\"module\"> \n  import CookieConsentBanner from 'https://cdn.jsdelivr.net/npm/@bossone0013/nu-cookie-consent-banner@1.0.1/+esm'; \n</script>\n```\n\n### Local Installation\n\n```bash\n# Clone or download the package\n# Install dependencies\nnpm install\n\n# Build for production\nnpm run build\n```\n\n## Quick Start\n\n### Basic Usage\n\n```javascript\nimport CookieConsentBanner from 'cookie-consent-banner';\n\n// Initialize with default configuration\nconst consent = new CookieConsentBanner();\n```\n\n### Custom Configuration\n\n```javascript\nconst config = {\n  // Domain and cookie settings\n  domain: 'example.com',\n  cookieExpiryDays: 365,\n  \n  // Localization\n  locale: 'en',\n  localization: {\n    'en': {\n      'cookieConsent.title': 'Your Custom Title',\n      'cookieConsent.acceptAll': 'Accept All Cookies'\n    }\n  },\n  \n  // Privacy policy URLs\n  privacyPolicyUrl: '/policies/privacy-{locale}.md',\n  cookiePolicyUrl: '/policies/cookies-{locale}.md',\n  termsUrl: '/policies/terms-{locale}.md',\n  \n  // Consent logging\n  consentEndpoint: 'https://api.example.com/consent',\n  customData: {\n    siteId: '12345',\n    userSegment: 'premium'\n  },\n  \n  // Security\n  blockSiteOnFunctionalDeny: false,\n  \n  // Theming\n  theme: {\n    '--ccb-primary-color': '#10b981',\n    '--ccb-primary-hover': '#059669'\n  }\n};\n\nconst consent = new CookieConsentBanner(config);\n```\n\n## API Reference\n\n### Constructor\n\n```javascript\nnew CookieConsentBanner(config)\n```\n\n**Parameters:**\n\n- `config` (Object, optional): Configuration object\n\n**Configuration Options:**\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `domain` | String | `window.location.hostname` | Cookie domain |\n| `subdomains` | Array | `[]` | Array of subdomains |\n| `cookieExpiryDays` | Number | `365` | Cookie expiration in days |\n| `locale` | String | Auto-detect | Default locale |\n| `localization` | Object | `{}` | Custom localization strings |\n| `privacyPolicyUrl` | String | `/locales/{locale}/privacy-policy.md` | Privacy policy URL |\n| `cookiePolicyUrl` | String | `/locales/{locale}/cookie-policy.md` | Cookie policy URL |\n| `termsUrl` | String | `/locales/{locale}/terms.md` | Terms of use URL |\n| `consentEndpoint` | String | - | API endpoint for consent logging |\n| `customData` | Object | `{}` | Custom data to send with consent |\n| `blockSiteOnFunctionalDeny` | Boolean | `false` | Block site if functional cookies denied |\n| `theme` | Object | `{}` | CSS custom properties for theming |\n| `thirdPartyHandlers` | Object | `{}` | Custom third-party handlers |\n\n### Methods\n\n#### `showModal(type)`\n\nShow a consent modal.\n\n```javascript\n// Show different modal types\nconsent.showModal('banner');\nconsent.showModal('fullscreen');\nconsent.showModal('management');\n```\n\n#### `getConsentState()`\n\nGet the current consent state.\n\n```javascript\nconst state = consent.getConsentState();\nconsole.log(state);\n// {\n//   functional: true,\n//   analytical: false,\n//   performance: true,\n//   advertising: false,\n//   social: true,\n//   other: false,\n//   timestamp: \"2023-01-01T00:00:00.000Z\",\n//   language: \"en\"\n// }\n```\n\n#### `hasConsent(category)`\n\nCheck if consent is given for a specific category.\n\n```javascript\nif (consent.hasConsent('analytical')) {\n  // Initialize Google Analytics\n  gtag('config', 'GA_MEASUREMENT_ID');\n}\n```\n\n#### `clearConsent()`\n\nClear all consent data and show banner again.\n\n```javascript\nconsent.clearConsent();\n```\n\n#### `registerThirdPartyHandler(category, handler)`\n\nRegister a custom third-party handler.\n\n```javascript\nconsent.registerThirdPartyHandler('customAnalytics', (enabled) => {\n  if (enabled) {\n    // Initialize custom analytics\n    window.customAnalytics.init();\n  } else {\n    // Disable custom analytics\n    window.customAnalytics.disable();\n  }\n});\n```\n\n## Cookie Categories\n\nThe banner manages six cookie categories:\n\n1. **Functional** (required): Necessary for website functionality\n2. **Analytical**: Website analytics and performance monitoring\n3. **Performance**: Performance optimization and monitoring\n4. **Advertising**: Targeted advertising and marketing\n5. **Social**: Social media integration and features\n6. **Other**: Custom categories for specific needs\n\n## Localization\n\n### Auto-Detection\n\nThe banner automatically detects the user's browser language and uses the appropriate localization.\n\n### Custom Localization\n\n```javascript\nconst localization = {\n  'en': {\n    'cookieConsent.title': 'We value your privacy',\n    'cookieConsent.acceptAll': 'Accept All',\n    'cookieConsent.categories.functional.title': 'Essential Cookies'\n  },\n  'fr': {\n    'cookieConsent.title': 'Nous respectons votre vie privée',\n    'cookieConsent.acceptAll': 'Tout accepter',\n    'cookieConsent.categories.functional.title': 'Cookies essentiels'\n  }\n};\n\nconst consent = new CookieConsentBanner({\n  locale: 'fr',\n  localization: localization\n});\n```\n\n### Policy File Structure\n\nPlace markdown files in the following structure:\n\n```bash\nlocales/\n├── en/\n│   ├── privacy-policy.md\n│   ├── cookie-policy.md\n│   └── terms.md\n└── fr/\n    ├── privacy-policy.md\n    ├── cookie-policy.md\n    └── terms.md\n```\n\n## Theming\n\n### CSS Custom Properties\n\nThe banner uses CSS custom properties for theming:\n\n```javascript\nconst theme = {\n  '--ccb-primary-color': '#2563eb',        // Primary button color\n  '--ccb-primary-hover': '#1d4ed8',        // Primary button hover\n  '--ccb-secondary-color': '#6b7280',      // Secondary button color\n  '--ccb-bg-primary': '#ffffff',           // Primary background\n  '--ccb-text-primary': '#111827',         // Primary text color\n  '--ccb-border-color': '#e5e7eb'          // Border color\n};\n```\n\n### Custom CSS\n\nYou can override styles with custom CSS:\n\n```css\n.ccb-btn--primary {\n  background: linear-gradient(45deg, #ff6b6b, #ee5a24);\n  border: none;\n  border-radius: 25px;\n}\n\n.ccb-modal {\n  backdrop-filter: blur(10px);\n}\n```\n\n## Third-Party Integration\n\n### Built-in Blockers\n\nThe banner automatically blocks common third-party services when consent is not given:\n\n- **Google Analytics**: Blocks GA scripts and removes tracking cookies\n- **Google AdSense**: Removes ad scripts and containers\n- **Facebook**: Blocks Facebook SDK and removes tracking cookies\n- **Twitter**: Removes Twitter widgets and tracking\n- **Firebase**: Blocks Firebase services and tracking\n\n### Custom Handlers\n\nRegister handlers for any third-party service:\n\n```javascript\nconsent.registerThirdPartyHandler('hotjar', (enabled) => {\n  if (enabled) {\n    // Initialize Hotjar\n    (function(h,o,t,j,a,r){\n      // Hotjar initialization code\n    })(window,document,'https://static.hotjar.com/','script','hj');\n  }\n});\n\nconsent.registerThirdPartyHandler('mixpanel', (enabled) => {\n  if (enabled) {\n    mixpanel.init('your-token');\n  } else {\n    mixpanel.disable();\n  }\n});\n```\n\n## API Integration\n\n### Consent Endpoint\n\nSend consent data to your backend:\n\n```javascript\nconst consent = new CookieConsentBanner({\n  consentEndpoint: 'https://api.example.com/consent',\n  customData: {\n    siteId: '12345',\n    userSegment: 'premium',\n    page: 'homepage'\n  }\n});\n```\n\nThe banner will POST the following data:\n\n```json\n{\n  \"token\": \"uuid-v4-string\",\n  \"consentToken\": {\n    \"token\": \"uuid-v4-string\",\n    \"timestamp\": \"2023-01-01T00:00:00.000Z\",\n    \"language\": \"en\",\n    \"siteId\": \"12345\",\n    \"userSegment\": \"premium\",\n    \"page\": \"homepage\"\n  },\n  \"userAgent\": \"Mozilla/5.0...\",\n  \"url\": \"https://example.com/page\"\n}\n```\n\n## Testing\n\n### Run Tests\n\n```bash\nnpm test\n```\n\n### Watch Mode\n\n```bash\nnpm run test:watch\n```\n\n### Single Test File\n\n```bash\nnpm run test:single cookieConsentBanner.test.js\n```\n\n## Building\n\n### Development Build\n\n```bash\nnpm run build\n```\n\nThis creates:\n\n- `src/cookieConsentBanner.js` (ES6 module)\n- `src/cookieConsentBanner.min.js` (minified)\n- `css/cookie-consent.min.css` (minified CSS)\n\n### Individual Builds\n\n```bash\nnpm run build:js  # Build JavaScript only\nnpm run build:css # Build CSS only\n```\n\n## Demo\n\nView the interactive demo:\n\n```bash\nnpm run demo\n```\n\nThe demo showcases:\n\n- All modal types\n- Third-party integration examples\n- Theme customization\n- API usage examples\n- Consent state management\n\n## Browser Support\n\n- ✅ Chrome 60+\n- ✅ Firefox 55+\n- ✅ Safari 12+\n- ✅ Edge 79+\n- ✅ Mobile browsers (iOS Safari, Chrome Mobile)\n\n## GDPR Compliance Features\n\n1. **Granular Consent**: Users can choose which cookie categories to accept\n2. **Easy Withdrawal**: Management panel allows users to change preferences anytime\n3. **Consent Logging**: All consent decisions are logged with timestamps\n4. **Cookie Categorization**: Clear separation of cookie types\n5. **Transparency**: Full disclosure of cookie usage and purposes\n6. **No Pre-checked Boxes**: All non-essential cookies are unchecked by default\n7. **Equal Treatment**: Reject all option is as prominent as accept all\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests for new functionality\n5. Ensure all tests pass\n6. Submit a pull request\n\n## License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n\n## Changelog\n\n### v1.0.0\n\n- Initial release\n- GDPR-compliant cookie consent management\n- Three modal types (banner, fullscreen, management)\n- Localization support with markdown policy files\n- Third-party integration and blocking\n- Custom theming with CSS variables\n- Comprehensive test coverage\n- API endpoint integration\n\n## Support\n\nFor support and questions:\n\n- Create an issue on GitHub\n- Check the demo page for implementation examples\n- Review the API documentation above\n\n## Related\n\n- [GDPR Official Text](https://gdpr.eu/)\n- [Cookie Law Guide](https://cookiepedia.co.uk/cookie-law-cookielaw)\n- [Privacy Policy Generators](https://www.privacypolicies.com/blog/privacy-policy-generator/)\n\n---\n\nMade with ❤️ for privacy-focused web development.\n","readmeFilename":"README.md"}