{"_id":"@anmiles/theme-switcher","_rev":"12-df809d47af6e85b0bf0070770ce41540","name":"@anmiles/theme-switcher","dist-tags":{"latest":"3.0.0"},"versions":{"1.0.0":{"name":"@anmiles/theme-switcher","version":"1.0.0","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@1.0.0","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"681f58d6f3d171ca8b7b9b3fc754560a943233f0","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-1.0.0.tgz","fileCount":38,"integrity":"sha512-2j0B2n4Ze3dlaCpQDyZ428jNTdbu4v4yvJI4S4tsowQeyd+eJpWeZhhk4l1hU30rK7MqfyxDyQ7AEApwlo8oHg==","signatures":[{"sig":"MEQCIE283kD3lsjX1CsLVI8tnXIC0DptcEDtiOjlXzyEdugtAiBAFih4MswbXHZ/YLSi2Q5Cs2eFHsFBuN0KDFle/O/BeQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1327100},"main":"src/index.tsx","engines":{"node":">=18.18.0"},"gitHead":"59f016afb175d16e72fcc9f4d713a16d6e048fa5","scripts":{"dev":"webpack serve --env mode=development --hot --open","lint":"eslint .","test":"jest --verbose","build":"rimraf dist && tsc -p ./tsconfig.build.json --noEmit && webpack --env mode=development && webpack --env mode=production","test:ci":"npm test -- --ci --coverage","lint:fix":"npm run lint -- --fix","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report --nycrc-path ./coverage.config.js -t ./coverage --report-dir ./coverage"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.2.4","description":"Theme switcher for websites","directories":{},"_nodeVersion":"18.19.1","dependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@anmiles/logger":"^7.0.2"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.1.0","jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","webpack":"^5.96.1","ts-loader":"^9.5.1","css-loader":"^7.1.2","typescript":"^5.4.2","@types/jest":"^29.5.12","webpack-cli":"^5.1.4","@types/react":"^18.3.12","style-loader":"^4.0.0","react-refresh":"^0.14.2","webpack-merge":"^6.0.1","eslint-plugin-n":"^16.6.2","@types/react-dom":"^18.3.1","@anmiles/tsconfig":"^3.0.1","eslint-plugin-jest":"^27.9.0","webpack-dev-server":"^5.1.0","eslint-plugin-jsonc":"^2.14.1","eslint-plugin-import":"^2.29.1","eslint-plugin-promise":"^6.1.1","@anmiles/eslint-config":"^7.1.1","@testing-library/react":"^16.0.1","jest-environment-jsdom":"^29.7.0","@stylistic/eslint-plugin":"^1.7.0","react-refresh-typescript":"^2.0.9","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^7.3.1","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^7.3.1","eslint-import-resolver-typescript":"^3.6.1","@pmmmwh/react-refresh-webpack-plugin":"^0.5.15"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_1.0.0_1734267286354_0.26400141496578255","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@anmiles/theme-switcher","version":"1.0.1","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@1.0.1","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"998a5e38495036a996aff66bd7d5795c72dea451","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-1.0.1.tgz","fileCount":38,"integrity":"sha512-Sb2u1UysaYMJbMGjQdWYepDoKt5WcYIKcy4pGbfHlFdkHUzAERqmfFDkb7iyJ9kYDOOe0oql4RGw4qTUFM1rIQ==","signatures":[{"sig":"MEYCIQDtnHrN6meuhd6rjFLSy8KPCkLmcrwNbU7EgrHeZeQCKAIhAOSoGGP3TXnkRCtpdi4O7SW+m8dTTBW1XvRsMmPz6StB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1327176},"main":"src/index.tsx","engines":{"node":">=18.18.0"},"gitHead":"86a70b8ba16b8f34acf3f7a2414236b826fb5503","scripts":{"dev":"webpack serve --env mode=development --hot --open","lint":"eslint .","test":"jest --verbose","build":"rimraf dist && tsc -p ./tsconfig.build.json --noEmit && webpack --env mode=development && webpack --env mode=production","test:ci":"npm test -- --ci --coverage","lint:fix":"npm run lint -- --fix","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report --nycrc-path ./coverage.config.js -t ./coverage --report-dir ./coverage"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.2.4","description":"Theme switcher for websites","directories":{},"_nodeVersion":"18.19.1","dependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@anmiles/logger":"^7.0.2"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.1.0","jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","webpack":"^5.96.1","ts-loader":"^9.5.1","css-loader":"^7.1.2","typescript":"^5.4.2","@types/jest":"^29.5.12","webpack-cli":"^5.1.4","@types/react":"^18.3.12","style-loader":"^4.0.0","react-refresh":"^0.14.2","webpack-merge":"^6.0.1","eslint-plugin-n":"^16.6.2","@types/react-dom":"^18.3.1","@anmiles/tsconfig":"^3.0.1","eslint-plugin-jest":"^27.9.0","webpack-dev-server":"^5.1.0","eslint-plugin-jsonc":"^2.14.1","eslint-plugin-import":"^2.29.1","eslint-plugin-promise":"^6.1.1","@anmiles/eslint-config":"^7.1.1","@testing-library/react":"^16.0.1","jest-environment-jsdom":"^29.7.0","@stylistic/eslint-plugin":"^1.7.0","react-refresh-typescript":"^2.0.9","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^7.3.1","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^7.3.1","eslint-import-resolver-typescript":"^3.6.1","@pmmmwh/react-refresh-webpack-plugin":"^0.5.15"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_1.0.1_1734267559176_0.8081300675239642","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@anmiles/theme-switcher","version":"1.0.2","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@1.0.2","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"2e5ffe30e414235bcb3adc864c2be9adff2d6c17","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-1.0.2.tgz","fileCount":38,"integrity":"sha512-R4aZ07lSl5o55RV+Ok/g/jZThG1KKF6PCyOXB9OaUiv3iJiTPZSNYUasaDdxEcz+KjWN/GpnjFKcboU1BkclZg==","signatures":[{"sig":"MEYCIQDFg5SsIUfuWDFvkowMOdo65su8cs66FFJEl59AcO5AmwIhAOD66kdz4a2ZR0T262FoikmSFSd1c5utGPIlI/j84PxV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1327155},"main":"src/index.tsx","engines":{"node":">=18.18.0"},"gitHead":"a389fbd1cd18652781a2dff530448cb945e0d5b0","scripts":{"dev":"webpack serve --env mode=development --hot --open","lint":"eslint .","test":"jest --verbose","build":"rimraf dist && tsc -p ./tsconfig.build.json --noEmit && webpack --env mode=development && webpack --env mode=production","test:ci":"npm test -- --ci --coverage","lint:fix":"npm run lint -- --fix","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report --nycrc-path ./coverage.config.js -t ./coverage --report-dir ./coverage"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.2.4","description":"Theme switcher for websites","directories":{},"_nodeVersion":"18.19.1","dependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@anmiles/logger":"^7.0.2"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.1.0","jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","webpack":"^5.96.1","ts-loader":"^9.5.1","css-loader":"^7.1.2","typescript":"^5.4.2","@types/jest":"^29.5.12","webpack-cli":"^5.1.4","@types/react":"^18.3.12","style-loader":"^4.0.0","react-refresh":"^0.14.2","webpack-merge":"^6.0.1","eslint-plugin-n":"^16.6.2","@types/react-dom":"^18.3.1","@anmiles/tsconfig":"^3.0.1","eslint-plugin-jest":"^27.9.0","webpack-dev-server":"^5.1.0","eslint-plugin-jsonc":"^2.14.1","eslint-plugin-import":"^2.29.1","eslint-plugin-promise":"^6.1.1","@anmiles/eslint-config":"^7.1.1","@testing-library/react":"^16.0.1","jest-environment-jsdom":"^29.7.0","@stylistic/eslint-plugin":"^1.7.0","react-refresh-typescript":"^2.0.9","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^7.3.1","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^7.3.1","eslint-import-resolver-typescript":"^3.6.1","@pmmmwh/react-refresh-webpack-plugin":"^0.5.15"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_1.0.2_1734268100729_0.9970729651645451","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@anmiles/theme-switcher","version":"2.0.0","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.0","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"4b4c07ab9286e49d984baf899c967727c8b6c004","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.0.tgz","fileCount":38,"integrity":"sha512-R7ho+J6GDFkPiMht2e9ARUxNrK4qw3ytT482BsJk5jTHKuHH6uhb5r51UXkxJQQaHwjHYYVXyXzQTceC7XET5w==","signatures":[{"sig":"MEUCIQD//DtQk82trOQaN0jr9GmXPCob40V/dfffnoQS7gk7UQIgU7NaQrZmonPup5vcUD5baMxaKIZhJ9Al/aS/Xx+OE40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63721},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"6f82d509cf3bf1c2d833ae0835c452f45f603827","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.1.0","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.0","@anmiles/express-tools":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^29.7.0","jiti":"^2.4.2","vite":"^6.3.5","cspell":"^9.0.1","eslint":"^9.27.0","rimraf":"^6.0.1","ts-jest":"^29.3.4","ts-loader":"^9.5.2","@eslint/js":"^9.27.0","css-loader":"^7.1.2","typescript":"^5.8.3","@eslint/css":"^0.8.1","@types/jest":"^29.5.14","@eslint/json":"^0.12.0","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.17.0","@eslint/compat":"^1.2.9","eslint-plugin-n":"^17.18.0","@eslint/markdown":"^6.4.0","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.0","eslint-plugin-jest":"^28.11.0","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^4.4.1","eslint-plugin-import":"^2.31.0","eslint-plugin-i18next":"^6.1.1","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^9.0.0","@testing-library/react":"^16.3.0","jest-environment-jsdom":"^29.7.0","@stylistic/eslint-plugin":"^4.2.0","react-refresh-typescript":"^2.0.10","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.32.1","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.32.1","eslint-import-resolver-typescript":"^4.3.5"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.0_1747583266565_0.38965567971069026","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@anmiles/theme-switcher","version":"2.0.1","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.1","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"ed8b5c4c79e33a0125421791641ab8f470eb4589","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.1.tgz","fileCount":38,"integrity":"sha512-VOdnHCJNXx1CaXxhXZG1gZxs8Or/ETJdJfXc7HuFL2NZe53aN+2zG1uOdP+l77/PWhClUuDcUGdSBzcsUEzGkw==","signatures":[{"sig":"MEUCIQDtVhKmG1BR337Thb4asYjSd4mhpn6aPi+V+3spZeW+YgIgNaVuyuYyrzBZjSKD2Euhv4BakpjG1uX6EwZt95d02+Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63644},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"02b9d593e6db2cb1cebadaf4ac8fcb718d9d6fed","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.1.0","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.1","@anmiles/express-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^30.0.5","jiti":"^2.5.0","vite":"^7.0.6","cspell":"^9.2.0","eslint":"^9.31.0","rimraf":"^6.0.1","ts-jest":"^29.4.0","ts-loader":"^9.5.2","@eslint/js":"^9.31.0","css-loader":"^7.1.2","typescript":"^5.8.3","@eslint/css":"^0.10.0","@types/jest":"^30.0.0","@eslint/json":"^0.13.1","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.17.0","@eslint/compat":"^1.3.1","eslint-plugin-n":"^17.21.0","@eslint/markdown":"^7.1.0","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.0","eslint-plugin-jest":"^29.0.1","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^4.7.0","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.3","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^9.0.3","@testing-library/react":"^16.3.0","jest-environment-jsdom":"^30.0.5","@stylistic/eslint-plugin":"^5.2.2","react-refresh-typescript":"^2.0.10","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.38.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.38.0","eslint-import-resolver-typescript":"^4.4.4"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.1_1753348490101_0.41054835740363527","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@anmiles/theme-switcher","version":"2.0.2","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.2","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"b55ac92da53c47fb9495af9115966eeb3d063654","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.2.tgz","fileCount":38,"integrity":"sha512-MPdZF1U9N274kTPiPGAGh424zCK9qnqQ0gX1JLBGtoojEyX5oxrJwcAg7mN0wTI5jR5aHMTw78zngvQQ3Q7W9g==","signatures":[{"sig":"MEUCIHjKlpuZZXS48PKGG0TO3FvGq5gl9CcTUgQtSnYNhgQvAiEAmdK5WnrdaFY+A08Tjf1repDqRzMrwWFx6keISd8r3K4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63726},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"dfc567e8f5059f3b4fd39b95725224c75ccfb116","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.1.0","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.1","@anmiles/express-tools":"^2.0.3"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^30.0.5","jiti":"^2.5.0","vite":"^7.0.6","cspell":"^9.2.0","eslint":"^9.31.0","rimraf":"^6.0.1","ts-jest":"^29.4.0","ts-loader":"^9.5.2","@eslint/js":"^9.31.0","css-loader":"^7.1.2","typescript":"^5.8.3","@eslint/css":"^0.10.0","@types/jest":"^30.0.0","@eslint/json":"^0.13.1","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.17.0","@eslint/compat":"^1.3.1","eslint-plugin-n":"^17.21.0","@eslint/markdown":"^7.1.0","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.0","eslint-plugin-jest":"^29.0.1","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^4.7.0","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.3","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^9.0.3","@testing-library/react":"^16.3.0","jest-environment-jsdom":"^30.0.5","@stylistic/eslint-plugin":"^5.2.2","react-refresh-typescript":"^2.0.10","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.38.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.38.0","eslint-import-resolver-typescript":"^4.4.4"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.2_1758262711348_0.7566780041845416","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@anmiles/theme-switcher","version":"2.0.3","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.3","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"4ad588efae9cf436ed35963a3e670d0794ffd611","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.3.tgz","fileCount":38,"integrity":"sha512-sDsxlH24UExImaiUfwCrynFJQLDacPUynLhovIDmyCgDlS61WPRk3/PP4x8fjhwwBbl/xBSGWcfn98dBrT93rA==","signatures":[{"sig":"MEUCIQCc36+26YVA2vJtSB98I8RtZZOjbX6iQ+tjRKGUy3ShdAIgHB4K+Y4kE/Rw7Yvjt59P0O0tl4No9wreDuQCNSr+sEw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63297},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"6137f00e80ba24d2f37c061fdfca7e3318edfd91","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.1.0","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.2","@anmiles/express-tools":"^2.0.4"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^30.0.5","jiti":"^2.5.0","vite":"^7.0.6","cspell":"^9.2.0","eslint":"^9.31.0","rimraf":"^6.0.1","ts-jest":"^29.4.0","ts-loader":"^9.5.2","@eslint/js":"^9.31.0","css-loader":"^7.1.2","typescript":"^5.8.3","@eslint/css":"^0.10.0","@types/jest":"^30.0.0","@eslint/json":"^0.13.1","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.17.0","@eslint/compat":"^1.3.1","eslint-plugin-n":"^17.21.0","@eslint/markdown":"^7.1.0","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.0","eslint-plugin-jest":"^29.0.1","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^4.7.0","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.3","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^9.0.4","@testing-library/react":"^16.3.0","jest-environment-jsdom":"^30.0.5","@stylistic/eslint-plugin":"^5.2.2","react-refresh-typescript":"^2.0.10","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.38.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.38.0","eslint-import-resolver-typescript":"^4.4.4"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.3_1764419731069_0.199773828544199","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"@anmiles/theme-switcher","version":"2.0.4","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.4","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"c5d2430d6a5fa2418501904a3c258a0f67296c97","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.4.tgz","fileCount":38,"integrity":"sha512-RHABU7j3RArbNJwo9Y6Y36Set6w/pwPfn6sYuLKkpdN3eOUhzpgepsmnASPNJl7LNpjCGspIX7g50XeaWbxXGw==","signatures":[{"sig":"MEYCIQCg+UbdHBfL04HFN5yd218GDNMYLQT3QNJLfaTX+eVdnwIhAPfrblHpwu7pQWBGlhwA41+QfH7IoohU+5m3MY24GmT3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63401},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"1750f69ec1613a8e51a89f2f32bc49dea807cd48","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.2.1","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.3","@anmiles/express-tools":"^2.0.5"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^30.2.0","jiti":"^2.6.1","vite":"^7.3.1","cspell":"^9.6.2","eslint":"^9.39.2","rimraf":"^6.1.2","ts-jest":"^29.4.6","ts-loader":"^9.5.4","@eslint/js":"^9.39.2","css-loader":"^7.1.3","typescript":"^5.9.3","@eslint/css":"^0.14.1","@types/jest":"^30.0.0","@eslint/json":"^1.0.0","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.18.0","@eslint/compat":"^2.0.2","eslint-plugin-n":"^17.23.2","@eslint/markdown":"^7.5.1","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.1","eslint-plugin-jest":"^29.12.1","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^5.1.2","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.3","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^10.0.3","@testing-library/react":"^16.3.2","jest-environment-jsdom":"^30.2.0","@stylistic/eslint-plugin":"^5.7.1","react-refresh-typescript":"^2.0.11","@testing-library/jest-dom":"^6.9.1","@typescript-eslint/parser":"^8.54.0","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.54.0","eslint-import-resolver-typescript":"^4.4.4"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.4_1769965111899_0.34277791724217876","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"@anmiles/theme-switcher","version":"2.0.5","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.5","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"f65eefe78c8ef9bce38f4c5a778e066355244dc8","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.5.tgz","fileCount":38,"integrity":"sha512-qpquAog/YWV1I2KX1SygWVPYPnulmzPzSuLZlQfIfIVUMcecfpDkLPS0gR3xdOpMaCOsdImG9pEYpo99bMbgkg==","signatures":[{"sig":"MEUCIQCrqGkZPgIHOZy+BsNGERj/vdf+iTKU6E2JB+w03tPa2gIgVeQEEE4JYvDrlxixOelDHN/nyq2LINY2LGP7naYChew=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63487},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"f2698b3c6cee65882791b4c2fb414907beae2921","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.2.1","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.3","@anmiles/express-tools":"^2.0.5"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^30.2.0","jiti":"^2.6.1","vite":"^7.3.1","cspell":"^9.6.2","eslint":"^9.39.2","rimraf":"^6.1.2","ts-jest":"^29.4.6","ts-loader":"^9.5.4","@eslint/js":"^9.39.2","css-loader":"^7.1.3","typescript":"^5.9.3","@eslint/css":"^0.14.1","@types/jest":"^30.0.0","@eslint/json":"^1.0.0","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.18.0","@eslint/compat":"^2.0.2","eslint-plugin-n":"^17.23.2","@eslint/markdown":"^7.5.1","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.1","eslint-plugin-jest":"^29.12.1","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^5.1.2","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.3","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^10.0.3","@testing-library/react":"^16.3.2","jest-environment-jsdom":"^30.2.0","@stylistic/eslint-plugin":"^5.7.1","react-refresh-typescript":"^2.0.11","@testing-library/jest-dom":"^6.9.1","@typescript-eslint/parser":"^8.54.0","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.54.0","eslint-import-resolver-typescript":"^4.4.4"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.5_1776084046625_0.5984014737503611","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"@anmiles/theme-switcher","version":"2.0.6","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.6","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"630608c9f10e69eeadf7f59f67df370f4fc3acb6","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.6.tgz","fileCount":38,"integrity":"sha512-Q42kD66bJ2ao9OwLPgATetFjQlDMBKFiFYthJEEDFA6XwXzGr8bDq9Lh/7iWEge4KZAjHfD5EK+V44sIwUWeVQ==","signatures":[{"sig":"MEUCIQCoRLrwvKJM4H+HGbt+l3E3dPqbyJVWOZMdTkeuQAzbYAIgN0t6ua0NpF+4REAWW+Wll09JxX48ZxesZ7MSmQO87u8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63532},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"6a46a0793c4d1e2e755cec4499db300072ab53d7","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.2.1","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.3","@anmiles/express-tools":"^2.0.5"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^30.2.0","jiti":"^2.6.1","vite":"^7.3.1","cspell":"^9.6.2","eslint":"^9.39.2","rimraf":"^6.1.2","ts-jest":"^29.4.6","ts-loader":"^9.5.4","@eslint/js":"^9.39.2","css-loader":"^7.1.3","typescript":"^5.9.3","@eslint/css":"^0.14.1","@types/jest":"^30.0.0","@eslint/json":"^1.0.0","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.18.0","@eslint/compat":"^2.0.2","eslint-plugin-n":"^17.23.2","@eslint/markdown":"^7.5.1","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.1","eslint-plugin-jest":"^29.12.1","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^5.1.2","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.3","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^10.0.3","@testing-library/react":"^16.3.2","jest-environment-jsdom":"^30.2.0","@stylistic/eslint-plugin":"^5.7.1","react-refresh-typescript":"^2.0.11","@testing-library/jest-dom":"^6.9.1","@typescript-eslint/parser":"^8.54.0","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.54.0","eslint-import-resolver-typescript":"^4.4.4"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.6_1776539518834_0.2943771610347461","host":"s3://npm-registry-packages-npm-production"}},"2.0.7":{"name":"@anmiles/theme-switcher","version":"2.0.7","keywords":["theme","switcher","websites"],"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","_id":"@anmiles/theme-switcher@2.0.7","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"homepage":"https://github.com/anmiles/theme-switcher","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"111972e252fbd9790671e6044e8653417e2fab15","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-2.0.7.tgz","fileCount":38,"integrity":"sha512-UGf1PkN1xai1jA6/jSMW/KuiQ2VXT6kcfhN+rV9rwuNhQWoF3jZANumZdMjSIjfkyEXvp0Y8HWTH8G5zF7omaw==","signatures":[{"sig":"MEUCIFJlFxQFYLldyO93yU76K69qYaz+d2IXoWV2P1k8GQDWAiEAnvBJWo8kXixjXJIxxNR8OqR27D9lSm8QvobZk7yGu2M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63618},"main":"src/index.tsx","engines":{"node":">=20.19.0"},"gitHead":"287bef79053b8ceef973d830188ae02c7fd6949b","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","start:dev":"npm start development","spellcheck":"cspell .","start:prod":"npm start production","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","build:development":"vite build --mode development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"10.8.2","description":"Theme switcher for websites","directories":{},"_nodeVersion":"20.19.2","dependencies":{"react":"^18.3.1","express":"^5.2.1","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^8.0.3","@anmiles/express-tools":"^2.0.5"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","jest":"^30.2.0","jiti":"^2.6.1","vite":"^7.3.1","cspell":"^9.6.2","eslint":"^9.39.2","rimraf":"^6.1.2","ts-jest":"^29.4.6","ts-loader":"^9.5.4","@eslint/js":"^9.39.2","css-loader":"^7.1.3","typescript":"^5.9.3","@eslint/css":"^0.14.1","@types/jest":"^30.0.0","@eslint/json":"^1.0.0","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.18.0","@eslint/compat":"^2.0.2","eslint-plugin-n":"^17.23.2","@eslint/markdown":"^7.5.1","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^4.0.1","eslint-plugin-jest":"^29.12.1","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^5.1.2","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.3","eslint-plugin-promise":"^7.2.1","@anmiles/eslint-config":"^10.0.3","@testing-library/react":"^16.3.2","jest-environment-jsdom":"^30.2.0","@stylistic/eslint-plugin":"^5.7.1","react-refresh-typescript":"^2.0.11","@testing-library/jest-dom":"^6.9.1","@typescript-eslint/parser":"^8.54.0","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.4.20","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.54.0","eslint-import-resolver-typescript":"^4.4.4"},"_npmOperationalInternal":{"tmp":"tmp/theme-switcher_2.0.7_1779862375938_0.8075918628104473","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"_id":"@anmiles/theme-switcher@3.0.0","bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"dist":{"shasum":"5dc0bf23bee2d9c2312912278adec013e36a151c","tarball":"https://registry.npmjs.org/@anmiles/theme-switcher/-/theme-switcher-3.0.0.tgz","fileCount":39,"integrity":"sha512-kFnznnFGKkyA2tYNSDVL0tomJ8NNxSnQ+92ISsjj6kh2pDn38Ju2RhTFUzadylQbSF+HkW8YszQwk4k7KdDGDw==","signatures":[{"sig":"MEUCIFwidpRqCzPeoMKT6A5Ny3vvKvz6FpG+slmvDfHxhCihAiEA4//2V5pFtuJ6j1veeF9P3C4NfRyJxfu5D1Fj3FE8YB0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH4t/8EcH8zC8nTW1F8NZbcJ6ebqOgVkLFLPOwpSAihpAiBt5Rkr7gyLHeZeXMPQbf5usgwLy7FWIy7t+1tKOqyMcQ=="}],"unpackedSize":61926},"main":"src/index.tsx","name":"@anmiles/theme-switcher","author":{"name":"Anatoliy Oblaukhov"},"engines":{"node":">=24.18.0"},"gitHead":"70b3e1e0eab87cb1ca6b5919fd360335dcda7d9d","license":"MIT","scripts":{"dev":"vite --mode development","lint":"eslint","test":"jest --verbose","build":"npm-run-all build:*","start":"node ./server.mjs","test:ci":"npm test -- --ci --coverage","lint:fix":"eslint --fix","prebuild":"rimraf dist && tsc --noEmit","spellcheck":"cspell .","test:watch":"npm test -- --watch","test:coverage":"npm test -- --coverage","build:production":"vite build --mode production","start:production":"npm start production","build:development":"vite build --mode development","start:development":"npm start development","test:watch:coverage":"npm test -- --watch --coverage","test:report:coverage":"nyc report"},"version":"3.0.0","_npmUser":{"name":"anmiles","email":"mail@anmiles.net"},"homepage":"https://github.com/anmiles/theme-switcher","keywords":["theme","switcher","websites"],"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"_npmVersion":"11.16.0","description":"Theme switcher for websites","directories":{},"maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"_nodeVersion":"24.18.0","dependencies":{"react":"^18.3.1","express":"^5.2.1","react-dom":"^18.3.1","npm-run-all":"^4.1.5","@anmiles/logger":"^9.0.0","@anmiles/express-tools":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^18.0.0","glob":"^13.0.6","jest":"^30.5.1","jiti":"^2.7.0","vite":"^8.3.0","cspell":"^10.3.3","eslint":"^9.39.2","rimraf":"^6.1.3","ts-jest":"^29.4.12","ts-loader":"^9.6.2","@eslint/js":"^9.39.5","css-loader":"^7.1.5","typescript":"^6.0.3","@eslint/css":"^2.0.0","@types/jest":"^30.0.0","@eslint/json":"^2.1.0","@types/react":"^18.3.20","style-loader":"^4.0.0","react-refresh":"^0.19.0","@eslint/compat":"^2.1.1","eslint-plugin-n":"^18.3.0","@eslint/markdown":"^8.0.3","@types/react-dom":"^18.3.6","@anmiles/tsconfig":"^5.0.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.2","@vitejs/plugin-react":"^6.1.1","eslint-plugin-import":"^2.32.0","eslint-plugin-i18next":"^6.1.5","eslint-plugin-promise":"^7.3.0","@anmiles/eslint-config":"^11.0.0","@testing-library/react":"^16.3.3","jest-environment-jsdom":"^30.5.1","@stylistic/eslint-plugin":"^5.10.0","react-refresh-typescript":"^2.0.12","@testing-library/jest-dom":"^7.0.1","@typescript-eslint/parser":"^8.70.0","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-redux":"^4.2.2","vite-plugin-lib-inject-css":"^2.2.2","eslint-plugin-react-refresh":"^0.5.7","eslint-plugin-align-assignments":"^1.1.2","@typescript-eslint/eslint-plugin":"^8.70.0","eslint-import-resolver-typescript":"^4.4.5"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/theme-switcher_3.0.0_1789753421866_0.3398190732398234"}}},"time":{"created":"2024-12-15T12:54:46.272Z","modified":"2026-09-18T17:43:42.090Z","1.0.0":"2024-12-15T12:54:46.540Z","1.0.1":"2024-12-15T12:59:19.417Z","1.0.2":"2024-12-15T13:08:20.945Z","2.0.0":"2025-05-18T15:47:46.797Z","2.0.1":"2025-07-24T09:14:50.265Z","2.0.2":"2025-09-19T06:18:31.537Z","2.0.3":"2025-11-29T12:35:31.257Z","2.0.4":"2026-02-01T16:58:32.058Z","2.0.5":"2026-04-13T12:40:46.765Z","2.0.6":"2026-04-18T19:11:58.968Z","2.0.7":"2026-05-27T06:12:56.079Z","3.0.0":"2026-09-18T17:43:41.945Z"},"bugs":{"url":"https://github.com/anmiles/theme-switcher/issues"},"author":{"name":"Anatoliy Oblaukhov"},"license":"MIT","homepage":"https://github.com/anmiles/theme-switcher","keywords":["theme","switcher","websites"],"repository":{"url":"git+https://github.com/anmiles/theme-switcher.git","type":"git"},"description":"Theme switcher for websites","maintainers":[{"name":"anmiles","email":"mail@anmiles.net"}],"readme":"# @anmiles/theme-switcher\n\nTheme switcher for websites\n\n----\n\n## Installation\n\n### For React+TS project\n\n1. Install package:\n\t```bash\n\tnpm install @anmiles/theme-switcher\n\t```\n\n2. Import component:\n\t```ts\n\timport { ThemeSwitcher } from '@anmiles/theme-switcher';\n\t```\n\n3. Use component:\n\t```ts\n\t<ThemeSwitcher float=\"right\" />\n\t```\n\twhere\n\t- `float` _(optional)_ - position of icon and dropdown box\n\n### For static HTML website\n\n1. Install package:\n\t```bash\n\tnpm install @anmiles/theme-switcher\n\t```\n\n2. Copy all files from `dist` into the target website.\n\n4. Create HTML container for theme switcher:\n\n\t```html\n\t<div class=\"my-selector\"></div>\n\t```\n\n5. Include React library and theme switcher:\n\n\t### Development\n\n\t```html\n\t<script type=\"text/javascript\" src=\"https://unpkg.com/react@18.3.1/umd/react.development.js\"></script>\n\t<script type=\"text/javascript\" src=\"https://unpkg.com/react-dom@18.3.1/umd/react-dom.development.js\"></script>\n\t<script type=\"text/javascript\" src=\"./theme-switcher-3.0.0.js\"></script>\n\t```\n\n\t### Production\n\n\t```html\n\t<script type=\"text/javascript\" src=\"https://unpkg.com/react@18.3.1/umd/react.production.min.js\"></script>\n\t<script type=\"text/javascript\" src=\"https://unpkg.com/react-dom@18.3.1/umd/react-dom.production.min.js\"></script>\n\t<script type=\"text/javascript\" src=\"./theme-switcher-3.0.0.min.js\"></script>\n\t```\n\n6. Place theme switcher into container:\n\n\t```html\n\t<script type=\"text/javascript\">\n\t\tnew ThemeSwitcher({ float: 'right' })\n\t\t\t.render(document.querySelector('.my-selector'));\n\t</script>\n\t```\n\twhere\n\t- `float` _(optional)_ - position of icon and dropdown box\n\n## Usage\n\nUse selectors to write theme-specific styles:\n\n```css\n\tbody[data-theme=\"light\"] .selector {\n\t\t/* css rules */\n\t}\n```\n\n```css\n\tbody[data-theme=\"dark\"] .selector {\n\t\t/* css rules */\n\t}\n```\n\nOr you can just write default styles for light theme and override them for dark theme using `body[data-theme=\"dark\"]`.\n","readmeFilename":"README.md"}