{"_id":"@mmstack/form-core","_rev":"29-70715fe855e36bdd61a041d649b36678","name":"@mmstack/form-core","dist-tags":{"v19-lts":"19.3.0","v20-lts":"20.5.0","latest":"22.1.0","v21-lts":"21.1.0"},"versions":{"19.0.0":{"name":"@mmstack/form-core","version":"19.0.0","_id":"@mmstack/form-core@19.0.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"dist":{"shasum":"7d355a0a3e0bdfe84e3858fa64a491bf380ba2cc","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.0.tgz","fileCount":11,"integrity":"sha512-Deyh//VBHyXRy0an1LX6kj+eoRS1jH8/mBR5UNOI1OpXaXuYuICakMRn0/JVdowAZjoH+xD8z8asbmMCEN8GVw==","signatures":[{"sig":"MEYCIQCaH1Fbd6QwOM/GshP24AZNgxRlcNUoS6cfq5NJraXPngIhAP9GrBThgzvOAozmixP1UxRu6XpEdNfB1dpvq8lI8RMz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92259},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"70ee6e4fb6e52b93aef63bea637874126f37566d","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@angular/common":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.0_1742826139511_0.49602904929851155","host":"s3://npm-registry-packages-npm-production"}},"19.0.1":{"name":"@mmstack/form-core","version":"19.0.1","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.1","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"bb6b3ba73d7377da207335846db79ce4aabe6fd8","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.1.tgz","fileCount":11,"integrity":"sha512-kgCWiekudAm2tHDL29HUcHsAoYMcHHYKS7NSeqH6KWoeHLZQ/hlK5uFFv3td6lWIKeKTODBScm3JysiLAs/xNw==","signatures":[{"sig":"MEYCIQDX6pKcFq0MuVuAR0RPhNq9xOHs3wDNZ3bJF6mgBeJpCAIhAM7qEa5do7rrXGUqreSrWtiKC1yFh3tXBhTndhptQDKA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96169},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"0d5ea5ed26ee1ecfe2a62ed4a35cdbae6d1cf6e6","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@angular/common":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.1_1742827882941_0.6970811164695163","host":"s3://npm-registry-packages-npm-production"}},"19.0.2":{"name":"@mmstack/form-core","version":"19.0.2","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.2","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"4e8efe977fa69038fde6e94d141bc6fd45908539","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.2.tgz","fileCount":11,"integrity":"sha512-yuVTY8c0yG8qXgRDCaHTaCpVVC9LrZ/hoa7zWR5movLPxmCLJQH71Sbd30I+47biYkZQNmKrJSWoCVU3eQoUQg==","signatures":[{"sig":"MEUCIQD4yP2iwy7xGYCnAw48tkWe2s9jaYYh5qPZK9s4jerUzwIgOjW8RxVrb90MYu2KgxQjZh6O1gxtjUUcabHhtVSkflA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97169},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"b1ca94b8817efb9af176ada9151e237c3ac9a994","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@angular/common":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.2_1742829735292_0.030624303754762883","host":"s3://npm-registry-packages-npm-production"}},"19.0.3":{"name":"@mmstack/form-core","version":"19.0.3","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.3","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"bb8b04db174722a7175327cb0efe7532f51a8d04","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.3.tgz","fileCount":10,"integrity":"sha512-GV2GZmlprmIrg0HmC1W8WU96KVuFwsuTvm63m5o8ACCdRKSzMFI0vibhOZdsVsCJgHwoye5rHH3/Y+zP/E/Edg==","signatures":[{"sig":"MEUCIQCm+FtAuGxLSnC0033pdbX07LVA7fbykJvdTi0u30DsdAIgRT+B/SwlQPxNdtsQFmByt6zI4SXSXUDl7M6YnXO35zI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81523},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"8b6659684e2373c9d3cc7ef911b709cc75870de8","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.1"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.3_1742880807336_0.07093280120650203","host":"s3://npm-registry-packages-npm-production"}},"19.0.4":{"name":"@mmstack/form-core","version":"19.0.4","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.4","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"0e46422f6bfb5848470d3fe94573c757f4af202d","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.4.tgz","fileCount":10,"integrity":"sha512-EwMjmoKsG3eM0A4LDNygqYzV0XCEBoIKivSQgHwlkSllgHycud5NYVYeQdPR19JutFFFEfG7sqmAKO+nJht6WQ==","signatures":[{"sig":"MEUCIQCY5KcwmQ/j7ocF3hCTuD1uO/kLhNajp03+8rKVxvSijwIgXrFty3glrL+OTHv6G+7DryZa1hs3gzOUXHrx0ZbKwJU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81525},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"63d87146c0357e668e463080bfa075f3e327c91d","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.1"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.4_1742881918267_0.21110705533341978","host":"s3://npm-registry-packages-npm-production"}},"19.0.5":{"name":"@mmstack/form-core","version":"19.0.5","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.5","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"fe5620b23254ab7cb71985c5c861b18316e209df","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.5.tgz","fileCount":10,"integrity":"sha512-4mm2IEOUXbgYHI7nmCZPCtLxnpRt5r4tuzE2WetzBUYpMBZSdK0jo7P86hmWngNSr22Pm8lXwHqfSx7/9WD5jg==","signatures":[{"sig":"MEQCIGfq7+GZGY+C4tzKsN1spO/ra/9H3b/SO8Pj/ObttEE8AiA2YXf/y2uCwzH5XNpEH8cMoMjf8ZgGV/WKYCtoUeYbxw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80713},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"712ba80804392626e1fca9fc815dd452862b34cd","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.2"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.5_1742921677727_0.6187468325734848","host":"s3://npm-registry-packages-npm-production"}},"19.0.6":{"name":"@mmstack/form-core","version":"19.0.6","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.6","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"c01de494187840563befe172977bc1e19848c663","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.6.tgz","fileCount":10,"integrity":"sha512-Xq1WKnXP6y6vhap9oEvlQ2tziiYahsyaIlcc8vOIZCDup17eNLHBDya3X85+MIDS4VE0KVnNySYU83oUs6l/4A==","signatures":[{"sig":"MEUCIH4ox0kYh6QZ9Dj7s7myZmkFJ0TwYsnoM60rsYhBtuEsAiEA8uq4y03jm4DdceUvxVgnN84YL/beAuz6BYEsUNYNblg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76771},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"5ee3023d8d310048ecc402bbc4a77779c5ed842d","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.2"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.6_1742980846522_0.8847971976816715","host":"s3://npm-registry-packages-npm-production"}},"19.0.7":{"name":"@mmstack/form-core","version":"19.0.7","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.7","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"8be280b21c956116ad25ee3eb2b4182834b6f556","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.7.tgz","fileCount":10,"integrity":"sha512-rhr+GN9p1FkwUCyIt6bXpI86NA0IJo3Ygp+fravUfxsu4K/Gj5bfdCD/d6RO2Y9pj7SqRbb+/PZQ4+32c/ZOyw==","signatures":[{"sig":"MEUCIA4ZQ2NQpNJ5eFzX05sHwvfyvinmjRIdjbOqGRukwzE4AiEA8waxOJz0WbbSKmAtukFZTuwjPECZ9Hfm4wBHbDsL0R8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76941},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"6be8f899c72ffab12868b6f50a8995896e7ef83e","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@mmstack/object":"~19.0.0","@mmstack/primitives":"~19.0.3"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.7_1743148930349_0.9612442872575262","host":"s3://npm-registry-packages-npm-production"}},"19.0.8":{"name":"@mmstack/form-core","version":"19.0.8","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"_id":"@mmstack/form-core@19.0.8","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"83888cbee799db8eb9ff556fc6cf96195388d779","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.8.tgz","fileCount":10,"integrity":"sha512-mTLkeFiBOHem7/l+V8L/JYH9u4YQaZ4qwN5v8Z4DBXe+GMlcbVJNzfETdDutzPlaOjPnT1OzC9Zhqeka0rQYDA==","signatures":[{"sig":"MEUCIQCHZ9sJZUpEdgGU99atNMV3nMp5soiFkOPPNultLgD/OwIgVVvJjmJ5V2i01pJTJRAtCDQCwMBCtrYO+gODNfq9AH4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77256},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"bed29ff818e8ce4a91b0513aeda770da3b63f2e7","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@mmstack/object":"~19.0.1","@mmstack/primitives":"~19.0.3"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.8_1744099824315_0.8448703314654222","host":"s3://npm-registry-packages-npm-production"}},"19.0.9":{"name":"@mmstack/form-core","version":"19.0.9","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@19.0.9","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"e2d57ec750adfc1bde59e52b82692b81106b0711","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.0.9.tgz","fileCount":10,"integrity":"sha512-Aki+kK3qaK9ujNQ4+5YrxEG4rRIOTGOz9Puhi1H9ipJj99F8He1koRkysf0/NA1Ipcs7FlkMRKcRoePROpU8uQ==","signatures":[{"sig":"MEUCIQDh+aapxRrV3u/hAR21Y1FY/NYUd+6urz47UNOu8VIJZAIgGkA6aZgw+0HpAv1K0SC1qui51AZyJ0QEjH0RN26+2Es=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77279},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9b62e623fa1541d9c69429a3c85fd483708e1f8d","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"~11.1.0","@angular/core":"~19.2.3","@mmstack/object":"~19.0.2","@mmstack/primitives":"~19.0.6"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.0.9_1744627208926_0.2167058635429815","host":"s3://npm-registry-packages-npm-production"}},"19.1.0":{"name":"@mmstack/form-core","version":"19.1.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@19.1.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"f0c8e5522882462eacec4d9d21c0bef98abe5acb","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.1.0.tgz","fileCount":10,"integrity":"sha512-0FpFUgskuIoxv5V2fuBlZKr+LmiuJjGvyYNQS1ZAcbo+MNLNpyhNXqoSNyhXYz6Y2YWI8JBVoq5bv/tO1wIlpA==","signatures":[{"sig":"MEUCIQC+nEQBXLWeYuYgKRMTdJ1Z/dPmoLicPtYw9isSF4vy3gIgZlhf9Y69a/c//qGUnLpa62AC37sGL3aMQzJJot+eoeA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77279},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"1a0d8a7707b0535983c4d5f50da3e76c1f8e2c20","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"10.8.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"uuid":"~11.1.0","tslib":"^2.3.0","@mmstack/object":"^19.1.0","@mmstack/primitives":"^19.1.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~19.2.3"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.1.0_1744637588310_0.7410510193686228","host":"s3://npm-registry-packages-npm-production"}},"19.1.1":{"name":"@mmstack/form-core","version":"19.1.1","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@19.1.1","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"b74c858cb4b168657972cc6d1057d250e0615afe","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.1.1.tgz","fileCount":10,"integrity":"sha512-XSdTgnpAPXeULKmWJEOryPLDhxyxL/6HYkbbELB5yeoCs7HB3ENKwXDaAqAtdNvwRrDyt9zkAhBZ3RZrRAZZBQ==","signatures":[{"sig":"MEQCIDUGnW4rEM1Xz4uJu/eLkdP0B5DbreEP9OxAqPYpnHEhAiBa0s+Tb//pG+a2tB2YjcdtgUjiNk8sHSkK2whydtroVg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82752},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"dc6b976b05af187417e9e0ddbbd86523ccdadb22","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.3.0","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"uuid":"~11.1.0","tslib":"^2.3.0","@mmstack/object":"^19.1.0","@mmstack/primitives":"^19.1.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~19.2.3"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.1.1_1747317663781_0.47441746196772416","host":"s3://npm-registry-packages-npm-production"}},"19.2.0":{"name":"@mmstack/form-core","version":"19.2.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@19.2.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"b820984b6cb9d2e5c29360188b43b06fc4a4c261","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.2.0.tgz","fileCount":10,"integrity":"sha512-Wnp/3UsKgJEwEQ5vw90NIONup31UtAdnanmmFZ2PezEnN9FbDMqaRq668smkZQTBzId13qW3I89xyHbfqCVSSw==","signatures":[{"sig":"MEUCIHKsXz52iHBaawWcDDw4YU0QxPAHbjE3XE44TgDgozi/AiEAzcY3eAEYpBsXOcA3vJj83vGYOg+4DY177MBlsw3nuxA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82752},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"582f1b88d9f5d51783ef017e437cf1ef8fc681eb","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.3.0","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"uuid":"~11.1.0","tslib":"^2.3.0","@mmstack/object":"^19.2.0","@mmstack/primitives":"^19.2.1"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~19.2.3"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.2.0_1748508272257_0.12859270698466307","host":"s3://npm-registry-packages-npm-production"}},"20.0.0":{"name":"@mmstack/form-core","version":"20.0.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.0.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"52d10804f40e801d0b40884a99b48e313e56220d","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.0.0.tgz","fileCount":6,"integrity":"sha512-ng+3tkEtoYtm/MLaeuI3I6pB0vywsljpF5OXwIOjmzO6QfmWO3Nzq3T1bEjv5l5M8HLOQgTaydV9wLZbCVtM0Q==","signatures":[{"sig":"MEYCIQDvYob3sunQSJrbl/iB0RoKmILqmpuKwcCCdWNPYUuqVQIhAIN7Gp5T4BviiONDwV0KEdilLoaJGRu0nK0JBHuc/jz6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132583},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"883442cb9a2e790fe7e531f0f2a4feab8f71232e","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.3.0","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"uuid":"~11.1.0","tslib":"^2.3.0","@mmstack/object":"^20.0.0","@mmstack/primitives":"^20.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~20.0.3"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.0.0_1750057026681_0.27412480206620193","host":"s3://npm-registry-packages-npm-production"}},"20.0.1":{"name":"@mmstack/form-core","version":"20.0.1","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.0.1","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"323d4f7a711e91860d7bc03c8b67a821ac8f5c27","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.0.1.tgz","fileCount":6,"integrity":"sha512-O+THhJGQD25UbqVD8nu3jMH+7eVaPfC9RRZDMiSCPfsYqR5VQnC3meyNQpbWErxq09zV4X84XQPTqHceIX4/Ow==","signatures":[{"sig":"MEYCIQDEXdr9TJEjCNhoEMYHIciHkGJ1GPcYSkK7siP36MzRZAIhAJ/+Iu4F2KXVBnJuHgJENWAURBdYHuzbewTdaK9iyFCn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132583},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"883442cb9a2e790fe7e531f0f2a4feab8f71232e","typings":"index.d.ts","_npmUser":{"name":"mmstack","actor":{"name":"mmstack","type":"user","email":"mulec.mihaj@gmail.com"},"email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.3.0","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"uuid":"~11.1.0","tslib":"^2.3.0","@mmstack/object":"^20.0.0","@mmstack/primitives":"^20.0.1"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~20.0.3"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.0.1_1750137043415_0.7986982861051701","host":"s3://npm-registry-packages-npm-production"}},"20.0.2":{"name":"@mmstack/form-core","version":"20.0.2","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.0.2","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"9095e0c27cb0dd07968805488218d358d43d4e99","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.0.2.tgz","fileCount":6,"integrity":"sha512-qO4m3//4r2klL9Q3N8PzfShslVnL1s9o6IktGxsrLa/ZBFL37hp56c/8thoRbYoUoIITfLGMfl6/121ud35mDg==","signatures":[{"sig":"MEUCIBNmVAIs4JUy1EYByg8oUn5X3QxnHkjUFIkAWvxamDZkAiEAwXP5U+Xe6QokUI+Q/ZzgoHZZz4aPn/nKJUJWyInJXRQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":137744},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"d363b94e47a2972dbaece3a87c049cb21a621d34","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.4.2","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"uuid":"~11.1.0","tslib":"^2.3.0","@mmstack/object":"^20.0.0","@mmstack/primitives":"^20.0.2"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~20.1.0"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.0.2_1752584828905_0.6600048622790562","host":"s3://npm-registry-packages-npm-production"}},"20.0.3":{"name":"@mmstack/form-core","version":"20.0.3","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.0.3","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"a68dd77c3f36875f726d1eb52d08eab3f2e372eb","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.0.3.tgz","fileCount":6,"integrity":"sha512-poQtGBtjm0FHcZjdPhXsaHhmp/O61P8gG/YhvyP99MDiUfIhL0+eMoLzQp1YwdUHiFXbSRjUK/Gl+t9lEozX0g==","signatures":[{"sig":"MEUCIDs0iG04vy55eSWUPphSmPPpDi7tOSJ1X4rfReFBcd8vAiEAhCIKVq77IhCK7s+qcfDrWtGjrknU4O8fmkru17QXkJY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":137744},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"3442a8070a9e46eff3482462a5fcf32b074352c2","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.4.2","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"uuid":"~11.1.0","tslib":"^2.3.0","@mmstack/object":"^20.0.0","@mmstack/primitives":"^20.0.3"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~20.1.0"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.0.3_1752733160630_0.7627327396936086","host":"s3://npm-registry-packages-npm-production"}},"20.3.0":{"name":"@mmstack/form-core","version":"20.3.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.3.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"8242780e1fecc08aa4477ce19c3b74ee0eb41722","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.3.0.tgz","fileCount":6,"integrity":"sha512-lqd+p1Sr/ZqDwxwHWn1v23SUF5sYMuynPL9GWHWhBV+H1vu1+ZV1Vw/YCfHz18cHPL+a8SdUG4PAYt2YtBwKOw==","signatures":[{"sig":"MEYCIQCghKKm1lg8BrAuvF9CuHJKXY8yGST37n9/6rySEPO6+QIhANfDySzWDrChCBuZZR+BBdJ13zJGrmPywG958cM0PSXw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150127},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a32d1715aae06361cff8331fdcb138985318a2a8","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.4.2","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^20.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~20.1.0"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.3.0_1753336742599_0.8149043640391767","host":"s3://npm-registry-packages-npm-production"}},"20.4.0":{"name":"@mmstack/form-core","version":"20.4.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.4.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"0c76eb5890d9a73b78c1e26286d4ef3f2f9d55be","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.4.0.tgz","fileCount":6,"integrity":"sha512-G8BtlnzTdi3Pxlcr2mQW4fXSaAgJOljlU6cuUJJaEA5hsF6Mf3qudVNYLR9EpqgTHqshFBqhJoXCQ/1MVwtVqg==","signatures":[{"sig":"MEUCIQCFlLMRxrhdB1qjro7gZQCSSQYIGlincvLPxoWRgKp8YwIgMzscBRM8R1B0rlulXO+nqnI3Ti2VhrvZsOtrZVlUITw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150127},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"1a838892ec22914d7f661f396ec177142f2f74ac","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.4.2","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^20.4.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":"~20.1.0"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.4.0_1753344084297_0.9020065118891556","host":"s3://npm-registry-packages-npm-production"}},"20.4.1":{"name":"@mmstack/form-core","version":"20.4.1","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.4.1","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"529392891460b3f72c007b35249dbde06378c726","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.4.1.tgz","fileCount":6,"integrity":"sha512-2259pyttiqS/YFhxeC1t3ZvM58g3iYlzXq2LAH9X3wgdgp6P2BgoXenf4OYUAYiXxQUitcDD3x7QDWuX7nsdjw==","signatures":[{"sig":"MEUCICRqULLGMOvWoOSbZKqnf/FY69NrgA+afusT808epOQ0AiEAhgKcrauO/4k07qtBTjIc14DHUSWrQnHzuwgtkl94/bQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150308},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"4a7634de96db0f3af609e21521664061201a1e34","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.5.2","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.19.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^20.4.1"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=20 <21"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.4.1_1758271601793_0.04038094215281407","host":"s3://npm-registry-packages-npm-production"}},"21.0.0":{"name":"@mmstack/form-core","version":"21.0.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@21.0.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"0aa0e02024f4d13e7f98e43cd01b4ac5525e89e0","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-21.0.0.tgz","fileCount":6,"integrity":"sha512-d1W+1/xnr+C+HwIt/uzQNRo60eg/lloD0qJPttMTtygqBLHJcLDtDJXspqMrCg8gFfVnhmiCpZniVR9NTvJWyg==","signatures":[{"sig":"MEUCIEBCdmyczht+qBFDCOlSnHMtFQA30OU4Lqz18kqLeweFAiEA7ujoRQmep5daLWqKs/RT4nPhdLV7/7FX8SYyMn9HqrA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91281},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./types/mmstack-form-core.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"a628f9bb1b1b9d62a6eeabbba47ce4de4209702c","typings":"types/mmstack-form-core.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.5.2","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\r [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICEN","directories":{},"sideEffects":false,"_nodeVersion":"22.19.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^21.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=21 <22"},"_npmOperationalInternal":{"tmp":"tmp/form-core_21.0.0_1763705035458_0.09346410364157087","host":"s3://npm-registry-packages-npm-production"}},"21.0.1":{"name":"@mmstack/form-core","version":"21.0.1","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@21.0.1","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"1c99363b9a8aa314e0943c447e0ee69a634d2fc0","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-21.0.1.tgz","fileCount":6,"integrity":"sha512-pFODEye072W+YZxVRIGUrXEVMLxPWBZ+PEhnpNpv+FqQ91Hg4g0mkQvp1UE11AYZnLs1Tiy4N6xNSxpRi21hCw==","signatures":[{"sig":"MEUCIQCNXG4ux0G84c3SQHFmlpQZFlhFJN6w8eaQtDlmHbyGBwIgIuAFR0DVyMVTEaNCepvfz5xhHlOTBalvtTH3xbVaJUc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89194},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./types/mmstack-form-core.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"ba5ece7bcdc8e0c4e8d7f4cdbb3abf1fc8981760","typings":"types/mmstack-form-core.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.7.0","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"24.12.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^21.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=21 <22"},"_npmOperationalInternal":{"tmp":"tmp/form-core_21.0.1_1768232864700_0.6938748597684634","host":"s3://npm-registry-packages-npm-production"}},"19.3.0":{"name":"@mmstack/form-core","version":"19.3.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@19.3.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"a69f54e2c206a8b4f6b7c9ab9e55fb6123de781e","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-19.3.0.tgz","fileCount":11,"integrity":"sha512-r7cgTmFgkG0jeVPZuqMCHB9j2fiaj9mRM8g8kfeo+7EWWefd/Ud/eipAtl66xH3zXZVQik5u7Yq6Qwo9w7zRxw==","signatures":[{"sig":"MEYCIQCN/i5xD1V8p5otZ2oTaBkR9asKWyJb/mh3GDC3rF1AcgIhANNHP+S4JGC9Ouxm5cnDUl81i6AqAw1VqxHe9xWF+GZs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90125},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"d889aedb1d8e61ec74a35b39af57d38a21bc7ed3","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.7.0","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"24.12.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^19.3.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@angular/core":">=19 <20"},"_npmOperationalInternal":{"tmp":"tmp/form-core_19.3.0_1772607173690_0.19689489731202925","host":"s3://npm-registry-packages-npm-production"}},"20.5.0":{"name":"@mmstack/form-core","version":"20.5.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@20.5.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"ae6117b575d5e45141b4a889efa7b607523c5dbb","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-20.5.0.tgz","fileCount":6,"integrity":"sha512-NKu33W2EGUnIOnTAXIuts3cewrrMAUi4v1ID/Ox1pZ8gxmxtjSChHmWFsParrHbAdVmPGmuts3mKakCUE3+n6w==","signatures":[{"sig":"MEUCIQCgwXh6YSwGD5UdlJYJrNBLJY0b47U967rNJE+TRUy4AAIgA3dyBTqm1FTTLTXx9ZjztzeUHSxo8TsG9vWo6IE1ywQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89456},"module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"cd2f78fddd7ba736150c06b2b5daefe822773cb8","typings":"index.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git"},"_npmVersion":"11.7.0","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"24.12.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^20.5.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@angular/core":">=20 <21"},"_npmOperationalInternal":{"tmp":"tmp/form-core_20.5.0_1772607973729_0.5829209583049719","host":"s3://npm-registry-packages-npm-production"}},"21.0.2":{"name":"@mmstack/form-core","version":"21.0.2","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@21.0.2","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"b44375f7d38b9d383df47dc125ef3b67399c2bb1","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-21.0.2.tgz","fileCount":6,"integrity":"sha512-VX4p5kxXQA2ZeCzj/pJIYYzeYYkL4aVMiJmVO6PQPs/JcbNMEY6xV4ZKe862+qf+2Aaq0TBQrZJzKK7uAskppQ==","signatures":[{"sig":"MEQCIF/jqbfNMNJaVZ+/BBybwcn/LKDYy1umdzukUeB8ifNbAiBLjLV98jGN2CZGyZvAn+sdpTOjiKT0SbtvVB5wKay/Qg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90045},"type":"module","module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./types/mmstack-form-core.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"36df0062961e489dd2cb9d4ca7315abf21631e67","typings":"types/mmstack-form-core.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git","directory":"packages/form/core"},"_npmVersion":"11.14.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^21.0.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@angular/core":">=21 <22"},"_npmOperationalInternal":{"tmp":"tmp/form-core_21.0.2_1780670507101_0.8490130331169707","host":"s3://npm-registry-packages-npm-production"}},"22.0.0":{"name":"@mmstack/form-core","version":"22.0.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@22.0.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"376d5034a2794d3bb7ab2ff8710cace33e47383e","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-22.0.0.tgz","fileCount":6,"integrity":"sha512-ZEXkb3dVuO90eSy5xm2Ehw0Ud/lysCdQ9DtobuTociJyiJ2l5msWzKR2xl1vfogXSZqFmBYu4zdxvoKhScEnDQ==","signatures":[{"sig":"MEYCIQCTxa54hUiu6Xc/yL67z44S8rnbQuScR/31nptzAuFlxwIhAMTM3C2BgbOt3va00hxgUaz53IODw929ADCoPmZ6eVsZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90339},"type":"module","module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./types/mmstack-form-core.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"36df0062961e489dd2cb9d4ca7315abf21631e67","typings":"types/mmstack-form-core.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git","directory":"packages/form/core"},"_npmVersion":"11.14.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^22.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=22 <23"},"_npmOperationalInternal":{"tmp":"tmp/form-core_22.0.0_1780674784508_0.22914826852371495","host":"s3://npm-registry-packages-npm-production"}},"21.1.0":{"name":"@mmstack/form-core","version":"21.1.0","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"license":"MIT","_id":"@mmstack/form-core@21.1.0","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"4607d410d9e538da866417a5e3d4989bf3924bb3","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-21.1.0.tgz","fileCount":6,"integrity":"sha512-cM6YuWEr4NvbNPlrgaZ3A4HQ0SSVD/DRHueUkuBFoDYqBNIA/gF1AjPMlk446r4hW6iNdakT8SGo/HVVdZ4vNw==","signatures":[{"sig":"MEYCIQC+WLqiRjLl4CtFJ03emoVNXCq9ij9UwEpPd/Z4ARXegwIhAJ+z75S8z0Gkan7JNdqXvRsFPiCddv2XY5DZOSqQrj2f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDVs5yN+xdB/9mE4PtXlYqPdEMCy4zA/sGuPlKS6tez9wIgfYAomIQsHBrD0f0oD+OAlagw1JhgQbT3XbDOswNAmVE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90046},"type":"module","module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./types/mmstack-form-core.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"b9ce76818f286e5b38fcaee521e96276b3214c0d","typings":"types/mmstack-form-core.d.ts","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git","directory":"packages/form/core"},"_npmVersion":"11.14.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"sideEffects":false,"_nodeVersion":"24.21.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^21.13.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@angular/core":">=21 <22"},"_npmOperationalInternal":{"tmp":"tmp/form-core_21.1.0_1789379626353_0.8408427856369276","host":"s3://npm-registry-packages-npm-production"}},"22.1.0":{"_id":"@mmstack/form-core@22.1.0","bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"dist":{"shasum":"d44e4fdba46ea9a7977744883e81c70a7bb558a2","tarball":"https://registry.npmjs.org/@mmstack/form-core/-/form-core-22.1.0.tgz","fileCount":6,"integrity":"sha512-HPcZpJXELhtGlUOZR60C1xfrPD3B5m7IB9Nw1LHOfcjkd8TNyClp4jdaumXnzJwlAEPgRtyxCh3EkEVWaphAKA==","signatures":[{"sig":"MEUCIC72u3a/cqi6EtPZGWcOWbZXhc4io7uVTUMigeIvC3S8AiEApIFZfwjReUij31q2Xyden7ySKV17FfDNgzQftETR6rI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCgqtZJCMdZvbZjvsH+wQzswelYi191p8C3z5KQmb7JEgIhAI1bpnoG2JghOZP0qslE9Mwp9VAt6NYPEgv4LZjMP7z8"}],"unpackedSize":90338},"name":"@mmstack/form-core","type":"module","module":"fesm2022/mmstack-form-core.mjs","exports":{".":{"types":"./types/mmstack-form-core.d.ts","default":"./fesm2022/mmstack-form-core.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"0baea29ba83e97e768572f0baad57e7772cbbac1","license":"MIT","typings":"types/mmstack-form-core.d.ts","version":"22.1.0","_npmUser":{"name":"mmstack","email":"mulec.mihaj@gmail.com"},"homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git","directory":"packages/form/core"},"_npmVersion":"11.14.1","description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","directories":{},"maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"sideEffects":false,"_nodeVersion":"24.21.0","dependencies":{"tslib":"^2.3.0","@mmstack/primitives":"^22.13.0"},"_hasShrinkwrap":false,"peerDependencies":{"@angular/core":">=22 <23"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/form-core_22.1.0_1789379802539_0.07574849766647573"}}},"time":{"created":"2025-03-24T14:22:19.416Z","modified":"2026-09-14T09:56:42.776Z","19.0.0":"2025-03-24T14:22:19.709Z","19.0.1":"2025-03-24T14:51:23.134Z","19.0.2":"2025-03-24T15:22:15.486Z","19.0.3":"2025-03-25T05:33:27.506Z","19.0.4":"2025-03-25T05:51:58.462Z","19.0.5":"2025-03-25T16:54:37.902Z","19.0.6":"2025-03-26T09:20:46.695Z","19.0.7":"2025-03-28T08:02:10.586Z","19.0.8":"2025-04-08T08:10:24.497Z","19.0.9":"2025-04-14T10:40:09.095Z","19.1.0":"2025-04-14T13:33:08.481Z","19.1.1":"2025-05-15T14:01:03.966Z","19.2.0":"2025-05-29T08:44:32.432Z","20.0.0":"2025-06-16T06:57:06.881Z","20.0.1":"2025-06-17T05:10:43.604Z","20.0.2":"2025-07-15T13:07:09.118Z","20.0.3":"2025-07-17T06:19:20.840Z","20.3.0":"2025-07-24T05:59:02.807Z","20.4.0":"2025-07-24T08:01:24.502Z","20.4.1":"2025-09-19T08:46:41.992Z","21.0.0":"2025-11-21T06:03:55.649Z","21.0.1":"2026-01-12T15:47:44.849Z","19.3.0":"2026-03-04T06:52:53.846Z","20.5.0":"2026-03-04T07:06:13.871Z","21.0.2":"2026-06-05T14:41:47.246Z","22.0.0":"2026-06-05T15:53:04.647Z","21.1.0":"2026-09-14T09:53:46.431Z","22.1.0":"2026-09-14T09:56:42.629Z"},"bugs":{"url":"https://github.com/mihajm/mmstack/issues"},"license":"MIT","homepage":"https://github.com/mihajm/mmstack/blob/master/packages/form/core","keywords":["angular","signals","form","validation","formControl","formGroup","formArray","formBuilder","formState"],"repository":{"url":"git+https://github.com/mihajm/mmstack.git","type":"git","directory":"packages/form/core"},"description":"[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENS","maintainers":[{"name":"mmstack","email":"mulec.mihaj@gmail.com"}],"readme":"# @mmstack/form-core\n\n[![npm version](https://badge.fury.io/js/%40mmstack%2Fform-core.svg)](https://www.npmjs.com/package/@mmstack/form-core)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mihajm/mmstack/blob/master/packages/form/core/LICENSE)\n\n`@mmstack/form-core` is an Angular library that provides a powerful, signal-based approach to building reactive forms. It offers a flexible and type-safe alternative to `ngModel` and Angular's built-in reactive forms, while leveraging the efficiency of Angular signals. This library is designed for fine-grained reactivity and predictable state management, making it ideal for complex forms and applications.\n\n## Features\n\n- **Signal-Based:** Fully utilizes Angular signals for efficient change detection and reactivity.\n- **Type-Safe:** Strongly typed API with excellent TypeScript support, ensuring compile-time safety and reducing runtime errors.\n- **Composable Primitives:** Provides `formControl`, `formGroup`, and `formArray` primitives that can be composed to create forms of any complexity.\n- **Predictable State:** Emphasizes immutability and a clear data flow, making it easier to reason about form state.\n- **Customizable Validation:** Supports synchronous validators with full type safety.\n- **Dirty and Touched Tracking:** Built-in tracking of `dirty` and `touched` states for individual controls and aggregated states for groups and arrays.\n- **Reconciliation:** Efficiently updates form state when underlying data changes (e.g., when receiving data from an API).\n- **Extensible:** Designed to be easily extended with custom form controls and validation logic.\n- **UI Library Agnostic**: `form-core` can be used with any UI library\n\n## Quick Start\n\n1.  Install `@mmstack/form-core`.\n\n    ```bash\n    npm install @mmstack/form-core\n    ```\n\n2.  Start creating cool forms! :)\n\n    ```typescript\n    import { Component } from '@angular/core';\n    import { formControl, formGroup } from '@mmstack/form-core';\n    import { FormsModule } from '@angular/forms';\n\n    @Component({\n      selector: 'app-user-form',\n      imports: [FormsModule],\n      template: `\n        <div>\n          <label>\n            Name:\n            <input [value]=\"name.value()\" (input)=\"name.value.set($any($event.target).value)\" [class.invalid]=\"name.error() && name.touched()\" (blur)=\"name.markAsTouched()\" />\n          </label>\n        </div>\n        <div>\n          <label>\n            Age:\n            <input [(ngModel)]=\"age.value\" type=\"number\" [class.invalid]=\"age.error() && age.touched()\" (blur)=\"age.markAsTouched()\" />\n            <span *ngIf=\"age.error() && age.touched()\">{{ age.error() }}</span>\n          </label>\n        </div>\n      `,\n    })\n    export class UserFormComponent {\n      name = formControl('', {\n        validator: () => (value) => (value ? '' : 'Name is required'),\n      });\n      age = formControl<number | undefined>(undefined, {\n        //specify the type explicitely to have number type.\n        validator: () => (value) => (value && value > 0 ? '' : 'Age must be a positive number'),\n      });\n    }\n    ```\n\n## Slightly more complex example\n\n```typescript\nimport { Component, computed, inject, Injectable, isDevMode, linkedSignal, Signal, signal, untracked } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { derived, formControl, FormControlSignal, formGroup, FormGroupSignal } from '@mmstack/form-core';\nimport { mutationResource, queryResource } from '@mmstack/resource';\n\ntype Post = {\n  id: number;\n  title?: string;\n  body?: string;\n};\n\n@Injectable({\n  providedIn: 'root',\n})\nexport class PostsService {\n  private readonly endpoint = 'https://jsonplaceholder.typicode.com/posts';\n\n  readonly id = signal(1);\n\n  readonly post = queryResource<Post>(\n    () => ({\n      url: `${this.endpoint}/${this.id()}`,\n    }),\n    {\n      keepPrevious: true,\n      cache: true,\n    },\n  );\n\n  next() {\n    this.id.update((id) => id + 1);\n  }\n\n  prev() {\n    this.id.update((id) => id - 1);\n  }\n\n  private readonly createPostResource = mutationResource(\n    () => ({\n      url: this.endpoint,\n      method: 'POST',\n    }),\n    {\n      onMutate: (post: Post) => {\n        const prev = untracked(this.post.value);\n        this.post.set({ ...prev, ...post });\n        return prev;\n      },\n      onError: (err, prev) => {\n        if (isDevMode()) console.error(err);\n        this.post.set(prev); // rollback on error\n      },\n      onSuccess: (next) => {\n        this.post.set(next);\n      },\n    },\n  );\n\n  readonly loading = computed(() => this.createPostResource.isLoading() || this.post.isLoading());\n\n  createPost(post: Post) {\n    this.createPostResource.mutate({\n      body: post,\n    }); // send the request\n  }\n\n  updatePost(id: number, post: Partial<Post>) {\n    this.createPostResource.mutate({\n      body: { id, ...post },\n      url: `${this.endpoint}/${id}`,\n      method: 'PATCH',\n    }); // send the request\n  }\n}\n\ntype PostState = FormGroupSignal<\n  Post,\n  {\n    title: FormControlSignal<string | undefined, Post>;\n    body: FormControlSignal<string | undefined, Post>;\n  }\n>;\n\nfunction createPostState(post: Post, loading: Signal<boolean>): PostState {\n  const value = signal<Post>(post);\n\n  return formGroup(value, {\n    title: formControl(derived(value, 'title'), {\n      label: () => 'Title',\n      readonly: loading,\n      validator: () => (value) => (value ? '' : 'Title is required'),\n    }),\n    body: formControl(derived(value, 'body'), {\n      label: () => 'Body',\n      readonly: loading,\n      validator: () => (value) => {\n        if (value && value.length > 255) return 'Body is too long';\n        return '';\n      },\n    }),\n  });\n}\n\n@Component({\n  selector: 'app-post-form',\n  imports: [FormsModule],\n  template: `\n    <label\n      >{{ formState().children().title.label() }}\n      <input [(ngModel)]=\"formState().children().title.value\" [readonly]=\"formState().children().body.readonly()\" [class.error]=\"formState().children().title.touched() && formState().children().title.error()\" />\n    </label>\n    <br />\n\n    <label\n      >{{ formState().children().body.label() }}\n      <textarea [(ngModel)]=\"formState().children().body.value\" [readonly]=\"formState().children().body.readonly()\" [class.error]=\"formState().children().body.touched() && formState().children().body.error()\"></textarea>\n    </label>\n\n    <br />\n\n    <button (click)=\"submit()\" [disabled]=\"svc.loading()\">Submit</button>\n  `,\n})\nexport class PostFormComponent {\n  protected readonly svc = inject(PostsService);\n\n  protected readonly formState = linkedSignal<Post, PostState>({\n    source: () => this.svc.post.value() ?? { title: '', body: '', id: -1, userId: -1 },\n    computation: (source, prev) => {\n      if (prev) {\n        prev.value.forceReconcile(source);\n        return prev.value;\n      }\n\n      return createPostState(source, this.svc.loading);\n    },\n  });\n\n  protected submit() {\n    if (untracked(this.svc.loading)) return;\n    const state = untracked(this.formState);\n    if (!untracked(state.valid)) return state.markAllAsTouched();\n    const value = untracked(state.value);\n    if (value.id === -1) this.svc.createPost(value);\n    else this.svc.updatePost(value.id, untracked(state.partialValue));\n  }\n}\n```\n\n## In-depth\n\nFor an in-depth explanation of the primitives & how they work check out this article: [Fun-grained Reactivity in Angular: Part 2 - Forms](https://dev.to/mihamulec/fun-grained-reactivity-in-angular-part-2-forms-e84)\n","readmeFilename":"README.md"}