From 1cb1641cf515f0010c730d13316b99e62a9a4936 Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Tue, 8 Jul 2025 10:29:08 -0700 Subject: [PATCH 1/8] feat(possiblebanner) : adding possible banner 2025 --- i18n/en/code.json | 2 +- src/components/DevelopersHomepage/index.js | 2 + src/components/PossibleBanner/index.js | 51 +++++++++ .../PossibleBanner/styles.module.css | 104 ++++++++++++++++++ src/components/QuickstartsPages/index.js | 4 +- static/img/Possible-2025-OG.webp | Bin 0 -> 13272 bytes 6 files changed, 161 insertions(+), 2 deletions(-) create mode 100644 src/components/PossibleBanner/index.js create mode 100644 src/components/PossibleBanner/styles.module.css create mode 100644 static/img/Possible-2025-OG.webp diff --git a/i18n/en/code.json b/i18n/en/code.json index d949ec747d0..903e319c9eb 100644 --- a/i18n/en/code.json +++ b/i18n/en/code.json @@ -295,7 +295,7 @@ "message": "Get started" }, "home_page.possible_banner_title": { - "message": "If you imagine it, envision it, create it... Teradata makes it Possible. Join us." + "message": "Connect, learn, and build with the Teradata Developer Community at Possible 2025" }, "home_page.register_now": { "message": "Register now" diff --git a/src/components/DevelopersHomepage/index.js b/src/components/DevelopersHomepage/index.js index c95591bec2e..9629be01006 100644 --- a/src/components/DevelopersHomepage/index.js +++ b/src/components/DevelopersHomepage/index.js @@ -2,10 +2,12 @@ import JumpIn from './JumpIn'; import GetStarted from './GetStarted'; import TopPicks from './TopPicks'; import LinksImages from './LinksImg'; +import PossibleBanner from '../PossibleBanner'; export default function DevelopersHomepage() { return ( <> + diff --git a/src/components/PossibleBanner/index.js b/src/components/PossibleBanner/index.js new file mode 100644 index 00000000000..ac1e28c9d48 --- /dev/null +++ b/src/components/PossibleBanner/index.js @@ -0,0 +1,51 @@ +import PossibleImageUrl from '@site/static/img/Possible-2025-OG.webp'; +import { Card, Typography } from '@teradata-web/react-components'; +import { translate } from '@docusaurus/Translate'; +import styles from './styles.module.css'; +import clsx from 'clsx'; + +function BannerContent() { + return ( +
+
+ + + {translate({ message: 'home_page.featured_event' })} + + + + + {translate({ message: 'home_page.possible_banner_title' })} + + +
+ +
+ {translate({ message: 'home_page.register_now' })} +
+
+
+ ); +} + +export default function PossibleBanner() { + return ( +
+ + } + /> + +
+ ); +} \ No newline at end of file diff --git a/src/components/PossibleBanner/styles.module.css b/src/components/PossibleBanner/styles.module.css new file mode 100644 index 00000000000..84fc0e303e4 --- /dev/null +++ b/src/components/PossibleBanner/styles.module.css @@ -0,0 +1,104 @@ +.card { + --ifm-spacing-horizontal: 0.25rem; + + border-radius: 12px; + border: 1px solid #CED3DA; + background: #FFF; + height: 100%; + padding: 1.5rem; + overflow: hidden; +} + +.card h3 { + color: var(--Primary-Navy, #00233c); + font-family: Inter; + font-size: 1.5rem; + font-style: normal; + font-weight: 600; + line-height: 34px; + letter-spacing: -0.24px; + margin-bottom: 0; +} + +.card p { + font-family: Inter; + font-size: 16px; + font-style: normal; + font-weight: 400; + line-height: 24px; +} + +.container { + padding: 0 1.5rem; +} + +.bannerContent { + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.bannerCaption { + margin-bottom: 1rem; +} + +.bannerTitle { + display: -webkit-box; + line-clamp: 2; + overflow: hidden; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; +} + +.featuredEvent { + color: var(--ifm-breadcrumb-color-active); +} + +.possibleBannerLink { + display: inline-block; + padding: 1rem 0 1.5rem; +} + +.possibleBannerLink:hover { + text-decoration: none; +} + +.registerNow { + color: var(--ifm-heading-color); + display: flex; + font-weight: 600; + margin-top: 1rem; +} + +.registerNow::after { + content: 'east' / ''; + font-family: Material Symbols Outlined; + margin-left: 0.5rem; + pointer-events: none; + position: relative; + transition: transform 0.25s ease-in-out; +} + + + +@media screen and (min-width: 768px) and (max-width: 1024px) { + .container { + padding: 120px 2.5rem 0; + } + +} + +@media screen and (min-width: 1025px) { + .container { + padding: 120px 6.625rem 0; + margin: 0 auto; + width: 100%; + max-width: 1440px; + } +} + +@media (min-width: 1440px) { + .container { + max-width: 1440px; + } +} diff --git a/src/components/QuickstartsPages/index.js b/src/components/QuickstartsPages/index.js index 821135613b6..d3f5266744d 100644 --- a/src/components/QuickstartsPages/index.js +++ b/src/components/QuickstartsPages/index.js @@ -4,6 +4,7 @@ import styles from './styles.module.css'; import Link from '@docusaurus/Link'; import { Typography } from '@teradata-web/react-components'; import { translate } from '@docusaurus/Translate'; +import PossibleBanner from '../PossibleBanner'; const FeatureTitle = translate({ message: 'home_page.categories' }); const Guides = [ @@ -102,6 +103,7 @@ function Feature2({ title, description, href }) { export default function Categories() { return ( <> +

@@ -116,7 +118,7 @@ export default function Categories() {
- +

diff --git a/static/img/Possible-2025-OG.webp b/static/img/Possible-2025-OG.webp new file mode 100644 index 0000000000000000000000000000000000000000..36faf5cb38063e7dc4aa23f77295b807f1b5ec1e GIT binary patch literal 13272 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 literal 0 HcmV?d00001 From ce9297247c2c35cdbc2a1aa2b0ace79fc7e825bb Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Wed, 9 Jul 2025 12:39:34 -0700 Subject: [PATCH 2/8] fix utm links --- src/components/PossibleBanner/index.js | 14 ++++- .../PossibleBanner/secondaryBanner.js | 33 ++++++++++++ .../PossibleBanner/styles.module.css | 51 +++++++++++++++++++ src/theme/Navbar/index.tsx | 2 + 4 files changed, 99 insertions(+), 1 deletion(-) create mode 100644 src/components/PossibleBanner/secondaryBanner.js diff --git a/src/components/PossibleBanner/index.js b/src/components/PossibleBanner/index.js index ac1e28c9d48..7185bae5470 100644 --- a/src/components/PossibleBanner/index.js +++ b/src/components/PossibleBanner/index.js @@ -3,6 +3,7 @@ import { Card, Typography } from '@teradata-web/react-components'; import { translate } from '@docusaurus/Translate'; import styles from './styles.module.css'; import clsx from 'clsx'; +import { useLocation } from 'react-router-dom'; function BannerContent() { return ( @@ -29,11 +30,22 @@ function BannerContent() { } export default function PossibleBanner() { + const location = useLocation(); + const normalizePath = (path) => path.replace(/\/$/, ''); + const currentPath = normalizePath(location.pathname); + let link = ''; + + if (currentPath === normalizePath(`/quickstarts`)) { + link = 'https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-quickstarts&utm_id=701V500000HTemgIAD'; + } else{ + link = 'https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-portal&utm_id=701V500000HTemgIAD'; + } + return (
{ + const location = useLocation(); + const normalizePath = (path) => path.replace(/\/$/, ''); + const currentPath = normalizePath(location.pathname); + + const paths = [ + normalizePath(`/`), + normalizePath(`/ai-unlimited`), + normalizePath(`/quickstarts`), + ]; + const shouldDisplayAlert = !paths.includes(currentPath); + + if (!shouldDisplayAlert) return null; + + const quickstartsLink = "https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-quickstarts&utm_id=701V500000HTemgIAD"; + + return ( + + ); +}; + +export default SecondaryBanner; \ No newline at end of file diff --git a/src/components/PossibleBanner/styles.module.css b/src/components/PossibleBanner/styles.module.css index 84fc0e303e4..26c6cc82524 100644 --- a/src/components/PossibleBanner/styles.module.css +++ b/src/components/PossibleBanner/styles.module.css @@ -102,3 +102,54 @@ max-width: 1440px; } } + + +/*Secondary Banner*/ +@media (max-width: 996px) { + .secondaryBanner { + background: #DFE1F9; + height: 50px; + } +} + +@media (min-width: 997px) { + .secondaryBanner { + display: flex; + width: 100%; + min-width: 0; + position: relative; + height: 50px; + background: #DFE1F9; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + padding: 0 1rem; + box-sizing: border-box; + } + + .bannerText { + font-family: Inter; + font-size: 12px; + font-style: normal; + font-feature-settings: 'liga' off, 'clig' off; + font-weight: 600; + line-height: normal; + color: #171A2C; + } + .bannerTextLink{ + color: #171A2C; + font-feature-settings: 'liga' off, 'clig' off; + font-family: Inter; + font-size: 12px; + font-style: normal; + font-weight: 400; + line-height: normal; + text-decoration-line: underline; + text-decoration-style: solid; + text-decoration-skip-ink: none; + text-decoration-thickness: auto; + text-underline-offset: auto; + text-underline-position: from-font; + } +} diff --git a/src/theme/Navbar/index.tsx b/src/theme/Navbar/index.tsx index efc73b417e4..46bda60a31a 100644 --- a/src/theme/Navbar/index.tsx +++ b/src/theme/Navbar/index.tsx @@ -18,6 +18,7 @@ import SearchBar from '../SearchBar'; import MatDisclaimer from '../../components/MatDisclaimer'; import SelectComponent from '../../components/SelectComponent/SelectComponent'; import '../DocSidebar/styles.css'; +import SecondaryBanner from '../../components/PossibleBanner/secondaryBanner'; function translateNavItems(navItems: NavListItem[]): NavListItem[] { const location = useLocation(); @@ -162,6 +163,7 @@ export default function Navbar() { selectedLanguage={defaultLang} secondaryMenu={secondaryMenuDetails} > + ); From a2586d54b8469bb06879373bb856e8a5ee2cb91e Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Wed, 9 Jul 2025 22:29:50 -0700 Subject: [PATCH 3/8] test --- src/components/PossibleBanner/secondaryBanner.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/PossibleBanner/secondaryBanner.js b/src/components/PossibleBanner/secondaryBanner.js index c3b91ab36af..7e51a2b8a5f 100644 --- a/src/components/PossibleBanner/secondaryBanner.js +++ b/src/components/PossibleBanner/secondaryBanner.js @@ -12,7 +12,11 @@ const SecondaryBanner = () => { normalizePath(`/quickstarts`), ]; const shouldDisplayAlert = !paths.includes(currentPath); - + console.log("paths:", paths); + console.log("currentPath:", currentPath); + console.log("shouldDisplayAlert:", shouldDisplayAlert); + console.log(currentPath, paths) + if (!shouldDisplayAlert) return null; const quickstartsLink = "https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-quickstarts&utm_id=701V500000HTemgIAD"; From 0fac74df162d7548ce4433cbdacf872da65d1e93 Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Thu, 10 Jul 2025 08:07:05 -0700 Subject: [PATCH 4/8] fix hidden paths --- .../PossibleBanner/secondaryBanner.js | 54 +++++++++---------- 1 file changed, 26 insertions(+), 28 deletions(-) diff --git a/src/components/PossibleBanner/secondaryBanner.js b/src/components/PossibleBanner/secondaryBanner.js index 7e51a2b8a5f..a8b9319dcad 100644 --- a/src/components/PossibleBanner/secondaryBanner.js +++ b/src/components/PossibleBanner/secondaryBanner.js @@ -2,36 +2,34 @@ import styles from './styles.module.css'; import { useLocation } from 'react-router-dom'; const SecondaryBanner = () => { - const location = useLocation(); - const normalizePath = (path) => path.replace(/\/$/, ''); - const currentPath = normalizePath(location.pathname); + const location = useLocation(); + const currentPath = location.pathname.replace(/\/+$/, ''); - const paths = [ - normalizePath(`/`), - normalizePath(`/ai-unlimited`), - normalizePath(`/quickstarts`), - ]; - const shouldDisplayAlert = !paths.includes(currentPath); - console.log("paths:", paths); - console.log("currentPath:", currentPath); - console.log("shouldDisplayAlert:", shouldDisplayAlert); - console.log(currentPath, paths) + const hiddenExactPaths = [ + '', + '/', + '/quickstarts', + '/ai-unlimited' + ]; - if (!shouldDisplayAlert) return null; + const isExactPath = (path) => currentPath === path.replace(/\/+$/, ''); + const shouldDisplayAlert = !hiddenExactPaths.some(isExactPath); - const quickstartsLink = "https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-quickstarts&utm_id=701V500000HTemgIAD"; - - return ( -
- - Learn how to build the future of AI at Possible 2025. - -   - - Register now - -
- ); + if (!shouldDisplayAlert) return null; + + const quickstartsLink = "https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-quickstarts&utm_id=701V500000HTemgIAD"; + + return ( +
+ + Learn how to build the future of AI at Possible 2025. + +   + + Register now + +
+ ); }; -export default SecondaryBanner; \ No newline at end of file +export default SecondaryBanner; From f4075293e9ff22ec8d5f40cac915eac83425558f Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Mon, 14 Jul 2025 09:26:10 -0700 Subject: [PATCH 5/8] fix style in mobile banner --- .../PossibleBanner/secondaryBanner.js | 19 ++++++++++++------- .../PossibleBanner/styles.module.css | 5 +++++ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/components/PossibleBanner/secondaryBanner.js b/src/components/PossibleBanner/secondaryBanner.js index a8b9319dcad..a2a13198fc8 100644 --- a/src/components/PossibleBanner/secondaryBanner.js +++ b/src/components/PossibleBanner/secondaryBanner.js @@ -1,20 +1,25 @@ import styles from './styles.module.css'; import { useLocation } from 'react-router-dom'; +import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; const SecondaryBanner = () => { - const location = useLocation(); - const currentPath = location.pathname.replace(/\/+$/, ''); + const location = useLocation(); + const { i18n } = useDocusaurusContext(); + const currentPath = location.pathname.replace(/\/+$/, ''); const hiddenExactPaths = [ - '', - '/', - '/quickstarts', - '/ai-unlimited' - ]; + '', // para la raíz '/' + `/${i18n.currentLocale}`, + '/ai-unlimited', + `/${i18n.currentLocale}/ai-unlimited`, + '/quickstarts', + `/${i18n.currentLocale}/quickstarts`, +]; const isExactPath = (path) => currentPath === path.replace(/\/+$/, ''); const shouldDisplayAlert = !hiddenExactPaths.some(isExactPath); + if (!shouldDisplayAlert) return null; const quickstartsLink = "https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-quickstarts&utm_id=701V500000HTemgIAD"; diff --git a/src/components/PossibleBanner/styles.module.css b/src/components/PossibleBanner/styles.module.css index 26c6cc82524..6a3274be722 100644 --- a/src/components/PossibleBanner/styles.module.css +++ b/src/components/PossibleBanner/styles.module.css @@ -109,6 +109,11 @@ .secondaryBanner { background: #DFE1F9; height: 50px; + margin-top: 107px; + margin-bottom: -100px; + color: #171A2C; + text-align: center; + } } From 36ee93f6aa1607836b2ad267da36397134d08f4f Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Mon, 14 Jul 2025 10:53:57 -0700 Subject: [PATCH 6/8] fix secondary banner --- .../PossibleBanner/secondaryBanner.js | 32 ++++++++++--------- .../PossibleBanner/styles.module.css | 6 +++- 2 files changed, 22 insertions(+), 16 deletions(-) diff --git a/src/components/PossibleBanner/secondaryBanner.js b/src/components/PossibleBanner/secondaryBanner.js index a2a13198fc8..15b821e496d 100644 --- a/src/components/PossibleBanner/secondaryBanner.js +++ b/src/components/PossibleBanner/secondaryBanner.js @@ -2,23 +2,25 @@ import styles from './styles.module.css'; import { useLocation } from 'react-router-dom'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; +const normalizePath = (path) => path.replace(/\/+$/, ''); + const SecondaryBanner = () => { - const location = useLocation(); - const { i18n } = useDocusaurusContext(); + const location = useLocation(); + const { i18n } = useDocusaurusContext(); const currentPath = location.pathname.replace(/\/+$/, ''); - - const hiddenExactPaths = [ - '', // para la raíz '/' - `/${i18n.currentLocale}`, - '/ai-unlimited', - `/${i18n.currentLocale}/ai-unlimited`, - '/quickstarts', - `/${i18n.currentLocale}/quickstarts`, -]; - - const isExactPath = (path) => currentPath === path.replace(/\/+$/, ''); - const shouldDisplayAlert = !hiddenExactPaths.some(isExactPath); - + const developerPath = ``; + const quickstartsPath = `/quickstarts`; + const aiUnlimitedPath = `/ai-unlimited`; + const pathsNoAlert = [ + normalizePath(`/${i18n.currentLocale}`), + normalizePath(`/${i18n.currentLocale}/ai-unlimited`), + normalizePath(`/${i18n.currentLocale}/quickstarts`), + ]; + let shouldDisplayAlert = true; + + if (currentPath === developerPath || currentPath === quickstartsPath || currentPath === aiUnlimitedPath || pathsNoAlert.includes(currentPath)) { + shouldDisplayAlert = false; + } if (!shouldDisplayAlert) return null; diff --git a/src/components/PossibleBanner/styles.module.css b/src/components/PossibleBanner/styles.module.css index 6a3274be722..fecd6cc7123 100644 --- a/src/components/PossibleBanner/styles.module.css +++ b/src/components/PossibleBanner/styles.module.css @@ -113,7 +113,11 @@ margin-bottom: -100px; color: #171A2C; text-align: center; - + } + .bannerTextLink{ + text-decoration: underline; + color: #171A2C; + font-weight: 400; } } From 1d38d84158d32d53ceb62d5c04c2b442fc2a6190 Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Tue, 15 Jul 2025 10:27:09 -0700 Subject: [PATCH 7/8] use useBaseUrl --- .../PossibleBanner/secondaryBanner.js | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/components/PossibleBanner/secondaryBanner.js b/src/components/PossibleBanner/secondaryBanner.js index 15b821e496d..38dd5a90854 100644 --- a/src/components/PossibleBanner/secondaryBanner.js +++ b/src/components/PossibleBanner/secondaryBanner.js @@ -1,27 +1,27 @@ import styles from './styles.module.css'; import { useLocation } from 'react-router-dom'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; +import useBaseUrl from '@docusaurus/useBaseUrl'; -const normalizePath = (path) => path.replace(/\/+$/, ''); const SecondaryBanner = () => { const location = useLocation(); const { i18n } = useDocusaurusContext(); - const currentPath = location.pathname.replace(/\/+$/, ''); - const developerPath = ``; - const quickstartsPath = `/quickstarts`; - const aiUnlimitedPath = `/ai-unlimited`; + const normalizePath = (path) => path.replace(/\/+$/, ''); + const currentPath = normalizePath(location.pathname); + const quickstartsPath = useBaseUrl('/quickstarts'); + const aiUnlimitedPath = useBaseUrl('/ai-unlimited'); + const baseLocale = useBaseUrl(`/${i18n.currentLocale}`); const pathsNoAlert = [ - normalizePath(`/${i18n.currentLocale}`), - normalizePath(`/${i18n.currentLocale}/ai-unlimited`), - normalizePath(`/${i18n.currentLocale}/quickstarts`), + normalizePath(baseLocale), + normalizePath(`${baseLocale}/ai-unlimited`), + normalizePath(`${baseLocale}/quickstarts`), + normalizePath(quickstartsPath), + normalizePath(aiUnlimitedPath), + normalizePath(useBaseUrl('/')), ]; - let shouldDisplayAlert = true; - - if (currentPath === developerPath || currentPath === quickstartsPath || currentPath === aiUnlimitedPath || pathsNoAlert.includes(currentPath)) { - shouldDisplayAlert = false; - } + const shouldDisplayAlert = !pathsNoAlert.includes(currentPath); if (!shouldDisplayAlert) return null; const quickstartsLink = "https://www.teradata.com/events/possible?utm_source=developer-site&utm_medium=display&utm_campaign=gbl-possible-devrel&utm_content=developer-quickstarts&utm_id=701V500000HTemgIAD"; From 58f4198e48b20d5de2d7d71bbfd5822c5b53df68 Mon Sep 17 00:00:00 2001 From: "Vega, Obed" Date: Tue, 15 Jul 2025 15:08:28 -0700 Subject: [PATCH 8/8] fix space between link and text --- src/components/PossibleBanner/secondaryBanner.js | 1 - src/components/PossibleBanner/styles.module.css | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/components/PossibleBanner/secondaryBanner.js b/src/components/PossibleBanner/secondaryBanner.js index 38dd5a90854..0e7621937d3 100644 --- a/src/components/PossibleBanner/secondaryBanner.js +++ b/src/components/PossibleBanner/secondaryBanner.js @@ -31,7 +31,6 @@ const SecondaryBanner = () => { Learn how to build the future of AI at Possible 2025. -   Register now diff --git a/src/components/PossibleBanner/styles.module.css b/src/components/PossibleBanner/styles.module.css index fecd6cc7123..b6091ba0903 100644 --- a/src/components/PossibleBanner/styles.module.css +++ b/src/components/PossibleBanner/styles.module.css @@ -113,12 +113,26 @@ margin-bottom: -100px; color: #171A2C; text-align: center; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; } .bannerTextLink{ text-decoration: underline; color: #171A2C; + font-size: 12px; font-weight: 400; } + .bannerText { + font-family: Inter; + font-size: 12px; + font-style: normal; + font-feature-settings: 'liga' off, 'clig' off; + font-weight: 600; + line-height: normal; + color: #171A2C; + } } @media (min-width: 997px) { @@ -145,6 +159,7 @@ font-weight: 600; line-height: normal; color: #171A2C; + padding-right: 0.5rem; } .bannerTextLink{ color: #171A2C;