{"_id":"@bootnodedev/canton-dappbooster","_rev":"7-82321db96407c7e68aeddf1f8891e70b","name":"@bootnodedev/canton-dappbooster","dist-tags":{"latest":"0.5.3"},"versions":{"0.3.0":{"name":"@bootnodedev/canton-dappbooster","version":"0.3.0","license":"MIT","_id":"@bootnodedev/canton-dappbooster@0.3.0","maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"dist":{"shasum":"449725db90c7b34da1a7779cffad2502ee1442f4","tarball":"https://registry.npmjs.org/@bootnodedev/canton-dappbooster/-/canton-dappbooster-0.3.0.tgz","fileCount":9,"integrity":"sha512-6Zlf0U7WZtwWEoQUbdKE3LViduKZo/zfld1CFpdx0LvXEyY+hCD6f/5YUxn/N8NZsUnPPA6GjWEFHD4ya5dDNw==","signatures":[{"sig":"MEYCIQCbiy1Of6Xk0uLDtvEA+noB5ISlKXcQB5AfzC5IcE7+cAIhAJkskUTTTnhcAs5s4uZB5PDhxdlBca56bOspbaMKxRZv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111610},"type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=24.15.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./connect":{"types":"./dist/connect.d.ts","import":"./dist/connect.js"}},"imports":{"#src/*":{"types":["./src/*.ts","./src/*.tsx","./src/*/index.ts","./src/*/index.tsx"],"default":"./src/*"}},"private":false,"scripts":{"lint":"biome check","test":"vitest run","build":"tsdown","lint:fix":"biome check --write","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},"description":"Reusable UI components for Canton dApps","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"@zag-js/react":"^1.43.0","@zag-js/dialog":"^1.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.1.5","jsdom":"^30.0.0","react":"^19.2.8","tsdown":"^0.22.14","vitest":"^4.1.10","react-dom":"^19.2.8","typescript":"^5.9.3","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^7.0.0","@bootnodedev/canton-connect":"^0.3.0"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","@bootnodedev/canton-connect":"^0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/canton-dappbooster_0.3.0_1789063798156_0.36040155494047177","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@bootnodedev/canton-dappbooster","version":"0.3.1","license":"MIT","_id":"@bootnodedev/canton-dappbooster@0.3.1","maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"dist":{"shasum":"367dfb0560ed6078d785ceee3bb0827728a1d029","tarball":"https://registry.npmjs.org/@bootnodedev/canton-dappbooster/-/canton-dappbooster-0.3.1.tgz","fileCount":9,"integrity":"sha512-mxoPBU6uLGupBjKbg8oicPSxLbMztr/QGVbNg4oEyldEG0z/bJstAgoT28hUilzUoAo4A9VHjiJuBIIWIQAsbw==","signatures":[{"sig":"MEUCIQCBFwEWcxL5FWRORFT7yl9egyWIxWM9KRyVVB2ISjk3iAIgRw/UjZtq6yiVBLfBorQCX/Ugtxc5ps1V0YkTmynIeBQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bootnodedev%2fcanton-dappbooster@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":111762},"type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=24.15.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./connect":{"types":"./dist/connect.d.ts","import":"./dist/connect.js"}},"imports":{"#src/*":{"types":["./src/*.ts","./src/*.tsx","./src/*/index.ts","./src/*/index.tsx"],"default":"./src/*"}},"private":false,"scripts":{"lint":"biome check","test":"vitest run","build":"tsdown","lint:fix":"biome check --write","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9ee22659-3f0c-4f67-8ecc-d6825d04e1f8"}},"repository":{"url":"git+https://github.com/BootNodeDev/canton-dappbooster.git","type":"git","directory":"canton-dappbooster"},"description":"Reusable UI components for Canton dApps","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"@zag-js/react":"^1.43.0","@zag-js/dialog":"^1.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.1.5","jsdom":"^30.0.0","react":"^19.2.8","tsdown":"^0.22.14","vitest":"^4.1.10","react-dom":"^19.2.8","typescript":"^5.9.3","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^7.0.0","@bootnodedev/canton-connect":"^0.3.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","@bootnodedev/canton-connect":"^0.3.1"},"_npmOperationalInternal":{"tmp":"tmp/canton-dappbooster_0.3.1_1789071411596_0.30835031941145563","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bootnodedev/canton-dappbooster","version":"0.4.0","license":"MIT","_id":"@bootnodedev/canton-dappbooster@0.4.0","maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"dist":{"shasum":"998a0fc1c4d48d33e3294ce9eca13c34c79570ba","tarball":"https://registry.npmjs.org/@bootnodedev/canton-dappbooster/-/canton-dappbooster-0.4.0.tgz","fileCount":9,"integrity":"sha512-TlSBGiSeBxEYKanpIohN4w1dGDmNADENlTs4fOd5qAg/erZeBmNRG0Z5Js9+UcAxOmFVDpW7aFdIoRrNgF5uQg==","signatures":[{"sig":"MEUCIQDJawb9hgQx0auQaYmWb/qo8nfbN34soA7DQWUs3A9a9gIgNlQySkEFc2jte25ApH0pABqYT0nG+A/pMyGg829kBss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bootnodedev%2fcanton-dappbooster@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":111497},"type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=24.15.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./connect":{"types":"./dist/connect.d.ts","import":"./dist/connect.js"}},"imports":{"#src/*":{"types":["./src/*.ts","./src/*.tsx","./src/*/index.ts","./src/*/index.tsx"],"default":"./src/*"}},"private":false,"scripts":{"lint":"biome check","test":"vitest run","build":"tsdown","lint:fix":"biome check --write","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9ee22659-3f0c-4f67-8ecc-d6825d04e1f8"}},"repository":{"url":"git+https://github.com/BootNodeDev/canton-dappbooster.git","type":"git","directory":"canton-dappbooster"},"description":"Reusable UI components for Canton dApps","directories":{},"sideEffects":false,"dependencies":{"@zag-js/react":"^1.43.0","@zag-js/dialog":"^1.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.1.5","jsdom":"^30.0.0","react":"^19.2.8","tsdown":"^0.23.0","vitest":"^5.0.0","react-dom":"^19.2.8","typescript":"^5.9.3","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^7.0.0","@bootnodedev/canton-connect":"^0.4.0"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","@bootnodedev/canton-connect":"^0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/canton-dappbooster_0.4.0_1789483519452_0.2923047447161973","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@bootnodedev/canton-dappbooster","version":"0.5.0","license":"MIT","_id":"@bootnodedev/canton-dappbooster@0.5.0","maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"dist":{"shasum":"93fb9de7a64e9c86a24cd0a3365c489db20871da","tarball":"https://registry.npmjs.org/@bootnodedev/canton-dappbooster/-/canton-dappbooster-0.5.0.tgz","fileCount":9,"integrity":"sha512-xMHtcmWaZXWbC8WnAkmgzGcPzlsANTeJMgwXFSkxAhKz92PE8FOIaupbYe0DKREEMffyx4LR+0WvxlsZFlB9Cw==","signatures":[{"sig":"MEYCIQCPsc1atHpCZOzPPMvgQLzO2SXKt3Xh+lclopS2WvSVYAIhALm66Jj6o/X0sPusglX/sTxQZFkw7OO5VKh0xzgPXUxX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC0NloYy3uNHiR4OmEeoRktFb9TS2hKjldgok3Je1js3wIgXcfMltMyalZ2mWKL1hjTEvJEdyhEs62c7l91TbpLueQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bootnodedev%2fcanton-dappbooster@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":111505},"type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=24.15.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./connect":{"types":"./dist/connect.d.ts","import":"./dist/connect.js"}},"imports":{"#src/*":{"types":["./src/*.ts","./src/*.tsx","./src/*/index.ts","./src/*/index.tsx"],"default":"./src/*"}},"private":false,"scripts":{"lint":"biome check","test":"vitest run","build":"tsdown","lint:fix":"biome check --write","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9ee22659-3f0c-4f67-8ecc-d6825d04e1f8"}},"repository":{"url":"git+https://github.com/BootNodeDev/canton-dappbooster.git","type":"git","directory":"canton-dappbooster"},"description":"Reusable UI components for Canton dApps","directories":{},"sideEffects":false,"dependencies":{"@zag-js/react":"^1.43.0","@zag-js/dialog":"^1.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.1.5","jsdom":"^30.0.0","react":"^19.2.8","tsdown":"^0.23.0","vitest":"^5.0.0","react-dom":"^19.2.8","typescript":"^5.9.3","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^7.0.0","@bootnodedev/canton-connect":"^0.5.0"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","@bootnodedev/canton-connect":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/canton-dappbooster_0.5.0_1790025356520_0.03445016914559673","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@bootnodedev/canton-dappbooster","version":"0.5.1","license":"MIT","_id":"@bootnodedev/canton-dappbooster@0.5.1","maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"dist":{"shasum":"31e11b6e2c1ee1820a6240797634b85250393d3e","tarball":"https://registry.npmjs.org/@bootnodedev/canton-dappbooster/-/canton-dappbooster-0.5.1.tgz","fileCount":9,"integrity":"sha512-GImVv/4nBu0WMyE14v/1phNHtgyZ+wzGk0KhhN4uRFkZirzlibymWhQMj+GnnUV4GmwyPOJTl0kGIZ5SUMDmgA==","signatures":[{"sig":"MEUCIQCHMhQKuWENQAZqo0i2Ch/Kgp+iSquuBlu0Ee4K2QblJwIgcF4UYsMVrot15Tg16qOceJxd8CAjx7TtHbpWz+clWyQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEV4Zw8Nu4aAqHV/vUTHMzwWQuifvbJptiexhzJ2x8FoAiEA0dInYmWKKD9dR6uLkfEobN8JC/wLZRDhPhV5GhZvawE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bootnodedev%2fcanton-dappbooster@0.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":111505},"type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=24.15.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./connect":{"types":"./dist/connect.d.ts","import":"./dist/connect.js"}},"imports":{"#src/*":{"types":["./src/*.ts","./src/*.tsx","./src/*/index.ts","./src/*/index.tsx"],"default":"./src/*"}},"private":false,"scripts":{"lint":"biome check","test":"vitest run","build":"tsdown","lint:fix":"biome check --write","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9ee22659-3f0c-4f67-8ecc-d6825d04e1f8"}},"repository":{"url":"git+https://github.com/BootNodeDev/canton-dappbooster.git","type":"git","directory":"canton-dappbooster"},"description":"Reusable UI components for Canton dApps","directories":{},"sideEffects":false,"dependencies":{"@zag-js/react":"^1.43.0","@zag-js/dialog":"^1.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.1.5","jsdom":"^30.0.0","react":"^19.2.8","tsdown":"^0.23.0","vitest":"^5.0.0","react-dom":"^19.2.8","typescript":"^5.9.3","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^7.0.0","@bootnodedev/canton-connect":"^0.5.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","@bootnodedev/canton-connect":"^0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/canton-dappbooster_0.5.1_1790105305516_0.8880563623277358","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@bootnodedev/canton-dappbooster","version":"0.5.2","license":"MIT","_id":"@bootnodedev/canton-dappbooster@0.5.2","maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"dist":{"shasum":"cdba0b7d3d4e80220406814fc2f4654c229d13ff","tarball":"https://registry.npmjs.org/@bootnodedev/canton-dappbooster/-/canton-dappbooster-0.5.2.tgz","fileCount":9,"integrity":"sha512-/8aOqi+OeY3RJYzwrxFSqUchaE8EbqPDfVUFo1rKnT8u0rPL6Q+rNvUUUpJRhKlqK8IdoL45YvIG4nhXwV2d6g==","signatures":[{"sig":"MEYCIQDD2Mv3ttm2csXMGklxm32MYxvNfJuhqZVpgrSj+a0kSgIhAOM8yLjoPVNZkp3U9/1FiKN0X7XVaZwsukwNQNkTG2w7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDT07g+b87tCZ/yc9Wmfe5Td3DPuib1rWkDoOzpFV/WtwIhALJEskeVeARkEppxHSEq3TK1+UEefS5HaXfPsxJPuABT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bootnodedev%2fcanton-dappbooster@0.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":111505},"type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=24.15.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./connect":{"types":"./dist/connect.d.ts","import":"./dist/connect.js"}},"imports":{"#src/*":{"types":["./src/*.ts","./src/*.tsx","./src/*/index.ts","./src/*/index.tsx"],"default":"./src/*"}},"private":false,"scripts":{"lint":"biome check","test":"vitest run","build":"tsdown","lint:fix":"biome check --write","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9ee22659-3f0c-4f67-8ecc-d6825d04e1f8"}},"repository":{"url":"git+https://github.com/BootNodeDev/canton-dappbooster.git","type":"git","directory":"canton-dappbooster"},"description":"Reusable UI components for Canton dApps","directories":{},"sideEffects":false,"dependencies":{"@zag-js/react":"^1.43.0","@zag-js/dialog":"^1.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.1.5","jsdom":"^30.0.0","react":"^19.2.8","tsdown":"^0.23.0","vitest":"^5.0.0","react-dom":"^19.2.8","typescript":"^5.9.3","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^7.0.0","@bootnodedev/canton-connect":"^0.5.2"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","@bootnodedev/canton-connect":"^0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/canton-dappbooster_0.5.2_1790270146514_0.042693278934840206","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"_id":"@bootnodedev/canton-dappbooster@0.5.3","dist":{"shasum":"d75490adb481bf80048abe9a9c4f78ba7be9deb4","tarball":"https://registry.npmjs.org/@bootnodedev/canton-dappbooster/-/canton-dappbooster-0.5.3.tgz","fileCount":9,"integrity":"sha512-Li6dtgANbYtmBn/OKJkiVjs3TFE6ALwITlzbPuPlbdbCq3SbiGc3QGsrKDu6qLf6L7nvKaB3ROcjj4ztfB0Ggg==","signatures":[{"sig":"MEYCIQDxLnu+3wlaNly7wkW3Zfh8R/51t5v2FWZYFBrbN/Ad4AIhAPW8UC2VnvKZzoN6osyGovER4noIvFenBrT5VjiP5bQJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBu90KiDLDP7C9cvlX2ofzYAc1neXgz5zga6w6TQVYn8AiEA9w5CNPE3kqwoZy/NNAAnadrcUXc4eGQWxxNFNPt8JK0="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bootnodedev%2fcanton-dappbooster@0.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":111505},"name":"@bootnodedev/canton-dappbooster","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=24.15.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./connect":{"types":"./dist/connect.d.ts","import":"./dist/connect.js"}},"imports":{"#src/*":{"types":["./src/*.ts","./src/*.tsx","./src/*/index.ts","./src/*/index.tsx"],"default":"./src/*"}},"license":"MIT","private":false,"scripts":{"lint":"biome check","test":"vitest run","build":"tsdown","lint:fix":"biome check --write","typecheck":"tsc --noEmit","test:watch":"vitest"},"version":"0.5.3","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9ee22659-3f0c-4f67-8ecc-d6825d04e1f8"}},"repository":{"url":"git+https://github.com/BootNodeDev/canton-dappbooster.git","type":"git","directory":"canton-dappbooster"},"description":"Reusable UI components for Canton dApps","directories":{},"maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"sideEffects":false,"dependencies":{"@zag-js/react":"^1.43.0","@zag-js/dialog":"^1.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.1.5","jsdom":"^30.0.0","react":"^19.2.8","tsdown":"^0.23.0","vitest":"^5.0.0","react-dom":"^19.2.8","typescript":"^5.9.3","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^7.0.0","@bootnodedev/canton-connect":"^0.5.3"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","@bootnodedev/canton-connect":"^0.5.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/canton-dappbooster_0.5.3_1790789458903_0.3109173524093145"}}},"time":{"created":"2026-09-10T18:09:57.961Z","modified":"2026-09-30T17:30:59.356Z","0.3.0":"2026-09-10T18:09:58.265Z","0.3.1":"2026-09-10T20:16:51.737Z","0.4.0":"2026-09-15T14:45:19.583Z","0.5.0":"2026-09-21T21:15:56.622Z","0.5.1":"2026-09-22T19:28:25.596Z","0.5.2":"2026-09-24T17:15:46.597Z","0.5.3":"2026-09-30T17:30:58.992Z"},"license":"MIT","repository":{"url":"git+https://github.com/BootNodeDev/canton-dappbooster.git","type":"git","directory":"canton-dappbooster"},"description":"Reusable UI components for Canton dApps","maintainers":[{"name":"pablofullana","email":"pablofullana@gmail.com"},{"name":"luchobonatti.bn","email":"luciano@bootnode.dev"},{"name":"gabitoesmiapodo","email":"exepotes@gmail.com"},{"name":"fernandomg","email":"fernando.greco@gmail.com"},{"name":"lmcorbalan","email":"lmcorbalan@gmail.com"},{"name":"nico_bn","email":"nicolas@bootnode.dev"},{"name":"fzavalia","email":"zavaliafernando+npmjs@gmail.com"}],"readme":"# @bootnodedev/canton-dappbooster\n\nReusable UI components for Canton dApps — reading Canton identifiers (display, truncation,\ncopy-to-clipboard, explorer links) and entering them (validated party-id input). Amounts are the\nother half: a token-amount field, plus the exact-decimal utilities under it, because a `number`\ncannot carry a Canton amount without losing digits.\n\n`src/index.ts` is the public API, and every export carries JSDoc that your editor will surface at\nthe call site and that is published at\n[docs.dappbooster.cc](https://docs.dappbooster.cc/). The wallet\nbuttons sit behind the `/connect` sub-path instead, because they reach for the wallet session and so\npull in the Canton SDK. Authoring rules for\nnew components live in [`CLAUDE.md`](https://github.com/BootNodeDev/canton-dappbooster/blob/main/canton-dappbooster/CLAUDE.md).\n\n## Scripts\n\n| Script | What it does |\n| --- | --- |\n| `pnpm build` | tsdown → `dist/` (ESM `index.js` + `connect.js`, each with its `.d.ts`) |\n| `pnpm test` | vitest (jsdom + Testing Library), against `src` |\n| `pnpm typecheck` | `tsc --noEmit` |\n\n## Build & dev loop\n\ntsdown builds ESM + `.d.ts` to `dist/`. Components carry no CSS, so `sideEffects: false` holds and\nthe bundle tree-shakes cleanly. `exports` carries a `development` condition → `src`, so Vite serves\nsource live in dev; `dist` is used for production and publish.\n\nConsumers resolve source in dev and typecheck (no kit build needed); their production build resolves\n`dist`. Build the kit first, or run `pnpm build` from the repo root, which builds workspaces in order.\n\nReact 19 only, peer and dev alike.\n\nA consumer whose React resolves to a different copy than the kit's ends up with two Reacts in one\nbundle, where hooks read a null dispatcher and every render throws. Only a production build shows\nit, since the `development` condition resolves the kit to source. `resolve.dedupe` in the bundler\nis the fix.\n\n## Styling: components carry none\n\nComponents (L2) ship zero styling opinion. Styling lives in the separate\n[`@bootnodedev/canton-theme`](https://github.com/BootNodeDev/canton-dappbooster/blob/main/canton-theme/README.md) package (L3), which consumers import explicitly:\n\n```ts\nimport '@bootnodedev/canton-theme/tokens.css'\nimport '@bootnodedev/canton-theme/default.css'\n```\n\nThe contract between the two is the DOM each component renders — not code. See\n[`architecture.md`](https://github.com/BootNodeDev/canton-dappbooster/blob/main/canton-dappbooster/architecture.md) for the seam and the reasoning.\n\n## Light / dark / system\n\nThe one styling-adjacent runtime this package does ship. `<ThemeProvider>` owns the mode and writes\n`data-theme` to `<html>`, which is what the theme keys its dark values on; `useTheme()` reads and\nsets it. No token names live here.\n\nA reload flashes the page background before React applies the attribute, and this package ships\nnothing to prevent it. [`architecture.md`](https://github.com/BootNodeDev/canton-dappbooster/blob/main/canton-dappbooster/architecture.md) has the reasoning.\n\nClient-only: the provider reads the OS preference as it mounts, so a server render throws.\n\n```tsx\nimport { ThemeProvider, useTheme } from '@bootnodedev/canton-dappbooster'\n\nconst App = () => (\n  <ThemeProvider>\n    <Page />\n  </ThemeProvider>\n)\n\nconst ModeToggle = () => {\n  const { resolved, toggle } = useTheme()\n  return <button onClick={toggle}>{resolved === 'dark' ? 'Light' : 'Dark'}</button>\n}\n```\n","readmeFilename":""}