{"_id":"minahil","_rev":"28-b410addbe9155162e0e6410855c2c6a1","name":"minahil","dist-tags":{"latest":"0.1.22"},"versions":{"0.0.1":{"name":"minahil","version":"0.0.1","_id":"minahil@0.0.1","maintainers":[{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"f233ea467951fc0c3c51e2dd420581d0b82e0596","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.0.1.tgz","fileCount":5,"integrity":"sha512-fhl+cGXDUflAVKC3ohwXMVEMw8D7pt3rVlHUPvZF9OfR0xdOCbXwHCsuX8ZiSGz+Y2nChy77MBHzU9USGkUTOA==","signatures":[{"sig":"MEYCIQDDLZ6sOpOPQKinIIDc9Ov0bcuZfK5PpniduMPp+jYh+QIhAJLPMzN2hR+IW24hvvlOWAp6aHXpI0PRhC1vfqjOHXzZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69355},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"545ca878a6f29bdacc35e570eb80f5d2ca3ba3e6","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"10.9.2","description":"This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/cdk":"^20.0.0","@angular/core":"^20.0.0","@angular/common":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.0.1_1768542668916_0.8014704071651146","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"minahil","version":"0.1.0","_id":"minahil@0.1.0","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"10d6dd4b2b707cba31d13fa5c92c23d7f3b284a0","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.0.tgz","fileCount":5,"integrity":"sha512-9N+BldmiCHwxBCrnBwdY+Md6KcWeb/iNLW3k2Sbl2f6aHuEjakJ4DdQrDKFhYfxXMPKKECwWPWHubmfcc93JzQ==","signatures":[{"sig":"MEUCIEqegL9pAM/4Qsdw5+UqZJzh6hYgsf90hgI7yyJcw6DWAiEA6CA9kacxls8gHVoV2XZiF+whhHLNrEl0pgLO3atYdKg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69356},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"545ca878a6f29bdacc35e570eb80f5d2ca3ba3e6","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"10.9.2","description":"This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/cdk":"^20.0.0","@angular/core":"^20.0.0","@angular/common":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.0_1768555986656_0.28234347574083274","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"minahil","version":"0.0.2","_id":"minahil@0.0.2","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"266a13246b60755d165cd8da9fdcc08d696e6f95","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.0.2.tgz","fileCount":5,"integrity":"sha512-KBnOAHRu0ds87xPL2fIM2PJMhtdszRZcHneLLd45L9PvnCuGhIuoaJnBzaiBQS99dicm0ZuxUKfzcLWopQfAZQ==","signatures":[{"sig":"MEQCIQD0GWuAWHOw2ibKWKaEf7HehupUClzJJcG8T35dJeQz0QIfNyykG8dd/ifpyul83h4cVJ+oczSikavPTJCXgLQJ4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97061},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"545ca878a6f29bdacc35e570eb80f5d2ca3ba3e6","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"10.9.2","description":"This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/cdk":"^20.0.0","@angular/core":"^20.0.0","@angular/common":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.0.2_1768556808326_0.2977251454238663","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"minahil","version":"0.0.3","_id":"minahil@0.0.3","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"0c225a7c8969a56649bdc1bd7ab4a497763449a0","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.0.3.tgz","fileCount":5,"integrity":"sha512-RVnoYbNbkGKZo+6GpmeiZOet+DTJSr5/xCDCn7jxeZp/7JztgR0VWID+j5obypiV2FWLNG+8bkKtMuOiY+TPMg==","signatures":[{"sig":"MEYCIQD+Kgw5puDbkdS/ym3PzwDgVHgtZmPYR27IABNWv+kGwAIhAPT7hFCdMifRVSvln2bJWi/NqcAy/gmAY7LKTodvXw9O","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97061},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"545ca878a6f29bdacc35e570eb80f5d2ca3ba3e6","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"10.9.2","description":"This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.0.","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/cdk":"^20.0.0","@angular/core":"^20.0.0","@angular/common":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.0.3_1768557078789_0.5647149722269167","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"minahil","version":"0.1.1","_id":"minahil@0.1.1","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"cfb0707d65f83d2d70ecb70106f629b930c49b82","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.1.tgz","fileCount":13,"integrity":"sha512-gBZOCubYBu1QbXfFDjZ21t28LLvX9z9Gike8/OyixD6X3ObcnZs+Gfu9v7KQimNgzqmaz6NGMoo1PMfekpCLeQ==","signatures":[{"sig":"MEQCIEcpyxmm2ES1PuK7RhXvEJcW4sKXzoQzgAdk8KF260HvAiB8icovV1DcXHKrYL2Tt+pykq/dG9wSnSbEAPNfTxz83g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440463},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"77175b9ff86a6f8588fbc792ddd6381cb34c9f0d","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.1_1769329819956_0.3820200047455016","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"minahil","version":"0.1.2","_id":"minahil@0.1.2","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"382f79d028a1184bf1d50a9189534ab5fad65e73","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.2.tgz","fileCount":13,"integrity":"sha512-A+VKyXioN3GvkZ6v872y868KNGgNVRPOCxmpQNoaS/Mp9WZMQwnEspjuQ92O8K3Lo9LJ8hhR8BaaAoPZM1NrLg==","signatures":[{"sig":"MEYCIQCZ/vikASEReOLaStsVocg+u1c6x/F48YuA9YmnFAALxQIhANfZNIgFhi1PaDKHD7UPCT/jL+YsIZfmXuzjNdfA76on","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440183},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"e49cdf318b7746d3deba9952259367d805630457","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.2_1769357948586_0.7594394932579374","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"minahil","version":"0.1.3","_id":"minahil@0.1.3","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"b10cf4883d1aa6c602c3870b6e66ce4a824f2708","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.3.tgz","fileCount":13,"integrity":"sha512-dlTxceaXdP8c9HdAA7M75gjuw2UACx5VkYYu/chbjPi3T/NzdQNowEcFLj8OeWzsmCDW4MFU6Y6n2aeVVesnPw==","signatures":[{"sig":"MEUCIG+k5RdNCFZc7bwlcPzc+iEcVnDeWFmOGTTovp+szHXHAiEAzbgyBMsJk487OLIq2sKkL3HlJdULdlHJ2SqGEprZdOE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":439817},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"500139bd1f24cdb716b8f5635128a7c5bf739043","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.3_1769361114320_0.7460557432320072","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"minahil","version":"0.1.4","_id":"minahil@0.1.4","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"fc758db77837bbe8fd26a10b5025ec88e5b9ae59","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.4.tgz","fileCount":13,"integrity":"sha512-Q0mcYKCP9Z8S+gtGEm4dACw87s1nWWx8w+49Deh6J18RotsFIZ7Onznq3DUYozDdUwz8ghoKdTiL7J632fCf/A==","signatures":[{"sig":"MEUCIQD8mTsQngBBEdSWFGQELSVFADj6G4fr1Y5QRtKrve1woAIgZDWaaJaGCUR2vHTL5iknesi9oA4YMot8jd/aTLorVus=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":441319},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"500139bd1f24cdb716b8f5635128a7c5bf739043","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.4_1769364674303_0.2744305913411724","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"minahil","version":"0.1.5","_id":"minahil@0.1.5","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"c931147ab85b25b391cd991f6cb4e0e5773d97a1","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.5.tgz","fileCount":14,"integrity":"sha512-27HZ/auo/KVbjskxalGTvpDoQYV/0ebmdgmt4wJaJC0r00JvyKGTYsC/680Qk7a9sbCYNylBn7ESwVSzyYhQgQ==","signatures":[{"sig":"MEYCIQCojkO9EAGs0lLRX6lN1irgPki4reyURkI+FH2ONtaz9QIhAM7O/lOLtLHgGf/CF0rJn5BV9QXS2bmckXrp0/Ic7knF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440763},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"500139bd1f24cdb716b8f5635128a7c5bf739043","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.5_1769366215158_0.12959017193668765","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"minahil","version":"0.1.6","_id":"minahil@0.1.6","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"8f0fe091b8943f98c73738014f00866c5da50cfc","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.6.tgz","fileCount":17,"integrity":"sha512-Sz14nit0LYjwHrOJ1/LkEHQr09VIkY1QHEB/uL5tEyy44BYFJSb6R91UEckm2QbsMejR5pSUOXp18s6W0ZqejA==","signatures":[{"sig":"MEYCIQCSz2vEwyz1PnrjkWSo30lY0gUa/Bcj4h7cXakorsYtqAIhAPXQAxSTu1CqRwYe0yHx4k/niRstioTKW0XKJcY76FFV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443158},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"500139bd1f24cdb716b8f5635128a7c5bf739043","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.6_1769366970441_0.12378568123680611","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"minahil","version":"0.1.7","_id":"minahil@0.1.7","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"351d2f73791ef19d39f6e98e5ef05389d8b95230","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.7.tgz","fileCount":17,"integrity":"sha512-MSCfX6IgtviWcqrmtVqbE6+sEPm+Jj6JMLPRHYudeUlOYQnLEQPBCI7pnl/o4mqLKF4+DWTrRSkHKQ8u91wL9A==","signatures":[{"sig":"MEYCIQDU0hUMdGsVvitZX4MNowzLH2CsrqCFclUkQBu3roDNZwIhALf14IkcTYkk2RYWD0YovBiSOpksZSzzCB1I1W/l2T+J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443182},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"1fa3b059ba4c133a319bcebbf1979203d8967f2e","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.7_1769369642481_0.5687393074318987","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"minahil","version":"0.1.8","_id":"minahil@0.1.8","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"3aa6dc8b27a09b7c2dd22d6eb7101e4b3ecf7e30","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.8.tgz","fileCount":18,"integrity":"sha512-oDpsjHDhwa0wjuE/73hICADWlgONmJ6POPiKI1Ado0UZwkqqa7ds4/VUsygP3sRFljz/14YjR/IbS6GBQcXa7g==","signatures":[{"sig":"MEQCIDUENz/tnwBkMNXEiE+2WvTIsC6JTkufHCDnveugfsqSAiBX1RokYzK/VwEnQSdwqmyis+0v63UbTwBL3pCQpAbk/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":458257},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"5ae12f882a4ee9db029f3e6aab5c70bbfa3fb81b","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.8_1770813616631_0.34041445534235093","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"minahil","version":"0.1.9","_id":"minahil@0.1.9","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"9c830ca58f3490882bc2926f7bd24e45a9d836cb","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.9.tgz","fileCount":18,"integrity":"sha512-S6Wsdbg+APYeJgg4kPqJi95Lf5Q/XKH0Kk6WEhDnWjG6vL9HgCkwu1xwct6C6X5UVVKeEEUQqOeBVtEaeV6tTA==","signatures":[{"sig":"MEQCICPAmImFK+HLKoYQhSoVBnIWeeitHvgQsMR/ZlIT0SVhAiAN3OpoPCrklwHk+L/J1NhBI+NZFxVMGK3sHhttjP9dVQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":632750},"module":"fesm2022/minahil.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"5ae12f882a4ee9db029f3e6aab5c70bbfa3fb81b","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/core":">=17.0.0 <21.0.0","@angular/common":">=17.0.0 <21.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.9_1770814111362_0.08073144779433172","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"minahil","version":"0.1.10","_id":"minahil@0.1.10","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"e34652ae6b9ae63cfae2fdbf04781266b9e3e34b","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.10.tgz","fileCount":20,"integrity":"sha512-5dsoP84y4VNHLfBPfjnGSReWSgjNARa9juN9S7mkpwEw4/YAo8jUVZF216fIVnHjYAlWmFpK7FVW6q0uwrP0xQ==","signatures":[{"sig":"MEUCIQCa8dp7E7EF2huUL1gG4wk8wTrc1fv1WAGmtPE7U0AaPAIgBvXqg2TgESgRXWBriS+WtL66rEwE5yDhswtwdemQmgE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":448045},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"5ae12f882a4ee9db029f3e6aab5c70bbfa3fb81b","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.10_1770868813414_0.8808654689606354","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"minahil","version":"0.1.11","_id":"minahil@0.1.11","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"04767292196a7b5482d40cd72f47b2a851b62864","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.11.tgz","fileCount":19,"integrity":"sha512-Pge49iUXC7KihxwjqTFskWUahwTKWs+1DQthZerdeYDoZ1MCWUjJ3UVqKzQlrkktZaIGkCuEbYcrOJKEit7zPg==","signatures":[{"sig":"MEUCIFYKEsXGLX1Vbddz6IaE6agIrWqVPT/LJZ1xdJ9GGV+FAiEA64TsdT2ygdop+h89PUPi/nN+Ib8CKeH+d0RRiMjQGaQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":445238},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"5ae12f882a4ee9db029f3e6aab5c70bbfa3fb81b","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"moment":{"optional":true},"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.11_1770869583334_0.6182200210317299","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"minahil","version":"0.1.12","_id":"minahil@0.1.12","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"6cf278be952a063c950b4986d10639507eb89c20","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.12.tgz","fileCount":20,"integrity":"sha512-31OjGtK0OzmCejHlE8J8kG+iLEfRkVKhhemXwxw2ZYh4xw2JNL6iQnS91r2pViSYX7Ed+fxb3mHmem4aTP7lrQ==","signatures":[{"sig":"MEQCIA3jTO4RDticjJM8Y1bVfNdzYMkEx3nOjuzY+HARTizEAiAZ8pUN9UxsPHxJt27HFcex6a2ffBSUQR5g8i6aKI9S6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":449147},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"5ae12f882a4ee9db029f3e6aab5c70bbfa3fb81b","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"moment":{"optional":true},"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.12_1770869828313_0.11058680645008367","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"minahil","version":"0.1.13","_id":"minahil@0.1.13","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"124d9bed3f4f58f9a6e36133d5f83bd8e1586dc6","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.13.tgz","fileCount":20,"integrity":"sha512-UtMp17IqBKs97Xi7cWhWm4Y8GdrziZ/IYNJ6Mf77IoIfBdw7PerAH9ETH8d6fqe4O5kp1Lj0Kx4lQOGGT/LnNg==","signatures":[{"sig":"MEYCIQCAWHKhGE1Fkac5hflXp9QhBq1BqnmuyG0ZQYJEvb27hgIhAIMVJ1bwRuWNk1m5OrdErDeMaXcJugZSOM5AY8upzF5+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":634827},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"be55bb574d2c88e664ce9025d6b17543314742c1","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"moment":{"optional":true},"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.13_1770877620044_0.8292745957651986","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"minahil","version":"0.1.14","_id":"minahil@0.1.14","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"4a6572b7c628371d0a22b97dae857b7d39aec742","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.14.tgz","fileCount":20,"integrity":"sha512-N3wlq+glywkSkb9BPhjGAu3yxVME/IApevDOLUCGusZ47H+YQfVoKpbCi8R5Pmx3AgZVmW/4NJXGG83dCEO7YQ==","signatures":[{"sig":"MEUCIErkQv8pAPDrtnOtZcIngRcVQ6T6v7dma3iO0M1W9qEKAiEApUcnna6Q3IGGSZRMyz0CVspIneyRnHmzHzFaQMcd/dQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":634781},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"be55bb574d2c88e664ce9025d6b17543314742c1","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.14_1770880974327_0.32925477159372396","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"minahil","version":"0.1.15","_id":"minahil@0.1.15","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"a691965b85a025f52a5e9a142cba5575a4d15176","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.15.tgz","fileCount":21,"integrity":"sha512-AA/RupYBoP3fXCKJqvNfd67WHkwBfQeADCYrLyvNk22Zn1RiKRwLzl1/JEISAQpUM1phSBch0fVfsAJRfhZNHQ==","signatures":[{"sig":"MEYCIQD/s4L0ZV+G/gfVExukZlDRdKUFiN5wARtog62efwSSywIhAJuZSVawFqkrDHfnc54AiS3ogt7YtjBPqpLAoegTjgnJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":638149},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"be55bb574d2c88e664ce9025d6b17543314742c1","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"moment":{"optional":true},"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.15_1770881410765_0.1752723606589799","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"minahil","version":"0.1.16","_id":"minahil@0.1.16","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"6d4eef5b3de65ca54337a71a5f73f9b2d003df07","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.16.tgz","fileCount":20,"integrity":"sha512-u6rsphikES4911eh4QzqHQnV+wCmIXu5TUShXN/k05d2kRY8eHA6D1hkJ1N2qM02TfFhdwq5I/AK4+571hhVQQ==","signatures":[{"sig":"MEQCIAReUpqcqraQNfY6aJ8n91Flfj7wgK754hP36kFTP92VAiBz3fMCdTKQFm5tA7HX8NesPx1WNFuXzmRf1sFw30hNDA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":634781},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"be55bb574d2c88e664ce9025d6b17543314742c1","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.16_1770883028732_0.6754923788060494","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"minahil","version":"0.1.17","_id":"minahil@0.1.17","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"738a770fa85c4614e8c9f5929c5b35c03adbc66a","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.17.tgz","fileCount":21,"integrity":"sha512-lGaQGATB9T+KJs+oMoXo/sXJ5G5LYJ21EEk5khDDexFznjwgv05+I0H7vnQYHTfrKTbI2hC4g43FkMNjNgQR0g==","signatures":[{"sig":"MEQCIGn0ooNdrv8mxBnAHp9uJrKjDt1kY5m3JlSlG1AubtS1AiBPX6TzEAB6M1ZnvlwHQ3F/Vvk86l29gq+oP6qWqqwv6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":638103},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"be55bb574d2c88e664ce9025d6b17543314742c1","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.17_1770883184693_0.5948647153021851","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"minahil","version":"0.1.18","_id":"minahil@0.1.18","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"78005aee118c2f1c39dfa3f0e40ebdff406d6644","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.18.tgz","fileCount":21,"integrity":"sha512-WzV/7XOo8oYXT+i/PsxtTr8lKFTFU3wwk0juqW92qBY6Hv/I1toAel/JLWkZSQVckNyIqUsNkCZCO/fKDpOnsw==","signatures":[{"sig":"MEUCIQC2z5HMNO0sEWBup0nxWQSmISVP0AxgMJ7kdnhochEWMgIgPDvztzdr9hq/kOBvYIjJQFX2iJ0OvrlMP7bJlFIdVUw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":638103},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"be55bb574d2c88e664ce9025d6b17543314742c1","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.18_1770883475329_0.3297696594197326","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"minahil","version":"0.1.19","_id":"minahil@0.1.19","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"d4ac68158f6008402f6eae6d06384c05f78cda62","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.19.tgz","fileCount":21,"integrity":"sha512-iLdx/6qjjwSjjO2Sp0qEt7Q5lLiQGtRbIzNAbd+zolc4xLR/cuQTutde+bFTY/h94a2jNlHLQlLHn2kF50iQsg==","signatures":[{"sig":"MEYCIQCNnHOFTmUus7lTmkndHR4Xd8mdF+Qxw4x72tCejvvUFwIhAK//Q3YvvnV2aBVSFgT2qFF5aKZQ+eyeo/lUnhc1g3RO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":638130},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"be55bb574d2c88e664ce9025d6b17543314742c1","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"10.9.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"22.15.1","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","ngx-mask":"^20.0.3","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.19_1770885524117_0.39747713500346626","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"minahil","version":"0.1.20","_id":"minahil@0.1.20","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"04ab91b598afa4743269632075677e11ab9c278d","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.20.tgz","fileCount":22,"integrity":"sha512-0fYUDxgDhja8QwQ1qfNRmWKc7/Ea5uw66xZbBYrLf/MifLC5Yjgd2qmOvGB7OlDlvo3YEMnEF09ixK97IdIKzg==","signatures":[{"sig":"MEMCIExP2VMH4qVjlsW52B0j+/UDHM+OPeHKjG/qp+DIMXoSAh99Z+/3BT4WLHPx4pbbteU2ih8RAvCdTXzYaxHrLuzt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":659374},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a20752004d2a8520d229ed790b836c5ae4060852","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","ngx-mask":"^20.0.3","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.20_1771178979247_0.5318017999933908","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"minahil","version":"0.1.21","_id":"minahil@0.1.21","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"961f59be71edce547e94a7e175c3eb875168376f","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.21.tgz","fileCount":22,"integrity":"sha512-eJedzIvqEyYgwKELsQw1uuLAuYOlLNfU324cslVrF+EJEqbXfNx6edZR3Vyrm2GNqEmdWRp/TQrrMBjPeENWpA==","signatures":[{"sig":"MEUCIQDstIfmofhe/iwT4ei+psr9IUTHK9cjvFjlJgoaqfbibAIgXVYJghemylT4gTL8i71RQlWauNP2LkhAOky1NwNdgE4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":659917},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a20752004d2a8520d229ed790b836c5ae4060852","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","ngx-mask":"^20.0.3","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.21_1771181123038_0.43711106201472494","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"minahil","version":"0.1.22","_id":"minahil@0.1.22","maintainers":[{"name":"shehroz_brickclay","email":"shehroz.ali.brickclay@gmail.com"},{"name":"minahilismail693","email":"minahilismail44@gmail.com"}],"dist":{"shasum":"9e8ea2ecb6594bc46810970752b04d5918cb0274","tarball":"https://registry.npmjs.org/minahil/-/minahil-0.1.22.tgz","fileCount":22,"integrity":"sha512-MCXyvkjdxwYZ2V3FAD/JeZA3OEY09yKgjyd8eg1ONfQitAp48ATFJhWcytpy6YAtqp2g2IOxPK9vWGFvKG8/1Q==","signatures":[{"sig":"MEQCIDKC36nG0KOCH2TYtWGSZMQk3wWthn5eu43kBPVoW/enAiAI5c4nHxy9wXn8wQ21twhktoP4DrttBKvQiemuHC5Keg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":659336},"module":"fesm2022/minahil.mjs","ng-add":{"save":"dependencies"},"exports":{".":{"types":"./index.d.ts","default":"./fesm2022/minahil.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a20752004d2a8520d229ed790b836c5ae4060852","typings":"index.d.ts","_npmUser":{"name":"minahilismail693","email":"minahilismail44@gmail.com"},"schematics":"./schematics/collection.json","_npmVersion":"11.6.2","description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"moment":"^2.29.0","ngx-mask":"^20.0.3","@angular/cdk":">=17.0.0 <22.0.0","@angular/core":">=17.0.0 <22.0.0","@angular/common":">=17.0.0 <22.0.0"},"peerDependenciesMeta":{"@angular/cdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/minahil_0.1.22_1771182259470_0.17044563904090304","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-01-16T05:51:08.805Z","modified":"2026-02-25T10:25:49.961Z","0.0.1":"2026-01-16T05:51:09.068Z","0.1.0":"2026-01-16T09:33:06.802Z","0.0.2":"2026-01-16T09:46:48.464Z","0.0.3":"2026-01-16T09:51:18.924Z","0.1.1":"2026-01-25T08:30:20.108Z","0.1.2":"2026-01-25T16:19:08.736Z","0.1.3":"2026-01-25T17:11:54.472Z","0.1.4":"2026-01-25T18:11:14.449Z","0.1.5":"2026-01-25T18:36:55.333Z","0.1.6":"2026-01-25T18:49:30.653Z","0.1.7":"2026-01-25T19:34:02.649Z","0.1.8":"2026-02-11T12:40:16.820Z","0.1.9":"2026-02-11T12:48:31.519Z","0.1.10":"2026-02-12T04:00:13.558Z","0.1.11":"2026-02-12T04:13:03.518Z","0.1.12":"2026-02-12T04:17:08.474Z","0.1.13":"2026-02-12T06:27:00.246Z","0.1.14":"2026-02-12T07:22:54.487Z","0.1.15":"2026-02-12T07:30:10.925Z","0.1.16":"2026-02-12T07:57:08.945Z","0.1.17":"2026-02-12T07:59:44.852Z","0.1.18":"2026-02-12T08:04:35.495Z","0.1.19":"2026-02-12T08:38:44.283Z","0.1.20":"2026-02-15T18:09:39.460Z","0.1.21":"2026-02-15T18:45:23.201Z","0.1.22":"2026-02-15T19:04:19.627Z"},"description":"A comprehensive Angular UI component library with calendar, checkbox, radio, and toggle components","maintainers":[{"email":"minahilismail44@gmail.com","name":"minahilismail693"}],"readme":"# Minahil - Angular UI Component Library\n\nA comprehensive Angular UI component library featuring a rich collection of customizable, accessible components. Built with modern Angular standards, this library provides everything you need to build beautiful and functional user interfaces.\n\n## 🌟 Features\n\n- 📦 **Comprehensive Component Library** - Rich set of UI components for common use cases\n- ♿ **Accessible by Default** - WCAG compliant components with keyboard navigation and screen reader support\n- 🚀 **Angular 17-21 Support** - Built with modern Angular features and standalone components\n- 📱 **Responsive Design** - Mobile-first components that work on all screen sizes\n- 🎯 **Type-Safe** - Full TypeScript support with comprehensive type definitions\n- ⚡ **Lightweight** - Tree-shakeable and optimized for performance\n- 🎛️ **Highly Customizable** - Extensive configuration options for every component\n- 🔧 **Easy Setup** - One-command installation with automatic dependency management\n\n## 📚 Available Components\n\n### Calendar Components\n\nA powerful calendar suite with advanced date and time selection capabilities. The calendar components support single date selection, date ranges, multiple date selection, and integrated time pickers.\n\n### Toggle Component\n\nA customizable toggle/switch component with support for Angular forms integration via `ngModel` and reactive forms. Features three size variants (small, medium, large), disabled state, and full accessibility support.\n\n### Checkbox Component\n\nA fully accessible checkbox component with Angular forms integration. Features customizable styling via CSS classes, disabled state, keyboard navigation, and seamless integration with both template-driven and reactive forms.\n\n### Radio Component\n\nA fully accessible radio button component with Angular forms integration. Features two visual variants (dot and tick), customizable styling, disabled state, keyboard navigation, and seamless integration with both template-driven and reactive forms.\n\n_More components coming soon..._\n\n## 🚀 Quick Start\n\n### Automatic Installation (Recommended)\n\nThe easiest way to install Minahil is using Angular CLI's `ng add` command. This automatically installs the library along with matching versions of Angular CDK and other dependencies:\n\n```bash\nng add minahil\n```\n\nThis will:\n\n- ✅ Detect your Angular version (17, 18, 19, 20, or 21)\n- ✅ Install Minahil library\n- ✅ Install matching @angular/cdk version\n- ✅ Install moment.js dependency\n- ✅ Configure everything automatically\n\n### Manual Installation\n\nIf you prefer manual installation:\n\n```bash\nnpm install minahil\n```\n\n**Important:** You must also install peer dependencies that match your Angular version:\n\n```bash\n# For Angular 19 projects\nnpm install @angular/cdk@^19.0.0 moment@^2.29.0\n\n# For Angular 17 projects\nnpm install @angular/cdk@^17.0.0 moment@^2.29.0\n\n# For Angular 21 projects\nnpm install @angular/cdk@^21.0.0 moment@^2.29.0\n```\n\n### Supported Angular Versions\n\nMinahil supports Angular versions **17 through 21**. The library will automatically work with any Angular version in this range.\n\n### Asset Configuration (Required)\n\nAfter installing the library, you need to configure your `angular.json` to include the library's assets (icons, etc.). Add the following to your project's `assets` array in the `build` options:\n\n```json\n{\n  \"projects\": {\n    \"your-app-name\": {\n      \"architect\": {\n        \"build\": {\n          \"options\": {\n            \"assets\": [\n              \"src/favicon.ico\",\n              \"src/assets\",\n              {\n                \"glob\": \"**/*\",\n                \"input\": \"node_modules/@brickclay-org/ui/assets\",\n                \"output\": \"/assets/brickclay-lib/\"\n              }\n            ]\n          }\n        }\n      }\n    }\n  }\n}\n```\n\nThis configuration copies the library's assets (SVG icons, etc.) to your application's output folder during build. Without this, the component icons will not display correctly.\n\n## Quick Start\n\n### Standalone Component Usage (Recommended)\n\n```typescript\nimport { Component } from '@angular/core';\nimport { CustomCalendarComponent, CalendarSelection } from '@brickclay/ui';\n\n@Component({\n  standalone: true,\n  selector: 'app-my-component',\n  imports: [CustomCalendarComponent],\n  template: `\n    <brickclay-custom-calendar (selected)=\"onDateSelected($event)\"> </brickclay-custom-calendar>\n  `,\n})\nexport class MyComponent {\n  onDateSelected(selection: CalendarSelection) {\n    console.log('Selected:', selection);\n  }\n}\n```\n\n### Module-based Usage\n\n```typescript\nimport { NgModule } from '@angular/core';\nimport { CalendarModule } from '@brickclay/ui';\n\n@NgModule({\n  imports: [CalendarModule],\n  // ...\n})\nexport class AppModule {}\n```\n\n## 📅 Calendar\n\nThe calendar components provide a complete solution for date and time selection in your Angular applications. All components are standalone and can be imported individually or as part of the `CalendarModule`.\n\n### Components Overview\n\n1. **CustomCalendarComponent** (`brickclay-custom-calendar`) - Main calendar component with support for single date, date range, and multiple date selection\n2. **ScheduledDatePickerComponent** (`brickclay-scheduled-date-picker`) - Advanced scheduling component with time configuration for events\n3. **TimePickerComponent** (`brickclay-time-picker`) - Standalone time selection component with scrollable pickers\n\n### CustomCalendarComponent\n\nA versatile calendar component that supports single date, date range, and multiple date selection modes.\n\n#### Basic Example\n\n```typescript\nimport { CustomCalendarComponent, CalendarSelection } from '@brickclay/ui';\n\n@Component({\n  template: `\n    <brickclay-custom-calendar\n      [singleDatePicker]=\"false\"\n      [dualCalendar]=\"true\"\n      [enableTimepicker]=\"true\"\n      [showRanges]=\"true\"\n      [placeholder]=\"'Select date range'\"\n      (selected)=\"onDateSelected($event)\"\n    >\n    </brickclay-custom-calendar>\n  `,\n})\nexport class MyComponent {\n  onDateSelected(selection: CalendarSelection) {\n    console.log('Start:', selection.startDate);\n    console.log('End:', selection.endDate);\n  }\n}\n```\n\n#### Component Selector\n\n`<brickclay-custom-calendar>`\n\n#### Inputs\n\n| Input                | Type                            | Default               | Description                                       |\n| -------------------- | ------------------------------- | --------------------- | ------------------------------------------------- |\n| `enableTimepicker`   | `boolean`                       | `false`               | Enable time selection                             |\n| `autoApply`          | `boolean`                       | `false`               | Automatically apply selection when date is chosen |\n| `closeOnAutoApply`   | `boolean`                       | `false`               | Close calendar after auto-apply                   |\n| `showCancel`         | `boolean`                       | `true`                | Show cancel button in footer                      |\n| `singleDatePicker`   | `boolean`                       | `false`               | Enable single date selection mode                 |\n| `dualCalendar`       | `boolean`                       | `false`               | Show two calendars side-by-side                   |\n| `showRanges`         | `boolean`                       | `true`                | Show predefined date range buttons                |\n| `multiDateSelection` | `boolean`                       | `false`               | Enable multiple date selection                    |\n| `inline`             | `boolean`                       | `false`               | Always show calendar (no dropdown)                |\n| `minDate`            | `Date`                          | `undefined`           | Minimum selectable date                           |\n| `maxDate`            | `Date`                          | `undefined`           | Maximum selectable date                           |\n| `placeholder`        | `string`                        | `'Select date range'` | Input placeholder text                            |\n| `opens`              | `'left' \\| 'right' \\| 'center'` | `'left'`              | Dropdown alignment                                |\n| `drop`               | `'up' \\| 'down'`                | `'down'`              | Dropdown direction                                |\n| `displayFormat`      | `string`                        | `'MM/DD/YYYY'`        | Date display format (moment format)               |\n| `customRanges`       | `Record<string, CalendarRange>` | `undefined`           | Custom predefined ranges                          |\n| `selectedValue`      | `CalendarSelection \\| null`     | `null`                | Pre-selected date(s)                              |\n| `isDisplayCrossIcon` | `boolean`                       | `true`                | Show/hide clear button                            |\n\n#### Outputs\n\n| Output     | Type                              | Description                         |\n| ---------- | --------------------------------- | ----------------------------------- |\n| `selected` | `EventEmitter<CalendarSelection>` | Emitted when date selection changes |\n| `opened`   | `EventEmitter<void>`              | Emitted when calendar opens         |\n| `closed`   | `EventEmitter<void>`              | Emitted when calendar closes        |\n\n#### Usage Examples\n\n**Single Date Selection:**\n\n```typescript\n<brickclay-custom-calendar\n  [singleDatePicker]=\"true\"\n  [placeholder]=\"'Select a date'\"\n  (selected)=\"onDateSelected($event)\">\n</brickclay-custom-calendar>\n```\n\n**Date Range with Time Picker:**\n\n```typescript\n<brickclay-custom-calendar\n  [dualCalendar]=\"true\"\n  [enableTimepicker]=\"true\"\n  [enableSeconds]=\"true\"\n  (selected)=\"onRangeSelected($event)\">\n</brickclay-custom-calendar>\n```\n\n**Multiple Date Selection:**\n\n```typescript\n<brickclay-custom-calendar\n  [multiDateSelection]=\"true\"\n  [inline]=\"true\"\n  (selected)=\"onMultipleDatesSelected($event)\">\n</brickclay-custom-calendar>\n```\n\n**Inline Calendar:**\n\n```typescript\n<brickclay-custom-calendar\n  [inline]=\"true\"\n  [dualCalendar]=\"false\"\n  [showRanges]=\"false\"\n  (selected)=\"onDateSelected($event)\">\n</brickclay-custom-calendar>\n```\n\n**Custom Date Ranges:**\n\n```typescript\nimport { CalendarRange } from '@brickclay/ui';\n\nconst customRanges: Record<string, CalendarRange> = {\n  'Last Week': {\n    start: new Date(2024, 0, 1),\n    end: new Date(2024, 0, 7)\n  },\n  'This Quarter': {\n    start: new Date(2024, 0, 1),\n    end: new Date(2024, 2, 31)\n  }\n};\n\n<brickclay-custom-calendar\n  [customRanges]=\"customRanges\"\n  [showRanges]=\"true\"\n  (selected)=\"onDateSelected($event)\">\n</brickclay-custom-calendar>\n```\n\n**Date Constraints:**\n\n```typescript\n<brickclay-custom-calendar\n  [minDate]=\"new Date(2024, 0, 1)\"\n  [maxDate]=\"new Date(2024, 11, 31)\"\n  (selected)=\"onDateSelected($event)\">\n</brickclay-custom-calendar>\n```\n\n**Pre-selected Values:**\n\n```typescript\nexport class MyComponent {\n  selectedValue: CalendarSelection = {\n    startDate: new Date(2024, 5, 15),\n    endDate: new Date(2024, 5, 20)\n  };\n\n  onDateChange() {\n    this.selectedValue = {\n      startDate: new Date(),\n      endDate: new Date()\n    };\n  }\n}\n\n<brickclay-custom-calendar\n  [selectedValue]=\"selectedValue\"\n  (selected)=\"onDateSelected($event)\">\n</brickclay-custom-calendar>\n```\n\n### ScheduledDatePickerComponent\n\nA comprehensive date and time scheduling component with three modes: single date, multiple dates, and date range, each with time configuration.\n\n#### Basic Example\n\n```typescript\nimport { ScheduledDatePickerComponent, ScheduledDateSelection } from '@brickclay/ui';\n\n@Component({\n  template: `\n    <brickclay-scheduled-date-picker [timeFormat]=\"12\" (scheduled)=\"onScheduled($event)\">\n    </brickclay-scheduled-date-picker>\n  `,\n})\nexport class MyComponent {\n  onScheduled(selection: ScheduledDateSelection) {\n    console.log('Mode:', selection.mode);\n    if (selection.mode === 'single' && selection.singleDate) {\n      console.log('Start:', selection.singleDate.startDate);\n      console.log('End:', selection.singleDate.endDate);\n      console.log('All Day:', selection.singleDate.allDay);\n    }\n  }\n}\n```\n\n#### Component Selector\n\n`<brickclay-scheduled-date-picker>`\n\n#### Inputs\n\n| Input           | Type       | Default | Description                      |\n| --------------- | ---------- | ------- | -------------------------------- |\n| `timeFormat`    | `12 \\| 24` | `12`    | Time format (12-hour or 24-hour) |\n| `enableSeconds` | `boolean`  | `false` | Enable seconds in time picker    |\n\n#### Outputs\n\n| Output      | Type                                   | Description                          |\n| ----------- | -------------------------------------- | ------------------------------------ |\n| `scheduled` | `EventEmitter<ScheduledDateSelection>` | Emitted when selection changes       |\n| `cleared`   | `EventEmitter<void>`                   | Emitted when clear button is clicked |\n\n#### Features\n\n- **Single Date Mode**: Select one date with optional start and end times\n- **Multiple Dates Mode**: Select multiple dates, each with individual time configuration\n- **Date Range Mode**: Select a date range with start and end times\n- **All Day Toggle**: Mark dates as all-day events\n- **Time Configuration**: Individual time pickers for each date/range\n\n### TimePickerComponent\n\nA standalone time picker component with scrollable hour, minute, and AM/PM selectors.\n\n#### Basic Example\n\n```typescript\nimport { TimePickerComponent } from '@brickclay/ui';\n\n@Component({\n  template: `\n    <brickclay-time-picker\n      [value]=\"selectedTime\"\n      [label]=\"'Start Time'\"\n      [timeFormat]=\"12\"\n      (timeChange)=\"onTimeChange($event)\"\n    >\n    </brickclay-time-picker>\n  `,\n})\nexport class MyComponent {\n  selectedTime = '1:00 AM';\n\n  onTimeChange(time: string) {\n    this.selectedTime = time;\n    console.log('New time:', time);\n  }\n}\n```\n\n#### Component Selector\n\n`<brickclay-time-picker>`\n\n#### Inputs\n\n| Input         | Type                | Default         | Description                                          |\n| ------------- | ------------------- | --------------- | ---------------------------------------------------- |\n| `value`       | `string`            | `'1:00 AM'`     | Current time value (format: \"H:MM AM/PM\" or \"HH:MM\") |\n| `label`       | `string`            | `'Time'`        | Label text                                           |\n| `placeholder` | `string`            | `'Select time'` | Placeholder text                                     |\n| `position`    | `'left' \\| 'right'` | `'left'`        | Dropdown position                                    |\n| `pickerId`    | `string`            | `''`            | Unique identifier for the picker                     |\n| `closePicker` | `number`            | `0`             | Counter to trigger picker close                      |\n| `timeFormat`  | `12 \\| 24`          | `12`            | Time format (12-hour or 24-hour)                     |\n| `showSeconds` | `boolean`           | `false`         | Show seconds selector                                |\n\n#### Outputs\n\n| Output         | Type                   | Description                |\n| -------------- | ---------------------- | -------------------------- |\n| `timeChange`   | `EventEmitter<string>` | Emitted when time changes  |\n| `pickerOpened` | `EventEmitter<string>` | Emitted when picker opens  |\n| `pickerClosed` | `EventEmitter<string>` | Emitted when picker closes |\n\n#### Features\n\n- Scrollable time selectors\n- Keyboard navigation support\n- 12-hour and 24-hour formats\n- Optional seconds support\n- Multiple picker coordination (only one open at a time)\n- Click outside to close\n\n#### Time Format Examples\n\n**12-hour format:**\n\n```typescript\nvalue = '1:00 AM';\nvalue = '12:30 PM';\nvalue = '11:45 PM';\n```\n\n**24-hour format:**\n\n```typescript\nvalue = '01:00';\nvalue = '13:30';\nvalue = '23:45';\n```\n\n## 🔘 Toggle\n\nA versatile toggle/switch component that integrates seamlessly with Angular forms. Supports both template-driven forms (`ngModel`) and reactive forms, with full accessibility features and keyboard navigation.\n\n### ToggleComponent\n\nA standalone toggle component that implements `ControlValueAccessor` for seamless Angular forms integration.\n\n#### Basic Example\n\n```typescript\nimport { ToggleComponent } from '@brickclay/ui';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  template: `\n    <brickclay-toggle\n      [(ngModel)]=\"isEnabled\"\n      [label]=\"'Enable notifications'\"\n      (change)=\"onToggleChange($event)\"\n    >\n    </brickclay-toggle>\n  `,\n  imports: [ToggleComponent, FormsModule],\n})\nexport class MyComponent {\n  isEnabled = false;\n\n  onToggleChange(value: boolean) {\n    console.log('Toggle state:', value);\n  }\n}\n```\n\n#### Component Selector\n\n`<brickclay-toggle>`\n\n#### Inputs\n\n| Input         | Type      | Default       | Description                                                                      |\n| ------------- | --------- | ------------- | -------------------------------------------------------------------------------- |\n| `label`       | `string`  | `''`          | Optional label text displayed next to the toggle                                 |\n| `disabled`    | `boolean` | `false`       | Disables the toggle interaction                                                  |\n| `toggleClass` | `string`  | `'toggle-md'` | CSS class for size styling. Options: `'toggle-sm'`, `'toggle-md'`, `'toggle-lg'` |\n\n#### Outputs\n\n| Output   | Type                    | Description                                                   |\n| -------- | ----------------------- | ------------------------------------------------------------- |\n| `change` | `EventEmitter<boolean>` | Emitted when toggle state changes (returns new boolean value) |\n\n#### Features\n\n- ✅ **Angular Forms Integration** - Full support for `ngModel` and reactive forms\n- ✅ **Three Size Variants** - Small (`toggle-sm`), Medium (`toggle-md`), Large (`toggle-lg`)\n- ✅ **Accessibility** - ARIA attributes, keyboard navigation, and screen reader support\n- ✅ **Disabled State** - Visual and functional disabled state\n- ✅ **Customizable Styling** - Custom CSS classes for size and appearance\n- ✅ **Event Handling** - `change` event for state change notifications\n\n#### Usage Examples\n\n**Basic Toggle with ngModel:**\n\n```typescript\nimport { ToggleComponent } from '@brickclay/ui';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  template: `\n    <brickclay-toggle [(ngModel)]=\"isActive\" [label]=\"'Active Status'\"> </brickclay-toggle>\n  `,\n  imports: [ToggleComponent, FormsModule],\n})\nexport class MyComponent {\n  isActive = true;\n}\n```\n\n**Different Sizes:**\n\n```typescript\n<brickclay-toggle\n  [(ngModel)]=\"value1\"\n  [toggleClass]=\"'toggle-sm'\"\n  [label]=\"'Small Toggle'\">\n</brickclay-toggle>\n\n<brickclay-toggle\n  [(ngModel)]=\"value2\"\n  [toggleClass]=\"'toggle-md'\"\n  [label]=\"'Medium Toggle'\">\n</brickclay-toggle>\n\n<brickclay-toggle\n  [(ngModel)]=\"value3\"\n  [toggleClass]=\"'toggle-lg'\"\n  [label]=\"'Large Toggle'\">\n</brickclay-toggle>\n```\n\n**Disabled State:**\n\n```typescript\n<brickclay-toggle\n  [ngModel]=\"true\"\n  [disabled]=\"true\"\n  [label]=\"'Disabled Toggle'\">\n</brickclay-toggle>\n```\n\n**With Event Handler:**\n\n```typescript\n@Component({\n  template: `\n    <brickclay-toggle\n      [(ngModel)]=\"notificationsEnabled\"\n      [label]=\"'Email Notifications'\"\n      (change)=\"onNotificationToggle($event)\"\n    >\n    </brickclay-toggle>\n  `,\n})\nexport class MyComponent {\n  notificationsEnabled = false;\n\n  onNotificationToggle(enabled: boolean) {\n    if (enabled) {\n      this.enableNotifications();\n    } else {\n      this.disableNotifications();\n    }\n  }\n}\n```\n\n**Reactive Forms Integration:**\n\n```typescript\nimport { FormBuilder, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { ToggleComponent } from '@brickclay/ui';\n\n@Component({\n  template: `\n    <form [formGroup]=\"settingsForm\">\n      <brickclay-toggle formControlName=\"darkMode\" [label]=\"'Dark Mode'\"> </brickclay-toggle>\n\n      <brickclay-toggle formControlName=\"notifications\" [label]=\"'Push Notifications'\">\n      </brickclay-toggle>\n    </form>\n  `,\n  imports: [ToggleComponent, ReactiveFormsModule],\n})\nexport class SettingsComponent {\n  settingsForm: FormGroup;\n\n  constructor(private fb: FormBuilder) {\n    this.settingsForm = this.fb.group({\n      darkMode: [false],\n      notifications: [true],\n    });\n  }\n}\n```\n\n**Without Label:**\n\n```typescript\n<brickclay-toggle\n  [(ngModel)]=\"isEnabled\"\n  [toggleClass]=\"'toggle-md'\">\n</brickclay-toggle>\n```\n\n#### Styling\n\nThe toggle component uses CSS classes for size variants:\n\n- **Small**: `toggle-sm` - Width: 28px (w-7)\n- **Medium**: `toggle-md` - Width: 36px (w-9) - Default\n- **Large**: `toggle-lg` - Width: 44px (w-11)\n\nThe component includes built-in styles for:\n\n- On state (green background: `#22973F`)\n- Off state (gray background: `#BBBDC5`)\n- Disabled state (light gray: `#D6D7DC`)\n- Hover states\n- Focus ring for accessibility\n- Smooth transitions\n\n#### Accessibility\n\nThe toggle component includes:\n\n- `role=\"switch\"` for screen readers\n- `aria-checked` attribute that reflects the current state\n- Keyboard navigation support\n- Focus visible ring for keyboard users\n- Disabled state properly communicated to assistive technologies\n\n## ☑️ Checkbox\n\nA fully accessible checkbox component that integrates seamlessly with Angular forms. Supports both template-driven forms (`ngModel`) and reactive forms, with customizable styling and comprehensive accessibility features.\n\n### CheckboxComponent\n\nA standalone checkbox component that implements `ControlValueAccessor` for seamless Angular forms integration.\n\n#### Basic Example\n\n```typescript\nimport { CheckboxComponent } from '@brickclay/ui';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  template: `\n    <brickclay-checkbox\n      [(ngModel)]=\"isAccepted\"\n      [label]=\"'I agree to the terms and conditions'\"\n      (change)=\"onCheckboxChange($event)\"\n    >\n    </brickclay-checkbox>\n  `,\n  imports: [CheckboxComponent, FormsModule],\n})\nexport class MyComponent {\n  isAccepted = false;\n\n  onCheckboxChange(value: boolean) {\n    console.log('Checkbox state:', value);\n  }\n}\n```\n\n#### Component Selector\n\n`<brickclay-checkbox>`\n\n#### Inputs\n\n| Input           | Type      | Default | Description                                                          |\n| --------------- | --------- | ------- | -------------------------------------------------------------------- |\n| `label`         | `string`  | `''`    | Optional label text displayed next to the checkbox                   |\n| `disabled`      | `boolean` | `false` | Disables the checkbox interaction                                    |\n| `checkboxClass` | `string`  | `''`    | CSS class for size styling. Options: `'xsm'`, `'sm'`, `'md'`, `'lg'` |\n| `labelClass`    | `string`  | `''`    | Custom CSS classes for the label text                                |\n\n#### Outputs\n\n| Output   | Type                    | Description                                                     |\n| -------- | ----------------------- | --------------------------------------------------------------- |\n| `change` | `EventEmitter<boolean>` | Emitted when checkbox state changes (returns new boolean value) |\n\n#### Features\n\n- ✅ **Angular Forms Integration** - Full support for `ngModel` and reactive forms\n- ✅ **Four Size Variants** - Extra Small (`xsm`), Small (`sm`), Medium (`md`), Large (`lg`)\n- ✅ **Accessibility** - ARIA attributes, keyboard navigation (Enter/Space), and screen reader support\n- ✅ **Disabled State** - Visual and functional disabled state\n- ✅ **Keyboard Support** - Full keyboard navigation with Enter and Space keys\n- ✅ **Focus Management** - Focus visible ring for keyboard users\n- ✅ **Event Handling** - `change` event for state change notifications\n\n#### Usage Examples\n\n**Basic Checkbox with ngModel:**\n\n```typescript\nimport { CheckboxComponent } from '@brickclay/ui';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  template: `\n    <brickclay-checkbox [(ngModel)]=\"isChecked\" [label]=\"'Accept terms'\"> </brickclay-checkbox>\n  `,\n  imports: [CheckboxComponent, FormsModule],\n})\nexport class MyComponent {\n  isChecked = false;\n}\n```\n\n**Different Sizes:**\n\n```typescript\n<!-- Extra Small checkbox -->\n<brickclay-checkbox\n  [(ngModel)]=\"value1\"\n  [checkboxClass]=\"'xsm'\"\n  [label]=\"'Extra Small Checkbox'\">\n</brickclay-checkbox>\n\n<!-- Small checkbox -->\n<brickclay-checkbox\n  [(ngModel)]=\"value2\"\n  [checkboxClass]=\"'sm'\"\n  [label]=\"'Small Checkbox'\">\n</brickclay-checkbox>\n\n<!-- Medium checkbox -->\n<brickclay-checkbox\n  [(ngModel)]=\"value3\"\n  [checkboxClass]=\"'md'\"\n  [label]=\"'Medium Checkbox'\">\n</brickclay-checkbox>\n\n<!-- Large checkbox with custom label styling -->\n<brickclay-checkbox\n  [(ngModel)]=\"value4\"\n  [checkboxClass]=\"'lg'\"\n  [labelClass]=\"'text-lg font-bold'\"\n  [label]=\"'Large Checkbox'\">\n</brickclay-checkbox>\n```\n\n**Disabled State:**\n\n```typescript\n<brickclay-checkbox\n  [ngModel]=\"true\"\n  [disabled]=\"true\"\n  [label]=\"'Disabled Checkbox'\">\n</brickclay-checkbox>\n```\n\n**With Event Handler:**\n\n```typescript\n@Component({\n  template: `\n    <brickclay-checkbox\n      [(ngModel)]=\"newsletterSubscribed\"\n      [label]=\"'Subscribe to newsletter'\"\n      (change)=\"onNewsletterToggle($event)\"\n    >\n    </brickclay-checkbox>\n  `,\n})\nexport class MyComponent {\n  newsletterSubscribed = false;\n\n  onNewsletterToggle(subscribed: boolean) {\n    if (subscribed) {\n      this.subscribeToNewsletter();\n    } else {\n      this.unsubscribeFromNewsletter();\n    }\n  }\n}\n```\n\n**Reactive Forms Integration:**\n\n```typescript\nimport { FormBuilder, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { CheckboxComponent } from '@brickclay/ui';\n\n@Component({\n  template: `\n    <form [formGroup]=\"registrationForm\">\n      <brickclay-checkbox\n        formControlName=\"acceptTerms\"\n        [label]=\"'I accept the terms and conditions'\"\n      >\n      </brickclay-checkbox>\n\n      <brickclay-checkbox formControlName=\"receiveUpdates\" [label]=\"'Receive product updates'\">\n      </brickclay-checkbox>\n    </form>\n  `,\n  imports: [CheckboxComponent, ReactiveFormsModule],\n})\nexport class RegistrationComponent {\n  registrationForm: FormGroup;\n\n  constructor(private fb: FormBuilder) {\n    this.registrationForm = this.fb.group({\n      acceptTerms: [false, Validators.requiredTrue],\n      receiveUpdates: [false],\n    });\n  }\n}\n```\n\n**Without Label:**\n\n```typescript\n<brickclay-checkbox\n  [(ngModel)]=\"isSelected\"\n  [checkboxClass]=\"'md'\">\n</brickclay-checkbox>\n```\n\n**Multiple Checkboxes:**\n\n```typescript\n@Component({\n  template: `\n    <div>\n      <brickclay-checkbox\n        *ngFor=\"let option of options\"\n        [(ngModel)]=\"option.selected\"\n        [label]=\"option.label\"\n        (change)=\"onOptionChange(option)\"\n      >\n      </brickclay-checkbox>\n    </div>\n  `,\n})\nexport class MyComponent {\n  options = [\n    { label: 'Option 1', selected: false },\n    { label: 'Option 2', selected: false },\n    { label: 'Option 3', selected: false },\n  ];\n\n  onOptionChange(option: any) {\n    console.log(`${option.label} is now ${option.selected ? 'selected' : 'deselected'}`);\n  }\n}\n```\n\n#### Styling\n\nThe checkbox component supports predefined size classes:\n\n- **Extra Small**: `xsm` - 14px × 14px\n- **Small**: `sm` - 16px × 16px\n- **Medium**: `md` - 18px × 18px\n- **Large**: `lg` - 20px × 20px\n\nUse `labelClass` to style the label text (font size, weight, color, etc.)\n\nThe component includes built-in styles for:\n\n- Checked state (black background with white checkmark/tick icon)\n- Unchecked state (white background with gray border)\n- Hover states (darker border on hover)\n- Disabled states (gray background and border)\n- Focus ring for accessibility (blue ring with offset)\n- Smooth transitions for state changes\n\n#### Accessibility\n\nThe checkbox component includes:\n\n- Keyboard navigation support (Enter and Space keys)\n- Focus visible ring for keyboard users\n- Proper ARIA attributes\n- Disabled state properly communicated to assistive technologies\n- Tab navigation support\n\n## 🔘 Radio Button\n\nA fully accessible radio button component that integrates seamlessly with Angular forms. Supports both template-driven forms (`ngModel`) and reactive forms, with two visual variants (dot and tick) and comprehensive accessibility features.\n\n### RadioComponent\n\nA standalone radio button component that implements `ControlValueAccessor` for seamless Angular forms integration. Radio buttons are used when only one option can be selected from a group.\n\n#### Basic Example\n\n```typescript\nimport { RadioComponent } from '@brickclay/ui';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  template: `\n    <brickclay-radio-button\n      [(ngModel)]=\"selectedOption\"\n      [value]=\"'option1'\"\n      [label]=\"'Option 1'\"\n      (change)=\"onRadioChange($event)\"\n    >\n    </brickclay-radio-button>\n\n    <brickclay-radio-button [(ngModel)]=\"selectedOption\" [value]=\"'option2'\" [label]=\"'Option 2'\">\n    </brickclay-radio-button>\n  `,\n  imports: [RadioComponent, FormsModule],\n})\nexport class MyComponent {\n  selectedOption = 'option1';\n\n  onRadioChange(value: any) {\n    console.log('Selected option:', value);\n  }\n}\n```\n\n#### Component Selector\n\n`<brickclay-radio-button>`\n\n#### Inputs\n\n| Input        | Type              | Default     | Description                                                               |\n| ------------ | ----------------- | ----------- | ------------------------------------------------------------------------- |\n| `label`      | `string`          | `''`        | Optional label text displayed next to the radio button                    |\n| `value`      | `any`             | `undefined` | The value associated with this radio button (required for radio groups)   |\n| `disabled`   | `boolean`         | `false`     | Disables the radio button interaction                                     |\n| `variant`    | `'dot' \\| 'tick'` | `'dot'`     | Visual variant. `'dot'` shows a filled circle, `'tick'` shows a checkmark |\n| `radioClass` | `string`          | `''`        | CSS class for size styling. Options: `'xsm'`, `'sm'`, `'md'`, `'lg'`      |\n| `labelClass` | `string`          | `''`        | Custom CSS classes for the label text                                     |\n\n#### Outputs\n\n| Output   | Type                | Description                                               |\n| -------- | ------------------- | --------------------------------------------------------- |\n| `change` | `EventEmitter<any>` | Emitted when radio button is selected (returns the value) |\n\n#### Features\n\n- ✅ **Angular Forms Integration** - Full support for `ngModel` and reactive forms\n- ✅ **Two Visual Variants** - Dot (filled circle) and Tick (checkmark) styles\n- ✅ **Four Size Variants** - Extra Small (`xsm`), Small (`sm`), Medium (`md`), Large (`lg`)\n- ✅ **Radio Groups** - Automatically groups radio buttons with the same `ngModel` binding\n- ✅ **Accessibility** - ARIA attributes, keyboard navigation (Enter/Space), and screen reader support\n- ✅ **Disabled State** - Visual and functional disabled state\n- ✅ **Keyboard Support** - Full keyboard navigation with Enter and Space keys\n- ✅ **Focus Management** - Focus visible ring for keyboard users\n- ✅ **Event Handling** - `change` event for selection notifications\n\n#### Usage Examples\n\n**Basic Radio Group with ngModel:**\n\n```typescript\nimport { RadioComponent } from '@brickclay/ui';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n  template: `\n    <brickclay-radio-button\n      [(ngModel)]=\"selectedPayment\"\n      [value]=\"'credit'\"\n      [label]=\"'Credit Card'\"\n    >\n    </brickclay-radio-button>\n\n    <brickclay-radio-button [(ngModel)]=\"selectedPayment\" [value]=\"'debit'\" [label]=\"'Debit Card'\">\n    </brickclay-radio-button>\n\n    <brickclay-radio-button [(ngModel)]=\"selectedPayment\" [value]=\"'paypal'\" [label]=\"'PayPal'\">\n    </brickclay-radio-button>\n  `,\n  imports: [RadioComponent, FormsModule],\n})\nexport class MyComponent {\n  selectedPayment = 'credit';\n}\n```\n\n**Dot Variant (Default):**\n\n```typescript\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'option1'\"\n  [variant]=\"'dot'\"\n  [label]=\"'Option with Dot'\">\n</brickclay-radio-button>\n```\n\n**Tick Variant:**\n\n```typescript\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'option2'\"\n  [variant]=\"'tick'\"\n  [label]=\"'Option with Tick'\">\n</brickclay-radio-button>\n```\n\n**Different Sizes:**\n\n```typescript\n<!-- Extra Small radio -->\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'xsm'\"\n  [radioClass]=\"'xsm'\"\n  [label]=\"'Extra Small Radio'\">\n</brickclay-radio-button>\n\n<!-- Small radio -->\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'sm'\"\n  [radioClass]=\"'sm'\"\n  [label]=\"'Small Radio'\">\n</brickclay-radio-button>\n\n<!-- Medium radio -->\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'md'\"\n  [radioClass]=\"'md'\"\n  [label]=\"'Medium Radio'\">\n</brickclay-radio-button>\n\n<!-- Large radio with custom label styling -->\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'lg'\"\n  [radioClass]=\"'lg'\"\n  [labelClass]=\"'text-lg font-bold'\"\n  [label]=\"'Large Radio'\">\n</brickclay-radio-button>\n```\n\n**Disabled State:**\n\n```typescript\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'disabled-option'\"\n  [disabled]=\"true\"\n  [label]=\"'Disabled Option'\">\n</brickclay-radio-button>\n```\n\n**With Event Handler:**\n\n```typescript\n@Component({\n  template: `\n    <brickclay-radio-button\n      *ngFor=\"let option of options\"\n      [(ngModel)]=\"selectedOption\"\n      [value]=\"option.value\"\n      [label]=\"option.label\"\n      (change)=\"onOptionChange($event)\"\n    >\n    </brickclay-radio-button>\n  `,\n})\nexport class MyComponent {\n  options = [\n    { value: 'option1', label: 'Option 1' },\n    { value: 'option2', label: 'Option 2' },\n    { value: 'option3', label: 'Option 3' },\n  ];\n  selectedOption = 'option1';\n\n  onOptionChange(value: any) {\n    console.log('Selected:', value);\n  }\n}\n```\n\n**Reactive Forms Integration:**\n\n```typescript\nimport { FormBuilder, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms';\nimport { RadioComponent } from '@brickclay/ui';\n\n@Component({\n  template: `\n    <form [formGroup]=\"surveyForm\">\n      <brickclay-radio-button formControlName=\"rating\" [value]=\"'excellent'\" [label]=\"'Excellent'\">\n      </brickclay-radio-button>\n\n      <brickclay-radio-button formControlName=\"rating\" [value]=\"'good'\" [label]=\"'Good'\">\n      </brickclay-radio-button>\n\n      <brickclay-radio-button formControlName=\"rating\" [value]=\"'fair'\" [label]=\"'Fair'\">\n      </brickclay-radio-button>\n    </form>\n  `,\n  imports: [RadioComponent, ReactiveFormsModule],\n})\nexport class SurveyComponent {\n  surveyForm: FormGroup;\n\n  constructor(private fb: FormBuilder) {\n    this.surveyForm = this.fb.group({\n      rating: ['good', Validators.required],\n    });\n  }\n}\n```\n\n**Without Label:**\n\n```typescript\n<brickclay-radio-button\n  [(ngModel)]=\"selectedOption\"\n  [value]=\"'option1'\"\n  [radioClass]=\"'md'\">\n</brickclay-radio-button>\n```\n\n**Dynamic Radio Group:**\n\n```typescript\n@Component({\n  template: `\n    <div>\n      <brickclay-radio-button\n        *ngFor=\"let item of items\"\n        [(ngModel)]=\"selectedItem\"\n        [value]=\"item.id\"\n        [label]=\"item.name\"\n        [variant]=\"item.variant || 'dot'\"\n      >\n      </brickclay-radio-button>\n    </div>\n  `,\n})\nexport class MyComponent {\n  items = [\n    { id: 1, name: 'Item 1', variant: 'dot' },\n    { id: 2, name: 'Item 2', variant: 'tick' },\n    { id: 3, name: 'Item 3', variant: 'dot' },\n  ];\n  selectedItem = 1;\n}\n```\n\n#### Styling\n\nThe radio button component supports predefined size classes:\n\n- **Extra Small**: `xsm` - 14px × 14px\n- **Small**: `sm` - 16px × 16px\n- **Medium**: `md` - 18px × 18px\n- **Large**: `lg` - 19px × 19px\n\nUse `labelClass` to style the label text (font size, weight, color, etc.)\n\nThe component includes built-in styles for:\n\n- **Dot Variant**: Filled circle indicator when selected (size varies by radioClass)\n- **Tick Variant**: Checkmark indicator when selected (size varies by radioClass)\n- Unselected state (white background with gray border)\n- Hover states (darker border on hover)\n- Disabled states (gray background and border)\n- Focus ring for accessibility (blue ring with offset)\n- Smooth transitions for state changes\n\n#### Accessibility\n\nThe radio button component includes:\n\n- Keyboard navigation support (Enter and Space keys)\n- Focus visible ring for keyboard users\n- Proper ARIA attributes\n- Disabled state properly communicated to assistive technologies\n- Tab navigation support\n- Radio group semantics for screen readers\n\n#### Radio Groups\n\nRadio buttons are automatically grouped when they share the same `ngModel` binding. Only one radio button in a group can be selected at a time. When a radio button is selected, the previously selected one in the same group is automatically deselected.\n\n## 📐 TypeScript Interfaces\n\n### CalendarRange\n\n```typescript\ninterface CalendarRange {\n  start: Date;\n  end: Date;\n}\n```\n\n### CalendarSelection\n\n```typescript\ninterface CalendarSelection {\n  startDate: Date | null;\n  endDate: Date | null;\n  selectedDates?: Date[]; // For multi-date selection\n}\n```\n\n### TimeConfiguration\n\n```typescript\ninterface TimeConfiguration {\n  date: Date;\n  allDay: boolean;\n  startTime: string; // Format: \"HH:mm\" or \"HH:mm:ss\"\n  endTime: string;\n}\n```\n\n### ScheduledDateSelection\n\n```typescript\ninterface ScheduledDateSelection {\n  mode: 'single' | 'multiple' | 'range';\n  singleDate?: {\n    startDate: Date;\n    endDate: Date;\n    allDay: boolean;\n    startTime: string;\n    endTime: string;\n  };\n  multipleDates?: TimeConfiguration[];\n  dateRange?: {\n    startDate: Date;\n    endDate: Date;\n    allDay: boolean;\n    startTime: string;\n    endTime: string;\n  };\n}\n```\n\n## 🎯 Common Use Cases\n\n### Form Integration\n\n```typescript\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { CustomCalendarComponent } from '@brickclay/ui';\n\nexport class BookingFormComponent {\n  bookingForm: FormGroup;\n\n  constructor(private fb: FormBuilder) {\n    this.bookingForm = this.fb.group({\n      checkIn: [null, Validators.required],\n      checkOut: [null, Validators.required],\n    });\n  }\n\n  onDateSelected(selection: CalendarSelection) {\n    this.bookingForm.patchValue({\n      checkIn: selection.startDate,\n      checkOut: selection.endDate,\n    });\n  }\n}\n```\n\n### Reactive Forms\n\n```typescript\n<brickclay-custom-calendar\n  [selectedValue]=\"form.get('dateRange')?.value\"\n  (selected)=\"form.patchValue({ dateRange: $event })\">\n</brickclay-custom-calendar>\n```\n\n### Date Filtering\n\n```typescript\nexport class DataTableComponent {\n  filterDates: CalendarSelection = { startDate: null, endDate: null };\n\n  onDateFilter(selection: CalendarSelection) {\n    this.filterDates = selection;\n    this.loadFilteredData();\n  }\n\n  loadFilteredData() {\n    const filtered = this.data.filter((item) => {\n      if (!this.filterDates.startDate || !this.filterDates.endDate) {\n        return true;\n      }\n      return item.date >= this.filterDates.startDate! && item.date <= this.filterDates.endDate!;\n    });\n  }\n}\n```\n\n## 📦 Assets Configuration\n\nThe calendar components require SVG icons. Configure your `angular.json` to copy assets:\n\n```json\n{\n  \"glob\": \"**/*\",\n  \"input\": \"node_modules/@brickclay/ui/assets\",\n  \"output\": \"assets\"\n}\n```\n\nOr manually copy assets from:\n\n```\nnode_modules/@brickclay/ui/assets/calender/* → your-app/public/assets/calender/\n```\n\n## 🔧 Service\n\n### CalendarManagerService\n\nA service that manages multiple calendar instances, ensuring only one calendar is open at a time when not in inline mode. Used internally by `CustomCalendarComponent`.\n\n## 🌐 Browser Support\n\n- Chrome (latest)\n- Firefox (latest)\n- Safari (latest)\n- Edge (latest)\n\n## 📦 Dependencies\n\n- Angular 20.3.0+\n- moment (for date formatting)\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our contributing guidelines for more information.\n\n## 📄 License\n\nMIT\n\n## 📞 Support\n\nFor issues, feature requests, or contributions, please visit our [GitHub repository](https://github.com/brickclay/ui).\n\n## 🗺️ Roadmap\n\n- [ ] Button components\n- [ ] Input components\n- [ ] Card components\n- [ ] Modal/Dialog components\n- [ ] Table components\n- [ ] Form components\n- [ ] Navigation components\n- [ ] Loading/Spinner components\n- [ ] Toast/Notification components\n- [ ] More calendar features\n\n## 📝 Changelog\n\n### Version 0.0.1\n\n**Initial Release:**\n\n- ✅ Calendar component suite\n  - Single date selection\n  - Date range selection\n  - Multiple date selection\n  - Time picker integration\n  - Inline and dropdown modes\n  - Dual calendar view\n  - Custom date ranges\n  - Date constraints (min/max)\n- ✅ Scheduled date picker component\n- ✅ Standalone time picker component\n- ✅ Toggle/Switch component\n  - Angular forms integration (ngModel & reactive forms)\n  - Three size variants (small, medium, large)\n  - Disabled state support\n  - Full accessibility features\n  - Customizable styling\n- ✅ Checkbox component\n  - Angular forms integration (ngModel & reactive forms)\n  - Customizable styling via CSS classes\n  - Disabled state support\n  - Full keyboard navigation support\n  - Complete accessibility features\n- ✅ Radio button component\n  - Angular forms integration (ngModel & reactive forms)\n  - Two visual variants (dot and tick)\n  - Radio group support\n  - Customizable styling via CSS classes\n  - Disabled state support\n  - Full keyboard navigation support\n  - Complete accessibility features\n- ✅ TypeScript definitions\n- ✅ Comprehensive documentation\n\n---\n\n**Built with ❤️ by the Brickclay team**\n","readmeFilename":"README.md"}