{"_id":"@json-render/ink","_rev":"10-af49b2063721c877bc1e3a73f86caccf","name":"@json-render/ink","dist-tags":{"latest":"0.21.0"},"versions":{"0.14.1":{"name":"@json-render/ink","version":"0.14.1","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"license":"Apache-2.0","_id":"@json-render/ink@0.14.1","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@studiotate.com"}],"homepage":"https://json-render.dev","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"1514a3181c8a4ab8f0a05f29306a2f88a4738860","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.14.1.tgz","fileCount":31,"integrity":"sha512-IoKdWaW0YRbuEvUbyjhc5l4CJ1JGHGjaS/BnucsEdGQws79chYkWTiLRmU83zMx6BznKghg/8MmtgzJPXvR53g==","signatures":[{"sig":"MEQCIG1XnjRMPvxtgsUsi+bromQxjkEt1ekbcPdXR/eZ+35SAiA3cDTaz+V030MLnUEK5BitB0h2jgbJlCdNta1igJdsUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":803784},"main":"./dist/index.js","_from":"file:json-render-ink-0.14.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"_resolved":"/tmp/4fc36cf2a8afb4a5e552b52742243371/json-render-ink-0.14.1.tgz","_integrity":"sha512-IoKdWaW0YRbuEvUbyjhc5l4CJ1JGHGjaS/BnucsEdGQws79chYkWTiLRmU83zMx6BznKghg/8MmtgzJPXvR53g==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"10.8.2","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"marked":"^17.0.0","@json-render/core":"0.14.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.9","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ink_0.14.1_1774284719482_0.3295941220606029","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@json-render/ink","version":"0.15.0","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"license":"Apache-2.0","_id":"@json-render/ink@0.15.0","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@studiotate.com"}],"homepage":"https://json-render.dev","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"d2ff06ebc39634fcb3bf61f28249f2efcf4a4813","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.15.0.tgz","fileCount":31,"integrity":"sha512-amA0C2T2gKPz/BaWzwcgs47JrBqvFoJONQJ7RebTtMpCDBALEJDXOiXIlhmKnuYDpAJd1MokEi7pYR1QN70jTQ==","signatures":[{"sig":"MEQCIBl25Gf1Jz31C333qY2/eMWE/EqhEp4QGCu2GuQ9s4ozAiBGSN6bOcSgDYkzFcB/OzD2oLxkoBnn+SSRnnYAf3Yfng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":852656},"main":"./dist/index.js","_from":"file:json-render-ink-0.15.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","check-types":"tsc --noEmit"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"_resolved":"/tmp/7bf3dfad867067abd7e9be13f9fb6958/json-render-ink-0.15.0.tgz","_integrity":"sha512-amA0C2T2gKPz/BaWzwcgs47JrBqvFoJONQJ7RebTtMpCDBALEJDXOiXIlhmKnuYDpAJd1MokEi7pYR1QN70jTQ==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"10.8.2","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"marked":"^17.0.0","@json-render/core":"0.15.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.10","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ink_0.15.0_1774290878284_0.47742908131415485","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@json-render/ink","version":"0.16.0","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"license":"Apache-2.0","_id":"@json-render/ink@0.16.0","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@studiotate.com"}],"homepage":"https://json-render.dev","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"4b5cf5470fdb41f924c9deda4de1c9b36e071b98","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.16.0.tgz","fileCount":31,"integrity":"sha512-oJ/MbW0zLkv3i6MSZVk8QiI6mbyvtA0XZpJEuJBTCf1yjMMdxN16Mz/uW/5AV9FMOBjZXohQPONLMxvSxil6Bg==","signatures":[{"sig":"MEUCIGlEgNtFcYZSoGZUr7+9b948i2QxeZPpD84M+p5aQyjrAiEA3R/pivST2kfJDInZMSj/54DPDdlzGHCIeVNxG5icUPQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":852656},"main":"./dist/index.js","_from":"file:json-render-ink-0.16.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","check-types":"tsc --noEmit"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"_resolved":"/tmp/f97a219f6a1cf69a7dae6419af268d28/json-render-ink-0.16.0.tgz","_integrity":"sha512-oJ/MbW0zLkv3i6MSZVk8QiI6mbyvtA0XZpJEuJBTCf1yjMMdxN16Mz/uW/5AV9FMOBjZXohQPONLMxvSxil6Bg==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"10.8.2","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"marked":"^17.0.0","@json-render/core":"0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.11","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ink_0.16.0_1774660915376_0.5109518295446149","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@json-render/ink","version":"0.17.0","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"license":"Apache-2.0","_id":"@json-render/ink@0.17.0","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@studiotate.com"}],"homepage":"https://json-render.dev","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"5e3b92d627c3a893b76b666dcd1540a75dc3a0fe","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.17.0.tgz","fileCount":31,"integrity":"sha512-+VHuTH45nz3UTB9AgOJABqTfq65lUBiTLQIruijdAxveFtuefWtX/6rBcn3TCIVJoZoyRo4JBQLwOkYVhIcjuw==","signatures":[{"sig":"MEUCIQC4YUg9prosCa1swVq3gc+YYvTxToC02hmzBKsOsVXe7gIgFpo8z4vvoTnnJXjE7CHYwiyJ9D3v+RjYrm+s/gcU3q0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":852656},"main":"./dist/index.js","_from":"file:json-render-ink-0.17.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","check-types":"tsc --noEmit"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"_resolved":"/tmp/ac64526d72db096381d7e8d0401d4b81/json-render-ink-0.17.0.tgz","_integrity":"sha512-+VHuTH45nz3UTB9AgOJABqTfq65lUBiTLQIruijdAxveFtuefWtX/6rBcn3TCIVJoZoyRo4JBQLwOkYVhIcjuw==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"10.9.7","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"marked":"^17.0.0","@json-render/core":"0.17.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.11","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ink_0.17.0_1775878866736_0.6436590724185984","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@json-render/ink","version":"0.18.0","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"license":"Apache-2.0","_id":"@json-render/ink@0.18.0","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@studiotate.com"}],"homepage":"https://json-render.dev","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"3c226e6317a2d7b39adbd8cc49e1c32ef8376a8b","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.18.0.tgz","fileCount":31,"integrity":"sha512-DlY5bkZ3V7zJ47K06+fr3hauOOpvj4Bqe+mmK5fTBIMk619OEpc3HeaFIZWQuEywfSfzJcOwOdjYDRQYw8cZ3A==","signatures":[{"sig":"MEYCIQDX0BmgR3FdmlZImwFoOSP2xXRrbHZJSyKEjoBpJt63SwIhAIMTyyGutvLtFNZlx4qmaWJ9aB4gT+B8J4pJrZ4Vj1oU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":852656},"main":"./dist/index.js","_from":"file:json-render-ink-0.18.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","check-types":"tsc --noEmit"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"_resolved":"/tmp/f90ab7e5afece621689f984e5baea53a/json-render-ink-0.18.0.tgz","_integrity":"sha512-DlY5bkZ3V7zJ47K06+fr3hauOOpvj4Bqe+mmK5fTBIMk619OEpc3HeaFIZWQuEywfSfzJcOwOdjYDRQYw8cZ3A==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"10.9.7","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"marked":"^17.0.0","@json-render/core":"0.18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.11","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ink_0.18.0_1776455159705_0.1382726810137369","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@json-render/ink","version":"0.19.0","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"license":"Apache-2.0","_id":"@json-render/ink@0.19.0","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@ctate.dev"}],"homepage":"https://json-render.dev","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"b7aac6711f6d85de6bcf0111df7486772e995f8e","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.19.0.tgz","fileCount":31,"integrity":"sha512-RPS321EW4MVKBnD6Y531h4lzXnYN+fj4nxfEcmFkJiLGxoZAr9PYOrotgwNzNIcsIyvNaZcgHGvYf7EhhGWDtw==","signatures":[{"sig":"MEQCICk+jVG22+oWV3a0SPJE7yBtWv9FwBFYMPBNTf2Ryl5oAiB1YIzgiZEuWDU2zGydjyvgFp88FLSp5K3tc0Zz89d1Tg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@json-render%2fink@0.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":852656},"main":"./dist/index.js","_from":"file:/tmp/json-render-ink-0.19.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:92ceb140-a931-4903-9cd9-3d76ef08df7d"}},"_resolved":"/tmp/json-render-ink-0.19.0.tgz","_integrity":"sha512-RPS321EW4MVKBnD6Y531h4lzXnYN+fj4nxfEcmFkJiLGxoZAr9PYOrotgwNzNIcsIyvNaZcgHGvYf7EhhGWDtw==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"11.11.0","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"marked":"^17.0.0","@json-render/core":"0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.11","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ink_0.19.0_1778131439322_0.572102228465257","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"@json-render/ink","version":"0.20.0","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"license":"Apache-2.0","_id":"@json-render/ink@0.20.0","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@ctate.dev"}],"homepage":"https://json-render.dev","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"ec0f4048f8d2670a8931f643fcefd7ab7c8cf1f6","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.20.0.tgz","fileCount":31,"integrity":"sha512-sUV9ZZqBNf7N9ElDYjcnTSvQOMCf6e+lZViMW6EEGYSDSpZJLPi00ESrb8iF3IbFFF0F0i3nm0PahDatcRJoHA==","signatures":[{"sig":"MEYCIQDC9gBjHHeFMLAiHWqLFP6kgwpH12RrVxCdjSy00O0o4wIhANWMwsq8Pn4Tkimm1TI+R7XnkoleYO1m5a2oR2bZR2dO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@json-render%2fink@0.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":860012},"main":"./dist/index.js","_from":"file:/tmp/json-render-ink-0.20.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:92ceb140-a931-4903-9cd9-3d76ef08df7d"}},"_resolved":"/tmp/json-render-ink-0.20.0.tgz","_integrity":"sha512-sUV9ZZqBNf7N9ElDYjcnTSvQOMCf6e+lZViMW6EEGYSDSpZJLPi00ESrb8iF3IbFFF0F0i3nm0PahDatcRJoHA==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"11.17.0","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"marked":"^17.0.0","@json-render/core":"0.20.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.11","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ink_0.20.0_1786888462189_0.11919790938764008","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"_id":"@json-render/ink@0.21.0","bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"dist":{"shasum":"c91355138ba3fbbe37a0e12319b84063996c6b69","tarball":"https://registry.npmjs.org/@json-render/ink/-/ink-0.21.0.tgz","fileCount":31,"integrity":"sha512-EAp0Kj73lFGm/2YxQlJ5CqQE5DGWgJ5rfOskwD/LWNOaNUahZgaweVRLlWdQTFeDwxlmh2ZS27qY5OAE1BLSnQ==","signatures":[{"sig":"MEQCICm+wfThWU3oP8fMGce5OT12arljn52ypyHYxF/AUWxeAiAZuswzrlg/iokLkNhDNn0aa9WemNwFhaP5bwuS3HcabA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIG20RQUPHuA0GmwWnZpyqiycVfE0dEMPrqQKmVDqe8JdAiEA5z3S9ZO8YhHy51b0YEy/SWLlUlhhkkMWDdlreXvVWs4="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@json-render%2fink@0.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":860012},"main":"./dist/index.js","name":"@json-render/ink","_from":"file:/tmp/json-render-ink-0.21.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.mjs","require":"./dist/schema.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.mjs","require":"./dist/server.js"},"./catalog":{"types":"./dist/catalog.d.ts","import":"./dist/catalog.mjs","require":"./dist/catalog.js"}},"license":"Apache-2.0","scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","check-types":"tsc --noEmit"},"version":"0.21.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:92ceb140-a931-4903-9cd9-3d76ef08df7d"}},"homepage":"https://json-render.dev","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"_resolved":"/tmp/json-render-ink-0.21.0.tgz","_integrity":"sha512-EAp0Kj73lFGm/2YxQlJ5CqQE5DGWgJ5rfOskwD/LWNOaNUahZgaweVRLlWdQTFeDwxlmh2ZS27qY5OAE1BLSnQ==","repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"_npmVersion":"11.19.0","description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","directories":{},"maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@ctate.dev"}],"_nodeVersion":"24.20.0","dependencies":{"marked":"^17.0.0","@json-render/core":"0.21.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.3.6","tsup":"^8.0.2","typescript":"^5.4.5","@types/react":"19.2.3","@internal/react-state":"0.8.11","@internal/typescript-config":"0.0.0"},"peerDependencies":{"ink":"^6.0.0","react":"^19.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ink_0.21.0_1789757513883_0.8917745142204545"}}},"time":{"created":"2026-03-23T16:51:59.328Z","modified":"2026-09-18T18:51:54.412Z","0.14.1":"2026-03-23T16:51:59.642Z","0.15.0":"2026-03-23T18:34:38.477Z","0.16.0":"2026-03-28T01:21:55.559Z","0.17.0":"2026-04-11T03:41:06.924Z","0.18.0":"2026-04-17T19:45:59.942Z","0.19.0":"2026-05-07T05:23:59.505Z","0.20.0":"2026-08-16T13:54:22.327Z","0.21.0":"2026-09-18T18:51:53.984Z"},"bugs":{"url":"https://github.com/vercel-labs/json-render/issues"},"license":"Apache-2.0","homepage":"https://json-render.dev","keywords":["json","cli","terminal","ink","ai","generative-ui","llm","renderer","tui"],"repository":{"url":"git+https://github.com/vercel-labs/json-render.git","type":"git","directory":"packages/ink"},"description":"Ink terminal renderer for @json-render/core. JSON becomes terminal UIs.","maintainers":[{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"ctate","email":"chris@ctate.dev"}],"readme":"# @json-render/ink\n\nInk terminal renderer for json-render. Turn JSON specs into interactive terminal UIs.\n\n## Installation\n\n```bash\nnpm install @json-render/ink @json-render/core ink react\n```\n\nPeer dependencies: `ink ^6.0.0` and `react ^19.0.0`.\n\n## Quick Start\n\n### 1. Create a Catalog\n\n```typescript\nimport { defineCatalog } from \"@json-render/core\";\nimport { schema } from \"@json-render/ink/schema\";\nimport {\n  standardComponentDefinitions,\n  standardActionDefinitions,\n} from \"@json-render/ink/catalog\";\n\nexport const catalog = defineCatalog(schema, {\n  components: standardComponentDefinitions,\n  actions: standardActionDefinitions,\n});\n```\n\n### 2. Render a Spec\n\n```tsx\nimport { render } from \"ink\";\nimport { createRenderer, standardComponents } from \"@json-render/ink\";\nimport { catalog } from \"./catalog\";\n\nconst InkRenderer = createRenderer(catalog, standardComponents);\n\nconst spec = {\n  root: \"heading\",\n  elements: {\n    heading: {\n      type: \"Heading\",\n      props: { text: \"Hello from the terminal!\", level: \"h1\" },\n      children: [],\n    },\n  },\n};\n\nrender(<InkRenderer spec={spec} state={{}} />);\n```\n\n## Standard Components\n\n### Layout\n\n| Component | Description |\n|-----------|-------------|\n| `Box` | Flexbox layout container (like a terminal `<div>`) |\n| `Text` | Text output with optional styling (color, bold, italic, etc.) |\n| `Newline` | Inserts one or more blank lines |\n| `Spacer` | Flexible empty space that expands to fill available room |\n\n### Content\n\n| Component | Description |\n|-----------|-------------|\n| `Heading` | Section heading (h1–h4) |\n| `Divider` | Horizontal separator line with optional title |\n| `Badge` | Small colored inline label for status |\n| `Spinner` | Animated loading spinner with optional label |\n| `ProgressBar` | Horizontal progress bar (0–1) |\n| `Sparkline` | Inline sparkline chart using Unicode blocks |\n| `BarChart` | Horizontal bar chart with labels and values |\n| `Table` | Tabular data display with headers and rows |\n| `List` | Bulleted or numbered list |\n| `ListItem` | Structured list row with title, subtitle, leading/trailing |\n| `Card` | Bordered container with optional title |\n| `KeyValue` | Key-value pair display |\n| `Link` | Clickable URL |\n| `StatusLine` | Status message with colored icon |\n| `Markdown` | Renders markdown-formatted text with terminal styling |\n\n### Interactive\n\n| Component | Description |\n|-----------|-------------|\n| `TextInput` | Text input field with two-way binding |\n| `Select` | Selection menu navigated with arrow keys |\n| `MultiSelect` | Multi-selection with space to toggle, enter to confirm |\n| `ConfirmInput` | Yes/No confirmation prompt |\n| `Tabs` | Tab bar navigation with left/right arrow keys |\n\n## Generate AI Prompts\n\n```typescript\nconst systemPrompt = catalog.prompt({ system: \"You are a terminal assistant.\" });\n```\n\n## Streaming\n\nUse `useUIStream` to progressively render specs from JSONL patch streams:\n\n```tsx\nimport { useUIStream } from \"@json-render/ink\";\n\nconst { spec, send, isStreaming } = useUIStream({ api: \"/api/generate\" });\n```\n\n## Key Exports\n\nNested lists can set `repeat.statePath` to `{ \"$item\": \"field\" }` to iterate an array on the enclosing repeat item.\n\n| Export | Purpose |\n|--------|---------|\n| `createRenderer` | Create an all-in-one renderer component from a catalog |\n| `Renderer` | Low-level spec renderer |\n| `JSONUIProvider` | Combined provider (state, visibility, validation, actions, focus) |\n| `standardComponents` | Pre-built component implementations for all standard components |\n| `schema` | Ink element tree schema |\n| `useStateStore` | Access state context (`state`, `get`, `set`, `update`) |\n| `useStateValue` | Get single value from state |\n| `useBoundProp` | Two-way binding for `$bindState`/`$bindItem` expressions |\n| `useUIStream` | Stream specs from an API endpoint |\n| `createStateStore` | Create a framework-agnostic in-memory `StateStore` |\n\n### Catalog Entry Points\n\n| Entry Point | Exports |\n|-------------|---------|\n| `@json-render/ink` | Components, renderer, hooks, providers |\n| `@json-render/ink/schema` | `schema`, `InkSchema`, `InkSpec` |\n| `@json-render/ink/catalog` | `standardComponentDefinitions`, `standardActionDefinitions` |\n| `@json-render/ink/server` | Server-safe re-exports (schema + catalog, no React dependency) |\n\n## Documentation\n\n- [API Reference](https://json-render.dev/docs/api/ink)\n- [Renderers Overview](https://json-render.dev/docs/renderers)\n- [Ink Chat Example](https://github.com/vercel-labs/json-render/tree/main/examples/ink-chat)\n","readmeFilename":"README.md"}