Skip to content

Commit c0841a7

Browse files
authored
Merge pull request #1978 from neo4j/new-browser-advertisement
adding advertisement tile for the new browser ui
2 parents b0d989c + d2bb86e commit c0841a7

File tree

7 files changed

+178
-6
lines changed

7 files changed

+178
-6
lines changed

src/browser/images/clusters.svg

Lines changed: 35 additions & 0 deletions
Loading

src/browser/index.tsx

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,25 @@ import ReactDOM from 'react-dom'
2222

2323
import AppInit, { setupSentry } from './AppInit'
2424
import './init'
25+
import { navigateToPreview } from './modules/Stream/StartPreviewFrame'
2526

2627
setupSentry()
27-
ReactDOM.render(<AppInit />, document.getElementById('mount'))
28+
;(async () => {
29+
const doesPreferQuery = localStorage.getItem('prefersOldBrowser') === 'false'
30+
try {
31+
const response = await fetch('./preview/manifest.json')
32+
if (response.status === 200) {
33+
if (doesPreferQuery) {
34+
navigateToPreview()
35+
} else {
36+
localStorage.setItem('previewAvailable', 'true')
37+
}
38+
} else {
39+
localStorage.setItem('previewAvailable', 'false')
40+
}
41+
} catch (e) {
42+
localStorage.setItem('previewAvailable', 'false')
43+
}
44+
45+
ReactDOM.render(<AppInit />, document.getElementById('mount'))
46+
})()

src/browser/modules/Carousel/style.less

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,18 @@
345345
border: 0;
346346
display: inline-block;
347347
}
348+
.btn-advertise {
349+
padding: 1em;
350+
background-color: #fff;
351+
color: #008cc1;
352+
border-radius: 4px;
353+
border: 0;
354+
display: inline-block;
355+
margin-bottom: 5px;
356+
margin-right: 5px;
357+
font-size: 12px;
358+
line-height: 18px;
359+
}
348360
.teasers {
349361
display: flex;
350362
justify-content: center;

src/browser/modules/Carousel/styled.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -301,6 +301,19 @@ export const StyledSlide = styled.div`
301301
background-color: ${props => props.theme.teaserCardBackground} !important;
302302
}
303303
304+
&.slide .teaser-advertise {
305+
color: white !important;
306+
background-color: #0a6190 !important;
307+
308+
& .img-advertise {
309+
position: absolute;
310+
left: 0;
311+
bottom: -10px;
312+
opacity: 0.15;
313+
pointer-events: none;
314+
}
315+
}
316+
304317
&.slide input {
305318
color: ${props => props.theme.inputText};
306319
}

src/browser/modules/Stream/PlayFrame.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ import { isConnectedAuraHost } from 'shared/modules/connections/connectionsDuck'
4747
import { getEdition, isEnterprise } from 'shared/modules/dbMeta/dbMetaDuck'
4848
import { DARK_THEME } from 'shared/modules/settings/settingsDuck'
4949
import { LAST_GUIDE_SLIDE } from 'shared/modules/udc/udcDuck'
50+
import { PreviewFrame } from './StartPreviewFrame'
5051

5152
const AuraPromotion = () => {
5253
const theme = useContext(ThemeContext)
@@ -287,15 +288,19 @@ function generateContent(
287288

288289
// Check if content exists locally
289290
if (isPlayChapter(guideName)) {
291+
const isPreviewAvailable =
292+
localStorage.getItem('previewAvailable') === 'true'
290293
const { content, title, subtitle, slides = null } = chapters[guideName]
291294

292295
const isPlayStart = stackFrame.cmd.trim() === ':play start'
293296
const updatedContent =
294297
isPlayStart && showPromotion ? (
295298
<>
296-
{content}
299+
{isPreviewAvailable ? <PreviewFrame /> : content}
297300
<AuraPromotion />
298301
</>
302+
) : isPreviewAvailable ? (
303+
<PreviewFrame />
299304
) : (
300305
content
301306
)

0 commit comments

Comments
 (0)