{"_id":"@adamduren/sentry-remix","_rev":"3-7f2151a5ff1336b1dc291d4ee946da01","name":"@adamduren/sentry-remix","dist-tags":{"latest":"7.86.0-vercel-patch.3"},"versions":{"7.86.0":{"name":"@adamduren/sentry-remix","version":"7.86.0","description":"Official Sentry SDK for Remix","repository":{"type":"git","url":"git://github.com/getsentry/sentry-javascript.git"},"homepage":"https://github.com/getsentry/sentry-javascript/tree/master/packages/remix","author":{"name":"Sentry"},"license":"MIT","bin":{"sentry-upload-sourcemaps":"scripts/sentry-upload-sourcemaps.js"},"engines":{"node":">=14"},"main":"build/cjs/index.server.js","module":"build/esm/index.server.js","browser":"build/esm/index.client.js","types":"build/types/index.types.d.ts","typesVersions":{"<4.9":{"build/types/index.d.ts":["build/types-ts3.8/index.d.ts"]}},"publishConfig":{"access":"public"},"dependencies":{"@sentry/cli":"^2.22.3","@sentry/core":"7.86.0","@sentry/node":"7.86.0","@sentry/react":"7.86.0","@sentry/types":"7.86.0","@sentry/utils":"7.86.0","glob":"^10.3.4","yargs":"^17.6.0"},"devDependencies":{"@remix-run/node":"^1.4.3","@remix-run/react":"^1.4.3","@types/express":"^4.17.14"},"peerDependencies":{"@remix-run/node":"1.x || 2.x","@remix-run/react":"1.x || 2.x","react":"16.x || 17.x || 18.x"},"scripts":{"build":"run-p build:transpile build:types","build:dev":"yarn build","build:transpile":"rollup -c rollup.npm.config.js","build:types":"run-s build:types:core build:types:downlevel","build:types:core":"tsc -p tsconfig.types.json","build:types:downlevel":"yarn downlevel-dts build/types build/types-ts3.8 --to ts3.8","build:watch":"run-p build:transpile:watch build:types:watch","build:dev:watch":"yarn build:watch","build:transpile:watch":"rollup -c rollup.npm.config.js --watch","build:types:watch":"tsc -p tsconfig.types.json --watch","build:tarball":"ts-node ../../scripts/prepack.ts && npm pack ./build","circularDepCheck":"madge --circular src/index.server.ts","clean":"rimraf build coverage sentry-remix-*.tgz","fix":"eslint . --format stylish --fix","lint":"eslint . --format stylish","test":"yarn test:unit","test:integration":"run-s test:integration:v1 test:integration:v2","test:integration:v1":"run-s test:integration:clean test:integration:prepare test:integration:client test:integration:server","test:integration:v2":"export REMIX_VERSION=2 && run-s test:integration:v1","test:integration:ci":"run-s test:integration:clean test:integration:prepare test:integration:client:ci test:integration:server","test:integration:prepare":"(cd test/integration && yarn)","test:integration:clean":"(cd test/integration && rimraf .cache node_modules build)","test:integration:client":"yarn playwright install-deps && yarn playwright test test/integration/test/client/ --project='chromium'","test:integration:client:ci":"yarn test:integration:client --reporter='line'","test:integration:server":"export NODE_OPTIONS='--stack-trace-limit=25' && jest --config=test/integration/jest.config.js test/integration/test/server/","test:unit":"jest","test:watch":"jest --watch","yalc:publish":"ts-node ../../scripts/prepack.ts && yalc publish build --push --sig"},"volta":{"extends":"../../package.json"},"sideEffects":["./esm/index.server.js","./src/index.server.ts"],"bugs":{"url":"https://github.com/getsentry/sentry-javascript/issues"},"_id":"@adamduren/sentry-remix@7.86.0","_integrity":"sha512-1S+zA9+04LZiubxbZR/FBtarxLHiY6aNN48B7ydXFjUe51fm7QeU6Awt0A31Gqvv2efX3QC7AzvvCMitAu/bYQ==","_resolved":"/Users/adamduren/adamduren-sentry-remix-7.86.0.tgz","_from":"file:adamduren-sentry-remix-7.86.0.tgz","_nodeVersion":"18.14.2","_npmVersion":"9.5.0","dist":{"integrity":"sha512-1S+zA9+04LZiubxbZR/FBtarxLHiY6aNN48B7ydXFjUe51fm7QeU6Awt0A31Gqvv2efX3QC7AzvvCMitAu/bYQ==","shasum":"3312e6f7b17bf1f3d82fd98debd48cfbe1e0350a","tarball":"https://registry.npmjs.org/@adamduren/sentry-remix/-/sentry-remix-7.86.0.tgz","fileCount":10,"unpackedSize":18169,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC+Zs2VZ+dnkY+h1vlEUthtIOdBFOShLwSNxmHOA5Ru8AiAQl04KsbnUqd3K60jf+1/G3jDRUUCkokSP8/8aOspb0A=="}]},"_npmUser":{"name":"adamduren","email":"adamduren@gmail.com"},"directories":{},"maintainers":[{"name":"adamduren","email":"adamduren@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sentry-remix_7.86.0_1702041547895_0.16740928794952414"},"_hasShrinkwrap":false},"7.86.0-vercel-patch.1":{"name":"@adamduren/sentry-remix","version":"7.86.0-vercel-patch.1","description":"Official Sentry SDK for Remix","repository":{"type":"git","url":"git://github.com/getsentry/sentry-javascript.git"},"homepage":"https://github.com/getsentry/sentry-javascript/tree/master/packages/remix","author":{"name":"Sentry"},"license":"MIT","bin":{"sentry-upload-sourcemaps":"scripts/sentry-upload-sourcemaps.js"},"engines":{"node":">=14"},"main":"build/cjs/index.server.js","module":"build/esm/index.server.js","browser":"build/esm/index.client.js","types":"build/types/index.types.d.ts","typesVersions":{"<4.9":{"build/types/index.d.ts":["build/types-ts3.8/index.d.ts"]}},"publishConfig":{"access":"public"},"dependencies":{"@sentry/cli":"^2.22.3","@sentry/core":"7.86.0","@sentry/node":"7.86.0","@sentry/react":"7.86.0","@sentry/types":"7.86.0","@sentry/utils":"7.86.0","glob":"^10.3.4","yargs":"^17.6.0"},"devDependencies":{"@remix-run/node":"^1.4.3","@remix-run/react":"^1.4.3","@types/express":"^4.17.14"},"peerDependencies":{"@remix-run/node":"1.x || 2.x","@remix-run/react":"1.x || 2.x","react":"16.x || 17.x || 18.x"},"scripts":{"build":"run-p build:transpile build:types","build:dev":"yarn build","build:transpile":"rollup -c rollup.npm.config.js","build:types":"run-s build:types:core build:types:downlevel","build:types:core":"tsc -p tsconfig.types.json","build:types:downlevel":"yarn downlevel-dts build/types build/types-ts3.8 --to ts3.8","build:watch":"run-p build:transpile:watch build:types:watch","build:dev:watch":"yarn build:watch","build:transpile:watch":"rollup -c rollup.npm.config.js --watch","build:types:watch":"tsc -p tsconfig.types.json --watch","build:tarball":"ts-node ../../scripts/prepack.ts && npm pack ./build","circularDepCheck":"madge --circular src/index.server.ts","clean":"rimraf build coverage sentry-remix-*.tgz","fix":"eslint . --format stylish --fix","lint":"eslint . --format stylish","test":"yarn test:unit","test:integration":"run-s test:integration:v1 test:integration:v2","test:integration:v1":"run-s test:integration:clean test:integration:prepare test:integration:client test:integration:server","test:integration:v2":"export REMIX_VERSION=2 && run-s test:integration:v1","test:integration:ci":"run-s test:integration:clean test:integration:prepare test:integration:client:ci test:integration:server","test:integration:prepare":"(cd test/integration && yarn)","test:integration:clean":"(cd test/integration && rimraf .cache node_modules build)","test:integration:client":"yarn playwright install-deps && yarn playwright test test/integration/test/client/ --project='chromium'","test:integration:client:ci":"yarn test:integration:client --reporter='line'","test:integration:server":"export NODE_OPTIONS='--stack-trace-limit=25' && jest --config=test/integration/jest.config.js test/integration/test/server/","test:unit":"jest","test:watch":"jest --watch","yalc:publish":"ts-node ../../scripts/prepack.ts && yalc publish build --push --sig"},"volta":{"extends":"../../package.json"},"sideEffects":["./esm/index.server.js","./src/index.server.ts"],"gitHead":"b3f8d9bcb067b391c1d0eba4f537ff09be56c1e9","bugs":{"url":"https://github.com/getsentry/sentry-javascript/issues"},"_id":"@adamduren/sentry-remix@7.86.0-vercel-patch.1","_nodeVersion":"18.14.2","_npmVersion":"9.5.0","dist":{"integrity":"sha512-xdNmhxF0U7SrWTINavCvPbbpDEamQY1QW/z8CgxlEqO6lUPxySLx4Byiwxu1rTunKcDT4iaiakKOwZ0e2nsJtw==","shasum":"feb6f5c8533ee3b0b70a3f11ee01d2e8e450d621","tarball":"https://registry.npmjs.org/@adamduren/sentry-remix/-/sentry-remix-7.86.0-vercel-patch.1.tgz","fileCount":16,"unpackedSize":27383,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC25h3eMfcwU/Cw1n2/dBHSRozJJUHhD6GMP3awuyQPtgIgGSZfeyn1bMlfsM2s0KnmwQvmFdbzJDntz8thJTEZc1A="}]},"_npmUser":{"name":"adamduren","email":"adamduren@gmail.com"},"directories":{},"maintainers":[{"name":"adamduren","email":"adamduren@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sentry-remix_7.86.0-vercel-patch.1_1702041843131_0.21185436008427305"},"_hasShrinkwrap":false},"7.86.0-vercel-patch.2":{"name":"@adamduren/sentry-remix","version":"7.86.0-vercel-patch.2","description":"Official Sentry SDK for Remix","repository":{"type":"git","url":"git://github.com/getsentry/sentry-javascript.git"},"homepage":"https://github.com/getsentry/sentry-javascript/tree/master/packages/remix","author":{"name":"Sentry"},"license":"MIT","bin":{"sentry-upload-sourcemaps":"scripts/sentry-upload-sourcemaps.js"},"engines":{"node":">=14"},"main":"build/cjs/index.server.js","module":"build/esm/index.server.js","browser":"build/esm/index.client.js","types":"build/types/index.types.d.ts","typesVersions":{"<4.9":{"build/types/index.d.ts":["build/types-ts3.8/index.d.ts"]}},"publishConfig":{"access":"public"},"dependencies":{"@sentry/cli":"^2.22.3","@sentry/core":"7.86.0","@sentry/node":"7.86.0","@sentry/react":"7.86.0","@sentry/types":"7.86.0","@sentry/utils":"7.86.0","glob":"^10.3.4","yargs":"^17.6.0"},"devDependencies":{"@remix-run/node":"^1.4.3","@remix-run/react":"^1.4.3","@types/express":"^4.17.14"},"peerDependencies":{"@remix-run/node":"1.x || 2.x","@remix-run/react":"1.x || 2.x","react":"16.x || 17.x || 18.x"},"scripts":{"build":"run-p build:transpile build:types","build:dev":"yarn build","build:transpile":"rollup -c rollup.npm.config.js","build:types":"run-s build:types:core build:types:downlevel","build:types:core":"tsc -p tsconfig.types.json","build:types:downlevel":"yarn downlevel-dts build/types build/types-ts3.8 --to ts3.8","build:watch":"run-p build:transpile:watch build:types:watch","build:dev:watch":"yarn build:watch","build:transpile:watch":"rollup -c rollup.npm.config.js --watch","build:types:watch":"tsc -p tsconfig.types.json --watch","build:tarball":"ts-node ../../scripts/prepack.ts && npm pack ./build","circularDepCheck":"madge --circular src/index.server.ts","clean":"rimraf build coverage sentry-remix-*.tgz","fix":"eslint . --format stylish --fix","lint":"eslint . --format stylish","test":"yarn test:unit","test:integration":"run-s test:integration:v1 test:integration:v2","test:integration:v1":"run-s test:integration:clean test:integration:prepare test:integration:client test:integration:server","test:integration:v2":"export REMIX_VERSION=2 && run-s test:integration:v1","test:integration:ci":"run-s test:integration:clean test:integration:prepare test:integration:client:ci test:integration:server","test:integration:prepare":"(cd test/integration && yarn)","test:integration:clean":"(cd test/integration && rimraf .cache node_modules build)","test:integration:client":"yarn playwright install-deps && yarn playwright test test/integration/test/client/ --project='chromium'","test:integration:client:ci":"yarn test:integration:client --reporter='line'","test:integration:server":"export NODE_OPTIONS='--stack-trace-limit=25' && jest --config=test/integration/jest.config.js test/integration/test/server/","test:unit":"jest","test:watch":"jest --watch","yalc:publish":"ts-node ../../scripts/prepack.ts && yalc publish build --push --sig"},"volta":{"extends":"../../package.json"},"sideEffects":["./esm/index.server.js","./src/index.server.ts"],"gitHead":"b3f8d9bcb067b391c1d0eba4f537ff09be56c1e9","bugs":{"url":"https://github.com/getsentry/sentry-javascript/issues"},"_id":"@adamduren/sentry-remix@7.86.0-vercel-patch.2","_nodeVersion":"18.14.2","_npmVersion":"9.5.0","dist":{"integrity":"sha512-DU/dwnwvj51mYCD/WlB+QfO+0e6rWoWqV+rHUbDKIBNkQK2i4YBcL5vGqMzGiLQTNla0iLAp5Hf8TqTBwjHuYQ==","shasum":"86204d507a92627701297d84975c928c1152bd05","tarball":"https://registry.npmjs.org/@adamduren/sentry-remix/-/sentry-remix-7.86.0-vercel-patch.2.tgz","fileCount":16,"unpackedSize":27383,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCabxLafEF/SMhcb+bXMgFCHnMlIDDrXldBcfgQVr1gfQIga25nYsLITRWTvYDXrqJb2lUNNpUgmzpfLzh64gPOqNs="}]},"_npmUser":{"name":"adamduren","email":"adamduren@gmail.com"},"directories":{},"maintainers":[{"name":"adamduren","email":"adamduren@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sentry-remix_7.86.0-vercel-patch.2_1702042376741_0.4463918574684844"},"_hasShrinkwrap":false},"7.86.0-vercel-patch.3":{"name":"@adamduren/sentry-remix","version":"7.86.0-vercel-patch.3","description":"Official Sentry SDK for Remix","repository":{"type":"git","url":"git://github.com/getsentry/sentry-javascript.git"},"homepage":"https://github.com/getsentry/sentry-javascript/tree/master/packages/remix","author":{"name":"Sentry"},"license":"MIT","bin":{"sentry-upload-sourcemaps":"scripts/sentry-upload-sourcemaps.js"},"engines":{"node":">=14"},"main":"cjs/index.server.js","module":"esm/index.server.js","browser":"esm/index.client.js","types":"types/index.types.d.ts","typesVersions":{"<4.9":{"types/index.d.ts":["types-ts3.8/index.d.ts"]}},"publishConfig":{"access":"public"},"dependencies":{"@sentry/cli":"^2.22.3","@sentry/core":"7.86.0","@sentry/node":"7.86.0","@sentry/react":"7.86.0","@sentry/types":"7.86.0","@sentry/utils":"7.86.0","glob":"^10.3.4","yargs":"^17.6.0"},"devDependencies":{"@remix-run/node":"^1.4.3","@remix-run/react":"^1.4.3","@types/express":"^4.17.14"},"peerDependencies":{"@remix-run/node":"1.x || 2.x","@remix-run/react":"1.x || 2.x","react":"16.x || 17.x || 18.x"},"sideEffects":["./esm/index.server.js","./src/index.server.ts"],"gitHead":"b3f8d9bcb067b391c1d0eba4f537ff09be56c1e9","bugs":{"url":"https://github.com/getsentry/sentry-javascript/issues"},"_id":"@adamduren/sentry-remix@7.86.0-vercel-patch.3","_nodeVersion":"18.14.2","_npmVersion":"9.5.0","dist":{"integrity":"sha512-+pKjcn61BIwl47BlPqpuuAkwQtPpu5UTcAWQnxDVK/P/rkNDiB1J/FoNI71DZvrR8dCUCGtIKBUNiJcThXtnlw==","shasum":"82d0079a52eb9e5354d5e3398bc38b1abc05fedd","tarball":"https://registry.npmjs.org/@adamduren/sentry-remix/-/sentry-remix-7.86.0-vercel-patch.3.tgz","fileCount":103,"unpackedSize":483923,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICd4cuQ83TBc8oSkw2DYmijDlo5td9xTxx9tHtR4MzJoAiA91+EyBSuNEBLZ026zHwtCy59RMIwcEwcikRdL/yZ8+g=="}]},"_npmUser":{"name":"adamduren","email":"adamduren@gmail.com"},"directories":{},"maintainers":[{"name":"adamduren","email":"adamduren@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sentry-remix_7.86.0-vercel-patch.3_1702042712529_0.6627562515755461"},"_hasShrinkwrap":false}},"time":{"created":"2023-12-08T13:19:07.769Z","7.86.0":"2023-12-08T13:19:08.160Z","modified":"2023-12-08T13:38:32.890Z","7.86.0-vercel-patch.1":"2023-12-08T13:24:03.416Z","7.86.0-vercel-patch.2":"2023-12-08T13:32:57.036Z","7.86.0-vercel-patch.3":"2023-12-08T13:38:32.737Z"},"maintainers":[{"name":"adamduren","email":"adamduren@gmail.com"}],"description":"Official Sentry SDK for Remix","homepage":"https://github.com/getsentry/sentry-javascript/tree/master/packages/remix","repository":{"type":"git","url":"git://github.com/getsentry/sentry-javascript.git"},"author":{"name":"Sentry"},"bugs":{"url":"https://github.com/getsentry/sentry-javascript/issues"},"license":"MIT","readme":"<p align=\"center\">\n  <a href=\"https://sentry.io/?utm_source=github&utm_medium=logo\" target=\"_blank\">\n    <img src=\"https://sentry-brand.storage.googleapis.com/sentry-wordmark-dark-280x84.png\" alt=\"Sentry\" width=\"280\" height=\"84\">\n  </a>\n</p>\n\n# Official Sentry SDK for Remix\n\n[![npm version](https://img.shields.io/npm/v/@sentry/remix.svg)](https://www.npmjs.com/package/@sentry/remix)\n[![npm dm](https://img.shields.io/npm/dm/@sentry/remix.svg)](https://www.npmjs.com/package/@sentry/remix)\n[![npm dt](https://img.shields.io/npm/dt/@sentry/remix.svg)](https://www.npmjs.com/package/@sentry/remix)\n\n## General\n\nThis package is a wrapper around `@sentry/node` for the server and `@sentry/react` for the client, with added functionality related to Remix.\n\nTo use this SDK, initialize Sentry in your Remix entry points for both the client and server.\n\n```ts\n// entry.client.tsx\n\nimport { useLocation, useMatches } from \"@remix-run/react\";\nimport * as Sentry from \"@sentry/remix\";\nimport { useEffect } from \"react\";\n\nSentry.init({\n  dsn: \"__DSN__\",\n  tracesSampleRate: 1,\n  integrations: [\n    new Sentry.BrowserTracing({\n        routingInstrumentation: Sentry.remixRouterInstrumentation(\n            useEffect,\n            useLocation,\n            useMatches,\n        ),\n    }),\n  ],\n  // ...\n});\n```\n\n```ts\n// entry.server.tsx\n\nimport { prisma } from \"~/db.server\";\n\nimport * as Sentry from \"@sentry/remix\";\n\nSentry.init({\n  dsn: \"__DSN__\",\n  tracesSampleRate: 1,\n  integrations: [new Sentry.Integrations.Prisma({ client: prisma })],\n  // ...\n});\n```\n\nAlso, wrap your Remix root with `withSentry` to catch React component errors and to get parameterized router transactions.\n\n```ts\n// root.tsx\n\nimport {\n  Links,\n  LiveReload,\n  Meta,\n  Outlet,\n  Scripts,\n  ScrollRestoration,\n} from \"@remix-run/react\";\n\nimport { withSentry } from \"@sentry/remix\";\n\nfunction App() {\n  return (\n    <html>\n      <head>\n        <Meta />\n        <Links />\n      </head>\n      <body>\n        <Outlet />\n        <ScrollRestoration />\n        <Scripts />\n        <LiveReload />\n      </body>\n    </html>\n  );\n}\n\nexport default withSentry(App);\n```\n\nYou can disable or configure `ErrorBoundary` using a second parameter to `withSentry`.\n\n```ts\n\nwithSentry(App, {\n  wrapWithErrorBoundary: false\n});\n\n// or\n\nwithSentry(App, {\n  errorBoundaryOptions: {\n    fallback: <p>An error has occurred</p>\n  }\n});\n```\n\nTo set context information or send manual events, use the exported functions of `@sentry/remix`.\n\n```ts\nimport * as Sentry from '@sentry/remix';\n\n// Set user information, as well as tags and further extras\nSentry.configureScope(scope => {\n  scope.setExtra('battery', 0.7);\n  scope.setTag('user_mode', 'admin');\n  scope.setUser({ id: '4711' });\n  // scope.clear();\n});\n\n// Add a breadcrumb for future events\nSentry.addBreadcrumb({\n  message: 'My Breadcrumb',\n  // ...\n});\n\n// Capture exceptions, messages or manual events\nSentry.captureMessage('Hello, world!');\nSentry.captureException(new Error('Good bye'));\nSentry.captureEvent({\n  message: 'Manual',\n  stacktrace: [\n    // ...\n  ],\n});\n```\n\n## Sourcemaps and Releases\n\nThe Remix SDK provides a script that automatically creates a release and uploads sourcemaps. To generate sourcemaps with Remix, you need to call `remix build` with the `--sourcemap` option.\n\nOn release, call `sentry-upload-sourcemaps` to upload source maps and create a release. To see more details on how to use the command, call `sentry-upload-sourcemaps --help`.\n\nFor more advanced configuration, [directly use `sentry-cli` to upload source maps.](https://github.com/getsentry/sentry-cli).\n","readmeFilename":"README.md"}