|
@@ -2,8 +2,8 @@ import { memo, useCallback, useEffect } from 'react'
|
|
|
import { Button } from 'react-bootstrap'
|
|
import { Button } from 'react-bootstrap'
|
|
|
import { Trans, useTranslation } from 'react-i18next'
|
|
import { Trans, useTranslation } from 'react-i18next'
|
|
|
import * as eventTracking from '../../../infrastructure/event-tracking'
|
|
import * as eventTracking from '../../../infrastructure/event-tracking'
|
|
|
|
|
+import StartFreeTrialButton from '../../../shared/components/start-free-trial-button'
|
|
|
import { useDetachCompileContext } from '../../../shared/context/detach-compile-context'
|
|
import { useDetachCompileContext } from '../../../shared/context/detach-compile-context'
|
|
|
-import { startFreeTrial } from '../../../main/account-upgrade'
|
|
|
|
|
import usePersistedState from '../../../shared/hooks/use-persisted-state'
|
|
import usePersistedState from '../../../shared/hooks/use-persisted-state'
|
|
|
|
|
|
|
|
const ONE_DAY = 24 * 60 * 60 * 24 * 1000
|
|
const ONE_DAY = 24 * 60 * 60 * 24 * 1000
|
|
@@ -45,18 +45,13 @@ function CompileTimeWarning() {
|
|
|
setDisplayStatus(displayStatus => ({ ...displayStatus, dismissed: true }))
|
|
setDisplayStatus(displayStatus => ({ ...displayStatus, dismissed: true }))
|
|
|
}, [getTimeSinceDisplayed, setShowCompileTimeWarning, setDisplayStatus])
|
|
}, [getTimeSinceDisplayed, setShowCompileTimeWarning, setDisplayStatus])
|
|
|
|
|
|
|
|
- const handleUpgradeClick = useCallback(
|
|
|
|
|
- event => {
|
|
|
|
|
- event.preventDefault()
|
|
|
|
|
- startFreeTrial('compile-time-warning')
|
|
|
|
|
- eventTracking.sendMB('compile-time-warning-upgrade-click', {
|
|
|
|
|
- 'time-since-displayed': getTimeSinceDisplayed(),
|
|
|
|
|
- })
|
|
|
|
|
- setShowCompileTimeWarning(false)
|
|
|
|
|
- setDisplayStatus(displayStatus => ({ ...displayStatus, dismissed: true }))
|
|
|
|
|
- },
|
|
|
|
|
- [getTimeSinceDisplayed, setShowCompileTimeWarning, setDisplayStatus]
|
|
|
|
|
- )
|
|
|
|
|
|
|
+ const handleUpgradeClick = useCallback(() => {
|
|
|
|
|
+ eventTracking.sendMB('compile-time-warning-upgrade-click', {
|
|
|
|
|
+ 'time-since-displayed': getTimeSinceDisplayed(),
|
|
|
|
|
+ })
|
|
|
|
|
+ setShowCompileTimeWarning(false)
|
|
|
|
|
+ setDisplayStatus(displayStatus => ({ ...displayStatus, dismissed: true }))
|
|
|
|
|
+ }, [getTimeSinceDisplayed, setShowCompileTimeWarning, setDisplayStatus])
|
|
|
|
|
|
|
|
if (!showCompileTimeWarning || displayStatus.dismissed) {
|
|
if (!showCompileTimeWarning || displayStatus.dismissed) {
|
|
|
return null
|
|
return null
|
|
@@ -81,9 +76,13 @@ function CompileTimeWarning() {
|
|
|
/>
|
|
/>
|
|
|
</div>
|
|
</div>
|
|
|
<div className="upgrade-prompt">
|
|
<div className="upgrade-prompt">
|
|
|
- <Button bsStyle="primary" bsSize="sm" onClick={handleUpgradeClick}>
|
|
|
|
|
|
|
+ <StartFreeTrialButton
|
|
|
|
|
+ buttonProps={{ bsStyle: 'primary', bsSize: 'sm' }}
|
|
|
|
|
+ handleClick={handleUpgradeClick}
|
|
|
|
|
+ source="compile-time-warning"
|
|
|
|
|
+ >
|
|
|
{t('upgrade')}
|
|
{t('upgrade')}
|
|
|
- </Button>
|
|
|
|
|
|
|
+ </StartFreeTrialButton>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|