11module . exports  =  [ 
2-   // Main browser webpack builds  
2+   // Browser SDK (ESM)  
33  { 
4-     name : '@sentry/browser (incl. Tracing, Replay, Feedback) ' , 
4+     name : '@sentry/browser' , 
55    path : 'packages/browser/build/npm/esm/index.js' , 
6-     import : '{  init, replayIntegration, browserTracingIntegration, feedbackIntegration }' , 
6+     import : createImport ( ' init' ) , 
77    gzip : true , 
8-     limit : '90  KB' , 
8+     limit : '24  KB' , 
99  } , 
1010  { 
11-     name : '@sentry/browser (incl. Tracing, Replay )' , 
11+     name : '@sentry/browser (incl. Tracing)' , 
1212    path : 'packages/browser/build/npm/esm/index.js' , 
13-     import : '{  init, replayIntegration,  browserTracingIntegration }' , 
13+     import : createImport ( ' init' ,   ' browserTracingIntegration' ) , 
1414    gzip : true , 
15-     limit : '90  KB' , 
15+     limit : '34  KB' , 
1616  } , 
1717  { 
18-     name : '@sentry/browser (incl. Tracing, Replay with Canvas )' , 
18+     name : '@sentry/browser (incl. Tracing, Replay)' , 
1919    path : 'packages/browser/build/npm/esm/index.js' , 
20-     import : '{  init, replayIntegration,  browserTracingIntegration, replayCanvasIntegration }' , 
20+     import : createImport ( ' init' ,   ' browserTracingIntegration' ,   'replayIntegration' ) , 
2121    gzip : true , 
22-     limit : '90  KB' , 
22+     limit : '70  KB' , 
2323  } , 
2424  { 
2525    name : '@sentry/browser (incl. Tracing, Replay) - with treeshaking flags' , 
2626    path : 'packages/browser/build/npm/esm/index.js' , 
27-     import : '{  init, replayIntegration, browserTracingIntegration }' , 
27+     import : createImport ( ' init' ,   'browserTracingIntegration' ,   'replayIntegration' ) , 
2828    gzip : true , 
29-     limit : '75  KB' , 
29+     limit : '65  KB' , 
3030    modifyWebpackConfig : function  ( config )  { 
3131      const  webpack  =  require ( 'webpack' ) ; 
3232      config . plugins . push ( 
@@ -41,134 +41,181 @@ module.exports = [
4141    } , 
4242  } , 
4343  { 
44-     name : '@sentry/browser (incl. Tracing)' , 
44+     name : '@sentry/browser (incl. Tracing, Replay with Canvas )' , 
4545    path : 'packages/browser/build/npm/esm/index.js' , 
46-     import : '{  init,  browserTracingIntegration }' , 
46+     import : createImport ( ' init' ,   ' browserTracingIntegration' ,   'replayIntegration' ,   'replayCanvasIntegration' ) , 
4747    gzip : true , 
48-     limit : '90  KB' , 
48+     limit : '75  KB' , 
4949  } , 
5050  { 
51-     name : '@sentry/browser (incl. browserTracingIntegration )' , 
51+     name : '@sentry/browser (incl. Tracing, Replay, Feedback )' , 
5252    path : 'packages/browser/build/npm/esm/index.js' , 
53-     import : '{  init,  browserTracingIntegration }' , 
53+     import : createImport ( ' init' ,   ' browserTracingIntegration' ,   'replayIntegration' ,   'feedbackIntegration' ) , 
5454    gzip : true , 
55-     limit : '90  KB' , 
55+     limit : '80  KB' , 
5656  } , 
5757  { 
58-     name : '@sentry/browser (incl. feedbackIntegration )' , 
58+     name : '@sentry/browser (incl. Feedback )' , 
5959    path : 'packages/browser/build/npm/esm/index.js' , 
60-     import : '{  init,  feedbackIntegration }' , 
60+     import : createImport ( ' init' ,   ' feedbackIntegration' ) , 
6161    gzip : true , 
62-     limit : '90  KB' , 
62+     limit : '35  KB' , 
6363  } , 
6464  { 
65-     name : '@sentry/browser (incl. feedbackModalIntegration )' , 
65+     name : '@sentry/browser (incl. Feedback, Feedback Modal )' , 
6666    path : 'packages/browser/build/npm/esm/index.js' , 
67-     import : '{  init,  feedbackIntegration,  feedbackModalIntegration }' , 
67+     import : createImport ( ' init' ,   ' feedbackIntegration' ,   ' feedbackModalIntegration' ) , 
6868    gzip : true , 
69-     limit : '90  KB' , 
69+     limit : '35  KB' , 
7070  } , 
7171  { 
72-     name : '@sentry/browser (incl. feedbackScreenshotIntegration )' , 
72+     name : '@sentry/browser (incl. Feedback, Feedback Modal, Feedback Screenshot )' , 
7373    path : 'packages/browser/build/npm/esm/index.js' , 
74-     import : '{  init,  feedbackIntegration,  feedbackModalIntegration,  feedbackScreenshotIntegration }' , 
74+     import : createImport ( ' init' ,   ' feedbackIntegration' ,   ' feedbackModalIntegration' ,   ' feedbackScreenshotIntegration' ) , 
7575    gzip : true , 
76-     limit : '90  KB' , 
76+     limit : '35  KB' , 
7777  } , 
7878  { 
7979    name : '@sentry/browser (incl. sendFeedback)' , 
8080    path : 'packages/browser/build/npm/esm/index.js' , 
81-     import : '{  init,  sendFeedback }' , 
81+     import : createImport ( ' init' ,   ' sendFeedback' ) , 
8282    gzip : true , 
83-     limit : '90  KB' , 
83+     limit : '30  KB' , 
8484  } , 
85+   // React SDK (ESM) 
8586  { 
86-     name : '@sentry/browser ' , 
87-     path : 'packages/browser /build/npm /esm/index.js' , 
88-     import : '{  init }' , 
87+     name : '@sentry/react ' , 
88+     path : 'packages/react /build/esm/index.js' , 
89+     import : createImport ( ' init' ,   'ErrorBoundary' ) , 
8990    gzip : true , 
90-     limit : '90  KB' , 
91+     limit : '27  KB' , 
9192  } , 
92- 
93-   // Browser CDN bundles 
9493  { 
95-     name : 'CDN Bundle (incl. Tracing, Replay, Feedback)' , 
96-     path : 'packages/browser/build/bundles/bundle.tracing.replay.feedback.min.js' , 
94+     name : '@sentry/react (incl. Tracing)' , 
95+     path : 'packages/react/build/esm/index.js' , 
96+     import : createImport ( 'init' ,  'ErrorBoundary' ,  'reactRouterV6BrowserTracingIntegration' ) , 
9797    gzip : true , 
98-     limit : '90  KB' , 
98+     limit : '37  KB' , 
9999  } , 
100+   // Vue SDK (ESM) 
100101  { 
101-     name : 'CDN Bundle (incl. Tracing, Replay)' , 
102-     path : 'packages/browser/build/bundles/bundle.tracing.replay.min.js' , 
102+     name : '@sentry/vue' , 
103+     path : 'packages/vue/build/esm/index.js' , 
104+     import : createImport ( 'init' ) , 
103105    gzip : true , 
104-     limit : '90  KB' , 
106+     limit : '28  KB' , 
105107  } , 
106108  { 
107-     name : 'CDN Bundle (incl. Tracing)' , 
108-     path : 'packages/browser/build/bundles/bundle.tracing.min.js' , 
109+     name : '@sentry/vue (incl. Tracing)' , 
110+     path : 'packages/vue/build/esm/index.js' , 
111+     import : createImport ( 'init' ,  'browserTracingIntegration' ) , 
112+     gzip : true , 
113+     limit : '38 KB' , 
114+   } , 
115+   // Svelte SDK (ESM) 
116+   { 
117+     name : '@sentry/svelte' , 
118+     path : 'packages/svelte/build/esm/index.js' , 
119+     import : createImport ( 'init' ) , 
109120    gzip : true , 
110-     limit : '40  KB' , 
121+     limit : '24  KB' , 
111122  } , 
123+   // Browser CDN bundles 
112124  { 
113125    name : 'CDN Bundle' , 
114-     path : 'packages/browser/build/bundles/ bundle.min.js', 
126+     path : createCDNPath ( ' bundle.min.js') , 
115127    gzip : true , 
116-     limit : '30 KB' , 
128+     limit : '26 KB' , 
129+   } , 
130+   { 
131+     name : 'CDN Bundle (incl. Tracing)' , 
132+     path : createCDNPath ( 'bundle.tracing.min.js' ) , 
133+     gzip : true , 
134+     limit : '36 KB' , 
135+   } , 
136+   { 
137+     name : 'CDN Bundle (incl. Tracing, Replay)' , 
138+     path : createCDNPath ( 'bundle.tracing.replay.min.js' ) , 
139+     gzip : true , 
140+     limit : '70 KB' , 
141+   } , 
142+   { 
143+     name : 'CDN Bundle (incl. Tracing, Replay, Feedback)' , 
144+     path : createCDNPath ( 'bundle.tracing.replay.feedback.min.js' ) , 
145+     gzip : true , 
146+     limit : '75 KB' , 
117147  } , 
118- 
119148  // browser CDN bundles (non-gzipped) 
120149  { 
121-     name : 'CDN Bundle (incl. Tracing, Replay)  - uncompressed' , 
122-     path : 'packages/browser/build/bundles/ bundle.tracing.replay. min.js', 
150+     name : 'CDN Bundle - uncompressed' , 
151+     path : createCDNPath ( ' bundle.min.js') , 
123152    gzip : false , 
124153    brotli : false , 
125-     limit : '260  KB' , 
154+     limit : '80  KB' , 
126155  } , 
127156  { 
128157    name : 'CDN Bundle (incl. Tracing) - uncompressed' , 
129-     path : 'packages/browser/build/bundles/ bundle.tracing.min.js', 
158+     path : createCDNPath ( ' bundle.tracing.min.js') , 
130159    gzip : false , 
131160    brotli : false , 
132-     limit : '120  KB' , 
161+     limit : '105  KB' , 
133162  } , 
134163  { 
135-     name : 'CDN Bundle - uncompressed' , 
136-     path : 'packages/browser/build/bundles/ bundle.min.js', 
164+     name : 'CDN Bundle (incl. Tracing, Replay)  - uncompressed' , 
165+     path : createCDNPath ( ' bundle.tracing.replay. min.js') , 
137166    gzip : false , 
138167    brotli : false , 
139-     limit : '80 KB' , 
140-   } , 
141- 
142-   // React 
143-   { 
144-     name : '@sentry/react (incl. Tracing, Replay)' , 
145-     path : 'packages/react/build/esm/index.js' , 
146-     import : '{ init, browserTracingIntegration, replayIntegration }' , 
147-     gzip : true , 
148-     limit : '90 KB' , 
168+     limit : '220 KB' , 
149169  } , 
170+   // Next.js SDK (ESM) 
150171  { 
151-     name : '@sentry/react' , 
152-     path : 'packages/react/build/esm/index.js' , 
153-     import : '{ init }' , 
154-     gzip : true , 
155-     limit : '90 KB' , 
156-   } , 
157- 
158-   // Next.js 
159-   // TODO: Re-enable these, when we figure out why they break... 
160-   /*  { 
161-     name: '@sentry /nextjs Client (incl. Tracing, Replay)', 
172+     name : '@sentry/nextjs (client)' , 
162173    path : 'packages/nextjs/build/esm/client/index.js' , 
163-     import: '{ init, browserTracingIntegration, replayIntegration }', 
164-     gzip: true, 
165-     limit: '110 KB', 
174+     import : createImport ( 'init' ) , 
175+     ignore : [ 'next/router' ,  'next/constants' ] , 
176+     gzip : true , 
177+     limit : '37 KB' , 
178+   } , 
179+   // SvelteKit SDK (ESM) 
180+   { 
181+     name : '@sentry/sveltekit (client)' , 
182+     path : 'packages/sveltekit/build/esm/client/index.js' , 
183+     import : createImport ( 'init' ) , 
184+     ignore : [ '$app/stores' ] , 
185+     gzip : true , 
186+     limit : '37 KB' , 
187+   } , 
188+   // Node SDK (ESM) 
189+   { 
190+     name : '@sentry/node' , 
191+     path : 'packages/node/build/esm/index.js' , 
192+     import : createImport ( 'init' ) , 
193+     ignore : [ 
194+       'node:http' , 
195+       'node:https' , 
196+       'node:diagnostics_channel' , 
197+       'async_hooks' , 
198+       'child_process' , 
199+       'fs' , 
200+       'os' , 
201+       'path' , 
202+       'inspector' , 
203+       'worker_threads' , 
204+       'http' , 
205+       'stream' , 
206+       'zlib' , 
207+       'net' , 
208+       'tls' , 
209+     ] , 
210+     gzip : true , 
211+     limit : '150 KB' , 
166212  } , 
167-   { 
168-     name: '@sentry /nextjs Client', 
169-     path: 'packages/nextjs/build/esm/client/index.js', 
170-     import: '{ init }', 
171-     gzip: true, 
172-     limit: '57 KB', 
173-   }, */ 
174213] ; 
214+ 
215+ function  createImport ( ...args )  { 
216+   return  `{ ${ args . join ( ', ' ) }  ; 
217+ } 
218+ 
219+ function  createCDNPath ( name )  { 
220+   return  `packages/browser/build/bundles/${ name }  ; 
221+ } 
0 commit comments