@@ -29,7 +29,7 @@ import {
29
29
useState ,
30
30
type ReactNode ,
31
31
} from "react" ;
32
- import { Entri } from "./entri" ;
32
+ import { Entri , type DnsRecord } from "./entri" ;
33
33
import { nativeClient } from "~/shared/trpc/trpc-client" ;
34
34
import { useStore } from "@nanostores/react" ;
35
35
import { $publisherHost } from "~/shared/nano-states" ;
@@ -288,28 +288,32 @@ const DomainItem = ({
288
288
289
289
const publisherHost = useStore ( $publisherHost ) ;
290
290
const cname = extractCname ( projectDomain . domain ) ;
291
- const dnsRecords = [
292
- {
293
- type : "CNAME" ,
294
- host : cname ,
295
- value : `${ projectDomain . cname } .customers.${ publisherHost } ` ,
296
- ttl : 300 ,
297
- } as const ,
298
- {
299
- type : "TXT" ,
300
- host : cname === "@" ? "_webstudio_is" : `_webstudio_is.${ cname } ` ,
301
- value : projectDomain . expectedTxtRecord ,
302
- ttl : 300 ,
303
- } as const ,
304
- ] ;
305
- // add both www and root cname to support root -> www redirect
306
- if ( cname === "www" ) {
307
- dnsRecords . push ( {
308
- type : "TXT" ,
309
- host : "_webstudio_is" ,
310
- value : projectDomain . expectedTxtRecord ,
311
- ttl : 300 ,
312
- } ) ;
291
+ const cnameRecord : DnsRecord = {
292
+ type : "CNAME" ,
293
+ host : cname ,
294
+ value : `${ projectDomain . cname } .customers.${ publisherHost } ` ,
295
+ ttl : 300 ,
296
+ } ;
297
+ const rootTxtRecord : DnsRecord = {
298
+ type : "TXT" ,
299
+ host : "_webstudio_is" ,
300
+ value : projectDomain . expectedTxtRecord ,
301
+ ttl : 300 ,
302
+ } ;
303
+ const subdomainTxtRecord : DnsRecord = {
304
+ type : "TXT" ,
305
+ host : `_webstudio_is.${ cname } ` ,
306
+ value : projectDomain . expectedTxtRecord ,
307
+ ttl : 300 ,
308
+ } ;
309
+ const dnsRecords : DnsRecord [ ] = [ cnameRecord ] ;
310
+ if ( cname === "@" ) {
311
+ dnsRecords . push ( rootTxtRecord ) ;
312
+ } else if ( cname === "www" ) {
313
+ // add both www and root cname to support root -> www redirect
314
+ dnsRecords . push ( rootTxtRecord , subdomainTxtRecord ) ;
315
+ } else {
316
+ dnsRecords . push ( subdomainTxtRecord ) ;
313
317
}
314
318
315
319
return (
0 commit comments