{"_id":"@signaltree/ng-forms","_rev":"140-5adbb8564b5841bb3933a88c52b83080","name":"@signaltree/ng-forms","dist-tags":{"rc":"14.0.0-rc.1","latest":"14.1.4"},"versions":{"1.0.0":{"name":"@signaltree/ng-forms","version":"1.0.0","_id":"@signaltree/ng-forms@1.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"a700cc1fb521e99d45026fbf58d1aa6c7e56ec90","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.0.0.tgz","fileCount":5,"integrity":"sha512-obGj5MmfJc5vickXxlPaLNZoJp+p9htwJrp+FP4NwXzaaiLhXXIFRK7sMmvY+7we++lr1buh9PilouZx3Onzcg==","signatures":[{"sig":"MEUCIAdPqQCIbYqhxEJk//Cvz+MSWpuXUAoHWT5HtKtav/SHAiEAgDUNNAzVb3h23pH3C37Bpk5vkOShhkpCWVLpnoABbls=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100512},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"8e31078486e2802ab62dd2049e47236e7c48bf24","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"This library was generated with [Nx](https://nx.dev).","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.0.0_1754962869245_0.6275845534623798","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@signaltree/ng-forms","version":"1.0.1","_id":"@signaltree/ng-forms@1.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"c58d55e3ee679786b6f075409118d146f5741387","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.0.1.tgz","fileCount":5,"integrity":"sha512-qt34FsC7dAokn4RGpw86eaTe58PSaWycwKa30P3rIRbys/F0clKILJAlFep1QEvnaSTwY99iZwEBOo+hT5GQPg==","signatures":[{"sig":"MEYCIQDkxHSc5HGgpdYyxbDa0X/bP6VxXH2tXKUOPBQznTavjwIhAIs7AejXnGFF2L08M7USlYqoXV+NFxIe6MfWDByLOdOW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126275},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"de4ea6ea043ead7e5e445631cc88fb90df8c3c9b","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.0.1_1754964977556_0.9417114725768103","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@signaltree/ng-forms","version":"1.0.3","_id":"@signaltree/ng-forms@1.0.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"a4cdabb153f228e2ed7f429cdf490e60828410ce","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.0.3.tgz","fileCount":5,"integrity":"sha512-NucGhLcNl9UELPanyT38XEO1bakHSrvG1EqfcvFznwpzsP+ClMkEmVM3uv2p7xsv3HllRbaZvUjwmw2RY+5a5Q==","signatures":[{"sig":"MEQCIHJWFcz3Ol2Bzafhw313NBraZAu/o0FJpvui0d3V31euAiBcLdW7UaNCb8ejqDeZaXEZiiTCz9GTsgRQKQwn12dmuw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126275},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9f957226b3a19c40a800936e98a1790d709be003","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.0.3_1754967251338_0.8891521521070576","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@signaltree/ng-forms","version":"1.1.0","_id":"@signaltree/ng-forms@1.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"f5eb485327b513b61cbcd30867319ee65b84a0f6","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.0.tgz","fileCount":5,"integrity":"sha512-iPdG6XnIRl5ys+NFWv/z33fJeLVKFl+ngAwIKmIlxSK8ICQcJUsHyOhF/8j0AqFsRtFlUx2sdB0cm/k3+WAFRQ==","signatures":[{"sig":"MEUCIQDXcFJTmpJUspCrWSi7m4YrHhB4VmRvrH2PAICCuKc27AIgHBgyRFZVhsY9SxTMlI3/mxjkocFPCAJcbV3w4kKyHqw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126275},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"30e64ba0a88fd12ba679d7fac908e03e5bfd1c15","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.0_1755114254425_0.9152140747831794","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@signaltree/ng-forms","version":"1.1.1","_id":"@signaltree/ng-forms@1.1.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"e854c4aba0909636bf3e38b6bbaf35aba99eba24","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.1.tgz","fileCount":5,"integrity":"sha512-9StT3j+RvGtMtDEPol3/n9M2pyqKgVgzmRv4Cd76XQR/fjXkSAJoqG8hAi5UaEEegGAGEc5+5aQg+baCLQBerw==","signatures":[{"sig":"MEUCIAC5EywWa/JyShSlzG8wyP5TcyWbEGUgnJAidmhRjucPAiEA/QPTgKIdsHJRH6jMi1qdY8pHYVuBSENf7kpJW+GEybY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126275},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"23fc565830eed0fff6b4485695d48eef0689dd3b","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.1_1755115267624_0.02356470819988843","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@signaltree/ng-forms","version":"1.1.2","_id":"@signaltree/ng-forms@1.1.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"283cb0a44fe757d94d8990f0c875bb31e3c3737c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.2.tgz","fileCount":5,"integrity":"sha512-bAMBxmtiJxNF57PCljKybVcuwjCNIRMNnGhvLzGRRyjYqVTyfOdMj6etJ54y+sYBFffiEMcYg6XU+9itW33miw==","signatures":[{"sig":"MEQCIHDmnLeJ6S9xrchXby0xte3GJJT/QNfQTUoOIJpRQajnAiBF7xrnv+RWNtsEFGV7GRH9hOBoXiun2tm7KFxEV09L1w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119429},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"cadb1f3df07e0e9169004317a703304e3fdd2fd6","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.2_1755143890266_0.3597294803668618","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@signaltree/ng-forms","version":"1.1.3","_id":"@signaltree/ng-forms@1.1.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"facdbd088f2ad9063193521464ee91d2988fa9da","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.3.tgz","fileCount":5,"integrity":"sha512-zs+HWWnh1OweqmvBFTLVj9iLy7ISwjlukv7sKuUqFf0zo1IJMucIWW/62wGZq/ZBTzXhbvnKxW1t+vBN10jGiA==","signatures":[{"sig":"MEYCIQCPxPF4JouCk3E3AkcLs7LtbSUl7NxHNIeNNYClYP2cQAIhALX7qtq+DYunnmzO6PqYQv2LiaxO1OIK8+zzj1T/53vf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119429},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"e82aef492dfbf40eab7bdfeff4bce2e6b7bd3a66","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.3_1755146733619_0.8348536720224096","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@signaltree/ng-forms","version":"1.1.4","_id":"@signaltree/ng-forms@1.1.4","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"79c8516cbe44713039fb5774a637e4903632aa69","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.4.tgz","fileCount":5,"integrity":"sha512-KbBPotYya79HeD6rGSizOpOwVN/GH76kj5qt+2gTFfHOCjFBfw8r/DaCKoBh6aUgF91in8mhU9rLLuuXQv40Fw==","signatures":[{"sig":"MEQCIDdPJqnORgWaUvx6E4hj12JFzCpIisKYits9UnossWK1AiALjGPzIqQZMyb2hiSLHrjVL5uSRqsxZ4RrdQP/8ao8Pg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119429},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"443e38b984d484696832c173527aa39cdafe8d12","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.4_1755148096210_0.6295605335741132","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"name":"@signaltree/ng-forms","version":"1.1.6","_id":"@signaltree/ng-forms@1.1.6","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"25c9cbc69e420d9bfee894e702d41a5c4765f73c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.6.tgz","fileCount":5,"integrity":"sha512-j1AzKSXiaYT36kKYp0r49CbLnpchI9jqRfCpL0Uy4Tr/08wwQxcFZ8VUR4W/gIA3sHAnmGdGxu0IEe8gJ5CMjQ==","signatures":[{"sig":"MEUCIQCfPqUGoY2QHICCrDyZo0ssVMGCAOeu52a6rx5qzX9CqQIgIYCwUIvIeyi3QYQM7yqLB5RPCJbMW0eXIVs7UfcECxY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119429},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"616d656dadb3eac4fe199522616b893304087531","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.6_1755183249894_0.5090143342079252","host":"s3://npm-registry-packages-npm-production"}},"1.1.7":{"name":"@signaltree/ng-forms","version":"1.1.7","_id":"@signaltree/ng-forms@1.1.7","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"2a281c0d6a2affefa7d008ac4ef3e9d6bb267b6b","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.7.tgz","fileCount":5,"integrity":"sha512-YBqknUuCM7tZTu3f/vseiMNOCmeSvHbIedjHdZiL5qrYASOK0cpRO2iRFR/GYZFWP4QVeOfoK2elPwi5eGVN+A==","signatures":[{"sig":"MEYCIQCwatozUZdr/j94JvHdyS+B+SnDjl9ZupIfmkYNoI3QoAIhAIuUx9xRSFagvcWco70zYknn2dTG0TiFppBPa97p33Jf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119400},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"8e6274cd66ba0a0dc4059e9c82579b999a54f76a","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.7_1755568280961_0.23785382933295374","host":"s3://npm-registry-packages-npm-production"}},"1.1.9":{"name":"@signaltree/ng-forms","version":"1.1.9","_id":"@signaltree/ng-forms@1.1.9","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"649d601a65231d3f9739e8da11b055f147c20008","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-1.1.9.tgz","fileCount":5,"integrity":"sha512-+oV/2MR/Whjld6MaJm2tmwjl1gilT9KjtxCxrtFLDxuiA+p/qqQZsojKz4uEg2UO4zbBRS2NXp9BGxB0439RYw==","signatures":[{"sig":"MEUCIFkbtgBwlgyXCKb4LcViod205oHGjzbEGVCcuknAVJYdAiEA1KgpQ0zrWqnosl3WBRwo9keZewf30IPd5Fe0OMxUGFs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126014},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"649f660acea787698aa07a209c15530b6a0f2e37","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_1.1.9_1755870601603_0.18426160250125023","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@signaltree/ng-forms","version":"2.0.0","_id":"@signaltree/ng-forms@2.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"8277eb413d769a8086da0e79fac4d0a9b16bba7a","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-2.0.0.tgz","fileCount":5,"integrity":"sha512-OZokZjnfxKdecvK9TZY5I9AvBbS/ge6M8hivPAFdp/uukzzOVGON2SCsn52ER3cYj7BnKsu1scujNfFJ9ExFPg==","signatures":[{"sig":"MEUCIQDqAPCh9stzwLK7pzN08tBNG2WUL7nUDZBfuTRSO6zuywIgUi3CmgHhiY7JMRYmq0lse8ZbdTVK5y4bIz4WHotHlZI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119244},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"82852f0585fa58e95f52fdc71c29b96be54f5814","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_2.0.0_1757002787157_0.9557538356552642","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@signaltree/ng-forms","version":"2.0.1","_id":"@signaltree/ng-forms@2.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"e915b2389e6bd3acada8ec11a2219a15e85bda45","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-2.0.1.tgz","fileCount":5,"integrity":"sha512-dbfssj4jVbqixehvxX0yw95e/FOymLHXFN72SVwM4cmfLePA6LkDlHv2n3NMR1/uYkk6lLThcyb1oEnptFjEPA==","signatures":[{"sig":"MEYCIQDzALQfy+ybBAoXNIiHzRq4XORhRqtbRdqXE9xghWvmtAIhALCEM5mzlK2ycV3Os9tfUq9OWKwsYRnsx1hT1uA0/MXL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119244},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"d86b8e333c8248a2467a7d2d1210afeffd986187","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_2.0.1_1757006836642_0.3924810713360143","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@signaltree/ng-forms","version":"2.0.2","_id":"@signaltree/ng-forms@2.0.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"6f32f5f590065c19837aff5ab2ce2a4e00f3d6f9","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-2.0.2.tgz","fileCount":5,"integrity":"sha512-PlW9atCT65ycEZDEdgmT1MV1HJc845ALSHAIgJb7UE0wFLgJjHzZhvyEwLPgSXaoTdSZTag/yCXnJZ6gCByT3Q==","signatures":[{"sig":"MEQCIDVhifpKgp/KMF1TFhoTaE6VhnNNm/nhvo7ST8zaP+xmAiAyDPULXZXF7JfHdsD5WqnIFqiYWMu7cclfD6zCaEYojw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119185},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"870e28da12271ae2b2d3130cdddc5763d775f94c","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_2.0.2_1757012603104_0.747289496813887","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@signaltree/ng-forms","version":"2.0.3","_id":"@signaltree/ng-forms@2.0.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"d1bfa982ede62b37bc8641401a8b45cee383cde2","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-2.0.3.tgz","fileCount":5,"integrity":"sha512-qieCglIwpo/qmJ1qa/dXC/H+cXPPK2ojeblOUvoT7P7dhNFf444SYKqfAxGueExfd7ZqCmW7aaoBM8BsAK3Wdg==","signatures":[{"sig":"MEYCIQCSRWMUMGZpPr7yxL/uCJeJcDN/rawDTPVSzdWh846OWgIhAMFVIgqonz1NYl0wQQUhQdNayu87conY3mOMtSebWkHn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119185},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"315db7980ea8dcc764313a8fd9ead72cbab20080","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_2.0.3_1757091179821_0.5537264632441601","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"@signaltree/ng-forms","version":"2.0.5","_id":"@signaltree/ng-forms@2.0.5","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"df8044792908f6b40e6208f3add7a3d076d6d599","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-2.0.5.tgz","fileCount":5,"integrity":"sha512-yCq68iurgVgB6bqfywQxOIeC21GVMLR5dWYt/sxUjePez2B50DO5C3uZA2BnACDTIxuhxJHSlt7zU54EMYBhMQ==","signatures":[{"sig":"MEQCIAufu3E45uK7yVylVb0YcxVpv6aRV8BX37kS0lC07f9pAiA2Hlnt0Kq4NXORzH4iJWqQF0nyserj1qmCvcLeGI53bA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119185},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"3de4c81ff8623b8abdc1c31ed52cda7c4a43714e","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_2.0.5_1757096997190_0.8585807854784295","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@signaltree/ng-forms","version":"3.0.0","_id":"@signaltree/ng-forms@3.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"6309bd5e9296ca104aba04479ee347bc4c110762","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-3.0.0.tgz","fileCount":5,"integrity":"sha512-Txhw7OAsCQSmZI4UnzVJpLDlxf7zryU/NuJgh+B7MlIfUdp+4ba+MS239pMNrBHMgJAuOFd1yXS+TbNnk5nNow==","signatures":[{"sig":"MEUCIQCjRXWW9EzWYGP2TNtxbzBkVmk34ednNMJM5TojqSgjfAIgUbnfyO88P61w1YleLkWiyF2MLl/j+fouTPp+Lns8b3E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119184},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"9a714be2df9f7fe2856e92f869d1bced866ae7f7","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"2.0.5"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_3.0.0_1758222220224_0.351177115109347","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@signaltree/ng-forms","version":"3.0.1","_id":"@signaltree/ng-forms@3.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"736e3e7e5ea033ed3431418379826c1b9ea63725","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-3.0.1.tgz","fileCount":5,"integrity":"sha512-JAkeX/d2oSIvIlKsQ6lfA6nG7YozSSs294n4i/OO06NO837zogqwtSpN045so74QDH+WHaUiY0GW1RR/D+Y6wg==","signatures":[{"sig":"MEUCIQDzyuzyM+tGW9xinmn16mI2QMG6i9yoi/q9MYmpBnHZRQIgAhvzfUchi1z6kZkfZ11DWt6a4xx1QfSWHsRgbi60FUU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119062},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"eb5043c1cf97a0a06d9200d4d81e219c00d31af6","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_3.0.1_1758568084517_0.4478137366899957","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"@signaltree/ng-forms","version":"3.0.2","_id":"@signaltree/ng-forms@3.0.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"165fb208a9a8ba2b0fa8e28f1436f770aacbdb86","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-3.0.2.tgz","fileCount":5,"integrity":"sha512-qtAAcrgL2DpAlSWJ43A5p8MApO76ZjCNwsRvBYVHBmmYhQchmwdwlDLi678Q42BIpCQ6B7U4HVYQR56Cvf/tqQ==","signatures":[{"sig":"MEUCIFEHqQ/9ZkOsYqcW6mmQhrC/5y+GAMFKyDLA/hOon8BJAiEAvKAdj1zQmUYEt+E3eExTXVDL50MUoo+0hXfohE1Q9uc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119062},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"59c5299c2f3005897fee2afd09464dd19dd1002f","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.1.0","@angular/forms":"^20.1.0","@signaltree/core":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_3.0.2_1760131384976_0.4763560808481142","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"@signaltree/ng-forms","version":"4.0.0","_id":"@signaltree/ng-forms@4.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"4492939a94b7ae773dac6908a66360ea64703812","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.0.tgz","fileCount":14,"integrity":"sha512-mbRhx2PWhcL0m+v4nBvjbN0eCkdxKZov+mQhOCqrloxTEAGHPGv8zKPrYIZpMJrmyYEaYdfkJZYiuApj+4qH1g==","signatures":[{"sig":"MEQCID5PDP2hXKnhO7ecivaFP0PbKo1mIcKGbDMMw1eaf4bBAiA/YCtK40a119pos/pShV53o2lcDWlCYDLpRCa+3+vaGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269659},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"8088d8e61f0b1c714974111791b93d4ff3ae2f65","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0","@signaltree/shared":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.0_1762151460407_0.570077778717758","host":"s3://npm-registry-packages-npm-production"}},"4.0.2":{"name":"@signaltree/ng-forms","version":"4.0.2","_id":"@signaltree/ng-forms@4.0.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"8ce8685dbc96d0c1f074fab7220d23c93dd3f161","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.2.tgz","fileCount":14,"integrity":"sha512-LLgNbbkaLlDlM0RzuvJfkDhDpgUKCKODCyNDgGz3VTrxweFmkyyOSg1RNtqdiCBWxTFC9ubnrsyHQb9/sh5jwA==","signatures":[{"sig":"MEQCIHowK1NCfiE5wk5DnZ1F/3261T4/QDbVW0tJ9TTk9zGYAiBZe2xQumuPPEsUKAwgM8yEcpxoa9AbXdWoUygr8x3xMw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269659},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"90119450aa6bf1eb7833a5a793d542fdba08c58a","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0","@signaltree/shared":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.2_1762321092596_0.13780498208822123","host":"s3://npm-registry-packages-npm-production"}},"4.0.3":{"name":"@signaltree/ng-forms","version":"4.0.3","_id":"@signaltree/ng-forms@4.0.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9d38357e564c3fe2483f97f79003019e6ef97a39","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.3.tgz","fileCount":14,"integrity":"sha512-hH2f+7yrtZhtZZGKQwICwhPXgwij72KvUry+/Ra0QeNRBDc8Lalu9d0asHozidqQiHO4rAXDRBCna0bWKMv80g==","signatures":[{"sig":"MEYCIQCn+WWXU/xtG8VGSkGqETMjgXDcUmX3dL2Y5dhyVhKl5gIhAM5YDxZrWAD+96PCOWfEBWQG7zrUYfxLoQfoACHem2wy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269659},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"f147c0b60e23cf315faf156de677645bbfc3b83c","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0","@signaltree/shared":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.3_1762324845264_0.13945722325182963","host":"s3://npm-registry-packages-npm-production"}},"4.0.6":{"name":"@signaltree/ng-forms","version":"4.0.6","_id":"@signaltree/ng-forms@4.0.6","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"4acc6ed9afa33cccde015fd6c9e96cbe200e54c6","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.6.tgz","fileCount":14,"integrity":"sha512-dSIgYQS3BFohIJb92lSeTE3NkmRhbR3qLiwMkHyw2fweIydfCcwj8mQ4xpUzULB1lxzY67lGWBRHwJUySuQmVQ==","signatures":[{"sig":"MEQCIC6qqmsebVTaOTTQL21mYCedQ3FKCTfBOjk8XoYfAPf1AiAxiDsLOpa/joh2jN6Rlrh4jbNw/CVhMnDu71gCH8eX5Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269659},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"ebcb5c500d447e8c9ce5e75333f5d4d4d7dbb9aa","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0","@signaltree/shared":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.6_1762356729632_0.07590847825935532","host":"s3://npm-registry-packages-npm-production"}},"4.0.7":{"name":"@signaltree/ng-forms","version":"4.0.7","_id":"@signaltree/ng-forms@4.0.7","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"75aa596072a568334938ee564299fd4b436f477a","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.7.tgz","fileCount":14,"integrity":"sha512-GxJhj/zUy3EzRt0/6pNEToR1mJ73ONunyKBFZCH/hn+DUVK2jZqR1CMNdatHbHd35Pzex4iFEHB9MxCB6L1/NQ==","signatures":[{"sig":"MEUCIQCGp5rcaZCW42JR7N4uFszWPoMwZnPJCpH98wMumE+dKAIgR+etXLZvjWYLifwBngu8Cfg0opWAzEne7S++601l7UY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269659},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"05b06318ff7adf9ca5bce8fc26c4ba764e219ef4","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0","@signaltree/shared":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.7_1762455010667_0.190231108554763","host":"s3://npm-registry-packages-npm-production"}},"4.0.9":{"name":"@signaltree/ng-forms","version":"4.0.9","_id":"@signaltree/ng-forms@4.0.9","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"c596c965098957d01c3538748bd67b93c4378db6","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.9.tgz","fileCount":30,"integrity":"sha512-EUqnmrvf6E8iIC5UP8XIhl9ZsTHs2/7S842n9pNbF5WB/SpcLRIPb4qUx0HdYkChddhNmmRvzzDhOqsT91OBcw==","signatures":[{"sig":"MEUCIC25Bhs9dLPuDOYuWUVwfjFQAnOD1lAj3RxqFOIW0v/kAiEAoReROaw5FQHWsKbmLx1e/aclwE54iWaovWnuXQY7VKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77128},"_from":"file:signaltree-ng-forms-4.0.9.tgz","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_resolved":"/private/var/folders/rq/j_cb8q_538sbvjlg2bzwyts40000gn/T/6d3c90f5e85e5766245d488739f77799/signaltree-ng-forms-4.0.9.tgz","_integrity":"sha512-EUqnmrvf6E8iIC5UP8XIhl9ZsTHs2/7S842n9pNbF5WB/SpcLRIPb4qUx0HdYkChddhNmmRvzzDhOqsT91OBcw==","_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@signaltree/shared":"0.0.1"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"4.0.9"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.9_1762555068603_0.4389585663323665","host":"s3://npm-registry-packages-npm-production"}},"4.0.12":{"name":"@signaltree/ng-forms","version":"4.0.12","_id":"@signaltree/ng-forms@4.0.12","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"4ad45409aecc08bb3a8e930846ba1b0ea739cfab","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.12.tgz","fileCount":14,"integrity":"sha512-NtJftKBJA2rBs+ITgCBUk8At8AE498m/AqHvbx0U5KOeiNhIJPEXFAOuN58kfGnRvdy0qg7ABv4v9upRpiKSlQ==","signatures":[{"sig":"MEYCIQCgpcwuGQFObEGPWExoHOEStYRpsTBMJVgCDuVtV1zWaQIhAJtyby6OMLJdP5kW6SjHvkAA41rJ6Fh8E6RR34Eomcnt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269836},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"426c2b1092c496407f1f8be9369199ff544037ef","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0","@signaltree/shared":"workspace:*"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.12_1762924705847_0.2839254903539483","host":"s3://npm-registry-packages-npm-production"}},"4.0.15":{"name":"@signaltree/ng-forms","version":"4.0.15","_id":"@signaltree/ng-forms@4.0.15","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"e007de744d245514ba3e00bf7b60e025b5bd92da","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.15.tgz","fileCount":14,"integrity":"sha512-pcIq77yuZSeW+WyElMQA4XklBPHdD39AizBLjCJccSB1I07jWwShYl7qgXeinoEqEtpQtHHzcpwYMmEOj2EAcw==","signatures":[{"sig":"MEYCIQDBg4carja96+yPsBeEwVA/9zTgKF8KaSEjGlOgPmUzpwIhAN91Zbl5Wlf2BrTjODixspNiJu3HN1hFb2Th9N/NXx6R","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269625},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"b4eb22a56ae7f6962a7304e8c96b44cf9b000098","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.15_1763065222024_0.6401166580962159","host":"s3://npm-registry-packages-npm-production"}},"4.0.16":{"name":"@signaltree/ng-forms","version":"4.0.16","_id":"@signaltree/ng-forms@4.0.16","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9f5c6587b193d2ec25f9dbdf62cb3ac4993c2979","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.0.16.tgz","fileCount":14,"integrity":"sha512-xdDaRdD8Dv5+DlXg4ujqbCEoUBUKb99kHPwmJRuryNOWnqiGN1KKnwjxHDPGO7UhEeZFRkiXUuc1jomuPVzpgg==","signatures":[{"sig":"MEUCIGN0+LLyRdK4YPto8ZIop7zH6jD/HHmA1BKE4dJmCmOQAiEAuH/zdMzvpdaqvEQOXZ9Y46BL1crg5AIpT8BLzuIqFI0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":277331},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"0a0c4954ee11b04e190dd0f200275283c7fc163c","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.0.16_1763220715817_0.5129814160126043","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"@signaltree/ng-forms","version":"4.1.0","_id":"@signaltree/ng-forms@4.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"8e3453f66d32d2ec5a7751b8e297f2f26ed7a25f","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.1.0.tgz","fileCount":2,"integrity":"sha512-Trnd0I08yQI6E9rCBlfBFjlFPrVNRyl1rV4Iz9SOw8CT3e/xI/TXllyq13UpkBBYnDULli+8Vc4sujQ3SVykHQ==","signatures":[{"sig":"MEUCIB/9XWjJrYsnWhmQ8iiVpuJNBNqPmlklgjVPV8f3wFBPAiEAmL2V0CUI4QScEBK8Si6+g93jZ5OOwVWvzhTVWMVSg/o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9614},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"82466a6d4108b7530153f8fdb074b0bb5bd1ca1b","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.1.0_1763531013837_0.29156616499341026","host":"s3://npm-registry-packages-npm-production"}},"4.1.1":{"name":"@signaltree/ng-forms","version":"4.1.1","_id":"@signaltree/ng-forms@4.1.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"5b23fcf6b694fc83b1633295b9788cd81b4b44eb","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.1.1.tgz","fileCount":3,"integrity":"sha512-fXK58ht0YGsl0iGEpH5hOxkEswhTvTWd67W3k97Xpe6M+IGzw+qp8QsvkqKEA/J+rcni4zN4vMddKXrkJJVwbg==","signatures":[{"sig":"MEUCIQDzuzHL4yJdh5whrITOrBFZeJARGTGuiWV+QT1Ax/qOQQIgXAWfwV2KbHGavZTmkXfe8NZ8SdnQjZm2qPNwZP7PcDs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12488},"_from":"file:signaltree-ng-forms-4.1.1.tgz","module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_resolved":"/private/var/folders/rq/j_cb8q_538sbvjlg2bzwyts40000gn/T/69643677854a12b69adb152b1510802c/signaltree-ng-forms-4.1.1.tgz","_integrity":"sha512-fXK58ht0YGsl0iGEpH5hOxkEswhTvTWd67W3k97Xpe6M+IGzw+qp8QsvkqKEA/J+rcni4zN4vMddKXrkJJVwbg==","_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"4.1.1"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.1.1_1763652956674_0.874333894252461","host":"s3://npm-registry-packages-npm-production"}},"4.1.2":{"name":"@signaltree/ng-forms","version":"4.1.2","_id":"@signaltree/ng-forms@4.1.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"7b34321ee7de783c987db28a7e00449b161b0117","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.1.2.tgz","fileCount":3,"integrity":"sha512-HWOrVNx5hdjeg324OPBgZ2niWLZo7Xa+XqWgBFPP2ap64RljehgEqxrTC65MtQhGt0tmYMvskW+sx6ugiEH90A==","signatures":[{"sig":"MEYCIQDy1AugITHEBMSy/v60ZY7SuokQ2r5f46XQFzhhQSqzjwIhANlgijlxgZ7LrNbgnU2LQSWCZRbodmTFYP5UUKx7XM+u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12488},"_from":"file:signaltree-ng-forms-4.1.2.tgz","module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_resolved":"/private/var/folders/rq/j_cb8q_538sbvjlg2bzwyts40000gn/T/369a25f6354b107dbcf20758f77b45be/signaltree-ng-forms-4.1.2.tgz","_integrity":"sha512-HWOrVNx5hdjeg324OPBgZ2niWLZo7Xa+XqWgBFPP2ap64RljehgEqxrTC65MtQhGt0tmYMvskW+sx6ugiEH90A==","_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"4.1.2"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.1.2_1763692773671_0.9628005098204999","host":"s3://npm-registry-packages-npm-production"}},"4.1.4":{"name":"@signaltree/ng-forms","version":"4.1.4","_id":"@signaltree/ng-forms@4.1.4","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"ef039a3356f14e9e39b1b63da5eade856cccca4b","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.1.4.tgz","fileCount":2,"integrity":"sha512-EIZ2UO9sdkhPfcTzOAbgn1H/D/NmBL6/1XontRNUJop6xwGu2+V3lb85p3XRHJJV/mRUXjdvnAZDI8B5k9k53Q==","signatures":[{"sig":"MEYCIQDYRAK7udIY0aoQZEhIhwu85PzduWjPkyZd82TaWQDYpAIhAPLo0hp7iAKm7Poel+wG1Day6j0WOW2LZWcgqcXunAJ5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13113},"module":"fesm2022/signaltree-ng-forms.mjs","exports":{".":{"types":"./index.d.ts","default":"./fesm2022/signaltree-ng-forms.mjs"},"./src/rxjs":{"types":"./src/rxjs/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-rxjs.mjs"},"./src/audit":{"types":"./src/audit/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-audit.mjs"},"./src/history":{"types":"./src/history/index.d.ts","default":"./fesm2022/signaltree-ng-forms-src-history.mjs"},"./package.json":{"default":"./package.json"}},"gitHead":"7750110505bca45ec9703e3b908f0360f371ec10","typings":"index.d.ts","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"tslib":"^2.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.1.4_1764301695925_0.0008894677784170302","host":"s3://npm-registry-packages-npm-production"}},"4.1.5":{"name":"@signaltree/ng-forms","version":"4.1.5","_id":"@signaltree/ng-forms@4.1.5","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9f3be6b4c20db8c17684573b22faf298d1d777fa","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.1.5.tgz","fileCount":16,"integrity":"sha512-bZUfOeZzSlEJyaRg4UtOPiUx9lQzsWCCRiTwBSuDLgDg3ZMyY5LK6xGjj0pIuTEf3dym7uW/mie76ZEn0UHfKA==","signatures":[{"sig":"MEQCIDKXCGI1EJhjkfPnKOcbYml/H9NVl1UN72Lenn53KTHCAiBW4Fh0Rl9UnShRO1DAT9QbK//VZBas+vBf4QsTcv2xYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52498},"gitHead":"78254dbb2d66c1934bb6fdee540268bf7ae3d70d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^14.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"4.1.5"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.1.5_1764529122008_0.4733445326636667","host":"s3://npm-registry-packages-npm-production"}},"4.1.6":{"name":"@signaltree/ng-forms","version":"4.1.6","_id":"@signaltree/ng-forms@4.1.6","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"c4dce31f6bf672fabc916291ec5953bfe57cf0fe","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.1.6.tgz","fileCount":28,"integrity":"sha512-oGr5eGEXL2HV3tMOUzaK7MtQNtC0KwJ0nWbhc/t2S7kKTHPTD5u7cVCXwMyB4GT+meHalwEXht5Km/1p5rn4yA==","signatures":[{"sig":"MEUCIGPZQrzailwr8zvTyp6JDHZO5ZxAtaGptP69vmWWnhX4AiEA1ip5YEzinfqypyr5pwKB688JSf4QUyPPdBNp64tVMBc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60123},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"ed89cbd77f668bc4f83623918181acdfd33800be","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^14.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"4.1.6"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.1.6_1764867139280_0.3101211541205533","host":"s3://npm-registry-packages-npm-production"}},"4.1.7":{"name":"@signaltree/ng-forms","version":"4.1.7","_id":"@signaltree/ng-forms@4.1.7","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"0076e4715b133f863338fe239b4e48bead85f9fd","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.1.7.tgz","fileCount":28,"integrity":"sha512-2EnOsq1/LQi6GCeL/Hy5MAZFkEVt+fZ8SDFpWX4RO8G1jeA7/gZNttplI7ApEvZv7tKZ82cArk8a/qw+jFUAdA==","signatures":[{"sig":"MEYCIQDILpB7ahfzV3nZbJDd7pKuSq/whOlpYHimZ7IS0skDZAIhAPlRZhMozhnkvtAzatb8xravbfVBvS+gaWK4QW3naug3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60123},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"053e180eaa36a52b5b013da604842959ee16345e","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^14.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"4.1.7"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.1.7_1764871077772_0.3453956545917911","host":"s3://npm-registry-packages-npm-production"}},"4.2.1":{"name":"@signaltree/ng-forms","version":"4.2.1","_id":"@signaltree/ng-forms@4.2.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"5f1f9fa0944a9d946adf28ef7fc46234a5da28c5","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-4.2.1.tgz","fileCount":28,"integrity":"sha512-7TYq0ZaBq4lwwM4XiAVqMGXTtsFmBGk1YBgjHUIM4bCTLUhB5oCXsY8Ml98u1J1l2pap3Ms+YV2+lQXAjEnGEw==","signatures":[{"sig":"MEUCIDJZuaaS4fzjej9oi6Pqi65mK64iuAUSSdSIoTuLrNgNAiEA0o5nNi06CuIYGL3gJf06uiZfmpO9na6M/pRg+hh/BmY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60124},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"cc9e77a3576c93d9c5f6844eb6d6ba7a45eb5335","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^14.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^4.2.1"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_4.2.1_1764965822849_0.41868693487421016","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@signaltree/ng-forms","version":"5.0.0","_id":"@signaltree/ng-forms@5.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"532c690efa920303971dbe59c8f9da1682777086","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.0.tgz","fileCount":18,"integrity":"sha512-9ETrdamJ0ZRUWKPsgD936l4LrjRCmDF/cS9RqhVIMu5BxT6FusUjdqiK01l76f9Kccdh7FBHC7djNAbpN4Sfwg==","signatures":[{"sig":"MEUCIFIM/MY4BGVIytoeXZcdYOtKQB8a7sUTk2ejEM8WOYatAiEA7p9T6ZOUK1iYQKILTwKZvMlQOk2PtTGWxz6cJl8f3rI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23067},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"3512155522323568e7a1aed51497aebd59284287","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^14.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.3.0","@angular/forms":"^20.3.0","@signaltree/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.0_1765507430294_0.05276933706700504","host":"s3://npm-registry-packages-npm-production"}},"5.0.2":{"name":"@signaltree/ng-forms","version":"5.0.2","_id":"@signaltree/ng-forms@5.0.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"69e78843b8dc7e6460376d4dedb58e05dc4a90c8","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.2.tgz","fileCount":19,"integrity":"sha512-BJsKC+2UWwxVY8MXzQj7IzaXe53HzvHmkzCHAcQ50HuXq7ZSA+ONAw/HXnNvAuwe4z+l+Fc3XUf7tFIvxc7EBQ==","signatures":[{"sig":"MEYCIQC5rFhvpKrB22/boJvt9x4bZcUpqfroICaoid4AW/1S3AIhAKb2aaY6JRDgfEQBcOBoPIvgwEQDwPCTxPH1MtcLeeeP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23221},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"8e8958aed63e7eb5607550e36e2d185a3a702618","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^14.0.0"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.2_1765798374353_0.8371329468303772","host":"s3://npm-registry-packages-npm-production"}},"5.0.4":{"name":"@signaltree/ng-forms","version":"5.0.4","_id":"@signaltree/ng-forms@5.0.4","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"ec1d23af69289c31fe78e565d74fe183cf567483","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.4.tgz","fileCount":19,"integrity":"sha512-Np/chKEcZjYq7AMDKi4zoL0Fw3P+g/87cGbNPLJCrn6mRqtFylPNeimqpUq0TTKL+pXXTrNwRIRY7f1F0Synow==","signatures":[{"sig":"MEYCIQC3HPZx6U/UXyOxZij0GlIXriX+669AYux7FXOEE4novAIhAOn3cwxcaVkrq1Ge2uGr2hZ2LkczIW+hygsV1HmJvcXB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"4a24d8f276899de645904f715fdad131ad9e7742","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.4_1765849977557_0.6566955238058672","host":"s3://npm-registry-packages-npm-production"}},"5.0.5":{"name":"@signaltree/ng-forms","version":"5.0.5","_id":"@signaltree/ng-forms@5.0.5","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"b55fe03ca867c75991d5f8ab57bbec51b1a5a594","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.5.tgz","fileCount":19,"integrity":"sha512-tJkmH/bUx0baQpQ9a49mY7UABlSqg7vmmx53eBrn0qBJ24e2lmCPSE+sl8F8ocup26EkdOiJITYOUy6pVNf9Wg==","signatures":[{"sig":"MEUCIQCy8oVHNPdJUWqPljkXH16ZiYrSVy+iuZlS7r31tYBZlQIgCXjrhpCVIVonNVxUBREGrIoJ+ESkEMJyJnEaKqBfwXI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"1e92adb00b46c3b5ebfce1c603d10ac6f64e7515","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.5_1765867636502_0.3966681471294857","host":"s3://npm-registry-packages-npm-production"}},"5.0.6":{"name":"@signaltree/ng-forms","version":"5.0.6","_id":"@signaltree/ng-forms@5.0.6","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"ab150f6fec9325117c8854b25caab4bccf5f70e2","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.6.tgz","fileCount":19,"integrity":"sha512-R3R/Bzp4pyUBe+lLExBpOjMC17NSYOHy6p8ch5dgVsH6JcLJFa+sBlvTXJ4o2QMBHVhOMNfutNX/iSMcRaFXVA==","signatures":[{"sig":"MEQCIAowTFMXGeSG6q/YhJg0TV5qX2Dg2Pmc+cKaL3A1CeJKAiBBWj0fACSlaeR1SPyuId6IWq+T0bIdXUXfNBIKefqOEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"08ec79aa3a61b316e2de9933dd0f5166dd45e4b1","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.6_1765868406704_0.5719145486558477","host":"s3://npm-registry-packages-npm-production"}},"5.0.7":{"name":"@signaltree/ng-forms","version":"5.0.7","_id":"@signaltree/ng-forms@5.0.7","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"0b665056db8e162f133f4c78702c7869ecd09ace","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.7.tgz","fileCount":19,"integrity":"sha512-4/T2YURd7OAHMD+lp9NipYpMIrz+fUk4UmfZgmXb3lWPgtP1+mBwCQgGJYBfRK3SbYk7fJLzrrqv+TaQJJYvZA==","signatures":[{"sig":"MEYCIQDiSzmQ351fLXn+xgy9hyqiOCJU1NnAvlcbo4CA8DA3zgIhALfIkRd1XZdAr1m0DjgxHrY981Kc9ZcV1oBo+1MELgnA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"c2459d49a76ecf35380a95d0eee55aeee282bd7d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.7_1765868737114_0.07965373543476861","host":"s3://npm-registry-packages-npm-production"}},"5.0.8":{"name":"@signaltree/ng-forms","version":"5.0.8","_id":"@signaltree/ng-forms@5.0.8","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"c9a7ab41b443ca8807982d7587eadaedda3fb20b","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.8.tgz","fileCount":19,"integrity":"sha512-DcNQRA/tHfqVTzYH0qB2TNMgLjlnGLME/Ohh4hSIoedOvrv5bXUA8P9OnkrumVybxWeEew8GVH9lMyEQPp1mew==","signatures":[{"sig":"MEUCIQCRN/FplBp/JZiQA7MWxcBdSBwYnESsZ8Y0EkXtY5Oc3QIgZNTayspigHYsGemJ1G4ejPL/yhutEFck0Dyy5rD4bfU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"eb2d8a08667ff99d7b3b506185fc8cb6a884147e","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.8_1765868847312_0.867072478776479","host":"s3://npm-registry-packages-npm-production"}},"5.0.9":{"name":"@signaltree/ng-forms","version":"5.0.9","_id":"@signaltree/ng-forms@5.0.9","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"52d873ec04f27bc372e4aecfd5df65b0f86b21c6","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.0.9.tgz","fileCount":19,"integrity":"sha512-O6BzIDkyDU+dDiqlLnDxxmvon8DFcSgdL/4ZuDShN2ARLUngryV3JU/09bFzLFgjZGFN1qx42WNKyuc8ch7KTA==","signatures":[{"sig":"MEUCIESKoddqnkYmAiSD9pJB5m2cD2vQnjlgAKnpUwuZIR+FAiEAxEInBdtCVCuKZdCWZ0B93qsfIeOu6XOn1ghc1eDfPyY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"65f2a08729bb361dd06f6727ac08ee353253e7fd","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.0.9_1765869652062_0.019431601650684138","host":"s3://npm-registry-packages-npm-production"}},"5.1.0":{"name":"@signaltree/ng-forms","version":"5.1.0","_id":"@signaltree/ng-forms@5.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"2d23e23503d03d7aedb898b48297eb0837d95555","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.1.0.tgz","fileCount":19,"integrity":"sha512-nep25cn7VMESQwo58AnKzfr3sH35AbUrUxNl7c5TJZVzKrKLkCg/lriNpUcag3ozgJ5Z8iuiwtpyK+ca7j12TQ==","signatures":[{"sig":"MEUCIBmHD0WDTfzQoWCiH9rOQDwKzhBNHFbvD/xfhLFBj6FYAiEA5pMstCBp7AHj26ifZKVktIHNxKUVuni5Kh92IVamRAg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"e71660534ef093d8771cba5404e1a78025088f4d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.1.0_1765913311002_0.4543785612089417","host":"s3://npm-registry-packages-npm-production"}},"5.1.4":{"name":"@signaltree/ng-forms","version":"5.1.4","_id":"@signaltree/ng-forms@5.1.4","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"bbcdde47bd5896ac2bcdd223073015105fe6bd16","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.1.4.tgz","fileCount":19,"integrity":"sha512-82unKySfuRgcSuCZr7nCCZWGOyhvAyY1uZ4ADJVTYgZzb4UB3W0MqIk8IznaPe+Zmf4UyjPPzukq0Iq633LORQ==","signatures":[{"sig":"MEYCIQDJXoDHg4ho3aLPp+KsXh+Ke8jlY1eQs0DM0H0rJJuczAIhAPVtCWqcbjAsGwY8y2ZW64jhJosItN/DZb0YqJ/kHSJh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"6982d4130c42a9c16a786d676fb0bab610cc65ff","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.1.4_1766429447863_0.923734595848726","host":"s3://npm-registry-packages-npm-production"}},"5.1.6":{"name":"@signaltree/ng-forms","version":"5.1.6","_id":"@signaltree/ng-forms@5.1.6","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"bc2260f47c27deb9d74bb7192af11a9ff8010c2c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-5.1.6.tgz","fileCount":19,"integrity":"sha512-lM+lev8lRJs4ygCJvF2Y5AXs54cqquZ3nNYLL5FCgKI9MzFNB7uWh27KgG6usa3kgF47WY8fDh+s40p1iEWaWQ==","signatures":[{"sig":"MEUCIQC5RdL5UyOg3FZGPa+OwSm54DhYdXMcfO9duo724BNOVAIgGEd313zPXHroUkA2AXhR0xmdfR+3LoS91Fggm2sORQA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23251},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"453725ba424dbacc4030d87075977e1bdeaebd1d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^5.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_5.1.6_1766465947096_0.48287644621776393","host":"s3://npm-registry-packages-npm-production"}},"6.0.0":{"name":"@signaltree/ng-forms","version":"6.0.0","_id":"@signaltree/ng-forms@6.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"dc047ca35170d0782b7e239905ea8ea8a29b3d0a","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.0.tgz","fileCount":2,"integrity":"sha512-PXaWzxHZw4j7ahHBN8AaqGUznK8IeuKqSs8midST0TJmQlla2ALjMiD5MB9TCecmOzVkdSq0HNBw3hfaaDCVuA==","signatures":[{"sig":"MEUCIFwrUoPDkZJ9veap4XyPK4ozVAejuiZyXqoFHtHXrbcxAiEA8G0ZW1NVeWDXwzruj4GQbSRqiocowotj4Uru7knuQJ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12982},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"8647f2f7f48c7e7fff3dc1f1aac037c1396a6cbc","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.0_1767199085251_0.7442353916113489","host":"s3://npm-registry-packages-npm-production"}},"6.0.1":{"name":"@signaltree/ng-forms","version":"6.0.1","_id":"@signaltree/ng-forms@6.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"242c35e46c5d86f3712d8d8da07f010674a0a057","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.1.tgz","fileCount":19,"integrity":"sha512-z+bd3YTMxnL2R0z3mAzVovH9zIu422FVM/V2/CtTryEDnNa1qjiXpoqtion9G5gmbUvb62ynj4t6uYIi37pNsw==","signatures":[{"sig":"MEQCIFP0YBNwXMUPIQi/m+gQfOXHOz2ffYLD5ymhlodmFOKhAiBEE7w/rnz421gGJd2Ja36sBE2psDw/z64LLjknjsOtag==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23392},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"97ba743b393d7d9dff091fe9d97f985be3f41913","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.1_1767220874853_0.33317278173603904","host":"s3://npm-registry-packages-npm-production"}},"6.0.3":{"name":"@signaltree/ng-forms","version":"6.0.3","_id":"@signaltree/ng-forms@6.0.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"7a09140066b9994a9cbc705890af7516db2b1e38","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.3.tgz","fileCount":19,"integrity":"sha512-vRHtorTAgYTke/oxDu0SrG8dYO3V5wQbhBugo6OPvrgF/aVEZbVu0BMIwo9GMyt3QN4L70IejOhUASb6lorhFw==","signatures":[{"sig":"MEUCIQCB3BGRDjetid2a83gnapTGpmtnT3tby37aFbeuvcFxQAIgGtfR8vTIBCpF8l7GFL+RUVjldhaZhzj/osCC0P2vYUM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23392},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"76a1020373ecb5fea5fb8e05a209f07f9bc74db1","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.3_1767397344555_0.6438663637231157","host":"s3://npm-registry-packages-npm-production"}},"6.0.5":{"name":"@signaltree/ng-forms","version":"6.0.5","_id":"@signaltree/ng-forms@6.0.5","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9811b6e718fb3f388723c90ecf7e86b0c994415f","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.5.tgz","fileCount":19,"integrity":"sha512-cRTlszyFSxAvLDJnQSVMtLj2Sd7fs3kQztMlBG2WIkP4qtU5Ft2IKYwmVnisI84+2nTpMHZjrMI1dWTOxR2erg==","signatures":[{"sig":"MEUCIQDUY7x5ch2d/+9H+AnnzkjxePNvWiZpjvVb3swHeCotPAIgQE83fExfuGjUteIZjGBIsM1NZ763d79pU5ltQNSo+O4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23392},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"56a62833f66d11711e753e18a064525e576dc387","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.5_1767401628941_0.5499069757048898","host":"s3://npm-registry-packages-npm-production"}},"6.0.9":{"name":"@signaltree/ng-forms","version":"6.0.9","_id":"@signaltree/ng-forms@6.0.9","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9d85c04f6e4efb096f94d43804ab1fcfe2ded547","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.9.tgz","fileCount":2,"integrity":"sha512-jwBtRtQjJsY7VX+dQjCAv8QA8cZJ7tHQGu7+W8+N4qMuwi5Eg44R/DWLgMWQ7OPcG/cGyLj84g+x8VeizwLmdw==","signatures":[{"sig":"MEUCIFnEmgxfmOQ4C5/WtwgZvV27zeoTYZCTKG9O84/IyvjsAiEA6wN3lAbcSczJLxKnLFb9c+QlIhYjiEdTwWfq1SUWmB8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12982},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"23eeb7d728eecfaf1affbbd7887c5548a3033ed2","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.9_1767470004487_0.2149399736791835","host":"s3://npm-registry-packages-npm-production"}},"6.0.10":{"name":"@signaltree/ng-forms","version":"6.0.10","_id":"@signaltree/ng-forms@6.0.10","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"c8fdefc0bd791841d886f1ad45f52e8f223783a1","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.10.tgz","fileCount":19,"integrity":"sha512-hDnUdUD9GWcOEKMbrpsygE+wdr7DMsejuN6iujSk9Gl6TBe7VX9vwZg9I3OyjVA7soq83ebLt/Uuae+dmuoNug==","signatures":[{"sig":"MEYCIQCq6hswPVpZImYsdkIH5hnb1YnRKhgqpiXP/m4jCSNesAIhAJkXHX+GPDSnzCx5GCsmLfRup5z55KQYB4XamHtxbDye","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23393},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"2da373ca213afb02f0b1f3f008aff67119ebaaf5","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.10_1767470958752_0.2080538177604847","host":"s3://npm-registry-packages-npm-production"}},"6.0.11":{"name":"@signaltree/ng-forms","version":"6.0.11","_id":"@signaltree/ng-forms@6.0.11","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"d4b2386134a7dea984be6d21cf504a40d2fdb594","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.11.tgz","fileCount":19,"integrity":"sha512-Zw/dVYPTEahg3lh6/1DbFColjQe1WRxnjihJe/jpPCDpAsMwodxJWx+i9ejjhLIzeDsKt8JIkaQG/TOBNG04QA==","signatures":[{"sig":"MEQCICRwhKxl2oy6RQcdQAAS1tACFXVJltK4Hz3JUA7aBNyZAiAEnJnjJbHPsc5WgX03TjDMvAbYMvEdSC56l1Wc+RBEWA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23393},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"871ce27af211fc7002ce7bb408f58bfce34d60e5","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.11_1767471495916_0.5243009885357799","host":"s3://npm-registry-packages-npm-production"}},"6.0.13":{"name":"@signaltree/ng-forms","version":"6.0.13","_id":"@signaltree/ng-forms@6.0.13","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"354c020cb3542e71332d21ad415a4ef5fd44d359","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.13.tgz","fileCount":19,"integrity":"sha512-NJNWvCscV0BZu64vJUY21soei6xJ7nmhLKo5+hnHfMEQKJzlJ/b9lCor/jZaaLuRk/IXvpCQUAJWdW8iKRWqow==","signatures":[{"sig":"MEUCIQDHbFTfgdboisDKQWQo03bbwlR5Lp/hvMj5G8HdLwKGRQIgYNuiptq9nihAcDaIfeEd6yIg1VLobf68ZWeaMWOTSbY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23393},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"b8c4ddb92e0aa8bb4aff089f195bbfd786da2d7d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.13_1767483513450_0.6777456062648126","host":"s3://npm-registry-packages-npm-production"}},"6.0.14":{"name":"@signaltree/ng-forms","version":"6.0.14","_id":"@signaltree/ng-forms@6.0.14","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"28a38f136c189a0eb7a284980d327940efa6afb0","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.0.14.tgz","fileCount":19,"integrity":"sha512-pkFlPLmrDwNczs6UCntT/6TgnfCCOKLPxOY3UuKDT5iOvOrcVkq1GS+ky8WktFgur/AYs3V+lio13KQV6oCa+w==","signatures":[{"sig":"MEYCIQCcMLjzru/V8+TLwpaAYG80H99kqsezArAuzJ+g6KzxEwIhALs9BXRVa1Hh/SVg1PfpiDqmbt1v9IfWIPyQ80YFhWhl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23393},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"2cb821c6ca2f91e6bc880038f7ea27c1f1870e79","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.0.14_1767486444744_0.7635924755113239","host":"s3://npm-registry-packages-npm-production"}},"6.2.4":{"name":"@signaltree/ng-forms","version":"6.2.4","_id":"@signaltree/ng-forms@6.2.4","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"7f5562fded4e22b4371d6c9a35d1a4407d89906c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.2.4.tgz","fileCount":19,"integrity":"sha512-7q4kGQO83tbTH7gF9aTG2jZHEqR/gXq6vJp3n8ulJ9cLUfFN8v9FFY5OiYQ+wI57yTx1cqP9FtDt4CfgsnML2A==","signatures":[{"sig":"MEYCIQCtNx9/VuZL0iv84sUax4H2xqe+TVqfq4zS3jb8p2FX/QIhAKFvIXCHf7YvoPf2LmwlJVNpoCN4/ZXlDeC4Jp/q+qLX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23392},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"d2e7391fa0aa1ebdbf17f51f0e355c870d773e6e","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.2.4_1767560693204_0.07095031552369635","host":"s3://npm-registry-packages-npm-production"}},"6.3.0":{"name":"@signaltree/ng-forms","version":"6.3.0","_id":"@signaltree/ng-forms@6.3.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"a30c68fe9bda331780e07f7057d334a6b74e657c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.3.0.tgz","fileCount":19,"integrity":"sha512-UiHKejHw2A3JfonuzzNAIiFtQnHWzi4KiLidH5o9r2AvvYkEDsiX3Mjy+RKuBhPUprPabEHoBEsBYWauR+VngQ==","signatures":[{"sig":"MEQCID8M1Wz73PJ1Fzpz7v8A0KXwbKcqnSZbs1FHVY/3iE/LAiBIoUJTdfK6tEGqs1Xz/W0yzQoinXRRwmmtYkzOVS8x1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23392},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"85ba20ad5fcf3ef16b76298bb471c575df3a3df1","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.3.0_1767593557361_0.7823202531529307","host":"s3://npm-registry-packages-npm-production"}},"6.4.0":{"name":"@signaltree/ng-forms","version":"6.4.0","_id":"@signaltree/ng-forms@6.4.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"443680d33ccbea39ba2f5b9cc0e434bf2ef81a39","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-6.4.0.tgz","fileCount":19,"integrity":"sha512-xQmkvd1j6aVzRtcTp75H3pFy2Hjqi7ck4D/fdZX1DS4gipx9pyEcdMdMiJl+qgbmcqEVjlZOlGOMAZEgexOtNg==","signatures":[{"sig":"MEUCIFNgL9tRocEW14fn/Yx1HzF9mwALLLkQ1/gxPEb79WBqAiEAmE5mWelEUX44srUGzp6dFkRnrGDUn/3tOtQtmBCb/Vo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23392},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"e4c3b6804e1f4a172a3a08b26da13f66e59ea9b0","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^6.0.0","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^6.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_6.4.0_1767682638498_0.45029043901659627","host":"s3://npm-registry-packages-npm-production"}},"7.0.0":{"name":"@signaltree/ng-forms","version":"7.0.0","_id":"@signaltree/ng-forms@7.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"d833fd6415d363ee404a9573ffcb66c3885acc73","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.0.0.tgz","fileCount":20,"integrity":"sha512-K431DkObNQhtlZTiorTSFe1EMt1CMLO7srOPBEJZ6rJq3BD+PZNnLS1b/4C1R141FY4lz9CEFJA1N9rTc2VxpQ==","signatures":[{"sig":"MEUCIGs2DkhGcdpUoxjtVG5/TqdQ3mMwTNF77LA/fBiBYauQAiEApB9Qf3tN0v2CO3hIrJN+4s84fhR/pbQ34gN3PoN2BX0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26261},"main":"./dist/index.js","type":"module","_from":"file:signaltree-ng-forms-7.0.0.tgz","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_resolved":"/private/var/folders/rq/j_cb8q_538sbvjlg2bzwyts40000gn/T/cb2b9557b72e2bdfe2dd42ebe5be1c03/signaltree-ng-forms-7.0.0.tgz","_integrity":"sha512-K431DkObNQhtlZTiorTSFe1EMt1CMLO7srOPBEJZ6rJq3BD+PZNnLS1b/4C1R141FY4lz9CEFJA1N9rTc2VxpQ==","_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^7.0.0","@signaltree/shared":"^7.0.0","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^7.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.0.0_1767727334899_0.4621315424829435","host":"s3://npm-registry-packages-npm-production"}},"7.1.0":{"name":"@signaltree/ng-forms","version":"7.1.0","_id":"@signaltree/ng-forms@7.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"b7530360d47905bd5f966328afc86494e226cc90","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.1.0.tgz","fileCount":19,"integrity":"sha512-oMhis0fSIT8T32cIeTP9MP3dSTrenpnfqjZhUiQhtFuIJCBUEJB0to3W7m0eQIjeqsQxnuzOKydxxR0TzT2KrQ==","signatures":[{"sig":"MEQCIDZUnbwmyKpMR7EmAd984AJjdvR7WTf5aSpunClle8XaAiB9L4od26m5Ee1v5feANnMyR8zTeSKdoPxYPcHLsfr7ew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23387},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"f88b6e388f75eb6de4179992ffe15c21dc6defae","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^7.1.0","@signaltree/shared":"^7.1.0","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^7.1.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.1.0_1767730532201_0.4241603562560139","host":"s3://npm-registry-packages-npm-production"}},"7.1.1":{"name":"@signaltree/ng-forms","version":"7.1.1","_id":"@signaltree/ng-forms@7.1.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9064c8bf30abe70a561c8cb9692b5f6ee77a6164","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.1.1.tgz","fileCount":19,"integrity":"sha512-JaBAUuy+4GqXui4Qn4F45ikpvQun0fbiPFviEI4gDVtYcxVvsXuQdX44vGIBUeh/maUvnbrNxnp3AdKH4c7Wnw==","signatures":[{"sig":"MEYCIQD3mHzXQtPwyTtxLBgwZEMB9yOyF52ciwanup+7L9IXKAIhAM2pZcCvGSVlnUsnpig8eSsr7c+BPLP62DV4SmiKRgwD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23402},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"df0619bf9fb6e025bcb5f25bbcdcca8ce8bff3d1","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.1.1_1767845833092_0.7824857680607011","host":"s3://npm-registry-packages-npm-production"}},"7.1.2":{"name":"@signaltree/ng-forms","version":"7.1.2","license":"MIT","_id":"@signaltree/ng-forms@7.1.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"911b985ebf94cb03a87edd629e562961a4857e1f","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.1.2.tgz","fileCount":19,"integrity":"sha512-f5f/0PfHAkCsS2K/sXiVl/J+2rSBnSOdX0I3ibt3qU4UVM7sTKwUW8dz5aQ+JtaDKVn9FoUyvPMA/RMcQdKGxw==","signatures":[{"sig":"MEUCIQDypvzzwiFvSMJtsQ3NOSBvL8ssOljepNa22+7HO/yTjQIgIzmY0bTZ7lpKAS/UnY1H6/4SLLBn5ftglR5rjfZliFs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23422},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"b8a488aa8a42a7d9bee888db05fd94ded108f10f","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.1.2_1767847694498_0.11407045235961144","host":"s3://npm-registry-packages-npm-production"}},"7.1.3":{"name":"@signaltree/ng-forms","version":"7.1.3","license":"MIT","_id":"@signaltree/ng-forms@7.1.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"0d6afaa94b1fb2739626589ee3615460e1e78a28","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.1.3.tgz","fileCount":19,"integrity":"sha512-OHoOB2fWr3+zIMO2ob1QhkjaU2MhOu6D7ii+zO8AVVqpXZmS2o+VDR5KAklpWv+teniNJBrcR/ToEspAlPWl9Q==","signatures":[{"sig":"MEUCIQCfLe2O8oxmWmm0YLlHn6lbDyQdtpEDAyoU2+2B1/QWawIgI74Yo5Uqg4tQb3hX8y+hOHAiw+1XurrE21BjWCaW0XM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23422},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"4ed960f373b82210bd2ca7bb01700f47d60717cd","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Complete Angular forms integration for SignalTree. FormTree creation, custom directives, validators, form state tracking, and RxJS bridge.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.1.3_1768249549906_0.26239248366721224","host":"s3://npm-registry-packages-npm-production"}},"7.1.4":{"name":"@signaltree/ng-forms","version":"7.1.4","license":"MIT","_id":"@signaltree/ng-forms@7.1.4","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"abed19631606f3fbe6aa4c0e6460205266951f85","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.1.4.tgz","fileCount":2,"integrity":"sha512-Fiprekbq8u4uTmGVA3ZBZ51QW99+BLRQwY3D0nu8F7yUcsxzbbUWnPXRYy8R9G9+136UXYctnhL3B9zhsqYniA==","signatures":[{"sig":"MEYCIQDrLb9DQxCg1dF+CXAD7uk19r8Cta9JRcEqHzAFM8kU+wIhAOs9J/1OiQ6yloR2TyXKbz/Mx5GwuY7J9QC/3pOQ++8P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12998},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"174bf6e1d8e1ac5c2d4aca797d7e1fb5a3846130","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.1.4_1768585988180_0.6977497298166149","host":"s3://npm-registry-packages-npm-production"}},"7.3.0":{"name":"@signaltree/ng-forms","version":"7.3.0","license":"MIT","_id":"@signaltree/ng-forms@7.3.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9b6780356d6c408bf4f13c1326604aabe5bd0dd5","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.3.0.tgz","fileCount":20,"integrity":"sha512-lisn3OzF9Dfayi5FDxn2ZuEjLMbw5AogjD5ZROkM0gzsAmWpeymYWxsBbxIkruiNaVQ0sDoDcUwYGvjpWVAm4g==","signatures":[{"sig":"MEUCIQCv+RrNUxgDl0aLlNgM7iPIhBenKtGS8hrfZirhBpNczAIgYg6prhMSjVzZUCSrPeRjczLcORQjzWsCRPwVd3+qif8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33129},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"a75493336c7532cc20ea5cf85fec490ae2172777","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.3.0_1768688660729_0.6964964998703347","host":"s3://npm-registry-packages-npm-production"}},"7.3.1":{"name":"@signaltree/ng-forms","version":"7.3.1","license":"MIT","_id":"@signaltree/ng-forms@7.3.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"12b111bea44cba9423e88fe0824f4b9edf1041ff","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.3.1.tgz","fileCount":2,"integrity":"sha512-efTh2TRUMmrgk6O/zmoQQJ2iQ8ITGSpjGOxKm9zNisegcQmGGrbvZkP7zTtlpnagZUq2OpIDvOfH6/Q24w6TvA==","signatures":[{"sig":"MEUCIC1/wtc0Ypr9hY9UiQdWZjaPtiIQbplmTpne3vWXG3ZuAiEA+p/yuamvOaF2+R+fkXPpnv2oWdt9x1orvpw2aOZjo0E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16981},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"d9faf2555cee5a4ecbb49d97002fc03fd4c49735","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"deprecated":"Broken release - missing dist files. Use 7.3.2 instead","_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.3.1_1770270558759_0.8351409669972927","host":"s3://npm-registry-packages-npm-production"}},"7.3.2":{"name":"@signaltree/ng-forms","version":"7.3.2","license":"MIT","_id":"@signaltree/ng-forms@7.3.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"25607c6db9fb5aad6b7774fe9aad339d8405495b","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.3.2.tgz","fileCount":35,"integrity":"sha512-eHHEYcw1DVoM11btwLeueEMdoPmZBNVM3ki7+gW2skcqPRbbFpSsk8eigKMO1EBb/anrWQZku779a3dK9/2w7g==","signatures":[{"sig":"MEUCIQDT0nXLU0XdUfocBFFrmHOcJ4XhS1y7DXd9gftmiOJ7mAIgKW4ppJb3jwI7+dOMs3mDTcjIlZVHBAz+9OXR40NvNNI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78101},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"d9faf2555cee5a4ecbb49d97002fc03fd4c49735","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.3.2_1770270674161_0.6860021207619247","host":"s3://npm-registry-packages-npm-production"}},"7.3.3":{"name":"@signaltree/ng-forms","version":"7.3.3","license":"MIT","_id":"@signaltree/ng-forms@7.3.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"f7f51dfe97fe74ea851f78d0d103caf0c5c6d184","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.3.3.tgz","fileCount":35,"integrity":"sha512-rr6+bual4pNuQJ7KUd+0CMUC5r64bpv5dRMr3gSjDg+ivNWqQCZbFEruUoEdxJyUeMAIQYwJXQKz/0vFlZ/A5Q==","signatures":[{"sig":"MEQCIAp4u2Q1UZHxEBXfICSBimkVTJAAs5s/+HkG6rbzR2rzAiAw06wUSPMJJuS54OJf35KrJJzw8B8a6hs2xe/AL2+RQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78431},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"e5d2d479df5a418463bfc0de8c49eb7f7f13a5ec","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.3.3_1770271618384_0.26014886056693687","host":"s3://npm-registry-packages-npm-production"}},"7.3.4":{"name":"@signaltree/ng-forms","version":"7.3.4","license":"MIT","_id":"@signaltree/ng-forms@7.3.4","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"014698ceedc08db1dadbdf0bc27b934dae4fb622","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.3.4.tgz","fileCount":35,"integrity":"sha512-A/gU4agUMm9h2mbBbZB7Vmq683B+vlbi4P56Im+moOfVpb5mqsirafp7Jyg1bCMlD354st3v708jz2eAaIPkUw==","signatures":[{"sig":"MEUCIGKU809/qlf9yOxxYM3jf9qI7cUhR3z1ZpzZjPTl4wKHAiEApt3/cZZmer6MoNxg7xeX/7T1e7G9KfSIpaxh+sBaOyM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78431},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"e5d2d479df5a418463bfc0de8c49eb7f7f13a5ec","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.3.4_1770271638082_0.3565856805844285","host":"s3://npm-registry-packages-npm-production"}},"7.6.0":{"name":"@signaltree/ng-forms","version":"7.6.0","license":"MIT","_id":"@signaltree/ng-forms@7.6.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"63581f7dd053f68d578a9dc2716582fa9201386c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.6.0.tgz","fileCount":35,"integrity":"sha512-Yca9IXrrXcDtYukU634f2n2a+5jivOqxNUZgFaTlqutu0ztlCl7eDYkwssATEZTcufVHN33NxGsEtjNOnCV9LQ==","signatures":[{"sig":"MEUCIQCYeQPw50s8V2iicHnDFN+FEz0u5yhkFJIbGApZJxFSlAIgD/sAhaTyqZGEPceoCjtws2BAuc5cVxy4+wk268yos9s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79980},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"34c1a24a2bde6caf88ba0f2d36c2dee91dc838e6","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.6.0_1771282685178_0.933736991261376","host":"s3://npm-registry-packages-npm-production"}},"7.6.1":{"name":"@signaltree/ng-forms","version":"7.6.1","license":"MIT","_id":"@signaltree/ng-forms@7.6.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"ff79da65fbeb154ef3f5cf7786d2262367d4b9c0","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-7.6.1.tgz","fileCount":2,"integrity":"sha512-jSBPermzP8cMzHlu0Fv7jukSq7UFS5Dz3jYp0zAb3sqjES/tOV1dk7BWbuO5ChrwapIxQeGs25CWNguv246LgA==","signatures":[{"sig":"MEUCIBE/seasoIP7xovYsWmuMhObp7EfcuYx2KVfJxeOau1XAiEA0i0/hpQrEh/SQ5L2vhNQ0uiwUeP/dJOTnRUjHxr85OE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18530},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"419d6830f89393801c6c104a5259db411b095669","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_7.6.1_1771437864670_0.7524093743852691","host":"s3://npm-registry-packages-npm-production"}},"8.0.0":{"name":"@signaltree/ng-forms","version":"8.0.0","license":"MIT","_id":"@signaltree/ng-forms@8.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"47856a833b7461f923563913a00996e1d694ba3b","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-8.0.0.tgz","fileCount":35,"integrity":"sha512-9AtPKzZ266lvu7Vsd0K0D/QZwamTczGBYL+zobO16MSLq7D3Nj+aPLsTyQZuLs0NvmQ2x/6lRzELy+uEO/nbtg==","signatures":[{"sig":"MEYCIQCERjP6vSJSdzZSrF6mDu4g8Ya47he+Ye2PCVPMED+QrwIhAIxsi88h+YtPlk0/1HHcUna6CTUjyJDtKQG0JjeRtNBm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79980},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"9df896f5fe6118c4c25010354a7308b13e91074f","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_8.0.0_1771601770833_0.330290212245254","host":"s3://npm-registry-packages-npm-production"}},"8.0.1":{"name":"@signaltree/ng-forms","version":"8.0.1","license":"MIT","_id":"@signaltree/ng-forms@8.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"17cb8b6244e6f4909176ee87b98f546f503be1f2","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-8.0.1.tgz","fileCount":35,"integrity":"sha512-1lYV1f3H3wBs40HzTJzKI1ylMGxa+uaAqRpRatuLkx5L0ArHNoEst4dBBOyb2JTpTuUQemdzRgdpNR7Uh7G+CA==","signatures":[{"sig":"MEUCIQCMs9tXQSjt5Z9asrvqFA6InbK1WXH5zgbDLBf0zWkNKQIgFgdHSiCnO3LSwllMib1qiHC1DcZTa69VEeLGMRD8ZQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80054},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"6d967e666ec88ceb049075a5b17ba7ac36426264","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_8.0.1_1772230401039_0.2975258816711528","host":"s3://npm-registry-packages-npm-production"}},"8.0.2":{"name":"@signaltree/ng-forms","version":"8.0.2","license":"MIT","_id":"@signaltree/ng-forms@8.0.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"467e311f9e0d60d05dd2adc19d6e3894da039a27","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-8.0.2.tgz","fileCount":35,"integrity":"sha512-5KDOJsL3QCPyNFMDKjDaCVrX3sQE0Mxkcw6j/d7rdkd3BzBhacEasiqPwB4uLsGH5QboJQNXTx2pWbGRNm/Epg==","signatures":[{"sig":"MEYCIQDX3T/2ocWLFF/lceyBihBo709QDXfRFEOXSwQou8E03QIhAK7LFeRRwB9mMC1/Z+7fHxaJR4V6TgeLRYnzAYwr7vGD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80054},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"99fe6460299b9577696d265ac437ecdae8af7f40","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_8.0.2_1772835920814_0.800111080942199","host":"s3://npm-registry-packages-npm-production"}},"9.0.0":{"name":"@signaltree/ng-forms","version":"9.0.0","license":"MIT","_id":"@signaltree/ng-forms@9.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"676bc91f50f3d503700212d38387c61a55c0c721","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.0.0.tgz","fileCount":35,"integrity":"sha512-zqP8mNQ3s3VxxC8Q6dgSFg1qvfgx1M5Aeoj3R5SXR2fbzmBjaO2uaOceu/75EAJiVAylTjwLaoW5cTach70LrA==","signatures":[{"sig":"MEYCIQDJnUyAZP4m8xJ6scEMJOyRqV6J1yT5zkCI69z4b6eqygIhAKJZwgkUU5aLpfw5wM/CdFZjsxKcsfET9xSK87VaRtKM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80039},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"566a0065f82355b9ab68010b4c85faefe5645662","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"^9.0.0","@signaltree/shared":"^9.0.0","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"^9.0.0"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.0.0_1776272332489_0.5977332315921446","host":"s3://npm-registry-packages-npm-production"}},"9.0.1":{"name":"@signaltree/ng-forms","version":"9.0.1","license":"MIT","_id":"@signaltree/ng-forms@9.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"726067b1bf274f70e118c1a79eedb9cde1854150","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.0.1.tgz","fileCount":35,"integrity":"sha512-hqEOMtG1LLchRwMxTmlj+l5xpnNlQWbnD+VBNqI14SD3A0tvElhqeDwH/N2X4lP0kX/aFN+I/hq82H50x5zgdw==","signatures":[{"sig":"MEUCIDKr0WOK196L3lBPnViHM0cFEpDyTpO693GbgA/qk1NoAiEAkN2Xo7Q7l3kNAvZ0Y1yyEHv25zu240Jd/CM8b0g6hu4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80011},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"e95c61bddcca42ad5eac5c65948fc2fa9158b7a8","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.0.1_1776926492085_0.7743545943891952","host":"s3://npm-registry-packages-npm-production"}},"9.1.0":{"name":"@signaltree/ng-forms","version":"9.1.0","license":"MIT","_id":"@signaltree/ng-forms@9.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"d56d20c138f9c0e2818186970848940d381c593d","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.1.0.tgz","fileCount":35,"integrity":"sha512-hocN+g2bZGkek/zxT2n5gWQ5V9VUeIupDg32lDGqV5/rlddHYtIWakaUKOdtoFS1Ycoy0gOUhuzdWvC85O4k/Q==","signatures":[{"sig":"MEQCIBuUOrpDzAO9V36m0os/Ecwq2Zci7GYJ3VUTLhTrm4ekAiAapkxiiPnbf5XpexVswlfqYAl+Fg0cHhedDTTy172PKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80011},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"957c43166ac066ba25338b5bf1ddef29667c5dec","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0","@angular/forms":"^20.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.1.0_1776953062264_0.09577553431294072","host":"s3://npm-registry-packages-npm-production"}},"9.2.0":{"name":"@signaltree/ng-forms","version":"9.2.0","license":"MIT","_id":"@signaltree/ng-forms@9.2.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"fa56d6dd25109c61ffffdbc3eca5d7ead26a6349","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.2.0.tgz","fileCount":35,"integrity":"sha512-KjJHhcXpmRwlx5ZYTFt8oi27QN/KXVxo37yveDKFio6r34HlI9FvW6T2zzE9eZ45TXz+lGG5g1ygFqzY2K6xRw==","signatures":[{"sig":"MEUCIQCKqyK5ZcObDZzUApdoSZljfWX1EqaGFL4QDOUmpM3JVwIgAL7d6hzqXXngTenTRhrT7VcPXqAw/pYgb+MJ7tz/kTY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80052},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"38d55a87f1926f427ced78cc1595c26b13da0ea6","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0","@angular/forms":"^20.0.0 || ^21.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.2.0_1777313231955_0.506962495858281","host":"s3://npm-registry-packages-npm-production"}},"9.2.1":{"name":"@signaltree/ng-forms","version":"9.2.1","license":"MIT","_id":"@signaltree/ng-forms@9.2.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"13bd29e12a0edc02f78462a7127f717cfc9a0bdb","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.2.1.tgz","fileCount":35,"integrity":"sha512-zocG23yi77m2ZOa6c4DpsuY5UWuBudiD1avKz2AOeZ+pj4ZW6AnLBxgvYwOjXoepKsu2cL4g0szYM/1zhWlWAg==","signatures":[{"sig":"MEQCIBSpa8U7QJhorwe9diH0t5RFCidnGQZ9F9Nwy+TY3bqhAiBdXjknj6GVPF6Vhb80iAFnWmDJn7u8nzFdecMy9kDz5Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80052},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"78f3043f34ba517550812a70ac3440a2cced4793","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0","@angular/forms":"^20.0.0 || ^21.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.2.1_1777472025258_0.8283220136772282","host":"s3://npm-registry-packages-npm-production"}},"9.2.2":{"name":"@signaltree/ng-forms","version":"9.2.2","license":"MIT","_id":"@signaltree/ng-forms@9.2.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"23e317daabdac16968c3a213e096cb4e267f7c2c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.2.2.tgz","fileCount":35,"integrity":"sha512-yJMv4xsLGdozIq/DWWfHFFlWhIn1EpyujQPN1DGFx98uarcUW8LoAiJF68TfFWKJdTK1CJ5wWqNNB3c5BFhCfA==","signatures":[{"sig":"MEUCIDEbPbj1sY9VVCib5jfaOSOB384cAG+YrJULndBEht7LAiEA/CekuLwENWKXjb/uw1js0P3DRPP74nLIoBoDkE0fjwA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80052},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/index.d.ts","import":"./dist/audit/index.js","default":"./dist/audit/index.js"}},"gitHead":"f470480b2e3c1d544698eff11003df6be8799960","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0","@angular/forms":"^20.0.0 || ^21.0.0","@signaltree/core":"workspace:*"},"peerDependenciesMeta":{},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.2.2_1777500267899_0.6768749902072864","host":"s3://npm-registry-packages-npm-production"}},"9.3.0":{"name":"@signaltree/ng-forms","version":"9.3.0","license":"MIT","_id":"@signaltree/ng-forms@9.3.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"86c787c442ea28a6a52a07f50d82ac90de4a0478","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.3.0.tgz","fileCount":39,"integrity":"sha512-m7nn1v8L/dPHl2WpmyRNinNxOs0Vl9gH/OPM46bRBFGplBh1/yDRCZ2kepfOnOtvXCfJ87PfaiZvCfZX0JzRWA==","signatures":[{"sig":"MEUCIQDrpk0+C0VEa8Rj8hQjvRhvtIJpN2ETq/f7bM0fxtZ1TQIgCE5+iZL6I7GfMHe5CQxVOVwydSIrGpossMdNjCP/4wk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84254},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"320b2576a91fe13507d3d604e37d66f472b68066","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.3.0_1780008174593_0.40567537932638564","host":"s3://npm-registry-packages-npm-production"}},"9.5.0":{"name":"@signaltree/ng-forms","version":"9.5.0","license":"MIT","_id":"@signaltree/ng-forms@9.5.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9f0aceffe3e0ebf2af506292331f996873b42356","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.5.0.tgz","fileCount":39,"integrity":"sha512-tNJ8yZ1LYuUT+9CNVIZ3NlAEsURQiQO8yNycSlZRU2vUZlcw1iEte5G9LXGjTAALb4jDB9Jf/iRjn+LYIIuIuQ==","signatures":[{"sig":"MEUCIFLnfxEHPc0KkKfroVkOKgk9i2/Rn6dzZbMMDoCGh9b8AiEA03COKmxVmzrq0rRBR01uq+j80oATozc2Ccivo3+tYBI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84254},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"b488dc4c33fbc1fc90d9090cc1d20545200319d7","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.5.0_1780074341669_0.007725115862009968","host":"s3://npm-registry-packages-npm-production"}},"9.5.1":{"name":"@signaltree/ng-forms","version":"9.5.1","license":"MIT","_id":"@signaltree/ng-forms@9.5.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"8c821ab7f9ee68cc77a1503e32b256084b302fcb","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.5.1.tgz","fileCount":39,"integrity":"sha512-AFh1/bxY5jR15l8Pjv/eNEaOj64FBxNGmbhSFx2FN6pNFhY9L0nN3Ho7dq3QiCB7M1ms22oH9VW/CGP8bGP/8g==","signatures":[{"sig":"MEUCIBj5M1ZqGbJuGX1TireEeUjeohqEJ6ycIfY4SJIFGH+MAiEAl6UN9JYUnNWYAGzdpkjXrKvEAIYLCd9Nu0MC4WynCpQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84254},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"1ded3cbf07c949ad092d495da4a5ad7d257aaf73","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.5.1_1780074609787_0.34882617284716","host":"s3://npm-registry-packages-npm-production"}},"9.5.2":{"name":"@signaltree/ng-forms","version":"9.5.2","license":"MIT","_id":"@signaltree/ng-forms@9.5.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"d839256461ea66479edc703408725cc2df16e23a","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.5.2.tgz","fileCount":39,"integrity":"sha512-YXTNFRD8q8GlAFTMjAEFYINO6HPuqZ4+hxVb/i6/KaC4vRMf5tuRkm/JuJ4zGhA0YoF8rz+UbRraPxF+b7FL+w==","signatures":[{"sig":"MEYCIQCgDURJwRfFZTV5qU8fRQSAOSERKuM3l8BA/02fUwApKwIhAM9RouhuSyxQ8R+Q+cs8AiJvAYycfy4Kv3ABIyQZdGLU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84254},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"d3e678050a18fded54677ec81ae04e6b1e0b285b","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.5.2_1780075619052_0.8963861905037414","host":"s3://npm-registry-packages-npm-production"}},"9.6.0":{"name":"@signaltree/ng-forms","version":"9.6.0","license":"MIT","_id":"@signaltree/ng-forms@9.6.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"2aece1f37407edad59da11428260c2d0f5f5fa17","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-9.6.0.tgz","fileCount":39,"integrity":"sha512-I2rYqoGdWdMf09g+k+lWU7vry4cUV1YIYdpXZeJlWIdgDnH6JQZ9T7XblTH36ywFHeyDk5O8hNYkrE7NeI+mgg==","signatures":[{"sig":"MEYCIQCDrXfiThol6KdTaCgmGIkNA+6GtyaHw6jAmB6ezCCWFQIhAIwxaTHGiRhXT83FXbCTpLu7vKnb8N1G8ZMBFRyq8TrB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84254},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"4418556a5f2d9efbdaa505edc8a36620f51eb186","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_9.6.0_1780077063596_0.9625895043531651","host":"s3://npm-registry-packages-npm-production"}},"10.0.0":{"name":"@signaltree/ng-forms","version":"10.0.0","license":"MIT","_id":"@signaltree/ng-forms@10.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"b3f5a472de04c0f1129875df1d8f587a0c421248","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.0.0.tgz","fileCount":39,"integrity":"sha512-XBLlOd6B6LKuGk11fUHUNuyHdnJYTPGlUyIg8AzgEieKfy/h4865ze7IjxAQuhKs67o4jo+UILHbYT8wXzFZvg==","signatures":[{"sig":"MEUCIAnPaW/cx6x9pglA8B3G2D//zTOI7cn59TadUkciBlF2AiEA3J1QbYALjKNhlWwQe/57sJTH7D2mgqbdGITIIQB6UiA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"2c98ca4591051cd64e7f8a49cd54fcd8bda07f76","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.0.0_1780082416137_0.0930098246425679","host":"s3://npm-registry-packages-npm-production"}},"10.1.0":{"name":"@signaltree/ng-forms","version":"10.1.0","license":"MIT","_id":"@signaltree/ng-forms@10.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"6cf801b2542c87ae2a34ef455c9dea605bc96076","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.1.0.tgz","fileCount":39,"integrity":"sha512-uqmeQkS41avrT87moLgnN1kEyWjbQ6jLv9K589H4fTWFjsPPYxsykB7VLRaybGTqroSZoWhl5kj2Fy72yZC5iw==","signatures":[{"sig":"MEUCIGZZSxZwImK7sWAtbP/HgN5JmOWigA3/Rvt/0LqncHJtAiEAh38kDXJYOTxUsazJHWvJmYHAEg4ON1y3HLnbknsaX4M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"c4fb49e29def8bce72100b640579ce08ad5e5618","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.1.0_1780083040741_0.3520796334816392","host":"s3://npm-registry-packages-npm-production"}},"10.2.0":{"name":"@signaltree/ng-forms","version":"10.2.0","license":"MIT","_id":"@signaltree/ng-forms@10.2.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"48996bf1a51253bb487ddc3c2e98f7f34884a10f","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.2.0.tgz","fileCount":39,"integrity":"sha512-plSEIelEcAILXl3asvzot4MVSwFO4q/H6I9OdHL36f2/4o1fXjJBSGoiDV+j4HoQRkctKf3BWIC1jnsMBJMsCg==","signatures":[{"sig":"MEUCIAU6VaBBGWmOWlxZ77kO3tp+fKffqBmpEhDQ1Ft0uIXJAiEA5pGLx5GyBoa0U/+xyCDtHGkjcTxVFQU10eQxCgTUoT8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"ca561d4f2bfeab0396ea01dd6e463272aa0fc010","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.2.0_1780091570473_0.07250827753390054","host":"s3://npm-registry-packages-npm-production"}},"10.3.0":{"name":"@signaltree/ng-forms","version":"10.3.0","license":"MIT","_id":"@signaltree/ng-forms@10.3.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"891e1d3cb78d5d28dd5c95a0837b237b49b32e6c","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.3.0.tgz","fileCount":39,"integrity":"sha512-YHXvXALlFqUVTNd0/7aI3rb/8Jtstjw0qLThY1fPY/rnlRG+qRHqJCLAUgXwlm/R2VSUUpfxdMoyHL6oRKmx0Q==","signatures":[{"sig":"MEUCIQCvW+TF3WFLpDTYsdi2OLBadQo3Mw73SJXufOe8C+bIwQIgKlNwoeAOHGt1SDtkKnz0wYasvMoYa88v4MbeEqU68NI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"3f78448207c8c299fa35bb6ff81da9f3e7ecca1e","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.3.0_1780097609394_0.9228673594584784","host":"s3://npm-registry-packages-npm-production"}},"10.3.1":{"name":"@signaltree/ng-forms","version":"10.3.1","license":"MIT","_id":"@signaltree/ng-forms@10.3.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"47160aebb19a2f91e449be1f95f61389a5a63701","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.3.1.tgz","fileCount":39,"integrity":"sha512-5OfznVpAceBEv2UM/8x4eko1PEGWOgExvbF9eRQKiNgCMR12ejC7nc+loIGs8MHaCYAEwXbcEVSB7L7M7Oplag==","signatures":[{"sig":"MEQCIEZVCL2rVSmnzR3VfKTx9KNUqbtJcp+kbH6JqP6K/QCaAiBHroPg5vfEgZO92Np/4pJ3JAyCR0wfLMkjcjI3AbQPBg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"9f793a23d7d842e68aed36a333099b6c6e284398","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.3.1_1780293520099_0.2807381278331029","host":"s3://npm-registry-packages-npm-production"}},"10.3.2":{"name":"@signaltree/ng-forms","version":"10.3.2","license":"MIT","_id":"@signaltree/ng-forms@10.3.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"9d379c7cd8f45ef1ef58fe0982aacf8d86af4707","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.3.2.tgz","fileCount":39,"integrity":"sha512-RTfza9fPk0X3Pj3fdX/hlsxBa5t94AmQLA1+sitDzqRIX8BFd9tRHHk6yienqTu9hCwwbNY8vEryCgljN1xnMg==","signatures":[{"sig":"MEQCICyBOSt8rFpXyblbCpkKqahKGW8w5A4bcv2T17xHYJ+kAiB+NMTQQWq9M3UhhLNqx6nllZbXtxVqU0FXS7hQ7yF3Hg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"05042eb88ef79c447a93ce6708eca95c14e83fc7","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.3.2_1780294446058_0.8064097679500999","host":"s3://npm-registry-packages-npm-production"}},"10.3.3":{"name":"@signaltree/ng-forms","version":"10.3.3","license":"MIT","_id":"@signaltree/ng-forms@10.3.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"c1bb6ca69f8dd961ec9fb0b6ddf383b01167b99e","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.3.3.tgz","fileCount":39,"integrity":"sha512-8u+Go6xlu5j6Cdsg02ACz+wfLcbGtjjmuZxlKJ/+kGQt49JY6kh/yWbBLFqcKplSoKNGZS7Xobi4IEUVKbc39w==","signatures":[{"sig":"MEUCIEhNLdR15aXu7oPOav5qHtrARosbtI+jkCOLV+yh6rFfAiEA/UiuSSWMtoDT2DHRTQWu86WiSo/31dNi/MCUWZOVCEc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"74c0b413ed9c8d738ea261c71ffbd2037003bce6","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.3.3_1780297422503_0.05250544725875117","host":"s3://npm-registry-packages-npm-production"}},"10.4.0":{"name":"@signaltree/ng-forms","version":"10.4.0","license":"MIT","_id":"@signaltree/ng-forms@10.4.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"e958b26c7c7ef44930b3b7aca2394f7042620fda","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.4.0.tgz","fileCount":39,"integrity":"sha512-9NZcHUf0FXQrk1GGGMVTwm1h8D0pgQVHMEHQ0EII2ritdwyLgxr6cRalnBam1TpmrDILr7vDIL1dSFrJIdEZsQ==","signatures":[{"sig":"MEUCIQDs1HEESQGQMTySJJrizXxto0WJN55bL5W5qSPnBTG1ywIgHico09qK9YB2JCmBs/u67aoYu/ZF9+plC8ybtOng4/0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"9c2749a8cc540e4d07a42e84ed7b343912c03f62","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.4.0_1780321727544_0.5155081219073123","host":"s3://npm-registry-packages-npm-production"}},"10.4.1":{"name":"@signaltree/ng-forms","version":"10.4.1","license":"MIT","_id":"@signaltree/ng-forms@10.4.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"7adce8578d2a30c4d984a81927d312de7c2e5a68","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.4.1.tgz","fileCount":39,"integrity":"sha512-dTSDlUo6LAMjIenl2c734GDD4rJOcSnVxSsZAUC/+8osmhikbMBrmQsDjwgU9yKt7eBCVcBxYHoLHJwQcETNbA==","signatures":[{"sig":"MEQCIDE1+k5Oof+kIrnWWyM98VrpCAxYGCIm236/MFEzgj62AiBCYsHdF66OL4/gMHQcZIOQJGKRv8N4m1FmmIkr25C5xg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"d48588c38ec614a57715b279d571a87336b8dd21","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.4.1_1780454142499_0.05614606857351312","host":"s3://npm-registry-packages-npm-production"}},"10.5.0":{"name":"@signaltree/ng-forms","version":"10.5.0","license":"MIT","_id":"@signaltree/ng-forms@10.5.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"ac4696b39208994ac2e1d566ce5c6ddfc432db19","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.5.0.tgz","fileCount":39,"integrity":"sha512-ujHARuwCklhSF+fDESS/XLkOD8hCAzgu+yHNeoyjlAocQPp0/9vLGW5Pns/UahfN2Hnb3ME+HRjECVq+SyTJVw==","signatures":[{"sig":"MEUCIEjNUm5n8b9F+KAlIuZu60khh6dr/kDe96aHjSuTrUm5AiEA4LSWNT1txo7A9BztNDxaXSr9/8e1TfUeKkWZnrOTiZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"305819ff546932c4673f17c1b28ea18c071deb94","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.5.0_1781572684468_0.027076560413041628","host":"s3://npm-registry-packages-npm-production"}},"10.6.0":{"name":"@signaltree/ng-forms","version":"10.6.0","license":"MIT","_id":"@signaltree/ng-forms@10.6.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"dd150066c6e02a5f9bb38b3304e0cb74fe219386","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-10.6.0.tgz","fileCount":39,"integrity":"sha512-d0KGAAofLmCtE7CoECqdGiD1nM9LOhUpaiGq7nwtA9GtVeFZ0JqOEV8cAqB5s+rQOiaKRO+nC7eS73HqDL6cxQ==","signatures":[{"sig":"MEUCIEZiVaJeMhMB1HkCXrZsSO1iAnjRUVhZh0xfM3tWoedBAiEAsHAQ7n4h6hShTQaOzaCFV/qgINl8K7aljaSZf/GD4RY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84255},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"82da022935abe719fa71b08f5d4244b1fba446a9","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_10.6.0_1781580550793_0.8545129575169028","host":"s3://npm-registry-packages-npm-production"}},"11.0.0":{"name":"@signaltree/ng-forms","version":"11.0.0","license":"MIT","_id":"@signaltree/ng-forms@11.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"510eb88a8e9e13bcf186c9905ebab5093c5285f8","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.0.0.tgz","fileCount":39,"integrity":"sha512-JKAIvVnYc0duetca+PbwbxTysdhpMnC0ZIG+4cVxw/qKDVELj4QqJXGwePCu6UcRathIlPsGhapUM33mtF1Yag==","signatures":[{"sig":"MEYCIQCZuEMh503uyk+Oh92vFaAuqs3E5ymAGxlUddUHf53dCAIhAN4coNpLmbWtaLaWHWCFXNcuqBFY6mJiqpf+PgImGpRj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84239},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"9253179e18dc47acf7459938cc209df9e453a560","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.0.0","@signaltree/schema":"^11.0.0","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.0.0_1781707940086_0.6276272130454807","host":"s3://npm-registry-packages-npm-production"}},"11.0.1":{"name":"@signaltree/ng-forms","version":"11.0.1","license":"MIT","_id":"@signaltree/ng-forms@11.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"dist":{"shasum":"5e368d5c4992a855ff125da7cc7fad3fd4229779","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.0.1.tgz","fileCount":39,"integrity":"sha512-clK9KKXNJHLU5ODAkzVvVUdyjup3QzWfVRxbVwYUJtWSHDCEfcPc/+QBzeDCeH7N2HE3/DF5cvn4feM4cKe9ZA==","signatures":[{"sig":"MEUCIB3zPdrYcNE7ynTK+aKRuTYFn4Cw8b4N0eKVVQRpDWQJAiEA83wy29UbGjSGHPocPsdQSN8szBFJn9dcnhi9grk4Doo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84239},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"ec66bc7128b79b37f5b008d0e1af7b0f31c1c8a9","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.0.1","@signaltree/schema":"^11.0.1","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.0.1_1782232626633_0.25429380426393333","host":"s3://npm-registry-packages-npm-production"}},"11.0.2":{"name":"@signaltree/ng-forms","version":"11.0.2","license":"MIT","_id":"@signaltree/ng-forms@11.0.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"64341fb357e486d1b04b5d8564b753ca862bec52","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.0.2.tgz","fileCount":39,"integrity":"sha512-3SkqYRwiFwnvwjsRyHyPrtYoNn3D2c7yqIOXcnkz7b+eMnh3DVfSCuWS28anXtGAP4UYA/Z4/DyTlQ9yqVbCCA==","signatures":[{"sig":"MEUCIH65ZxnodIRH5UFhX6/jQzfLHfXj2JByhRyAlUD4OKrbAiEAwdwB9ZDRZryQe4Xdxy/dec9ozNz8c0epIoj6362JyV0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84543},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"8b478b2f16d682fa1444a3f75b51cfaa7661f326","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.0.2","@signaltree/schema":"^11.0.2","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.0.2_1782234044482_0.6383406004200611","host":"s3://npm-registry-packages-npm-production"}},"11.0.3":{"name":"@signaltree/ng-forms","version":"11.0.3","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.0.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"259386e866f93f7581f17921bf6ce3f29c61f8b8","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.0.3.tgz","fileCount":39,"integrity":"sha512-ICUwQfcN0KZD3UL7aul6Nee/UCefthnKvbIyICUI5xYv+vn6EoUpB61XYWhwQF6qocI2eSWdOQ+Gty/T5kQ5DA==","signatures":[{"sig":"MEQCIBJwRBt/g4h/925rBh7SRIA7V4hzkNGyU5pzauLPpAvrAiA0YHoYfiXtdik7rxFLRbh9VxzXFIMY47jB72oKye+hwA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84656},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"4d48458b46f86b6099aa93f92b00ee1df25c4d0e","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.0.3","@signaltree/schema":"^11.0.3","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.0.3_1782500914192_0.06527786695695048","host":"s3://npm-registry-packages-npm-production"}},"11.1.0":{"name":"@signaltree/ng-forms","version":"11.1.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"d9e3a4351367a7c82e912eb51acc0aac47e21561","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.1.0.tgz","fileCount":39,"integrity":"sha512-Khaa9yzcnUEjdwX1NjYf10Llne7jqYFVUolXnppNMAWjQI3mYiumnLt9mI8/FfJ3f00a66rIoXFkPiRzfI+NuA==","signatures":[{"sig":"MEYCIQDlZPMiNSXljYM41gU6Tjz1XKVFqk69Nvl43mCWw3cxvwIhAJ/nLjGlDi0IJ8JM2sXvZT6KKWmTZw99nIL325oznha0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84656},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"5ee93f1f6d7b095eca4ebd49d1ae2725cb87ac7f","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.1.0","@signaltree/schema":"^11.1.0","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.1.0_1782503046489_0.9513284902425394","host":"s3://npm-registry-packages-npm-production"}},"11.1.1":{"name":"@signaltree/ng-forms","version":"11.1.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.1.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"132dcb2dea605cc89ba0d7506ed841062879c806","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.1.1.tgz","fileCount":39,"integrity":"sha512-+egNCV+eQJeic0HKA67dzxOtGcE3PzaE1Yrr1wjpgAe7dQBENtFYEqVZ8f7tfMZv4B9AauqUizQsf8/Kg7hPsQ==","signatures":[{"sig":"MEYCIQCfkXeBUsQON8bFzB4y6VDQ1SqNzOyadEOYxaOOG2xlBQIhAOEzQhmjUoiE63Kvg7YBS+K1Q6V9YB9LESp0pD5l66wV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84656},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"7a64fcfcfd54090a6f62e893523e07b662be9aaa","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.1.1","@signaltree/schema":"^11.1.1","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.1.1_1782759365783_0.20380960434125717","host":"s3://npm-registry-packages-npm-production"}},"11.2.0":{"name":"@signaltree/ng-forms","version":"11.2.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.2.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"b9f7cf7946f1233b9bb8fce04dba154dbc438949","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.2.0.tgz","fileCount":39,"integrity":"sha512-TZscWuVT27EvVvTIa3/JNZDcF+c1dcQtjqbsHOgeTzCripLUMpydVGEsV4Til7u8eO/AIrLFSkwtXEPvLH8BOg==","signatures":[{"sig":"MEUCIFnGlDBpTl+Xlv3DiWb1svDXcsJu6kcOYHJ2a3EV73yhAiEA9BqE7FPILEvU3iY93KIYwn/LnkLWkLKdVxVZer4dfiM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84656},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"2d09445b0f7ffd2cb5dfe3065c2edfa2bd95321a","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.2.0","@signaltree/schema":"^11.2.0","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.2.0_1784582438910_0.24847653556775917","host":"s3://npm-registry-packages-npm-production"}},"11.3.0":{"name":"@signaltree/ng-forms","version":"11.3.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.3.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"bb9738776091de8c11b63574404c94f394580bb6","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.3.0.tgz","fileCount":39,"integrity":"sha512-yQYAgMXnA1nKBira0vilXU/uk+NBv7iqCm+hMsq0KVe/zHdJo0ywOo+Z5rWJ84H3RrkMcofTHXvamoEBtUi+aA==","signatures":[{"sig":"MEUCIQD8AmTRARBsPECQHW5/aNTE5CZkxPvWXaninwJdMdXPqwIgDS8nQ6if0YyvFUBlcnJExSkSda/pF6CcN2mbRMvlZro=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84656},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"f1bf6887bd2d9e677bf4026801877f121ab6865d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.3.0","@signaltree/schema":"^11.3.0","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.3.0_1784589255374_0.734623628126134","host":"s3://npm-registry-packages-npm-production"}},"11.4.0":{"name":"@signaltree/ng-forms","version":"11.4.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.4.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"8f471f0e6566dfc5cc28fe851d9fb549a397fdda","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.4.0.tgz","fileCount":39,"integrity":"sha512-CkmX/qqJmWPXeKugRWvuqHJKFcmz0u3qudgdjiOfjIUHtsuAPMmvzT4x16T8zJHad3hEgHrNQchTJFmdwE35Ww==","signatures":[{"sig":"MEQCIA7Ck9sG0anPpKkrJ9bA3x7oLyYTkp/u24T25RQLWMgNAiBkhZfc8Xe7iD3QhGQ6uDLtJCgDq759eIDHjtBmUvA1Qw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84656},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"3dea2abf5154570d82f1c5d07ce7078ba103b282","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.4.0","@signaltree/schema":"^11.4.0","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.4.0_1784600972372_0.7159673889474851","host":"s3://npm-registry-packages-npm-production"}},"11.4.1":{"name":"@signaltree/ng-forms","version":"11.4.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.4.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"40175bbc8f54da83ccb052875165cc60a70135b8","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.4.1.tgz","fileCount":39,"integrity":"sha512-hfiaPS7JkFF8FGWhM4N2KEvn/dpPWlSHHjAI987rkmzSngCtp3WkRf1Daj8hpR0K4TkMjw5CUPDrxhZU4UxqJQ==","signatures":[{"sig":"MEUCIDLvMqMhOZnw/iMuGpLIi+pjHfsurnDj8YMek9ex2fjnAiEAv2CzlSp9a6v8ITSur7jrRd1/fWNVwuh96YyI7phFfdY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86569},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"6ac9fec58e2e30374189c74182985f78cb3dfc32","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.4.1","@signaltree/schema":"^11.4.1","@standard-schema/spec":"^1.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true},"@standard-schema/spec":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.4.1_1784683330425_0.7553954457682825","host":"s3://npm-registry-packages-npm-production"}},"11.5.0":{"name":"@signaltree/ng-forms","version":"11.5.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.5.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"433b06cf719767f9bb5208ced922aaa0cbde0581","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.5.0.tgz","fileCount":40,"integrity":"sha512-gJ7J4Z4+giUYV9YO9KRyuhw0947w8XAyOx2YzM9wXfEUvXDk0oN/GkutXkILr0THi43kEi2A7QtqO+hAaQEwNw==","signatures":[{"sig":"MEYCIQCx/LMqRGO2Rb/yuC/taTjcIRImAdNnUIAFeiQVwzHsmgIhAI1JFXJg0gfsd8BD0d4UET+ismU79dWT/jOwFPQI5JoX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89635},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"599476c52780a83fe52f796580f08629e8c16b4c","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.5.0","@signaltree/schema":"^11.5.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.5.0_1784742870220_0.8997116083882821","host":"s3://npm-registry-packages-npm-production"}},"11.5.1":{"name":"@signaltree/ng-forms","version":"11.5.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.5.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"5fff5d18ca88f7251eee89ddb92126969d51e551","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.5.1.tgz","fileCount":40,"integrity":"sha512-9jYdY3ik7gqkA/ztix/gIDB3DoSpoIgWdjzSUntS5OVF9N9w8ljWt86smD6CEPFDdZ4aqxiAEL/cb4XR1cdiRA==","signatures":[{"sig":"MEUCIFzagx16PsPh8AcPdzvoiCB4DN5Z4XBCl/hu04i2hm3zAiEAyUBb3+AC3JFP8XUyBYwAvBZyAiMRl/6bvrdZZMtbTSY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89472},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"33f46f05c00f31f3ed5f9482eebc5e86971a02f5","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.5.1","@signaltree/schema":"^11.5.1"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.5.1_1784754545738_0.5929403850010495","host":"s3://npm-registry-packages-npm-production"}},"11.5.2":{"name":"@signaltree/ng-forms","version":"11.5.2","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.5.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"6b5187593448710f92538f2873d18ae071bc1a2b","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.5.2.tgz","fileCount":40,"integrity":"sha512-WFkJleyRxIttOsAgfH1EW0yuNjNqBUfOlMiXWIp3hG71+bhZYlRnyYnZf6gSpepkl/8OBNZvr6CYzWdXHX3YzQ==","signatures":[{"sig":"MEQCIDh+iQi5vaMGNETfNy5NUmvsXk4fEWDYemdea8WrKy9IAiAQ/8OLRYJGbZBDmZSJrqo6mU/yznNOSu328NSqtKP5vA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89472},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"83288f4a52be1a18542ccd4887c7a96b9132cf5d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.5.2","@signaltree/schema":"^11.5.2"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.5.2_1784758777459_0.031231166503987717","host":"s3://npm-registry-packages-npm-production"}},"11.5.3":{"name":"@signaltree/ng-forms","version":"11.5.3","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.5.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"943d9b5a2487b7eeb06b2603acc2f8b40967f95d","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.5.3.tgz","fileCount":40,"integrity":"sha512-PceuPkhGDj0WDl14MGiZOT3hax05bUJ4TTzJXYNpUQleWcpyqkmn9RaCn7QBHsSqD7PlX4QdQ2e8JtMn/5SLSA==","signatures":[{"sig":"MEUCIQDesFiQ+lOD/QFQgnrlSbgw0eJTPihiGzYGdEcjSSBA/gIgGMav+VMGaNgTgSM4xryjCdebBv+tVKTNS76kiEHA3zA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89472},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"79cde3a72fe449343127c9177fb4c21526729fd9","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.5.3","@signaltree/schema":"^11.5.3"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.5.3_1784759122210_0.7461462826825636","host":"s3://npm-registry-packages-npm-production"}},"11.6.0":{"name":"@signaltree/ng-forms","version":"11.6.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@11.6.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"d71edf09455ee8c88008dc15165314cdd58cf259","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-11.6.0.tgz","fileCount":42,"integrity":"sha512-Y5Pt4GTebYPwKt+PCzlTj1ozf6gtuX8BYevNC+EM7BxgyKXausunV/111MVO5HHZ9V5blx5fIVzRjlcjqjUAtw==","signatures":[{"sig":"MEYCIQDyPixG1DNrbL9RvskmU9uMF7/ovdJMZgG1kM+N+aiLPwIhANljGi3T5ez5atjebFL4QLyCrDlFF7V4LvegyhRWA51X","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95756},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"fec59c596620fcacf6fcb832b76466c6324078ea","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^11.6.0","@signaltree/schema":"^11.6.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_11.6.0_1784838168986_0.057394671081365756","host":"s3://npm-registry-packages-npm-production"}},"12.0.0":{"name":"@signaltree/ng-forms","version":"12.0.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@12.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"e27eeec63764d37325795786255bfed22928f9a5","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-12.0.0.tgz","fileCount":42,"integrity":"sha512-ie72hwu92VlhCJxk0dkGqGCwQb8KE7IO/8aL6moALCRIpDEuDTgNRJGZeFmoOKqcJqMZOItfBc5nCTQPEOF6ig==","signatures":[{"sig":"MEUCIHoKYGGznfjZUWSyadiZGvUmVd2mYTkPuaC8B8jrVpHvAiEAsePHo+dPZh5AU8ENjjpU6OF6N6Og5IL8cEXoVkTCwlg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93776},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"80d2c20d196d49ecc618abbccca41911e25da379","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_12.0.0_1784858004400_0.21124871739237983","host":"s3://npm-registry-packages-npm-production"}},"12.1.0":{"name":"@signaltree/ng-forms","version":"12.1.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@12.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"823914c37b2d0a3d4c5523527a2a6aad52ee7a76","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-12.1.0.tgz","fileCount":42,"integrity":"sha512-b2js5CDz22RRh3+QdLSx+1EVxK8HDJoX9TIiTM60+xYZowGDRdXxUFY5YQulIZdUd6iaNJkq0lCRpRiONrfwfg==","signatures":[{"sig":"MEUCICQumYZV4p0yKQQu6LTlnzTwbjdUoFtvNUIW01HlOiuoAiEAtoIWTunPxM4dOdL07bgP+4IqbytN8aDmMLweOcuAiDY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94254},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"6fd3d5b6a5fed17f612ea35cdc1b0e586c03a42f","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^12.1.0","@signaltree/schema":"^12.1.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_12.1.0_1784914745966_0.17288773720969064","host":"s3://npm-registry-packages-npm-production"}},"13.0.0":{"name":"@signaltree/ng-forms","version":"13.0.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.0.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"19d21940af58fa0da6788ab95bd66b3e3356669d","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.0.0.tgz","fileCount":41,"integrity":"sha512-V7nIY8rtSlvOjLKq9FNFgMs6Y62lsTpxWpP+SoMZD6mLyAmHsBgDHLeZz3ZIsvjrq5HT5Rh8eAS0Yc6/+KnZDw==","signatures":[{"sig":"MEQCIF28wFSnKz8lWRqgjZ4reI5FblNPgJRd2fvJRNVrysFFAiAjkz0FRttLeKH/NZmT3ketnOO502Hh7D5449Mpu+igNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93264},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"40ab3083cae1e7abf91ce822f4500162d6b1e146","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.0.0","@signaltree/schema":"^13.0.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.0.0_1784932387885_0.9169189546160872","host":"s3://npm-registry-packages-npm-production"}},"13.0.1":{"name":"@signaltree/ng-forms","version":"13.0.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.0.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"66b88ba485f06a842feb5b51d3d6ff799ea89229","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.0.1.tgz","fileCount":41,"integrity":"sha512-cLnAvlrw3dOfyNe/x2ZqcGd9ubmD18gsmCto9JbzEpHJK2dhqOtszANA3WmyFklxrj2KQMYnXPgnnOCkYlleuw==","signatures":[{"sig":"MEUCIQCccSzl5005Hbpy26JmUnjfoxukGZTowhaVnkpPdp0QLAIgdo76KFQeZqE++PSiIlwArYjGX9RU0JUTFyU5NTZOMVc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93264},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"dc8b98550905fe80d356a84a762c459ce9094f96","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.0.1","@signaltree/schema":"^13.0.1"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.0.1_1784935109018_0.6548485104465154","host":"s3://npm-registry-packages-npm-production"}},"13.1.0":{"name":"@signaltree/ng-forms","version":"13.1.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.1.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"751e88c01e388733d06d3b3a56d70fba5c6c886b","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.1.0.tgz","fileCount":41,"integrity":"sha512-K704zhQnSCLiUAWKYKpSleVJvPmqavparXlY6MVfy1nkjrt5JzmsLF52SABu+ulCR8GooEd3GEFfZWBdQZ7A6Q==","signatures":[{"sig":"MEQCIA4gqQJ8lgK5aTm+wkh6jRjxVFBtqxeV1o6wkljMYW36AiBA6ZK7SJQXW6XAzCwHyOGgx0+6lzYO4UxinvtgpbF9yg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95352},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"e3af796a2e3a46ad74b35920e120cd9281e2d860","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.1.0","@signaltree/schema":"^13.1.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.1.0_1784937429665_0.3211686007644303","host":"s3://npm-registry-packages-npm-production"}},"13.1.1":{"name":"@signaltree/ng-forms","version":"13.1.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.1.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"25742440e496973b2e6cce5627a4c3b873b4c22a","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.1.1.tgz","fileCount":41,"integrity":"sha512-sg5SrwqUUXEafpGjA4Z4b3+3szrwEAZ/88/iuBdjf+no6uEXmDBTZVE0HIhVv4ueRssPu8GLf2Xmg8wbgzYH1Q==","signatures":[{"sig":"MEUCIQD1bli04pAdrKbH1Pqkh/b+GhszWuxS4r37Rb7mlLvtoAIgB1LvE/JlceVBg25V7r5Q+Bipt+Lu8RVA1cwMlq1+f44=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95352},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"7889a42c9864fef517ab470e2b8deb376cdbdbb2","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.1.1","@signaltree/schema":"^13.1.1"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.1.1_1784941172003_0.7627521684196383","host":"s3://npm-registry-packages-npm-production"}},"13.2.0":{"name":"@signaltree/ng-forms","version":"13.2.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.2.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"23602a5b4f0a4282a4946e05027120da249068b0","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.2.0.tgz","fileCount":52,"integrity":"sha512-pk1Y27pgDQZQWdSGQl71pedNHZYJKlhzyMHzoQVUntHOCYrxP0Nj1fm+Her4MpKRCglyY88w+kaXfZ2h1YZIRQ==","signatures":[{"sig":"MEUCIQCbcEz+ioxxgnJXaAYDrkwmmKi8To+s7/Gkx357lWsUSAIgTYLApTijI9CdVQU19RqRzvlgW96J3nmCXggN297+6SM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":371562},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"2036c40a75bffd63bef567e5dc0112c3612d6ea4","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.2.0","@signaltree/schema":"^13.2.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.2.0_1785287044663_0.4055484120025228","host":"s3://npm-registry-packages-npm-production"}},"13.3.0":{"name":"@signaltree/ng-forms","version":"13.3.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.3.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"a6fc5a62ce71bbe1ea3d6723d683778bcd70beb3","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.3.0.tgz","fileCount":41,"integrity":"sha512-aVHmLl3eVLIJo/LFo7AorjwDstxJfrBfXLYie/jfdoxmQwpO9e8JG48GRClqGH1vcg260IufEC2pfJeetwgjEw==","signatures":[{"sig":"MEYCIQDRdlkm66M92tgzbSdreAD0LHoektkxakq2ypUeDgspjgIhAPYVNtBMNrKV9GgA7rzb73/ci9RFUaM5xs6FpFF/sM+P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95641},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"a2d85671edc2bae002ea4a7aa3e69dfd3407db15","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"deprecated":"13.3.0 has two confirmed defects in stored(): clear()/reload() can be undone by a deferred migration re-persist, and the lifecycle drain registry retains destroyed trees. Upgrade to 13.3.1 or later.","repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.3.0","@signaltree/schema":"^13.3.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.3.0_1785876747079_0.4473304335038151","host":"s3://npm-registry-packages-npm-production"}},"13.3.1":{"name":"@signaltree/ng-forms","version":"13.3.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.3.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"62248bbbf1c1d17fae42b150d76de5451519cb02","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.3.1.tgz","fileCount":41,"integrity":"sha512-I8wpGhf+VqUZIOLPHicJrritlRvv/hiMvRap5A+oeAuYdklYYbvB3UdGv/iMT52Dn+i8xC/Mix/WEr+lFoXC/w==","signatures":[{"sig":"MEQCIEHrTgk93DN5vhFpZLj6fVrB99jImX4TXXVO6U9bSwtlAiBzTuOHSQBFVFyn4H3FExugcMNWffP03TD97Xq8dOC6wg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96051},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"768c97a8b33e675ac51ba4863922db90f9c12e31","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.3.1","@signaltree/schema":"^13.3.1"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.3.1_1785916597706_0.1099345975469388","host":"s3://npm-registry-packages-npm-production"}},"13.4.0":{"name":"@signaltree/ng-forms","version":"13.4.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.4.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"3c77543010d0325cb45375cf34efda35f322e750","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.4.0.tgz","fileCount":41,"integrity":"sha512-APfXYZEdxGeeS4q9c2Ktk+8tGNGXMSd3I4yosTVuMB18GV4ifE5KEB9m1zNrTY5spENNelB1/o9CG5ilZBMJhQ==","signatures":[{"sig":"MEUCIG6T4WxUg1HOHR+KGBnnEPoB5mjGM4gaZAjuErJL3c3NAiEAw/BF7Ilf2RMFXr2UH5vOzm6JfGDcU/IyFTs0pn19J2k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96051},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"2db9055b1769f1b3ce78cc6d10f260103131365d","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.4.0","@signaltree/schema":"^13.4.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.4.0_1785917396896_0.7052933504165948","host":"s3://npm-registry-packages-npm-production"}},"13.5.0":{"name":"@signaltree/ng-forms","version":"13.5.0","license":"BUSL-1.1","_id":"@signaltree/ng-forms@13.5.0","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"fcc14b6ffcf3333c129a725ddf392f32c3900deb","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-13.5.0.tgz","fileCount":41,"integrity":"sha512-GTFvyJd1iTV5kv/XWmQ1AmQP75ouWg8mPpfi66sgFkNezpCbj09UAXYghdUTmGBAd05NGlylz+zYg9S3Udm/xA==","signatures":[{"sig":"MEUCICYDpOteWzZe2ltBWeMVwQLwCjPSqpOy9MWYmAb27TupAiEAzf4GV2HFO/CriW6vNkb0NTetsidA2OWWkdJiz98FVxI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96051},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"a1cde45b5b1989bd4fba3f7615f037ff7668d6a1","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^13.5.0","@signaltree/schema":"^13.5.0"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_13.5.0_1785987507914_0.15028597353189665","host":"s3://npm-registry-packages-npm-production"}},"14.0.0-rc.1":{"name":"@signaltree/ng-forms","version":"14.0.0-rc.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@14.0.0-rc.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"ad9285df17cd147e7d33cd02808a79bb01ddb024","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-14.0.0-rc.1.tgz","fileCount":52,"integrity":"sha512-1PQv1dg2hSkM67qCIOSQw10TB6qS9eoziqlDIWcUwKgGCBovsMXcNUPTTrhE63a6CmJx/jXOqliaOOzi8Bfhvw==","signatures":[{"sig":"MEUCIGikGTW2wOZWkjyKmp/rI4dnA0hcll6i1ImJxCUti45fAiEAjnDhvrFkT3a9FIjgAaVTubsss7Wv+LwJ3/UpkI+eqwk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":381110},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"b254edc10c7db490bc2b7bb7cda8a735db54ab8c","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^14.0.0-rc.1","@signaltree/schema":"^14.0.0-rc.1"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_14.0.0-rc.1_1786118635837_0.009401280848554183","host":"s3://npm-registry-packages-npm-production"}},"14.1.1":{"name":"@signaltree/ng-forms","version":"14.1.1","license":"BUSL-1.1","_id":"@signaltree/ng-forms@14.1.1","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"2ce8ee4078c342315a2345fc1cacb1c38f8f9d28","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-14.1.1.tgz","fileCount":38,"integrity":"sha512-jVaA02YifioD74QjYWJ5HkqzZfimdvh2ljw3CtwlKQ73ZYvj1T5NsE7CMEJqlMxlDWqdMyH+dNPlLQ1t2/PVmw==","signatures":[{"sig":"MEUCIQDUcGLr+tLZvTq5y7rpKakpzDsseuV9OhyjH9Hoie9ANwIgdM4ogbgxIqF83GPZ32YSSxyEGAxsE48Ni/OOmtHgDE4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110053},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"2173071f219c9c8823d29fe442a4e2dd69990974","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^14.1.1","@signaltree/schema":"^14.1.1"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_14.1.1_1786461291134_0.9682082716225455","host":"s3://npm-registry-packages-npm-production"}},"14.1.2":{"name":"@signaltree/ng-forms","version":"14.1.2","license":"Apache-2.0","_id":"@signaltree/ng-forms@14.1.2","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"e23eb213a68114ba0e3a9030de126098856c37ee","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-14.1.2.tgz","fileCount":49,"integrity":"sha512-EUA1iUbO+Eq/Dc2eSNzCcpF/lop/YKgtVn2CROXxk47A+Qdr9zcnEs4n7MzqG536Vlu/n5mPjmmhHY5cQwE9QA==","signatures":[{"sig":"MEUCIEPo7c8kDCTzRSXEB77oAr22VkzyyyCp1L3Nd+IeicGkAiEA/LxeKKZgyrO0l1c72rRlc0RuopkR6aolSnJI5H+7z1M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":396250},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"0007fc32afa6c99ff75af48c3c63a4eb3b30f539","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^14.1.2","@signaltree/schema":"^14.1.2"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_14.1.2_1787002802231_0.7931588289768985","host":"s3://npm-registry-packages-npm-production"}},"14.1.3":{"name":"@signaltree/ng-forms","version":"14.1.3","license":"Apache-2.0","_id":"@signaltree/ng-forms@14.1.3","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"9ebf2124c6a6fd60d5e77e59d2745bf1497e16d4","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-14.1.3.tgz","fileCount":49,"integrity":"sha512-XYiZgCuAeIP4GRRg6jVO417xL70kLwYvMU6FoHmsRzp2zuoAXC/A4rDJFBVwlZZVmXFJwUhC/rmu6Z1rax3pvQ==","signatures":[{"sig":"MEQCIGrD2PDoeuqSaCE43NiBAq1p1/XZJl8HiTAWGxX/o3LFAiBwGwObYxy+0DuEBqtAJi8pXBMNaQ/GwuzkXjyLpzfUcA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":396909},"main":"./dist/index.js","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"gitHead":"8dc0fb1d0dac6ebae98e3b13a565f91cded4c746","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.4.2","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^14.1.3","@signaltree/schema":"^14.1.3"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ng-forms_14.1.3_1787333139858_0.47037102008445153","host":"s3://npm-registry-packages-npm-production"}},"14.1.4":{"_id":"@signaltree/ng-forms@14.1.4","bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"dist":{"shasum":"ef891bf58fcbf54774fa774df412c2836b5fe768","tarball":"https://registry.npmjs.org/@signaltree/ng-forms/-/ng-forms-14.1.4.tgz","fileCount":38,"integrity":"sha512-RggpOJZ0i5PAUTjCr6T5W3eOCo6PLLQFwMaqo5yGlULBtx7AxW0faXwTHRQg4kyzxacO33oHq0zB6/5uxQYQ3A==","signatures":[{"sig":"MEQCID2q3KccH3kimHf7RaobwcvpeQ36U/RP9KuoWdKTffkYAiARHw4GtCBQ3wtz/H8IXLq02iBOy8VicYjKRkRyq9YwZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCf9t3aMepheOobnT351DY+U8JK/wDLdeemS2Zke+VSOAIgUsIkEgqX1EH4FyuM7bzz5jo8Q172m/EUjFWheV6DJKw="}],"unpackedSize":109973},"main":"./dist/index.js","name":"@signaltree/ng-forms","type":"module","types":"./src/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./src/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./audit":{"types":"./src/audit/audit.d.ts","import":"./dist/audit/audit.js","default":"./dist/audit/audit.js"},"./signals":{"types":"./src/signals/index.d.ts","import":"./dist/signals/index.js","default":"./dist/signals/index.js"}},"license":"Apache-2.0","version":"14.1.4","_npmUser":{"name":"counterreset","email":"jonathanborgia@gmail.com"},"homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"_npmVersion":"11.12.1","description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","directories":{},"maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@signaltree/core":"workspace:*","@signaltree/schema":"workspace:*","@signaltree/shared":"workspace:*","jest-preset-angular":"^15.0.3"},"peerDependencies":{"rxjs":"^7.0.0","@angular/core":"^20.0.0 || ^21.0.0 || ^22.0.0","@angular/forms":"^20.0.0 || ^21.0.0 || ^22.0.0","@signaltree/core":"^14.1.4","@signaltree/schema":"^14.1.4"},"peerDependenciesMeta":{"@signaltree/schema":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ng-forms_14.1.4_1790276350681_0.6854251013367365"}}},"time":{"created":"2025-08-12T01:41:09.081Z","modified":"2026-09-24T18:59:11.030Z","1.0.0":"2025-08-12T01:41:09.495Z","1.0.1":"2025-08-12T02:16:17.735Z","1.0.3":"2025-08-12T02:54:11.534Z","1.1.0":"2025-08-13T19:44:14.617Z","1.1.1":"2025-08-13T20:01:07.808Z","1.1.2":"2025-08-14T03:58:10.449Z","1.1.3":"2025-08-14T04:45:33.784Z","1.1.4":"2025-08-14T05:08:16.386Z","1.1.6":"2025-08-14T14:54:10.092Z","1.1.7":"2025-08-19T01:51:21.150Z","1.1.9":"2025-08-22T13:50:01.798Z","2.0.0":"2025-09-04T16:19:47.337Z","2.0.1":"2025-09-04T17:27:16.840Z","2.0.2":"2025-09-04T19:03:23.280Z","2.0.3":"2025-09-05T16:53:00.016Z","2.0.5":"2025-09-05T18:29:57.397Z","3.0.0":"2025-09-18T19:03:40.416Z","3.0.1":"2025-09-22T19:08:04.680Z","3.0.2":"2025-10-10T21:23:05.168Z","3.2.0":"2025-11-03T05:11:05.618Z","4.0.0":"2025-11-03T06:31:00.609Z","4.0.2":"2025-11-05T05:38:12.833Z","4.0.3":"2025-11-05T06:40:45.449Z","4.0.6":"2025-11-05T15:32:09.823Z","4.0.7":"2025-11-06T18:50:10.879Z","4.0.9":"2025-11-07T22:37:48.802Z","4.0.12":"2025-11-12T05:18:26.013Z","4.0.15":"2025-11-13T20:20:22.229Z","4.0.16":"2025-11-15T15:31:56.002Z","4.1.0":"2025-11-19T05:43:34.032Z","4.1.1":"2025-11-20T15:35:56.898Z","4.1.2":"2025-11-21T02:39:33.899Z","4.1.4":"2025-11-28T03:48:16.103Z","4.1.5":"2025-11-30T18:58:42.174Z","4.1.6":"2025-12-04T16:52:19.439Z","4.1.7":"2025-12-04T17:57:57.920Z","4.2.1":"2025-12-05T20:17:03.002Z","5.0.0":"2025-12-12T02:43:50.438Z","5.0.2":"2025-12-15T11:32:54.510Z","5.0.4":"2025-12-16T01:52:57.708Z","5.0.5":"2025-12-16T06:47:16.653Z","5.0.6":"2025-12-16T07:00:06.851Z","5.0.7":"2025-12-16T07:05:37.251Z","5.0.8":"2025-12-16T07:07:27.458Z","5.0.9":"2025-12-16T07:20:52.207Z","5.1.0":"2025-12-16T19:28:31.147Z","5.1.4":"2025-12-22T18:50:48.019Z","5.1.6":"2025-12-23T04:59:07.230Z","6.0.0":"2025-12-31T16:38:05.406Z","6.0.1":"2025-12-31T22:41:14.984Z","6.0.3":"2026-01-02T23:42:24.698Z","6.0.5":"2026-01-03T00:53:49.085Z","6.0.9":"2026-01-03T19:53:24.622Z","6.0.10":"2026-01-03T20:09:18.916Z","6.0.11":"2026-01-03T20:18:16.072Z","6.0.13":"2026-01-03T23:38:33.611Z","6.0.14":"2026-01-04T00:27:24.893Z","6.2.4":"2026-01-04T21:04:53.343Z","6.3.0":"2026-01-05T06:12:37.497Z","6.4.0":"2026-01-06T06:57:18.670Z","7.0.0":"2026-01-06T19:22:15.043Z","7.1.0":"2026-01-06T20:15:32.343Z","7.1.1":"2026-01-08T04:17:13.245Z","7.1.2":"2026-01-08T04:48:14.640Z","7.1.3":"2026-01-12T20:25:50.041Z","7.1.4":"2026-01-16T17:53:08.331Z","7.3.0":"2026-01-17T22:24:20.871Z","7.3.1":"2026-02-05T05:49:18.898Z","7.3.2":"2026-02-05T05:51:14.293Z","7.3.3":"2026-02-05T06:06:58.535Z","7.3.4":"2026-02-05T06:07:18.269Z","7.6.0":"2026-02-16T22:58:05.317Z","7.6.1":"2026-02-18T18:04:24.836Z","8.0.0":"2026-02-20T15:36:11.005Z","8.0.1":"2026-02-27T22:13:21.180Z","8.0.2":"2026-03-06T22:25:20.972Z","9.0.0":"2026-04-15T16:58:52.634Z","9.0.1":"2026-04-23T06:41:32.232Z","9.1.0":"2026-04-23T14:04:22.440Z","9.2.0":"2026-04-27T18:07:12.117Z","9.2.1":"2026-04-29T14:13:45.481Z","9.2.2":"2026-04-29T22:04:28.116Z","9.3.0":"2026-05-28T22:42:54.736Z","9.4.0":"2026-05-29T15:40:31.895Z","9.5.0":"2026-05-29T17:05:41.919Z","9.5.1":"2026-05-29T17:10:09.943Z","9.5.2":"2026-05-29T17:26:59.206Z","9.6.0":"2026-05-29T17:51:03.755Z","10.0.0":"2026-05-29T19:20:16.304Z","10.1.0":"2026-05-29T19:30:40.918Z","10.2.0":"2026-05-29T21:52:50.665Z","10.3.0":"2026-05-29T23:33:29.540Z","10.3.1":"2026-06-01T05:58:40.221Z","10.3.2":"2026-06-01T06:14:06.199Z","10.3.3":"2026-06-01T07:03:42.632Z","10.4.0":"2026-06-01T13:48:47.696Z","10.4.1":"2026-06-03T02:35:42.706Z","10.5.0":"2026-06-16T01:18:04.653Z","10.6.0":"2026-06-16T03:29:10.941Z","11.0.0":"2026-06-17T14:52:20.213Z","11.0.1":"2026-06-23T16:37:06.785Z","11.0.2":"2026-06-23T17:00:44.674Z","11.0.3":"2026-06-26T19:08:34.337Z","11.1.0":"2026-06-26T19:44:06.634Z","11.1.1":"2026-06-29T18:56:05.940Z","11.2.0":"2026-07-20T21:20:39.036Z","11.3.0":"2026-07-20T23:14:15.510Z","11.4.0":"2026-07-21T02:29:32.511Z","11.4.1":"2026-07-22T01:22:10.597Z","11.5.0":"2026-07-22T17:54:30.355Z","11.5.1":"2026-07-22T21:09:05.867Z","11.5.2":"2026-07-22T22:19:37.615Z","11.5.3":"2026-07-22T22:25:22.366Z","11.6.0":"2026-07-23T20:22:49.132Z","12.0.0":"2026-07-24T01:53:24.622Z","12.1.0":"2026-07-24T17:39:06.155Z","13.0.0":"2026-07-24T22:33:08.041Z","13.0.1":"2026-07-24T23:18:29.165Z","13.1.0":"2026-07-24T23:57:09.810Z","13.1.1":"2026-07-25T00:59:32.187Z","13.2.0":"2026-07-29T01:04:04.811Z","13.3.0":"2026-08-04T20:52:27.232Z","13.3.1":"2026-08-05T07:56:37.841Z","13.4.0":"2026-08-05T08:09:57.049Z","13.5.0":"2026-08-06T03:38:28.089Z","14.0.0-rc.1":"2026-08-07T16:03:55.980Z","14.0.0":"2026-08-10T15:29:32.097Z","14.1.0":"2026-08-11T15:06:44.956Z","14.1.1":"2026-08-11T15:14:51.275Z","14.1.2":"2026-08-17T21:40:02.380Z","14.1.3":"2026-08-21T17:25:40.024Z","14.1.4":"2026-09-24T18:59:10.763Z"},"bugs":{"url":"https://github.com/JBorgia/signaltree/issues"},"license":"Apache-2.0","homepage":"https://github.com/JBorgia/signaltree/tree/main/packages/ng-forms#readme","repository":{"url":"git+https://github.com/JBorgia/signaltree.git","type":"git","directory":"packages/ng-forms"},"description":"Angular forms as reactive JSON. Seamless SignalTree integration with FormTree creation, validators, and form state tracking.","maintainers":[{"name":"counterreset","email":"jonathanborgia@gmail.com"}],"readme":"# @signaltree/ng-forms\n\n<!-- measured: gzip of the package's own emitted chunks in dist/packages/ng-forms/dist, excluding tslib; the exact command is shown below. Not produced by a tools/ script because no per-package size generator exists — tools/size-report.mjs covers core scenarios only. -->\n\n**Angular FormGroup bridge for SignalTree's `form()` marker**. Adds reactive forms integration, conditional fields, and undo/redo to tree-integrated forms.\n\n**Bundle size:** the package's own code is **12.15 KB gzip** across its 19\nchunks. What you actually pay is less and depends on which entry points you\nimport, because the package is chunked per feature — importing the form bridge\nalone does not pull in the wizard or history chunks.\n\n```sh\nfind dist/packages/ng-forms/dist -name '*.js' ! -name 'tslib*' \\\n  | xargs cat | gzip -9 -c | wc -c\n```\n\nThis line previously read \"3.38KB gzipped\" with no statement of what was\nmeasured. A single number here cannot be right for every import shape, so it\nis stated as a ceiling with the method beside it.\n\n## Architecture: form() + formBridge()\n\nSignalTree provides a layered forms architecture:\n\n```\n@signaltree/core                    @signaltree/ng-forms\n┌─────────────────────────┐         ┌─────────────────────────┐\n│ form() marker           │         │ formBridge()            │\n│ ─────────────────────── │   ───►  │ enhancer that:          │\n│ • Signal-based fields   │         │ • Creates FormGroup     │\n│ • Sync/async validators │         │ • Bidirectional sync    │\n│ • Persistence           │         │ • Conditional fields    │\n│ • Wizard navigation     │         │ • Angular validators    │\n│ • dirty/valid/submitting│         └─────────────────────────┘\n│ • history() undo/redo   │\n│   (v13+, on the marker) │\n└─────────────────────────┘\n     Works standalone!\n```\n\n(`withFormHistory()` in `@signaltree/ng-forms` still exists but is\n`@deprecated` since v13 — scoped to the legacy `createFormTree()`/`FormGroup`\nsubstrate. See \"Form history snapshots\" below.)\n\n**Key insight**: `form()` is self-sufficient. `formBridge()` adds Angular-specific capabilities.\n\n## Quick Start\n\n### Standalone signal-form pattern\n\n```typescript\nimport { signalTree, form } from '@signaltree/core';\nimport { ngFormValidators } from '@signaltree/ng-forms';\n\nconst tree = signalTree({\n  login: form({\n    initial: { email: '', password: '' },\n    validators: { email: ngFormValidators.email() },\n  }),\n});\n\ntree.$.login.$.email.set('user@test.com');\ntree.$.login.valid();\ntree.$.login.validate();\n```\n\nThis is the smallest working setup. It uses only `form()` and keeps everything\nin signal land.\n\n### Angular bridge pattern (recommended when you need `FormGroup` interop)\n\n```typescript\nimport { signalTree, form } from '@signaltree/core';\nimport { formBridge } from '@signaltree/ng-forms';\n\n// Define forms in your tree\nconst tree = signalTree({\n  checkout: {\n    shipping: form({\n      initial: { name: '', address: '', zip: '' },\n      validators: {\n        zip: (v) => (/^\\d{5}$/.test(String(v)) ? null : 'Invalid ZIP'),\n      },\n      persist: 'checkout-shipping',\n    }),\n    payment: form({\n      initial: { card: '', cvv: '' },\n      wizard: { steps: ['card', 'review'] },\n    }),\n  },\n}).with(\n  formBridge({\n    conditionals: [{ when: (v) => v.checkout.sameAsBilling, fields: ['checkout.shipping.*'] }],\n  })\n);\n\n// Use in components\n@Component({\n  template: `\n    <!-- Option 1: Use form() signals directly -->\n    <input [value]=\"tree.$.checkout.shipping.$.name()\" (input)=\"tree.$.checkout.shipping.$.name.set($event.target.value)\" />\n\n    <!-- Option 2: Use Angular FormGroup -->\n    <form [formGroup]=\"shippingForm\">\n      <input formControlName=\"name\" />\n    </form>\n  `,\n})\nclass CheckoutComponent {\n  tree = inject(CHECKOUT_TREE);\n\n  // Get the FormGroup bridge\n  shippingForm = this.tree.getAngularForm('checkout.shipping')?.formGroup;\n}\n```\n\nThis example is intentionally wider in scope than the standalone one because it\nadds Angular `FormGroup` interop via `formBridge()`.\n\n## When to Use Each Layer\n\n### form() alone (no ng-forms needed)\n\n```typescript\nimport { signalTree, form } from '@signaltree/core';\nimport { ngFormValidators } from '@signaltree/ng-forms';\n\n// Pure signal forms - works without Angular forms module\nconst tree = signalTree({\n  login: form({\n    initial: { email: '', password: '' },\n    validators: { email: ngFormValidators.email() },\n  }),\n});\n\n// Full functionality without Angular FormGroup\ntree.$.login.$.email.set('user@test.com');\ntree.$.login.valid(); // Reactive validation\ntree.$.login.validate(); // Trigger validation\ntree.$.login.submit(fn); // Submit handling\ntree.$.login.wizard?.next(); // Wizard navigation (if configured)\n```\n\n**Use when**: SSR, unit tests, simple forms, non-Angular environments\n\n### form() + formBridge()\n\n```typescript\n// Add Angular FormGroup bridge\nconst tree = signalTree({\n  profile: form({ initial: { name: '' } }),\n}).with(formBridge());\n\n// Now you get FormGroup access\nconst formGroup = tree.getAngularForm('profile')?.formGroup;\n// Or attached directly: (tree.$.profile as any).formGroup\n```\n\n**Use when**: Need `[formGroup]` directives, Angular validators, conditional field disabling\n\n### form() + history() — undo/redo (v13+; supersedes `withFormHistory`)\n\n```typescript\nimport { signalTree, form, history } from '@signaltree/core';\n\nconst tree = signalTree({\n  editor: form<{ content: string }>({\n    initial: { content: '' },\n    history: history({ capacity: 50 }),\n  }),\n});\n\ntree.$.editor.history?.undo();\ntree.$.editor.history?.redo();\ntree.$.editor.history?.canUndo(); // Signal<boolean>\n```\n\n**Use when**: Complex editors, need undo/redo. This is a `@signaltree/core`\nfeature — `formBridge()`/ng-forms are not required — and it also drives a\nbound `signalForm()` Signal Forms field tree, which the legacy\n`withFormHistory()` (below) structurally cannot do.\n\n## Installation\n\n```bash\npnpm add @signaltree/core @signaltree/ng-forms\n```\n\n> **Compatibility**: Angular 20+ with TypeScript 5.5+ for the classic package; Angular 22+ for the `@signaltree/ng-forms/signals` subpath (stable Signal Forms bridges). Works alongside Angular's native Signal Forms—use both where appropriate.\n\n## Quick start\n\n```typescript\nimport { Component } from '@angular/core';\nimport { createFormTree, ngFormValidators } from '@signaltree/ng-forms';\n\n@Component({\n  selector: 'app-profile-form',\n  template: `\n    <form [formGroup]=\"profile.form\" (ngSubmit)=\"save()\">\n      <input formControlName=\"name\" placeholder=\"Name\" />\n      <span class=\"error\" *ngIf=\"profile.getFieldError('name')()\">\n        {{ profile.getFieldError('name')() }}\n      </span>\n\n      <input formControlName=\"email\" placeholder=\"Email\" />\n      <span class=\"error\" *ngIf=\"profile.getFieldError('email')()\">\n        {{ profile.getFieldError('email')() }}\n      </span>\n\n      <label> <input type=\"checkbox\" formControlName=\"marketing\" /> Email marketing </label>\n\n      <button type=\"submit\" [disabled]=\"profile.valid() === false\">\n        {{ profile.submitting() ? 'Saving...' : 'Save profile' }}\n      </button>\n    </form>\n\n    <pre>Signals: {{ profile.$.name() }} / {{ profile.$.email() }}</pre>\n  `,\n})\nexport class ProfileFormComponent {\n  private storage = typeof window !== 'undefined' ? window.localStorage : undefined;\n\n  // Type is inferred from initial values - no interface needed!\n  profile = createFormTree(\n    {\n      name: '',\n      email: '',\n      marketing: false,\n    },\n    {\n      persistKey: 'profile-form',\n      storage: this.storage,\n      fieldConfigs: {\n        name: { validators: [ngFormValidators.required('Name is required')] },\n        email: {\n          validators: [ngFormValidators.required(), ngFormValidators.email()],\n          debounceMs: 150,\n        },\n      },\n    }\n  );\n\n  async save() {\n    await this.profile.submit(async (values) => {\n      // values is typed as { name: string; email: string; marketing: boolean }\n      console.log('Saving profile', values);\n    });\n  }\n}\n```\n\nThe returned `FormTree` exposes:\n\n- `form`: Angular `TypedFormGroup<T>` for templates and directives (fully typed!)\n- `$` / `state`: signal-backed access to individual fields\n- `errors`, `asyncErrors`, `valid`, `dirty`, `submitting`: writable signals for UI state\n- Helpers such as `setValue`, `setValues`, `reset`, `validate`, and `submit`\n\n## Type Inference\n\n`createFormTree()` leverages recursive type inference—types flow from initial values:\n\n```typescript\n// ✅ Simple case: types inferred automatically\nconst form = createFormTree({\n  name: '', // string\n  age: 0, // number\n  active: false, // boolean\n});\n\nform.$.name(); // string\nform.$.age(); // number\nform.form.controls.name; // FormControl<string>\n```\n\n### Union Types Need Assertions\n\nWhen a field can be one of several specific values, TypeScript widens the inferred type to `string`. Use inline type assertions to preserve narrowness:\n\n```typescript\n// ❌ Without assertion: resolution is inferred as string\nconst form = createFormTree({\n  resolution: 'PENDING', // Inferred as string, not the union\n});\n\n// ✅ With assertion: resolution is the exact union type\nconst form = createFormTree({\n  resolution: 'PENDING' as 'PENDING' | 'APPROVED' | 'REJECTED',\n  category: null as CategoryType | null,\n  items: [] as string[],\n});\n```\n\n### TypedFormGroup\n\nThe `form` property returns `TypedFormGroup<T>`, which recursively maps your form shape to Angular controls:\n\n```typescript\ntype TypedFormGroup<T> = FormGroup<{\n  [K in keyof T]: T[K] extends unknown[]\n    ? FormArray<FormControl<T[K][number]>>\n    : T[K] extends object\n      ? FormGroup<...>  // Nested objects become nested FormGroups\n      : FormControl<T[K]>\n}>;\n\n// Result: full autocomplete and type checking\nconst form = createFormTree({ user: { name: '', email: '' } });\nform.form.controls.user.controls.name.value;  // string\n```\n\n## Core capabilities\n\n- **Signal-synced forms**: Bidirectional sync between Angular FormControls and SignalTree signals\n- **Per-field configuration**: Debounce, sync & async validators, and wildcard matcher support\n- **Conditional fields**: Enable/disable controls based on dynamic predicates\n- **Persistence**: Keep form state in `localStorage`, IndexedDB, or custom storage with debounced writes\n- **Validation batching**: Aggregate touched/errors updates to avoid jitter in large forms\n- **Legacy wizard & history helpers** (`createWizardForm`, `withFormHistory`, both `@deprecated` since v13): multi-step flows and undo/redo stacks for `createFormTree()`. For new code, prefer the `form()` marker's built-in `wizard` config and `@signaltree/core`'s `history()` — both `signalForm()`-compatible.\n- **Signal ↔ Observable bridge**: Convert signals to RxJS streams for interoperability\n- **Template-driven adapter**: `SignalValueDirective` bridges standalone signals with `ngModel`\n\n## Angular 22 Interoperability\n\n**ng-forms complements Angular 22's native Signal Forms**—use both in the same app. As of v11.5, `@signaltree/ng-forms/signals` also bridges the two directly, so you don't have to choose between them for a given field:\n\n### Use Angular 22 `FormField<T>` for:\n\n- ✅ Simple, flat forms (login, search)\n- ✅ Single-field validation\n- ✅ Maximum type safety\n\n### Use ng-forms `createFormTree()` for:\n\n- ✅ Nested object structures (user + address + payment)\n- ✅ Forms with persistence/auto-save\n- ✅ Wizard/multi-step flows\n- ✅ History/undo requirements\n- ✅ Complex conditional logic\n- ✅ Migration from reactive forms\n\n### Hybrid Example: Simple Fields + Complex Tree\n\n```typescript\nimport { Component, signal } from '@angular/core';\nimport { form, FormField } from '@angular/forms/signals';\nimport { createFormTree } from '@signaltree/ng-forms';\n\n@Component({ imports: [FormField], ... })\nclass CheckoutComponent {\n  // Simple field: Use Angular 22 native Signal Forms\n  promoCode = form(signal(''));\n\n  // Complex nested state: Use ng-forms\n  checkout = createFormTree({\n    shipping: { name: '', address: '', city: '', zip: '' },\n    payment: { card: '', cvv: '', expiry: '' },\n    items: [] as CartItem[]\n  }, {\n    persistKey: 'checkout-draft',\n    fieldConfigs: {\n      'shipping.zip': { validators: [(v) => /^\\d{5}$/.test(String(v)) ? null : 'Invalid ZIP'] },\n      'payment.card': { validators: [(v) => /^\\d{13,19}$/.test(String(v)) ? null : 'Invalid card'], debounceMs: 300 }\n    }\n  });\n\n  // Both work together seamlessly\n}\n```\n\nTemplate: `<input [formField]=\"promoCode\" />` alongside the ng-forms-driven `checkout` fields.\n\n### Bridge: `form()` marker → Signal Forms `FieldTree`\n\nWhen you want a `form()` marker's validators to run natively inside a Signal Forms\ntemplate (`[formField]`), wrap it with `signalForm()`—no copying, the FieldTree's\nmodel IS the marker's values signal:\n\n```typescript\nimport { Component, inject, Injector } from '@angular/core';\nimport { FormField } from '@angular/forms/signals';\nimport { signalTree, form, validators } from '@signaltree/core';\nimport { signalForm } from '@signaltree/ng-forms/signals';\n\n@Component({\n  imports: [FormField],\n  template: `<input [formField]=\"profile.name\" />`,\n})\nclass ProfileComponent {\n  private injector = inject(Injector);\n\n  tree = signalTree({\n    profile: form({\n      initial: { name: '', email: '' },\n      validators: { name: validators.required('Required') },\n    }),\n  });\n\n  // FieldTree shares the marker's values signal; marker sync validators run as\n  // Signal Forms validators (errors carry `kind: 'required'`/`'email'`/… for\n  // built-in validators, or `kind: 'signalTree'` for untagged custom ones).\n  profile = signalForm(this.tree.$.profile, { injector: this.injector });\n}\n```\n\n**Single async authority — enforced (v12).** The marker's own async path\n(`asyncValidators`/`validateField()`/`validateAll()`/`submit()`) and the\nFieldTree's native Signal Forms `validateAsync`/`validateHttp` are independent\nand cannot both drive one bridged form (they would disagree during any async\nvalidation window, since Signal Forms owns the field's `pending` state).\nBridging a `form()` marker that has `asyncValidators` configured therefore\n**throws** (`[ST2005]`). Pick one authority: either declare async validation on\nthe returned FieldTree via Signal Forms' `validateAsync`/`validateHttp`, or keep\nthe marker's async path and don't bridge (drive the form through the marker's\nown `validateField()`/`submit()`). Sync validators are fully unified. Requires\nAngular 22+.\n\n**A caller-supplied Signal Forms `schema` composes with marker validators\n(v13.1+).** The marker's `options.schema` accepts a `SchemaOrSchemaFn<T>` —\neither a `SchemaFn` (`(path) => {…}`) OR a cached `Schema` object from\nAngular's `schema()` — for rules a marker's `validators` config can't\nexpress (`disabled`, `hidden`, `metadata`, `applyEach`, cross-field\n`validate`/`validateAsync`). It's applied via `apply()` on top of any marker\nvalidators, over the same shared model — no second model, no sync loop:\n\n```typescript\nimport { disabled, schema, validate } from '@angular/forms/signals';\n\nconst profileSchema = schema<Profile>((p) => {\n  disabled(p.email, () => true);\n  validate(p.name, (ctx) => (ctx.value() ? undefined : { kind: 'required', message: 'Required' }));\n});\n\nconst fieldTree = signalForm(tree.$.profile, { injector, schema: profileSchema });\n```\n\nThe `[ST2005]` guard above is about the MARKER'S OWN `asyncValidators`\nspecifically — a marker with no async config, paired with a schema that\ndeclares `validateAsync`, is the supported shape: the schema is the only\nasync authority, so there's no disagreement to guard against.\n\n`signalForm`'s options also forward `name`, `submission`, and\n`experimentalWebMcpTool` verbatim to Angular's `form(model, schema, options)`\n(v13.1+) — including exposing the form as a WebMCP AI-agent tool (pair with\nAngular's `provideExperimentalWebMcpForms()`):\n\n```typescript\nconst fieldTree = signalForm(tree.$.profile, {\n  injector,\n  name: 'profileForm',\n  experimentalWebMcpTool: { name: 'profileTool', description: 'Edit the user profile' },\n});\n```\n\n### Bridge: `@signaltree/schema` → Signal Forms `FieldTree`\n\nIf you register Zod/Valibot/ArkType schemas via `@signaltree/schema`, the\n`signalForm(tree, rootPath, subtree)` call shape wires them into a Signal Forms\n`FieldTree` automatically via `validateStandardSchema`:\n\n```typescript\nimport { signalTree } from '@signaltree/core';\nimport { schemas } from '@signaltree/schema';\nimport { signalForm } from '@signaltree/ng-forms/signals';\nimport { z } from 'zod';\n\nconst tree = signalTree({ user: { name: '', email: '' } }).with(\n  schemas({\n    schemas: {\n      'user.name': z.string().min(2),\n      'user.email': z.string().email(),\n    },\n  })\n);\n\nconst userForm = signalForm<{ name: string; email: string }>(tree, 'user', tree.$.user);\n// userForm is a FieldTree with validation auto-wired from the schema registry.\n```\n\nBoth call shapes of `signalForm()` are exported from `@signaltree/ng-forms/signals`\nand require Angular 22+.\n\n### Bridging classic Reactive Forms\n\nAngular has **no** `FormControl.connect(signal)` API — signal↔reactive interop\nis a separate, constructor-based primitive (`SignalFormControl`, Angular 21.2+).\nSignalTree gives you two supported paths instead:\n\n- **Classic `FormGroup`** backed by tree state — use `createFormTree` (or the\n  `formBridge()` enhancer on a `form()` marker). These build a real `FormGroup`\n  and keep it in sync with the tree.\n- **Angular Signal Forms `FieldTree`** — use `signalForm()` (the signal-native\n  path; Angular 22+).\n\nReach for the second unless you must interoperate with existing classic\nReactive Forms code.\n\n## Form tree configuration\n\n```typescript\nconst checkout = createFormTree(initialState, {\n  validators: {\n    'shipping.zip': (value) => (/^[0-9]{5}$/.test(String(value)) ? null : 'Enter a valid ZIP code'),\n  },\n  asyncValidators: {\n    'account.email': async (value) => ((await emailService.isTaken(value)) ? 'Email already used' : null),\n  },\n  fieldConfigs: {\n    'payment.card.number': { debounceMs: 200 },\n    'preferences.*': { validators: [ngFormValidators.required()] },\n  },\n  conditionals: [\n    {\n      when: (values) => values.shipping.sameAsBilling,\n      fields: ['shipping.address', 'shipping.city', 'shipping.zip'],\n    },\n  ],\n  persistKey: 'checkout-draft',\n  storage: sessionStorage,\n  persistDebounceMs: 500,\n  validationBatchMs: 16,\n});\n```\n\n- `validators` / `asyncValidators`: Map paths (supports `*` globs) to declarative validation functions\n- `fieldConfigs`: Attach validators and per-field debounce without scattering logic\n- `conditionals`: Automatically disable controls when predicates fail\n- `persistKey` + `storage`: Load persisted values on creation and auto-save thereafter\n- `validationBatchMs`: Batch aggregate signal updates when running lots of validators at once\n\n## Wizard flows\n\n`createWizardForm` (below) is `@deprecated` since v13 — it's built on\n`createFormTree` (`FormGroup`) and has no `signalForm()` bridge. **Prefer the\n`form()` marker's built-in `wizard` config** (`@signaltree/core`), which is\n`signalForm()`-compatible:\n\n```typescript\nimport { signalTree, form } from '@signaltree/core';\n\ninterface SignupForm extends Record<string, unknown> {\n  email: string;\n  password: string;\n  firstName: string;\n  lastName: string;\n}\n\nconst tree = signalTree({\n  signup: form<SignupForm>({\n    initial: { email: '', password: '', firstName: '', lastName: '' },\n    wizard: {\n      steps: ['credentials', 'profile'],\n      stepFields: { credentials: ['email', 'password'], profile: ['firstName', 'lastName'] },\n      // Or per-step stepConfig: { credentials: { validate, canSkip } } for\n      // custom step validation/skip logic beyond field presence.\n    },\n  }),\n});\n\nawait tree.$.signup.wizard!.next(); // validates the current step first\ntree.$.signup.wizard!.prev();\nawait tree.$.signup.wizard!.goTo('profile');\ntree.$.signup.wizard!.currentStep(); // Signal<number>\n```\n\nThe legacy `createFormTree`-based wizard (retained for existing\n`createFormTree` users, not removed):\n\n```typescript\nimport { createWizardForm, FormStep } from '@signaltree/ng-forms';\n\nconst steps: FormStep<AccountSetup>[] = [\n  {\n    fields: ['profile.name', 'profile.email'],\n    validate: async (form) => {\n      await form.validate('profile.email');\n      return !form.getFieldError('profile.email')();\n    },\n  },\n  {\n    fields: ['security.password', 'security.confirm'],\n  },\n];\n\nconst wizard = createWizardForm(steps, initialValues, {\n  conditionals: [\n    {\n      when: ({ marketingOptIn }) => marketingOptIn,\n      fields: ['preferences.frequency'],\n    },\n  ],\n});\n\nawait wizard.nextStep();\nwizard.previousStep();\nwizard.currentStep(); // readonly signal\nwizard.isFieldVisible('preferences.frequency')();\n```\n\nWizard forms reuse the same `form` instance and `FormTree` helpers, adding `currentStep`, `nextStep`, `previousStep`, `goToStep`, and `isFieldVisible` helpers for UI state.\n\n## Form history snapshots\n\n`withFormHistory` (below) is `@deprecated` since v13 — scoped to the legacy\n`createFormTree` (`FormGroup`) substrate; it cannot attach to a `signalForm()`\nfield tree. **Prefer `history()` from `@signaltree/core`** on the `form()`\nmarker instead — see \"form() + history()\" above.\n\n```typescript\nimport { withFormHistory } from '@signaltree/ng-forms';\n\nconst form = withFormHistory(createFormTree(initialValues), { capacity: 20 });\n\nform.setValues({ profile: { name: 'Ada' } });\nform.undo();\nform.redo();\nform.history(); // signal with { past, present, future }\nform.clearHistory();\n```\n\nHistory tracking works at the FormGroup level so it plays nicely with external updates and preserved snapshots. Retained for `createFormTree` users; will be removed with the legacy `FormGroup` bridge.\n\n## Helpers and utilities\n\n- `validators` / `asyncValidators`: Lightweight factories for common rules (required, email, minLength, unique, etc.)\n- `createVirtualFormArray`: Virtualize huge `FormArray`s by only instantiating the visible window\n- To convert a signal to an RxJS `Observable`, use Angular's own\n  [`toObservable`](https://angular.dev/ecosystem/rxjs-interop) from\n  `@angular/core/rxjs-interop`. This package used to ship its own copy; it was\n  never exported from any entry point, so the import this line advertised could\n  not resolve, and its no-injection-context fallback silently degraded a live\n  stream to a single emission. Removed in 14.0.0.\n- `SIGNAL_FORM_DIRECTIVES`: Re-export of `SignalValueDirective` for template-driven helpers\n- `FormValidationError`: Error thrown from `submit` when validation fails, containing sync & async errors\n\n## Template-driven bridge\n\n```html\n<input type=\"text\" [(ngModel)]=\"userName\" [signalTreeSignalValue]=\"formTree.$.user.name\" (signalTreeSignalValueChange)=\"audit($event)\" />\n```\n\nUse `SignalValueDirective` to keep standalone signals and `ngModel` fields aligned in legacy sections while new pages migrate to forms-first APIs.\n\n## When to use ng-forms vs Angular 22 signal forms\n\n| Scenario                                   | Recommendation                                                                                  |\n| ------------------------------------------ | ----------------------------------------------------------------------------------------------- |\n| Login form (2-3 fields)                    | ✅ Angular 22 `FormField`                                                                       |\n| Search bar with filters                    | ✅ Angular 22 `FormField`                                                                       |\n| Form state inside your store tree          | ✅ **ng-forms** (tree integration)                                                              |\n| Checkout flow (shipping + payment + items) | ✅ **ng-forms** (persistence + wizard)                                                          |\n| Multi-step onboarding (5+ steps)           | ✅ **ng-forms** (wizard API)                                                                    |\n| Form with auto-save drafts                 | ✅ **ng-forms** (built-in persistence)                                                          |\n| Complex editor with undo/redo              | ✅ **core `history()`** on the `form()` marker (v13+; ng-forms `withFormHistory` is deprecated) |\n| Migrating from reactive forms              | ✅ **ng-forms** (FormGroup bridge)                                                              |\n| Dynamic form with conditional fields       | ✅ **ng-forms** (conditionals config)                                                           |\n| Form synced with global app state          | ✅ **ng-forms** (SignalTree integration)                                                        |\n\n**Rule of thumb**: If your form state should live inside your SignalTree store, or needs workflow features (persistence/wizards/history), use ng-forms. For standalone forms — flat or nested — Angular 22's native Signal Forms are excellent. Need both on the same field? Use the `@signaltree/ng-forms/signals` bridges above.\n\n## Migration from createFormTree()\n\n`createFormTree()` is deprecated in favor of the composable `form()` + `formBridge()` pattern.\n\n### Before (deprecated)\n\n```typescript\nimport { createFormTree, ngFormValidators } from '@signaltree/ng-forms';\n\nconst form = createFormTree(\n  {\n    name: '',\n    email: '',\n  },\n  {\n    validators: { email: ngFormValidators.email() },\n    persistKey: 'profile-form',\n  }\n);\n\n// Access\nform.$.name.set('John');\nform.form; // FormGroup\n```\n\n### After (recommended)\n\n```typescript\nimport { signalTree, form } from '@signaltree/core';\nimport { formBridge, ngFormValidators } from '@signaltree/ng-forms';\n\nconst tree = signalTree({\n  profile: form({\n    initial: { name: '', email: '' },\n    validators: { email: ngFormValidators.email() },\n    persist: 'profile-form',\n  }),\n}).with(formBridge());\n\n// Access\ntree.$.profile.$.name.set('John');\ntree.getAngularForm('profile')?.formGroup; // FormGroup\n// Or: (tree.$.profile as any).formGroup\n```\n\n### Key differences\n\n| Aspect               | createFormTree()        | form() + formBridge()        |\n| -------------------- | ----------------------- | ---------------------------- |\n| **Standalone**       | Always needs Angular    | form() works without Angular |\n| **Tree integration** | Separate from app state | Lives in your main tree      |\n| **DevTools**         | Separate                | Inherits tree DevTools       |\n| **Composability**    | Limited                 | Add enhancers freely         |\n| **Tree-shaking**     | All-or-nothing          | Only what you use            |\n\n### Migration steps\n\n1. Move form state into your SignalTree using `form()` marker\n2. Add `.with(formBridge())` to your tree\n3. Update access patterns: `form.$.field` → `tree.$.formName.$.field`\n4. Update FormGroup access: `form.form` → `tree.getAngularForm('path')?.formGroup`\n\n## Links\n\n- [SignalTree Documentation](https://signaltree.io)\n- [Migrating from createFormTree()](#migration-from-createformtree)\n- [Core Package](https://www.npmjs.com/package/@signaltree/core)\n- [GitHub Repository](https://github.com/JBorgia/signaltree)\n- [Demo Application](https://signaltree.io/examples)\n\n## License\n\nApache License 2.0 — see the [LICENSE](../../LICENSE) file. OSI-approved and permissive, with an explicit patent grant.\n\n---\n\n**Seamless signal-first Angular forms.**\n","readmeFilename":"README.md"}