Skip to content

Commit c259390

Browse files
authored
v0.3.17: domain fix
2 parents b8ad42f + 8d7f3a5 commit c259390

File tree

4 files changed

+24
-2
lines changed

4 files changed

+24
-2
lines changed

apps/sim/app/layout.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { Analytics } from '@vercel/analytics/next'
22
import { SpeedInsights } from '@vercel/speed-insights/next'
33
import type { Metadata, Viewport } from 'next'
44
import { PublicEnvScript } from 'next-runtime-env'
5+
import { env } from '@/lib/env'
56
import { isHosted } from '@/lib/environment'
67
import { createLogger } from '@/lib/logs/console/logger'
78
import { getAssetUrl } from '@/lib/utils'
@@ -225,10 +226,10 @@ export default function RootLayout({ children }: { children: React.ReactNode })
225226
<PublicEnvScript />
226227

227228
{/* RB2B Script - Only load on hosted version */}
228-
{isHosted && (
229+
{isHosted && env.NEXT_PUBLIC_RB2B_KEY && (
229230
<script
230231
dangerouslySetInnerHTML={{
231-
__html: `!function () {var reb2b = window.reb2b = window.reb2b || [];if (reb2b.invoked) return;reb2b.invoked = true;reb2b.methods = ["identify", "collect"];reb2b.factory = function (method) {return function () {var args = Array.prototype.slice.call(arguments);args.unshift(method);reb2b.push(args);return reb2b;};};for (var i = 0; i < reb2b.methods.length; i++) {var key = reb2b.methods[i];reb2b[key] = reb2b.factory(key);}reb2b.load = function (key) {var script = document.createElement("script");script.type = "text/javascript";script.async = true;script.src = "https://b2bjsstore.s3.us-west-2.amazonaws.com/b/" + key + "/DNXY8HX558O0.js.gz";var first = document.getElementsByTagName("script")[0];first.parentNode.insertBefore(script, first);};reb2b.SNIPPET_VERSION = "1.0.1";reb2b.load("DNXY8HX558O0");}();`,
232+
__html: `!function () {var reb2b = window.reb2b = window.reb2b || [];if (reb2b.invoked) return;reb2b.invoked = true;reb2b.methods = ["identify", "collect"];reb2b.factory = function (method) {return function () {var args = Array.prototype.slice.call(arguments);args.unshift(method);reb2b.push(args);return reb2b;};};for (var i = 0; i < reb2b.methods.length; i++) {var key = reb2b.methods[i];reb2b[key] = reb2b.factory(key);}reb2b.load = function (key) {var script = document.createElement("script");script.type = "text/javascript";script.async = true;script.src = "https://b2bjsstore.s3.us-west-2.amazonaws.com/b/" + key + "/${env.NEXT_PUBLIC_RB2B_KEY}.js.gz";var first = document.getElementsByTagName("script")[0];first.parentNode.insertBefore(script, first);};reb2b.SNIPPET_VERSION = "1.0.1";reb2b.load("${env.NEXT_PUBLIC_RB2B_KEY}");}();`,
232233
}}
233234
/>
234235
)}

apps/sim/lib/env.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,9 @@ export const env = createEnv({
157157

158158
// Google Services - For client-side Google integrations
159159
NEXT_PUBLIC_GOOGLE_CLIENT_ID: z.string().optional(), // Google OAuth client ID for browser auth
160+
161+
// Analytics & Tracking
162+
NEXT_PUBLIC_RB2B_KEY: z.string().optional(), // RB2B tracking key for B2B analytics
160163
NEXT_PUBLIC_GOOGLE_API_KEY: z.string().optional(), // Google API key for client-side API calls
161164
NEXT_PUBLIC_GOOGLE_PROJECT_NUMBER: z.string().optional(), // Google project number for Drive picker
162165
},
@@ -173,6 +176,7 @@ export const env = createEnv({
173176
NEXT_PUBLIC_SENTRY_DSN: process.env.NEXT_PUBLIC_SENTRY_DSN,
174177
NEXT_PUBLIC_BLOB_BASE_URL: process.env.NEXT_PUBLIC_BLOB_BASE_URL,
175178
NEXT_PUBLIC_GOOGLE_CLIENT_ID: process.env.NEXT_PUBLIC_GOOGLE_CLIENT_ID,
179+
NEXT_PUBLIC_RB2B_KEY: process.env.NEXT_PUBLIC_RB2B_KEY,
176180
NEXT_PUBLIC_GOOGLE_API_KEY: process.env.NEXT_PUBLIC_GOOGLE_API_KEY,
177181
NEXT_PUBLIC_GOOGLE_PROJECT_NUMBER: process.env.NEXT_PUBLIC_GOOGLE_PROJECT_NUMBER,
178182
NEXT_PUBLIC_SOCKET_URL: process.env.NEXT_PUBLIC_SOCKET_URL,

apps/sim/lib/security/csp.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ export const cspDirectives: CSPDirectives = {
3636
'https://vercel.com',
3737
'https://*.vercel.app',
3838
'https://vitals.vercel-insights.com',
39+
'https://b2bjsstore.s3.us-west-2.amazonaws.com',
3940
],
4041

4142
'style-src': ["'self'", "'unsafe-inline'", 'https://fonts.googleapis.com'],

apps/sim/next.config.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,22 @@ const nextConfig: NextConfig = {
153153
},
154154
]
155155
},
156+
async redirects() {
157+
return [
158+
{
159+
source: '/((?!api|_next|_vercel|favicon|static|.*\\..*).*)',
160+
destination: 'https://www.sim.ai/$1',
161+
permanent: true,
162+
has: [{ type: 'host', value: 'simstudio.ai' }],
163+
},
164+
{
165+
source: '/((?!api|_next|_vercel|favicon|static|.*\\..*).*)',
166+
destination: 'https://www.sim.ai/$1',
167+
permanent: true,
168+
has: [{ type: 'host', value: 'www.simstudio.ai' }],
169+
},
170+
]
171+
},
156172
}
157173

158174
const sentryConfig = {

0 commit comments

Comments
 (0)