{"_id":"@ziadshalaby/ngx-zs-component","_rev":"79-495f2c44cc1c755827aaf410e7128353","name":"@ziadshalaby/ngx-zs-component","dist-tags":{"latest":"4.6.5"},"versions":{"2.0.0":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.0","_id":"@ziadshalaby/ngx-zs-component@2.0.0","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"9f57db18ce6ec5f3b0897d13cd56e7ab1904abd9","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.0.tgz","fileCount":6,"integrity":"sha512-KKU0IMMgwLwtMYgf99N0SLlGI58xo42T6yeYcLl7NVNTaaQIVdmx/0siYHHCVdWHRjgEov3qUraFGTUnBT+Mag==","signatures":[{"sig":"MEUCIE4OY3vmZE8umzB63a97X5IsBmruro6kM1RVz78nGM88AiEAn7l4FoDOs82hVBtXItIHXdDhRKRWOv6XVBWAl5E5GU8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":779169},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9e47fe56babb9a51ecf204d549e2196635619be7","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.0_1761951621810_0.6767373077578829","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.1","_id":"@ziadshalaby/ngx-zs-component@2.0.1","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"d15129b44ab28fa642df0e89192c2b5a3d1d067a","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.1.tgz","fileCount":6,"integrity":"sha512-mcka+5siPT59CFy3aYj9Y+gsb0p29g77ZvsvKjfoWJBa07bBR+9hckpbTlL+uSwciXy++/xWmjwHQjiXdToUzQ==","signatures":[{"sig":"MEYCIQDh6O2y6S9O8H7AWfNocVvx24rNXPFW+II5jaKkfeSD/QIhAPKMeCzFe+IB9Qg2FxBRa1fiOJFUTSJoMqCTd/BHHE+u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":779270},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6460d2f97e36a083a2d976ccc8382271c411c738","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.1_1761953103591_0.07455309374239527","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.2","_id":"@ziadshalaby/ngx-zs-component@2.0.2","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"580e1818b1489cd7b62cb431b77471cab3aab0cf","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.2.tgz","fileCount":6,"integrity":"sha512-iFxk+XMDOZRDREwo5JOZvV/Hsk7yhNeOiuVkHnYCTQhVi1LW6ZZw7MvMkwkByU1Qx5g5ooOqe6WwTo1slRLXrA==","signatures":[{"sig":"MEUCIFZ30C5P5B2FAiRQw/mi1cwamY3Kdj6ti+JIEUf5KbuxAiEAufRl7Pk+IBgpXuqzcqI+gf/8t66O6NQwO8d/WaMDDGU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":786359},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6460d2f97e36a083a2d976ccc8382271c411c738","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.2_1762006395542_0.43875408964817453","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.3","_id":"@ziadshalaby/ngx-zs-component@2.0.3","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"073d33f5e71566fc415f532ecbea7c99cb71afff","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.3.tgz","fileCount":6,"integrity":"sha512-U2OKd0ziV6gFBrOrq3EbH6ViV3AIIXlHE+oqmXWQAqz56NW1P7rOMPTArsw8vQIEoDVXVqYPQUopiazHuGPSfQ==","signatures":[{"sig":"MEYCIQDunXy+3bKj7mGV0lvxlF4dmTYVxI/mdEXfIpmSpV8uFQIhAIcr3sZLDtZcWpsdKobT+aPmqI+S/HH0UP4ykHh6JYNC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":787173},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6460d2f97e36a083a2d976ccc8382271c411c738","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.3_1762007677855_0.5453013197137062","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.4","_id":"@ziadshalaby/ngx-zs-component@2.0.4","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"795aca2bf432ab0a3d7f5a4677e723b26a2e2d48","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.4.tgz","fileCount":6,"integrity":"sha512-+dRTPWNU5fyc05pXWJHxK5coccmuZAAVLQqPRRh7dInFOEYZvRt+LQnUAdP28NfHyPHruHT173LIQVadltfEjQ==","signatures":[{"sig":"MEYCIQC2pgIb3fhONnn7ufOe1HBbInvXPc1J3aHmv+99XzpYfwIhAMnbQYvZqyXE6djcFbcbrLuZ/YtPqg9S3kK4xorkHYJK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":788743},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6460d2f97e36a083a2d976ccc8382271c411c738","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.4_1762033141350_0.8095278545294566","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.5","_id":"@ziadshalaby/ngx-zs-component@2.0.5","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"ea2bc780afcbee6309e287bd1503895f42631d8a","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.5.tgz","fileCount":6,"integrity":"sha512-29W2yj6FB1LtGyM42aw10qPMa9VDoYWcpPJpnI82lPcJItidIe+EM92SeA+vaj5I6B25CMl0KrcrzD36HrgxAw==","signatures":[{"sig":"MEUCIQCQKYYf35siwN88DVISr38esg83gFuWbSB4mra4hEcQAQIgMAt5Rbb+EKdiG2dxmhqscevUSdcXBYVy060haKWUTyE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":788824},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"f7503ed0f1053c3d051de54fcebd79b91daeecfe","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.5_1762044036315_0.9875557741354313","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.6","_id":"@ziadshalaby/ngx-zs-component@2.0.6","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"399a60a09070a985b5e280ef0d306fdd20b6dbf9","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.6.tgz","fileCount":6,"integrity":"sha512-V9ym0h0F4Lp17jcFJiq4IK7h2mpxjDOH0cQ9RXZXOz/j5taVuXnWe0rRHm+Gswz9mT9NqYfm4r7gX5Js4uZbLQ==","signatures":[{"sig":"MEUCIQCGZzKl2bg5M7jHwPIE6u1HE4vnDvyGjLo4M3bPRe+ksgIgQU+NDchYSeJFvDWXIhbS70K8h7dPixOWvmvqVgrGx+Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":790149},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"f7503ed0f1053c3d051de54fcebd79b91daeecfe","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.6_1762046255981_0.1254684488878146","host":"s3://npm-registry-packages-npm-production"}},"2.0.7":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.7","_id":"@ziadshalaby/ngx-zs-component@2.0.7","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"79603127fae57121fa5f9a6871fa188f1f721039","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.7.tgz","fileCount":6,"integrity":"sha512-irpu4LfzZ940kf4JbjbPuuMIVyaUWN+cxAfKdMr7MNzNw7T8KLUCVVRIjv0pI55/r4RJ3fYNlteqmsZyovFV2Q==","signatures":[{"sig":"MEUCIA7KP7oChAafn1HsQxUE/krE66ir1sM+M99EY/mDLDeXAiEAmKxNRX8T4IOSCxNN4mqBpIBEwFwYpgrm171ksw0xVEM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":792267},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"256542e8a8ab1fdc499cc14298c44fd2dca7c251","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.7_1762093040878_0.4998388104933551","host":"s3://npm-registry-packages-npm-production"}},"2.0.8":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.8","_id":"@ziadshalaby/ngx-zs-component@2.0.8","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"5b7136d7c09a766cd9bbeeff16af18ed974e1870","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.8.tgz","fileCount":6,"integrity":"sha512-TgbWvW92MtNmUOAo+FSXiYJ6QxBPwWeNSwRfNFP1qSPE4aU0fODm1F1QoSj7YK374AcptFT8tT2Mwtw2WxhxkA==","signatures":[{"sig":"MEUCIA+6YKfxDwUJaNTXufMFgg+XrpoUj6MbEWmYtG4nj1OiAiEA1z9NzZ7HXafOfDcRscz5avxBqvWVzYTXOdOcyLZLFUI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":791375},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"256542e8a8ab1fdc499cc14298c44fd2dca7c251","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.8_1762106272414_0.9412101700723623","host":"s3://npm-registry-packages-npm-production"}},"2.0.9":{"name":"@ziadshalaby/ngx-zs-component","version":"2.0.9","_id":"@ziadshalaby/ngx-zs-component@2.0.9","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"6d164a43c5e7c593a6160fb9f8bccc687937e673","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-2.0.9.tgz","fileCount":6,"integrity":"sha512-pq4T8A1nri2+YHkAkyMvH7eRBsodriZPGk4FIlj8md62JyoZUv7VoSC/2W3TPFPCxFcSyVgWJMlusWgW5RegTA==","signatures":[{"sig":"MEUCIQCKwHxS5sggKcX7F5bLv8ctkiNcgW3eOLiWvnOtsKAFYgIgWz0s5YZbi3v9F+f5ZtvCAc4s6+Gn871541E0VVBeNsw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":835452},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"d009d3c71adf3cce86ccdcf13b375c25304806cb","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_2.0.9_1762270807852_0.1779199052462357","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.0","_id":"@ziadshalaby/ngx-zs-component@3.0.0","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"ed73c76f566c5d82f4b75aa74c5335b6e24dadbe","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.0.tgz","fileCount":6,"integrity":"sha512-6dK7nXeBgF65lMpQYIvdjfvvDGFK5CdJDcKajHCj2yKnK8jyi3+y9o7fOkTuuUcJI201MBUqvRJBObyBTgWdaQ==","signatures":[{"sig":"MEQCIHjBYRmOjilJaoOZcj2U66pJL0YUCDacxM3ksjwMSeOvAiApDszTX1DYTwSTZZikr1MOVoFJD2ZYdojq4bOA4z4ZDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":839585},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"4dcd626bbb828d2f2232b0bafeb861f9aefbfb15","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.0_1762283843932_0.5752763903765306","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.1","_id":"@ziadshalaby/ngx-zs-component@3.0.1","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"61e1a681f027b3fcf0cc97b9ba3b4b6c0d849881","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.1.tgz","fileCount":6,"integrity":"sha512-hnuN8lNasZ1USV2oeX2K5PLur90vPxHh/GYqqsNjYF+/aLjGC2Ts5Ot944lqSm29YJdqfhLA/HLiuLtW6UVwLw==","signatures":[{"sig":"MEUCIQC/dDt5Nn5l7iA4rdKOsgsYCr9TMmxHqv1zTUFyTS5tvwIgKI1EmdFM70DUPJC66qskPugYyKcuopPBDy/UbeXluhE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846711},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"385eb2d8615f58e3adcf9a8b5be92e9075b44f38","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.1_1762284485016_0.5068218201620611","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.2","_id":"@ziadshalaby/ngx-zs-component@3.0.2","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"f65234199b8d8514cd8c25533a7c97efbe130f4f","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.2.tgz","fileCount":6,"integrity":"sha512-EDPcp8BGmtx3oTkf2mK8xl963JLQhx2j0jnq1A7hUXrU4x9MED+eSuJLONhbV/N6evRtGhUHCgAr89BQtkKWhw==","signatures":[{"sig":"MEQCIE7iG6X00SdxZgYWPWCoafVRzu1TzPamGf15nhf/RV8uAiAn55nz7hT9Fn7w0dUGnnuf008p3NeOJaDBia63oOwaKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846819},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6ebaf86b93eae044515050206fbabd6fd98ec2c9","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.2_1762285198359_0.996598337434907","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.3","_id":"@ziadshalaby/ngx-zs-component@3.0.3","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"1265400f75910bcfe437a3c7b1689c511859e47f","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.3.tgz","fileCount":6,"integrity":"sha512-THo5Igox8usYYi1qkK7YSQCK5e4EBzlsAr830QpXlXjZLBwSnt+sV318fJeOaNWN5FW0OXJonief8ROoppLepQ==","signatures":[{"sig":"MEQCIA+MwWbRloYnDubD8s8XHSHHlo8ZnwMzYQOxk087dl65AiAOJ47ie8ViqdgpncoIO0kdZRkLtfClRR8BnWFD9biNRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846759},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"89444bf43fd46d9f8261d9ecd89cdc9e64891504","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.3_1762285420600_0.6726469334269376","host":"s3://npm-registry-packages-npm-production"}},"3.0.4":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.4","_id":"@ziadshalaby/ngx-zs-component@3.0.4","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"2bd3af4533ca2ffae78568d7c92df5a338fc16ba","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.4.tgz","fileCount":6,"integrity":"sha512-3WYMfYbUCrpmWN39I6eZrtBYjnWP+b0ug4qFuqQWjot+hwPJdhuvGWATi4sTQ5THO1fsKY99Iac7OdbKLw9RyA==","signatures":[{"sig":"MEQCIC20uc7jh+VTLqSU9n+MeCodzJ/cxZZ0hzLqfPA9HTwLAiACYWP0KF4uHW3YpBFf3M+KuFgwdU8KExlMQWe+wv4Hpg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846968},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"0afdd5c21724e215cb6228aa7fad3a52545014e4","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.4_1762771450138_0.6888095099926372","host":"s3://npm-registry-packages-npm-production"}},"3.0.5":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.5","_id":"@ziadshalaby/ngx-zs-component@3.0.5","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"d72bc4b244038a526ef81336f27f80f4b410b3d8","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.5.tgz","fileCount":6,"integrity":"sha512-K3VjS9aDiUqgvNnNso3HOo5rcQpYW72AmMtrXo8TpBdl1UthQ4ZNS7m3aioXQW/xkn/XBRjxIlZrQE8CMHeP4A==","signatures":[{"sig":"MEQCIGQt1mJPTM9kumTKu8aH/FPWMdPpv4W6stFKz3AGlBPFAiAlurdMmY1vYU2ZH3NvGuojn6cz7LY++q0Kua5KlWsRMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846887},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a07ac2b9db94e7afafa83e7167f2eef19105511e","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.5_1762773333212_0.7849225979730867","host":"s3://npm-registry-packages-npm-production"}},"3.0.6":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.6","_id":"@ziadshalaby/ngx-zs-component@3.0.6","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"b944790afa7c612055a081948c9074c5d4483e7f","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.6.tgz","fileCount":6,"integrity":"sha512-sX4BBLPZpS2huSnFlDRlWkP3ZMOXEbSoRJi8KktM13rma5IQU5kBTc6f+3dcmxaW04jNxh5GXT3VTNLN8AJerw==","signatures":[{"sig":"MEUCIFWlnSbQrbS1fpTUQ7BgD5l7LfFJwivJjJajojakN/LkAiEA4C221vdUpG+STjwbXo3d5Wsg4PwBDTvAkgRoZwP+ITs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846317},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a07ac2b9db94e7afafa83e7167f2eef19105511e","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.6_1762785891223_0.14488792255466754","host":"s3://npm-registry-packages-npm-production"}},"3.0.7":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.7","_id":"@ziadshalaby/ngx-zs-component@3.0.7","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"2135aea731cf7f9bf45117cbe84b50343e0baefc","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.7.tgz","fileCount":6,"integrity":"sha512-qks2cA8Ii10vc1UwStKDgaHA5GK6i6+Fz3B7SOk3xqjNz3rSfgYus8+f0rXtGo4oiYuWqqQDpnKls/SLteMqhQ==","signatures":[{"sig":"MEQCICMNpktCSuZ2mwNctrQrrhkNVzRtjoen2mzjuGL1R2I5AiBrbKWbpQtrH24MicYCLfX9AS7RgMQCl5K56oH3B3K0mw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":865321},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a07ac2b9db94e7afafa83e7167f2eef19105511e","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.7_1762810009974_0.2524779480223789","host":"s3://npm-registry-packages-npm-production"}},"3.0.8":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.8","_id":"@ziadshalaby/ngx-zs-component@3.0.8","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"5c829f969363118eebebdad7411e1d621f14ed2a","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.8.tgz","fileCount":6,"integrity":"sha512-825OqrGQy4PkMVYFME3okNUrA0KUVAyjtqyOJnm7X4jzrnyRqQkr6pqyahvxIxhGJzSoRnwn4i8LvY3PjxXdtg==","signatures":[{"sig":"MEUCIQCtxE2dQgOUcqxRJ1h4C683+G38nff4ItbAW/abYLqmiAIgPZ8OV6zAM4e8gopQyfd6+wPqMCIfBpJZgem6KoInTlM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":865313},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a07ac2b9db94e7afafa83e7167f2eef19105511e","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.8_1762811276276_0.11126301560618113","host":"s3://npm-registry-packages-npm-production"}},"3.0.9":{"name":"@ziadshalaby/ngx-zs-component","version":"3.0.9","_id":"@ziadshalaby/ngx-zs-component@3.0.9","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"d7dba387d58a0f980d079d41b1df1edbe8f4bee5","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.0.9.tgz","fileCount":6,"integrity":"sha512-anyXhRUZzcSeWBGmHkZiiUcqzTulXsh/hR0LthktNQWjJzvr8Io2Q9TTrUTDH2VGWmK7PnDLqsj4hGDseWVKoA==","signatures":[{"sig":"MEYCIQDwqsJ0GMQWI+j2mMyFooeRIVrRTJ6BDhcYNWuzYRNdQgIhAN4ML1+3HZDksiMCI+Dcoa/Nf8gchWpN1uGnnNubCFN6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":865280},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"63fb253d231704917ac7df85b5f611c5ed1030c5","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.0.9_1763061470949_0.9632233492769458","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.0","_id":"@ziadshalaby/ngx-zs-component@3.1.0","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"32fa53ded806d886f22d2640fc072bfe546a3184","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.0.tgz","fileCount":6,"integrity":"sha512-gnwEhjnNXSp01IHEXuWAYmG8mo0G2SnejQNxvaCf37061ppkSb5MqdL3t+866Yb4MWSrKGQkao7PGyKqLI9arg==","signatures":[{"sig":"MEUCIQCeh2rDons1SPEucA0s/b5cCdOvVAPH84gNNLGBI43HOQIgOesq664AxCvJmOdmwqOjoTeLcoRyCKGKqyrF1RXMAzM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":865361},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"63fb253d231704917ac7df85b5f611c5ed1030c5","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.0_1763061746571_0.2395348006232203","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.1","_id":"@ziadshalaby/ngx-zs-component@3.1.1","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"8a27977bc8cf21e20f722457fd4c6273d76573c5","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.1.tgz","fileCount":6,"integrity":"sha512-CPNsKNVWFMgT9J+G8h2zS3/MuAKtFY45/NlNtvyPoucFtFujZkeU3caiYlxIInJIFov0grEKEQ0DC5nVJnK7xw==","signatures":[{"sig":"MEUCIQCK5SOx0dCwOC+5uvCVIuGJoH7AiYw+R4nvgs3I+7DeawIgbH3niCTGEKipiSANEz2t28bYl0ANS0DXL//GJGbNc0k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":865636},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"63fb253d231704917ac7df85b5f611c5ed1030c5","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.1_1763063517264_0.42389664203987","host":"s3://npm-registry-packages-npm-production"}},"3.1.2":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.2","_id":"@ziadshalaby/ngx-zs-component@3.1.2","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"574e03c13b4ca26f0672fdc73474159e2677f961","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.2.tgz","fileCount":6,"integrity":"sha512-Vp5wRdOsAocHps3OmgmBMckrc/W/Uot64tVSvZsdgFjwn+27/8cSV6zgaDHDslfwXLjdPVljWTJNMO2cvwn/kQ==","signatures":[{"sig":"MEYCIQCilAW89cUFKJoFMg0U/nICMk7BO/vtdDIIlF+7UHxZTwIhAL1k0Ep4xGmCa6z4go6FbkF2O8WpaTPOZQ6IXtvhPj8g","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":865687},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"63fb253d231704917ac7df85b5f611c5ed1030c5","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.2_1763069068518_0.09116962211488455","host":"s3://npm-registry-packages-npm-production"}},"3.1.3":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.3","_id":"@ziadshalaby/ngx-zs-component@3.1.3","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"285d0e20b5fa6e6fce3137477083144ee2d2c26f","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.3.tgz","fileCount":6,"integrity":"sha512-zoA9SUg2lLAoOSgTxXoZE+CnLQotKYvj/kuDY3d4AwDlZPbBg3w5OWR/s0kweJXwl5RreUzZuY7eoP46WXFJBg==","signatures":[{"sig":"MEYCIQCOhgwtwSnFwPim6W9mwuqVY8hG4pZC2LpsqfmZzbJnrAIhALQH8ABIMg8oUKzpbAJeBdMSH4fShDs+YJrjAsvffPyv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":867513},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"4fbdc02e1cacd1f3d12af98ff460ca4a1e2846c4","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.3_1763122957958_0.6168020938747645","host":"s3://npm-registry-packages-npm-production"}},"3.1.4":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.4","_id":"@ziadshalaby/ngx-zs-component@3.1.4","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"57c16da3be6f31d4762fc8182bf3ed302c7d9ffc","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.4.tgz","fileCount":6,"integrity":"sha512-7wOsTgZ3jdX1NMgdaBoSlnHWouD+kduq1/2K/u9v/U1EuYOg6Tjhw1hglXiBc193z6Q1PLtJL/4QaqbF6I3MDw==","signatures":[{"sig":"MEUCIAVp7+CCbjM5NbIvrIuh+zeocMHlj0nIwyXK/xWT2xSdAiEAv/syz/Nbfia6nA6icRTAhzV+FFaFQHJMNbdX8oLf7KM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":867527},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"4fbdc02e1cacd1f3d12af98ff460ca4a1e2846c4","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.4_1763134448214_0.855477098535262","host":"s3://npm-registry-packages-npm-production"}},"3.1.5":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.5","_id":"@ziadshalaby/ngx-zs-component@3.1.5","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"7419a972b56f304f4b224c49982587c5a85fdb58","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.5.tgz","fileCount":6,"integrity":"sha512-gtF7KsMOaC9a01e07fTBHBDNgA24x/E6UE4vcMFyKdWNJavZchOKVCan5ZgtN0Mj+YFsflaAZkZ1fDQ+6IUsuA==","signatures":[{"sig":"MEUCIQD0oPsGUygjh53g3QpoQ/LQn6QuEBtkiLQXwv3CKlP3OAIgTo6PeOWJGz+N8ZC4TsRRlqlsPq6Rv7dhTIH2p6JCPxY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":872774},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9b3bcbf577f911b4e957f761cfa85bf863077d25","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.5_1766701666282_0.1610703524215249","host":"s3://npm-registry-packages-npm-production"}},"3.1.6":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.6","_id":"@ziadshalaby/ngx-zs-component@3.1.6","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"9430aa5a4f38773c701dff65ad92edcd732ee2f0","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.6.tgz","fileCount":6,"integrity":"sha512-G3dlAsy0oiSe5vobRB3XXUq6SxGU/XzV+vuqdLLErO+3z5s2WPz+/4KoEWDxJrJPpAGY3CJaMzOoimP8aLKLuQ==","signatures":[{"sig":"MEUCICTy+pb6WQ7+4XUUzpw3eBTG+SO5XzPJ6a2Eq1P7VEE8AiEAyADrE5oBYBRbZK55VYaVvKo1ZP+4fPLdCYHUrSex3/0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":872933},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9f1e86aeb6cb8ffa0252a6ebc274fb23d8cc960f","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.6_1766705860056_0.4416589732483778","host":"s3://npm-registry-packages-npm-production"}},"3.1.7":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.7","_id":"@ziadshalaby/ngx-zs-component@3.1.7","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"a11a221697ae273a3c8b27158b5b2ad1e52e514a","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.7.tgz","fileCount":6,"integrity":"sha512-h86pMFPYLnnaimTNpjE8gooQKptlMM9iAUS2gVh5GOAD14rQwtUxDakg+X2oepa87s9Zfl6Xp3dY34DnzThnNQ==","signatures":[{"sig":"MEQCIF4S4pWXwFmlo8bY2xDf8WfR2W/RQrjZ6DrFcB01r+1tAiAisbwDyvV/D72Xw0WxxiCtJDeaJs5R5No3JY+8fzucSA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":873073},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"99cd0188ffe44a08398fe962d5ffe8061791c887","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.7_1766766212916_0.9941471823133703","host":"s3://npm-registry-packages-npm-production"}},"3.1.8":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.8","_id":"@ziadshalaby/ngx-zs-component@3.1.8","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"95cf09d253898c3cfe0b7beb0721fc952d7837be","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.8.tgz","fileCount":6,"integrity":"sha512-KFZCmb26k7ASGKATFquk8RmRh1+gR0nLyVS219a9z3Yb+pMP/Mirnq34CwGIKUbWNfs/d4iqI+9C62mGNavOTA==","signatures":[{"sig":"MEQCIDHExELWPYcwGKVeCWaC68T4E7ppJL9enIipFForT4OuAiA23S+LrVErGCpTMCkSeN7i+isK/pFsonWCx12Qg7qLGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":874948},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"18c58c6a9c08d69ed003f5a614597e3cdfc4df22","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.8_1766774723450_0.7364921909077087","host":"s3://npm-registry-packages-npm-production"}},"3.1.9":{"name":"@ziadshalaby/ngx-zs-component","version":"3.1.9","_id":"@ziadshalaby/ngx-zs-component@3.1.9","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"66dd24d879fe8a70b59566c8b546d6f542e9a407","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.1.9.tgz","fileCount":6,"integrity":"sha512-wtTqQzpxCqvAM8OK+iz8vZPSmKmWniiIvZxzww17SbbOrcU/J2INnVdwQ/Ic8QdaV44pZvW1Vjf/jehCP+rwEw==","signatures":[{"sig":"MEUCIQCUl1AeFIf5GowgArJvMG8MuA3fmVXGSu4WUUZxfS3rOQIgMdohWa0M0/hPQH6otdAySiOWzq3nKkY3bwkjctkqaPk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":875085},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"2f93196eaf870b85c477a9f8b7e93e19b0bb1a8b","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.1.9_1766788539936_0.8396207075564166","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.0","_id":"@ziadshalaby/ngx-zs-component@3.2.0","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"716da6260dcec6bee7952ba783f0a5474237044c","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.0.tgz","fileCount":6,"integrity":"sha512-oWf4+VmHDB7itcsq0YO+8RQIYCSRXheU4e3CNNqRSYWFB9E++S4cW7aMmDBWF560C/sWceM1Nj1GYqTLoFjwDQ==","signatures":[{"sig":"MEQCIAR2XiBmvS2ZMB0Y8TT3prVlNkYoQpU1PQtJa+rDsI4vAiByhlnVB6JDcBIQuy8nDbEsYJbtoQa2M+IZ8jE9la+34g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":874777},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"c19b69d98367850359416fcc0d44d9c5a8417bf3","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.0_1766836932225_0.20603856607278925","host":"s3://npm-registry-packages-npm-production"}},"3.2.1":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.1","_id":"@ziadshalaby/ngx-zs-component@3.2.1","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"cc8450a1377c3aac0c031bc99e39c22e7e2b3227","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.1.tgz","fileCount":6,"integrity":"sha512-LsxigmGfidtpikdxZ5nyfjU2rCjgEodYVghM72NTIl1v8i7KOfDy6VLTan/1dRRq7uN83VkHw35jUyk8e1cuNg==","signatures":[{"sig":"MEUCIDWsPvIE/Bu1PXUHxfMUIwHGl9MGIeU0Q7iSEVRhQqlCAiEAtcTRXIkpQXZAMjO0kRyK4wBGTgwpvcQR82iOWfXtmqg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":879290},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"58bd01796247f1410c8f58b44068f697da326c5f","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.1_1767129380119_0.1787145490642459","host":"s3://npm-registry-packages-npm-production"}},"3.2.2":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.2","_id":"@ziadshalaby/ngx-zs-component@3.2.2","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"f01ba9cbdf45c49ba5248da3f412adac0e243445","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.2.tgz","fileCount":6,"integrity":"sha512-oSKrRQOGltdqq1C/Puo7JLLbzmNeUsMUsfHOIgcfrXTjJ3f0VZ8+teDpZThI6xWKLxDNtkozaY1nfdA757+7kA==","signatures":[{"sig":"MEQCIEaGc44cJXGRIDJMFfHWWagwln3rwTYP4qqokhmHVZYvAiAV+4GuWEnGGhg4TGgGE0rfv54T6dJ+jeO31EMzHY3ewg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":881770},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"27e79a059f3a0b88bf512de601e184917720d2be","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.2_1767196233488_0.06979263375563072","host":"s3://npm-registry-packages-npm-production"}},"3.2.3":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.3","_id":"@ziadshalaby/ngx-zs-component@3.2.3","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"53c7a0bf78e0c02a1a4b89d3cca67520b9012012","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.3.tgz","fileCount":6,"integrity":"sha512-2egy4HvKDY4Am8GL3kALrNht4qAP3XFd27FPGwCo9z9PU1pVbFR28iULVjQE0c8nk7iHCCK2IvJP8XdNxDJVqw==","signatures":[{"sig":"MEUCIQCvcSoRJcObDM20r9DmG5GHt4T3brYX3DN5u46usVXkVQIgMxkQVCuWOW03Fn/Ni089ODt0jT4T25g5r05GmhntDTE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":882033},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"cc06b51d82d76b4a36d1f8d285e5c4ab18e3822b","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.3_1767198232338_0.5019192998080568","host":"s3://npm-registry-packages-npm-production"}},"3.2.4":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.4","_id":"@ziadshalaby/ngx-zs-component@3.2.4","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"5f800131dd250ee3f5f22ed758260845cd003a40","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.4.tgz","fileCount":6,"integrity":"sha512-ucNH1Zb8llSP7dsQmAWc/3y/z5QljWT0LT3bjn85fM5xoO7yMH0WZ2Vi389H9amAveWLIMonEi6cAVXlu8co1A==","signatures":[{"sig":"MEUCIECuY1DOvwUI6M0AvpbJ8bW7dtIkQyMClv9M01k4TcGQAiEA4e2lnuyljMGTLrFD/iF6kyy/0cl9TxKUYJF7t4nyWJo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":882124},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"cc06b51d82d76b4a36d1f8d285e5c4ab18e3822b","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.4_1767198816995_0.5899772473218037","host":"s3://npm-registry-packages-npm-production"}},"3.2.5":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.5","_id":"@ziadshalaby/ngx-zs-component@3.2.5","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"3bd3124319cf308b742a8f8b9bc3410893d6b20d","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.5.tgz","fileCount":6,"integrity":"sha512-pN1vhKJizxvRrDzaM8obOphk1xUefH6LHk5xjKZzLMU8fNtVzCzlU3Z2p+dWC/bU1Z7RHsVhte5WBMNk9ShzHQ==","signatures":[{"sig":"MEUCIEpX3M9EswR0a8lEKOraRipqZNhC879EbIPbVf/vHKmYAiEAoM3U0zUZy1nscfsMUce35+pxj6GmucCpvdfv5/z+2CU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":881478},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"cc06b51d82d76b4a36d1f8d285e5c4ab18e3822b","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.5_1767209719037_0.6515609743495205","host":"s3://npm-registry-packages-npm-production"}},"3.2.6":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.6","_id":"@ziadshalaby/ngx-zs-component@3.2.6","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"737aa70b3c45f7521ad2a16fc7189c9b4bb26015","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.6.tgz","fileCount":6,"integrity":"sha512-Uj+YHKBfsfrRzJjUhptmUZvr063+yy6RvYahZUYI/S3XjZmN7DTqUqLNJbzNpnfFvoq63GS72fyRJFAF2JLubg==","signatures":[{"sig":"MEUCIQDQL9mGcnhWnxVY9+pOvd4/oWrXq/glkUKLne14yonA0gIgWf1sRJI1QPAXjXWsdS9xnRZ48wJaPxP8QJVzA/Gf+QU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":882882},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"78b2c3a0da77e8d542ac49e04830fc666c9f8aaa","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.6_1767274949621_0.06919456565329174","host":"s3://npm-registry-packages-npm-production"}},"3.2.7":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.7","_id":"@ziadshalaby/ngx-zs-component@3.2.7","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"cc464250a18fef8170e452bdb26acbc2368c59c3","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.7.tgz","fileCount":6,"integrity":"sha512-kNuEW08vn5FcOUSqbv/ZndLHvYNBwVvyljR+yubzohjG2NS/LalLVWWXeJH65ysqLXo+CTAJrGqH6AuqMR8gWg==","signatures":[{"sig":"MEYCIQCofWHiorEvaERqnPCK3OS9a1VKhBwh4e18Q9QLY3hHngIhAMUf0bZ/lr1IFxa/igVx1gHmkYG52Mp0pLHpGCyDefkG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":884709},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"f919801df332d9626d10f18d0a39b5e5c8964a2a","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.7_1767279009801_0.3083958414831447","host":"s3://npm-registry-packages-npm-production"}},"3.2.8":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.8","_id":"@ziadshalaby/ngx-zs-component@3.2.8","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"a82a15fcbf1743d83ea71d25a9c151b47dcb5c25","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.8.tgz","fileCount":6,"integrity":"sha512-p3jdXfzRKD799aB27/xamFjLlvLIb7yfSuI3pk07sQYAl9OfDrH+xySuimVY+OqTWuAZaIOS+pKH2ZgpxL+hzA==","signatures":[{"sig":"MEQCIC+/NEovg+FDeRl+kdW1LfVf+jQvkVKyBNQA30++qJY4AiBVVwejDvYDvTr9sDgNiDpBvS05Dm/94n+p4Regbfy6dA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":885625},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9d94bd3349f8c7bde48f4d60615ec7dea51e2823","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.8_1767298331547_0.7060051027148897","host":"s3://npm-registry-packages-npm-production"}},"3.2.9":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.9","_id":"@ziadshalaby/ngx-zs-component@3.2.9","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"03aeca101b801c68351761c3684056478b093ea7","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.9.tgz","fileCount":6,"integrity":"sha512-xZp4CtRx1vAlQbSYIuuspxwXOvk3VV7dKDtL/6cFZ8NDsndLqCI4hFmtXXPcNcpDxUKmHJNAu0tHsAodCnWsqQ==","signatures":[{"sig":"MEYCIQDxYYu7iuVhEynVcM0bPLYQoEFu/kxdXExrGMBT49g/vgIhAMBaDdmlNfzzqogZFi9/7Oe+pEfuGdAcozkzKh5YTdR6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":885685},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"eb4ae01883b3130be5f3059182a8762730ce5296","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.9_1767301460917_0.02380202305323431","host":"s3://npm-registry-packages-npm-production"}},"3.2.10":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.10","_id":"@ziadshalaby/ngx-zs-component@3.2.10","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"046b5f351a154e42713835a0dab993494ea9cb71","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.10.tgz","fileCount":6,"integrity":"sha512-+JbpckVwsrGX3+/qqUyuAjvr6F693Jm3Dqsb2+m4YYgvVZAsinwnPirbgc8Iv0xGkd35e1yZ65EiUqJcDhU+Vg==","signatures":[{"sig":"MEUCIQDAfb9Rb0XgkUWc50QrrgO1K8nRfL6r+ZuYmmi4E58YJQIgKXPnQyWQFNGmAMSYwlnNtjCaD+jnrTFSqjTr1JkVyco=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":885648},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"dce03ce0f8b547657b3eca50f3435b590517c854","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.10_1767355520514_0.5637559869939675","host":"s3://npm-registry-packages-npm-production"}},"3.2.11":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.11","_id":"@ziadshalaby/ngx-zs-component@3.2.11","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"6fa50749b085a5fab2cb1a79c34b3cb4f019461d","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.11.tgz","fileCount":6,"integrity":"sha512-yld1SIzZQp+KQAb8n5rlUauaxZC6apEgCbVCbyGDpmerWbGVMu4aFtgWow7VYkcyCVR0Fr9g7fo/cmG2QMDaKg==","signatures":[{"sig":"MEYCIQCFodq+fhrQ3RTycbzpDQRyzJ0/gPXtBEONg2PGQ4PSpAIhAImrQI6DrvXLhB/RkwJ6ejUvJWIzhmh+6iTWHorMQA2f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":885372},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"dce03ce0f8b547657b3eca50f3435b590517c854","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.11_1767358547810_0.1765908027557206","host":"s3://npm-registry-packages-npm-production"}},"3.2.12":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.12","_id":"@ziadshalaby/ngx-zs-component@3.2.12","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"56f9e63234b2bc4afed92c272e55bb4dceea24e2","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.12.tgz","fileCount":6,"integrity":"sha512-gj38ADQdj89PswV4pWTA2T0N5+Y5D8HCIf3JC5xYuKAZsi9naVTX6TAZLOcUFCoe9jgEOMZ5w7Ft3AlfnfJh0Q==","signatures":[{"sig":"MEQCIEJa0qErfwOIpFGYbjCCtnxBtuMMzavp6aGUMNA93/qbAiAL4pcFXM/L8liUWPhw0O88QHDmf+Oio0rboTDGpq6DsQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":885669},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"dce03ce0f8b547657b3eca50f3435b590517c854","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.12_1767364054645_0.43897540210790975","host":"s3://npm-registry-packages-npm-production"}},"3.2.13":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.13","_id":"@ziadshalaby/ngx-zs-component@3.2.13","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"75c5b70be1a48f281d2cc6235f35311bedaf56d9","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.13.tgz","fileCount":6,"integrity":"sha512-4evVUK7s6+whyU+F+5ZIzxHRxYH6Aw5gcxC0Vvl4C2FMjLhsnD5/PKthHfC+x+R5W1N2ZEe2VpgxmSMZNOSYLQ==","signatures":[{"sig":"MEYCIQCSh+fCn4uKYyHMR2hIMHwh1TLsAnRgYtLeCwP4YLyo5wIhAL0lntSyPiCvUoBJApvt4OYDxFzMUwRoiTiBevJTq7gB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":888956},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"dce03ce0f8b547657b3eca50f3435b590517c854","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.13_1767370294646_0.42933534927069195","host":"s3://npm-registry-packages-npm-production"}},"3.2.14":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.14","_id":"@ziadshalaby/ngx-zs-component@3.2.14","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"87370831dc07118e3ff8394548d31958a77b0525","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.14.tgz","fileCount":6,"integrity":"sha512-Rk62RebUWqdMbczjg6T7sWAnFaWGfcgd87x50LcjKBgRe9WdBM/U3z4fNYEYUscA3IauN3oyvuHPS+vjOYCW2w==","signatures":[{"sig":"MEYCIQChYXHqf8cRMx07Znvm3jTbj1LTwnlAR+bW6+U7Sue87gIhALHp2snhyoB75wLTqJYIxk86h+MAGosNyYnTySFCxOeQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894142},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"078260946616b95f165a30b766995548a631fa6d","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.14_1767453035781_0.18711886920084186","host":"s3://npm-registry-packages-npm-production"}},"3.2.15":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.15","_id":"@ziadshalaby/ngx-zs-component@3.2.15","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"eb9fd5376c29f8562f1ac926eeedc452e9e704b9","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.15.tgz","fileCount":6,"integrity":"sha512-FGRTCruMEKWqWxlCSUvx79ceKp2dXcBZd38XQSVm+awKu+pIRymInJIGk3COauTTz9jFsjyHsmS0XqVk6iicwQ==","signatures":[{"sig":"MEYCIQCjkw96qGEjMnhYcH3I74blFTktm1mvX6Gg6mAZ0DPBRgIhAOlyJU7yIXg/mJ6t9pVFfD/5UnlCkVHi7oY60t2c9Zzg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894524},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"078260946616b95f165a30b766995548a631fa6d","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.15_1767461332059_0.9349064375361507","host":"s3://npm-registry-packages-npm-production"}},"3.2.16":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.16","_id":"@ziadshalaby/ngx-zs-component@3.2.16","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"c1bf4bdf19a62deeb32588f6692c78b2cce09463","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.16.tgz","fileCount":6,"integrity":"sha512-YrslGcyqE2SJOmGHKjkw1Cf7+swVHe6Dfcpo3eKaPB2Q8KQIAX6ASUtzSFw+nrh5Xngkhgccd2/r0T24LT5+5g==","signatures":[{"sig":"MEYCIQDjvTto+C3jAO5UQkhbO6gD/oaiN9GtXYOTuei1bOsJ2AIhALWItGmwNxJPOFZSc+bJam/AJmXvSgajzLbTug9lnRwn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894829},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"078260946616b95f165a30b766995548a631fa6d","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.16_1767468658068_0.5588212546656361","host":"s3://npm-registry-packages-npm-production"}},"3.2.17":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.17","_id":"@ziadshalaby/ngx-zs-component@3.2.17","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"e10cb1cdfc2fadd1935b939b1545c2eec3ca759a","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.17.tgz","fileCount":6,"integrity":"sha512-rPiXjd0zZuxt2V9dXzMsuos8Hy57BFIZiL+xMjdtwwSCng/HH17YVDderRKGF7dgsx5UqitofJ3aP18dyPs5IQ==","signatures":[{"sig":"MEQCIDs5p6CNjyin3PcfdbkW1CQcrXF4U8aBUpaK5i4cgVLWAiABkaxu50Hwh4s3Txe1TwxtyNFxJ7/MbZbjBQ3tDD+odw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894789},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"078260946616b95f165a30b766995548a631fa6d","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.17_1767474423964_0.9255280848099798","host":"s3://npm-registry-packages-npm-production"}},"3.2.18":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.18","_id":"@ziadshalaby/ngx-zs-component@3.2.18","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"916f64300cc5fc5701c02d78411ce02fa1acc68e","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.18.tgz","fileCount":6,"integrity":"sha512-e7JssInts+fHXLklA+F7MRAeb07LTbIvF19/m9jdj7RsP/ISfyg9uuftRbOhITK7QP4+w/jBoq1CNd+DY+N2Lw==","signatures":[{"sig":"MEUCIQD8m2toTMqO4hd19ogC/lfMzJNCD5OpLcPdk8FFo0QC9wIgaow2ec/0zznWKmLFeJVRq8jMK0XeJEvGuSToyk+mXag=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894447},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"994c8b16902d53a790d2e56504d6e3e212bef70c","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.18_1767536997993_0.34891719749780425","host":"s3://npm-registry-packages-npm-production"}},"3.2.19":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.19","_id":"@ziadshalaby/ngx-zs-component@3.2.19","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"6ebc2b65607feda3e86a87e3e9f1e7f7578a2ee5","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.19.tgz","fileCount":6,"integrity":"sha512-+tMlzww1uDQEGG+UeAQBUaCLQI6KB3YyPwzJnpwqgYlZft7329ldv5r2hscMnHt1dzB4CRRC8dSJfyNLXRxftg==","signatures":[{"sig":"MEUCIDAmojOhMMNPivzobcJn7s8bTwWk4hXpUIM3NZkT20kRAiEAu9fL5KtlRzWwhkwT3qAtcP05VYY2xyw1mHiZL1v3GoU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894149},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"994c8b16902d53a790d2e56504d6e3e212bef70c","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.19_1767538021143_0.5685941571581115","host":"s3://npm-registry-packages-npm-production"}},"3.2.20":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.20","_id":"@ziadshalaby/ngx-zs-component@3.2.20","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"10a650a0050cc06a55eb8a808aa5e332fafaecdf","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.20.tgz","fileCount":6,"integrity":"sha512-tGFSF+Xd4wpfZxy6/rLEgRQWoI7DdXg5TPQjgjveSbUx1aR+iAFfaSexI9eP9g0tinYYHKcKVdhTj6hMyYuRgw==","signatures":[{"sig":"MEUCIQDr7pTVOv8SbJkIVPF5ejtAEsxRZFVdoHuaDG7vCjo0swIgNj+F2/P7KN6dz7VUlcdn7Jb1Od2cn1Gzt40CFFA5K4E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894002},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"994c8b16902d53a790d2e56504d6e3e212bef70c","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.20_1767542029475_0.07853849202184504","host":"s3://npm-registry-packages-npm-production"}},"3.2.21":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.21","_id":"@ziadshalaby/ngx-zs-component@3.2.21","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"22691fc5906af6daa0161e22f8e83b40f8deffc3","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.21.tgz","fileCount":6,"integrity":"sha512-sHz9f1NHuVvd7yU1d8UBBfPaTOlWEUSSNH65QZFG5hm1EXpWWovIUcywkfZ0LIavTYWO/w4t8Tmr0q3Ct7kLlQ==","signatures":[{"sig":"MEYCIQDb4nYRyGVYxGorEP6Bwo2honJeyF8BO7IJtDATWU31AQIhAIRInazJkprXIoZW2/FirGXDJ//sCAYzz2bHYrSX/5YI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":900117},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6163df28ecf2a43dea028fe6970747f4e37d74c2","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.21_1767638564247_0.10574735762174559","host":"s3://npm-registry-packages-npm-production"}},"3.2.22":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.22","_id":"@ziadshalaby/ngx-zs-component@3.2.22","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"977909c2b138dee3ac653ffd25bd70fae9a90e13","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.22.tgz","fileCount":6,"integrity":"sha512-CbVluU6lKrWICS9+cgg2A+cVDmzQ09PkzVD0yG6ivXet5S5UYSX6ESVgCAF5Rh50+wXl05+AwA+7KqzwNy9bsw==","signatures":[{"sig":"MEUCIQCwbrp61itMr1JeaqA1BQ5X3BixhCNK89/6Uw/S7GjktQIgTRrlYXbkiPnhX2r88bnH3FzFaHIt6ojmn8McIWxxSDQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":900324},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"682808ee6751997d592097a8ffd3a3c855d0bcf3","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.22_1767698535641_0.2462902198200565","host":"s3://npm-registry-packages-npm-production"}},"3.2.23":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.23","_id":"@ziadshalaby/ngx-zs-component@3.2.23","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"1beb5730c3ed70c1f399f9519f35d229ad0b9996","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.23.tgz","fileCount":6,"integrity":"sha512-7QdKU85rQXH4j5izbF9e0vmkCnO/dhLjDH3HiGs1cRAGtSeDf19h5FJ8VZlPqAas5wIXNfo4yfq8v+wZikpKXQ==","signatures":[{"sig":"MEYCIQDEzsoM8D6Q/fiS/j73RLUJuvNBY4a2C67yMqTAt9uUVwIhAKxCxdzjxI6/QWj55kIX/v1p5fxHBGRiYq1zaZg04ucc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":900268},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"682808ee6751997d592097a8ffd3a3c855d0bcf3","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.23_1767699956310_0.8669808147278479","host":"s3://npm-registry-packages-npm-production"}},"3.2.24":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.24","_id":"@ziadshalaby/ngx-zs-component@3.2.24","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"958d1983974d77e38ee12b9f824c5104800334c8","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.24.tgz","fileCount":6,"integrity":"sha512-wVada5ga5Jiwoe9EbqjBxJGxjQ4mx1Yff4kTTzBDLMDP/O3hXhT5nTusHu55bkfsYwVbdnw8faJ/QQk9hfWqYA==","signatures":[{"sig":"MEUCIHBoBf8T15kW3XSf/TIBgh1DfZmY2MAS0W5T0KIBZdg9AiEAu085FmBA72N8EuoxAH2lWPiewBsu5X+PFAIU7kkWgW8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":902632},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"220f4d73b1804b132e54d9f1c4a6767ab8306748","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.24_1768078270630_0.3812109832080306","host":"s3://npm-registry-packages-npm-production"}},"3.2.25":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.25","_id":"@ziadshalaby/ngx-zs-component@3.2.25","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"fbb0ffc23af07fdad1e60c619965f163a142748a","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.25.tgz","fileCount":6,"integrity":"sha512-4MqIlxbQieV6Sip0vg5dX4XCSIefV/3ouwGIxfP27kF2UvpG12wA/EM0QWJ5zU0UeUW1M34Jm4DJ7CRD7ZBV/A==","signatures":[{"sig":"MEYCIQChWe/LNvlLQETTiQsVgv0Vvo3GWycTEhDJSNLfJfvzGQIhAPmnF3lqm8zUOBDFY9RLGDRAB5UegsPW46pnAGdu78oO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":904352},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6b4b24278b0ae7e552dd23ae2f04a7f58f83000d","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.25_1768209802566_0.8853841758213472","host":"s3://npm-registry-packages-npm-production"}},"3.2.26":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.26","_id":"@ziadshalaby/ngx-zs-component@3.2.26","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"8d3beb6346660b2728f010718b38a56bf7d242b4","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.26.tgz","fileCount":6,"integrity":"sha512-LdA73+2m3usXQXiA4+wReAfdYzNIN4apJDcM7SK5WTHkgigGhAy1m5HFBcgvj5SxoEM0V7wiHVE7qSrBwdlvxw==","signatures":[{"sig":"MEUCIAPJCDT2Eic07pjaIyvxVT0gAKQNLbKtNFa+wKdvRQ9+AiEAovAGjHLPCPeaW56qWSI9HhBKzLvf4bTFbVIH9drbF8s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":904883},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6b4b24278b0ae7e552dd23ae2f04a7f58f83000d","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"10.9.3","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.18.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.26_1768222677563_0.9017922892561905","host":"s3://npm-registry-packages-npm-production"}},"3.2.27":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.27","_id":"@ziadshalaby/ngx-zs-component@3.2.27","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"703b5853cb971f65c7bddaff9d5bd078dc7f1fa1","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.27.tgz","fileCount":6,"integrity":"sha512-+K/6JZoZY8YaUZT94frx1+2lzb7YzbNw1UjAzJnrtabjw8i142cN9KL+q1fgsbvBrlWUny6GDhkG1dknLLK71g==","signatures":[{"sig":"MEUCIQCsWI9vTit7l92qX3gskaElmKmJCZOat410mJgwN2QZ2wIgXdUr7uS4FF5Pl8ktRsI5Tm9YpLzEE9HC2lEzmgPmzBo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":906431},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a89da78b50398d80f5a92b7c0b310af30a929c70","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"11.6.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0","@angular/common":"^20.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.27_1770902646444_0.09033362235834375","host":"s3://npm-registry-packages-npm-production"}},"3.2.28":{"name":"@ziadshalaby/ngx-zs-component","version":"3.2.28","_id":"@ziadshalaby/ngx-zs-component@3.2.28","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"12127b08c6d656f93ae329bb704b91ff026af51f","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.2.28.tgz","fileCount":6,"integrity":"sha512-HgdsFe1ImwYbH4Eyg7Pb7qrfqyxo5G6rP1zOyl57RvzK6tnwNKR/mGqhe1J6sNSl9dR/yAfB+uCiuZZuYkc4Xw==","signatures":[{"sig":"MEYCIQDkf/0grDjFFv0+zK+b87rE11dfR5TK/O/FHt9qVNXT2gIhANmV6JipwsrOcR9ppR9ftcxHF9NejerRiZ5w12PlukTD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":906453},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"8a884bfe66165baca8dece72f77f822c0e35b757","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"11.6.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0","@angular/common":"^20.3.0 || ^21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.2.28_1771426867011_0.8780751347075004","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@ziadshalaby/ngx-zs-component","version":"3.3.0","_id":"@ziadshalaby/ngx-zs-component@3.3.0","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"0aef960711b56ce59e7a602092a18583a71283f8","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.3.0.tgz","fileCount":6,"integrity":"sha512-nwgtkqhE+lswTMLCY5DTFzMRYLbG4O/kWwVSuVfIDcMVygl4VuqweRjwGj/S1KSUW78Rd344GZm7YOVyvdhCtg==","signatures":[{"sig":"MEUCIQCka22PVZc+MKE6SrKhtTnHiuQe6ddTcUpNCdue8JHbjgIgPMGOhgtP1LoDhqDvJVxs5E1bN79K/g17TBsRrpJjdyY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":904960},"module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"ff737b871e7bfdea3e6965fdd554a77d5c97eb24","typings":"index.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"11.6.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0","@angular/common":"^20.3.0 || ^21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.3.0_1777606416169_0.7456845126729812","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"@ziadshalaby/ngx-zs-component","version":"3.4.0","_id":"@ziadshalaby/ngx-zs-component@3.4.0","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"50f80ce46321250769502c9b3e0014eef5e58e32","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-3.4.0.tgz","fileCount":6,"integrity":"sha512-iZNrtuyXKkxfXcy/w5Gv+oGltxkXtmYowkRtazmw8xkfNEzeHVq6PKsDBYiTJpYHg8HZie1MqVfDY82iPbnpcA==","signatures":[{"sig":"MEYCIQC+QFewZjAOrYNIbvGp8HXedWJtmaxeJNQlgMOum9+svgIhAKrKHrMO9uDki2cIQVfiGxQj9oiAWlAnUyIuyHKwbDe0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":953258},"type":"module","module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./types/ziadshalaby-ngx-zs-component.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"1e3f80cbbec61b826c62ade3db829cc9292c8637","typings":"types/ziadshalaby-ngx-zs-component.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"12.0.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0 || ^22.0.0","@angular/common":"^20.3.0 || ^21.0.0 || ^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_3.4.0_1788190444828_0.4476594572285184","host":"s3://npm-registry-packages-npm-production"}},"4.5.1":{"name":"@ziadshalaby/ngx-zs-component","version":"4.5.1","_id":"@ziadshalaby/ngx-zs-component@4.5.1","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"b834cd203813267863ac286d98defe05164cfbe0","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-4.5.1.tgz","fileCount":6,"integrity":"sha512-XsyAIW2gnLXuwa1vPpg9yOKnjzV0kQD9QxGwrRpIoeaXTJ8tGH1I5H+Htj6nZFLZS5K60vTLWGbNA3woSLkTaQ==","signatures":[{"sig":"MEUCIDNHFlEKCv6t5vP0ci7gnymtD24kpR0PBZsIbOk7MXw+AiEAzm2up097/D5p3tbn1hTcs6sH2v2OQFp2II7g6ol8p8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":950778},"type":"module","module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./types/ziadshalaby-ngx-zs-component.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"06d56d4f34f99368e678e2bf42ff674fe4f73965","typings":"types/ziadshalaby-ngx-zs-component.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"12.0.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0 || ^22.0.0","@angular/common":"^20.3.0 || ^21.0.0 || ^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_4.5.1_1788353877260_0.44997364071374535","host":"s3://npm-registry-packages-npm-production"}},"4.6.2":{"name":"@ziadshalaby/ngx-zs-component","version":"4.6.2","_id":"@ziadshalaby/ngx-zs-component@4.6.2","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"b5967590a06764c15ef959f8ff04b78cf2cc0615","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-4.6.2.tgz","fileCount":6,"integrity":"sha512-CcrpqlLaBIznL8cY6xQH4jivC/OSrnqWw/ABT6e+zZz13P3zU92MJoZh/8ILWoWrZwyAKKBy8xw8CVh3JkN0eg==","signatures":[{"sig":"MEYCIQC5GYeK9WOwJwiYf3HYwA1UbnF2sNZ1gdAgCTGgvtNUwQIhAL2HzgIaxSS4LfzhiYvjHwf566IpepBGuTHXJcay1Av6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":953295},"type":"module","module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./types/ziadshalaby-ngx-zs-component.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"f50414754cf2b272b408ea76aa141a7094a3f3ea","typings":"types/ziadshalaby-ngx-zs-component.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"12.0.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0 || ^22.0.0","@angular/common":"^20.3.0 || ^21.0.0 || ^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_4.6.2_1788359067393_0.2669669105036314","host":"s3://npm-registry-packages-npm-production"}},"4.6.3":{"name":"@ziadshalaby/ngx-zs-component","version":"4.6.3","_id":"@ziadshalaby/ngx-zs-component@4.6.3","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"6b3bd30247298c42e99f96e95d0e4273c5a90e19","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-4.6.3.tgz","fileCount":6,"integrity":"sha512-/BFLhQDi7e08rxVxXj20HtZVpS5UKFdKV7rsyCQcjEhP+zC96XJqx2Swr3o9oTgezRBJ1S2R+JHRR6ZPc3j+CA==","signatures":[{"sig":"MEUCIBY7UpVeeIGzAwo9k/+rJvG0TMpPBUHDXCqNOPQygLUgAiEA+qu9hwRdefS95s0bbj73mwWAMHWWSbJ91SWOGkUCEr8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":953310},"type":"module","module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./types/ziadshalaby-ngx-zs-component.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"1314856b4711ae6bc84714d76bd53c6faf9564f9","typings":"types/ziadshalaby-ngx-zs-component.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"12.0.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0 || ^22.0.0","@angular/common":"^20.3.0 || ^21.0.0 || ^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_4.6.3_1788376637333_0.9406230631411907","host":"s3://npm-registry-packages-npm-production"}},"4.6.4":{"name":"@ziadshalaby/ngx-zs-component","version":"4.6.4","_id":"@ziadshalaby/ngx-zs-component@4.6.4","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"dist":{"shasum":"704773370b32f71e8cf102bd06975a1d08835ad6","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-4.6.4.tgz","fileCount":6,"integrity":"sha512-xyJIoFzb0J1Cwt2ONxg1aQpKeFdmGYhAgIXoOn/W2t5lwdA6TyFqErq6LSo5jfoHQN/8uxjH7WRfOF+ySqCPOg==","signatures":[{"sig":"MEQCICheCIA5szFjnajE+FOQ8e6Z9RuZW1TpnY6tx3x6eU8SAiBebsbLRkbCtSpsmvm1/cQ4YO0hohECPc5GoCsAA8DYUQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":955055},"type":"module","module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./types/ziadshalaby-ngx-zs-component.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"1314856b4711ae6bc84714d76bd53c6faf9564f9","typings":"types/ziadshalaby-ngx-zs-component.d.ts","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"12.0.2","description":"This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0 || ^22.0.0","@angular/common":"^20.3.0 || ^21.0.0 || ^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ngx-zs-component_4.6.4_1788379535892_0.22476679947530775","host":"s3://npm-registry-packages-npm-production"}},"4.6.5":{"_id":"@ziadshalaby/ngx-zs-component@4.6.5","dist":{"shasum":"3658cd3376206096d7f63095ae39ec34c58b95a8","tarball":"https://registry.npmjs.org/@ziadshalaby/ngx-zs-component/-/ngx-zs-component-4.6.5.tgz","fileCount":6,"integrity":"sha512-VE7DFF1xgUedVrPYIcbTTpBQMCp4LAeFU/PS09QrfdJt/MszlEFD4+EHC6mSe96B/Vm/Pn39LKZua/O/vFBIfw==","signatures":[{"sig":"MEQCID50ghdRG/h5ElB3K6HDa9jwOheYPsRUGWIiAIsubQ8AAiBLbWLxFB8iAFgDMh0Gq773bZWw/X6WBHZxJY5AdlSNzw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDVwggYbd1VEIpwEnxcIZoDUP5zw2Kk99aSZy10wS+YbAIhAIQMOXB9kwrXsnjQUwQQb5yDwmv5pp4rIaGIPEhA2SzX"}],"unpackedSize":1011112},"name":"@ziadshalaby/ngx-zs-component","type":"module","module":"fesm2022/ziadshalaby-ngx-zs-component.mjs","exports":{".":{"types":"./types/ziadshalaby-ngx-zs-component.d.ts","default":"./fesm2022/ziadshalaby-ngx-zs-component.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"4b1466c591eb3d6aa7a355aca3fe33862629bb5e","typings":"types/ziadshalaby-ngx-zs-component.d.ts","version":"4.6.5","_npmUser":{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"},"_npmVersion":"12.0.2","description":"**A comprehensive Angular component library built with Angular 20+ and Tailwind CSS.** It provides a rich set of reusable UI components with built-in theming support (light/dark modes), responsive design, and accessibility features.","directories":{},"maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"^20.3.0 || ^21.0.0 || ^22.0.0","@angular/common":"^20.3.0 || ^21.0.0 || ^22.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ngx-zs-component_4.6.5_1789929591876_0.5268589915724855"}}},"time":{"created":"2025-10-31T23:00:21.750Z","modified":"2026-09-20T18:39:52.126Z","0.0.1":"2025-10-29T20:40:08.794Z","0.0.2":"2025-10-29T20:44:54.136Z","0.0.3":"2025-10-30T11:15:58.115Z","0.0.4":"2025-10-30T12:11:05.243Z","0.0.5":"2025-10-30T13:27:09.595Z","1.0.0":"2025-10-30T13:52:24.086Z","1.1.0":"2025-10-30T15:07:23.331Z","1.2.0":"2025-10-30T15:13:54.920Z","1.2.1":"2025-10-30T18:05:04.254Z","1.2.2":"2025-10-30T18:18:38.091Z","1.2.3":"2025-10-30T20:28:35.390Z","2.0.0":"2025-10-31T23:00:22.016Z","2.0.1":"2025-10-31T23:25:03.832Z","2.0.2":"2025-11-01T14:13:15.852Z","2.0.3":"2025-11-01T14:34:38.059Z","2.0.4":"2025-11-01T21:39:01.542Z","2.0.5":"2025-11-02T00:40:36.549Z","2.0.6":"2025-11-02T01:17:36.182Z","2.0.7":"2025-11-02T14:17:21.122Z","2.0.8":"2025-11-02T17:57:52.655Z","2.0.9":"2025-11-04T15:40:08.028Z","3.0.0":"2025-11-04T19:17:24.148Z","3.0.1":"2025-11-04T19:28:05.233Z","3.0.2":"2025-11-04T19:39:58.556Z","3.0.3":"2025-11-04T19:43:40.823Z","3.0.4":"2025-11-10T10:44:10.373Z","3.0.5":"2025-11-10T11:15:33.421Z","3.0.6":"2025-11-10T14:44:51.413Z","3.0.7":"2025-11-10T21:26:50.197Z","3.0.8":"2025-11-10T21:47:56.511Z","3.0.9":"2025-11-13T19:17:51.189Z","3.1.0":"2025-11-13T19:22:26.799Z","3.1.1":"2025-11-13T19:51:57.472Z","3.1.2":"2025-11-13T21:24:28.720Z","3.1.3":"2025-11-14T12:22:38.209Z","3.1.4":"2025-11-14T15:34:08.416Z","3.1.5":"2025-12-25T22:27:46.474Z","3.1.6":"2025-12-25T23:37:40.234Z","3.1.7":"2025-12-26T16:23:33.082Z","3.1.8":"2025-12-26T18:45:23.603Z","3.1.9":"2025-12-26T22:35:40.110Z","3.2.0":"2025-12-27T12:02:12.370Z","3.2.1":"2025-12-30T21:16:20.316Z","3.2.2":"2025-12-31T15:50:33.647Z","3.2.3":"2025-12-31T16:23:52.491Z","3.2.4":"2025-12-31T16:33:37.150Z","3.2.5":"2025-12-31T19:35:19.204Z","3.2.6":"2026-01-01T13:42:29.935Z","3.2.7":"2026-01-01T14:50:10.051Z","3.2.8":"2026-01-01T20:12:11.724Z","3.2.9":"2026-01-01T21:04:21.099Z","3.2.10":"2026-01-02T12:05:20.670Z","3.2.11":"2026-01-02T12:55:47.953Z","3.2.12":"2026-01-02T14:27:34.835Z","3.2.13":"2026-01-02T16:11:34.820Z","3.2.14":"2026-01-03T15:10:35.980Z","3.2.15":"2026-01-03T17:28:52.215Z","3.2.16":"2026-01-03T19:30:58.242Z","3.2.17":"2026-01-03T21:07:04.157Z","3.2.18":"2026-01-04T14:29:58.150Z","3.2.19":"2026-01-04T14:47:01.271Z","3.2.20":"2026-01-04T15:53:49.635Z","3.2.21":"2026-01-05T18:42:44.426Z","3.2.22":"2026-01-06T11:22:15.845Z","3.2.23":"2026-01-06T11:45:56.450Z","3.2.24":"2026-01-10T20:51:10.811Z","3.2.25":"2026-01-12T09:23:22.720Z","3.2.26":"2026-01-12T12:57:57.919Z","3.2.27":"2026-02-12T13:24:06.629Z","3.2.28":"2026-02-18T15:01:07.245Z","3.3.0":"2026-05-01T03:33:36.359Z","3.4.0":"2026-08-31T15:34:05.023Z","4.5.1":"2026-09-02T12:57:57.395Z","4.6.2":"2026-09-02T14:24:27.529Z","4.6.3":"2026-09-02T19:17:17.502Z","4.6.4":"2026-09-02T20:05:36.058Z","4.6.5":"2026-09-20T18:39:51.972Z"},"description":"**A comprehensive Angular component library built with Angular 20+ and Tailwind CSS.** It provides a rich set of reusable UI components with built-in theming support (light/dark modes), responsive design, and accessibility features.","maintainers":[{"name":"ziadshalaby","email":"shalabyziad94@gmail.com"}],"readme":"# @ziadshalaby/ngx-zs-component\n\n**A comprehensive Angular component library built with Angular 20+ and Tailwind CSS.** It provides a rich set of reusable UI components with built-in theming support (light/dark modes), responsive design, and accessibility features.\n\n[![npm version](https://badge.fury.io/js/%40ziadshalaby%2Fngx-zs-component.svg)](https://badge.fury.io/js/%40ziadshalaby%2Fngx-zs-component)\n[![Angular](https://img.shields.io/badge/Angular-20%2B-red.svg)](https://angular.io/)\n\n\n\nhttps://github.com/user-attachments/assets/2a2a1097-4eb8-402f-8caf-49f541db07bd\n\n\n\n---\n\n## Table of Contents\n\n- [Overview](#overview)\n- [Features](#features)\n- [Installation](#installation)\n- [Quick Start](#quick-start)\n- [Core Concepts](#core-concepts)\n- [Components API](#components-api)\n  - [Form Components](#form-components)\n  - [Layout Components](#layout-components)\n  - [Feedback Components](#feedback-components)\n  - [Navigation Components](#navigation-components)\n  - [Utility Components](#utility-components)\n- [Services API](#services-api)\n- [Types & Interfaces](#types--interfaces)\n- [Configuration](#configuration)\n- [Usage Examples](#usage-examples)\n- [Advanced Usage](#advanced-usage)\n- [Error Handling](#error-handling)\n- [Best Practices](#best-practices)\n- [FAQ](#faq)\n- [Troubleshooting](#troubleshooting)\n- [Contributing](#contributing)\n- [License](#license)\n\n---\n\n## Overview\n\n**@ziadshalaby/ngx-zs-component** is a modern Angular component library designed to accelerate UI development with:\n\n- **Signal-based reactivity** for optimal performance\n- **Tailwind CSS** with automatic dark mode\n- **Comprehensive theming** with 9 color variants\n- **Full accessibility** (WAI-ARIA compliant)\n- **Zoneless Angular** ready\n- **TypeScript-first** with full type safety\n- **Angular Signals Forms** integration for seamless form validation\n\n### What Problem Does It Solve?\n\nBuilding consistent, accessible, and themeable UIs in Angular often requires:\n- Assembling multiple UI libraries or building components from scratch\n- Managing dark mode implementation\n- Ensuring accessibility compliance\n- Maintaining consistent styling across large applications\n\nThis library provides a complete, battle-tested solution with a unified design system, eliminating the need to reinvent common UI patterns.\n\n### Key Use Cases\n\n| Use Case | Description |\n|----------|-------------|\n| **Enterprise Applications** | Consistent UI with theming, accessibility, and performance |\n| **Admin Dashboards** | Rich set of form controls, navigation, and data display components |\n| **Angular Projects** | Rapid prototyping and production-ready components |\n| **Dark Mode Apps** | Built-in dark mode support with seamless switching |\n| **Accessible UIs** | All components include proper ARIA attributes and keyboard navigation |\n\n---\n\n## Features\n\n| Feature | Description |\n|---------|-------------|\n| **Signal-Based** | All components use Angular Signals for reactive state management |\n| **Tailwind CSS** | Utility-first styling with `zs:` prefix and dark mode support |\n| **9 Color Variants** | Primary, Secondary, Success, Danger, Warning, Info, Dark, Violet, Teal |\n| **Dark Mode Ready** | Built-in dark mode with `ThemeToggle` component and `dark:` variants |\n| **Accessibility** | ARIA attributes, keyboard navigation, focus management, screen reader support |\n| **Form Components** | Input, Select, Checkbox, Toggle, Range, File, Button, Label |\n| **Layout Components** | Card, Carousel, Modal, Sidebar, Navbar, Footer |\n| **Feedback Components** | Alert (with service), Spinner, Connection Status |\n| **Navigation** | NavItem, Pagination, Scroll-to-Top |\n| **Utility Components** | Theme Toggle, Page 404, Input Errors |\n| **Services** | AlertService, ExtractorService, NavItemService, VisibilityObserverService |\n| **Signals Forms Integration** | All form controls implement `FormValueControl` or `FormCheckboxControl` interfaces |\n| **Zoneless Ready** | Compatible with `provideZonelessChangeDetection()` |\n| **TypeScript** | Full type safety with exported interfaces and types |\n| **Standalone Components** | All components are standalone and tree-shakable |\n\n---\n\n## Installation\n\n### Prerequisites\n\n- Angular `^20.3.0 || ^21.0.0 || ^22.0.0`\n- Tailwind CSS configured in your project\n\n### Install the Library\n\n```bash\nnpm install @ziadshalaby/ngx-zs-component\n```\n\n### Configure Tailwind CSS\n\nIf you're using Tailwind CSS, add the following to your `tailwind.config.js`:\n\n```javascript\nmodule.exports = {\n  content: [\n    // ... existing content\n    \"./node_modules/@ziadshalaby/ngx-zs-component/**/*.{html,ts}\"\n  ],\n  darkMode: 'class',\n  // The library uses the 'zs:' prefix. Ensure your Tailwind setup supports it.\n}\n```\n\n### Import Global Styles\n\nIn your `styles.css` or `styles.scss`, import the library's global styles:\n\n```css\n/* If using Tailwind's @import */\n@import \"@ziadshalaby/ngx-zs-component/global.css\";\n\n/* Or via relative path */\n@import \"../node_modules/@ziadshalaby/ngx-zs-component/global.css\";\n```\n\n### Font Awesome (Optional)\n\nThe library uses Font Awesome for icons. Add it to your project:\n\n```html\n<!-- In your index.html -->\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css\" />\n```\n\n---\n\n## Quick Start\n\n### 1. Import a Component\n\nAll components are standalone. Import them directly in your Angular component:\n\n```typescript\nimport { Component, signal } from '@angular/core';\nimport { form, required } from '@angular/forms/signals';\nimport { Button, AlertService, Alert, Input } from '@ziadshalaby/ngx-zs-component';\n\n@Component({\n  selector: 'app-example',\n  standalone: true,\n  imports: [Button, Alert, Input],\n  template: `\n    <form [form]=\"loginForm\">\n      <ZS-input\n        label=\"Email\"\n        placeholder=\"Enter your email\"\n        [formField]=\"loginForm.fields.email\"\n      ></ZS-input>\n      \n      <ZS-button (clickedEv)=\"showAlert()\">Click Me</ZS-button>\n      <ZS-alert></ZS-alert>\n    </form>\n  `\n})\nexport class ExampleComponent {\n  private alertService = inject(AlertService);\n\n  loginForm = form({\n    email: formField({ value: '', validators: [required()] }),\n  });\n\n  showAlert() {\n    this.alertService.addAlert({\n      type: 'success',\n      message: 'Hello from ngx-zs-component!',\n      autoClose: true\n    });\n  }\n}\n```\n\n### 2. Complete Working Example\n\n```typescript\nimport { Component, signal, inject } from '@angular/core';\nimport { form, formField, required, email } from '@angular/forms/signals';\nimport { \n  Button, Input, Alert, AlertService, \n  Card, ThemeToggle, themeTypes, Select, Checkbox\n} from '@ziadshalaby/ngx-zs-component';\n\n@Component({\n  selector: 'app-demo',\n  standalone: true,\n  imports: [Button, Input, Alert, Card, ThemeToggle, Select, Checkbox],\n  template: `\n    <ZS-theme-toggle \n      (themeChangeEv)=\"onThemeChange($event)\"\n    ></ZS-theme-toggle>\n\n    <ZS-card cardStyle=\"primary\" animation=\"bottom\">\n      <div class=\"zs:p-6\">\n        <h2>Welcome to ngx-zs-component!</h2>\n        \n        <form [form]=\"demoForm\">\n          <ZS-input \n            label=\"Your Name\"\n            placeholder=\"Enter your name\"\n            [formField]=\"demoForm.fields.name\"\n          ></ZS-input>\n\n          <ZS-input \n            type=\"email\"\n            label=\"Email\"\n            placeholder=\"Enter your email\"\n            [formField]=\"demoForm.fields.email\"\n          ></ZS-input>\n\n          <ZS-select\n            label=\"Role\"\n            [items]=\"roles\"\n            [formField]=\"demoForm.fields.role\"\n          ></ZS-select>\n\n          <ZS-checkbox\n            label=\"Accept Terms\"\n            [formField]=\"demoForm.fields.terms\"\n          ></ZS-checkbox>\n          \n          <ZS-button \n            btnStyle=\"primary\" \n            (clickedEv)=\"submit()\"\n            [disabled]=\"!demoForm.valid()\"\n          >\n            Submit\n          </ZS-button>\n        </form>\n      </div>\n    </ZS-card>\n\n    <ZS-alert></ZS-alert>\n  `\n})\nexport class DemoComponent {\n  private alertService = inject(AlertService);\n\n  roles: DropdownItem<number>[] = [\n    { id: 1, name: 'Developer' },\n    { id: 2, name: 'Designer' },\n    { id: 3, name: 'Manager' }\n  ];\n\n  demoForm = form({\n    name: formField({ value: '', validators: [required()] }),\n    email: formField({ value: '', validators: [required(), email()] }),\n    role: formField({ value: [] as DropdownItem<number>[], validators: [required()] }),\n    terms: formField({ value: false, validators: [required()] })\n  });\n\n  submit() {\n    if (this.demoForm.valid()) {\n      this.alertService.addAlert({\n        type: 'success',\n        message: 'Form submitted successfully!',\n        autoClose: true,\n        duration: 3000\n      });\n    }\n  }\n\n  onThemeChange(theme: themeTypes) {\n    console.log('Theme changed to:', theme);\n  }\n}\n```\n\n---\n\n## Core Concepts\n\n### 1. Theme System\n\nThe library uses a **unified palette map** (`unifiedPaletteMap`) that defines all styling for each color variant:\n\n```typescript\n// Available variants\ntype FormStyle = 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark' | 'violet' | 'teal';\n```\n\nEach variant provides:\n- Input styling (border, background, text)\n- Button styling (solid and outline)\n- Select styling\n- Checkbox styling\n- Card styling\n- Modal styling\n- Page 404 styling\n\n### 2. Signal-Based Reactivity\n\nAll components use Angular Signals for state management, making them compatible with zoneless change detection:\n\n```typescript\n// Model binding (two-way)\n[(value)]=\"mySignal\"\n\n// Model input (one-way)\n[value]=\"mySignal()\"\n\n// Output events\n(valueChangeEv)=\"handleChange($event)\"\n```\n\n### 3. Signals Forms Integration\n\nAll form components implement Angular's `FormValueControl` or `FormCheckboxControl` interfaces, enabling seamless integration with Signals Forms:\n\n```typescript\nimport { form, formField, required, email } from '@angular/forms/signals';\n\nconst myForm = form({\n  name: formField({ value: '', validators: [required(), minLength(3)] }),\n  email: formField({ value: '', validators: [required(), email()] })\n});\n```\n\n```html\n<form [form]=\"myForm\">\n  <ZS-input [formField]=\"myForm.fields.name\"></ZS-input>\n  <ZS-input type=\"email\" [formField]=\"myForm.fields.email\"></ZS-input>\n</form>\n```\n\n### 4. Dark Mode\n\nDark mode is implemented using the `dark` class on the `<html>` element:\n\n```html\n<html class=\"dark\">\n  <!-- Dark mode styles are applied via Tailwind's dark: variant -->\n</html>\n```\n\nUse the `ZS-theme-toggle` component for automatic dark mode switching.\n\n### 5. Z-Index Management\n\nThe library provides a centralized z-index system:\n\n```typescript\nexport const zIndices = {\n  alert: 'zs:z-2200',\n  spinner: 'zs:z-2000',\n  modal: 'zs:z-1800',\n  themeToggle: 'zs:z-1600',\n  navbar: 'zs:z-1400',\n  navbarOverlay: 'zs:z-1300',\n  sideBar: 'zs:z-1200',\n  sideBarOverlay: 'zs:z-1100',\n  scrollToTop: 'zs:z-800',\n  navItemDropdown: 'zs:z-200',\n  selectDropdown: 'zs:z-200'\n};\n```\n\n### 6. Component Prefix\n\nAll components use the `ZS-` prefix to avoid naming conflicts:\n- `ZS-button`, `ZS-input`, `ZS-alert`, etc.\n\n---\n\n## Components API\n\n### Form Components\n\n#### `ZS-button`\n\nA versatile button component with multiple variants, sizes, and styles.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `btnStyle` | `FormStyle` | `'primary'` | Color variant |\n| `variant` | `'solid' \\| 'outline'` | `'solid'` | Button style |\n| `size` | `'xs' \\| 'sm' \\| 'md' \\| 'lg' \\| 'xl'` | `'md'` | Button size |\n| `disabled` | `boolean` | `false` | Disabled state |\n| `iconTpl` | `TemplateRef<any>` | `undefined` | Icon template |\n| `type` | `'button' \\| 'submit' \\| 'reset'` | `'button'` | Button type |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `clickedEv` | `Event` | Emitted when button is clicked |\n\n**Example:**\n\n```html\n<!-- Solid button -->\n<ZS-button btnStyle=\"primary\" (clickedEv)=\"handleClick()\">\n  Submit\n</ZS-button>\n\n<!-- Outline button with icon -->\n<ZS-button \n  btnStyle=\"danger\" \n  variant=\"outline\" \n  [iconTpl]=\"iconTemplate\"\n>\n  Delete\n</ZS-button>\n\n<ng-template #iconTemplate>\n  <i class=\"fas fa-trash\"></i>\n</ng-template>\n\n<!-- Disabled button -->\n<ZS-button btnStyle=\"secondary\" [disabled]=\"true\">\n  Disabled\n</ZS-button>\n```\n\n---\n\n#### `ZS-input`\n\nA feature-rich input component with validation, formatting, and various input types. **Now implements `FormValueControl<string | number | null>` for Signals Forms integration.**\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `iName` | `string \\| null` | `null` | Input name attribute |\n| `label` | `string \\| null` | `null` | Label text |\n| `hint` | `string \\| null` | `null` | Hint/helper text |\n| `placeholder` | `string \\| null` | `null` | Placeholder text |\n| `type` | `InputType` | `'text'` | Input type |\n| `inputStyle` | `FormStyle` | `'secondary'` | Color variant |\n| `disabled` | `boolean` | `false` | Disabled state |\n| `readonly` | `boolean` | `false` | Readonly state |\n| `hidden` | `boolean` | `false` | Hidden state |\n| `required` | `boolean` | `false` | Required field |\n| `iconTpl` | `TemplateRef<any>` | `undefined` | Left icon template |\n| `showSearchIcon` | `boolean` | `false` | Show search icon |\n| `showLoaderIconOnSearchInput` | `boolean` | `false` | Show loader on search |\n| `maxlength` | `number \\| null` | `null` | Max character length |\n| `minlength` | `number \\| null` | `null` | Min character length |\n| `spellcheck` | `boolean` | `false` | Spellcheck enabled |\n| `htmlMin` | `string \\| number \\| null` | `null` | Min value (number/date) |\n| `htmlMax` | `string \\| number \\| null` | `null` | Max value (number/date) |\n| `step` | `number \\| null` | `null` | Step increment |\n| `autofocus` | `boolean` | `false` | Autofocus on load |\n| `searchDebounceDelay` | `number` | `300` | Search debounce (ms) |\n| `size` | `BaseSize` | `'md'` | Input size |\n| `autocomplete` | `string \\| null` | `'off'` | Autocomplete attribute |\n| `inputmode` | `string \\| null` | `null` | Input mode attribute |\n\n**Signals Forms Control Properties:**\n\n| Property | Type | Description |\n|----------|------|-------------|\n| `value` | `ModelSignal<string \\| number \\| null>` | Input value (two-way) |\n| `touched` | `ModelSignal<boolean>` | Tracks if user interacted |\n| `touch` | `Output<void>` | Emitted on blur |\n| `dirty` | `Input<boolean>` | Dirty state |\n| `disabled` | `Input<boolean>` | Disabled state |\n| `readonly` | `Input<boolean>` | Readonly state |\n| `hidden` | `Input<boolean>` | Hidden state |\n| `errors` | `Input<ValidationError[]>` | Validation errors |\n| `invalid` | `Input<boolean>` | Invalid state |\n| `required` | `Input<boolean>` | Required constraint |\n| `min` | `Input<string \\| number>` | Min constraint |\n| `max` | `Input<string \\| number>` | Max constraint |\n| `minLength` | `Input<number>` | Min length constraint |\n| `maxLength` | `Input<number>` | Max length constraint |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `enterEv` | `void` | Emitted on Enter key |\n| `focusEv` | `void` | Emitted on focus |\n| `blurEv` | `void` | Emitted on blur |\n| `changedEv` | `string \\| number \\| null` | Emitted on value change |\n| `searchEv` | `string \\| number \\| null` | Emitted on search |\n| `clearedEv` | `void` | Emitted when cleared |\n| `keydownEv` | `KeyboardEvent` | Emitted on keydown |\n\n**Example with Signals Forms:**\n\n```typescript\nimport { form, formField, required, email, minLength, maxLength } from '@angular/forms/signals';\n\nconst myForm = form({\n  username: formField({ \n    value: '', \n    validators: [required(), minLength(3), maxLength(20)] \n  }),\n  email: formField({ \n    value: '', \n    validators: [required(), email()] \n  }),\n  password: formField({ \n    value: '', \n    validators: [required(), minLength(8)] \n  }),\n  age: formField({ \n    value: 0, \n    validators: [min(18), max(99)] \n  })\n});\n```\n\n```html\n<form [form]=\"myForm\">\n  <!-- Basic text input -->\n  <ZS-input \n    label=\"Username\"\n    placeholder=\"Enter username\"\n    [formField]=\"myForm.fields.username\"\n  ></ZS-input>\n\n  <!-- Email input with validation -->\n  <ZS-input \n    type=\"email\"\n    label=\"Email Address\"\n    placeholder=\"you@example.com\"\n    hint=\"We'll never share your email\"\n    [formField]=\"myForm.fields.email\"\n  ></ZS-input>\n\n  <!-- Password input -->\n  <ZS-input \n    type=\"password\"\n    label=\"Password\"\n    placeholder=\"Enter password\"\n    [formField]=\"myForm.fields.password\"\n  ></ZS-input>\n\n  <!-- Search input with debounce -->\n  <ZS-input \n    type=\"search\"\n    label=\"Search\"\n    placeholder=\"Search...\"\n    [showLoaderIconOnSearchInput]=\"true\"\n    (searchEv)=\"performSearch($event)\"\n  ></ZS-input>\n\n  <!-- Number input with range -->\n  <ZS-input \n    type=\"number\"\n    label=\"Age\"\n    [formField]=\"myForm.fields.age\"\n  ></ZS-input>\n\n  <!-- Date input -->\n  <ZS-input \n    type=\"date\"\n    label=\"Birth Date\"\n    [htmlMin]=\"'1900-01-01'\"\n    [htmlMax]=\"'2020-01-01'\"\n    [(value)]=\"birthDate\"\n  ></ZS-input>\n</form>\n```\n\n---\n\n#### `ZS-select`\n\nA customizable dropdown select component with search and multi-select support. **Now implements `FormValueControl<DropdownItem<T>[]>` for Signals Forms integration.**\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `items` | `DropdownItem<T>[]` | **Required** | Options list |\n| `label` | `string \\| null` | `null` | Label text |\n| `hint` | `string \\| null` | `null` | Hint text |\n| `required` | `boolean` | `false` | Required field |\n| `disabled` | `boolean` | `false` | Disabled state |\n| `readonly` | `boolean` | `false` | Readonly state |\n| `hidden` | `boolean` | `false` | Hidden state |\n| `inputStyle` | `FormStyle` | `'secondary'` | Color variant |\n| `placeholder` | `string` | `'Select an option...'` | Placeholder text |\n| `showSearch` | `boolean` | `true` | Show search input |\n| `searchPlaceholder` | `string` | `'Search...'` | Search placeholder |\n| `noResultsText` | `string` | `'No results found'` | No results message |\n| `showClearButton` | `boolean` | `true` | Show clear button |\n| `searchDebounceDelay` | `number` | `300` | Search debounce (ms) |\n| `showLoaderIconOnSearchInput` | `boolean` | `false` | Show loader on search |\n| `multiple` | `boolean` | `false` | Multi-select mode |\n\n**Signals Forms Control Properties:**\n\n| Property | Type | Description |\n|----------|------|-------------|\n| `value` | `ModelSignal<DropdownItem<T>[]>` | Selected items (two-way) |\n| `touched` | `Input<boolean>` | Tracks if user interacted |\n| `touch` | `Output<void>` | Emitted on blur |\n| `dirty` | `Input<boolean>` | Dirty state |\n| `disabled` | `Input<boolean>` | Disabled state |\n| `readonly` | `Input<boolean>` | Readonly state |\n| `hidden` | `Input<boolean>` | Hidden state |\n| `errors` | `Input<ValidationError[]>` | Validation errors |\n| `invalid` | `Input<boolean>` | Invalid state |\n| `required` | `Input<boolean>` | Required constraint |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `selectedItemsEv` | `DropdownItem<T>[]` | Emitted on selection change |\n| `selectionClearedEv` | `void` | Emitted when cleared |\n\n**Example with Signals Forms:**\n\n```typescript\nimport { form, formField, required } from '@angular/forms/signals';\n\nconst options: DropdownItem<number>[] = [\n  { id: 1, name: 'Option 1' },\n  { id: 2, name: 'Option 2' },\n  { id: 3, name: 'Option 3' }\n];\n\nconst myForm = form({\n  singleSelect: formField({ \n    value: [] as DropdownItem<number>[], \n    validators: [required()] \n  }),\n  multiSelect: formField({ \n    value: [] as DropdownItem<number>[], \n    validators: [required()] \n  })\n});\n```\n\n```html\n<form [form]=\"myForm\">\n  <!-- Single select -->\n  <ZS-select\n    label=\"Choose an option\"\n    [items]=\"options\"\n    placeholder=\"Select...\"\n    [formField]=\"myForm.fields.singleSelect\"\n    inputStyle=\"primary\"\n  ></ZS-select>\n\n  <!-- Multi-select -->\n  <ZS-select\n    label=\"Select multiple\"\n    [items]=\"options\"\n    [multiple]=\"true\"\n    [formField]=\"myForm.fields.multiSelect\"\n    inputStyle=\"success\"\n  ></ZS-select>\n</form>\n```\n\n---\n\n#### `ZS-checkbox`\n\nA customizable checkbox component with variant and shape options. **Now implements `FormCheckboxControl` for Signals Forms integration.**\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `label` | `string \\| null` | `null` | Label text |\n| `hint` | `string \\| null` | `null` | Hint text |\n| `inputStyle` | `FormStyle` | `'secondary'` | Color variant |\n| `size` | `BaseSize` | `'md'` | Checkbox size |\n| `disabled` | `boolean` | `false` | Disabled state |\n| `readonly` | `boolean` | `false` | Readonly state |\n| `hidden` | `boolean` | `false` | Hidden state |\n| `variant` | `'solid' \\| 'regular'` | `'regular'` | Icon style |\n| `shape` | `'square' \\| 'circle'` | `'square'` | Checkbox shape |\n\n**Signals Forms Control Properties:**\n\n| Property | Type | Description |\n|----------|------|-------------|\n| `checked` | `ModelSignal<boolean>` | Checked state (two-way) |\n| `touched` | `Input<boolean>` | Tracks if user interacted |\n| `touch` | `Output<void>` | Emitted on interaction |\n| `dirty` | `Input<boolean>` | Dirty state |\n| `disabled` | `Input<boolean>` | Disabled state |\n| `readonly` | `Input<boolean>` | Readonly state |\n| `hidden` | `Input<boolean>` | Hidden state |\n| `errors` | `Input<ValidationError[]>` | Validation errors |\n| `invalid` | `Input<boolean>` | Invalid state |\n| `required` | `Input<boolean>` | Required constraint |\n\n**Example with Signals Forms:**\n\n```typescript\nimport { form, formField, required } from '@angular/forms/signals';\n\nconst myForm = form({\n  terms: formField({ value: false, validators: [required()] }),\n  notifications: formField({ value: true })\n});\n```\n\n```html\n<form [form]=\"myForm\">\n  <!-- Basic checkbox -->\n  <ZS-checkbox \n    label=\"Accept terms\"\n    [formField]=\"myForm.fields.terms\"\n  ></ZS-checkbox>\n\n  <!-- Solid variant -->\n  <ZS-checkbox \n    label=\"Solid style\"\n    variant=\"solid\"\n    inputStyle=\"primary\"\n    [formField]=\"myForm.fields.notifications\"\n  ></ZS-checkbox>\n</form>\n```\n\n---\n\n#### `ZS-toggle`\n\nA toggle switch component with color and size options. **Now implements `FormCheckboxControl` for Signals Forms integration.**\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `label` | `string \\| null` | `null` | Label text |\n| `hint` | `string \\| null` | `null` | Hint text |\n| `color` | `BaseColors` | `'blue'` | Toggle color |\n| `disabled` | `boolean` | `false` | Disabled state |\n| `readonly` | `boolean` | `false` | Readonly state |\n| `hidden` | `boolean` | `false` | Hidden state |\n| `iconTpl` | `TemplateRef<any>` | `undefined` | Icon template |\n| `size` | `BaseSize` | `'md'` | Toggle size |\n\n**Signals Forms Control Properties:**\n\n| Property | Type | Description |\n|----------|------|-------------|\n| `checked` | `ModelSignal<boolean>` | Toggle state (two-way) |\n| `touched` | `Input<boolean>` | Tracks if user interacted |\n| `touch` | `Output<void>` | Emitted on interaction |\n| `dirty` | `Input<boolean>` | Dirty state |\n| `disabled` | `Input<boolean>` | Disabled state |\n| `readonly` | `Input<boolean>` | Readonly state |\n| `hidden` | `Input<boolean>` | Hidden state |\n| `errors` | `Input<ValidationError[]>` | Validation errors |\n| `invalid` | `Input<boolean>` | Invalid state |\n| `required` | `Input<boolean>` | Required constraint |\n\n**Example with Signals Forms:**\n\n```typescript\nimport { form, formField } from '@angular/forms/signals';\n\nconst myForm = form({\n  darkMode: formField({ value: false }),\n  notifications: formField({ value: true })\n});\n```\n\n```html\n<form [form]=\"myForm\">\n  <ZS-toggle \n    label=\"Enable notifications\"\n    [formField]=\"myForm.fields.notifications\"\n  ></ZS-toggle>\n\n  <ZS-toggle \n    label=\"Dark mode\"\n    color=\"violet\"\n    [formField]=\"myForm.fields.darkMode\"\n  ></ZS-toggle>\n</form>\n```\n\n---\n\n#### `ZS-range`\n\nA customizable range slider component. **Now implements `FormValueControl<number>` for Signals Forms integration.**\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `label` | `string \\| null` | `null` | Label text |\n| `hint` | `string \\| null` | `null` | Hint text |\n| `min` | `number` | `0` | Minimum value |\n| `max` | `number` | `100` | Maximum value |\n| `step` | `number` | `10` | Step increment |\n| `inputStyle` | `FormStyle` | `'secondary'` | Color variant |\n| `size` | `BaseSize` | `'md'` | Range size |\n| `disabled` | `boolean` | `false` | Disabled state |\n| `readonly` | `boolean` | `false` | Readonly state |\n| `hidden` | `boolean` | `false` | Hidden state |\n| `showValue` | `boolean` | `true` | Show current value |\n\n**Signals Forms Control Properties:**\n\n| Property | Type | Description |\n|----------|------|-------------|\n| `value` | `ModelSignal<number>` | Current value (two-way) |\n| `touched` | `Input<boolean>` | Tracks if user interacted |\n| `touch` | `Output<void>` | Emitted on interaction |\n| `dirty` | `Input<boolean>` | Dirty state |\n| `disabled` | `Input<boolean>` | Disabled state |\n| `readonly` | `Input<boolean>` | Readonly state |\n| `hidden` | `Input<boolean>` | Hidden state |\n| `errors` | `Input<ValidationError[]>` | Validation errors |\n| `invalid` | `Input<boolean>` | Invalid state |\n| `required` | `Input<boolean>` | Required constraint |\n| `min` | `Input<number>` | Min constraint |\n| `max` | `Input<number>` | Max constraint |\n\n**Example with Signals Forms:**\n\n```typescript\nimport { form, formField, required, min, max } from '@angular/forms/signals';\n\nconst myForm = form({\n  volume: formField({ \n    value: 50, \n    validators: [required(), min(0), max(100)] \n  }),\n  brightness: formField({ \n    value: 75, \n    validators: [required(), min(0), max(100)] \n  })\n});\n```\n\n```html\n<form [form]=\"myForm\">\n  <ZS-range \n    label=\"Volume\"\n    [min]=\"0\"\n    [max]=\"100\"\n    [step]=\"5\"\n    [formField]=\"myForm.fields.volume\"\n  ></ZS-range>\n\n  <ZS-range \n    label=\"Brightness\"\n    [min]=\"0\"\n    [max]=\"100\"\n    inputStyle=\"primary\"\n    size=\"lg\"\n    [formField]=\"myForm.fields.brightness\"\n  ></ZS-range>\n</form>\n```\n\n---\n\n#### `ZS-file`\n\nA file upload component with preview and validation support. **Now implements `FormValueControl<FilesType>` for Signals Forms integration.**\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `iName` | `string \\| null` | `null` | Input name attribute |\n| `label` | `string \\| null` | `null` | Label text |\n| `hint` | `string \\| null` | `null` | Hint text |\n| `placeholder` | `string \\| null` | `null` | Placeholder text |\n| `inputStyle` | `FormStyle` | `'secondary'` | Color variant |\n| `autofocus` | `boolean` | `false` | Autofocus |\n| `disabled` | `boolean` | `false` | Disabled state |\n| `readonly` | `boolean` | `false` | Readonly state |\n| `hidden` | `boolean` | `false` | Hidden state |\n| `required` | `boolean` | `false` | Required field |\n| `accept` | `string` | `''` | Accepted file types |\n| `multiple` | `boolean` | `false` | Multiple files |\n| `allowPreview` | `boolean` | `true` | Enable file preview |\n\n**Signals Forms Control Properties:**\n\n| Property | Type | Description |\n|----------|------|-------------|\n| `value` | `ModelSignal<FilesType>` | Files map (two-way) |\n| `touched` | `Input<boolean>` | Tracks if user interacted |\n| `touch` | `Output<void>` | Emitted on blur |\n| `dirty` | `Input<boolean>` | Dirty state |\n| `disabled` | `Input<boolean>` | Disabled state |\n| `readonly` | `Input<boolean>` | Readonly state |\n| `hidden` | `Input<boolean>` | Hidden state |\n| `errors` | `Input<ValidationError[]>` | Validation errors |\n| `invalid` | `Input<boolean>` | Invalid state |\n| `required` | `Input<boolean>` | Required constraint |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `changeEv` | `FileData[]` | Emitted on file change |\n\n**Example with Signals Forms:**\n\n```typescript\nimport { form, formField, required } from '@angular/forms/signals';\n\nconst myForm = form({\n  document: formField({ \n    value: new Map() as FilesType, \n    validators: [required()] \n  }),\n  images: formField({ \n    value: new Map() as FilesType \n  })\n});\n```\n\n```html\n<form [form]=\"myForm\">\n  <!-- Single file upload -->\n  <ZS-file\n    label=\"Upload Document\"\n    hint=\"Max 5MB\"\n    accept=\".pdf,.docx,.jpg,.png\"\n    [formField]=\"myForm.fields.document\"\n    inputStyle=\"primary\"\n  ></ZS-file>\n\n  <!-- Multiple file upload -->\n  <ZS-file\n    label=\"Upload Images\"\n    hint=\"Select multiple images\"\n    accept=\"image/*\"\n    [multiple]=\"true\"\n    [allowPreview]=\"true\"\n    [formField]=\"myForm.fields.images\"\n    inputStyle=\"success\"\n  ></ZS-file>\n</form>\n```\n\n---\n\n#### `ZS-label`\n\nA label component for form fields.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `label` | `string \\| null` | `null` | Label text |\n| `hint` | `string \\| null` | `null` | Hint text |\n| `hintId` | `string \\| null` | `null` | Hint ID |\n| `size` | `BaseSize` | `'md'` | Label size |\n| `required` | `boolean` | `false` | Required indicator |\n| `for` | `string \\| null` | `null` | Associated input ID |\n\n**Example:**\n\n```html\n<ZS-label \n  label=\"Username\"\n  hint=\"Min 3 characters\"\n  [required]=\"true\"\n  for=\"username-input\"\n></ZS-label>\n```\n\n---\n\n#### `ZS-input-errors`\n\nA component for displaying validation errors.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `Id` | `string` | `crypto.randomUUID()` | Unique identifier |\n| `errors` | `string[][]` | `[]` | Error messages |\n\n**Example:**\n\n```html\n<ZS-input-errors \n  [errors]=\"[['Email is required', 'Invalid email format']]\"\n></ZS-input-errors>\n```\n\n---\n\n### Layout Components\n\n#### `ZS-card`\n\nA versatile card component with animations and hover effects.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `cardStyle` | `FormStyle` | `'primary'` | Color variant |\n| `variant` | `VariantType` | `undefined` | Card variant options |\n| `clickable` | `boolean` | `false` | Clickable state |\n| `animation` | `AnimationType` | `'none'` | Entrance animation |\n| `bodyClass` | `string` | `'zs:bg-gray-100 zs:dark:bg-gray-800'` | Body CSS class |\n\n**Animation Types:**\n\n```typescript\ntype AnimationType = 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'none';\n```\n\n**Example:**\n\n```html\n<!-- Basic card -->\n<ZS-card cardStyle=\"primary\">\n  <div class=\"zs:p-6\">\n    <h3>Card Title</h3>\n    <p>Card content goes here.</p>\n  </div>\n</ZS-card>\n\n<!-- Clickable card with animation -->\n<ZS-card \n  cardStyle=\"success\" \n  animation=\"bottom\" \n  [clickable]=\"true\"\n  [variant]=\"{ shadow: true, border: true, border_hover: true }\"\n>\n  <div class=\"zs:p-6\">\n    <h3>Interactive Card</h3>\n    <p>Click me!</p>\n  </div>\n</ZS-card>\n```\n\n---\n\n#### `ZS-carousel`\n\nA responsive carousel component with drag support and auto-play.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `itemsNumber` | `number` | **Required** | Total number of items |\n| `arrows` | `boolean` | `true` | Show navigation arrows |\n| `arrowColor` | `BaseColors` | `'gray'` | Arrow color |\n| `showIndicators` | `boolean` | `true` | Show indicators |\n| `autoPlay` | `boolean` | `true` | Auto-play slides |\n| `duration` | `number` | `3000` | Auto-play interval (ms) |\n| `maxItemsPerBox` | `number` | `4` | Max items per slide |\n| `itemMinWidth` | `number` | `200` | Min item width (px) |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `indexChangeEv` | `number` | Emitted on slide change |\n\n**Model:**\n\n| Model | Type | Description |\n|-------|------|-------------|\n| `currentIndex` | `number` | Current slide index (two-way) |\n\n**Example:**\n\n```html\n<ZS-carousel\n  [itemsNumber]=\"items.length\"\n  [arrows]=\"true\"\n  [showIndicators]=\"true\"\n  [autoPlay]=\"true\"\n  [duration]=\"3000\"\n  [maxItemsPerBox]=\"3\"\n  arrowColor=\"blue\"\n  [(currentIndex)]=\"activeSlide\"\n>\n  @for (item of items; track item.id) {\n    <div carousel-item>\n      <div class=\"zs:p-6 zs:bg-blue-500 zs:rounded-lg zs:m-2 zs:h-48 zs:text-white\">\n        <h3>{{ item.title }}</h3>\n      </div>\n    </div>\n  }\n</ZS-carousel>\n```\n\n---\n\n#### `ZS-modal`\n\nA modal dialog component with configurable buttons and positioning.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `title` | `string` | `'Modal Title'` | Modal title |\n| `modalStyle` | `FormStyle` | `'primary'` | Color variant |\n| `showCancelIcon` | `boolean` | `true` | Show close icon |\n| `showHeader` | `boolean` | `true` | Show header |\n| `showBody` | `boolean` | `true` | Show body |\n| `showFooter` | `boolean` | `true` | Show footer |\n| `cancelConfig` | `BtnType` | `undefined` | Cancel button config |\n| `confirmConfig` | `BtnType` | `undefined` | Confirm button config |\n| `position` | `Position` | `'center'` | Modal position |\n| `closeOnOverlay` | `boolean` | `true` | Close on overlay click |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `confirmEv` | `void` | Emitted on confirm |\n| `cancelEv` | `void` | Emitted on cancel |\n| `closedEv` | `void` | Emitted when closed |\n\n**Model:**\n\n| Model | Type | Description |\n|-------|------|-------------|\n| `open` | `boolean` | Modal open state (two-way) |\n\n**Example:**\n\n```html\n<ZS-button (clickedEv)=\"modalOpen.set(true)\">Open Modal</ZS-button>\n\n<ZS-modal\n  [(open)]=\"modalOpen\"\n  title=\"Confirm Action\"\n  modalStyle=\"primary\"\n  [position]=\"'center'\"\n  [confirmConfig]=\"{ text: 'Yes, Confirm', btnStyle: 'success' }\"\n  [cancelConfig]=\"{ text: 'Cancel', btnStyle: 'secondary', variant: 'outline' }\"\n  (confirmEv)=\"onConfirm()\"\n  (cancelEv)=\"onCancel()\"\n>\n  <p>Are you sure you want to proceed?</p>\n</ZS-modal>\n```\n\n---\n\n#### `ZS-sidebar`\n\nA sidebar component with floating and fixed modes.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `header` | `string` | `'Side Bar'` | Sidebar header |\n| `preventClose` | `boolean` | `false` | Prevent closing |\n| `floating` | `boolean` | `false` | Floating mode |\n| `closeOnOverlay` | `boolean` | `true` | Close on overlay click |\n\n**Model:**\n\n| Model | Type | Description |\n|-------|------|-------------|\n| `openSide` | `boolean` | Sidebar open state (two-way) |\n\n**Example:**\n\n```html\n<ZS-button (clickedEv)=\"sidebarOpen.set(true)\">Open Sidebar</ZS-button>\n\n<ZS-sidebar\n  header=\"Menu\"\n  [(openSide)]=\"sidebarOpen\"\n  [floating]=\"true\"\n  [closeOnOverlay]=\"true\"\n>\n  <div main class=\"zs:p-4 zs:flex zs:flex-col zs:gap-2\">\n    <a class=\"zs:p-2 zs:rounded zs:hover:bg-gray-100\">Dashboard</a>\n    <a class=\"zs:p-2 zs:rounded zs:hover:bg-gray-100\">Profile</a>\n    <a class=\"zs:p-2 zs:rounded zs:hover:bg-gray-100\">Settings</a>\n  </div>\n</ZS-sidebar>\n```\n\n---\n\n#### `ZS-navbar`\n\nA responsive navigation bar component with search, auth, and user menu.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `fixed` | `boolean` | `true` | Fixed navbar |\n| `mobileMode` | `MobileModeType` | `'lg'` | Mobile breakpoint |\n| `logoUrl` | `string \\| undefined` | `undefined` | Logo image URL |\n| `siteNameConfig` | `SiteNameConfigType \\| undefined` | `undefined` | Site name config |\n| `authButtons` | `AuthButtonsType` | `{ showAuthButtons: false }` | Auth button config |\n| `showUserSection` | `boolean` | `true` | Show user section |\n| `showSearchBar` | `boolean` | `false` | Show search bar |\n| `navItems` | `NavItemsType` | `undefined` | Navigation items |\n| `isLoggedIn` | `boolean` | `false` | Login state |\n| `userProfile` | `UserProfile \\| undefined` | `undefined` | User profile |\n| `userMenuItems` | `UserItemsType` | `undefined` | User menu items |\n| `searchPlaceholder` | `string` | `'Search...'` | Search placeholder |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `loginClickedEv` | `void` | Emitted on login click |\n| `signupClickedEv` | `void` | Emitted on signup click |\n| `searchSubmittedEv` | `string \\| null` | Emitted on search |\n| `anyItemClickedEv` | `NavbarItem` | Emitted on any nav item click |\n\n**Models:**\n\n| Model | Type | Description |\n|-------|------|-------------|\n| `searchValue` | `string \\| null` | Search value (two-way) |\n| `isMobileMenuOpen` | `boolean` | Mobile menu state (two-way) |\n| `isUserMenuOpen` | `boolean` | User menu state (two-way) |\n| `isMoreOpen` | `boolean` | More menu state (two-way) |\n\n**Example:**\n\n```typescript\n// Component setup\nnavItems: NavItemsType = {\n  routerLinkActive: 'zs:bg-blue-500 zs:text-white zs:rounded-md',\n  items: [\n    { id: 'home', label: 'Home', routerLink: '/' },\n    { id: 'products', label: 'Products', children: [\n      { id: 'p1', label: 'Electronics', routerLink: '/electronics' }\n    ], childrenConfig: { childrenOpenWindow: true } }\n  ]\n};\n\nuserProfile: UserProfile = {\n  name: 'John Doe',\n  username: 'johndoe',\n  email: 'john@example.com'\n};\n\nauthButtons: AuthButtonsType = {\n  showAuthButtons: true,\n  login: { btnStyle: 'secondary', variant: 'outline' },\n  signup: { btnStyle: 'primary', variant: 'solid' }\n};\n```\n\n```html\n<ZS-navbar\n  [fixed]=\"true\"\n  mobileMode=\"lg\"\n  [siteNameConfig]=\"{ siteName: 'My App' }\"\n  [navItems]=\"navItems\"\n  [authButtons]=\"authButtons\"\n  [isLoggedIn]=\"isLoggedIn()\"\n  [userProfile]=\"userProfile\"\n  [showSearchBar]=\"true\"\n  (loginClickedEv)=\"onLogin()\"\n  (searchSubmittedEv)=\"onSearch($event)\"\n></ZS-navbar>\n```\n\n---\n\n#### `ZS-footer`\n\nA footer component with navigation links.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `showDefultContent` | `boolean` | `true` | Show default content |\n| `pages` | `PagesType[]` | `[]` | Navigation pages |\n\n**Example:**\n\n```html\n<ZS-footer [showDefultContent]=\"true\" [pages]=\"footerPages\">\n  <div rights>&copy; 2026 My Company. All rights reserved.</div>\n</ZS-footer>\n```\n\n---\n\n### Feedback Components\n\n#### `ZS-alert`\n\nA notification component that works with `AlertService`. This component is typically placed once in your app and renders all alerts from the service.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `positionClass` | `string` | `'zs:top-4 zs:right-4'` | Position classes |\n| `direction` | `'top' \\| 'bottom'` | `'top'` | Stack direction |\n| `maxh` | `string` | `'zs:max-h-[calc(100vh-1.2rem)]'` | Max height |\n| `defaultShowCloseButton` | `boolean` | `true` | Show close button by default |\n| `defaultAutoClose` | `boolean` | `true` | Auto-close by default |\n| `defaultDuration` | `number` | `5000` | Default duration (ms) |\n\n**Example:**\n\n```html\n<!-- Place once in your app layout -->\n<ZS-alert \n  positionClass=\"zs:top-4 zs:right-4\"\n  direction=\"top\"\n  [defaultAutoClose]=\"true\"\n  [defaultDuration]=\"3000\"\n></ZS-alert>\n```\n\n---\n\n#### `ZS-spinner`\n\nA loading spinner component with multiple styles and sizes.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `loading` | `boolean` | `false` | Show spinner |\n| `isFloating` | `boolean` | `false` | Floating overlay mode |\n| `color` | `BaseColors` | `'blue'` | Spinner color |\n| `withBox` | `boolean` | `false` | Show background box |\n| `boxColorClass` | `string` | `'zs:bg-gray-300/90 zs:dark:bg-gray-400/80'` | Box CSS class |\n| `type` | `LoaderType` | `'spinner'` | Spinner type |\n| `size` | `BaseSize` | `'md'` | Spinner size |\n\n**Loader Types:**\n\n```typescript\ntype LoaderType = 'spinner' | 'pro' | 'double' | 'gear' | 'fan' | 'pulse' | 'dots' | 'bars';\n```\n\n**Example:**\n\n```html\n<!-- Basic spinner -->\n<ZS-spinner [loading]=\"isLoading()\" type=\"spinner\" size=\"md\" color=\"blue\"></ZS-spinner>\n\n<!-- Fullscreen overlay -->\n<ZS-spinner \n  [loading]=\"isLoading()\" \n  [isFloating]=\"true\" \n  type=\"double\" \n  size=\"lg\" \n  color=\"violet\" \n  [withBox]=\"true\"\n></ZS-spinner>\n\n<!-- Different types -->\n<ZS-spinner [loading]=\"true\" type=\"pro\"></ZS-spinner>\n<ZS-spinner [loading]=\"true\" type=\"dots\"></ZS-spinner>\n<ZS-spinner [loading]=\"true\" type=\"bars\"></ZS-spinner>\n```\n\n---\n\n#### `ZS-connection`\n\nA connection status indicator component.\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `isOnlineEv` | `boolean` | Emitted on connection status change |\n\n**Example:**\n\n```html\n<ZS-connection (isOnlineEv)=\"onConnectionChange($event)\"></ZS-connection>\n```\n\n---\n\n### Navigation Components\n\n#### `ZS-nav-item`\n\nA navigation item component with dropdown support.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `item` | `NavbarItem` | **Required** | Navigation item |\n| `collectionName` | `string` | **Required** | Collection identifier |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `anyItemClickedEv` | `NavbarItem` | Emitted on click |\n\n**Example:**\n\n```html\n<!-- Simple item -->\n<ZS-nav-item\n  [item]=\"{ id: 'home', label: 'Home', routerLink: '/' }\"\n  collectionName=\"demo\"\n></ZS-nav-item>\n\n<!-- With dropdown -->\n<ZS-nav-item\n  [item]=\"{\n    id: 'settings',\n    label: 'Settings',\n    children: [\n      { id: 'account', label: 'Account', routerLink: '/account' },\n      { id: 'privacy', label: 'Privacy', routerLink: '/privacy' }\n    ],\n    childrenConfig: { childrenOpenWindow: true }\n  }\"\n  collectionName=\"demo\"\n></ZS-nav-item>\n```\n\n---\n\n#### `ZS-pagination`\n\nA pagination component.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `totalPages` | `number` | **Required** | Total number of pages |\n| `currentPage` | `number` | **Required** | Current page |\n| `showTotalItems` | `boolean` | `false` | Show total items |\n| `totalItemsMessage` | `string` | `'Total items:'` | Total items message |\n| `totalItems` | `number` | `undefined` | Total items count |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `pageChangeEv` | `number` | Emitted on page change |\n\n**Example:**\n\n```html\n<ZS-pagination\n  [totalPages]=\"totalPages()\"\n  [currentPage]=\"currentPage()\"\n  [showTotalItems]=\"true\"\n  [totalItems]=\"totalItems()\"\n  (pageChangeEv)=\"onPageChange($event)\"\n></ZS-pagination>\n```\n\n---\n\n#### `ZS-scroll-to-top`\n\nA scroll-to-top button with progress ring.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `position` | `'left' \\| 'right'` | `'right'` | Button position |\n| `circleColorClass` | `string` | `'zs:text-gray-400/60 zs:dark:text-gray-600/70 zs:group-hover:brightness-110'` | Circle color class |\n| `arrowProgressColor` | `BaseColors` | `'blue'` | Arrow and progress color |\n\n**Example:**\n\n```html\n<ZS-scroll-to-top\n  position=\"right\"\n  arrowProgressColor=\"blue\"\n></ZS-scroll-to-top>\n```\n\n---\n\n### Utility Components\n\n#### `ZS-theme-toggle`\n\nA theme toggle component for switching between light and dark modes.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `bodyClass` | `string` | `'zs:bg-white zs:dark:bg-gray-900 zs:text-gray-900 zs:dark:text-gray-100'` | Body CSS classes |\n| `showDefaultUI` | `boolean` | `true` | Show default UI |\n| `setManualTheme` | `themeTypes \\| null` | `null` | Manual theme override |\n| `fromTop` | `number` | `1/4` | Position from top (fraction) |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `themeChangeEv` | `themeTypes` | Emitted on theme change |\n\n**Example:**\n\n```html\n<ZS-theme-toggle\n  [bodyClass]=\"'zs:bg-white zs:dark:bg-gray-900 zs:text-gray-900 zs:dark:text-gray-100'\"\n  [showDefaultUI]=\"true\"\n  (themeChangeEv)=\"onThemeChange($event)\"\n></ZS-theme-toggle>\n```\n\n---\n\n#### `ZS-page404`\n\nA 404 error page component.\n\n| Input | Type | Default | Description |\n|-------|------|---------|-------------|\n| `title` | `string` | `'Page Not Found'` | Page title |\n| `message` | `string` | `'Hmm… this page doesn’t seem to exist.'` | Error message |\n| `iconTpl` | `TemplateRef<any>` | `undefined` | Icon template |\n| `pageStyle` | `FormStyle \\| 'normal'` | `'normal'` | Style variant |\n| `showButton` | `boolean` | `true` | Show home button |\n| `buttonText` | `string` | `'Go Home'` | Button text |\n| `routerLink` | `string` | `'/'` | Home route |\n\n**Outputs:**\n\n| Output | Type | Description |\n|--------|------|-------------|\n| `onAction` | `void` | Emitted on button click |\n\n**Example:**\n\n```html\n<ZS-page404\n  title=\"Oops! Page Not Found\"\n  message=\"The page you're looking for doesn't exist.\"\n  pageStyle=\"primary\"\n  buttonText=\"Back to Home\"\n  routerLink=\"/\"\n></ZS-page404>\n```\n\n---\n\n## Services API\n\n### `AlertService`\n\nA service for managing notifications.\n\n**Methods:**\n\n| Method | Parameters | Return | Description |\n|--------|------------|--------|-------------|\n| `addAlert` | `newAlert: NewAlert` | `void` | Add a single alert |\n| `bulkAlert` | `newAlerts: string[], options: BulkAlert` | `void` | Add multiple alerts |\n| `onAlertClosed` | `id: string \\| number` | `void` | Called when alert closes |\n\n**Signals:**\n\n| Signal | Type | Description |\n|--------|------|-------------|\n| `alerts` | `AlertType[]` | Current alerts array |\n\n**Example:**\n\n```typescript\nimport { inject } from '@angular/core';\nimport { AlertService } from '@ziadshalaby/ngx-zs-component';\n\nexport class MyComponent {\n  private alertService = inject(AlertService);\n\n  showSuccess() {\n    this.alertService.addAlert({\n      type: 'success',\n      message: 'Operation completed!',\n      autoClose: true,\n      duration: 3000\n    });\n  }\n\n  showBulk() {\n    this.alertService.bulkAlert(\n      ['Alert 1', 'Alert 2', 'Alert 3'],\n      { type: 'info', autoClose: true, duration: 2000 }\n    );\n  }\n}\n```\n\n---\n\n### `ExtractorService`\n\nA service for recursively extracting error messages from any structure.\n\n**Methods:**\n\n| Method | Parameters | Return | Description |\n|--------|------------|--------|-------------|\n| `extract` | `input: unknown` | `string[]` | Extract error messages |\n\n**Example:**\n\n```typescript\nimport { inject } from '@angular/core';\nimport { ExtractorService } from '@ziadshalaby/ngx-zs-component';\n\nexport class MyComponent {\n  private extractor = inject(ExtractorService);\n\n  extractErrors() {\n    const errors = this.extractor.extract({\n      errors: ['Error 1', 'Error 2'],\n      nested: { message: 'Nested error' }\n    });\n    // ['Error 1', 'Error 2', 'Nested error']\n  }\n}\n```\n\n---\n\n### `NavItemService`\n\nA service for managing navigation dropdown states.\n\n**Methods:**\n\n| Method | Parameters | Return | Description |\n|--------|------------|--------|-------------|\n| `openIndex` | `collectionName: string` | `string` | Get open index |\n| `addItemInCollection` | `collectionName: string, index: string` | `void` | Add item to collection |\n| `onOpenIndexChange` | `collectionName: string, index: string` | `void` | Change open index |\n\n---\n\n### `VisibilityObserverService`\n\nA service that wraps the Intersection Observer API.\n\n**Methods:**\n\n| Method | Parameters | Return | Description |\n|--------|------------|--------|-------------|\n| `observe` | `el: Element, callback: () => void` | `void` | Observe element |\n| `unobserve` | `el: Element` | `void` | Unobserve element |\n\n---\n\n## Types & Interfaces\n\n### Core Types\n\n```typescript\n// Color and styling types\ntype FormStyle = 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark' | 'violet' | 'teal';\ntype BaseSize = 'sm' | 'md' | 'lg';\ntype BaseColors = 'slate' | 'gray' | 'zinc' | 'neutral' | 'stone' | 'red' | 'orange' | 'amber' | 'yellow' | 'rose' | 'lime' | 'green' | 'emerald' | 'teal' | 'cyan' | 'sky' | 'blue' | 'indigo' | 'violet' | 'purple' | 'fuchsia' | 'pink';\n\n// Alert types\ninterface AlertType {\n  id: number | string;\n  message: string;\n  type: 'success' | 'danger' | 'warning' | 'info';\n  autoClose?: boolean;\n  duration?: number;\n  showCloseButton?: boolean;\n  progress?: number;\n}\n\n// Dropdown item\ninterface DropdownItem<T> {\n  id: T;\n  name: string;\n  [key: string]: any;\n}\n\n// File data\ninterface FileData {\n  name: string;\n  size: number;\n  type: string;\n  url?: string;\n}\ntype FilesType = Map<string, FileData>;\n\n// Navbar item\ninterface NavbarItem {\n  id: string | number;\n  label: string;\n  routerLink?: string;\n  routerLinkActive?: string;\n  action?: () => void;\n  iconTpl?: Signal<TemplateRef<any> | undefined>;\n  iconClasses?: string;\n  children?: NavbarItem[];\n  childrenConfig?: {\n    showChevronDownIcon?: boolean;\n    childrenOpenWindow?: boolean;\n    childrenWindowDir?: 'bottom-left' | 'bottom-right' | 'top-left' | 'top-right';\n    closeMenuOnPointerOutside?: boolean;\n  };\n  closeParentMenuAfterClick?: boolean;\n  colorClass?: string;\n  useDefaultColorClass?: 'text' | 'bg';\n}\n\n// Theme types\ntype themeTypes = 'light' | 'dark';\n```\n\n### Signals Forms Types\n\n```typescript\n// Form value control interface\ninterface FormValueControl<T> {\n  value: ModelSignal<T>;\n  touched?: Input<boolean>;\n  touch?: Output<void>;\n  dirty?: Input<boolean>;\n  disabled?: Input<boolean>;\n  readonly?: Input<boolean>;\n  hidden?: Input<boolean>;\n  disabledReasons?: Input<readonly WithOptionalFieldTree<DisabledReason>[]>;\n  errors?: Input<readonly WithOptionalFieldTree<ValidationError>[]>;\n  invalid?: Input<boolean>;\n  pending?: Input<boolean>;\n  required?: Input<boolean>;\n  min?: Input<string | number | undefined>;\n  max?: Input<string | number | undefined>;\n  minLength?: Input<number | undefined>;\n  maxLength?: Input<number | undefined>;\n  name?: Input<string>;\n}\n\n// Form checkbox control interface\ninterface FormCheckboxControl {\n  checked: ModelSignal<boolean>;\n  touched?: Input<boolean>;\n  touch?: Output<void>;\n  dirty?: Input<boolean>;\n  disabled?: Input<boolean>;\n  readonly?: Input<boolean>;\n  hidden?: Input<boolean>;\n  disabledReasons?: Input<readonly WithOptionalFieldTree<DisabledReason>[]>;\n  errors?: Input<readonly WithOptionalFieldTree<ValidationError>[]>;\n  invalid?: Input<boolean>;\n  pending?: Input<boolean>;\n  required?: Input<boolean>;\n  name?: Input<string>;\n}\n```\n\n---\n\n## Configuration\n\n### Global CSS Variables\n\nThe library uses CSS custom properties for theming:\n\n```css\n/* Scrollbar colors */\n--scroll-thumb: #888;\n--scroll-track: #f1f1f1;\n\n/* Carousel */\n--carousel-item-width: 25%;\n```\n\n### Tailwind Configuration\n\nThe library uses the `zs:` prefix for all Tailwind classes. Your Tailwind configuration should support this:\n\n```javascript\n// tailwind.config.js\nmodule.exports = {\n  darkMode: 'class',\n  // The library uses the 'zs:' prefix\n  // Ensure your content includes library files\n  content: [\n    // ... your content\n    \"./node_modules/@ziadshalaby/ngx-zs-component/**/*.{html,ts}\"\n  ]\n}\n```\n\n### Z-Index Configuration\n\nYou can override z-index values by importing and modifying the `zIndices` object:\n\n```typescript\nimport { zIndices } from '@ziadshalaby/ngx-zs-component';\n\nzIndices.modal = 'zs:z-2000';\n```\n\n---\n\n## Usage Examples\n\n### Example 1: Login Form with Signals Forms\n\n```typescript\nimport { Component, inject } from '@angular/core';\nimport { form, formField, required, email, minLength } from '@angular/forms/signals';\nimport { \n  Button, Input, Alert, AlertService, \n  Card, ThemeToggle \n} from '@ziadshalaby/ngx-zs-component';\n\n@Component({\n  selector: 'app-login',\n  standalone: true,\n  imports: [Button, Input, Alert, Card, ThemeToggle],\n  template: `\n    <div class=\"zs:max-w-md zs:mx-auto zs:mt-20\">\n      <ZS-card cardStyle=\"primary\" animation=\"bottom\">\n        <div class=\"zs:p-8\">\n          <h2 class=\"zs:text-2xl zs:font-bold zs:mb-6\">Login</h2>\n          \n          <form [form]=\"loginForm\">\n            <ZS-input\n              type=\"email\"\n              label=\"Email\"\n              placeholder=\"you@example.com\"\n              [formField]=\"loginForm.fields.email\"\n            ></ZS-input>\n            \n            <ZS-input\n              type=\"password\"\n              label=\"Password\"\n              placeholder=\"Enter password\"\n              [formField]=\"loginForm.fields.password\"\n            ></ZS-input>\n            \n            <ZS-button \n              btnStyle=\"primary\" \n              [disabled]=\"!loginForm.valid() || isLoading()\"\n              (clickedEv)=\"submit()\"\n              class=\"zs:w-full\"\n            >\n              {{ isLoading() ? 'Logging in...' : 'Login' }}\n            </ZS-button>\n          </form>\n        </div>\n      </ZS-card>\n      \n      <ZS-alert></ZS-alert>\n    </div>\n  `\n})\nexport class LoginComponent {\n  private alertService = inject(AlertService);\n  isLoading = signal(false);\n  \n  loginForm = form({\n    email: formField({ \n      value: '', \n      validators: [required(), email()] \n    }),\n    password: formField({ \n      value: '', \n      validators: [required(), minLength(6)] \n    })\n  });\n\n  submit() {\n    if (!this.loginForm.valid()) return;\n    \n    this.isLoading.set(true);\n    \n    // Simulate API call\n    setTimeout(() => {\n      this.isLoading.set(false);\n      this.alertService.addAlert({\n        type: 'success',\n        message: 'Login successful!',\n        autoClose: true\n      });\n    }, 1500);\n  }\n}\n```\n\n### Example 2: Registration Form with Validation\n\n```typescript\nimport { Component, signal, inject } from '@angular/core';\nimport { form, formField, required, email, minLength, maxLength, pattern } from '@angular/forms/signals';\nimport { \n  Button, Input, Select, Checkbox, Alert, AlertService, \n  Card, DropdownItem\n} from '@ziadshalaby/ngx-zs-component';\n\n@Component({\n  selector: 'app-register',\n  standalone: true,\n  imports: [Button, Input, Select, Checkbox, Alert, Card],\n  template: `\n    <div class=\"zs:max-w-md zs:mx-auto zs:mt-20\">\n      <ZS-card cardStyle=\"success\" animation=\"bottom\">\n        <div class=\"zs:p-8\">\n          <h2 class=\"zs:text-2xl zs:font-bold zs:mb-6\">Register</h2>\n          \n          <form [form]=\"registerForm\">\n            <ZS-input\n              label=\"Username\"\n              placeholder=\"Choose a username\"\n              [formField]=\"registerForm.fields.username\"\n            ></ZS-input>\n            \n            <ZS-input\n              type=\"email\"\n              label=\"Email\"\n              placeholder=\"you@example.com\"\n              [formField]=\"registerForm.fields.email\"\n            ></ZS-input>\n            \n            <ZS-input\n              type=\"password\"\n              label=\"Password\"\n              placeholder=\"Create a password\"\n              [formField]=\"registerForm.fields.password\"\n            ></ZS-input>\n            \n            <ZS-select\n              label=\"Role\"\n              [items]=\"roles\"\n              placeholder=\"Select a role\"\n              [formField]=\"registerForm.fields.role\"\n            ></ZS-select>\n            \n            <ZS-checkbox\n              label=\"I agree to the Terms of Service\"\n              [formField]=\"registerForm.fields.terms\"\n            ></ZS-checkbox>\n            \n            <ZS-button \n              btnStyle=\"success\" \n              [disabled]=\"!registerForm.valid()\"\n              (clickedEv)=\"submit()\"\n              class=\"zs:w-full zs:mt-4\"\n            >\n              Register\n            </ZS-button>\n          </form>\n        </div>\n      </ZS-card>\n      \n      <ZS-alert></ZS-alert>\n    </div>\n  `\n})\nexport class RegisterComponent {\n  private alertService = inject(AlertService);\n  \n  registerForm = form({\n    username: formField({ \n      value: '', \n      validators: [\n        required(), \n        minLength(3), \n        maxLength(20),\n        pattern('^[a-zA-Z0-9_]+$', 'Username can only contain letters, numbers, and underscores')\n      ] \n    }),\n    email: formField({ \n      value: '', \n      validators: [required(), email()] \n    }),\n    password: formField({ \n      value: '', \n      validators: [\n        required(), \n        minLength(8),\n        pattern('^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d).+$', 'Password must contain uppercase, lowercase, and number')\n      ] \n    }),\n    role: formField({ \n      value: [] as DropdownItem<number>[], \n      validators: [required()] \n    }),\n    terms: formField({ \n      value: false, \n      validators: [required()] \n    })\n  });\n  \n  roles: DropdownItem<number>[] = [\n    { id: 1, name: 'Developer' },\n    { id: 2, name: 'Designer' },\n    { id: 3, name: 'Manager' }\n  ];\n\n  submit() {\n    if (!this.registerForm.valid()) return;\n    \n    this.alertService.addAlert({\n      type: 'success',\n      message: 'Registration successful!',\n      autoClose: true\n    });\n  }\n}\n```\n\n---\n\n## Advanced Usage\n\n### Custom Validation with Signals Forms\n\n```typescript\nimport { form, formField, required } from '@angular/forms/signals';\nimport { validate } from '@angular/forms/signals/validation';\n\n// Create custom validators\nconst usernameValidator = validate((value: string) => {\n  const errors: string[] = [];\n  if (!value) return errors;\n  if (value.length < 3) errors.push('Username must be at least 3 characters');\n  if (value.includes(' ')) errors.push('Username cannot contain spaces');\n  if (!/^[a-zA-Z0-9_]+$/.test(value)) {\n    errors.push('Username can only contain letters, numbers, and underscores');\n  }\n  return errors;\n});\n\nconst passwordValidator = validate((value: string) => {\n  const errors: string[] = [];\n  if (!value) return errors;\n  if (value.length < 8) errors.push('Password must be at least 8 characters');\n  if (!/[A-Z]/.test(value)) errors.push('Password must contain at least one uppercase letter');\n  if (!/[a-z]/.test(value)) errors.push('Password must contain at least one lowercase letter');\n  if (!/[0-9]/.test(value)) errors.push('Password must contain at least one number');\n  return errors;\n});\n\nconst myForm = form({\n  username: formField({ \n    value: '', \n    validators: [required(), usernameValidator] \n  }),\n  password: formField({ \n    value: '', \n    validators: [required(), passwordValidator] \n  })\n});\n```\n\n```html\n<ZS-input\n  type=\"password\"\n  label=\"Password\"\n  [formField]=\"myForm.fields.password\"\n></ZS-input>\n```\n\n### Custom Styling with `ZS-card`\n\n```typescript\n// Custom card style\nconst customCardStyle = 'zs:bg-gradient-to-r zs:from-blue-500 zs:to-purple-600';\n\n<ZS-card \n  cardStyle=\"primary\"\n  [bodyClass]=\"customCardStyle\"\n  [variant]=\"{ shadow: true, border: false }\"\n>\n  <div class=\"zs:p-6 zs:text-white\">\n    <h3>Custom Card</h3>\n  </div>\n</ZS-card>\n```\n\n### Extending the Library\n\n#### Custom Color Variant\n\n```typescript\nimport { unifiedPaletteMap, FormStyle } from '@ziadshalaby/ngx-zs-component';\n\n// Add a custom color variant\nconst customVariant: FormStyle = 'custom' as FormStyle;\n\nunifiedPaletteMap.set(customVariant, {\n  input: {\n    border: 'zs:border-pink-200 zs:dark:border-pink-700',\n    borderHover: 'zs:hover:border-pink-500 zs:dark:hover:border-pink-500',\n    inputBg: 'zs:bg-pink-50 zs:dark:bg-slate-900',\n    text: 'zs:text-pink-900 zs:dark:text-pink-100'\n  },\n  // ... include all other palette properties\n});\n```\n\n---\n\n## Error Handling\n\n### Common Errors and Solutions\n\n| Error | Cause | Solution |\n|-------|-------|----------|\n| `Cannot read properties of undefined` | Accessing signal value before initialization | Use optional chaining: `mySignal()?.property` |\n| `NG0304: 'ZS-xxx' is not a known element` | Component not imported | Import the component in your standalone component or module |\n| `Tailwind classes not applying` | Missing Tailwind configuration | Ensure Tailwind is properly configured and the `zs:` prefix is supported |\n| `Dark mode not working` | Missing dark class on html element | Add `dark` class to `<html>` or use `ZS-theme-toggle` |\n| `Font Awesome icons not showing` | Font Awesome not loaded | Add Font Awesome CSS to your project |\n| `Alerts not appearing` | ZS-alert not added to template | Add `<ZS-alert></ZS-alert>` to your root component |\n| `Form validation not triggering` | `touched` not set | The `touch` output is automatically emitted on blur/interaction |\n\n### Error Messages from ExtractorService\n\nThe `ExtractorService` can extract error messages from various data structures:\n\n```typescript\n// Extract from Error objects\nconst errors = extractor.extract(new Error('Something went wrong'));\n// ['Something went wrong']\n\n// Extract from arrays\nconst errors = extractor.extract(['Error 1', 'Error 2']);\n// ['Error 1', 'Error 2']\n\n// Extract from nested objects\nconst errors = extractor.extract({\n  errors: ['Error 1'],\n  nested: { message: 'Nested error' }\n});\n// ['Error 1', 'Nested error']\n```\n\n---\n\n## Best Practices\n\n### 1. Use Signal-Based Reactivity\n\nAlways use signals for state management:\n\n```typescript\n// ✅ Good\nvalue = signal<string | null>(null);\nisLoading = signal(false);\n\n// ❌ Avoid\nvalue = '';\nisLoading = false;\n```\n\n### 2. Import Components Individually\n\nImport only the components you need to reduce bundle size:\n\n```typescript\n// ✅ Good\nimport { Button, Input } from '@ziadshalaby/ngx-zs-component';\n\n// ❌ Avoid\nimport * as ZS from '@ziadshalaby/ngx-zs-component';\n```\n\n### 3. Use Signals Forms for Validation\n\nLeverage Angular's Signals Forms for validation instead of manual validation:\n\n```typescript\n// ✅ Good\nconst form = form({\n  email: formField({ value: '', validators: [required(), email()] })\n});\n\n// ❌ Avoid\nemail = signal('');\nemailErrors = computed(() => {\n  // Manual validation logic\n});\n```\n\n### 4. Leverage the Alert Service\n\nUse the alert service for user feedback instead of custom toast implementations:\n\n```typescript\n// ✅ Good\nprivate alertService = inject(AlertService);\nthis.alertService.addAlert({ type: 'success', message: 'Saved!', autoClose: true });\n\n// ❌ Avoid\nwindow.alert('Saved!');\n```\n\n### 5. Enable Zoneless Change Detection\n\nThe library works best with zoneless change detection:\n\n```typescript\n// app.config.ts\nexport const appConfig: ApplicationConfig = {\n  providers: [\n    provideZonelessChangeDetection(),\n    // ... other providers\n  ]\n};\n```\n\n### 6. Performance Considerations\n\n- **Use `trackBy` with `@for` loops** when rendering lists\n- **Avoid unnecessary signal updates** - batch updates when possible\n- **Use `computed` signals** for derived state instead of manual subscriptions\n- **Lazy load components** when possible\n\n---\n\n## FAQ\n\n### Q: Can I use this library with Angular 19 or earlier?\nA: This library is designed for Angular 20+ and uses features like signals and standalone components. For earlier versions, consider using older versions of the library.\n\n### Q: Does this library work with Ionic or React?\nA: No, this is an Angular-only library built specifically for Angular applications.\n\n### Q: Can I customize the colors beyond the provided variants?\nA: Yes, you can extend the `unifiedPaletteMap` or override CSS classes using Tailwind's `@layer` or custom CSS.\n\n### Q: How do I change the default positions of alerts?\nA: Use the `positionClass` and `maxh` inputs on the `<ZS-alert>` component.\n\n### Q: Is this library accessible?\nA: Yes, all components include proper ARIA attributes, keyboard navigation, and screen reader support.\n\n### Q: Can I use this library without Tailwind CSS?\nA: No, the library is built on Tailwind CSS. However, the global CSS file includes all necessary styles, so you don't need to configure Tailwind separately.\n\n### Q: How do I implement dark mode?\nA: Use the `<ZS-theme-toggle>` component, or manually add the `dark` class to the `<html>` element.\n\n### Q: Can I use this library in an existing project?\nA: Yes, the library works alongside existing code. Just import the components and services you need.\n\n### Q: Does the library support internationalization (i18n)?\nA: The library's text content (like button labels, placeholders) can be overridden via inputs, making it compatible with i18n.\n\n### Q: How do I test components from this library?\nA: Use Angular's standard testing utilities. All components include test files (.spec.ts) for reference.\n\n### Q: What is the difference between `validateFns` and Signals Forms validation?\nA: `validateFns` was removed in v4.6.4. All validation is now handled through Angular's Signals Forms using `formField` with validators.\n\n---\n\n## Troubleshooting\n\n### Problem: Components not rendering\n\n**Solution:**\n1. Verify the component is imported in your standalone component or module\n2. Ensure the global CSS is imported in your `styles.css`\n3. Check for console errors\n\n### Problem: Styling not applied\n\n**Solution:**\n1. Verify Tailwind CSS is properly configured\n2. Import the global CSS file\n3. Check that the `zs:` prefix is being recognized by Tailwind\n\n### Problem: Dark mode not working\n\n**Solution:**\n1. Ensure the `dark` class is added to the `<html>` element\n2. Check that Tailwind's `darkMode` is set to `'class'`\n3. Verify the `ZS-theme-toggle` is properly configured\n\n### Problem: Form validation not showing errors\n\n**Solution:**\n1. Ensure the `touch` output is being emitted (happens automatically on blur/interaction)\n2. Check that `errors` input is properly connected to the form\n3. Verify your custom validator returns an array of strings\n\n### Problem: Alert not showing\n\n**Solution:**\n1. Ensure `<ZS-alert>` is added to your template\n2. Verify the `AlertService` is properly injected\n3. Check that `addAlert` is called with valid parameters\n\n### Problem: Select dropdown not opening\n\n**Solution:**\n1. Check `disabled` and `readonly` inputs\n2. Verify `items` is not empty\n3. Ensure no event propagation issues in parent components\n\n### Problem: Carousel not responsive\n\n**Solution:**\n1. Adjust `m","readmeFilename":"README.md"}