@openstack_dev/gatsby-theme-marketing-oif-core 1.0.23 → 1.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openstack_dev/gatsby-theme-marketing-oif-core",
3
- "version": "1.0.23",
3
+ "version": "1.0.24",
4
4
  "description": "Base theme for Marketing Sites",
5
5
  "author": "smarcet",
6
6
  "keywords": [
@@ -1,15 +1,13 @@
1
- import { imageField, stringField } from "../../../fields";
2
-
3
- import {
4
- ANNOUNCEMENT_BANNER_FILE_PATH
5
- } from "../../../../../utils/filePath";
1
+ import { booleanField, imageField, stringField } from "../../../fields";
6
2
 
3
+ import { ANNOUNCEMENT_BANNER_FILE_PATH } from "../../../../../utils/filePath";
7
4
 
8
5
  /*
9
6
  - file: "src/content/banners/announcement.json"
10
7
  label: "Announcement Banner"
11
8
  name: "announcement_banner"
12
9
  fields:
10
+ - {label: "Display", name: "display", widget: boolean, required: false},
13
11
  - {label: "Title", name: "title", widget: string, required: false}
14
12
  - {label: "Logo", name: "logo", widget: image, required: false}
15
13
  - {label: "Text", name: "text", widget: string, required: false}
@@ -23,37 +21,42 @@ const announcementBanner = {
23
21
  name: "announcement-banner",
24
22
  file: ANNOUNCEMENT_BANNER_FILE_PATH,
25
23
  fields: [
24
+ booleanField({
25
+ label: "Display",
26
+ name: "display",
27
+ required: true,
28
+ }),
26
29
  stringField({
27
30
  label: "Title",
28
31
  name: "title",
29
- required: false
32
+ required: false,
30
33
  }),
31
34
  imageField({
32
35
  label: "Logo",
33
36
  name: "logo",
34
- required: false
37
+ required: false,
35
38
  }),
36
39
  stringField({
37
40
  label: "Text",
38
41
  name: "text",
39
- required: false
42
+ required: false,
40
43
  }),
41
44
  stringField({
42
45
  label: "CTA Title",
43
46
  name: "cta_title",
44
- required: false
47
+ required: false,
45
48
  }),
46
49
  stringField({
47
50
  label: "CTA Label",
48
51
  name: "cta_label",
49
- required: false
52
+ required: false,
50
53
  }),
51
54
  stringField({
52
55
  label: "CTA Link",
53
56
  name: "cta_link",
54
- required: false
57
+ required: false,
55
58
  }),
56
- ]
59
+ ],
57
60
  };
58
61
 
59
- export default announcementBanner;
62
+ export default announcementBanner;
@@ -5,22 +5,23 @@ import Template from "./template";
5
5
  const dataQuery = graphql`
6
6
  query {
7
7
  announcementBannerJson {
8
- title,
8
+ display
9
+ title
9
10
  logo {
10
11
  publicURL
11
- },
12
- text,
13
- cta_title,
14
- cta_label,
12
+ }
13
+ text
14
+ cta_title
15
+ cta_label
15
16
  cta_link
16
17
  }
17
18
  }
18
19
  `;
19
20
 
20
- const AnnouncementBanner = () => {
21
- const {announcementBannerJson} = useStaticQuery(dataQuery);
21
+ function AnnouncementBanner() {
22
+ const { announcementBannerJson } = useStaticQuery(dataQuery);
22
23
 
23
24
  return <Template data={announcementBannerJson} />;
24
- };
25
+ }
25
26
 
26
27
  export default AnnouncementBanner;
@@ -1,11 +1,14 @@
1
1
  import React from "react";
2
- import { Grid } from "@mui/material";
3
- import '@fortawesome/fontawesome-free/css/all.css';
4
- import RightArrow from '../svgs/RightArrow';
2
+ import { Grid } from "@mui/material";
3
+ import "@fortawesome/fontawesome-free/css/all.css";
4
+ import RightArrow from "../svgs/RightArrow";
5
5
  import styles from "./index.module.scss";
6
6
 
7
- const Template = ({ data }) => {
8
- const {title, logo, text, cta_title, cta_label, cta_link} = data || {};
7
+ function Template({ data }) {
8
+ const {
9
+ title, logo, text, cta_title, cta_label, cta_link, display,
10
+ } = data || {};
11
+ if (!display) return null;
9
12
 
10
13
  return (
11
14
  <div className={styles.wrapper}>
@@ -13,12 +16,24 @@ const Template = ({ data }) => {
13
16
  <Grid item sm={12} md={8}>
14
17
  <div className={styles.header}>
15
18
  <img className={styles.logo} src={logo?.publicURL} alt="logo" />
16
- <h2 className={styles.title}> {title} </h2>
19
+ <h2 className={styles.title}>
20
+ {" "}
21
+ {title}
22
+ {" "}
23
+ </h2>
17
24
  </div>
18
- <p className={styles.text}> {text} </p>
25
+ <p className={styles.text}>
26
+ {" "}
27
+ {text}
28
+ {" "}
29
+ </p>
19
30
  </Grid>
20
31
  <Grid item sm={12} md={4}>
21
- <h3 className={styles.ctaTitle}> {cta_title} </h3>
32
+ <h3 className={styles.ctaTitle}>
33
+ {" "}
34
+ {cta_title}
35
+ {" "}
36
+ </h3>
22
37
  <a className={styles.cta} href={cta_link}>
23
38
  {cta_label}
24
39
  <span className={styles.img}>
@@ -35,6 +50,6 @@ const Template = ({ data }) => {
35
50
  </div>
36
51
  </div>
37
52
  );
38
- };
53
+ }
39
54
 
40
55
  export default Template;
@@ -1,4 +1,5 @@
1
1
  {
2
+ "display": true,
2
3
  "title": "OpenInfra Summit > Asia '24",
3
4
  "logo": "OpenInfrastructureFoundation-icon-RGB.svg",
4
5
  "text": "Join the OpenStack community in Suwon, South Korea from September 3-4 at the first regional OpenInfra Summit Asia! Hear how OpenStack developers and operators are collaborating to define AI requirements, new OpenStack + Kubernetes production use cases and how organizations continue to scale their OpenStack footprint.",