{"_id":"access-routing","_rev":"34-8bbe41f5ae3e0b12848bb03cdc298aa2","name":"access-routing","dist-tags":{"latest":"3.0.0"},"versions":{"1.0.0":{"name":"access-routing","version":"1.0.0","_id":"access-routing@1.0.0","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"a2e9103997779c9a944861c7ba7f7d2df83f4ef9","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.0.0.tgz","fileCount":5,"integrity":"sha512-7DeG6fKLbdaAzJ4gAoO8vvSJknLL4+317Mr4tAulA75wlLV4SEUDy3gZRPhGOdNJ7w6ivGc2Oh/DXJLSrYzkmA==","signatures":[{"sig":"MEUCIQD8ZnZA76z1IzoGiZhug3x6+K0DwWu2HLK27Ey1904w8AIgB/aGFO9M+WQkUOsJ1yOk3IVuj92/4SYmezY9rWqZbEo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100845},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"~5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.0.0_1748268505607_0.09770209777238037","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"access-routing","version":"1.0.1","_id":"access-routing@1.0.1","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"9b28f1dbcde2e86e573a43f869d146e7f3e52d4f","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.0.1.tgz","fileCount":5,"integrity":"sha512-R608Je965vXO6MakYC3eVNL3plTDOmhPyPBWkTSaeC8eIKD0DUstUmNz7tgEAFtPbz2Enfq053V5D1IR0zu+aA==","signatures":[{"sig":"MEQCIG5Eziv2QwS8TKzuXZ3CmGiyw7syEWENVNHVwLDXRcu5AiAPTui+vs2teyYUiq2P7wopZ9Vb3HDtne5xRjPLCp1QdA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100901},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.0.1_1748332245791_0.21268334340765183","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"access-routing","version":"1.0.2","_id":"access-routing@1.0.2","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"101daf756dabb5276ceceee9c36035681d148356","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.0.2.tgz","fileCount":5,"integrity":"sha512-qxBbFahkxduqP7mBMBL0F+fiagMn6G76IsnfICAils4MpVUXpBUM8UqmOlROa4socpwOvmMXOAsq7f0+OchWjA==","signatures":[{"sig":"MEUCIQDX0Yz7NXQCM5EhpUkCqf8ysg6wChNKpREA5jDKYEow2QIgAQdlGspYT9+kGyi07JJPQRJ18zyUUbT1H1rWR+JRBeE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100901},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","scripts":{"dev":"vite","lint":"eslint .","build":"tsc -b && vite build","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.0.2_1748332672174_0.686616363675679","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"access-routing","version":"1.0.3","_id":"access-routing@1.0.3","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"e83b14f7f1ccd15bd7e146d775aa633d32106152","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.0.3.tgz","fileCount":9,"integrity":"sha512-w8ZF6Nqxib0vtzAiI3PL/pUIzk4A7DnJ0qD9YkKIa4KhqHfNky6ZjtT6t0V9vb5rnWRSnyofO/peRcjTEHzCdw==","signatures":[{"sig":"MEUCIQD11GusSYNDlYhJNg09e6HUycbpUZEA/1qORViRiRf/8wIgRNAkjag3Dcsw1nbG4qD2sUPU6V3Sdfht7n1NPRmWCSw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101465},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.0.3_1748332882066_0.9005657475392241","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"access-routing","version":"1.0.4","_id":"access-routing@1.0.4","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"0dfbf1c55f3f993463b2e84ed1230b334ab867ca","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.0.4.tgz","fileCount":9,"integrity":"sha512-vhxXR8xgJSRwT//sClycCuDEYBtWx9cWJ9h4DHCROo4HHeDwFCiLQ3wsDQmsWWeGVdA2cfCRelTNfDQLXIuDkQ==","signatures":[{"sig":"MEYCIQCnrR5/Fn8/qH2HvggXC7u8ue0vNYPCWiOgCswLyo84ZwIhAJ0n7w8nrf4jLy4jRRlsTYaek8UQZoxWMZSVdg+DtlMo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101466},"main":"dist/access-routing.umd.js","type":"module","types":"types/index.d.ts","module":"dist/access-routing.es.js","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.0.4_1748333305908_0.5282158045848666","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"access-routing","version":"1.0.5","_id":"access-routing@1.0.5","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"7762825d1cbb8ddb0edebc28ded41827e51732a2","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.0.5.tgz","fileCount":9,"integrity":"sha512-m83SDI+4aixvfDHi+sHhPenQ0hpWfshz4FW8nNhiEWx3CQ6KmoFgfsEk+VTj24AlK4OCkHO/Q7kT8LLe1SMzBw==","signatures":[{"sig":"MEYCIQCUZk9NTU7ag5PUSSqMp6GhIsyqH3jCjgf2JZLZFA7erAIhAJ36zeGAp787A2LDHFhyPIEHpRcHlcgGrsAOVBOBleuj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101633},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.0.5_1748333689441_0.11236399864233304","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"access-routing","version":"1.1.0","_id":"access-routing@1.1.0","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"907b0b84901ce51b2f0deeb6fdcd5dc6142eeb26","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.1.0.tgz","fileCount":16,"integrity":"sha512-w6FzV9/wz4pVdE0yruPZOrivqql70FvU5/8JImZ82NThMp7XgC/KpMorzC7YA7X/Rtodjq3n2ZcjwOiX7jveqg==","signatures":[{"sig":"MEUCIQDsza4ylX9xRtQZrM/2ABcilDlcwcF2Mfc9ZS5D4KdnMAIgdE9KNvTxD5p0tw1Efo7kcUHqx8vN9mkgSi2pZpaALpM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":112601},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.1.0_1748342875763_0.18328746534403506","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"access-routing","version":"1.1.1","_id":"access-routing@1.1.1","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"3f279e0cd568742811182b573af12aa5594fba89","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.1.1.tgz","fileCount":16,"integrity":"sha512-2qsWeid6cLf3r/ofoHg96YS6Zn5xATu87N+dFXntEfsS1GEZsWuwfgywv/w8MOBCjOCOmUTowjpycpqbT+f5dQ==","signatures":[{"sig":"MEUCICGwtKhiwLZjV+BRYKR+sZmpXGuTALXVnX9o90CVb6Q+AiEAgbNmB9HKQ5reJ899GLHMJBNyEUUSAjZboiGePj8nOvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125071},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.1.1_1748344098685_0.5692791894720366","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"access-routing","version":"1.1.2","_id":"access-routing@1.1.2","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"e00af8733f7e4d73f6cba6230e0bb9a3d12ed544","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.1.2.tgz","fileCount":16,"integrity":"sha512-bnMeoCBAkqllOEj979ZGjdG64rgRIuy7spXeVO5m8N/czzTTIyHbz1KhU7/w3n6zZ+TGOymZ+1qUNQ3xPC8UvA==","signatures":[{"sig":"MEUCIQDcdPILlm7vxKj5zzv9n/CMGUWdWpg0ZqBf+QXDJDCGOAIgfCmr3vUQXykolkD0MuyLgUet57t7I1RWDa7hb2u5e08=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125071},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.1.2_1748344132617_0.5989917033625687","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"access-routing","version":"1.1.3","_id":"access-routing@1.1.3","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"dc78b60c02b9000bf4c1f8b831b54b81322a1cd4","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.1.3.tgz","fileCount":16,"integrity":"sha512-Rvk6cxWyoRsIQIqVY6XVYzCE+HpLuqfiYZDfMgCt5Zwvoq+KgWOZFYtMjcVxhZc/qTaW5MGgBkAn2oSa+xe9yg==","signatures":[{"sig":"MEYCIQDln8F0CZziWGGY8l2GtYGeVueqJdm6fkOXnhAxVvigWAIhAK7f4Y/BW0kBKse2n64pjtU74tfH9tE3cD0o2IY222sO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124554},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.1.3_1748344270744_0.10391735989677842","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"access-routing","version":"1.2.2","_id":"access-routing@1.2.2","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"78b65cfdd35df84ccc1e0865322f741b5beaadc3","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.2.tgz","fileCount":22,"integrity":"sha512-N3Lw8MVdKpdQeJ0i1P81wsgHrp7sezkybBQocLgpKovrBYL4+LaiVyp7L6E10FFgQsLccbngWTTtWFiBRV57bg==","signatures":[{"sig":"MEUCIFTg14jQUX0XW2XlOAthOoxXUtfRFZLT2Vq5GRKoQpE2AiEAqyypwzQAa1mLzeiGnHcoe2HY88ybMcd7mwmnaWJwowg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118502},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.2_1748348090319_0.15410238392785014","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"access-routing","version":"1.2.5","_id":"access-routing@1.2.5","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"d07714a5a43e7f468926b76232384c6fc974ead6","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.5.tgz","fileCount":16,"integrity":"sha512-Siw2uNP3kv0/wWRGxS1y4ooxHsipG9oCZb/Jo5vf8fIiWu3I7a/8IY29yB7uawTXJy144rEqwDUuLkoYsl1T6A==","signatures":[{"sig":"MEYCIQDs5WXUXOrMmuozuO678v0uJjO2qwbv1lyUxoZTEBON+wIhAIWiAl1X11+wovQXIeXozMu2812zQsr1kA41fSmfKWvW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124602},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.5_1748348732630_0.1760890623255813","host":"s3://npm-registry-packages-npm-production"}},"1.2.6":{"name":"access-routing","version":"1.2.6","_id":"access-routing@1.2.6","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"c0c088b41cbc6ee7f3a427928fc348bd09e9cc51","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.6.tgz","fileCount":16,"integrity":"sha512-N2J777zJqc/ZbRM89WJr5UxU8pMCGNRN9wy2AZ+1rYxEZPVIQ5LgbqwCG8gbUZe2vEgMIoipMl7ype7onOsqGQ==","signatures":[{"sig":"MEUCIFRVE972MPbYh+Jv4fb6L8VQmRQXsBLxaxGqAFUS3fEVAiEAyEdepwAG7kXINyK8V9Nz7yciKjqTQ0FirwWeZgTd5KQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124669},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.6_1748349970326_0.7370893193064227","host":"s3://npm-registry-packages-npm-production"}},"1.2.7":{"name":"access-routing","version":"1.2.7","_id":"access-routing@1.2.7","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"8f5f9fc66dc949aad4e26e907d5d06d77c6aead2","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.7.tgz","fileCount":16,"integrity":"sha512-7vCOjyYVj2iGUQ9gcpHNRsl76cSIyjy6E9feIHyQyZ01nN0btx9dSWz8vPhHpP8e+RZoOXQDBFHRB0kjQXagSQ==","signatures":[{"sig":"MEUCIBK9lHlga5sBUNhTGWTcSdK95mclEpCoLzvDkVos6Mj+AiEAnBWfRmeAC1OoAHBCG1xL45z2+S9koawppC7M1PJsfZk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124747},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.7_1748351180682_0.41746677965830026","host":"s3://npm-registry-packages-npm-production"}},"1.2.8":{"name":"access-routing","version":"1.2.8","_id":"access-routing@1.2.8","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"4f77513651a86e95b89569603eae77bb5036675e","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.8.tgz","fileCount":16,"integrity":"sha512-xqZy4GvD29jUcXePKdho2LwiwJZ7uFdGyoZTfZAqoITdTJqkG8m9U2YOsHV3BLXLgOJa5yiQ7VfOllGg+rsP4g==","signatures":[{"sig":"MEUCIH6rmg1NV5So8TYu48C9w7WtgAo3yf+O+htn4eC8DwqcAiEA2xuvLE/Dd9jdVItzztVT8+t7Ij7oWDhCEwjkParas/g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124785},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.8_1748351387348_0.010238582191637757","host":"s3://npm-registry-packages-npm-production"}},"1.2.9":{"name":"access-routing","version":"1.2.9","_id":"access-routing@1.2.9","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"8ea4c33e5f89c170b8df94ad7a9d41744ac6eb6c","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.9.tgz","fileCount":16,"integrity":"sha512-4Sf+4AZV7BWmCwPIypewvVOQhHNQGdsDBpf04FaDZUlu6aNwzwJc5DFM29FowgpMeeNty77YZJPt52u4oe7CfQ==","signatures":[{"sig":"MEYCIQCQxO6VX+DPlP++NgsT7iYZ2qiktHojNZizE/1C9D0+JgIhAOZhd+/L4bZ62o5/IJO8xdcbaROPRIZ8K7LvZ1F5Yy7t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124781},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.9_1748352160921_0.8634892491050377","host":"s3://npm-registry-packages-npm-production"}},"1.2.10":{"name":"access-routing","version":"1.2.10","_id":"access-routing@1.2.10","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"f69d70ee24505525000637dffe7eea3d6ca66723","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.10.tgz","fileCount":16,"integrity":"sha512-CsSHnNLsDJek6hd+afgMcD6TO0JzYASwtAhq58mtB/p3dbYhGq5x44dmpD62kJJMB3o7S+hL8FDB+BoUuacf+g==","signatures":[{"sig":"MEUCIQCOSK+yMi/GP5RThTGru8TilSwxsjkBz9jezf5dalZnkwIgQD57lhxsS9J8a/V1AhUcaeyCxm8Una/sXSL5TAulpS0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124750},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.10_1748352593835_0.659519987169854","host":"s3://npm-registry-packages-npm-production"}},"1.2.11":{"name":"access-routing","version":"1.2.11","_id":"access-routing@1.2.11","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"dbd93a6ebce5230e80d5c97e2ffdda1094a2348f","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.11.tgz","fileCount":16,"integrity":"sha512-92Echowr5Mr2A6ZrxEC1+imEIkXN82YUOweFn0iVkNwpQmAFC0+O6f8mW1bYcB0nbBdnCXTXk/HNKxpzhYMU6g==","signatures":[{"sig":"MEYCIQDilcnkDyqpC635QX5WDwmKJ0dHv+k5/MtC9i268hjcWAIhAO44hrHHXFQ1pPoflxO1uZj/nUTlvNp/eE+8gQ0pX93Z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124734},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.11_1748352973818_0.6743279733767273","host":"s3://npm-registry-packages-npm-production"}},"1.2.12":{"name":"access-routing","version":"1.2.12","_id":"access-routing@1.2.12","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"eac4d7fd6ea052e92474a7eddcb14949ab25faf3","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.12.tgz","fileCount":16,"integrity":"sha512-V2a01H4zNHoVUYk9uRGZV4zCXHvezaoQB5kqwB/mXO9l5FfwvYyYB3nEZb8XJKMEdeYsvtCZAi4lE4nvewBb8A==","signatures":[{"sig":"MEUCIF16u3uZXe3PZlbAXF4iS7PIePnhhnTF/YSx4bMmx529AiEAoTa+WRNBMY+GmhV/mfC4ZL69+kqObg3eIVAHrPX8drQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124716},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.12_1748353884611_0.6778831634743188","host":"s3://npm-registry-packages-npm-production"}},"1.2.14":{"name":"access-routing","version":"1.2.14","_id":"access-routing@1.2.14","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"cbf4f7079b4e26e0b9dd9c0303f8b02989e43bec","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.14.tgz","fileCount":16,"integrity":"sha512-4AJH4wLBHrZcFeookBfyQkolMp6kZann7dveb5aOdJPfTPNa/Jo41MfApNCwS0m0qlVq0Vf+VjBmTuhQSlNzxg==","signatures":[{"sig":"MEUCIQCsvtgh88nYHZs1ta020iLSvNisoPgAdN22HXYsYww/mQIgYwTMdo8tQDLvlNcIpQlHsnwJrfPgI0G+ekElV0A4Odc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124720},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.14_1748354429619_0.18424472138556336","host":"s3://npm-registry-packages-npm-production"}},"1.2.15":{"name":"access-routing","version":"1.2.15","_id":"access-routing@1.2.15","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"da9badbfde0cdc0a85dc61d491924db7dd16ca08","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.15.tgz","fileCount":16,"integrity":"sha512-PsYrMZkvzxmMSKRLpG7ONHJ/wwUT8aAS1s0kfxkedkH2wxXSGzGbofqSJa8zMqkrhPQZTnl4cutCHs8VYM/D6g==","signatures":[{"sig":"MEQCIChXv8QLmqXxv7wHJM+m+lLw2qgIfj5+2G4GmqWLJioVAiALPB3XPGoSID+y95zk1ovo7fx1sKpr+LzgrZiBuXX1MQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124505},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.15_1748355744407_0.4474522779619534","host":"s3://npm-registry-packages-npm-production"}},"1.2.17":{"name":"access-routing","version":"1.2.17","_id":"access-routing@1.2.17","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"3f514dee2b9d916635c4c9f4f51fb9b424b0adf8","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.17.tgz","fileCount":16,"integrity":"sha512-cJt1x/NbxjdFEMLPlJWA4C3LFh7+Ps/5SB8OI9Ve/DJDcvreFolnsxF3SCU153IUrwwOjyISQLoDIgCxDU4fhw==","signatures":[{"sig":"MEUCIA5iPfplvXaCGznLVHgMAl//egJusxVrz92314dX+CDpAiEAiH1ScE7S3qQ565Ws+liVKFpFcuU88i2JfDGYjt+KST4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124892},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.17_1748356389547_0.799979033586828","host":"s3://npm-registry-packages-npm-production"}},"1.2.18":{"name":"access-routing","version":"1.2.18","_id":"access-routing@1.2.18","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"a7703c037e409f31e896db6ceea70eb27a8d4d81","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-1.2.18.tgz","fileCount":16,"integrity":"sha512-m+XAyVm7SVdGZPcTEmnZMbrqK3TiNpdRElejjaaN/RXAbM2om3SNLN5oZ+j90IxtCZJHv8daXjTgrQz2QpmdNQ==","signatures":[{"sig":"MEQCIDYfawhKEC4qnCVJl5dNsJg4VV9cGMy03ncSB0c59f8qAiB9yJ+59LfggCTGL6QGRIJ+gFHQTlxZjd6OP87R9Lvcyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124660},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.0","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_1.2.18_1748357399075_0.3735315226140774","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"access-routing","version":"2.0.0","_id":"access-routing@2.0.0","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"d0f3145a9832f1a779aaf1e70da3b50d8a98e604","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.0.tgz","fileCount":15,"integrity":"sha512-hpftu0dOOZn+dB8y4kliSmujstE0+7zT3qgVn3yrp4RRk0aXG6QtrrZ4G4PB2sIVBo8KmfWoj74V2XAuUfSHFQ==","signatures":[{"sig":"MEYCIQDQLc3qVxv+zg0NIpXat99qGg9or2nzVdYjELv38vMhrAIhAKmWQlzSNd+MPZuGDGoRlRzzDqZcAyNvPpZcBsLTx0Nw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126218},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"**A lightweight and flexible React routing library with role-based access control.**","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.0_1748504927376_0.8547835317020214","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"access-routing","version":"2.0.1","_id":"access-routing@2.0.1","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"dist":{"shasum":"7646bdb129af11d5a24789c7f14a8364248f4540","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.1.tgz","fileCount":15,"integrity":"sha512-7KKUFRB8hSgHRVxIzK+tgiSceWpsS8WVtQqDnUPLcCGnOMgJF45/Nis5Ke4alCGDlEM49X9VafHBWSiS9LOyzw==","signatures":[{"sig":"MEQCIC6IQaoE/6dFHSLEkVnSt3xJelvptmZ0BuVMbbE96nOlAiAHIfJIC3iujR3kUW9kJSgGyjxgDyppPZweHlcNkI+9UQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120495},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"_npmVersion":"10.9.2","description":"A lightweight and flexible routing and access-control layer for React applications. This module allows you to define your routes and restrict access based on user roles and group roles.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.1_1748506303626_0.552273494378428","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"access-routing","version":"2.0.2","_id":"access-routing@2.0.2","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"49a116ae42701525af04e2e081ff3b9a6c525f9b","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.2.tgz","fileCount":15,"integrity":"sha512-0i7nDEQP2Mo7ExkpuBuElMdClxJ9tzyEnRTUTgFN89UdXqkDYI5p0ywGMBSSxBTAnsHY1AqTvGOrEKFKDLA7iA==","signatures":[{"sig":"MEQCICTHOVXWc+WaHABj1R+J2Lg+GBh0PFP3SP5R9WHhYDT+AiB7L63Za7vdMSCp8l534MikrCxNVD9LpzrVZKcgpw1tKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120666},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"1a6a0898352c182b2e48f8b21139b27e58f16a75","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight and flexible routing and access-control layer for React applications. This module allows you to define your routes and restrict access based on user roles and group roles.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.2_1748506803187_0.6463719532619048","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"access-routing","version":"2.0.3","license":"MIT","_id":"access-routing@2.0.3","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"02c47ea23f2885f427c609f5045271dbfc25d8a2","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.3.tgz","fileCount":16,"integrity":"sha512-E3FP9XGvHQSsYAguigBsBiZtPzjnJri6CCejlAS16vCv+gjhReSBDCBQLNpTel164WegFrU/R6Iz9UfFEYpa/Q==","signatures":[{"sig":"MEYCIQD6UdTC+5eCT5PkBHaccRkQMu4+d4H9jUhYMleMnJ5RPQIhAPSSXtNovcL0/i3Y+MVsCvGFInQd2Uw7iADHH0dh8RpV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121865},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"39c807a08e42fafc75d521c74937adc0201e31d9","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight and flexible routing and access-control layer for React applications. This module allows you to define your routes and restrict access based on user roles and group roles.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.3_1748508067309_0.9702044621669887","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"access-routing","version":"2.0.4","license":"MIT","_id":"access-routing@2.0.4","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"bc78af3819e03ad3ee32e0b0fe262797aac7712f","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.4.tgz","fileCount":16,"integrity":"sha512-Tn0d5f9XMYWrnQ0gtmBUh5cZyGIJjsw6+m/cPLv/s4F/bV1d4UvXRANeaprjIzzufOGO2l6B6zhpyGcNSoGWhA==","signatures":[{"sig":"MEUCIBfBeakMe6SoB0OAL8+R7c4yMtpHgn3XC+K7vJTu6a+SAiEA2Wk+4B09uShRpSf4uHYGl1vaiZPEvlksFlvqzQ78vTA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124915},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"38872ca19014f10fe6bd3d4cac27f60538dc0247","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight and flexible routing and access-control layer for React applications. This module allows you to define your routes and restrict access based on user roles and group roles.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.4_1748671698331_0.17693800550733685","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"access-routing","version":"2.0.5","license":"MIT","_id":"access-routing@2.0.5","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"90728e12ad4969c7ce8ddbc5954c29f046fd8d22","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.5.tgz","fileCount":16,"integrity":"sha512-VSCT90jS6mlkQPy134xwRYA+3YpBY1yEW9wl9bNu84SLCHhQJm+q42iFiO7GnivRPrSNZXkdXLyKwBNnRmDCZw==","signatures":[{"sig":"MEUCIQDLoEu7FkXo9PYGlepq/jGY28qs51IeANFTYP/oNIBcSgIgAKJqbewLyF4Grlvfb2ahskraw4zUuXfOke+JjOcXULY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124973},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"fbbee0675141f57f0a83c23c102497f066bb220b","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight and flexible routing and access-control layer for React applications. This module allows you to define your routes and restrict access based on user roles and group roles.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.5_1748672128627_0.6454561598643334","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"access-routing","version":"2.0.6","license":"MIT","_id":"access-routing@2.0.6","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"55b360b73e1b908a567cb5bcc95e6ed4c949fe24","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.6.tgz","fileCount":16,"integrity":"sha512-sW1A5YR62NAduMilIVwu29/WNbkVn0jUa0MF3JxF3NS8HT0ZyQ4GX2StKXNksYeWmpsetIhKy4IaAva0yu+WDQ==","signatures":[{"sig":"MEUCIQDcxchsaFofBmh8ngQziVAuSsWH1Zo3/5E3eUhlB+t9+AIgaxfMKruT1rAdKN3uO/RLbWdLiL+p7VN5YqE8ug16pLw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123397},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"fbbee0675141f57f0a83c23c102497f066bb220b","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"`access-routing` is a **lightweight** and **TypeScript-compatible** routing utility designed for React applications. It provides a clean and modular way to handle **access control**, **authentication**, and **protected routes**.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.6_1748673935894_0.08223395626681018","host":"s3://npm-registry-packages-npm-production"}},"2.0.7":{"name":"access-routing","version":"2.0.7","license":"MIT","_id":"access-routing@2.0.7","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"26b1449af0061e93709c4e4ea60ba96ec2028a75","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.7.tgz","fileCount":16,"integrity":"sha512-WxGxQ5/3MTEcy/G/etr27Ry7ZFZTJhzCSAE+MhGCpC8UVhm4sqrvluTZAGQ8i1rOiswTeYrnrh4/I0I910+fsw==","signatures":[{"sig":"MEUCIEQWw/Tq3rAzXilpZlEcZTWUFIIpQgKokgtQknIaasQsAiEAgHZKnlZTKWtbWjfXECCX7gHGBm146dFqkapo66pPfAM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123498},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"fbbee0675141f57f0a83c23c102497f066bb220b","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"`access-routing` is a **lightweight** and **TypeScript-compatible** routing utility designed for React applications. It provides a clean and modular way to handle **access control**, **authentication**, and **protected routes**.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.7_1748674189611_0.09366639800302723","host":"s3://npm-registry-packages-npm-production"}},"2.0.8":{"name":"access-routing","version":"2.0.8","keywords":["react","routing","access control","protected routes","typescript","authentication"],"license":"MIT","_id":"access-routing@2.0.8","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"471cdeff775d1228ad71a0853782c9a36b2d47a9","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.8.tgz","fileCount":16,"integrity":"sha512-uq7vgljyMgwpG0MmtuEClYO9LkE3yHZIcEs2ekiSDmN0fv0URMEK3lo0f88qfG6uO3RH+kh4Y25jw7A9jBdMqA==","signatures":[{"sig":"MEQCIHDfxUwlhKeRax0lqcUIDVfl6KT4B0dYVi8ocsBzhkLoAiBoprITYPexPpd4snxO4IwlXZYoB2aApJdqd+LWaH6Mmw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123632},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"fbbee0675141f57f0a83c23c102497f066bb220b","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"`access-routing` is a **lightweight** and **TypeScript-compatible** routing utility designed for React applications. It provides a clean and modular way to handle **access control**, **authentication**, and **protected routes**.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.8_1748674358546_0.2950399202895877","host":"s3://npm-registry-packages-npm-production"}},"2.0.9":{"name":"access-routing","version":"2.0.9","keywords":["react","routing","access control","protected routes","typescript","authentication","react-router-dom","react-router","private"],"license":"MIT","_id":"access-routing@2.0.9","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"homepage":"https://github.com/SAmir1374/access-routing#readme","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"dist":{"shasum":"3caece1b7025c8a42b08eb81ff1c51a6f9e0670e","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-2.0.9.tgz","fileCount":16,"integrity":"sha512-elTKeccjIQ+StSZgP6QhFW8T3AEG2hWvOvE4B+zGP/Nb5DQD3JRC/NIbZw/AEZehMy5/qiTO/H6VMzDGdsAIcA==","signatures":[{"sig":"MEYCIQD8AJdYMl6cbX56Tiif+e1qF7mVvlkM1Pb9oVP9PaJ+kAIhANy3VsRGBD0yWvwPP4DPjs+z1apD6W+iZ3bfC2XBJvkl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123691},"main":"dist/access-routing.umd.js","type":"module","types":"dist/index.d.ts","module":"dist/access-routing.es.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js"}},"gitHead":"fbbee0675141f57f0a83c23c102497f066bb220b","scripts":{"dev":"vite","lint":"eslint .","build":"vite build && yarn build:types","watch":"vite build && yarn build:types","preview":"vite preview","build:types":"tsc --project tsconfig.types.json","prepublishOnly":"yarn build"},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"repository":{"url":"git+https://github.com/SAmir1374/access-routing.git","type":"git"},"_npmVersion":"10.9.2","description":"`access-routing` is a **lightweight** and **TypeScript-compatible** routing utility designed for React applications. It provides a clean and modular way to handle **access control**, **authentication**, and **protected routes**.","directories":{},"_nodeVersion":"22.15.1","dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.5","eslint":"^9.25.0","globals":"^16.0.0","@eslint/js":"^9.25.0","typescript":"^5.8.3","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","typescript-eslint":"^8.30.1","@vitejs/plugin-react-swc":"^3.9.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19"},"peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/access-routing_2.0.9_1748674637256_0.040334669779002574","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"access-routing","version":"3.0.0","license":"MIT","type":"module","main":"dist/access-routing.umd.js","module":"dist/access-routing.es.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/access-routing.es.js","require":"./dist/access-routing.umd.js","types":"./dist/index.d.ts"}},"keywords":["react","routing","access control","protected routes","typescript","authentication","react-router-dom","react-router","private"],"repository":{"type":"git","url":"git+https://github.com/SAmir1374/access-routing.git"},"homepage":"https://github.com/SAmir1374/access-routing#readme","peerDependencies":{"react":"^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0"},"scripts":{"dev":"vite","build":"vite build && yarn build:types","build:types":"tsc --project tsconfig.types.json","lint":"eslint .","preview":"vite preview","prepublishOnly":"yarn build","watch":"vite build && yarn build:types"},"dependencies":{"react":"^19.1.0","react-dom":"^19.1.0","react-router":"^7.6.1","react-router-dom":"^7.6.1"},"devDependencies":{"@eslint/js":"^9.25.0","@types/node":"^22.15.21","@types/react":"^19.1.2","@types/react-dom":"^19.1.2","@vitejs/plugin-react-swc":"^3.9.0","eslint":"^9.25.0","eslint-plugin-react-hooks":"^5.2.0","eslint-plugin-react-refresh":"^0.4.19","globals":"^16.0.0","typescript":"^5.8.3","typescript-eslint":"^8.30.1","vite":"^6.3.5"},"_id":"access-routing@3.0.0","gitHead":"a4f2eec17fcc4e98405ff7ea6b91c32457900e2d","description":"`access-routing` is a **lightweight** and **TypeScript-compatible** routing utility designed for React applications. It provides a clean and modular way to handle **access control**, **authentication**, and **protected routes**.","bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"_nodeVersion":"22.15.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-KyorX3C1uYgttQ9SbXnYfGF5dfjifHGz9oQaVyuXZUF6pjCZOPiku34VuQ6tO1W23InLGa6pKDpOpzG2s7YBBQ==","shasum":"5fcff44c8f1f5a667b12cc7d9facbb6b2bb5b589","tarball":"https://registry.npmjs.org/access-routing/-/access-routing-3.0.0.tgz","fileCount":18,"unpackedSize":125340,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDjhQCpYHR1hJ8UDuMa4XR0FjDmB1qdfkrk8Rkqc2vNrAIgNS1v7WJhD7isgNMLlerGQiTOJtxAsFLG1hbr6OFLemk="}]},"_npmUser":{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"},"directories":{},"maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/access-routing_3.0.0_1748764078480_0.689175546798211"},"_hasShrinkwrap":false}},"time":{"created":"2025-05-26T14:08:25.471Z","modified":"2025-06-01T07:47:58.938Z","1.0.0":"2025-05-26T14:08:25.784Z","1.0.1":"2025-05-27T07:50:45.981Z","1.0.2":"2025-05-27T07:57:52.355Z","1.0.3":"2025-05-27T08:01:22.240Z","1.0.4":"2025-05-27T08:08:26.083Z","1.0.5":"2025-05-27T08:14:49.625Z","1.1.0":"2025-05-27T10:47:55.953Z","1.1.1":"2025-05-27T11:08:18.881Z","1.1.2":"2025-05-27T11:08:52.813Z","1.1.3":"2025-05-27T11:11:10.927Z","1.2.2":"2025-05-27T12:14:50.499Z","1.2.5":"2025-05-27T12:25:32.871Z","1.2.6":"2025-05-27T12:46:10.529Z","1.2.7":"2025-05-27T13:06:20.887Z","1.2.8":"2025-05-27T13:09:47.541Z","1.2.9":"2025-05-27T13:22:41.119Z","1.2.10":"2025-05-27T13:29:54.026Z","1.2.11":"2025-05-27T13:36:14.030Z","1.2.12":"2025-05-27T13:51:24.785Z","1.2.14":"2025-05-27T14:00:29.822Z","1.2.15":"2025-05-27T14:22:24.590Z","1.2.17":"2025-05-27T14:33:09.738Z","1.2.18":"2025-05-27T14:49:59.255Z","2.0.0":"2025-05-29T07:48:47.632Z","2.0.1":"2025-05-29T08:11:43.802Z","2.0.2":"2025-05-29T08:20:03.366Z","2.0.3":"2025-05-29T08:41:07.487Z","2.0.4":"2025-05-31T06:08:18.528Z","2.0.5":"2025-05-31T06:15:28.822Z","2.0.6":"2025-05-31T06:45:36.088Z","2.0.7":"2025-05-31T06:49:49.795Z","2.0.8":"2025-05-31T06:52:38.714Z","2.0.9":"2025-05-31T06:57:17.440Z","3.0.0":"2025-06-01T07:47:58.780Z"},"bugs":{"url":"https://github.com/SAmir1374/access-routing/issues"},"license":"MIT","homepage":"https://github.com/SAmir1374/access-routing#readme","keywords":["react","routing","access control","protected routes","typescript","authentication","react-router-dom","react-router","private"],"repository":{"type":"git","url":"git+https://github.com/SAmir1374/access-routing.git"},"description":"`access-routing` is a **lightweight** and **TypeScript-compatible** routing utility designed for React applications. It provides a clean and modular way to handle **access control**, **authentication**, and **protected routes**.","maintainers":[{"name":"samirmuhammad","email":"s.amir.79926@gmail.com"}],"readme":"## 📦 `access-routing`\n\n`access-routing` is a **lightweight** and **TypeScript-compatible** routing utility designed for React applications. It provides a clean and modular way to handle **access control**, **authentication**, and **protected routes**.\n\n### 🧩 Key Capabilities\n\n- Define access roles for routes using simple configuration\n- Seamlessly supports both **private** and **public** routes\n- Automatically handles **authentication checks**\n- Easily integrates with your app using TypeScript and `react-router-dom`\n- Share allowed routes through React context for dynamic rendering\n\n> Ideal for apps that need role-based routing logic with minimal boilerplate.\n\n## 📖 Usage\n\nTo use `access-routing` in your React project, you need to wrap your app with the `AccessRouterProvider` component. This provider accepts a `config` prop where you can define:\n\n- The list of all available routes\n- The current user's roles\n- The group roles the user belongs to\n- The authentication token\n- The URL for the login page (redirect when the user is not authenticated)\n\n---\n\n ## RouteItemType  props\n\n\n| Property        | Type                           | Description                                                                                      |\n|-----------------|--------------------------------|------------------------------------------------------------------------------------------------|\n| `path`          | `string`                       | The URL path of the route.                                                                       |\n| `pageComponents` | `LazyExoticComponent<FC>`      | The React component rendered for this route, supports lazy loading for performance optimization.|\n| `pageTitle`     | `string`                       | The title of the page, used for display or SEO purposes.                                        |\n| `toolTipPage`   | `string \\| null`               | Tooltip text shown on the menu icon, providing additional info on hover.                        |\n| `icon`          | `React.ReactNode \\| null`      | The icon component used in the navigation menu for this route.                                 |\n| `preLoadingFunc`| `string` (optional)            | Optional function to preload resources for this page to improve loading speed.                  |\n| `isPublic`      | `boolean`                      | Defines if the route is public (no authentication token required) or private.                    |\n| `roles`         | `string[]`                     | Array of user roles that are allowed to access this route.                                      |\n| `groupRoles`    | `string[]`                     | Array of group roles defining group-based access permissions for this route.                    |\n\n\n\n### Example: `AccessRouterProvider` Component\n\n```tsx\nimport type { ReactNode } from 'react';\nimport { BrowserRouter } from 'react-router-dom';\nimport type { RouteItemType } from '@/types/RouterType';\nimport { ShareDataProvider } from '@/provider';\nimport ProtectedRouter from './ProtectedRouter';\n\ntype Props = {\n  children: ReactNode;\n  config: {\n    allRoutes?: RouteItemType[];\n    userRoles?: string[];\n    groupRole?: string[];\n    Loader?: React.ReactElement;\n    token?: string;\n    loginUrl?: string;\n  };\n};\n\nconst AccessRouterProvider = ({\n  children,\n  config = {\n    allRoutes: [],\n    groupRole: [],\n    userRoles: [],\n    token: '',\n    loginUrl: '/login',\n  },\n}: Props) => {\n  return (\n    <BrowserRouter>\n      <ShareDataProvider\n        initialData={{\n          ...config,\n          allowedRoutes: ProtectedRouter(\n            config?.allRoutes ?? [],\n            config.userRoles ?? [],\n            config.groupRole ?? [],\n            config.token ?? ''\n          ),\n        }}\n      >\n        {children}\n      </ShareDataProvider>\n    </BrowserRouter>\n  );\n};\n\nexport default AccessRouterProvider;\n\n``` \n\n```tsx\nimport React, { lazy } from 'react';\nimport AccessRouterProvider from './AccessRouterProvider';\nimport type { RouteItemType } from '@/types/RouterType';\n\n// Define lazy loaded pages\nconst HomePage = lazy(() => import('./pages/HomePage'));\nconst DashboardPage = lazy(() => import('./pages/DashboardPage'));\nconst LoginPage = lazy(() => import('./pages/LoginPage'));\n\n// Define routes array\nconst routes: RouteItemType[] = [\n  {\n    path: '/',\n    pageComponents: HomePage,\n    pageTitle: 'Home',\n    toolTipPage: 'Go to Home',\n    icon: null,\n    isPublic: true,\n    roles: [],\n    groupRoles: [],\n  },\n  {\n    path: '/dashboard',\n    pageComponents: DashboardPage,\n    pageTitle: 'Dashboard',\n    toolTipPage: 'User Dashboard',\n    icon: null,\n    isPublic: false,\n    roles: ['admin', 'user'],\n    groupRoles: ['staff'],\n  },\n  {\n    path: '/login',\n    pageComponents: LoginPage,\n    pageTitle: 'Login',\n    toolTipPage: null,\n    icon: null,\n    isPublic: true,\n    roles: [],\n    groupRoles: [],\n  },\n];\n\n// Usage example of AccessRouterProvider\nconst App = () => {\n  const userRoles = ['user'];\n  const groupRoles = ['staff'];\n  const token = 'jwt-token-example';\n\n  return (\n    <AccessRouterProvider\n      config={{\n        allRoutes: routes,\n        userRoles,\n        groupRole: groupRoles,\n        token,\n        loginUrl: '/login',\n      }}\n    >\n      {/* Your app components */}\n    </AccessRouterProvider>\n  );\n};\n\nexport default App;\n ```\n \n # `RootRouter` Component\n\nThe `RootRouter` component is responsible for managing and rendering the allowed routes in your app based on the user's **authentication status** and **access roles**.\n\n---\n\n## 📦 Props\n\n| Name             | Type                        | Description                                                                                         |\n|------------------|-----------------------------|---------------------------------------------------------------------------------------------------|\n| `token`          | `string` (optional)          | The user's authentication token. If present, private routes become accessible.                    |\n| `Loader`         | `React.ReactElement` (optional) | A loading component displayed while lazy-loaded pages are being fetched (fallback UI).            |\n| `loginUrl`       | `string` (optional)          | URL of the login page, where unauthenticated users are redirected. Default is `/login`.           |\n| `NotFoundPage`   | `React.ComponentType` (optional) | Component rendered for unmatched routes (404 page).                                               |\n| `notFoundIsPublic` | `boolean` (optional)         | Defines whether the 404 page is public (accessible without authentication). If `true`, it's public.|\n\n---\n\n## 🛠️ Behavior\n\n- Uses the `useShareData` hook to get shared data like all routes, user roles, and group roles.\n- Calls `ProtectedRouter` to filter routes the user is allowed to access based on roles and token.\n- Manages a `routingStatus` state with possible values:\n  - `checking`: Currently verifying access (renders nothing during this state).\n  - `redirectToLogin`: Redirects to login page if user is not authenticated and tries to access a protected route.\n  - `redirectToHome`: Redirects authenticated users away from login page to the home page.\n  - `render`: Renders the allowed routes.\n\n---\n\n## 🔄 How to use\n\nPlace the `RootRouter` inside your app, typically **below the provider** (`AccessRouterProvider`) that supplies the route and user role data. This component will dynamically generate and render your app's routes with proper access control and redirection.\n\n```tsx\nimport AccessRouterProvider from './AccessRouterProvider';\nimport { RootRouter } from './RootRouter';\nimport NotFoundPage from './pages/NotFoundPage';\n\nfunction App() {\n  return (\n    <AccessRouterProvider config={{ /* your config here */ }}>\n      <RootRouter\n        token={userToken}\n        Loader={<LoadingSpinner />}\n        loginUrl=\"/login\"\n        NotFoundPage={NotFoundPage}\n        notFoundIsPublic={true}\n      />\n    </AccessRouterProvider>\n  );\n}\n\n```\n## Note on `token` Prop Usage\n\nCurrently, you need to pass the `token` prop both to the `AccessRouterProvider` (or its config) **and** to the `RootRouter` component to ensure full authentication and access control flow.\n\nAlthough this might feel redundant and not very elegant, it is necessary for the current implementation to:\n\n- Allow the provider to determine accessible routes based on roles and token.\n- Let the router handle redirection and route rendering depending on authentication status.\n\n> **Rest assured:** In upcoming versions, this redundancy will be addressed and improved for a cleaner API and better developer experience.\n\nFor now, please continue passing `token` to both layers as shown:\n\n```tsx\n<AccessRouterProvider config={{ token: userToken, /* other config */ }}>\n  <RootRouter token={userToken} /* other props */ />\n</AccessRouterProvider>\n\n```\n\n\n## Accessing Allowed Routes Anywhere in the Project\n\nYou can use the `useAccessRouting` hook to get the list of allowed routes anywhere in your React app. This is useful, for example, when you want to build dynamic menus based on the user's access permissions.\n\n### How to use `useAccessRouting`\n\n```tsx\nimport { useAccessRouting } from 'access-routing'; // or your correct path\n\nfunction SidebarMenu() {\n  const { allowRouter } = useAccessRouting();\n\n  return (\n    <nav>\n      <ul>\n        {allowRouter.map(route => (\n          <li key={route.path}>\n            {/* Render menu items based on allowed routes */}\n            <a href={route.path} title={route.toolTipPage || undefined}>\n              {route.icon}\n              {route.pageTitle}\n            </a>\n          </li>\n        ))}\n      </ul>\n    </nav>\n  );\n}\n```\n\n---\n\n### Keywords\n\nreact, routing, access control, protected routes, authentication, typescript\n\n","readmeFilename":"README.md"}