{"_id":"@convex-dev/resend","_rev":"42-34d7c8a31fe365e807851b7e630218dc","name":"@convex-dev/resend","dist-tags":{"alpha":"0.1.6-alpha.1","latest":"0.2.9"},"versions":{"0.1.2-beta.0":{"name":"@convex-dev/resend","version":"0.1.2-beta.0","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.2-beta.0","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"6ad032dbbf0f1c2d898f88335e1bb7a59db146c8","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.2-beta.0.tgz","fileCount":80,"integrity":"sha512-+LNnhzL3UI3MYEHdlntGLJbKJ1NBTZpgoetwVbFQXxzywf5gZfMCrlXwY4KZIiQ85AtHgooIU4xawN8tkHj1lQ==","signatures":[{"sig":"MEUCIQCOnm+yjxhOi7GO8xi+oFSl797UvOw4h7+0s3q0EyGBkQIgF+lOzdFRkTAaOTG1qfOX8NOaKoXr+OBMBT9GzxMCuIg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":244351},"main":"./dist/commonjs/client/index.js","type":"module","types":"./dist/commonjs/client/index.d.ts","module":"./dist/esm/client/index.js","exports":{".":{"import":{"types":"./dist/esm/client/index.d.ts","default":"./dist/esm/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"require":{"types":"./dist/commonjs/client/index.d.ts","default":"./dist/commonjs/client/index.js","@convex-dev/component-source":"./src/client/index.ts"}},"./package.json":"./package.json","./convex.config":{"import":{"types":"./dist/esm/component/convex.config.d.ts","default":"./dist/esm/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}}},"gitHead":"3d758a4a17afa5bab22f9b48a116ee703669023b","scripts":{"dev":"cd example; npm run dev","test":"vitest run","build":"npm run build:esm && npm run build:cjs","prepack":"node node10stubs.mjs","prepare":"npm run build","postpack":"node node10stubs.mjs --cleanup","build:cjs":"tsc --project ./commonjs.json && echo '{\\n  \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json","build:esm":"tsc --project ./esm.json && echo '{\\n  \"type\": \"module\"\\n}' > dist/esm/package.json","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"jamwt","email":"jamwt@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.7.0","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.2.0","dependencies":{"svix":"^1.67.0","lodash":"^4.17.21","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.7"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","@types/lodash":"^4.17.17","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.2-beta.0_1749851820450_0.7340855656353076","host":"s3://npm-registry-packages-npm-production"}},"0.1.2-beta.1":{"name":"@convex-dev/resend","version":"0.1.2-beta.1","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.2-beta.1","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"fc6b3d8b29ec0f6f4ed198037fdd62e1ce5d2a98","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.2-beta.1.tgz","fileCount":80,"integrity":"sha512-G0N1jShXmzhKzUAEAa2eo90Az0XgV3tf00GyrcPxX+f3YtzX1XknbaIZnu86DnV/7dgJENrze0203kGtmIJAhA==","signatures":[{"sig":"MEYCIQDDMYh6/32ycDH+aD+gPzixs58vbSZxRdK6WbDpbM82/QIhAI7yBZhd3zf1MEqcU4rZvOFImTYMocZzv0GV8gN2FBIX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":250945},"main":"./dist/commonjs/client/index.js","type":"module","types":"./dist/commonjs/client/index.d.ts","module":"./dist/esm/client/index.js","exports":{".":{"import":{"types":"./dist/esm/client/index.d.ts","default":"./dist/esm/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"require":{"types":"./dist/commonjs/client/index.d.ts","default":"./dist/commonjs/client/index.js","@convex-dev/component-source":"./src/client/index.ts"}},"./package.json":"./package.json","./convex.config":{"import":{"types":"./dist/esm/component/convex.config.d.ts","default":"./dist/esm/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}}},"gitHead":"5981efa75b9b97dd1472b7d0a38c75e187e1e453","scripts":{"dev":"cd example; npm run dev","test":"vitest run","build":"npm run build:esm && npm run build:cjs","prepack":"node node10stubs.mjs","prepare":"npm run build","postpack":"node node10stubs.mjs --cleanup","build:cjs":"tsc --project ./commonjs.json && echo '{\\n  \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json","build:esm":"tsc --project ./esm.json && echo '{\\n  \"type\": \"module\"\\n}' > dist/esm/package.json","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"jamwt","email":"jamwt@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.7.0","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.2.0","dependencies":{"svix":"^1.67.0","lodash":"^4.17.21","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.7"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","@types/lodash":"^4.17.17","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.2-beta.1_1749853967269_0.8943053875462437","host":"s3://npm-registry-packages-npm-production"}},"0.1.2-beta.2":{"name":"@convex-dev/resend","version":"0.1.2-beta.2","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.2-beta.2","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"3397741584cfe2cbb2e5bade7bd94a4a87116100","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.2-beta.2.tgz","fileCount":80,"integrity":"sha512-Dmp7oq7NNf9jM7TajEOTQVlJnlRSmweTPI7ROP7XIr8GesPXGRHXkvKj+ZiC1A1uyYTgEpVqh/255tu1Zl/kwQ==","signatures":[{"sig":"MEUCIA9tNjdoQGkRR8FvhDQKWvsVnClelCNPlM3lleWTOGo8AiEAwETbllai609W4uKMiBWR4gMNphJWua6cd8rnGDKwyzg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":250945},"main":"./dist/commonjs/client/index.js","type":"module","types":"./dist/commonjs/client/index.d.ts","module":"./dist/esm/client/index.js","exports":{".":{"import":{"types":"./dist/esm/client/index.d.ts","default":"./dist/esm/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"require":{"types":"./dist/commonjs/client/index.d.ts","default":"./dist/commonjs/client/index.js","@convex-dev/component-source":"./src/client/index.ts"}},"./package.json":"./package.json","./convex.config":{"import":{"types":"./dist/esm/component/convex.config.d.ts","default":"./dist/esm/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}}},"gitHead":"9419cded6189230c6ceb3598b742c00b36eaf16f","scripts":{"dev":"cd example; npm run dev","test":"vitest run","build":"npm run build:esm && npm run build:cjs","prepack":"node node10stubs.mjs","prepare":"npm run build","postpack":"node node10stubs.mjs --cleanup","build:cjs":"tsc --project ./commonjs.json && echo '{\\n  \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json","build:esm":"tsc --project ./esm.json && echo '{\\n  \"type\": \"module\"\\n}' > dist/esm/package.json","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"jamwt","email":"jamwt@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.7.0","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.2.0","dependencies":{"svix":"^1.67.0","lodash":"^4.17.21","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.7"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","@types/lodash":"^4.17.17","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.2-beta.2_1749854231119_0.18346556225982336","host":"s3://npm-registry-packages-npm-production"}},"0.1.2-alpha.0":{"name":"@convex-dev/resend","version":"0.1.2-alpha.0","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.2-alpha.0","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"9f088dc42446f947b9da7ffd26a8369139518143","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.2-alpha.0.tgz","fileCount":83,"integrity":"sha512-zeoIt01Fo+tqIkiEzLlshA205NB0NpUjAFuW4pLJPG2FQQ1Qh9KwDz0YcvjzdH5Vp/2N+UnsKml6BVzuBgCFMA==","signatures":[{"sig":"MEQCIH27MheeVkQeb1uSvZA1qUm4qz5HM6PCCwspmQN3RiUSAiAnPMLTpcEwF1/gtQzXJKYTGU3lr+oKNjd2lKjAvM1RkQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":254273},"main":"./dist/commonjs/client/index.js","type":"module","types":"./dist/commonjs/client/index.d.ts","module":"./dist/esm/client/index.js","exports":{".":{"import":{"types":"./dist/esm/client/index.d.ts","default":"./dist/esm/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"require":{"types":"./dist/commonjs/client/index.d.ts","default":"./dist/commonjs/client/index.js","@convex-dev/component-source":"./src/client/index.ts"}},"./package.json":"./package.json","./convex.config":{"import":{"types":"./dist/esm/component/convex.config.d.ts","default":"./dist/esm/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}}},"gitHead":"7992d6153435f9db6b23ed86b0d7b366aaca0b62","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"npm run build:esm && npm run build:cjs","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","build:cjs":"tsc --project ./commonjs.json && echo '{\\n  \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json","build:esm":"tsc --project ./esm.json && echo '{\\n  \"type\": \"module\"\\n}' > dist/esm/package.json","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"cd src && npx chokidar -d 1000 '../tsconfig.json' '**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","actor":{"name":"ianatconvex","type":"user","email":"ian@convex.dev"},"email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","lodash":"^4.17.21","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@types/lodash":"^4.17.17","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.2-alpha.0_1752007754671_0.11094809873659583","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@convex-dev/resend","version":"0.1.2","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.2","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"70988f8c05607322fba360a3712e34ffa7f77f52","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.2.tgz","fileCount":83,"integrity":"sha512-eRVTE6G4l7vm8/VhYkKAGQLaV6EMeSHmJSRUZbDTj2wL+++jYXKWmIKjJtPFsdUGVI0fE7AohRsKE/VxK4OOug==","signatures":[{"sig":"MEQCICohx0wL6Refx/V5c/HSNsw9LcLt9s4XBeyBjFm0mBj0AiAzX+ScRqAdA2i19j1E4XWgZg1sOqVKX0OzDLfhdXy8pw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":254265},"main":"./dist/commonjs/client/index.js","type":"module","types":"./dist/commonjs/client/index.d.ts","module":"./dist/esm/client/index.js","exports":{".":{"import":{"types":"./dist/esm/client/index.d.ts","default":"./dist/esm/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"require":{"types":"./dist/commonjs/client/index.d.ts","default":"./dist/commonjs/client/index.js","@convex-dev/component-source":"./src/client/index.ts"}},"./package.json":"./package.json","./convex.config":{"import":{"types":"./dist/esm/component/convex.config.d.ts","default":"./dist/esm/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}}},"gitHead":"91e8f79d2701a4b32884815589ef41946b62bd15","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"npm run build:esm && npm run build:cjs","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","build:cjs":"tsc --project ./commonjs.json && echo '{\\n  \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json","build:esm":"tsc --project ./esm.json && echo '{\\n  \"type\": \"module\"\\n}' > dist/esm/package.json","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"cd src && npx chokidar -d 1000 '../tsconfig.json' '**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","actor":{"name":"ianatconvex","type":"user","email":"ian@convex.dev"},"email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","lodash":"^4.17.21","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@types/lodash":"^4.17.17","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.2_1752008603037_0.7662273929346248","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@convex-dev/resend","version":"0.1.3","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.3","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"4736c4365ee8a44c463f64b19f5f8a2d743f8852","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.3.tgz","fileCount":83,"integrity":"sha512-0HcZkwpBIHTqipmmMTraddkGi0NKut19V6Io1sRnC63UdkS/vGqyxrUWq4ALOJGQZH0BdC7snlYVE22n3BtsEg==","signatures":[{"sig":"MEQCID2X3mQBlaefn/k6KshnCESyt9xyKlAAB6heSfiGsvi/AiB8ePALOrcFzCE+/UL0Srf979okEwz+EvURyD+w2uHwhw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":258370},"main":"./dist/commonjs/client/index.js","type":"module","types":"./dist/commonjs/client/index.d.ts","module":"./dist/esm/client/index.js","exports":{".":{"import":{"types":"./dist/esm/client/index.d.ts","default":"./dist/esm/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"require":{"types":"./dist/commonjs/client/index.d.ts","default":"./dist/commonjs/client/index.js","@convex-dev/component-source":"./src/client/index.ts"}},"./package.json":"./package.json","./convex.config":{"import":{"types":"./dist/esm/component/convex.config.d.ts","default":"./dist/esm/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}}},"gitHead":"cef491b0cbd091d4a426d290934db30563aef118","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"npm run build:esm && npm run build:cjs","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","build:cjs":"tsc --project ./commonjs.json && echo '{\\n  \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json","build:esm":"tsc --project ./esm.json && echo '{\\n  \"type\": \"module\"\\n}' > dist/esm/package.json","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"cd src && npx chokidar -d 1000 '../tsconfig.json' '**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","lodash":"^4.17.21","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@types/lodash":"^4.17.17","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.3_1752218614965_0.3861206785264535","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-alpha.0":{"name":"@convex-dev/resend","version":"0.1.4-alpha.0","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.4-alpha.0","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"bee0ea5888161d319bfa44f382f162541d296d98","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.4-alpha.0.tgz","fileCount":83,"integrity":"sha512-0KsD6ZNI2pS1JRBZh2s/sWNLWSOYMK//H7zaRZuefLkVGe+V287GqtvO9V39D7QMGKUjhRntZi78UEW82W8AiA==","signatures":[{"sig":"MEQCIGqEPegN9Repfr6bCZ+0SfAHNLgO/xb3fbeJcFu6Dr5FAiBVzs6Hld7ivQRthu2hKjffYKMEc9ld5I3fFkeCo2mbKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":258744},"main":"./dist/commonjs/client/index.js","type":"module","types":"./dist/commonjs/client/index.d.ts","module":"./dist/esm/client/index.js","exports":{".":{"import":{"types":"./dist/esm/client/index.d.ts","default":"./dist/esm/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"require":{"types":"./dist/commonjs/client/index.d.ts","default":"./dist/commonjs/client/index.js","@convex-dev/component-source":"./src/client/index.ts"}},"./package.json":"./package.json","./convex.config":{"import":{"types":"./dist/esm/component/convex.config.d.ts","default":"./dist/esm/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}}},"gitHead":"29f9ade92b8e2328f78666650e1d924e47556121","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"npm run build:esm && npm run build:cjs","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","build:cjs":"tsc --project ./commonjs.json && echo '{\\n  \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json","build:esm":"tsc --project ./esm.json && echo '{\\n  \"type\": \"module\"\\n}' > dist/esm/package.json","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"cd src && npx chokidar -d 1000 '../tsconfig.json' '**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.4-alpha.0_1752710517854_0.03430400127696376","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-alpha.1":{"name":"@convex-dev/resend","version":"0.1.4-alpha.1","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.4-alpha.1","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"e933670af684e2ba2c17b06dfca764ec2d4809a9","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.4-alpha.1.tgz","fileCount":51,"integrity":"sha512-jyhj1kHJR7bv+GcAln8dbQeuRpY+vJfrhWeDYNmf1TeZsuNIFvVoN7W7F/REpzrSRhCGLvHKRQTfvtIdn8c+tA==","signatures":[{"sig":"MEUCIQD4GzVAmmcYPJhFBoQIYJXUG6kedlCOhqrtXbYu9njK+wIgOyKcSKd/Q5lO79k6H/38CHAhzRK9uHS/hqrec3GN0FA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179691},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}},"gitHead":"be6980979ba8050c41a9d56a4173a736e0627cb4","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && npm run copy:dts && echo '{\\n  \"type\": \"module\"\\n}' > dist/package.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","copy:dts":"rsync -a --include='*/' --include='*.d.ts' --exclude='*' src/ dist/ || cpy 'src/**/*.d.ts' 'dist/' --parents","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.4-alpha.1_1752711045409_0.7141320975331731","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@convex-dev/resend","version":"0.1.4","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.4","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"97f140b9c5e1b573f0fb7d7d2a9309f48a7af7e0","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.4.tgz","fileCount":51,"integrity":"sha512-+f7mAEQZmaYznJJncm+ArPH4uVuLiMMP2cDN7EmrdPXVa11JA+n7mV4yINaDFEWBGTJG2HDM6V8rPfvhVDAn+A==","signatures":[{"sig":"MEUCIC+VEsQxcQSKdeMFU58DZMFziOiks95zAc/uAvZVbnXbAiEAoNZ4BAQkiLkVCR5X3uV3M5hjqSrOMT1moNuXNVX00WA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179743},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}},"gitHead":"d0c8d113cb16404e46a5689ff49f70646f02bf62","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && npm run copy:dts && echo '{\\n  \"type\": \"module\"\\n}' > dist/package.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","copy:dts":"rsync -a --include='*/' --include='*.d.ts' --exclude='*' src/ dist/ || cpy 'src/**/*.d.ts' 'dist/' --parents","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.4_1752779010244_0.40431130056691944","host":"s3://npm-registry-packages-npm-production"}},"0.1.5-alpha.0":{"name":"@convex-dev/resend","version":"0.1.5-alpha.0","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.5-alpha.0","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"50c60594ab9fd78d533ec45ebdc364d62f0e0d46","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.5-alpha.0.tgz","fileCount":49,"integrity":"sha512-U2Jya0581jTL8FDwcmwieCl1MUK6uai3xD52zw58zfhJ1hfDKh+/tp0FE26GN35v4B2HYDRsTMCwDp50BH7JXw==","signatures":[{"sig":"MEQCIHsTEe/NpddRZqnBrRzWFAlzAbBgJom2Cb3HUXB4nAFxAiBaVuRJRJT43Hya/fc1G3zIqLi3vUd45jVLieBLz9Wjog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":166902},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js","@convex-dev/component-source":"./src/client/index.ts"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js","@convex-dev/component-source":"./src/component/convex.config.ts"}},"gitHead":"3e6ef49f4b5cfe542937ddf4d367f790882957d4","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.10","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.9.1","vitest":"^2.1.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.5-alpha.0_1752782726639_0.8658421769512248","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@convex-dev/resend","version":"0.1.5","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.5","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"85338cfee5d6b71d8e412698112b0bfded1b593b","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.5.tgz","fileCount":44,"integrity":"sha512-2DueU4plIOKueCGnjgziU29H559kxQhvtFxvpLMuIXvm4fW9Y+GCpJaLY/mCEp3tWos89nH8IrlkJ3tmJtTpRg==","signatures":[{"sig":"MEQCICs/KiQFSlGiJQYgEAiHRWoPdY8a1+Y304r34n5g+NwKAiA8n16+iiXcOFaXu9FbV1qofBytQMK5lc2ftwubeJBnJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178271},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"b741c0c85e3a922ea614ab9742057a9ab4a966ca","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.5_1753311437681_0.9788819997059963","host":"s3://npm-registry-packages-npm-production"}},"0.1.6-alpha.0":{"name":"@convex-dev/resend","version":"0.1.6-alpha.0","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.6-alpha.0","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"e9f6b50bbf6fe81f989f35ee9ef999082ad67376","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.6-alpha.0.tgz","fileCount":44,"integrity":"sha512-bh2L7Yyv6BQycOlTzwkDGAbYpY4d1aK1m3KRzd/j+5d6xTfA1TMZ+FaVjI3r3WPoj3LbWKwRwW33DG+7CcTO9w==","signatures":[{"sig":"MEUCIQD7bQqaoiToZLP8wLPtoeT9lRBiEbIOgt0JFnnZnt68vgIgHb/U2Lerrh7SaixspCkW4GVy7sNss8Xtkt9MqXGM8/c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":181059},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"8e0ad65f1ebe2061a26b76c0779bbf94618bf630","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.6-alpha.0_1753311654051_0.05702481480704158","host":"s3://npm-registry-packages-npm-production"}},"0.1.6-alpha.1":{"name":"@convex-dev/resend","version":"0.1.6-alpha.1","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.6-alpha.1","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"b43777d4c99161751f300d37c805bbd806f17568","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.6-alpha.1.tgz","fileCount":44,"integrity":"sha512-DeKIOLxXaabiaWUrBISPJFHHem93yk/PUm++pZmkMLzI7AjhQuv8XoXj5CUrF4A1MLLkpZKFNuqUg73/wyBy7w==","signatures":[{"sig":"MEYCIQCTnL0ZTY+SFEzsfXaBf48m5vCtoOWpyuOftlZvq18WVwIhAL7RbjYEYCu1FneaCZvN8cslpP0aNXz7XqFdc96dA/zB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":181106},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"64e2729fd4c1e349198fb73ff1e8b22b9d1ad749","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.6-alpha.1_1753317931124_0.7054490896705328","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@convex-dev/resend","version":"0.1.6","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.6","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"a2669d703803adc5c58d9bda98bdf2fa7ee0ff2d","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.6.tgz","fileCount":44,"integrity":"sha512-nJpLUXOE0Q4f/NXErqi6xP5qURqjZQazF8YiRnBfH6LbUtO2j5bQqdcfgrl0rttyIkVIzVk1eX47CkgM2Ln2cQ==","signatures":[{"sig":"MEUCIBtSTbWX1ihQbnOx2XZZmpnI3gdYfk2g4poMM5gu/yuMAiEA/I/lWp6oYarPo0D2RiFXgi4CNeUd6rG2knlOFPPdHV8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":181098},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"7afe716bb0812d15b52b1b9dc7b3a7a8811302d6","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.6_1753318689224_0.8754740853330687","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@convex-dev/resend","version":"0.1.7","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.7","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"63a5583b6d4b2e2675a299e57583977db473db7d","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.7.tgz","fileCount":44,"integrity":"sha512-7OXY6DfC/qy3CjMBHA9H/JikjrUNpZFSS4B1sVAzQfQvVElThqQAj/E2h9Z4mDhwRv5bxGgJfckHyyP+u+ZSRA==","signatures":[{"sig":"MEQCIFIq7U+kPmDyNDpNSy0AlCTi9nsz05yoliWAgiNr9IKUAiAUH43aXP/1bpkNgUVVTF7NYZWetGEp6GDfsOVphieCkw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":232874},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"28ca16c29441a508c45341afdc8f9ac91db6f28a","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"18.18.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.7_1753490535484_0.07258087732375906","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@convex-dev/resend","version":"0.1.8","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.8","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"ed04289ca0d1f6337803278751792a4106da72a2","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.8.tgz","fileCount":44,"integrity":"sha512-h/oOudIdYL5xKgu5cYj+1EqvOJJ2PK+EsxRgu6DnE1SQkqM9gA1l/k8zdF0mCFZ2JR03CCMgY8ePRSJvVLtGqg==","signatures":[{"sig":"MEQCIG770D6xWqHMEGDWdcx9vbCGW1fCUB2U8fhR8gmxZNAqAiByhLsV4lMzltBFcN2GfU7HTtV3RhkC/1X5hX+w4jnB5w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283140},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"5fac52fbf4d74d7b6ab29a561cbaa0f209e11db5","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"20.19.0","dependencies":{"svix":"^1.67.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.8_1754431610180_0.9940956300858115","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@convex-dev/resend","version":"0.1.9","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.9","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"27161603615ccad492de68e517637635f678084b","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.9.tgz","fileCount":56,"integrity":"sha512-/sNP/h22q53iGSBmo8FRYZz0jN3uSWUr8Manjsox6mPeFHhTEgFR0hSahTk27SJeOAA1UA9lkMPD3gBBpUVxKw==","signatures":[{"sig":"MEUCIQDvh5ZKJ1RYGAln0cZPUVRSoF6EdoSAuvlO3dW8myxxdgIgSkbRIg9mnWbD+kKvTJdoM7OghQWkGBxUloOD/y6Q0U4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":301702},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"f1207b1d5d9dddc27f85ccd3ad8fcdd6e5150b6e","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"20.19.0","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.9_1754440773861_0.856315490447092","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@convex-dev/resend","version":"0.1.10","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.10","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"86bcc900fbede2ee58b2267be9e317d5ca57df88","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.10.tgz","fileCount":56,"integrity":"sha512-Mj0ygti3iaZXyW0vjW9GlxdVHymBELE/NZm9LT83iscIGRQD9vCeP9GsDGrP7X5gtiPtQSIRq85VxFpLg+R2Ig==","signatures":[{"sig":"MEYCIQDfY95pZ1U3SXkU52UjpYJcfzCitcZlAg4j6OANOGL+RwIhALeRGxeNxxeKhSWK2HByGKqjzipWpVJoDZmHzwVEsGFW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319625},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"a078844d520b6f31ccd92319eddecbc192827e1f","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.5.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"20.19.0","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"convex":"1.25.4","eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.10_1755204428577_0.20958348076896094","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@convex-dev/resend","version":"0.1.11","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.11","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"4c28f00c7ef83ac025fecb82416211ab12993f99","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.11.tgz","fileCount":56,"integrity":"sha512-ZRQCG6ymaOdqgd804C/K3RRNfxkKRELnKYNxcB5sTZUzyjtP8wZsIEU6hoyB46IEuMlLy6FUHKw/9cMFJaffWA==","signatures":[{"sig":"MEYCIQCGMxOB65SBUriFuV941PnEiBlS8R2tn1IbeGsArpuVAgIhAMWuon4cTLEsu4uUAknadwvfq2fYU3Y07YAIWly/l4WY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319565},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"8e445d58a38cfb60a46ae21f899f91c7ba62a49b","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.5.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"20.19.0","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"convex":"1.25.4","eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.11_1756848799204_0.39550271620058974","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@convex-dev/resend","version":"0.1.12","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.12","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"da1db0aa7abc407c31bb0f2f0210d163af70d746","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.12.tgz","fileCount":56,"integrity":"sha512-afdoRqYwBVRwB/gD+xUHko8937xcw3EVzTPGN6CS7xEjEsgRnIpl11LRxxqdLzfMpXHR7pkDUsHhlW3zTPrRyw==","signatures":[{"sig":"MEUCIQC3xrNGOSCP01FDaZ2X/CQXB5fipzUgLKejwCGFYI77CwIgbKh/6ob/jGJLQEh0Bms8RknRfPS8dBUO0CeEUNzWbkc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319170},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"6e5f6f90b9907f94ebec6677f0b8c399743a80f4","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.5.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"20.19.0","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"convex":"1.25.4","eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.12_1756849246618_0.7643083978688201","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@convex-dev/resend","version":"0.1.13","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.1.13","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ikhare","email":"ikhare@convex.dev"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"sshader","email":"sarah@convex.dev"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"05d5f2c6b2010b1294dec77dc629390bd5762962","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.1.13.tgz","fileCount":57,"integrity":"sha512-caVvN3o1XgLti7ieo2fAlfgR7oK+WEVag/FS3P5tf5l4+u7ewxd414u+PftxbsUMb3liY4fdsH0QNgbTr8o9DA==","signatures":[{"sig":"MEYCIQCDyEn896Pi8TEKLSfdkV4gF3Dvdfst7K1Lduug0vE0mwIhAIpbPLa4LBQLBYmLN43a/kRIPpYwGBM98yIdWvnw6+WV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322508},"main":"./dist/client/index.js","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"}},"gitHead":"dbf2634af4e61d0915e2a17d5274b2b324fe50b0","scripts":{"all":"run-p -r 'example' 'build:watch' 'test:watch'","dev":"run-p -r 'example' 'build:watch'","lint":"eslint src","test":"vitest run --typecheck --config ./src/vitest.config.ts","alpha":"npm run clean && npm run build && run-p test lint typecheck && npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json && tsc-alias -p tsconfig.build.json","clean":"rm -rf dist tsconfig.build.tsbuildinfo","setup":"npm i && npm run build && cd example && npm i && npx convex dev --once --live-component-sources --typecheck-components","example":"cd example && npm run dev","prepack":"node node10stubs.mjs","prepare":"npm run build","release":"npm run clean && npm run build && run-p test lint typecheck && npm version patch && npm publish && git push --tags","postpack":"node node10stubs.mjs --cleanup","dashboard":"cd example && npx convex dashboard","typecheck":"tsc --noEmit","test:debug":"vitest --inspect-brk --no-file-parallelism --config ./src/vitest.config.ts","test:watch":"vitest --typecheck --config ./src/vitest.config.ts","build:watch":"npx chokidar 'tsconfig*.json' 'src/**/*.ts' -c 'npm run build' --initial","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"8.19.4","description":"A resend component for Convex.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.2.17","@convex-dev/rate-limiter":"^0.2.10"},"_hasShrinkwrap":false,"devDependencies":{"convex":"1.25.4","eslint":"^9.9.1","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.9.0","prettier":"3.2.5","tsc-alias":"^1.8.16","@eslint/js":"^9.9.1","pkg-pr-new":"^0.0.54","typescript":"^5.5","@types/node":"^18.17.0","convex-test":"^0.0.33","chokidar-cli":"^3.0.0","npm-run-all2":"^7.0.2","@edge-runtime/vm":"^5.0.0","typescript-eslint":"^8.4.0"},"peerDependencies":{"convex":"^1.23.0","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.1.13_1758069829445_0.10158491751971765","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@convex-dev/resend","version":"0.2.0","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.0","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"a49fb2f9986361c50d8d36e499cfdbbee086f2c0","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.0.tgz","fileCount":64,"integrity":"sha512-HTGN42ZNPhwkhy7B1mqfwURj2IUMWLdhfIZKa8JyQIA4zmsQM6muT2F99NFEi9Zu+xYR4GVXm1oErqv/NlHE2A==","signatures":[{"sig":"MEYCIQDjqWjPbgRAvskqLd9QO0qeB9GF0oyTgGYYMlaQHlmUxwIhAMgcECeaDvBC+MyynBN/ecxk6oMnaKekpDLF7H/SQWae","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328921},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"d74b65d0e095bc45bd5a4ed0e06689014d8d7439","scripts":{"all":"run-p -r 'dev:*' 'test:watch'","dev":"run-p -r 'dev:*'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"path-exists .env.local || (npm run build && convex dev --once)","release":"npm version patch && npm publish && git push --tags && git push","version":"vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'convex codegen --component-dir ./src/component && npm run build' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm run clean && npm ci && npm run build && run-p test lint typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","dev:backend":"convex dev --typecheck-components","dev:frontend":"cd example && vite --clearScreen false","test:coverage":"vitest run --coverage --coverage.reporter=text","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.6.2","description":"A resend component for Convex.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.3.0","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.0","convex":"1.29.0","eslint":"^9.38.0","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.15.0","prettier":"3.2.5","react-dom":"^19.2.0","tsc-alias":"^1.8.16","@eslint/js":"^9.38.0","pkg-pr-new":"^0.0.54","typescript":"^5.9.3","@types/node":"20.19.24","convex-test":"0.0.41","chokidar-cli":"3.0.0","npm-run-all2":"7.0.2","path-exists-cli":"^2.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"^3.3.1","typescript-eslint":"^8.46.2","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"convex":"^1.24.8","convex-helpers":"^0.1.99"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.0_1764205203713_0.41256780210757427","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@convex-dev/resend","version":"0.2.1","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.1","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"7775471c49adc5110efce0eba4b7682029d1efec","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.1.tgz","fileCount":64,"integrity":"sha512-GbATNeXj6wQW14J+iyvabSCKxdUSpoUm3ZyXn/p67LLhc+qMXGmNNQuyGRSAAZYN4OF17kRID5wYD3XrAJFgeg==","signatures":[{"sig":"MEUCIQDQFCvvMHkB1I9CrgPx5suYWD+pfxlz6R9PlnAMm2WszAIgD32uGqNPD3t9TJE8clO0OEcGr/PeS98ongTRQ/fxskQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":368012},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"aad2ddd46518d708383b9a0888a9b68fdbc9b6d1","scripts":{"all":"run-p -r 'dev:*' 'test:watch'","dev":"run-p -r 'dev:*'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"path-exists .env.local dist || (npm run build && convex dev --until-success)","release":"npm version patch && npm publish && git push --follow-tags","version":"vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && run-p test lint typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:backend":"convex dev --typecheck-components","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.4","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.3.0","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.0","convex":"1.29.0","eslint":"^9.38.0","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.15.0","prettier":"3.2.5","react-dom":"^19.2.0","tsc-alias":"^1.8.16","@eslint/js":"^9.38.0","pkg-pr-new":"^0.0.54","typescript":"^5.9.3","@types/node":"20.19.24","convex-test":"0.0.41","chokidar-cli":"3.0.0","npm-run-all2":"7.0.2","path-exists-cli":"^2.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"^3.3.1","typescript-eslint":"^8.46.2","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"convex":"^1.24.8","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.1_1764971002844_0.35435787740596436","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@convex-dev/resend","version":"0.2.2","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.2","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"67666b1e20ce1b3d0d439658041ff142c6f2d086","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.2.tgz","fileCount":64,"integrity":"sha512-xMl4xriWaLX/ONM66Sq0crD0fprUh+j1gtPg6RNtCDu8ycV/SjeKhjHFmYKfByvR0TGg2FynWzhiZQVqse4Bgw==","signatures":[{"sig":"MEUCIENzRDsKtmRAX4nICbHsgVt0eJeb20CBxmD9heFgiqatAiEAvSyoQNv9R0xbyZcyTAEQvZmLzFSVZ0I9bUl4ai2efaE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":370541},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"dba641f929508b53b267da463c45cb8f5e8c793a","scripts":{"all":"run-p -r 'dev:*' 'test:watch'","dev":"run-p -r 'dev:*'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"path-exists .env.local dist || (npm run build && convex dev --until-success)","release":"npm version patch && npm publish && git push --follow-tags","version":"vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && run-p test lint typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:backend":"convex dev --typecheck-components","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.4","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","@convex-dev/workpool":"^0.3.0","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.0","convex":"1.29.0","eslint":"^9.38.0","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.15.0","prettier":"3.2.5","react-dom":"^19.2.0","tsc-alias":"^1.8.16","@eslint/js":"^9.38.0","pkg-pr-new":"^0.0.54","typescript":"^5.9.3","@types/node":"20.19.24","convex-test":"0.0.41","chokidar-cli":"3.0.0","npm-run-all2":"7.0.2","path-exists-cli":"^2.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"^3.3.1","typescript-eslint":"^8.46.2","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"convex":"^1.24.8","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.2_1765413615964_0.2576599508392041","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@convex-dev/resend","version":"0.2.3","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.3","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"ballingt","email":"thomasballinger@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"47f6a4e7ea176a9bd61f6b749719ed59fc2d8ec2","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.3.tgz","fileCount":64,"integrity":"sha512-eH7xmj49u0nZVvHyztxg3BLrBq2hJAVxJDBdmFFK07zgUCblGq+Pp6k7X+YtmBHcj8Eie4J0kUFeElu8L4KtBg==","signatures":[{"sig":"MEYCIQCnz2vlmZ69yJg/n/2iacSpjLKW88toh8t02eC9ghKO/QIhAJrMhXU6Codu8RJOorEWmop1mjE/2tBMIiGSKU00vaf2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":371076},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"321bf7dc4a694d827c3f5843f2bc61ca9afa2ac4","scripts":{"all":"run-p -r 'dev:*' 'test:watch'","dev":"run-p -r 'dev:*'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"path-exists .env.local dist || (npm run build && convex dev --until-success)","release":"npm version patch && npm publish && git push --follow-tags","version":"vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && run-p test lint typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:backend":"convex dev --typecheck-components","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.4","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.21.1","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","resend":"^6.6.0","@convex-dev/workpool":"^0.3.0","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.0","convex":"1.29.0","eslint":"^9.38.0","vitest":"^3.2.4","cpy-cli":"^5.0.0","globals":"^15.15.0","prettier":"3.2.5","react-dom":"^19.2.0","tsc-alias":"^1.8.16","@eslint/js":"^9.38.0","pkg-pr-new":"^0.0.54","typescript":"^5.9.3","@types/node":"20.19.24","convex-test":"0.0.41","@types/react":"^19.2.7","chokidar-cli":"3.0.0","npm-run-all2":"7.0.2","path-exists-cli":"^2.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"^3.3.1","typescript-eslint":"^8.46.2","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.4.24"},"peerDependencies":{"convex":"^1.24.8","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.3_1766190170095_0.46904112367483286","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@convex-dev/resend","version":"0.2.4","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.4","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"dowski-convex","email":"christian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"90e860d6d5c428c5c6cd6d2fc03502d05109a254","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.4.tgz","fileCount":64,"integrity":"sha512-R009qlbXG+6R0p/WmkTbfHzBo48ocKyfoqRAJ41AQdQDrdW6pPZrVOGgTOTLSIZwmXZp+1BbiNpzjc/+Zh/OVg==","signatures":[{"sig":"MEQCIBjczHB3j3dNsmyrbMbMDOYs3lru+mXhfm5O864hUNZlAiB7/Kz72Fip3LNW3Lx4G/XPmHGOKO1N8tLSVaIBgEFBaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":374873},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"6e5c2682ef09919486ac1ae157146e1bfa2dc933","scripts":{"dev":"convex dev --start 'npm run dev:build'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"convex init && npm run build:codegen","release":"npm version patch && npm publish && git push --follow-tags","version":"(npm whoami || npm login) && vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && npm run test && npm run lint && npm run typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"nicolapps","email":"nicolas@ettlin.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.11.0","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","resend":"^6.6.0","@convex-dev/workpool":"^0.4.6","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"19.2.6","convex":"1.38.0","eslint":"9.39.4","vitest":"4.1.6","globals":"17.6.0","prettier":"3.8.3","react-dom":"19.2.6","tsc-alias":"1.8.17","@eslint/js":"9.39.4","pkg-pr-new":"0.0.71","typescript":"5.9.3","@types/node":"24.12.4","convex-test":"0.0.52","@types/react":"19.2.14","chokidar-cli":"3.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"3.3.5","typescript-eslint":"8.59.3","@convex-dev/eslint-plugin":"2.0.0","eslint-plugin-react-hooks":"7.1.1","eslint-plugin-react-refresh":"0.5.2"},"peerDependencies":{"convex":"^1.31.7","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.4_1778864945774_0.9767159566442258","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@convex-dev/resend","version":"0.2.5","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.5","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"dowski-convex","email":"christian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"78180bdbbdcce5e15b6ad107c090854fddb4dbbc","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.5.tgz","fileCount":64,"integrity":"sha512-WDB1Q8Kz7bVQVlftmpfj5OXuNRjUGHbEAAscP6RqbxP0q/IydZeSRfPcYVLcJPn9GEjUiEv7+/gkkOYUSjutxA==","signatures":[{"sig":"MEYCIQDbIPuqAJvPNLJrlqbnDgrWDKCsYLR5HmpDRHirVrITJQIhANqTW4Y+xohS6iuUYhPruo/ywMRxWA2FDWqGBNZDXG4I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":375543},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"0b9a767db918348cdb9a74c6b90d738207a084fa","scripts":{"dev":"convex dev --start 'npm run dev:build'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"convex init && npm run build:codegen","release":"npm version patch && npm publish && git push --follow-tags","version":"(npm whoami || npm login) && vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && npm run test && npm run lint && npm run typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"erquhart","email":"shawn@erquh.art"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"10.9.7","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","resend":"^6.6.0","@convex-dev/workpool":"^0.4.6","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"19.2.6","convex":"1.39.1","eslint":"10.4.1","vitest":"4.1.7","globals":"17.6.0","prettier":"3.8.3","react-dom":"19.2.6","tsc-alias":"1.8.17","@eslint/js":"10.0.1","pkg-pr-new":"0.0.75","typescript":"5.9.3","@types/node":"24.12.4","convex-test":"0.0.53","@types/react":"19.2.15","chokidar-cli":"3.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"3.3.5","typescript-eslint":"8.60.0","@convex-dev/eslint-plugin":"2.0.0","eslint-plugin-react-hooks":"7.1.1","eslint-plugin-react-refresh":"0.5.2"},"peerDependencies":{"convex":"^1.31.7","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.5_1781661866732_0.831541578516523","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@convex-dev/resend","version":"0.2.6","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.6","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"dowski-convex","email":"christian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"4d62cdba5b103301b27b0d09a26bd63c7c6e993e","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.6.tgz","fileCount":64,"integrity":"sha512-TUmHezzRDtZFrsEC32c5lu5JHXlTSb7zNoaXNETKI5+X1xOrAkRT3sK/HoeWFqb/Xy42h+hqnqQWwnWpGNMiFA==","signatures":[{"sig":"MEYCIQCsRb2mZc97hHWZcjL//LbIKDEQ2jHf3mSre7aJhw81zQIhAJBcKPKGYd6f5O96cEu7JdEz75ZQ5YTbSWTaqpIgyJM1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":380820},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"26d17f9598540e2d82bf9547afbbc07f7104e46b","scripts":{"dev":"convex dev --start 'npm run dev:build'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"convex init && npm run build:codegen","release":"npm version patch && npm publish && git push --follow-tags","version":"(npm whoami || npm login) && vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && npm run test && npm run lint && npm run typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.11.0","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","resend":"^6.6.0","@convex-dev/workpool":"^0.4.6","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"19.2.7","convex":"1.42.1","eslint":"10.7.0","vitest":"4.1.10","globals":"17.7.0","prettier":"3.9.5","react-dom":"19.2.7","tsc-alias":"1.9.0","@eslint/js":"10.0.1","pkg-pr-new":"0.0.75","typescript":"5.9.3","@types/node":"24.13.3","convex-test":"0.0.54","@types/react":"19.2.17","chokidar-cli":"3.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"3.3.6","typescript-eslint":"8.63.0","@convex-dev/eslint-plugin":"2.0.0","eslint-plugin-react-hooks":"7.1.1","eslint-plugin-react-refresh":"0.5.3"},"peerDependencies":{"convex":"^1.31.7","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.6_1785212576475_0.27343581648455606","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@convex-dev/resend","version":"0.2.7","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.7","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"dowski-convex","email":"christian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"andycai-convex","email":"andy@convex.dev"},{"name":"mikewheaton","email":"mike@wheaton.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"590e404904bc21f7371a2592ba10a6a5260cc4cb","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.7.tgz","fileCount":64,"integrity":"sha512-n5KTnTKEGPI2vwCS2WqSXITvkUmEk0vGOuB9beAeBMmsK53Y/O0+KDjPINVy1EW4jAtnByFbAqgwyt20humdDQ==","signatures":[{"sig":"MEYCIQDpydcTSP2CMsBMrWqXObHko8pumyWZN2MChwD7e0Yf1AIhALZxTHvkv7NuMZd2NP4giJU4QMkqdtnG9mBWaqxj206n","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":381760},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"becef561633a64fa7a878fb85b7f901740e01b5c","scripts":{"dev":"convex dev --start 'npm run dev:build'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"convex init && npm run build:codegen","release":"npm version patch && npm publish && git push --follow-tags","version":"(npm whoami || npm login) && vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && npm run test && npm run lint && npm run typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.11.0","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","resend":"^6.6.0","@convex-dev/workpool":"^0.4.10","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"19.2.7","convex":"1.44.0","eslint":"10.7.0","vitest":"4.1.10","globals":"17.7.0","prettier":"3.9.5","react-dom":"19.2.7","tsc-alias":"1.9.0","@eslint/js":"10.0.1","pkg-pr-new":"0.0.75","typescript":"5.9.3","@types/node":"24.13.3","convex-test":"0.0.54","@types/react":"19.2.17","chokidar-cli":"3.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"3.3.6","typescript-eslint":"8.63.0","@convex-dev/eslint-plugin":"2.0.0","eslint-plugin-react-hooks":"7.1.1","eslint-plugin-react-refresh":"0.5.3"},"peerDependencies":{"convex":"^1.43.0","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.7_1787347264709_0.7240200415636979","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@convex-dev/resend","version":"0.2.8","keywords":["convex","component"],"license":"Apache-2.0","_id":"@convex-dev/resend@0.2.8","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"emmaling27","email":"emma@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"dowski-convex","email":"christian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"andycai-convex","email":"andy@convex.dev"},{"name":"mikewheaton","email":"mike@wheaton.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"homepage":"https://github.com/get-convex/resend#readme","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"0838f7797c92e26217b2819676829004fb64a255","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.8.tgz","fileCount":64,"integrity":"sha512-N7S7+cZEjP0wi1EEfTg4lhrmq4+SskDnx7AM6jPh2tqaIpjK5b7YJqXYe2avds8ojBMNq1MGmW7oSf0bvjISrA==","signatures":[{"sig":"MEYCIQDAK9qvuSayeqbxCYj53tqEtDJuyjiU+6IfWDUUh9MxcgIhAIrc6aafAEqz2iY5T6SDLJ6rSVT7ssId23y4fIMP0oLt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":389345},"type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"93795ca825d97462838ac359a858b4a4162e06bf","scripts":{"dev":"convex dev --start 'npm run dev:build'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"convex init && npm run build:codegen","release":"npm version patch && npm publish && git push --follow-tags","version":"(npm whoami || npm login) && vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && npm run test && npm run lint && npm run typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"_npmUser":{"name":"reece-convex","email":"reece@convex.dev"},"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.11.0","description":"A resend component for Convex.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","resend":"^6.6.0","@convex-dev/workpool":"^0.4.10","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"19.2.7","convex":"1.44.0","eslint":"10.7.0","vitest":"4.1.10","globals":"17.7.0","prettier":"3.9.5","react-dom":"19.2.7","tsc-alias":"1.9.0","@eslint/js":"10.0.1","pkg-pr-new":"0.0.75","typescript":"5.9.3","@types/node":"24.13.3","convex-test":"0.0.54","@types/react":"19.2.17","chokidar-cli":"3.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"3.3.6","typescript-eslint":"8.63.0","@convex-dev/eslint-plugin":"4.0.0","eslint-plugin-react-hooks":"7.1.1","eslint-plugin-react-refresh":"0.5.3"},"peerDependencies":{"convex":"^1.43.0","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"tmp":"tmp/resend_0.2.8_1788301351047_0.8970338985345516","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"_id":"@convex-dev/resend@0.2.9","bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"dist":{"shasum":"98ee05e5a2307165b1ff53044e1db97e1141e55e","tarball":"https://registry.npmjs.org/@convex-dev/resend/-/resend-0.2.9.tgz","fileCount":64,"integrity":"sha512-4Qx2PTViSKWrcf+yS+nVZT6WNkz/XHus0xicfSd/eB6S8L6FrJH7dTD0fcToPotCm+6F6FTHpR2cHgDfjRP6KQ==","signatures":[{"sig":"MEUCIQCanO4qHmZ/PRf7IVx6tTw0Xfb1jvmqvrvH4/IFM7NMbwIgaHsPjlJLDcjcuVg3s8wGkpfPMt0lyACbQpyEabPOcSQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHL9piQ/+1ZFnNg9p2vc4fWg/oS9JoJucAhazjKnu6PeAiAqyuEz7LDAEa9vDYCCU/n3weG16UdBtHVnl8Q5KIaAkg=="}],"unpackedSize":389672},"name":"@convex-dev/resend","type":"module","types":"./dist/client/index.d.ts","module":"./dist/client/index.js","exports":{".":{"types":"./dist/client/index.d.ts","default":"./dist/client/index.js"},"./test":"./src/test.ts","./package.json":"./package.json","./convex.config":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./convex.config.js":{"types":"./dist/component/convex.config.d.ts","default":"./dist/component/convex.config.js"},"./_generated/component.js":{"types":"./dist/component/_generated/component.d.ts"}},"gitHead":"44baf7e4f30c68f1d8f8504bae239edae1612032","license":"Apache-2.0","scripts":{"dev":"convex dev --start 'npm run dev:build'","lint":"eslint .","test":"vitest run --typecheck","alpha":"npm version prerelease --preid alpha && npm publish --tag alpha && git push --follow-tags","build":"tsc --project ./tsconfig.build.json","clean":"rm -rf dist *.tsbuildinfo","predev":"convex init && npm run build:codegen","release":"npm version patch && npm publish && git push --follow-tags","version":"(npm whoami || npm login) && vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md","dev:build":"chokidar 'tsconfig*.json' 'src/**/*.ts' -i '**/*.test.ts' -c 'npm run build:codegen' --initial","typecheck":"tsc --noEmit && tsc -p example/convex","preversion":"npm ci && npm run build:clean && npm run test && npm run lint && npm run typecheck","test:debug":"vitest --inspect-brk --no-file-parallelism","test:watch":"vitest --typecheck --clearScreen false","build:clean":"rm -rf dist *.tsbuildinfo && npm run build:codegen","dev:frontend":"cd example && vite --clearScreen false","build:codegen":"npx convex codegen --component-dir ./src/component && npm run build","test:coverage":"vitest run --coverage --coverage.reporter=text"},"version":"0.2.9","_npmUser":{"name":"ianatconvex","email":"ian@convex.dev"},"homepage":"https://github.com/get-convex/resend#readme","keywords":["convex","component"],"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"_npmVersion":"11.11.0","description":"A resend component for Convex.","directories":{},"maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"dowski-convex","email":"christian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"timdoug-convex","email":"timdoug@convex.dev"},{"name":"ayushdewanconvex","email":"ayush@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"andycai-convex","email":"andy@convex.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"_nodeVersion":"22.22.2","dependencies":{"svix":"^1.70.0","remeda":"^2.26.0","resend":"^6.6.0","@convex-dev/workpool":"^0.4.10","@convex-dev/rate-limiter":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"react":"19.2.7","convex":"1.44.0","eslint":"10.7.0","vitest":"5.0.0","globals":"17.7.0","prettier":"3.9.5","react-dom":"19.2.7","tsc-alias":"1.9.0","@eslint/js":"10.0.1","pkg-pr-new":"0.0.75","typescript":"5.9.3","@types/node":"24.13.3","convex-test":"0.0.54","@types/react":"19.2.17","chokidar-cli":"3.0.0","@edge-runtime/vm":"5.0.0","@eslint/eslintrc":"3.3.6","typescript-eslint":"8.63.0","@convex-dev/eslint-plugin":"5.0.0","eslint-plugin-react-hooks":"7.1.1","eslint-plugin-react-refresh":"0.5.3"},"peerDependencies":{"convex":"^1.43.0","convex-helpers":"^0.1.106"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/resend_0.2.9_1791592871228_0.38833514332948926"}}},"time":{"created":"2025-06-13T21:57:00.449Z","modified":"2026-10-10T00:41:11.505Z","0.1.2-beta.0":"2025-06-13T21:57:00.658Z","0.1.2-beta.1":"2025-06-13T22:32:47.478Z","0.1.2-beta.2":"2025-06-13T22:37:11.376Z","0.1.2-alpha.0":"2025-07-08T20:49:14.846Z","0.1.2":"2025-07-08T21:03:23.243Z","0.1.3":"2025-07-11T07:23:35.161Z","0.1.4-alpha.0":"2025-07-17T00:01:58.088Z","0.1.4-alpha.1":"2025-07-17T00:10:45.600Z","0.1.4":"2025-07-17T19:03:30.428Z","0.1.5-alpha.0":"2025-07-17T20:05:26.862Z","0.1.5":"2025-07-23T22:57:17.906Z","0.1.6-alpha.0":"2025-07-23T23:00:54.248Z","0.1.6-alpha.1":"2025-07-24T00:45:31.305Z","0.1.6":"2025-07-24T00:58:09.410Z","0.1.7":"2025-07-26T00:42:15.685Z","0.1.8":"2025-08-05T22:06:50.408Z","0.1.9":"2025-08-06T00:39:34.106Z","0.1.10":"2025-08-14T20:47:08.772Z","0.1.11":"2025-09-02T21:33:19.428Z","0.1.12":"2025-09-02T21:40:46.814Z","0.1.13":"2025-09-17T00:43:49.642Z","0.2.0":"2025-11-27T01:00:03.898Z","0.2.1":"2025-12-05T21:43:23.009Z","0.2.2":"2025-12-11T00:40:16.117Z","0.2.3":"2025-12-20T00:22:50.242Z","0.2.4":"2026-05-15T17:09:05.955Z","0.2.5":"2026-06-17T02:04:26.893Z","0.2.6":"2026-07-28T04:22:56.637Z","0.2.7":"2026-08-21T21:21:04.877Z","0.2.8":"2026-09-01T22:22:31.201Z","0.2.9":"2026-10-10T00:41:11.316Z"},"bugs":{"url":"https://github.com/get-convex/resend/issues","email":"support@convex.dev"},"license":"Apache-2.0","homepage":"https://github.com/get-convex/resend#readme","keywords":["convex","component"],"repository":{"url":"git+https://github.com/get-convex/resend.git","type":"git"},"description":"A resend component for Convex.","maintainers":[{"name":"cowling","email":"james@convex.dev"},{"name":"jordanhunt","email":"jordan@convex.dev"},{"name":"gautamg795","email":"gautam@convex.dev"},{"name":"nipunn","email":"nipunn1313@gmail.com"},{"name":"aritrakh","email":"aritrakh@gmail.com"},{"name":"ianatconvex","email":"ian@convex.dev"},{"name":"dowski-convex","email":"christian@convex.dev"},{"name":"reece-convex","email":"reece@convex.dev"},{"name":"timdoug-convex","email":"timdoug@convex.dev"},{"name":"ayushdewanconvex","email":"ayush@convex.dev"},{"name":"erquhart","email":"shawn@erquh.art"},{"name":"sethconvex","email":"seth@convex.dev"},{"name":"andycai-convex","email":"andy@convex.dev"},{"name":"jamwt","email":"jamwt@convex.dev"},{"name":"nicolapps","email":"nicolas@ettlin.dev"}],"readme":"# Resend Convex Component\n\n[![npm version](https://badge.fury.io/js/@convex-dev%2Fresend.svg)](https://badge.fury.io/js/@convex-dev%2Fresend)\n\nThis component is the official way to integrate the Resend email service with\nyour Convex project.\n\nFeatures:\n\n- Queueing: Send as many emails as you want, as fast as you want—they'll all be\n  delivered (eventually).\n- Batching: Automatically batches large groups of emails and sends them to\n  Resend's `/emails/batch` endpoint efficiently.\n- Durable execution: Uses Convex workpools to ensure emails are eventually\n  delivered, even in the face of temporary failures or network outages.\n- Idempotency: Manages Resend idempotency keys to guarantee emails are delivered\n  exactly once, preventing accidental spamming from retries.\n- Rate limiting: Honors API rate limits established by Resend.\n\nSee [example](./example) for a demo of how to incorporate this hook into your\napplication.\n\n[![Navigate the Email MINEFIELD with the Resend Component!](https://thumbs.video-to-markdown.com/bf0f179c.jpg)](https://youtu.be/iIq67N8vuMU)\n\n## Installation\n\n```bash\nnpm install @convex-dev/resend\n```\n\n## Get Started\n\nCreate a [Resend](https://resend.com) account and grab an API key. Set it to\n`RESEND_API_KEY` in your deployment environment.\n\nNext, add the component to your Convex app via `convex/convex.config.ts`:\n\n```ts\nimport { defineApp } from \"convex/server\";\nimport resend from \"@convex-dev/resend/convex.config.js\";\n\nconst app = defineApp();\napp.use(resend);\n\nexport default app;\n```\n\nThen you can use it, as we see in `convex/sendEmails.ts`:\n\n```ts\nimport { components } from \"./_generated/api\";\nimport { Resend } from \"@convex-dev/resend\";\nimport { internalMutation } from \"./_generated/server\";\n\nexport const resend: Resend = new Resend(components.resend, {});\n\nexport const sendTestEmail = internalMutation({\n  handler: async (ctx) => {\n    await resend.sendEmail(ctx, {\n      from: \"Me <test@mydomain.com>\",\n      to: \"delivered@resend.dev\",\n      subject: \"Hi there\",\n      html: \"This is a test email\",\n    });\n  },\n});\n```\n\nThen, calling `sendTestEmail` from anywhere in your app will send this test\nemail.\n\nIf you want to send emails to real addresses, you need to disable `testMode`.\nYou can do this in `ResendOptions`,\n[as detailed below](#resend-component-options-and-going-into-production).\n\nA note on test email addresses:\n[Resend allows the use of labels](https://resend.com/docs/dashboard/emails/send-test-emails#using-labels-effectively)\nfor test emails. For simplicity, this component only allows labels matching\n`[a-zA-Z0-9_-]*`, e.g. `delivered+user-1@resend.dev`.\n\n## Advanced Usage\n\n### Setting up a Resend webhook\n\nWhile the setup we have so far will reliably send emails, you don't have any\nfeedback on anything delivering, bouncing, or triggering spam complaints. For\nthat, we need to set up a webhook!\n\nOn the Convex side, we need to mount an http endpoint to our project to route it\nto the Resend component in `convex/http.ts`:\n\n```ts\nimport { httpRouter } from \"convex/server\";\nimport { httpAction } from \"./_generated/server\";\nimport { resend } from \"./sendEmails\";\n\nconst http = httpRouter();\n\nhttp.route({\n  path: \"/resend-webhook\",\n  method: \"POST\",\n  handler: httpAction(async (ctx, req) => {\n    return await resend.handleResendEventWebhook(ctx, req);\n  }),\n});\n\nexport default http;\n```\n\nIf our Convex project is happy-leopard-123, we now have a Resend webhook for our\nproject running at `https://happy-leopard-123.convex.site/resend-webhook`.\n\nSo navigate to the Resend dashboard and create a new webhook at that URL. Make\nsure to enable all the `email.*` events; the other event types will be ignored.\n\nFinally, copy the webhook secret out of the Resend dashboard and set it to the\n`RESEND_WEBHOOK_SECRET` environment variable in your Convex deployment.\n\nYou should now be seeing email status updates as Resend makes progress on your\nbatches!\n\nSpeaking of...\n\n### Registering an email status event handler.\n\nIf you have your webhook established, you can also register an event handler in\nyour apps you get notifications when email statuses change.\n\nUpdate your `sendEmails.ts` to look something like this:\n\n```ts\nimport { components, internal } from \"./_generated/api\";\nimport { internalMutation } from \"./_generated/server\";\nimport { vEmailId, vEmailEvent, Resend } from \"@convex-dev/resend\";\n\nexport const resend: Resend = new Resend(components.resend, {\n  onEmailEvent: internal.example.handleEmailEvent,\n});\n\nexport const handleEmailEvent = internalMutation({\n  args: vOnEmailEventArgs,\n  handler: async (ctx, args) => {\n    // Handle however you want\n    // args provides { id: EmailId; event: EmailEvent; }\n    // see /example/example.ts\n  },\n});\n```\n\nCheck out the `example/` project in this repo for a full demo.\n\n### Resend component options, and going into production\n\nThere is a `ResendOptions` argument to the component constructor to help\ncustomize it's behavior.\n\nCheck out the [docstrings](./src/client/index.ts), but notable options include:\n\n- `apiKey`: Provide the Resend API key instead of having it read from the\n  environment variable.\n- `webhookSecret`: Same thing, but for the webhook secret.\n- `testMode`: Only allow delivery to test addresses. To keep you safe as you\n  develop your project, `testMode` is default **true**. You need to explicitly\n  set this to `false` for the component to allow you to enqueue emails to\n  artibrary addresses.\n- `onEmailEvent`: Your email event callback, as outlined above! Check out the\n  [docstrings](./src/client/index.ts) for details on the events that are\n  emitted.\n\n### Optional email sending parameters\n\nIn addition to basic from/to/subject and html/plain text bodies, the `sendEmail`\nmethod allows you to provide a list of `replyTo` addresses, and other email\nheaders.\n\n### Enqueue-time idempotency\n\nThe component already sends idempotency keys to Resend so a given batch is\ndelivered at most once. That protects against the component retrying an API\ncall, but it doesn't stop your application from enqueuing the same logical email\ntwice (for example, when a business flow re-fires or an action is retried).\n\nTo dedupe at enqueue time, pass an `idempotencyKey`. If an email with the same\nkey has already been enqueued, `sendEmail` returns the existing `EmailId` instead\nof enqueuing (and delivering) a duplicate:\n\n```ts\nconst emailId = await resend.sendEmail(ctx, {\n  from: \"Me <test@mydomain.com>\",\n  to: \"delivered@resend.dev\",\n  subject: \"Order confirmation\",\n  html: \"...\",\n  // Derive this from the triggering event so retries collapse to one send.\n  idempotencyKey: `order-confirmation:${orderId}`,\n});\n```\n\nBecause `sendEmail` runs in a transactional mutation, concurrent enqueues with\nthe same key are safe: one wins and the others receive its `EmailId`.\n\n### Using Resend Templates\n\nYou can use\n[Resend templates](https://resend.com/docs/dashboard/templates/introduction) to\nsend emails with pre-designed templates from your Resend dashboard. To use a\ntemplate, provide the template ID and any required template variables:\n\n```ts\nawait resend.sendEmail(ctx, {\n  from: \"Me <test@mydomain.com>\",\n  to: \"delivered@resend.dev\",\n  subject: \"Welcome to our app\",\n  template: {\n    id: \"my-template-id\",\n    variables: {\n      name: \"John Doe\",\n      verificationLink: \"https://example.com/verify?token=abc123\",\n    },\n  },\n});\n```\n\n> [!IMPORTANT]\n> You cannot use both `template` and `html`/`text` in the same\n> email. If you need to send dynamic HTML content, either use templates with\n> template variables, or use the `html`/`text` fields directly (optionally with\n> [React Email](#using-react-email)).\n\n### Tracking, getting status, and cancelling emails\n\nThe `sendEmail` method returns a branded type, `EmailId`. You can use this for a\nfew things:\n\n- To reassociate the original email during status changes in your email event\n  handler.\n- To check on the status any time using `resend.status(ctx, emailId)`.\n- To cancel the email using `resend.cancelEmail(ctx, emailId)`.\n\nIf the email has already been sent to the Resend API, it cannot be cancelled.\nCancellations do not trigger an email event.\n\n#### Checking email status programmatically\n\nUse the `status` method to check an email's current state:\n\n```ts\nconst emailStatus = await resend.status(ctx, emailId);\nif (emailStatus) {\n  console.log(emailStatus.status); // e.g., \"delivered\", \"bounced\", \"sent\"\n  console.log(emailStatus.bounced); // boolean\n  console.log(emailStatus.failed); // boolean\n  console.log(emailStatus.complained); // spam complaint (boolean)\n  console.log(emailStatus.deliveryDelayed); // boolean\n  console.log(emailStatus.opened); // if open tracking enabled (boolean)\n  console.log(emailStatus.clicked); // if click tracking enabled (boolean)\n  console.log(emailStatus.errorMessage); // error details (string | null)\n}\n```\n\n#### Viewing emails and webhook events in the dashboard\n\nYou can view all email data directly in your Convex dashboard in the component's\ndata view. Click the drop down with a puzzle piece that says app:\n\n![Component tables screenshot](./component_tables.png)\n\n1. **Emails table**: Navigate to your Convex dashboard → Data. Choose `resend`\n   from the component drop down then choose the `emails` table. This shows all\n   emails with their current status, recipients, subjects, and tracking\n   information.\n\n2. **Delivery Events table**: Navigate to Components → `resend` →\n   `deliveryEvents` table. This table stores all webhook events received from\n   Resend, including:\n   - `emailId`: Links back to the email in the emails table\n   - `resendId`: Resend's ID for the email\n   - `eventType`: The type of event (e.g., `email.delivered`, `email.bounced`,\n     `email.opened`, `email.clicked`, `email.complained`)\n   - `createdAt`: When the event occurred\n   - `message`: Additional details (e.g., bounce reasons)\n\nThis is useful for debugging delivery issues, viewing email history, and\nunderstanding what happened with each email you sent.\n\n### Data retention\n\nThis component retains \"finalized\" (delivered, cancelled, bounced) emails. It's\nyour responsibility to clear out those emails on your own schedule. You can run\n`cleanupOldEmails` and `cleanupAbandonedEmails` from the dashboard, under the\n\"resend\" component tab in the function runner, or set up a cron job.\n\nIf you pass no argument, it defaults to deleting emails older than 7 days.\n\nIf you don't care about historical email status, the recommended approach is to\nuse a cron job, as shown below:\n\n```ts\n// in convex/crons.ts\nimport { cronJobs } from \"convex/server\";\nimport { components, internal } from \"./_generated/api.js\";\nimport { internalMutation } from \"./_generated/server.js\";\n\nconst crons = cronJobs();\ncrons.interval(\n  \"Remove old emails from the resend component\",\n  { hours: 1 },\n  internal.crons.cleanupResend,\n);\n\nconst ONE_WEEK_MS = 7 * 24 * 60 * 60 * 1000;\nexport const cleanupResend = internalMutation({\n  args: {},\n  handler: async (ctx) => {\n    await ctx.scheduler.runAfter(0, components.resend.lib.cleanupOldEmails, {\n      olderThan: ONE_WEEK_MS,\n    });\n    await ctx.scheduler.runAfter(\n      0,\n      components.resend.lib.cleanupAbandonedEmails,\n      // These generally indicate a bug, so keep them around for longer.\n      { olderThan: 4 * ONE_WEEK_MS },\n    );\n  },\n});\n\nexport default crons;\n```\n\n### Using React Email\n\nYou can use [React Email](https://react.email/) to generate your HTML for you\nfrom JSX.\n\nFirst install the\n[dependencies](https://react.email/docs/getting-started/manual-setup#2-install-dependencies):\n\n```bash\nnpm install @react-email/components react react-dom react-email @react-email/render\n```\n\nThen create a new .tsx file in your Convex directory e.g. `/convex/emails.tsx`:\n\n```tsx\n// IMPORTANT: this is a Convex Node Action\n\"use node\";\nimport { action } from \"./_generated/server\";\nimport { render, pretty } from \"@react-email/render\";\nimport { Button, Html } from \"@react-email/components\";\nimport { components } from \"./_generated/api\";\nimport { Resend } from \"@convex-dev/resend\";\n\nexport const resend: Resend = new Resend(components.resend, {\n  testMode: false,\n});\n\nexport const sendEmail = action({\n  args: {},\n  handler: async (ctx, args) => {\n    // 1. Generate the HTML from your JSX\n    // This can come from a custom component in your /emails/ directory\n    // if you would like to view your templates locally. For more info see:\n    // https://react.email/docs/getting-started/manual-setup#5-run-locally\n    const html = await pretty(\n      await render(\n        <Html>\n          <Button\n            href=\"https://example.com\"\n            style={{ background: \"#000\", color: \"#fff\", padding: \"12px 20px\" }}\n          >\n            Click me\n          </Button>\n        </Html>,\n      ),\n    );\n\n    // 2. Send your email as usual using the component\n    await resend.sendEmail(ctx, {\n      from: \"Me <test@mydomain.com>\",\n      to: \"delivered@resend.dev\",\n      subject: \"Hi there\",\n      html,\n    });\n  },\n});\n```\n\n> [!WARNING]\n> React Email requires some Node dependencies thus it must run in a Convex\n> [Node action](https://docs.convex.dev/functions/actions#choosing-the-runtime-use-node)\n> and not a regular Action.\n\n### Sending emails manually, e.g. for attachments\n\nIf you need something that the component doesn't provide (it is currently\nlimited by what is supported by the batch API in Resend), you can send emails\nmanually using `sendEmailManually`. Unlike `sendEmail` which enqueues emails\nand sends them in batches via the `/emails/batch` endpoint, `sendEmailManually`\ncalls Resend's `/emails` endpoint directly without enqueueing. This gives you\nfine-grained control over the email sending process while still tracking its\nprogress using the component's status and webhook APIs.\n\n```ts\nimport { components, internal } from \"./_generated/api\";\nimport { internalAction } from \"./_generated/server\";\nimport { Resend as ResendComponent } from \"@convex-dev/resend\";\nimport { Resend } from \"resend\";\n\nconst resendSdk = new Resend(\"re_xxxxxxxxx\");\n\nexport const resend = new ResendComponent(components.resend, {});\n\nexport const sendManualEmail = internalAction({\n  args: {},\n  handler: async (ctx, args) => {\n    const from = \"Acme <onboarding@resend.dev>\";\n    const to = [\"delivered@resend.dev\"];\n    const subject = \"hello world\";\n    const html = \"<p>it works!</p>\";\n\n    const emailId = await resend.sendEmailManually(\n      ctx,\n      { from, to, subject },\n      async (emailId) => {\n        const {data, error} = await resendSdk.emails.send({\n          from,\n          to,\n          subject,\n          html,\n          headers: {\n            \"Idempotency-Key\": emailId,\n          },\n        });\n        if (error) {\n          throw new Error(`[Email] Failed to send: ${error.message}`);\n        }\n        return data.id!;\n      },\n    );\n  },\n});\n```\n\nUse `sendEmailManually` when you need features not supported by the batch API,\nsuch as attachments, or when you want to send an email immediately without\nwaiting for the batching system.\n","readmeFilename":"README.md"}