1- import * as React from 'react' ;
1+ import * as React from 'react'
22
33export interface DiscountCodeResults {
44 data : string | null
@@ -7,21 +7,27 @@ export interface DiscountCodeResults {
77function Discount ( ) {
88 const [ data , setData ] = React . useState < DiscountCodeResults | null > ( null )
99 const [ isLoading , setLoading ] = React . useState ( false )
10- const discountPath = `${ process . env . NEXT_PUBLIC_DISCOUNTS_ROUTE } :${ process . env . NEXT_PUBLIC_DISCOUNTS_PORT } `
10+ const discountPath =
11+ `${ process . env . NEXT_PUBLIC_DISCOUNTS_URL_FULL } ` ||
12+ `${ process . env . NEXT_PUBLIC_DISCOUNTS_ROUTE } :${ process . env . NEXT_PUBLIC_DISCOUNTS_PORT } `
1113
1214 function getRandomArbitrary ( min : number , max : number ) {
13- return Math . floor ( Math . random ( ) * ( max - min ) + min ) ;
15+ return Math . floor ( Math . random ( ) * ( max - min ) + min )
1416 }
1517
1618 function fetchDiscountCode ( ) {
1719 fetch ( `${ discountPath } /discount` )
1820 . then ( ( res ) => res . json ( ) )
1921 . then ( ( data ) => {
20- const index = getRandomArbitrary ( 0 , data . length ) ;
21- setData ( data [ index ] [ "code" ] )
22+ const index = getRandomArbitrary ( 0 , data . length )
23+ setData ( data [ index ] [ 'code' ] )
24+ } )
25+ . catch ( ( e ) => {
26+ console . error ( e . message )
27+ } )
28+ . finally ( ( ) => {
29+ setLoading ( false )
2230 } )
23- . catch ( e => { console . error ( e . message ) } )
24- . finally ( ( ) => { setLoading ( false ) } )
2531 }
2632
2733 React . useEffect ( ( ) => {
@@ -30,16 +36,21 @@ function Discount() {
3036 // eslint-disable-next-line react-hooks/exhaustive-deps
3137 } , [ ] )
3238
33-
3439 return (
3540 < div className = "flex flex-row justify-center py-4 bg-primary-2 text-white" >
36- {
37- isLoading ? ( < span > GET FREE SHIPPING WITH DISCOUNT CODE</ span > ) :
38- ! data ? ( < span > GET FREE SHIPPING WITH DISCOUNT CODE < strong > STOREDOG</ strong > </ span > ) : ( < span > GET FREE SHIPPING WITH DISCOUNT CODE < strong > { data } </ strong > </ span > )
39- }
41+ { isLoading ? (
42+ < span > GET FREE SHIPPING WITH DISCOUNT CODE</ span >
43+ ) : ! data ? (
44+ < span >
45+ GET FREE SHIPPING WITH DISCOUNT CODE < strong > STOREDOG</ strong >
46+ </ span >
47+ ) : (
48+ < span >
49+ GET FREE SHIPPING WITH DISCOUNT CODE < strong > { data } </ strong >
50+ </ span >
51+ ) }
4052 </ div >
4153 )
42-
4354}
4455
45- export default Discount
56+ export default Discount
0 commit comments