{"_id":"@qwickapps/react-framework","_rev":"39-24489cc3e0cb8d571202a78d2658ebb0","name":"@qwickapps/react-framework","dist-tags":{"latest":"1.10.0"},"versions":{"1.3.0":{"name":"@qwickapps/react-framework","version":"1.3.0","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.3.0","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"b2c86120d59d3d4d18e8bafe4f9a29675b4d5ec2","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.3.0.tgz","fileCount":441,"integrity":"sha512-9wfYSmcl5NcS0fJ9pN22aCDbLnGcZt5FmaInCFsvWZ16Li3ip7B3e+50ykxLScB0IFyPl+BEe8R2JG9nt7+l2w==","signatures":[{"sig":"MEQCIGsLf/ldBZG2TV1dHIAny4bT9YdEIbz5tPxpeIU267MWAiBJSW5Y9mXVQfJ/hxanW8dEAxNGNm8ra6JxriO3N7vqOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3658719},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"b2937f796fcd385828ab77e9d5dcbe7ce410cd0b","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run test && npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.0","@qwickapps/logging":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","storybook":"^9.1.0","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.3.0_1756696676856_0.6715206335196304","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@qwickapps/react-framework","version":"1.3.1","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.3.1","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"edf3456e19a3a001fc3022d17a84b6aff0bf28ac","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.3.1.tgz","fileCount":441,"integrity":"sha512-1ZChR7Bcky9Iy6bESii4AiLMOym5cUAKlzp6vkmjITy73yhPJL0WYfS6SyuHfA+9vnP1yUzxJll00QVx6EVG+Q==","signatures":[{"sig":"MEYCIQCbtabE5Y+3Fi889EHKCEmvugbdmaBEdfUMrw4xZfe+CQIhAISlMRWt6QaVooX7IR63pibR+YVX1PZSQJzoUrhLLDlb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3659349},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"b2937f796fcd385828ab77e9d5dcbe7ce410cd0b","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run test && npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1","@qwickapps/logging":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","storybook":"^9.1.0","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.3.1_1756697451675_0.0895140765090312","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@qwickapps/react-framework","version":"1.3.2","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.3.2","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"33bae4d76fec37055cf3b348f3451ba33f9ce81f","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.3.2.tgz","fileCount":443,"integrity":"sha512-aUUzOufyeHBcqKZbHfTMzvOJw+txonk6sLzH8058D2GZPN9K3yyp10RFX4ZpyC+hvuQSlHggtN6gtJ3t33Zx0g==","signatures":[{"sig":"MEUCIQCt5hDFPhcFFI1YFMb8lpwWG1c5i1vkVy20Ha6yavUnQwIgJOVhV1lRIwaKN/xepxnoDdtJEYgFyn5Uj1NcUKur6f0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3673867},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"cc105b6e2a8b2a9e648ba726ca184ca595480f02","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run test && npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","storybook":"^9.1.0","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.3.2_1756731639719_0.7704346751285625","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@qwickapps/react-framework","version":"1.3.3","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.3.3","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"4c30bc6710a2ff502fcbe585b913c0635d951b82","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.3.3.tgz","fileCount":451,"integrity":"sha512-fEEHizA9BlMzN7F7+l13R/gFvABuiBE+Qc48y81L667BsV2eHQ23ByywhAjr1DQRpaZG0ONQFDysxLUvCVK4tQ==","signatures":[{"sig":"MEUCIDOfskohFpe/U9IAly/2eA/JFnpH1CYW/Szml8AGJWQiAiEA84YrUSW+Yq9s00OSEKkunqFKIWa8pGMfm6/Q99/myus=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3847449},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"e5ab93e97e1fda0654dd12d74f72ec44b5edcf6a","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run test && npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","storybook":"^9.1.0","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.3.3_1756823487581_0.024620023758880727","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@qwickapps/react-framework","version":"1.3.4","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.3.4","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"8ec4da8d4f2fb8489717a9075c909eedad9bc1c8","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.3.4.tgz","fileCount":471,"integrity":"sha512-Z6cFOoHN5tTTrdP0XeklmGOL3Cq3m8+pT+l2v+ZVGdPU5TLVJtBaC/UD2vSotT09oADrY7f5UkvNxp3gtINQRg==","signatures":[{"sig":"MEYCIQCPbJ1e2/GNPEQFuxa++qQUj/hB0k2xnUGMBdFy2SSoxQIhANh3vDcM5dQF8NN7Yd2rEi3J6f0XdtzE/u5lo40/Ksa6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4066320},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"7af7fa1a06b5d4db2dd1e7e74c7c220be4d9f335","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run test && npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","storybook":"^9.1.0","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.3.4_1756908357608_0.7443403017699446","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"@qwickapps/react-framework","version":"1.3.5","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.3.5","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"1468693b93bf17cf976a3e875bd6b273b3c346ea","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.3.5.tgz","fileCount":471,"integrity":"sha512-kf1d/9wKojoQOgxZixslB0bfdJUgbN0IMR6/yir0uT3gWgNyfAqrZbe1nachscflF4i5zlUEPa9akHMy4uLU3Q==","signatures":[{"sig":"MEUCIQC4OeOBR3IK7tiT9SzCDpAOcwz/xopkC2+ygBsgdxNohQIgFvkI8GazRorszsARlgQKdcskABmP1L5c2SHDBzui9Mk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4065464},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"44961ab15463bd3b946f2c8213da8524b8edc659","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run test && npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","storybook":"^9.1.0","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.3.5_1756964676444_0.7066433428560426","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@qwickapps/react-framework","version":"1.4.0","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.0","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"550019a986b5df4ba17b2562a9d166208cda262d","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.0.tgz","fileCount":591,"integrity":"sha512-3paKbkvk9y5nmss9oDe45lkeV3BZvj3J0oplOqox/gOhfaKJ2zHRDGQ5Oi+M+Hx/b4khvQCDClaJOXixbdLf5g==","signatures":[{"sig":"MEQCIC/0a/RoqfYQvOBZx1ndHjrZEDKnUvKhS0+g12n5N3ZIAiB4FOk6LyNjAvsuLTI6ObhNOuQpFk6gETvV0yaTC/g1iQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5186912},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"79499a4fed66d83a1053fd21aab3322d9ff04db7","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.0_1757397136208_0.16419859958254346","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@qwickapps/react-framework","version":"1.4.1","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.1","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"e611f56348858c0a593151571ea09916866fa0d2","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.1.tgz","fileCount":591,"integrity":"sha512-KhPBiKqZI816/Tn3DaY14cxulWe/2H4kziheFntc5TAW0HZDncxJlUOrMeOXBqZ42xQ0RpCJMiE2qwmHohWfpg==","signatures":[{"sig":"MEQCIBiIjmoJSLqzqBMVz4p081TXC0U7xuK/orz0EHS/dtogAiAOJU5rTVKKepSr6KOnlAFm57MQTpWOzt2xyzNPuCNXfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5188377},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"79499a4fed66d83a1053fd21aab3322d9ff04db7","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"11.5.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"23.9.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.1_1757397614885_0.3167714118633915","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"@qwickapps/react-framework","version":"1.4.2","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.2","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"dist":{"shasum":"f047d1787c55559bdf1eadfd9d36172877c50e00","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.2.tgz","fileCount":928,"integrity":"sha512-6EEkh27y3ftvWrfxjh9rqdSnBu3AfKOHMThITfdoCT+hRzaUc5jOKiytpV/QbDuNsp2n4QlL1xeGP3ZLXP82yg==","signatures":[{"sig":"MEQCIDny6h+gZMKoRqX6JSV3VxZhlwE9obrBqWA3xaH5gUAQAiB0saEEQ7okAg1PnXM9Ix6n9SmH1t4k340UsUccbnSuWA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5587523},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"fea23e2bbd6279178ee83cac32d247626e3835b1","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.2_1759152269222_0.9214128201557761","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"@qwickapps/react-framework","version":"1.4.3","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.3","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create-qwickapps-project":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"68ab05114714999bef01faac395b9cf8b07d94ba","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.3.tgz","fileCount":928,"integrity":"sha512-3/mxV5HHFa8WBmCSihvdiT/1PhxbZ9+h2CdnFdZEnaboWk4Clxq5efs5lTYkJV7PF+WQV8THfhXxdoJjh4Uelw==","signatures":[{"sig":"MEQCICGWHC85oVOW0jJbrgA3cu2/jzzi/5357jAejLKHna2iAiBb8SuqV68p29hYQ1b0Tl3k4rOFYcWm5FW1zviU1YhiZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5587611},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./dist/index.css":"./dist/index.css"},"gitHead":"fea23e2bbd6279178ee83cac32d247626e3835b1","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.3_1759154723384_0.7598989852939677","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"@qwickapps/react-framework","version":"1.4.4","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.4","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create-qwickapps-project":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"2831cca5265300d2d732086055c88f3713813e28","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.4.tgz","fileCount":928,"integrity":"sha512-8kOmDuNeQRM7Yhs1aNkztq7bgDFLLVZ69Zi4JxrnSoKXL7OKHTJmE3wXh4la15+ZuxQ6sy9zfoN0qz5gibdp4Q==","signatures":[{"sig":"MEQCIAjavOFZwag4yWsl5Ui12LT7s1VZeeJ6a90JYonWkXXxAiBwt0NG2abTEgy9MJ7bXvwGKemFw/2SCKU0+irglComXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5587640},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"fea23e2bbd6279178ee83cac32d247626e3835b1","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c","test:watch":"jest --watch","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.4_1759156012639_0.9673792314459335","host":"s3://npm-registry-packages-npm-production"}},"1.4.5":{"name":"@qwickapps/react-framework","version":"1.4.5","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.5","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"7f04b630660023c1efc7caa07dc36af15e1323eb","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.5.tgz","fileCount":935,"integrity":"sha512-igBgtr23q7WFM/jCMbCPAomwIMU+A0666nXzYvQVS7wnTUDlLcVX/ncMWLBZGejZpAPevXRm5zMuFzWOaZ34lA==","signatures":[{"sig":"MEUCIQDKnoq88+eZpVqG1qUSXo+lHWjWxCBeGDJeBG0/hdqIcQIgCnsJkl7ISEb0OKs+XaLYzHWvAo5/pDkPUokLP6UWy64=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5658657},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"fea23e2bbd6279178ee83cac32d247626e3835b1","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run copy-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c && npm run copy-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run copy-palettes","test:watch":"jest --watch","copy-palettes":"cp src/palettes/*.css dist/palettes/","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.5_1759157225247_0.2506374657574322","host":"s3://npm-registry-packages-npm-production"}},"1.4.6":{"name":"@qwickapps/react-framework","version":"1.4.6","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.6","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"55d8d9a30da06794b1ead4b2e7ef8b2de4275c4a","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.6.tgz","fileCount":935,"integrity":"sha512-ubTxEwbG0ESCgAS+GQkhPw+HBwtprz7z00o1/ZGfEugyu3etNQTZIid1WRcUqvWRn1i+0Whzv4U0LjbR/5SUog==","signatures":[{"sig":"MEQCICUTSksoSTGQqZVWn4hOjeVvpaUPQCE0uCZxocdp7chnAiBSKb5v+I5XsznTLXlgHmm43QJ6yWX3KlHseveZm2bbHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5658160},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"fea23e2bbd6279178ee83cac32d247626e3835b1","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run copy-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c && npm run copy-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run copy-palettes","test:watch":"jest --watch","copy-palettes":"cp src/palettes/*.css dist/palettes/","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.6_1759157736296_0.20706196338815097","host":"s3://npm-registry-packages-npm-production"}},"1.4.7":{"name":"@qwickapps/react-framework","version":"1.4.7","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.7","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"a3f03ae439e73750d177e79df83135ce958296af","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.7.tgz","fileCount":935,"integrity":"sha512-eak9E/JZPcC46MylqUN24vKQa5yiGDxfCS+jKDp9q+HJ7i0NDXZFGMQWc0Vmu+5G29RQvcV8jO1B0EiTde2tjw==","signatures":[{"sig":"MEUCIQCIHUX4nAJQ9sHAZWnr86ayaQcLePEasvuVyKstDwMofAIgSR8d9xjv2Qty/DTgMFwOP/EZhDuNGohuAD/WKN+M6hM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5658149},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"fea23e2bbd6279178ee83cac32d247626e3835b1","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run copy-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c && npm run copy-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run copy-palettes","test:watch":"jest --watch","copy-palettes":"cp src/palettes/*.css dist/palettes/","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.7_1759158873595_0.23094507730647718","host":"s3://npm-registry-packages-npm-production"}},"1.4.8":{"name":"@qwickapps/react-framework","version":"1.4.8","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.8","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"ee57846f18ed01c42b2b0af655dc984856054a0d","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.8.tgz","fileCount":935,"integrity":"sha512-btXpNI/RmHIdBZxQeyfGCRRqnpVY0T6XYgD4IPcqTzN2ViYbl3PmTqq2/T5rhKFGa9MSK9DQcs3MsF620kjpxA==","signatures":[{"sig":"MEYCIQDSK+TfTO4Ty3aoStihExbguKlZFgDvXHuPiz8Zwk324QIhAJN3zeoGnWdwZgyAPlxwJzchsDOQ55j3qIR0pyoKPaSB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5658315},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"fea23e2bbd6279178ee83cac32d247626e3835b1","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run copy-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c && npm run copy-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run copy-palettes","test:watch":"jest --watch","copy-palettes":"cp src/palettes/*.css dist/palettes/","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.8_1759159467450_0.4108396344002845","host":"s3://npm-registry-packages-npm-production"}},"1.4.9":{"name":"@qwickapps/react-framework","version":"1.4.9","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.4.9","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"64cba9eee35d783e8272e872fb827fec3fd59ffc","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.4.9.tgz","fileCount":935,"integrity":"sha512-kzJYQnvSAGPHo6jqQ6l/+WcTjhJ9RCVbYKTJpDyYfyC5/0tyU05dnN2Mpv6MRI/uUf8c9iaOJJ6akCMBiYqxow==","signatures":[{"sig":"MEUCIF0zvm8fBh4iIlaEQjt3pZJP7I2itSOlpXlItfblDh4nAiEA+uTYSY+REm68VNYuuF5BTyoqDfw7KqHdOazTiUBrEJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5680421},"jest":{"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"5a3f9fb5049d30d052d3a9474b551972f5d55072","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run copy-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run copy-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run copy-palettes","test:watch":"jest --watch","copy-palettes":"cp src/palettes/*.css dist/palettes/","test:coverage":"jest --coverage","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^18.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^18.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.4.9_1760031590038_0.3044146135030539","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@qwickapps/react-framework","version":"1.5.0","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.0","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"66072d7583d9ccf3157c924d6710f1b76df1c1ee","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.0.tgz","fileCount":675,"integrity":"sha512-SBJCRPGMR7zMWAtubGurT4O4CfTTy25Pc0bxSlbO+XVPbBt/1P5/e2dS/aQyKv6EI1y9v4aYkjl4XqoDexvHig==","signatures":[{"sig":"MEUCIQCYWVgE94AxxA1e3yVMfh5PD/rPHS5l9y0nc0pU1qZl7wIgWikhvpABjzem3kjo09kxORo5h3bHFBSA3jYNjlDp0ig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5644993},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"e86ee2327f9b71492f221bc718a8d76d9252f4ee","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.0_1764710242634_0.33399898180997334","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@qwickapps/react-framework","version":"1.5.1","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.1","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"174dc16cfe8d00da55961aaa51636830ba92d03f","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.1.tgz","fileCount":687,"integrity":"sha512-Rh5nLo1zY35zjxtCqqDtXwAFvzQn1i+W3AZqb3aYlTX+ORqSwnTXRo8Zm8eFlwkq+hVfGqmLTw2ldI8zca8b7Q==","signatures":[{"sig":"MEUCIQD00wXNOg9M064dzyKd1irnICB8zw9rigvI3nPkq/0ZjAIgTGbWBCdzjXKIxV01+cWdnhSj/O9lXVoikPemUs3ZHBU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5702855},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"d0f9c07fa55024228dc476fd3c1b7d14ddafe3bf","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.1_1764911785859_0.11728910541835069","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@qwickapps/react-framework","version":"1.5.2","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.2","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"b396cdb65cdc06f68f355cf1eec88ac86bb99cda","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.2.tgz","fileCount":699,"integrity":"sha512-PoSUzB8L+zK9xj6TVrf5YZ6/vwp7YrELmsoLAz3IcPpwI+8ou8cwTAYaWm9KvP15sxPIvyXJkNStEuu6ZUjj7Q==","signatures":[{"sig":"MEQCIH0/LMmcw/ZRIE4R3teBk3fK4T7MrbDr13kkhglK23UuAiA9jR2BIFLDaFiAe8nyVgIFRVFCzwP9l5w0rX7ZThHxlA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5757886},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"d0f9c07fa55024228dc476fd3c1b7d14ddafe3bf","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.2_1764913334910_0.4604991768287463","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@qwickapps/react-framework","version":"1.5.3","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.3","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"26e8b458c60c22ae00faeb223dacfbc19ec205ae","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.3.tgz","fileCount":711,"integrity":"sha512-Vwp7Zuw8Kby8MiU6nSsTBB4nrduLdJqdZAIEaeDX88rENJoGoev+A7IBdDcxcDWE5yz364XRX8aLA/LevPAZjA==","signatures":[{"sig":"MEYCIQDH+5guKWTOjTWJWrdCZgt7NjhN2jNJ/6QuPGt9fhfCawIhAPGZFDiOEW/Bo1+FQPzTBQ8Qticytv9e/z2puWud0hYD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5812959},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"ff365691b18c3b82301b49fab8c7f25ff27673cb","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.3_1764957301821_0.1118982974545315","host":"s3://npm-registry-packages-npm-production"}},"1.5.4":{"name":"@qwickapps/react-framework","version":"1.5.4","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.4","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/raajkumars/qwickapps#readme","bugs":{"url":"https://github.com/raajkumars/qwickapps/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"8709e4bcfc3a879961e155ced797e66e68afec0e","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.4.tgz","fileCount":663,"integrity":"sha512-LwJFiT83rWcU+tGHR/WTf3p32bHcqk0oXSM3QcmQY4n62lzZnbnEdlz96K2EB+vWFpUd/UZoc9cbuPpkgGPMXw==","signatures":[{"sig":"MEQCIG+RbEsmMZ57L7kAnF0CW9Qz3NESQ0bhRkpzK4KPLJBgAiBpq9fFMfMQ+l5xwedO7/DbqtI1I9a0Jc6RdixopMOiGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6018651},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"d4694db36e0f0326247687e8507258261c7954f2","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/raajkumars/qwickapps.git","type":"git","directory":"packages/qwickapps-react-framework"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.4_1765055124431_0.6974381713015883","host":"s3://npm-registry-packages-npm-production"}},"1.5.5":{"name":"@qwickapps/react-framework","version":"1.5.5","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.5","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"dcb84322c156da92f87cdc1bb9521424aa2277ec","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.5.tgz","fileCount":663,"integrity":"sha512-yVFrB64b9ORs1S/syBEn03TUvICF3nmAsWCXvCFr2YaPQAA6EWHf+HFUJzj1DO7RhAXtPtEQky0gdbVL/j5gXA==","signatures":[{"sig":"MEYCIQCM6i+xM11o9HjYQsuEjiJb9800eQr9hFBmP+uLcghPvgIhAIjH225D68beISV4E6WK1gymvtr874dQ4xtrF/vbHmDY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6018796},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"04cbee2705ede9aa90d737c13f0a83ff02dc9975","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.5_1765057432865_0.4589818300676096","host":"s3://npm-registry-packages-npm-production"}},"1.5.6":{"name":"@qwickapps/react-framework","version":"1.5.6","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.6","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"c730582787bddbcb328a5fcd7bcffd9c9fc727c5","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.6.tgz","fileCount":666,"integrity":"sha512-JmIM5gYtA3plGt2EO+5VjI7BB3nmmOf579UdMb6L+5aDgmafSfJEHQl0rcHegVrWJfcJmMI4NFVW7YTLvhBBVQ==","signatures":[{"sig":"MEYCIQDaglFV03BWAoNTJ+tSt67GtC2CJ8OFI6dlCEFK5CKLDAIhAMjJQt49DL5zUYoRAQ+zDMa0Pkm3J/KA//RkUI+J88Ve","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6028709},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"0b1fa4f9a547251c75847ad71f29d3c1ec85c51e","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.6_1765425876509_0.9301590453205741","host":"s3://npm-registry-packages-npm-production"}},"1.5.7":{"name":"@qwickapps/react-framework","version":"1.5.7","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.7","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"8d2e963a17cdebf29b287ffe7c0a3408e049e866","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.7.tgz","fileCount":763,"integrity":"sha512-KgHRmEl9aFg1hHC4ZP/4V8wO7C3KlTvsTFXuuyGvRp4JrieAGZYPFcfJAbY9xJno5QCYMM124XPk/N43hQg8qQ==","signatures":[{"sig":"MEUCIB0hY8FvhXkfCTqH3pyzYFqf7BvzQ1jsUowpASbQFo9qAiEAl0jcmTzFUJHKR+ze3cFlkkDCTQfeLRo5NJheLchonoI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6063369},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"d40ae70785b7a0b7cb5e32aac7d6d2e54f2c76a9","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.7_1765859668107_0.2378454937687997","host":"s3://npm-registry-packages-npm-production"}},"1.5.8":{"name":"@qwickapps/react-framework","version":"1.5.8","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.8","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"726a03925858326f22f06f1908be051c6856ad60","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.8.tgz","fileCount":681,"integrity":"sha512-6vQWzI/j0cXcilf+cJAkvavz886bUICVa5ZHXX4YtOdUMGuBiG5xHjwCzlhfKphiw2KBa1b+v5gU8sI707W/Lg==","signatures":[{"sig":"MEYCIQCtAvQVh7DizXrDPPC4qafFi92WLw//iWrsB19AUYMTsAIhALEfWz+clacdcqi5fp18CaUsJ6ax5yiQWZCL1a8wWYnO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6103962},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"3d1e2eba4bd07069ac7316650b4217931850289c","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^7.0.6","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.8_1767858612664_0.8655342397406034","host":"s3://npm-registry-packages-npm-production"}},"1.5.9":{"name":"@qwickapps/react-framework","version":"1.5.9","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.9","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"24a3e4e3ff26bd4a9407f6a444b3012b7735f5be","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.9.tgz","fileCount":681,"integrity":"sha512-k2dVhEupD9TeCtMOBiY3IgmIa4fvai7iBLVfUeZNnFQM6zoDSbcgGGq1oOS6UJ7CuI3H41shITGnrvk1AcJ9xw==","signatures":[{"sig":"MEYCIQC3jkOScXGCMc9f0IQ8aWKQYwbPXfGaP+iV1FdLnrQ9pwIhAPCFX8tgMpnhC5of32fIsME3KGoUrfcW+1Pv+Fs+Ytt6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6104387},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"d8dbc02696a9eb7c6747f45a3b090ef4e69e1df7","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.9_1767913928875_0.411309945647095","host":"s3://npm-registry-packages-npm-production"}},"1.5.10":{"name":"@qwickapps/react-framework","version":"1.5.10","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.10","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"275420618b5da9975098e5f30d1a4d6378a109b5","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.10.tgz","fileCount":681,"integrity":"sha512-pGfshs2CQNOZDciW9UuSDQBvnSFlgRMLwvjzLlvjOdRcMIJZvY+PH4DmUIxDCdSNkUbN17Chmo8sE6YXql7B8w==","signatures":[{"sig":"MEQCIBRoYeRz16DQP+bS2aqH9qPU8jX8SjMLP9ZDUlK3rnNyAiBLkLCx27N8v2I20fKYop9uoBUDESDdebjE2FLVKhaGrQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6105229},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"faac85c36647739fbb4f90f25e4e9fe2a3b68fc2","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.10_1768033687605_0.43437896025760536","host":"s3://npm-registry-packages-npm-production"}},"1.5.11":{"name":"@qwickapps/react-framework","version":"1.5.11","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.11","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"4f93dc9136d340c2506f97dd1a263ee01bd2856e","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.11.tgz","fileCount":681,"integrity":"sha512-3AtB9uRoxQDY+4empx/66Ba8bfizIuHxjfHAxOdwQWyQZ0Eb9M9dcUbjCRD1TEWxbdbQ0yJnDZFPoSrceSGwxw==","signatures":[{"sig":"MEYCIQCi7guAtEHSn3b+uz4GkfMNz2v9abLFnLjf7GN8yoPktwIhAJvrvzneQz42DzrZppOkk70dg9BrhPmUgac2gWdyO51G","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6106466},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"b03200bcc3f4c88af85d1e423df4c9881eb33c48","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.11_1768064172081_0.819971743195834","host":"s3://npm-registry-packages-npm-production"}},"1.5.12":{"name":"@qwickapps/react-framework","version":"1.5.12","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.12","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"911a164cbe9f9fe08ed7bc00a9e59c846cec9711","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.12.tgz","fileCount":681,"integrity":"sha512-t/3HdKRRQO0t/CcMgLTApdlWsCecWHh8yUMwZ9z16ovz6dC/Cmoq/NBvTHHiOmh3DLKfox7BhRbHYXrPxUx9Jg==","signatures":[{"sig":"MEUCICc5iMfTRHZkxZuz7/cf2HyS7oxbtmyg75VWl/SF7S1SAiEA82GzCjF7y93hv1whIrITlEZMGP7rxoVi5BT+ea6g/wo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6106833},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"86f64b1b7258a4290533993a19de1011c5aadf2e","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.19.6","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.12_1768068514437_0.08571359123290168","host":"s3://npm-registry-packages-npm-production"}},"1.5.13":{"name":"@qwickapps/react-framework","version":"1.5.13","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.5.13","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"dbd63f1e0fd78d5c43c6e70a85a1a6f2b8b2beb2","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.5.13.tgz","fileCount":695,"integrity":"sha512-lcGe+j9Y31Pqa45Jmh8NZJ6ET1LXnKPpNgn1/JzCbd0tTxHOA/Wns8Qy8LjvC/gkUKnN94sdasrd4sXlzVCN4g==","signatures":[{"sig":"MEUCICL0eIw+BtJ+X+rzsytCry/VCq4RpFG1earahLZseVrLAiEAnFdDlMWV0/q3JWRk8k3i+1TxdIx16Omj8m6nrKkxdSs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6248317},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"492d8fd863adaec45ef389f6e7adc54755e7b15f","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.20.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.5.13_1769347469506_0.046463690100418065","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@qwickapps/react-framework","version":"1.6.0","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.6.0","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"065a901ba4258930f17220848b3588c551b6c76e","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.6.0.tgz","fileCount":707,"integrity":"sha512-5b5jRx38L0lgrvUNgG4oFLKKi8OC1W4HQux4JCldqQDp0tSMWxUFDLYteGQLXcQM6xw5jS7+uvK9DJ88eoWeDQ==","signatures":[{"sig":"MEYCIQCXhMV0eX1WWEkFTUzyHhO6tqE1gbVZrpnfXDyLM5v1HwIhAI1TJRhDmwAR8mn04fRiJCtSNm4bz+dkuuA82kUK9uKu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5860746},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"88ac0197a90d63b787483b12ba6f451cee6aa95b","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.20.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.6.0_1769913556889_0.5565371743750365","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@qwickapps/react-framework","version":"1.7.0","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.7.0","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"391c3f7d13f964402a60f13f53d2047d466f792f","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.7.0.tgz","fileCount":715,"integrity":"sha512-idMEjyMrac5ElKFlwGUufEHTdB83ZQ7WQ4SgA8c18/jK4YULcJEZr2f6xO3y3vDuUU/ImORo+3NUEuw5RLB9WA==","signatures":[{"sig":"MEUCIFc2Dapkrfpv6kEhjj7vtXcNyAZExBz7f//BgnEw9PkAAiEA9X4AeF1D0y3dGxeWFFJ2HgKer40LtejSw67zBdD7Xfo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5903007},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"78cf8f4d530da7bc2ba441fff2712a0bd05993d4","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.20.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","linkedom":"^0.18.12","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.7.0_1770220720321_0.035085339704820084","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@qwickapps/react-framework","version":"1.7.1","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.7.1","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"9a4a1963f210887bc29c8520b6b53baf64fcc8df","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.7.1.tgz","fileCount":715,"integrity":"sha512-YefqsvqN/373TfXBx6wJ3/7DTbnZeDrhTmFxRgVLa3JLzjUUqrp6SyytBfz0enfLx9ZxBFVjgXGbact1rNOKug==","signatures":[{"sig":"MEUCIQCBLxUITM1Bkx5C5esKi0z3X7+RY4cFu63Xex2gxURzAwIgLBa5jg6A9JiFcnW7pzxZx+5dg1jKH9oawexokma/WyI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5908969},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"f5d86c759810a35b6005d1aceb7233b6ed379769","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.20.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","linkedom":"^0.18.12","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.7.1_1770254375116_0.6999619547799736","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@qwickapps/react-framework","version":"1.8.0","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.8.0","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"2a39302422da8b8559b4516711eaeb8b43175df9","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.8.0.tgz","fileCount":715,"integrity":"sha512-3Kqg8maHlhCLujA1TjVNBQmHFnjvBb1iNsTCFCQmITSgDO/4pTkt/u25VPRGd65AS4k/pd/PEn8hpSodOlG5nw==","signatures":[{"sig":"MEYCIQCkfHmIiF0uP+ExyKEbJEv2z8dzOfc1i+JyJ7yFNv28AAIhAPQPB6hVyp2lXgoiGBED9O8vJcOnh56TieHvjrxHRG+8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5931173},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"381a784dbe584ef34cef530334139c89b67a83e9","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.20.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","linkedom":"^0.18.12","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.8.0_1770510502464_0.521742387194152","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@qwickapps/react-framework","version":"1.8.1","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.8.1","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"98802e38785bfad96569895d582d3efd49b4fd94","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.8.1.tgz","fileCount":720,"integrity":"sha512-yyVFLGZJXfdzCFowSzBZqQaEKoEbkUPuUgHWbBCw7TW44zn4x4Eq8JADX9fXynlwZRzJqOZ71g4OBeCznX08/g==","signatures":[{"sig":"MEUCIHe/kou6WiCQORY0zFD7D0InoxkFFIjxlUoCBGHyUtrdAiEAzpgfA5Bi53iBKevj4L1JLuxypHrQIY+SuNIVVfqvURA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5967730},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","_from":"file:qwickapps-react-framework-1.8.1.tgz","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"_resolved":"/private/var/folders/48/mcs7mt6s307bt_kbzjbr724r0000gp/T/667840b2045aff89d663cd977e98db0a/qwickapps-react-framework-1.8.1.tgz","_integrity":"sha512-yyVFLGZJXfdzCFowSzBZqQaEKoEbkUPuUgHWbBCw7TW44zn4x4Eq8JADX9fXynlwZRzJqOZ71g4OBeCznX08/g==","repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","linkedom":"^0.18.12","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.8.1_1771441452031_0.5456363794875798","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@qwickapps/react-framework","version":"1.9.0","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.9.0","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"a468276df352b4b32870109d409ec35684b8d5a4","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.9.0.tgz","fileCount":732,"integrity":"sha512-fxZlrkZBVRDUHbVw9HTojD7dYR78o9AGVGVNaNifVLE7EpYsLUnQC63roUo34cEoyn18JtXShnoAEX6zWUljAg==","signatures":[{"sig":"MEUCIQDekZ5OPVuPELl+ueerqxJhnf85M6TCAs8gHdhrmRAvZgIgeNlD31O0XezY0d6jz27D9qPJYAny+9/0/Ru60cLD0Qs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6025590},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"8ab5393058a5c2d5861e3dc1a35688d0b1c7d37d","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","linkedom":"^0.18.12","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.9.0_1771884773706_0.6592575613054108","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@qwickapps/react-framework","version":"1.9.1","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.9.1","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"58374cc02434117745e1b7cb118e7917c472fccf","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.9.1.tgz","fileCount":720,"integrity":"sha512-0WKl9FcRF3G2OMm89OuJF1jcCyRbBwrRdfR2auRhrhUzq+cQwjghS0fHSNjmABoSQ2mEkOUEVgzPkoc1Yzoacw==","signatures":[{"sig":"MEUCIDP5+pmaPyJ4KgYwtPqZ4YwAb1J9KnlKRSNVjiZJ3zurAiEA7c0KbdMncyGOF52GhMwJKjzGzhpjlBTUKqeADi/ZiPI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5972877},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.7.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.14.0","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","linkedom":"^0.18.12","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.9.1_1772435256232_0.15869714126000534","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"@qwickapps/react-framework","version":"1.9.2","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","_id":"@qwickapps/react-framework@1.9.2","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"homepage":"https://github.com/qwickapps/react-framework#readme","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"bin":{"create":"scripts/create-qwickapps-project.js"},"dist":{"shasum":"d2fb335e35a966191a5e04762232d97b06bf85e6","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.9.2.tgz","fileCount":716,"integrity":"sha512-4l/u6uYNoImhTpfm9S0IbnM+tTPjFqaJp/h1tLHHj0GIs6M+GJpwWSJj8+6cVOW8v5PP4mbuXjXPqlqZOq7xOw==","signatures":[{"sig":"MEUCIElrB5jzGacB74qyFH+l/6S6pFQXcHjKBr72qoeD6cvrAiEA9P0hmfKflldp0crCNGIWdcRfi2KIbp2cLj2W1Cu4po4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6065790},"jest":{"globals":{"import.meta":{"env":{"DEV":false,"MODE":"test","PROD":true}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleFileExtensions":["js","jsx","ts","tsx"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","default":"./dist/index.js","require":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","default":"./dist/config.js","require":"./dist/config.js"},"./index.css":"./dist/index.css","./dist/index.css":"./dist/index.css"},"gitHead":"8966902966ade15d1a63a2a0a38c9e7f83feb90d","scripts":{"dev":"rollup -c -w","test":"jest","build":"rollup -c && npm run build-palettes","clean":"rm -rf dist node_modules .rollup.cache storybook-static","publish":"npm publish","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","storybook":"storybook dev -p 6006","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","test:watch":"jest --watch","test:coverage":"jest --coverage","build-palettes":"node scripts/build-palettes.cjs","create-project":"node scripts/create-qwickapps-project.js","prepublishOnly":"npm run build && npm run validate:clean-install","build-storybook":"storybook build","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","validate:clean-install":"./qa/clean-install/validate.sh"},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"repository":{"url":"git+https://github.com/qwickapps/react-framework.git","type":"git"},"_npmVersion":"10.8.2","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","directories":{},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"_nodeVersion":"20.20.1","dependencies":{"md5":"^2.3.0","marked":"^4.3.0","linkedom":"^0.18.12","sanitize-html":"^2.17.0","@qwickapps/schema":"^1.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","vite":"^6.0.0","rollup":"^3.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","@types/md5":"^2.3.5","babel-jest":"^29.0.0","css-loader":"^7.1.2","typescript":"^5.9.2","@babel/core":"^7.20.0","@types/jest":"^30.0.0","@types/node":"^24.1.0","@types/react":"^19.0.0","style-loader":"^4.0.0","@mui/material":"^7.2.0","@types/marked":"^5.0.2","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@types/mustache":"^4.2.5","@types/react-dom":"^19.0.0","react-router-dom":"^6.30.1","@babel/preset-env":"^7.20.0","identity-obj-proxy":"^3.0.0","@babel/preset-react":"^7.18.0","@mui/icons-material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@types/sanitize-html":"^2.16.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","rollup-plugin-postcss":"^4.0.0","@rollup/plugin-replace":"^6.0.2","@testing-library/react":"^14.0.0","jest-environment-jsdom":"^29.0.0","@rollup/plugin-commonjs":"^25.0.0","@types/react-router-dom":"^5.3.3","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@rollup/plugin-typescript":"^11.0.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0","@mui/material":">=5.0.0","@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","react-router-dom":">=6.0.0","@mui/icons-material":">=5.0.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-framework_1.9.2_1774047987774_0.495756994106354","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@qwickapps/react-framework","version":"1.10.0","description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","bin":{"create":"scripts/create-qwickapps-project.js"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js","default":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.esm.js","require":"./dist/config.js","default":"./dist/config.js"},"./dist/index.css":"./dist/index.css","./index.css":"./dist/index.css"},"sideEffects":["**/*.css","./src/schemas/transformers/registry.ts","./src/schemas/index.ts","./dist/schemas/transformers/registry.js","./dist/schemas/index.js"],"scripts":{"build":"rollup -c && npm run build-palettes","build-palettes":"node scripts/build-palettes.cjs","build:dev":"NODE_ENV=development rollup -c && npm run build-palettes","build:prod":"NODE_ENV=production STRIP_LOGS=true rollup -c && npm run build-palettes","dev":"rollup -c -w","test":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage","clean":"rm -rf dist node_modules .rollup.cache storybook-static","create-project":"node scripts/create-qwickapps-project.js","validate:clean-install":"./qa/clean-install/validate.sh","prepublishOnly":"npm run build && npm run validate:clean-install","publish":"npm publish","publish:palettes":"../../products/qwickapps/anvil/publish-palettes.sh","storybook":"storybook dev -p 6006","build-storybook":"storybook build"},"keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","dependencies":{"@qwickapps/schema":"^1.3.2","linkedom":"^0.18.12","marked":"^4.3.0","md5":"^2.3.0","sanitize-html":"^2.17.0"},"optionalDependencies":{"@qwickapps/logging":"^1.0.0"},"peerDependencies":{"@emotion/react":">=11.0.0","@emotion/styled":">=11.0.0","@mui/icons-material":">=5.0.0","@mui/material":">=5.0.0","react":">=16.8.0","react-dom":">=16.8.0","react-router-dom":">=6.0.0"},"devDependencies":{"@babel/core":"^7.20.0","@babel/preset-env":"^7.20.0","@babel/preset-react":"^7.18.0","@babel/preset-typescript":"^7.27.1","@chromatic-com/storybook":"^4.1.0","@emotion/react":"^11.14.0","@emotion/styled":"^11.14.1","@mui/icons-material":"^7.2.0","@mui/material":"^7.2.0","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-node-resolve":"^15.0.0","@rollup/plugin-replace":"^6.0.2","@rollup/plugin-typescript":"^11.0.0","@storybook/addon-docs":"^9.1.0","@storybook/react-vite":"^9.1.0","@storybook/react-webpack5":"^9.1.0","@testing-library/jest-dom":"^6.0.0","@testing-library/react":"^14.0.0","@testing-library/user-event":"^14.0.0","@types/jest":"^30.0.0","@types/marked":"^5.0.2","@types/md5":"^2.3.5","@types/mustache":"^4.2.5","@types/node":"^24.1.0","@types/react":"^19.0.0","@types/react-dom":"^19.0.0","@types/react-router-dom":"^5.3.3","@types/sanitize-html":"^2.16.0","babel-jest":"^29.0.0","css-loader":"^7.1.2","identity-obj-proxy":"^3.0.0","jest":"^29.0.0","jest-environment-jsdom":"^29.0.0","react-router-dom":"^6.30.1","rollup":"^3.0.0","rollup-plugin-postcss":"^4.0.0","style-loader":"^4.0.0","ts-jest":"^29.4.1","ts-loader":"^9.5.2","typescript":"^5.9.2","vite":"^6.0.0"},"publishConfig":{"access":"public"},"jest":{"testEnvironment":"jsdom","setupFilesAfterEnv":["<rootDir>/src/setupTests.js"],"moduleNameMapper":{"\\.(css|less|scss|sass)$":"identity-obj-proxy"},"globals":{"import.meta":{"env":{"DEV":false,"PROD":true,"MODE":"test"}}},"transform":{"^.+\\.(js|jsx)$":"babel-jest","^.+\\.(ts|tsx)$":"ts-jest"},"moduleFileExtensions":["js","jsx","ts","tsx"],"transformIgnorePatterns":["node_modules/(?!(.*\\.mjs$))"],"testPathIgnorePatterns":["/node_modules/","\\.performance\\.test\\.(ts|tsx)$","\\.serialization\\.test\\.(ts|tsx)$","HeroBlock\\.test\\.(ts|tsx)$","Footer\\.test\\.(ts|tsx)$","Logo\\.test\\.(ts|tsx|js)$","FeatureGrid\\.integration\\.test\\.(ts|tsx)$","FeatureCard\\.integration\\.test\\.(ts|tsx)$"]},"repository":{"type":"git","url":"git+https://github.com/qwickapps/react-framework.git"},"homepage":"https://github.com/qwickapps/react-framework#readme","_id":"@qwickapps/react-framework@1.10.0","gitHead":"a6924e78037ef451137ef321abcf80c4181cf4b9","bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-MLH8DA1K7YDfczKgR0Jc5OfmIHemSppR6CgBlxUO6V+BEWc3/mFhMtRd+CJgxC6ejxdRFcIW6coV2Om3AOabfg==","shasum":"9325967aea462617fb2ba8d6bde3b1cab68e7062","tarball":"https://registry.npmjs.org/@qwickapps/react-framework/-/react-framework-1.10.0.tgz","fileCount":759,"unpackedSize":6273107,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIByzwElBePazLoFLDmJO5fWd/qGHhbtIY/b8gPNxWCCUAiEA2FOPB5WXT4HmHrufntveaLpOOM1LoISLs1NXqXnQ5F0="}]},"_npmUser":{"name":"raajkumars","email":"raajkumars@gmail.com"},"directories":{},"maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react-framework_1.10.0_1779459095003_0.13105572498493756"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-01T03:17:56.752Z","modified":"2026-05-22T14:11:35.338Z","1.3.0":"2025-09-01T03:17:57.049Z","1.3.1":"2025-09-01T03:30:51.949Z","1.3.2":"2025-09-01T13:00:39.939Z","1.3.3":"2025-09-02T14:31:27.842Z","1.3.4":"2025-09-03T14:05:57.805Z","1.3.5":"2025-09-04T05:44:36.670Z","1.4.0":"2025-09-09T05:52:16.463Z","1.4.1":"2025-09-09T06:00:15.153Z","1.4.2":"2025-09-29T13:24:29.443Z","1.4.3":"2025-09-29T14:05:23.626Z","1.4.4":"2025-09-29T14:26:52.859Z","1.4.5":"2025-09-29T14:47:05.526Z","1.4.6":"2025-09-29T14:55:36.504Z","1.4.7":"2025-09-29T15:14:33.836Z","1.4.8":"2025-09-29T15:24:27.730Z","1.4.9":"2025-10-09T17:39:50.275Z","1.5.0":"2025-12-02T21:17:22.876Z","1.5.1":"2025-12-05T05:16:26.111Z","1.5.2":"2025-12-05T05:42:15.175Z","1.5.3":"2025-12-05T17:55:02.052Z","1.5.4":"2025-12-06T21:05:24.649Z","1.5.5":"2025-12-06T21:43:53.077Z","1.5.6":"2025-12-11T04:04:36.723Z","1.5.7":"2025-12-16T04:34:28.382Z","1.5.8":"2026-01-08T07:50:12.886Z","1.5.9":"2026-01-08T23:12:09.131Z","1.5.10":"2026-01-10T08:28:07.833Z","1.5.11":"2026-01-10T16:56:12.240Z","1.5.12":"2026-01-10T18:08:34.659Z","1.5.13":"2026-01-25T13:24:29.751Z","1.6.0":"2026-02-01T02:39:17.122Z","1.7.0":"2026-02-04T15:58:40.609Z","1.7.1":"2026-02-05T01:19:35.333Z","1.8.0":"2026-02-08T00:28:22.678Z","1.8.1":"2026-02-18T19:04:12.253Z","1.9.0":"2026-02-23T22:12:53.927Z","1.9.1":"2026-03-02T07:07:36.492Z","1.9.2":"2026-03-20T23:06:28.034Z","1.10.0":"2026-05-22T14:11:35.211Z"},"bugs":{"url":"https://github.com/qwickapps/react-framework/issues"},"author":{"name":"QwickApps"},"license":"PolyForm-Shield-1.0.0","homepage":"https://github.com/qwickapps/react-framework#readme","keywords":["react","framework","responsive","navigation","layouts","theme","palette","dark-mode","components","typescript","ui-kit","qwickapps"],"repository":{"type":"git","url":"git+https://github.com/qwickapps/react-framework.git"},"description":"Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.","maintainers":[{"name":"raajkumars","email":"raajkumars@gmail.com"}],"readme":"# QwickApps React Framework\n\nA complete React framework for building modern, responsive applications with intelligent navigation, flexible layouts, and a comprehensive theming system.\n\n## What's New\n\n### February 7, 2026 - E-Commerce ProductCard (v1.8.0)\n\n- **Unified ProductCard Component**: Complete e-commerce product card with integrated cart functionality\n- **Variant Support**: Built-in size, color, and material variant selection with availability indicators\n- **Cart Integration**: Native \"Add to Cart\" with quantity selectors and wishlist toggle\n- **Enhanced UX**: Sale pricing, stock status, ratings, and responsive design for all devices\n\nSee [CHANGELOG.md](./CHANGELOG.md) for full details.\n\n### February 4, 2026 - Bug Fixes (v1.7.1)\n\n- **MUI v7 TypeScript Compatibility**: Fixed compilation errors in form components by excluding conflicting ViewProps\n- **Component Pattern Compliance**: ImageGallery now uses GridLayout/GridCell instead of direct MUI Grid\n- **Type Safety**: Added explicit TypeScript return types to OptionSelector\n\nSee [CHANGELOG.md](./CHANGELOG.md) for full details.\n\n### February 4, 2026 - New Palette & SSR (v1.7.0)\n\n- **PaletteBoutique**: New premium color palette with sophisticated teal, bronze, and navy for retail/fashion brands\n- **ComponentTransformer SSR**: Enhanced HTML parsing with linkedom integration for server-side rendering\n- **Theme Consistency**: Added missing palette variables and replaced hardcoded colors across all palettes\n\n### January 25, 2026 - E-Commerce Components (v1.5.13)\n\n#### New Components\n\n- **ImageGallery Component**: Professional image gallery with multiple display variants\n  - Three display modes: thumbnails (left/bottom/right), carousel, and grid\n  - Built-in zoom modal for full-screen viewing\n  - Customizable aspect ratios (1:1, 4:3, 16:9, custom)\n  - Responsive design with mobile-first approach\n  - Full theme compliance using CSS custom properties\n\n- **OptionSelector Component**: Universal option selector for e-commerce and forms\n  - Text mode: Button grid for sizes, quantities (S, M, L, XL, etc.)\n  - Color mode: Circular swatches with hex color backgrounds\n  - Image mode: Rounded rectangle pattern/texture swatches\n  - Features: availability states, disabled options, tooltips, price adjustments\n  - Dropdown fallback for accessibility\n  - Consolidates previous SizeSelector and ColorSelector into unified component\n\n#### Bug Fixes\n\n- **Article Component**: Fixed TypeScript type error in Article component\n\n### December 6, 2025 - Repository URLs Update (v1.5.5)\n\n- Updated repository and homepage URLs to point to public GitHub org\n\n### December 6, 2025 - Scaffold Layout & Spacing Improvements (v1.5.4)\n\n- **Scaffold Layout Spacing**: Responsive base padding (16px mobile, 24px tablet, 32px desktop) plus nav element clearance\n- **Scaffold Background Contrast**: Fixed nav/content contrast by using `--theme-background` for content areas\n- **Body Margin Reset**: Added CSS reset to eliminate browser default 8px body margin\n\n### December 5, 2025 - GridLayout equalHeight Fix (v1.5.3)\n\n- **GridLayout equalHeight Fix**: Fixed `equalHeight` prop not working in MUI v6 - updated CSS selector to target Grid children correctly\n\n### December 5, 2025 - Bug Fixes & Control Panel Icons (v1.5.2)\n\n- **Control Panel Icons**: 10 new icons for admin UIs (`key`, `refresh`, `storage`, `manage_accounts`, `person_search`, `block`, `check_circle`, etc.)\n- **Scaffold Background Fix**: Unified background colors between nav and content areas for consistent admin panel appearance\n- **Button Icon Bug Fix**: Fixed issue where unmapped icon names appeared as text (e.g., \"refresh Refresh\")\n\n### December 2, 2025 - Major Feature Release (v1.5.0)\n\n#### New Components & Systems\n\n- **Server-Side Rendering (SSR) Support**: Full SSR compatibility - works with Next.js, Remix, and other frameworks\n- **ProductLogo Component**: Simplified product branding with automatic icon positioning and size variants\n- **Icon Mapping System (`iconMap`)**: 50+ Material-UI icons accessible by name with `getIconComponent()` and `getIconEmoji()`\n- **Dialog Components**: Themed `Dialog`, `DialogTitle`, `DialogContent`, `DialogActions` using CSS variables\n- **Captcha Component**: Universal CAPTCHA supporting reCAPTCHA v2/v3, hCaptcha, and Cloudflare Turnstile\n- **Form Components**: `FormCheckbox`, `FormField`, `FormSelect` for CMS-driven forms\n\n#### Palette & Theming\n\n- **Palette Loader**: Dynamic CDN-first palette loading with `loadPalette()`, `preloadPalettes()`\n- **Palette Manifest**: Metadata-driven palette discovery with `getAvailablePalettes()`, `getPalettesByCategory()`\n\n#### Code Quality\n\n- **Zero Lint Errors**: Fixed all 867 ESLint errors for production-ready code quality\n- **TypeScript Strict**: Replaced `any` types with proper TypeScript types throughout\n- **React Hooks Best Practices**: Fixed all hook rule violations with unconditional calls\n- **Clean Install Validation**: Docker-based QA test validates package in fresh React projects\n\n### October 9, 2025 - Icon System & CSS Theme Variables (v1.4.9)\n\n- **Schema-Driven Icon System**: Button component now supports icon transformation from string names to Material-UI components using `finalize` function pattern\n- **Icon Registry**: Comprehensive icon mapping with 30+ Material-UI icons (home, download, settings, dashboard, help, business, etc.) accessible via string names\n- **CSS Theme Variables Integration**: Button component migrated from MUI color props to CSS theme variables (`--theme-primary`, `--theme-secondary`, etc.) for consistent theming\n- **Menu Item Icons**: Navigation components (Scaffold, ResponsiveMenu) updated to support both string icon names and React icon components with DefaultIcon fallback\n- **Type Safety**: Fixed ButtonProps type definition using `Omit` pattern to properly handle schema transformation from strings to React elements\n- **Reusable Icon Utility**: Exported `getIconComponent()` function for use across navigation and menu components\n- **Theme-Aware Colors**: Button colors automatically adapt to palette and theme changes using CSS variable system\n\n### September 29, 2025 - Production Ready Release (v1.4.8)\n\n- **NPM Publishing Ready**: Package prepared for official NPM distribution with optimized build configuration and comprehensive exports\n- **Enhanced Build System**: Improved rollup configuration with both development and production builds, automatic CSS bundling, and TypeScript declarations\n- **Complete API Exports**: All framework components, utilities, and configuration modules properly exported for external consumption\n- **Project Creation Scripts**: Included automated project scaffolding tools for rapid QwickApps React Framework adoption\n- **Storybook Integration**: Full component documentation and interactive examples ready for developers\n- **Production Optimizations**: Stripped logging in production builds, optimized bundle sizes, and enhanced performance characteristics\n- **Publishing Pipeline**: Configured with proper package metadata, repository links, and NPM publishing workflows\n\n### September 13, 2025 - Schema-Driven Factory Pattern Architecture Completed ✅\n\n- **Phase 2 Migration Complete**: Successfully migrated 10+ core components to schema-driven factory pattern with 100% feature parity maintained\n- **Factory Pattern Architecture**: Complete implementation of `createSerializableView` factory generating functional components with static serialization methods\n- **Container vs View Components**: Clear architectural distinction established - Container components (Section, HeroBlock, GridLayout) use `react-children` strategy, View components use appropriate serialization patterns\n- **Security Enhancement**: Content-prop strategy from Phase 1 successfully maintained, preventing JSON deserialization vulnerabilities\n- **Schema Integration**: Components extend ViewSchema or ContainerSchema for standardized prop definitions with existing BaseComponentProps compatibility\n- **QA Results**: All unit tests updated and passing, all Storybook stories rendering correctly, serialization round-trip tests working, build passes successfully\n- **Component Roster**: Section, HeroBlock, GridLayout, GridCell, Image, Button, TextInputField, SelectInputField, HtmlInputField, ChoiceInputField, SwitchInputField migrated\n- **Performance**: All components maintain sub-millisecond serialization performance, factory pattern establishes foundation for future development\n- **Architecture Ready**: Phase 3 cleanup now ready to remove ModelView legacy code and complete transition to modern schema-driven architecture\n\n### September 9, 2025 - Advanced Print System with Professional Layout Control (v1.4.1)\n\n- **Complete Print View System**: Professional print functionality for React Framework with intelligent detection, dynamic configuration, and sophisticated print layouts\n- **Multi-Channel Print Detection**: Browser event integration (Ctrl+P/Cmd+P), and manual print mode controls with comprehensive state management\n- **Advanced Print Configuration**: Complete PrintConfigSchema with theme control (light/dark), palette selection, monochrome optimization, and interactive element hiding\n- **Dynamic Header/Footer System**: ReactNode | string support for print headers and footers with separate first-page variants, automatic height measurement, and CSS variable-driven positioning\n- **Edge-to-Edge Printing**: Configurable page margins (0mm, 6mm, 12mm, 20mm, 25mm) with automatic CSS class application and complete borderless printing capabilities\n- **Print Background Control**: Full background image/color support for printed pages with separate first-page backgrounds and professional document styling\n- **CSS Variable Architecture**: Dynamic injection of print-specific variables (--print-header-height, --print-footer-height, --print-background) with automatic @page rule generation\n- **Schema-Driven Architecture**: Complete integration with PageTemplateSchema for CMS-managed print configurations and serializable page content\n\n### September 5, 2025 - Component Serialization System (\"WebView for React\")\n\n- **Complete Component Serialization**: Full \"WebView for React\" functionality enabling components to be serialized to JSON and reconstructed while preserving functionality\n- **Data Binding Preservation**: Serialization system seamlessly preserves data binding configuration across serialize/deserialize cycles\n- **Code Component Reference Implementation**: Code component serves as the canonical example with <1ms serialization performance and comprehensive ReactNode handling\n- **Image Component Schema Integration**: Image component successfully converted to Schema architecture with 300-500x performance targets exceeded and 100% backward compatibility\n- **Text Component Schema Integration**: Text component successfully converted to Schema architecture with 125-500x performance targets exceeded, comprehensive typography serialization, and 96.3% test coverage\n- **HeroBlock Component Complex Serialization**: **First component with nested component serialization** - HeroBlock successfully converted with Button actions array support and 500x performance targets exceeded (0.0009ms basic, 0.0058ms complex serialization)\n- **GridLayout & GridCell Components**: **First responsive grid system with complete serialization** - GridLayout and GridCell components successfully converted to Schema with 3-169x performance targets exceeded and complete responsive breakpoint preservation\n- **Responsive Grid Breakthrough**: GridLayout and GridCell establish patterns for responsive layout serialization with all breakpoint configurations (xs,sm,md,lg,xl) preserved through serialization cycles\n- **Complex Layout Support**: GridLayout handles 1-6 column responsive layouts with nested GridCell components, maintaining complete functionality after reconstruction\n- **Nested Component Breakthrough**: HeroBlock establishes architectural patterns for complex components with nested React elements, demonstrating serialization system capability for sophisticated component hierarchies\n- **Production-Ready Components**: Code, Image, Text, HeroBlock, GridLayout, and GridCell components approved for production deployment with comprehensive QA validation\n- **Typography Serialization**: Complete Material-UI Typography integration with all variants (h1-h6, body1/2, subtitle, button, caption, overline), color support, and text formatting preserved\n- **Performance Excellence**: QA validation with enhanced test coverage, handles 1000+ components in <50ms, memory usage <50MB for large component trees\n- **Production Ready**: Cross-browser compatibility, comprehensive error handling, and graceful fallback for unknown components\n- **CMS Integration**: Components can be stored in CMS systems as JSON and reconstructed maintaining full React functionality\n\n### September 4, 2025 - Stability & Inline Wrapper Guard\n\n- **ProductCard Stability Fix**: Removed inline wrapper React components that caused subtree remounts and potential focus/state loss; replaced with stable JSX fragments.\n- **Preventive Lint Rule**: Repo now enforces a custom `no-inline-component-wrapper` ESLint rule (scoped rollout) to block reintroduction of the remount pattern.\n- **Internal Refactor Only**: No public API changes; safe patch update.\n\n### September 2, 2025 - Built-in Error Handling & Accessibility\n\n- **Automatic Error Boundaries**: QwickApp now automatically wraps all content with ErrorBoundary for robust error handling\n- **Built-in Accessibility**: AccessibilityProvider automatically included for WCAG 2.1 AA compliance\n- **Generic Components**: Moved ErrorBoundary, AccessibilityProvider, and Breadcrumbs to framework level\n- **Complete Test Coverage**: Added comprehensive unit tests and Storybook stories for all new components\n- **Zero Configuration**: Error handling and accessibility features work out-of-the-box with QwickApp\n\n### September 1, 2025 - Optional Dependencies & Performance\n\n- **Optional Logging**: Made `@qwickapps/logging` an optional dependency with console fallback\n- **Reduced Bundle Size**: Core framework no longer includes logging overhead by default\n- **React Error Fixes**: Fixed React error #62 in Markdown mixed content scenarios\n- **DOM Nesting**: Added automatic cleanup of invalid DOM nesting from marked.js output\n\n### August 31, 2025 - CMS Content Components  \n\n- **Html Component**: Transform HTML strings into React components with configurable transformation rules\n- **Markdown Component**: Convert Markdown to React components using marked library with Html component integration\n- **Transform System**: Extensible HTML transformation architecture with optimized rule sets for Article and Markdown content\n- **Content Simplification**: Article and Content components refactored to use Html component internally, eliminating duplicate transformation logic\n\n## Features\n\n### 🧭 **Responsive Navigation**\n\n- **Mobile**: Bottom navigation bar for touch-friendly access\n- **Tablet**: Expandable nav rail with collapsible sidebar\n- **Desktop**: Top navigation with overflow drawer\n- **Automatic**: Adapts based on screen size without configuration\n\n### 📐 **Flexible Layout System**\n\n- **Hero Blocks**: Full-width hero sections with background images/gradients\n- **Multi-Column Layouts**: Responsive 2-5 column layouts with equal heights\n- **Content Blocks**: Styled containers with variants (elevated, outlined, filled)\n- **Feature Grids**: Showcase features with icons, titles, and actions\n- **Section Containers**: Configurable spacing and background variants\n- **CollapsibleLayout**: Advanced expandable/collapsible containers with state management\n\n### 🎨 **Advanced Theming**\n\n- **Theme Management**: Light, dark, and system theme support\n- **Color Palettes**: Multiple built-in palettes (Ocean, Autumn, Spring, Winter)\n- **CSS Variables**: Dynamic theme switching without re-renders\n- **Custom Palettes**: Easy to create and integrate custom color schemes\n\n### 🧩 **Component Library**\n\n- **Logo Component**: Dynamic, customizable logos with badges and animations\n- **Theme Controls**: Built-in theme and palette switchers\n- **Form Components**: Accessible, themed form inputs with complete serialization support\n- **Advanced Form Fields**: TextInputField, SelectInputField, HtmlInputField, ChoiceInputField, SwitchInputField with controlled state preservation\n- **Form Containers**: FormBlock component with nested form component support and status messaging\n- **Safe Components**: XSS-protected content rendering\n- **Html Component**: Transform HTML strings to React components with configurable rules\n- **Markdown Component**: Convert Markdown to React components with syntax highlighting\n- **Transform System**: Extensible HTML element transformation with fallback handling\n\n### 🔄 **Component Serialization System**\n\n- **\"WebView for React\" Functionality**: Serialize React components to JSON and reconstruct with full functionality preserved\n- **Complete Form Serialization**: **First form state management serialization system** - All form components preserve controlled component state, validation rules, and error handling\n- **Production-Ready Components**: 11 components with complete Schema architecture and comprehensive QA validation (Code, Image, Text, HeroBlock, GridLayout, GridCell, TextInputField, SelectInputField, HtmlInputField, ChoiceInputField, SwitchInputField, FormBlock)\n- **Form Components Innovation**: TextInputField, SelectInputField, HtmlInputField, ChoiceInputField, SwitchInputField, and FormBlock with 97.5% test pass rate and 0.4ms average serialization\n- **Complex Form Data Handling**: Options arrays, HTML content, validation configurations, choice fields, and boolean controls fully supported through serialization\n- **Production Form Workflows**: Complete form creation, editing, validation, and submission workflows preserved through serialize/deserialize cycles\n- **Nested Component Serialization**: HeroBlock component pioneered nested component serialization with Button actions array support\n- **Responsive Grid Serialization**: GridLayout and GridCell components provide first responsive grid system with complete serialization and breakpoint preservation\n- **Complex Component Architecture**: Components handle sophisticated hierarchical structures with background images, gradients, responsive layouts, and interactive elements\n- **Breakpoint Preservation**: All responsive breakpoint configurations (xs,sm,md,lg,xl) fully preserved through serialization cycles\n- **Data Binding Integration**: Components maintain data source connections through serialization cycles\n- **Performance Optimized**: <1ms serialization/deserialization, handles 1000+ components efficiently, 2.5-500x performance targets exceeded\n- **CMS Ready**: Store components in databases/CMS systems and reconstruct as living React components\n- **Graceful Fallbacks**: Unknown components automatically use HTML fallback rendering\n- **Cross-Platform**: Consistent serialization across all major browsers and environments\n\n### 🛡️ **Built-in Error Handling & Accessibility**\n\n- **ErrorBoundary**: Automatic error catching with user-friendly fallback UI and retry functionality\n- **AccessibilityProvider**: WCAG 2.1 AA compliance with system preference detection and ARIA announcements\n- **Breadcrumbs**: Accessible navigation hierarchy with keyboard support and customization\n- **Automatic Integration**: All features automatically enabled in QwickApp without configuration\n\n### 📄 **Serializable Page System with Advanced Print Support**\n\n- **Schema-Driven Architecture**: Complete page templates with ViewSchema, PrintConfigSchema, and PageTemplateSchema for full serialization\n- **Intelligent Print Detection**: Automatic print mode activation via browser events (Ctrl+P/Cmd+P) with comprehensive state management\n- **Advanced Print Configuration**: Complete print theming system with headers, footers, backgrounds, page margins (0mm-25mm), and CSS variable-driven positioning\n- **Dynamic Print Layout**: Edge-to-edge printing capabilities with configurable page margins, automatic height measurement, and proper page break handling\n- **Print Content Control**: ReactNode | string support for headers/footers, background image/color support, and interactive element hiding\n- **Template-Driven Development**: JSON-serializable page configurations with metadata, SEO optimization, and complete customization\n- **CMS-Ready Integration**: Dynamic page content through dataSource with seamless database and headless CMS connectivity\n- **Page Context System**: Automatic QwickApp scaffolding integration with print-aware navigation and routing\n\n### 🚀 **Developer Experience**\n\n- **TypeScript First**: Full TypeScript support with comprehensive types\n- **Storybook**: Interactive component documentation\n- **Performance**: Optimized rendering and minimal bundle size\n- **Accessibility**: WCAG-compliant components with ARIA support\n\n## Installation\n\n### 🚀 Quick Start (Recommended)\n\n**Create a new QwickApps project in one command:**\n\n```bash\nnpx @qwickapps/react-framework/scripts/create-qwickapps-project my-qwickapps-project\ncd my-qwickapps-project\nnpm start\n```\n\nThis will:\n\n1. Create a new React app with TypeScript\n2. Install QwickApps React Framework and all dependencies\n3. Set up a complete QwickApps application template\n4. Start the development server\n\nYour app will be running at `http://localhost:3000` with QwickApps pre-configured!\n\n### 📦 Manual Installation\n\nIf you have an existing React project, install the framework manually:\n\n```bash\nnpm install @qwickapps/react-framework @emotion/react @emotion/styled @mui/material @mui/icons-material react-router-dom\n```\n\n### Optional Dependencies\n\nThe framework uses console-based logging by default. For advanced logging features, optionally install:\n\n```bash\nnpm install @qwickapps/logging\n```\n\nThis will enable structured logging with configurable levels and outputs. If not installed, the framework automatically falls back to console logging.\n\n## Quick Start\n\n### ⚡ Already Used the Quick Start Script?\n\nIf you used the quick start script above, your app is already set up and running! Skip to the [Advanced Usage](#advanced-usage) section.\n\n### 🔧 Manual Setup (for existing React projects)\n\nIf you're adding QwickApps to an existing React project or installed manually:\n\n```tsx\nimport { \n  QwickApp, \n  ResponsiveMenu, \n  HeroBlock,\n  Section,\n  Content,\n  ComponentTransformer \n} from '@qwickapps/react-framework';\n\nconst menuItems = [\n  {\n    id: 'home',\n    label: 'Home',\n    icon: <HomeIcon />,\n    onClick: () => navigate('/'),\n    active: true,\n  },\n  {\n    id: 'about',\n    label: 'About',\n    icon: <InfoIcon />,\n    onClick: () => navigate('/about'),\n  },\n];\n\nfunction App() {\n  return (\n    <QwickApp appName=\"MyApp\" appId=\"com.mycompany.app\">\n      <ResponsiveMenu items={menuItems} />\n      \n      <HeroBlock\n        title=\"Welcome to MyApp\"\n        subtitle=\"Build amazing applications with ease\"\n        backgroundGradient=\"linear-gradient(135deg, #667eea 0%, #764ba2 100%)\"\n        actions={\n          <button>Get Started</button>\n        }\n      />\n      \n      <Section padding=\"large\">\n        <Content title=\"About Us\" centered>\n          <p>Your content here...</p>\n        </Content>\n      </Section>\n    </QwickApp>\n  );\n}\n```\n\n### Custom Logo\n\n```tsx\n// Use built-in Logo component with appName\n<QwickApp appName=\"MyApp\" />\n\n// Or provide a custom logo\n<QwickApp \n  appName=\"MyApp\"\n  logo={<img src=\"/logo.png\" alt=\"MyApp\" />}\n/>\n\n// Custom logo with built-in Logo component\n<QwickApp \n  appName=\"MyApp\"\n  logo={<Logo name=\"MyApp\" size=\"large\" badge=\"top-right\" />}\n/>\n```\n\n## Responsive Navigation\n\nThe `ResponsiveMenu` component automatically adapts to different screen sizes:\n\n```tsx\nimport { ResponsiveMenu } from '@qwickapps/react-framework';\n\nconst menuItems = [\n  {\n    id: 'dashboard',\n    label: 'Dashboard',\n    icon: <DashboardIcon />,\n    onClick: () => navigate('/dashboard'),\n    active: true,\n  },\n  {\n    id: 'products',\n    label: 'Products', \n    icon: <ProductsIcon />,\n    onClick: () => navigate('/products'),\n    badge: '5', // Show badge with count\n  },\n  {\n    id: 'settings',\n    label: 'Settings',\n    icon: <SettingsIcon />,\n    href: '/settings', // Use href for links\n    disabled: false,\n  },\n];\n\nfunction App() {\n  return (\n    <QwickApp appName=\"MyApp\">\n      <ResponsiveMenu \n        items={menuItems}\n        logoPosition=\"center\" // 'left' | 'center' | 'right'\n        onMenuToggle={(isOpen) => console.log('Menu state:', isOpen)}\n      />\n      {/* Your content */}\n    </QwickApp>\n  );\n}\n```\n\n**Responsive Behavior:**\n\n- **Mobile (< 768px)**: Bottom navigation bar\n- **Tablet (768-1024px)**: Collapsible sidebar nav rail  \n- **Desktop (> 1024px)**: Top navigation with drawer for overflow\n\n## Layout Blocks\n\nBuild flexible, responsive layouts with pre-built components:\n\n### Hero Blocks\n\n```tsx\nimport { HeroBlock } from '@qwickapps/react-framework';\n\n<HeroBlock\n  title=\"Welcome to Our Platform\"\n  subtitle=\"The best way to manage your workflow\"\n  height=\"large\" // 'small' | 'medium' | 'large' | 'fullscreen'\n  backgroundImage=\"/hero-bg.jpg\"\n  backgroundGradient=\"linear-gradient(135deg, #667eea 0%, #764ba2 100%)\"\n  overlayOpacity={0.6}\n  textAlign=\"center\"\n  actions={\n    <div>\n      <button>Get Started</button>\n      <button>Learn More</button>\n    </div>\n  }\n/>\n```\n\n### Multi-Column Layouts\n\n```tsx\nimport { GridLayout, GridCell } from '@qwickapps/react-framework';\n\n<GridLayout columns={3} spacing=\"large\" equalHeight responsive>\n  <GridCell padding=\"large\" background=\"var(--theme-surface)\">\n    <h3>Feature One</h3>\n    <p>Description here...</p>\n  </GridCell>\n  <GridCell padding=\"large\" background=\"var(--theme-surface)\">\n    <h3>Feature Two</h3>\n    <p>More content...</p>\n  </GridCell>\n  <GridCell padding=\"large\" background=\"var(--theme-surface)\">\n    <h3>Feature Three</h3>\n    <p>Even more content...</p>\n  </GridCell>\n</GridLayout>\n```\n\n### Feature Grids\n\n```tsx\nimport { FeatureGrid } from '@qwickapps/react-framework';\n\n<FeatureGrid\n  columns={3}\n  gap=\"large\"\n  features={[\n    {\n      id: 'fast',\n      icon: <FastIcon />,\n      title: 'Lightning Fast',\n      description: 'Optimized for performance and speed',\n      action: <button>Learn More</button>\n    },\n    {\n      id: 'secure',\n      icon: <SecureIcon />,\n      title: 'Secure by Default',\n      description: 'Built with security best practices',\n      action: <button>Security Guide</button>\n    },\n    {\n      id: 'scalable',\n      icon: <ScaleIcon />,\n      title: 'Highly Scalable',\n      description: 'Grows with your application needs',\n      action: <button>Architecture</button>\n    },\n  ]}\n/>\n```\n\n### Content Blocks & Sections\n\n```tsx\nimport { Section, Content } from '@qwickapps/react-framework';\n\n<Section padding=\"large\" background=\"alternate\" maxWidth=\"large\">\n  <Content \n    title=\"About Our Company\"\n    variant=\"elevated\" // 'default' | 'elevated' | 'outlined' | 'filled'\n    padding=\"large\"\n    centered\n  >\n    <p>Your content here...</p>\n  </Content>\n</Section>\n```\n\n### CollapsibleLayout\n\nCreate advanced expandable/collapsible sections with comprehensive features:\n\n```tsx\nimport { CollapsibleLayout } from '@qwickapps/react-framework';\n\n<CollapsibleLayout\n  title=\"User Settings\"\n  subtitle=\"Configure your account preferences\"\n  defaultCollapsed={false}\n  variant=\"outlined\" // 'default' | 'outlined' | 'elevated' | 'filled'\n  triggerArea=\"header\" // 'header' | 'button' | 'both'\n  animationStyle=\"slide\" // 'fade' | 'slide' | 'scale'\n  persistState={true} // Remember state in localStorage\n  leadIcon={<SettingsIcon />}\n  headerActions={\n    <Button size=\"small\">Edit</Button>\n  }\n>\n  <Stack spacing={2}>\n    <TextField label=\"Display Name\" />\n    <TextField label=\"Email\" />\n    <Switch label=\"Email Notifications\" />\n  </Stack>\n</CollapsibleLayout>\n```\n\n**Key Features:**\n\n- **Controlled & Uncontrolled State**: Use `collapsed` prop for controlled state or `defaultCollapsed` for uncontrolled\n- **State Persistence**: `persistState` option saves collapsed state to localStorage\n- **Multiple Animations**: Choose from fade, slide, or scale animations with customizable duration\n- **Flexible Triggers**: Header click, button only, or both can trigger expand/collapse\n- **Rich Content Support**: Supports React components, HTML strings, and mixed content\n- **Accessibility Built-in**: ARIA attributes, keyboard navigation, and screen reader support\n- **Visual Variants**: Material-UI inspired variants (outlined, elevated, filled)\n- **CMS Integration**: Full data binding support for content management systems\n\n**Advanced Usage:**\n\n```tsx\n// Controlled state with custom icons\nconst [isCollapsed, setIsCollapsed] = useState(false);\n\n<CollapsibleLayout\n  title=\"Advanced Configuration\"\n  collapsed={isCollapsed}\n  onToggle={setIsCollapsed}\n  collapsedIcon={<ExpandMoreIcon />}\n  expandedIcon={<ExpandLessIcon />}\n  collapsedView={\n    <Typography color=\"text.secondary\">\n      Click to view configuration options...\n    </Typography>\n  }\n  footerView={\n    <Button size=\"small\">Save Changes</Button>\n  }\n>\n  {/* Complex form content */}\n</CollapsibleLayout>\n\n// Data binding with CMS\n<CollapsibleLayout dataSource=\"settings.user-preferences\" />\n```\n\n## CMS Content Components\n\nTransform HTML strings and Markdown content into React components with intelligent element transformation and syntax highlighting.\n\n### Html Component Usage\n\nTransform HTML strings into React components with configurable transformation rules:\n\n```tsx\nimport { Html } from '@qwickapps/react-framework';\n\n// Basic HTML transformation\n<Html>\n  {`<h1>Welcome</h1>\n    <p>This is a paragraph with <code>inline code</code>.</p>\n    <pre><code class=\"language-javascript\">\n      const greeting = \"Hello, World!\";\n      console.log(greeting);\n    </code></pre>`}\n</Html>\n\n// Custom transformation rules\nconst customRules = [\n  {\n    selector: 'button',\n    transform: (element, key) => (\n      <Button key={key} variant=\"contained\">\n        {element.textContent}\n      </Button>\n    )\n  }\n];\n\n<Html transformConfig={{ rules: customRules }}>\n  {htmlContent}\n</Html>\n\n// With header stripping (useful for articles)\n<Html stripHeaders placeholder=\"No content available\">\n  {articleContent}\n</Html>\n```\n\n**Default Transformations:**\n\n- `<pre><code>` → Code component with syntax highlighting\n- `<section class=\"blog-section\">` → Section component\n- `<button>` → Button component\n- Other elements → Native HTML with SafeSpan content\n\n### Markdown Component Usage\n\nConvert Markdown to React components with full GitHub Flavored Markdown support:\n\n```tsx\nimport { Markdown } from '@qwickapps/react-framework';\n\nconst markdownContent = `\n# Welcome to Our Platform\n\nThis is **bold text** and this is *italic text*.\n\n## Code Example\n\nHere's some JavaScript:\n\n\\`\\`\\`javascript\nconst framework = \"QwickApps\";\nconsole.log(\\`Using \\${framework} Framework\\`);\n\\`\\`\\`\n\nAnd some inline \\`code\\` here.\n\n## Features\n\n- React components\n- Syntax highlighting  \n- GitHub Flavored Markdown\n- Configurable transformation\n`;\n\n<Markdown>{markdownContent}</Markdown>\n\n// With custom HTML transformation config\n<Markdown htmlTransformConfig={customConfig}>\n  {markdownContent}\n</Markdown>\n\n// With placeholder for empty content\n<Markdown placeholder=\"No content to display\">\n  {emptyContent}\n</Markdown>\n```\n\n**Key Features:**\n\n- GitHub Flavored Markdown support via marked library\n- Automatic syntax highlighting for code blocks\n- Inline code preservation\n- Custom transformation rules for HTML elements\n- Error handling with development debugging\n- TypeScript support with comprehensive props interface\n\n### Transform System Architecture\n\nThe transform system provides extensible HTML element transformation:\n\n```tsx\nimport { TransformRule, TransformConfig } from '@qwickapps/react-framework';\n\n// Define custom transformation rules\nconst articleRules: TransformRule[] = [\n  {\n    selector: 'pre',\n    transform: (element, key) => {\n      const codeChild = element.querySelector('code');\n      if (!codeChild) return null;\n      \n      const language = Array.from(codeChild.classList)\n        .find(cls => cls.startsWith('language-'))\n        ?.replace('language-', '') || 'text';\n      \n      return (\n        <Code key={key} language={language} showCopy>\n          {codeChild.textContent || ''}\n        </Code>\n      );\n    }\n  },\n  // Add more rules...\n];\n\nconst config: TransformConfig = {\n  rules: articleRules,\n  sanitize: true,\n  fallbackComponent: (element, key) => (\n    <SafeSpan key={key} html={element.outerHTML} />\n  )\n};\n\n// Use with Html or Markdown components\n<Html transformConfig={config}>{htmlContent}</Html>\n<Markdown htmlTransformConfig={config}>{markdownContent}</Markdown>\n```\n\n**Built-in Rule Sets:**\n\n- `defaultArticleRules` - Optimized for blog/article content with header stripping\n- `defaultMarkdownRules` - Optimized for Markdown content with inline code preservation\n\n### Integration with Existing Components\n\nThe Html and Markdown components integrate seamlessly with existing Framework components:\n\n```tsx\n// Article component now uses Html internally\n<Article title=\"Blog Post\" author=\"John Doe\">\n  {htmlContent} {/* Automatically transformed via Html component */}\n</Article>\n\n// Content component detects string children and uses Html\n<Content title=\"Dynamic Content\">\n  {dynamicHtmlFromCMS} {/* String content automatically transformed */}\n</Content>\n\n// Section with Markdown content\n<Section padding=\"large\">\n  <Content title=\"Documentation\">\n    <Markdown>{documentationMarkdown}</Markdown>\n  </Content>\n</Section>\n```\n\n### Error Handling and Fallbacks\n\nBoth components provide comprehensive error handling:\n\n```tsx\n// Development mode shows detailed errors\n<Html>{malformedHtml}</Html> // Shows red border with error details\n\n// Production mode gracefully degrades\n<Markdown>{invalidMarkdown}</Markdown> // Falls back to SafeSpan rendering\n\n// Custom error handling\n<Html \n  placeholder=\"Content temporarily unavailable\"\n  fallbackComponent={(element, key) => (\n    <div key={key}>Custom fallback for {element.tagName}</div>\n  )}\n>\n  {riskyContent}\n</Html>\n```\n\n## Serializable Page System\n\nThe QwickApps React Framework includes a sophisticated Page System that enables serializable page templates with comprehensive print support, intelligent print detection, and seamless CMS integration through a schema-driven architecture.\n\n### Core Page System Features\n\n#### 🎯 **Schema-Driven Architecture**\n\n- **ViewSchema**: Base schema with common UI attributes (styling, accessibility, layout)\n- **PrintConfigSchema**: Complete print mode configuration with theming and optimization\n- **PageTemplateSchema**: Full page models extending ViewSchema with metadata, SEO, and print settings\n- **JSON Serialization**: Complete page configurations stored and transmitted as JSON\n\n#### 🖨️ **Intelligent Print Detection**\n\n- **Automatic URL Detection**: `?print=true` parameter triggers print mode instantly\n- **Browser Event Integration**: Captures Ctrl+P and print menu events automatically\n- **Manual Control**: Programmatic print mode activation with custom configurations\n- **Scaffolding Awareness**: Automatically hides navigation and headers in print mode\n\n#### 📊 **CMS Integration Ready**\n\n- **Database Storage**: Store complete page templates as JSON in any database\n- **Headless CMS**: Direct integration with Strapi, Contentful, Sanity, and custom APIs\n- **Dynamic Loading**: Fetch page templates at runtime with fallback handling\n- **Version Control**: Schema versioning for backward compatibility and migrations\n\n### Page Component Usage\n\n#### Basic Page Implementation\n\n```tsx\nimport { Page, usePrintMode, PageTemplateSchema } from '@qwickapps/react-framework';\n\n// Simple page with props\nfunction HomePage() {\n  return (\n    <Page\n      title=\"Welcome to Our App\"\n      description=\"Experience the best of our platform\"\n      variant=\"default\"\n      padding=\"large\"\n      printConfig={{\n        theme: 'light',\n        hideScaffolding: true,\n        showPrintDate: true\n      }}\n    >\n      <h1>Welcome!</h1>\n      <p>Your page content here...</p>\n    </Page>\n  );\n}\n\n// Schema-driven page with complete serialization\nconst pageTemplate: PageTemplateSchema = {\n  slug: \"about-us\",\n  name: \"About Us\", \n  title: \"About Our Company | MyApp\",\n  description: \"Learn more about our company history and values\",\n  metaKeywords: \"company, about, history, values, team\",\n  metaAuthor: \"Company Team\",\n  children: `\n    <h1>About Our Company</h1>\n    <p>Founded in 2020, we are dedicated to creating amazing experiences...</p>\n    <section class=\"team\">\n      <h2>Our Team</h2>\n      <p>Meet the people behind our success...</p>\n    </section>\n  `,\n  printConfig: {\n    theme: \"light\",\n    hideScaffolding: true,\n    hideInteractiveElements: true,\n    optimizeForMonochrome: true,\n    printTitle: \"Company Overview - About Us\",\n    printHeader: \"Company Information\",\n    printFooter: \"© 2025 Our Company • Confidential\",\n    showPrintDate: true\n  },\n  showInNavigation: true,\n  navigationPriority: 2,\n  indexable: true\n};\n\nfunction AboutPage() {\n  return <Page template={pageTemplate} />;\n}\n```\n\n### Schema Architecture\n\n#### ViewSchema - Base UI Schema\n\n```tsx\nimport { ViewSchema } from '@qwickapps/react-framework';\n\n// Base schema for all UI components - provides consistent styling and accessibility\ninterface ViewSchema {\n  // Styling Properties\n  className?: string;              // CSS class name for custom styling\n  style?: string;                  // Inline styles as JSON string\n  id?: string;                     // Unique HTML element ID\n  hidden?: boolean;                // Component visibility control\n  \n  // Accessibility Properties\n  'aria-label'?: string;           // Accessibility label for screen readers\n  'aria-describedby'?: string;     // IDs of elements describing this component\n  'aria-labelledby'?: string;      // IDs of elements labeling this component\n  role?: string;                   // ARIA role (button, navigation, main, etc.)\n  \n  // Testing Properties\n  'data-testid'?: string;          // Test automation identifier\n}\n\n// Example: Custom component extending ViewSchema\nclass CustomCard extends ViewSchema {\n  @Field()\n  title?: string;\n  \n  @Field()\n  content?: string;\n  \n  // Inherits all styling and accessibility properties from ViewSchema\n}\n```\n\n#### PrintConfigSchema - Print Configuration\n\n```tsx\nimport { PrintConfigSchema } from '@qwickapps/react-framework';\n\ninterface PrintConfigSchema {\n  // Theme & Appearance\n  theme?: 'light' | 'dark';              // Print theme mode\n  palette?: string;                      // Color palette (default, autumn, cosmic, etc.)\n  optimizeForMonochrome?: boolean;       // Black & white print optimization\n  \n  // Layout Control\n  hideScaffolding?: boolean;             // Hide navigation, headers, footers\n  hideInteractiveElements?: boolean;     // Hide buttons, forms, interactive content\n  \n  // Print Metadata\n  printTitle?: string;                   // Custom title for print header\n  printHeader?: string;                  // Custom header text\n  printFooter?: string;                  // Custom footer text\n  showPrintDate?: boolean;               // Include print timestamp\n}\n\n// Advanced print configuration examples\nconst reportPrintConfig: PrintConfigSchema = {\n  theme: 'light',\n  palette: 'default',\n  hideScaffolding: true,\n  hideInteractiveElements: true,\n  optimizeForMonochrome: true,\n  printTitle: 'Quarterly Sales Report - Q4 2024',\n  printHeader: 'CONFIDENTIAL - Internal Use Only',\n  printFooter: 'Page [page] of [total] • Generated on [date] • QwickApps.com',\n  showPrintDate: true\n};\n\nconst invoicePrintConfig: PrintConfigSchema = {\n  theme: 'light',\n  hideScaffolding: true,\n  hideInteractiveElements: true,\n  printTitle: 'Invoice #INV-2024-001',\n  printFooter: 'Thank you for your business!',\n  showPrintDate: false // Don't show print date on invoices\n};\n```\n\n#### PageTemplateSchema - Complete Page Model\n\n```tsx\nimport { PageTemplateSchema, PrintConfigSchema } from '@qwickapps/react-framework';\n\ninterface PageTemplateSchema extends ViewSchema {\n  // Page Identity & Navigation\n  slug?: string;                    // URL-friendly identifier (e.g., \"about-us\")\n  name?: string;                    // Human-readable page name\n  icon?: string;                    // Page icon for navigation\n  \n  // SEO & Metadata\n  title?: string;                   // HTML title tag content\n  description?: string;             // Meta description for search engines\n  metaKeywords?: string;            // SEO keywords (comma-separated)\n  metaAuthor?: string;              // Page author information\n  canonicalUrl?: string;            // Canonical URL for SEO\n  indexable?: boolean;              // Allow search engine indexing\n  \n  // Content & Layout\n  children?: React.ReactNode | string;    // Page content (JSX or HTML string)\n  layout?: string;                  // Layout template identifier\n  \n  // Print Configuration\n  printConfig?: PrintConfigSchema;  // Print mode settings\n  \n  // Access Control\n  requiresAuth?: boolean;           // Authentication required\n  requiredRoles?: string;           // Required user roles (comma-separated)\n  \n  // Navigation Control\n  showInNavigation?: boolean;       // Include in navigation menus\n  navigationPriority?: number;      // Menu ordering (lower = higher priority)\n}\n\n// Complete page template examples\nconst productPageTemplate: PageTemplateSchema = {\n  // Identity\n  slug: \"premium-widgets\",\n  name: \"Premium Widgets\",\n  icon: \"widgets\",\n  \n  // SEO\n  title: \"Premium Widgets - Best Quality Widgets | Our Store\",\n  description: \"Discover our premium widget collection with superior quality and innovative designs.\",\n  metaKeywords: \"widgets, premium, quality, innovative, store\",\n  metaAuthor: \"Product Team\",\n  canonicalUrl: \"https://ourstore.com/products/premium-widgets\",\n  indexable: true,\n  \n  // Content (can be HTML string or React components)\n  children: `\n    <div class=\"product-page\">\n      <h1>Premium Widgets</h1>\n      <div class=\"product-gallery\">\n        <!-- Product images would go here -->\n      </div>\n      <div class=\"product-details\">\n        <h2>Product Features</h2>\n        <ul>\n          <li>Superior build quality</li>\n          <li>Innovative design</li>\n          <li>5-year warranty</li>\n        </ul>\n      </div>\n      <div class=\"product-actions\">\n        <button class=\"btn-primary\">Add to Cart</button>\n        <button class=\"btn-secondary\">Add to Wishlist</button>\n      </div>\n    </div>\n  `,\n  \n  // Print configuration for product pages\n  printConfig: {\n    theme: 'light',\n    hideScaffolding: true,\n    hideInteractiveElements: true,      // Hide Add to Cart buttons when printing\n    printTitle: 'Premium Widgets - Product Information',\n    printFooter: 'Visit ourstore.com for latest pricing and availability',\n    showPrintDate: true\n  },\n  \n  // Navigation\n  showInNavigation: true,\n  navigationPriority: 5,\n  \n  // Access (no authentication required for product pages)\n  requiresAuth: false\n};\n\nconst adminDashboardTemplate: PageTemplateSchema = {\n  slug: \"admin-dashboard\",\n  name: \"Admin Dashboard\",\n  title: \"Administrator Dashboard | Our App\",\n  description: \"Administrative dashboard with user management and analytics\",\n  \n  // Restricted content\n  requiresAuth: true,\n  requiredRoles: \"admin,superuser\",\n  showInNavigation: true,\n  navigationPriority: 1,\n  indexable: false,  // Don't index admin pages\n  \n  // Admin-specific print configuration\n  printConfig: {\n    theme: 'light',\n    hideScaffolding: true,\n    printTitle: 'Administrator Dashboard Report',\n    printHeader: 'CONFIDENTIAL - Administrative Data',\n    showPrintDate: true,\n    optimizeForMonochrome: true\n  }\n};\n```\n\n### Print Mode Integration\n\n#### usePrintMode Hook - Comprehensive Print Control\n\n```tsx\nimport { usePrintMode } from '@qwickapps/react-framework';\n\nfunction DocumentPage() {\n  const { \n    isPrintMode, \n    printConfig, \n    enterPrintMode, \n    exitPrintMode, \n    togglePrintMode \n  } = usePrintMode({\n    theme: 'light',\n    hideScaffolding: true,\n    showPrintDate: true,\n    printTitle: 'Important Document',\n    optimizeForMonochrome: false\n  });\n\n  // Print mode is automatically detected from:\n  // 1. URL parameter: ?print=true\n  // 2. Browser print events (Ctrl+P, File > Print)\n  // 3. Manual activation via the functions below\n\n  const handleCustomPrint = () => {\n    // Enter print mode with custom configuration\n    enterPrintMode({\n      theme: 'light',\n      hideInteractiveElements: true,\n      printTitle: 'Custom Print Title',\n      printHeader: 'CONFIDENTIAL',\n      optimizeForMonochrome: true\n    });\n    \n    // Trigger browser print dialog\n    setTimeout(() => window.print(), 100);\n  };\n\n  return (\n    <div>\n      {/* Print mode indicator */}\n      {isPrintMode && (\n        <div className=\"print-mode-banner\">\n          <span>📄 Print Mode Active</span>\n          <span>Theme: {printConfig.theme}</span>\n          <span>Monochrome: {printConfig.optimizeForMonochrome ? 'Yes' : 'No'}</span>\n        </div>\n      )}\n      \n      {/* Print controls (hidden in print mode) */}\n      {!isPrintMode && (\n        <div className=\"print-controls\">\n          <button onClick={() => togglePrintMode()}>\n            Toggle Print Mode\n          </button>\n          <button onClick={handleCustomPrint}>\n            Print Document\n          </button>\n          <button onClick={() => {\n            enterPrintMode({ optimizeForMonochrome: true });\n          }}>\n            Print in B&W\n          </button>\n        </div>\n      )}\n      \n      {/* Page content */}\n      <main>\n        <h1>Document Title</h1>\n        <p>Your document content here...</p>\n      </main>\n    </div>\n  );\n}\n```\n\n#### Print URL Integration\n\n```tsx\n// Automatic print mode via URL\n// Navigate to: https://yourapp.com/document?print=true\n\nfunction App() {\n  return (\n    <Router>\n      <Routes>\n        <Route path=\"/document\" element={\n          <Page \n            title=\"Document\"\n            printConfig={{\n              hideScaffolding: true,\n              showPrintDate: true,\n              printTitle: 'Important Document'\n            }}\n          >\n            <DocumentContent />\n          </Page>\n        } />\n      </Routes>\n    </Router>\n  );\n}\n\n// The Page component automatically detects ?print=true and activates print mode\n```\n\n### CMS and Database Integration\n\n#### Dynamic Page Loading from CMS\n\n```tsx\nimport { Page, PageTemplateSchema } from '@qwickapps/react-framework';\n\n// Headless CMS integration example\nfunction CMSPage({ pageSlug }: { pageSlug: string }) {\n  const [pageTemplate, setPageTemplate] = useState<PageTemplateSchema | null>(null);\n  const [loading, setLoading] = useState(true);\n  const [error, setError] = useState<string | null>(null);\n\n  useEffect(() => {\n    // Fetch page template from CMS\n    fetchPageFromCMS(pageSlug)\n      .then(template => {\n        setPageTemplate(template);\n        setLoading(false);\n      })\n      .catch(err => {\n        setError(err.message);\n        setLoading(false);\n      });\n  }, [pageSlug]);\n\n  // Loading state\n  if (loading) {\n    return (\n      <Page title=\"Loading...\" loading={{ type: 'spinner', message: 'Loading page...' }}>\n        <div>Loading page content...</div>\n      </Page>\n    );\n  }\n\n  // Error state\n  if (error) {\n    return (\n      <Page \n        title=\"Error\" \n        message={{ type: 'error', content: `Failed to load page: ${error}` }}\n      >\n        <div>Page could not be loaded</div>\n      </Page>\n    );\n  }\n\n  // Render page from CMS template\n  return pageTemplate ? (\n    <Page template={pageTemplate} />\n  ) : (\n    <Page title=\"Not Found\" message={{ type: 'warning', content: 'Page not found' }}>\n      <h1>Page Not Found</h1>\n      <p>The requested page could not be found.</p>\n    </Page>\n  );\n}\n\n// CMS API integration function\nasync function fetchPageFromCMS(slug: string): Promise<PageTemplateSchema> {\n  // Example: Strapi CMS integration\n  const response = await fetch(`/api/pages?filters[slug][$eq]=${slug}&populate=*`);\n  if (!response.ok) {\n    throw new Error('Page not found');\n  }\n  \n  const { data } = await response.json();\n  if (!data.length) {\n    throw new Error('Page not found');\n  }\n  \n  const cmsPage = data[0].attributes;\n  \n  // Transform CMS data to PageTemplateSchema\n  const pageTemplate: PageTemplateSchema = {\n    slug: cmsPage.slug,\n    name: cmsPage.name,\n    title: cmsPage.seoTitle || cmsPage.name,\n    description: cmsPage.seoDescription,\n    metaKeywords: cmsPage.metaKeywords,\n    metaAuthor: cmsPage.author?.name,\n    children: cmsPage.content,\n    printConfig: {\n      theme: cmsPage.printTheme || 'light',\n      hideScaffolding: cmsPage.printHideNavigation ?? true,\n      showPrintDate: cmsPage.printShowDate ?? true,\n      printTitle: cmsPage.printTitle || cmsPage.name\n    },\n    showInNavigation: cmsPage.showInMenu ?? true,\n    navigationPriority: cmsPage.menuOrder || 0,\n    requiresAuth: cmsPage.requiresAuthentication ?? false,\n    indexable: cmsPage.seoIndexable ?? true\n  };\n  \n  return pageTemplate;\n}\n```\n\n#### Database Storage Example\n\n```tsx\n// Example: Storing page templates in database\nconst pageTemplates = [\n  {\n    id: 1,\n    template: JSON.stringify({\n      slug: \"home\",\n      name: \"Home\",\n      title: \"Welcome to Our App | Home\",\n      description: \"Experience the best of our platform\",\n      children: \"<h1>Welcome!</h1><p>Get started with our amazing features...</p>\",\n      printConfig: {\n        theme: \"light\",\n        hideScaffolding: true,\n        showPrintDate: true\n      }\n    } as PageTemplateSchema)\n  },\n  // More templates...\n];\n\n// Loading page from database\nfunction DatabasePage({ pageId }: { pageId: number }) {\n  const [template, setTemplate] = useState<PageTemplateSchema | null>(null);\n\n  useEffect(() => {\n    // Simulate database fetch\n    const dbPage = pageTemplates.find(p => p.id === pageId);\n    if (dbPage) {\n      setTemplate(JSON.parse(dbPage.template));\n    }\n  }, [pageId]);\n\n  return template ? <Page template={template} /> : <div>Loading...</div>;\n}\n```\n\n### Page Context and Lifecycle\n\n#### Advanced Page Context Usage\n\n```tsx\nimport { usePageContext, usePage } from '@qwickapps/react-framework';\n\nfunction PageAwareComponent() {\n  const { route, isPrintMode, printConfig } = usePageContext();\n  const { setTitle, setDescription } = usePage();\n\n  useEffect(() => {\n    // Dynamic page metadata updates\n    setTitle(`Dynamic Title - ${Date.now()}`);\n    setDescription('Dynamically updated description');\n  }, []);\n\n  // Render differently based on print mode\n  if (isPrintMode) {\n    return (\n      <div className=\"print-optimized\">\n        <h2>Print-Optimized View</h2>\n        <p>Current route: {route}</p>\n        <p>Print theme: {printConfig.theme}</p>\n        <p>Print date shown: {printConfig.showPrintDate ? 'Yes' : 'No'}</p>\n        {/* Simplified content for printing */}\n      </div>\n    );\n  }\n\n  return (\n    <div className=\"interactive-view\">\n      <h2>Interactive View</h2>\n      <p>Route: {route}</p>\n      <button onClick={() => alert('Interactive element')}>\n        Click me\n      </button>\n      {/* Full interactive content */}\n    </div>\n  );\n}\n```\n\n### Page Variants and Layout Options\n\n#### Advanced Page Styling\n\n```tsx\n// Different page layout variants for different use cases\nfunction LayoutExamples() {\n  return (\n    <>\n      {/* Centered layout for landing pages */}\n      <Page \n        variant=\"centered\" \n        padding=\"large\" \n        maxWidth=\"medium\"\n        background=\"default\"\n        title=\"Landing Page\"\n      >\n        <h1>Welcome to Our App</h1>\n        <p>Centered content with medium width</p>\n      </Page>\n\n      {/* Full width for dashboards */}\n      <Page \n        variant=\"fullwidth\" \n        padding=\"small\" \n        background=\"surface\"\n        title=\"Dashboard\"\n      >\n        <div className=\"dashboard-grid\">\n          {/* Dashboard widgets */}\n        </div>\n      </Page>\n\n      {/* Narrow layout for articles/blogs */}\n      <Page \n        variant=\"narrow\" \n        padding=\"large\" \n        background=\"default\"\n        title=\"Blog Article\"\n        printConfig={{\n          hideScaffolding: true,\n          optimizeForMonochrome: true,\n          printTitle: 'Article Title'\n        }}\n      >\n        <article>\n          <h1>Article Title</h1>\n          <p>Narrow layout optimized for reading...</p>\n        </article>\n      </Page>\n\n      {/* Wide layout for data tables */}\n      <Page \n        variant=\"wide\" \n        padding=\"medium\" \n        background=\"surface\"\n        title=\"Data Tables\"\n      >\n        <table className=\"data-table\">\n          {/* Wide table content */}\n        </table>\n      </Page>\n    </>\n  );\n}\n```\n\n## Advanced Print System\n\nThe QwickApps React Framework includes a sophisticated print system that enables professional print layouts with intelligent detection, dynamic configuration, and comprehensive theming support.\n\n### Print Mode Detection\n\nThe print system automatically detects print mode through multiple channels:\n\n#### URL Parameter Detection\n\n```tsx\n// Navigate to URL with print parameter to automatically enter print mode\nhttps://yourapp.com/document?print=true\n\n// Print mode activates immediately with configured settings\n```\n\n#### Browser Print Event Detection\n\n```tsx\n// Automatic detection of Ctrl+P (Windows/Linux) or Cmd+P (Mac)\n// Also detects File > Print menu usage\n// Print mode applies before print dialog opens\n```\n\n#### Manual Print Mode Control\n\n```tsx\nimport { usePrintMode } from '@qwickapps/react-framework';\n\nfunction DocumentPage() {\n  const { \n    isPrintMode, \n    printConfig, \n    enterPrintMode, \n    exitPrintMode, \n    togglePrintMode,\n    triggerPrint \n  } = usePrintMode();\n\n  const handlePrint = () => {\n    // Enter print mode with custom configuration\n    triggerPrint({\n      theme: 'light',\n      hideScaffolding: true,\n      showPrintDate: true,\n      printTitle: 'Custom Document Title'\n    });\n    \n    // Trigger browser print dialog\n    setTimeout(() => window.print(), 100);\n  };\n\n  return (\n    <div>\n      {isPrintMode ? (\n        <div className=\"print-mode-banner\">\n          Print Mode Active - {printConfig.theme} theme\n        </div>\n      ) : (\n        <button onClick={handlePrint}>Print Document</button>\n      )}\n      \n      <main>\n        <h1>Document Content</h1>\n        <p>Your document content here...</p>\n      </main>\n    </div>\n  );\n}\n```\n\n### Print Configuration System\n\n#### Complete Print Configuration Options\n\n```tsx\nimport { PrintConfigSchema } from '@qwickapps/react-framework';\n\nconst advancedPrintConfig: PrintConfigSchema = {\n  // Theme Control\n  theme: 'light' | 'dark',                    // Print theme mode\n  palette: 'default' | 'autumn' | 'cosmic',   // Color palette\n  optimizeForMonochrome: true,                 // B&W optimization\n  \n  // Layout Control\n  hideScaffolding: true,                       // Hide navigation/headers\n  hideInteractiveElements: true,               // Hide buttons/forms\n  pageMargins: '12mm',                         // 0mm, 6mm, 12mm, 20mm, 25mm\n  \n  // Custom Headers & Footers\n  printTitle: 'Quarterly Report - Q4 2024',   // Custom document title\n  printHeader: '<div>CONFIDENTIAL</div>',     // Custom header content\n  printFooter: 'Page [page] of [total]',      // Custom footer content\n  printHeaderFirstPage: '<div>Cover Page</div>', // Different first page header\n  printFooterFirstPage: 'Generated: [date]',     // Different first page footer\n  \n  // Background & Styling\n  printBackground: 'linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%)',\n  printBackgroundFirstPage: 'url(/logo-watermark.png) center, #ffffff',\n  \n  // Header/Footer Sizing\n  printHeaderHeight: '60px',                   // CSS units (px, mm, etc.)\n  printFooterHeight: '40px',                   // CSS units (px, mm, etc.)\n  \n  // Metadata\n  showPrintDate: true                          // Include print timestamp\n};\n```\n\n#### Page Component with Print Configuration\n\n```tsx\nimport { Page, PrintConfigSchema } from '@qwickapps/react-framework';\n\n// Using Page component with print configuration\nfunction ReportPage() {\n  const printConfig: Partial<PrintConfigSchema> = {\n    theme: 'light',\n    hideScaffolding: true,\n    hideInteractiveElements: true,\n    optimizeForMonochrome: true,\n    printTitle: 'Annual Sales Report',\n    printHeader: 'CONFIDENTIAL - Internal Use Only',\n    printFooter: 'Company © 2024 • Generated on [date]',\n    pageMargins: '20mm',\n    showPrintDate: true\n  };\n\n  return (\n    <Page\n      title=\"Annual Sales Report\"\n      description=\"Comprehensive sales analysis for fiscal year\"\n      printConfig={printConfig}\n    >\n      <h1>Annual Sales Report</h1>\n      <div className=\"report-content\">\n        {/* Report content */}\n      </div>\n    </Page>\n  );\n}\n```\n\n### Page Margins and Layout Options\n\n#### Edge-to-Edge Printing (0mm margins)\n\n```tsx\nconst borderlessPrintConfig = {\n  pageMargins: '0mm',        // Complete edge-to-edge printing\n  printBackground: '#f0f0f0' // Background covers entire page\n};\n```\n\n#### Standard Margin Options\n\n```tsx\nconst marginOptions = {\n  compact: { pageMargins: '6mm' },      // Minimal margins\n  standard: { pageMargins: '12mm' },     // Standard business documents\n  large: { pageMargins: '20mm' },        // Formal documents\n  formal: { pageMargins: '25mm' }        // Academic/legal documents\n};\n```\n\n### Dynamic CSS Variable System\n\nThe print system uses CSS variables for dynamic header/footer positioning:\n\n```css\n/* Automatically generated during print mode */\n@media print {\n  .page-print-mode {\n    --print-header-height: 60px;    /* Measured or configured */\n    --print-footer-height: 40px;    /* Measured or configured */\n    --print-background: transparent; /* Configured background */\n  }\n}\n\n/* Use in your custom print styles */\n.custom-print-content {\n  margin-top: var(--print-header-height);\n  margin-bottom: var(--print-footer-height);\n  background: var(--print-background);\n}\n```\n\n### Advanced Print Headers and Footers\n\n#### ReactNode Headers/Footers\n\n```tsx\nimport { SafeSpan } from '@qwickapps/react-framework';\n\nconst customPrintConfig = {\n  // React component header\n  printHeader: (\n    <div style={{ textAlign: 'center', fontWeight: 'bold' }}>\n      <h2>Company Annual Report</h2>\n      <p>Confidential - Internal Use Only</p>\n    </div>\n  ),\n  \n  // HTML string footer\n  printFooter: `\n    <div style=\"display: flex; justify-content: space-between;\">\n      <span>© 2024 Company Name</span>\n      <span>Page [page] of [total]</span>\n      <span>Generated: ${new Date().toLocaleDateString()}</span>\n    </div>\n  `,\n  \n  // Different first page header\n  printHeaderFirstPage: (\n    <div className=\"cover-page-header\">\n      <img src=\"/company-logo.png\" alt=\"Company Logo\" />\n      <h1>Annual Report 2024</h1>\n    </div>\n  )\n};\n```\n\n#### Template Variables in Headers/Footers\n\n```tsx\nconst templatePrintConfig = {\n  printFooter: 'Page [page] of [total] • Generated on [date] • company.com',\n  printHeader: 'Document: [title] • Department: [department] • Classification: [level]'\n};\n\n// Template variables are automatically replaced:\n// [page] → Current page number\n// [total] → Total page count  \n// [date] → Current date/time\n// [title] → Document title\n// Custom variables from page context\n```\n\n### Print-Specific Page Variants\n\n#### Different Layout Variants for Print\n\n```tsx\nfunction DocumentPage() {\n  return (\n    <Page\n      variant=\"narrow\"           // Optimized for reading\n      padding=\"large\"\n      background=\"default\"\n      printConfig={{\n        hideScaffolding: true,\n        optimizeForMonochrome: true,\n        printTitle: 'Article Title'\n      }}\n    >\n      <article>\n        <h1>Article Title</h1>\n        <p>Content optimized for print...</p>\n      </article>\n    </Page>\n  );\n}\n\n// Wide layout for tables and data\nfunction DataTablePage() {\n  return (\n    <Page\n      variant=\"wide\"\n      padding=\"small\"\n      printConfig={{\n        pageMargins: '6mm',        // Minimize margins for tables\n        hideScaffolding: true,\n        printTitle: 'Data Report'\n      }}\n    >\n      <table className=\"data-table\">\n        {/* Wide table content */}\n      </table>\n    </Page>\n  );\n}\n```\n\n### Integration with Page Templates\n\n#### Schema-Driven Print Configuration\n\n```tsx\nimport { PageTemplateSchema } from '@qwickapps/react-framework';\n\nconst pageTemplate: PageTemplateSchema = {\n  slug: \"financial-report\",\n  name: \"Financial Report\",\n  title: \"Q4 Financial Report | Company\",\n  description: \"Quarterly financial analysis and projections\",\n  \n  // Complete print configuration in schema\n  printConfig: {\n    theme: \"light\",\n    hideScaffolding: true,\n    hideInteractiveElements: true,\n    optimizeForMonochrome: true,\n    printTitle: \"Q4 2024 Financial Report\",\n    printHeader: \"CONFIDENTIAL - Financial Department\",\n    printFooter: \"© 2024 Company • Internal Use Only\",\n    pageMargins: \"20mm\",\n    showPrintDate: true,\n    printBackground: \"linear-gradient(to bottom, #f8f9fa, #ffffff)\"\n  },\n  \n  children: `\n    <div class=\"financial-report\">\n      <h1>Q4 Financial Performance</h1>\n      <section class=\"metrics\">\n        <!-- Financial content -->\n      </section>\n    </div>\n  `\n};\n\n// Use template-driven page\nfunction FinancialReportPage() {\n  return <Page template={pageTemplate} />;\n}\n```\n\n### Print Mode Context and State Management\n\n#### Accessing Print State Throughout App\n\n```tsx\nimport { usePageContext } from '@qwickapps/react-framework';\n\nfunction PrintAwareComponent() {\n  const { \n    isPrintMode, \n    printConfig, \n    triggerPrint \n  } = usePageContext();\n\n  // Conditional rendering based on print mode\n  if (isPrintMode) {\n    return (\n      <div className=\"print-optimized\">\n        <h2>Print-Optimized View</h2>\n        <p>Simplified content for printing</p>\n        <p>Theme: {printConfig.theme}</p>\n      </div>\n    );\n  }\n\n  return (\n    <div className=\"interactive-view\">\n      <h2>Interactive View</h2>\n      <button onClick={() => triggerPrint({ \n        optimizeForMonochrome: true,\n        printTitle: 'Custom Print Title'\n      })}>\n        Print This Page\n      </button>\n    </div>\n  );\n}\n```\n\n### Print CSS Classes and Styling\n\n#### Automatic Print Mode Classes\n\n```css\n/* Page automatically gets print mode classes */\n.page-print-mode {\n  /* Applied when in print mode */\n}\n\n.page-print-borderless {\n  /* Applied when pageMargins: '0mm' */\n}\n\n.page-print-compact {\n  /* Applied when pageMargins: '6mm' */\n}\n\n.page-print-large {\n  /* Applied when pageMargins: '20mm' */\n}\n\n.page-print-formal {\n  /* Applied when pageMargins: '25mm' */\n}\n\n.has-background {\n  /* Applied when custom background is specified */\n}\n```\n\n#### Custom Print Styling\n\n```css\n/* Print-specific component styling */\n@media print {\n  .interactive-element {\n    display: none !important; /* Hide interactive elements */\n  }\n  \n  .print-only {\n    display: block !important; /* Show print-only content */\n  }\n  \n  .page-break-before {\n    page-break-before: always; /* Force page breaks */\n  }\n  \n  .no-break {\n    page-break-inside: avoid; /* Prevent breaking */\n  }\n}\n\n/* Print header/footer styling */\n.page-print-header {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  height: var(--print-header-height);\n  background: white;\n  border-bottom: 1px solid #ddd;\n  padding: 10px;\n  box-sizing: border-box;\n}\n\n.page-print-footer {\n  position: fixed;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  height: var(--print-footer-height);\n  background: white;\n  border-top: 1px solid #ddd;\n  padding: 10px;\n  box-sizing: border-box;\n}\n```\n\n### Print System Best Practices\n\n#### Performance Optimization\n\n```tsx\n// Efficient print mode detection\nconst { isPrintMode } = usePrintMode();\n\n// Conditional loading of print-specific components\nconst PrintableContent = lazy(() => import('./PrintableContent'));\n\n// Memoized print configuration\nconst printConfig = useMemo(() => ({\n  theme: 'light',\n  hideScaffolding: true,\n  optimizeForMonochrome: true\n}), []);\n```\n\n#### Accessibility in Print Mode\n\n```tsx\nconst accessiblePrintConfig = {\n  // High contrast for accessibility\n  optimizeForMonochrome: true,\n  theme: 'light',\n  \n  // Clear headers for navigation\n  printHeader: 'Document Title - Section Navigation',\n  \n  // Informative footers\n  printFooter: 'Page [page] of [total] - Contact: support@company.com'\n};\n```\n\n#### Multi-Page Document Handling\n\n```tsx\nfunction MultiPageDocument() {\n  return (\n    <Page printConfig={{\n      pageMargins: '20mm',\n      printHeader: 'Multi-Page Report',\n      printFooter: 'Page [page] of [total]',\n      printBackground: 'white'\n    }}>\n      <section className=\"page-break-before\">\n        <h1>Chapter 1</h1>\n        <p>Content that starts on a new page...</p>\n      </section>\n      \n      <section className=\"page-break-before\">\n        <h1>Chapter 2</h1>\n        <p>Content that starts on another new page...</p>\n      </section>\n      \n      <div className=\"no-break\">\n        <h2>Important Section</h2>\n        <p>Content that should not be split across pages...</p>\n      </div>\n    </Page>\n  );\n}\n```\n\n### Migration Guide\n\n#### Converting Legacy Pages to New System\n\n```tsx\n// BEFORE: Legacy page implementation\nfunction LegacyHomePage() {\n  useEffect(() => {\n    document.title = \"Home | My App\";\n  }, []);\n\n  return (\n    <div className=\"page-container\">\n      <div className=\"page-header\">\n        <h1>Welcom","readmeFilename":"README.md"}