gatsby-core-theme 41.1.35 → 41.1.37

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.
Files changed (34) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/package.json +1 -1
  3. package/src/components/atoms/author-box/template-one/fact-check/index.js +1 -1
  4. package/src/components/atoms/author-box/template-one/index.js +1 -1
  5. package/src/components/atoms/author-box/template-three/fact-check/index.js +1 -1
  6. package/src/components/atoms/author-box/template-three/index.js +1 -1
  7. package/src/components/atoms/author-box/template-two/fact-check/index.js +1 -1
  8. package/src/components/atoms/author-box/template-two/index.js +1 -1
  9. package/src/components/atoms/button/operator-cta.js +0 -1
  10. package/src/components/atoms/footer/as-seen-on/index.js +3 -3
  11. package/src/components/atoms/header-operator-bannner/index.js +7 -4
  12. package/src/components/atoms/image/index.js +3 -3
  13. package/src/components/atoms/ratings/index.js +1 -1
  14. package/src/components/atoms/search/autocomplete/operator.js +3 -3
  15. package/src/components/molecules/bonus/template-one/index.js +4 -4
  16. package/src/components/molecules/bonus/template-two/index.js +4 -4
  17. package/src/components/molecules/bonus-box/template-three/index.js +3 -0
  18. package/src/components/molecules/bonus-box/template-two/index.js +3 -0
  19. package/src/components/molecules/header/variants/default/template-one/index.js +10 -5
  20. package/src/components/molecules/header/variants/operator/template-one-two/index.js +4 -4
  21. package/src/components/molecules/header/variants/slot/template-one/index.js +4 -4
  22. package/src/components/molecules/spotlights_v2/image/template-one/index.js +6 -5
  23. package/src/components/molecules/spotlights_v2/image/template-two/index.js +5 -4
  24. package/src/components/molecules/spotlights_v2/image-text/template-one/index.js +6 -5
  25. package/src/components/molecules/spotlights_v2/image-text/template-three/index.js +4 -4
  26. package/src/components/molecules/spotlights_v2/image-text/template-three/item/index.js +10 -7
  27. package/src/components/molecules/spotlights_v2/image-text/template-two/index.js +6 -5
  28. package/src/components/molecules/toplist/default-row/index.js +4 -4
  29. package/src/components/organisms/accordion/variants/template-two/index.js +3 -3
  30. package/src/components/organisms/archive/index.js +5 -3
  31. package/src/components/organisms/toplist/list/index.js +7 -2
  32. package/src/components/pages/tracker/index-ssr.js +6 -4
  33. package/src/helpers/processor/relations.mjs +1 -1
  34. package/src/helpers/processor/relations.test.js +2 -2
package/CHANGELOG.md CHANGED
@@ -1,3 +1,35 @@
1
+ ## [41.1.37](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/compare/v41.1.36...v41.1.37) (2025-01-31)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * fix proptype errors, and useTranslation conditionals ([63f5eb7](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/63f5eb78f0436543fb2f3098ede27b14e457488b))
7
+ * ratings and cta proptype errors ([5a80243](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/5a802436cbc8cac0692b363d3fb0f185a04a434f))
8
+
9
+
10
+ ### Code Refactoring
11
+
12
+ * add currency logos for crypto theme ([554f30b](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/554f30b3aa1e2c927a41fff4ba340c28f5c3f2af))
13
+
14
+
15
+ * Merge branch 'crypto-currencies' into 'master' ([c5eaec5](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/c5eaec52e39a4268c03ffbbd750d59ec6a7c5617))
16
+ * Merge branch 'fix-proptype-errors' into 'master' ([f5f10ea](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/f5f10ea2ab14538fb3ef5e2fb2768d7b99033e90))
17
+
18
+
19
+ ### Tests
20
+
21
+ * fix test ([8bd29f6](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/8bd29f6d8256d9272955dd4085a251bed4a9760f))
22
+
23
+ ## [41.1.36](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/compare/v41.1.35...v41.1.36) (2025-01-30)
24
+
25
+
26
+ ### Code Refactoring
27
+
28
+ * add default button sizes ([971162b](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/971162b3e0e101c85f394f16d3553f030782cec0))
29
+
30
+
31
+ * Merge branch 'button-sizes' into 'master' ([0c907d9](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/commit/0c907d97b3065f621218f7ff25dfd3495b3d4df6))
32
+
1
33
  ## [41.1.35](https://gitlab.com/g2m-gentoo/team-floyd/themes/gatsby-themes/compare/v41.1.34...v41.1.35) (2025-01-29)
2
34
 
3
35
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gatsby-core-theme",
3
- "version": "41.1.35",
3
+ "version": "41.1.37",
4
4
  "description": "Gatsby Theme NPM Package",
5
5
  "author": "",
6
6
  "license": "ISC",
@@ -14,7 +14,7 @@ export default function FactCheck({
14
14
  date = '',
15
15
  dateFormat = 'DD.MM.YYYY',
16
16
  dateSeparator = '/',
17
- readingTime = '',
17
+ readingTime,
18
18
  reviewer,
19
19
  verifiedIconWidth = 14,
20
20
  verifiedIconHeight = 14,
@@ -5,7 +5,7 @@ import AuthorDetails from '../details';
5
5
  import AuthorDescription from '../description';
6
6
  import FactCheck from './fact-check';
7
7
 
8
- export default function AuthorBox({ author, reviewer, readingTime = '', date = '' }) {
8
+ export default function AuthorBox({ author, reviewer, readingTime, date = '' }) {
9
9
  return (
10
10
  <div className={styles.container || ''} id="authorbox">
11
11
  <AuthorDetails author={author} />
@@ -14,7 +14,7 @@ export default function FactCheck({
14
14
  date = '',
15
15
  dateFormat = 'DD.MM.YYYY',
16
16
  dateSeparator = '/',
17
- readingTime = '',
17
+ readingTime,
18
18
  reviewer,
19
19
  verifiedIconWidth = 14,
20
20
  verifiedIconHeight = 14,
@@ -6,7 +6,7 @@ import AuthorDescription from '../description';
6
6
  import FactCheck from './fact-check';
7
7
  import Expertion from './expertion';
8
8
 
9
- export default function AuthorBox({ author, reviewer, readingTime = '', date = '' }) {
9
+ export default function AuthorBox({ author, reviewer, readingTime, date = '' }) {
10
10
  return (
11
11
  <div className={styles.container || ''} id="authorbox">
12
12
  {author?.ribbon_label && <div className={styles.ribbon || ''}>{author?.ribbon_label}</div>}
@@ -13,7 +13,7 @@ export default function FactCheck({
13
13
  date = '',
14
14
  dateFormat = 'DD.MM.YYYY',
15
15
  dateSeparator = '/',
16
- readingTime = '',
16
+ readingTime,
17
17
  reviewer,
18
18
  verifiedIconWidth = 14,
19
19
  verifiedIconHeight = 14,
@@ -5,7 +5,7 @@ import AuthorDetails from '../details';
5
5
  import AuthorDescription from '../description';
6
6
  import FactCheck from './fact-check';
7
7
 
8
- export default function AuthorBox({ author, reviewer = {}, readingTime = '', date = '' }) {
8
+ export default function AuthorBox({ author, reviewer = {}, readingTime, date = '' }) {
9
9
  return (
10
10
  <div className={styles.container || ''} id="authorbox">
11
11
  <AuthorDetails template="templateTwo" ribbon author={author} extraInfo />
@@ -128,7 +128,6 @@ OperatorCtaButton.propTypes = {
128
128
  operator: PropTypes.shape({
129
129
  name: PropTypes.string,
130
130
  status: PropTypes.string,
131
- links: PropTypes.string
132
131
  }),
133
132
  titleSuffix: PropTypes.string,
134
133
  gtmClass: PropTypes.string,
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import LinkList from '../../../molecules/link-list';
4
4
  import styles from './as-seen-on.module.scss';
5
5
 
6
- const AsSeenOn = ({ asSeenOn, template, width = '130', height = '36' }) => (
6
+ const AsSeenOn = ({ asSeenOn, template, width = 130, height = 36 }) => (
7
7
  <div
8
8
  className={`${styles?.asSeenOn || ''} ${
9
9
  template && styles[template] ? styles[template] || '' : ''
@@ -27,6 +27,6 @@ export default AsSeenOn;
27
27
  AsSeenOn.propTypes = {
28
28
  asSeenOn: PropTypes.shape({}),
29
29
  template: PropTypes.string,
30
- width: PropTypes.string,
31
- height: PropTypes.string,
30
+ width: PropTypes.number,
31
+ height: PropTypes.number,
32
32
  };
@@ -12,11 +12,12 @@ const HeaderOperatorBaner = ({
12
12
  operator,
13
13
  logo,
14
14
  buttonType = 'primary',
15
+ buttonSize = 'm',
15
16
  template,
16
17
  moduleName = TrackingKeys?.OPERATORBANNER,
17
18
  clickedElement = 'header_operator_banner',
18
- width = '64',
19
- height = '64',
19
+ width = 64,
20
+ height = 64,
20
21
  modulePosition,
21
22
  itemPosition
22
23
  }) => {
@@ -47,6 +48,7 @@ const HeaderOperatorBaner = ({
47
48
  tracker="main"
48
49
  pageTemplate={template}
49
50
  buttonType={buttonType}
51
+ buttonSize={buttonSize}
50
52
  modulePosition={modulePosition}
51
53
  itemPosition={itemPosition}
52
54
  />
@@ -95,10 +97,11 @@ HeaderOperatorBaner.propTypes = {
95
97
  }),
96
98
  template: PropTypes.string,
97
99
  buttonType: PropTypes.string,
100
+ buttonSize: PropTypes.string,
98
101
  moduleName: PropTypes.string,
99
102
  clickedElement: PropTypes.string,
100
- width: PropTypes.string,
101
- height: PropTypes.string,
103
+ width: PropTypes.number,
104
+ height: PropTypes.number,
102
105
  modulePosition: PropTypes.number,
103
106
  itemPosition: PropTypes.number
104
107
  }
@@ -5,7 +5,7 @@ import LazyImage from '~hooks/lazy-image';
5
5
  import { imagePrettyUrl } from '~helpers/getters';
6
6
  import styles from './image.module.scss';
7
7
 
8
- const Image = ({ module = {}, width = '912', height = '333' }) => {
8
+ const Image = ({ module = {}, width = 912, height = 333 }) => {
9
9
  const { title, value, alt = 'missing alt', alignment } = module;
10
10
 
11
11
  if (!value) return <></>;
@@ -29,8 +29,8 @@ Image.propTypes = {
29
29
  alt: PropTypes.string,
30
30
  alignment: PropTypes.string,
31
31
  }),
32
- width: PropTypes.string,
33
- height: PropTypes.string,
32
+ width: PropTypes.number,
33
+ height: PropTypes.number,
34
34
  };
35
35
 
36
36
  export default Image;
@@ -106,6 +106,6 @@ Ratings.propTypes = {
106
106
  type: PropTypes.string,
107
107
  }),
108
108
  type: PropTypes.string,
109
- numOfStars: PropTypes.string,
109
+ numOfStars: PropTypes.number,
110
110
  currency: PropTypes.string,
111
111
  };
@@ -6,7 +6,7 @@ import { imagePrettyUrl } from '~helpers/getters';
6
6
  import OperatorCta from '~atoms/button/operator-cta';
7
7
  import styles from './operator.module.scss';
8
8
 
9
- const Operator = ({ item = {}, width = '56', height = '56' }) => {
9
+ const Operator = ({ item = {}, width = 56, height = 56 }) => {
10
10
  const { relation } = item;
11
11
  const img = relation?.logo?.filename;
12
12
 
@@ -31,8 +31,8 @@ Operator.propTypes = {
31
31
  logo: PropTypes.shape({}),
32
32
  }),
33
33
  }).isRequired,
34
- width: PropTypes.string,
35
- height: PropTypes.string,
34
+ width: PropTypes.number,
35
+ height: PropTypes.number,
36
36
  };
37
37
 
38
38
  export default Operator;
@@ -17,8 +17,8 @@ export default function Bonus({
17
17
  moduleName = TrackingKeys?.BONUS,
18
18
  module = {},
19
19
  tncFixed = false,
20
- width = "120",
21
- height = "120",
20
+ width = 120,
21
+ height = 120,
22
22
  showRoundedRating = false,
23
23
  showRatingLabel = false,
24
24
  showLabelMiddle = false,
@@ -107,8 +107,8 @@ Bonus.propTypes = {
107
107
  type: PropTypes.string,
108
108
  name: PropTypes.string,
109
109
  }),
110
- width: PropTypes.string,
111
- height: PropTypes.string,
110
+ width: PropTypes.number,
111
+ height: PropTypes.number,
112
112
  showRoundedRating: PropTypes.bool,
113
113
  showRatingLabel: PropTypes.bool,
114
114
  showLabelMiddle: PropTypes.bool,
@@ -25,8 +25,8 @@ export default function TemplateOne({
25
25
  closedBanner,
26
26
  setClosedBanner,
27
27
  showRoundedRating = false,
28
- width = "120",
29
- height = "120",
28
+ width = 120,
29
+ height = 120,
30
30
  showRatingLabel = false,
31
31
  showLabelMiddle = false,
32
32
  ctaIcon = <FaArrowRight fontSize={20} title="Right-pointing Arrow Icon" />
@@ -141,8 +141,8 @@ TemplateOne.propTypes = {
141
141
  name: PropTypes.string,
142
142
  }),
143
143
  moduleName: PropTypes.string,
144
- width: PropTypes.string,
145
- height: PropTypes.string,
144
+ width: PropTypes.number,
145
+ height: PropTypes.number,
146
146
  showRatingLabel: PropTypes.bool,
147
147
  showLabelMiddle: PropTypes.bool,
148
148
  ctaIcon: PropTypes.elementType,
@@ -18,6 +18,7 @@ export default function BonusBox({
18
18
  splitBy = '+',
19
19
  feSeparator = '+',
20
20
  buttonType = 'primary',
21
+ buttonSize = 'm',
21
22
  moduleName = null,
22
23
  clickedElement = "bonusBox",
23
24
  titleSuffix,
@@ -77,6 +78,7 @@ export default function BonusBox({
77
78
  <CtaButton
78
79
  operator={item}
79
80
  buttonType={buttonType}
81
+ buttonSize={buttonSize}
80
82
  moduleName={moduleName}
81
83
  clickedElement={`${clickedElement}_cta`}
82
84
  modulePosition={modulePosition}
@@ -113,6 +115,7 @@ BonusBox.propTypes = {
113
115
  splitBy: PropTypes.string,
114
116
  feSeparator: PropTypes.string,
115
117
  buttonType: PropTypes.string,
118
+ buttonSize: PropTypes.string,
116
119
  variableInsideContainer: PropTypes.bool,
117
120
  moduleName: PropTypes.string,
118
121
  clickedElement: PropTypes.string,
@@ -13,6 +13,7 @@ export default function BonusBox({
13
13
  splitBy = '+',
14
14
  feSeparator = '+',
15
15
  buttonType = 'primary',
16
+ buttonSize = 'm',
16
17
  moduleName = null,
17
18
  clickedElement = "bonusBox",
18
19
  titleSuffix,
@@ -44,6 +45,7 @@ export default function BonusBox({
44
45
  operator={item}
45
46
  icon={<FaArrowRight title="Right-pointing Arrow Icon" />}
46
47
  buttonType={buttonType}
48
+ buttonSize={buttonSize}
47
49
  moduleName={moduleName}
48
50
  clickedElement={`${clickedElement}_cta`}
49
51
  modulePosition={modulePosition}
@@ -60,6 +62,7 @@ BonusBox.propTypes = {
60
62
  splitBy: PropTypes.string,
61
63
  feSeparator: PropTypes.string,
62
64
  buttonType: PropTypes.string,
65
+ buttonSize: PropTypes.string,
63
66
  moduleName: PropTypes.string,
64
67
  clickedElement: PropTypes.string,
65
68
  titleSuffix: PropTypes.string,
@@ -14,8 +14,10 @@ export default function TemplateOne({
14
14
  description,
15
15
  extraFields,
16
16
  imageObj,
17
- width = '356',
18
- height = '343',
17
+ width = 356,
18
+ height = 343,
19
+ buttonType="secondary",
20
+ buttonSize="m",
19
21
  hasVariableComponent = false,
20
22
  }) {
21
23
  const link = getExtraField(extraFields, 'link');
@@ -34,7 +36,8 @@ export default function TemplateOne({
34
36
  {link && (
35
37
  <Button
36
38
  to={link}
37
- buttonType="secondary"
39
+ buttonType={buttonType}
40
+ buttonSize={buttonSize}
38
41
  gtmClass="game-card-gtm btn-cta"
39
42
  btnText={link}
40
43
  icon={<FaArrowRight title="Right-pointing Arrow Icon" />}
@@ -70,7 +73,9 @@ TemplateOne.propTypes = {
70
73
  extraFields: PropTypes.shape({
71
74
  link: PropTypes.string,
72
75
  }),
73
- width: PropTypes.string,
74
- height: PropTypes.string,
76
+ width: PropTypes.number,
77
+ height: PropTypes.number,
75
78
  hasVariableComponent: PropTypes.bool,
79
+ buttonType: PropTypes.string,
80
+ buttonSize: PropTypes.string,
76
81
  };
@@ -26,8 +26,8 @@ const TemplateOneTwo = ({
26
26
  moduleName = TrackingKeys?.HEADEROPERATOR,
27
27
  template = 'template_one',
28
28
  showRoundedRating = false,
29
- width = '179',
30
- height = '179',
29
+ width = 179,
30
+ height = 179,
31
31
  }) => {
32
32
  const ribbon = relation.ribbons?.length > 0 ? relation.ribbons[0] : null;
33
33
 
@@ -129,8 +129,8 @@ TemplateOneTwo.propTypes = {
129
129
  template: PropTypes.string,
130
130
  icon: PropTypes.node,
131
131
  showRoundedRating: PropTypes.bool,
132
- width: PropTypes.string,
133
- height: PropTypes.string,
132
+ width: PropTypes.number,
133
+ height: PropTypes.number,
134
134
  moduleName: PropTypes.string,
135
135
  };
136
136
 
@@ -14,8 +14,8 @@ export default function SlotHeader({
14
14
  moduleName = TrackingKeys?.HEADERSLOTS,
15
15
  image = <Verify />,
16
16
  showExtraRatings = false,
17
- width = '170',
18
- height = '170',
17
+ width = 170,
18
+ height = 170,
19
19
  }) {
20
20
  const imageObject = page.relation?.logo;
21
21
 
@@ -103,6 +103,6 @@ SlotHeader.propTypes = {
103
103
  image: PropTypes.element,
104
104
  showExtraRatings: PropTypes.bool,
105
105
  moduleName: PropTypes.string,
106
- width: PropTypes.string,
107
- height: PropTypes.string,
106
+ width: PropTypes.number,
107
+ height: PropTypes.number,
108
108
  };
@@ -6,8 +6,9 @@ import { getAltText, imagePrettyUrl } from '../../../../../helpers/getters.mjs';
6
6
  import styles from './template-one.module.scss';
7
7
  import useTranslate from '~hooks/useTranslate/useTranslate';
8
8
 
9
- export default function TemplateOne({ module, width = '295', height = '260' }) {
9
+ export default function TemplateOne({ module, width = 295, height = 260 }) {
10
10
  const { items } = module;
11
+ const btnText = useTranslate('link_text_spotlights', 'Top Online Casinos');
11
12
 
12
13
  const content = (res) => (
13
14
  <>
@@ -20,7 +21,7 @@ export default function TemplateOne({ module, width = '295', height = '260' }) {
20
21
  />
21
22
  )}
22
23
  {/* Need to talk to add this field on hercules */}
23
- <p>{res?.link_text || useTranslate('link_text_spotlights', 'Top Online Casinos')}</p>
24
+ <p>{res?.link_text || btnText}</p>
24
25
  {res.subtitle && <span>{res.subtitle}</span>}
25
26
  </>
26
27
  );
@@ -43,8 +44,8 @@ export default function TemplateOne({ module, width = '295', height = '260' }) {
43
44
 
44
45
  TemplateOne.propTypes = {
45
46
  module: PropTypes.shape({
46
- items: PropTypes.shape({}),
47
+ items: PropTypes.shape([]),
47
48
  }).isRequired,
48
- width: PropTypes.string,
49
- height: PropTypes.string,
49
+ width: PropTypes.number,
50
+ height: PropTypes.number,
50
51
  };
@@ -7,8 +7,9 @@ import { getAltText, imagePrettyUrl } from '../../../../../helpers/getters.mjs';
7
7
  import styles from './template-two.module.scss';
8
8
  import useTranslate from '~hooks/useTranslate/useTranslate';
9
9
 
10
- export default function TemplateOne({ module, width = '340', height = '268' }) {
10
+ export default function TemplateOne({ module, width = 340, height = 268 }) {
11
11
  const { items } = module;
12
+ const btnText = useTranslate('link_text_spotlights', 'Top Online Casinos');
12
13
  const content = (res) => (
13
14
  <>
14
15
  {res?.image && (
@@ -20,7 +21,7 @@ export default function TemplateOne({ module, width = '340', height = '268' }) {
20
21
  />
21
22
  )}
22
23
  <p>
23
- {res?.link_text || useTranslate('link_text_spotlights', 'Top Online Casinos')}{' '}
24
+ {res?.link_text || btnText}{' '}
24
25
  {res.link?.value && <FaArrowRight size={20} color="#fff" />}
25
26
  </p>
26
27
  {res.subtitle && <span>{res.subtitle}</span>}
@@ -49,6 +50,6 @@ TemplateOne.propTypes = {
49
50
  module: PropTypes.shape({
50
51
  items: PropTypes.shape({}),
51
52
  }).isRequired,
52
- width: PropTypes.string,
53
- height: PropTypes.string,
53
+ width: PropTypes.number,
54
+ height: PropTypes.number,
54
55
  };
@@ -12,10 +12,11 @@ export default function TemplateOne({
12
12
  scrollableContent = false,
13
13
  buttonType = 'secondary',
14
14
  buttonSize = 'm',
15
- width = '300',
16
- height = '176',
15
+ width = 300,
16
+ height = 176,
17
17
  }) {
18
18
  const { items } = module;
19
+ const btnText = useTranslate('read_review_spotlight', 'Read review');
19
20
 
20
21
  return (
21
22
  <div className={styles?.spotlightsImage || ''}>
@@ -54,7 +55,7 @@ export default function TemplateOne({
54
55
  isInternalLink={res?.link?.type !== 'external'}
55
56
  targetBlank={res?.link?.type !== 'page'}
56
57
  to={res?.link?.value}
57
- btnText={res?.link_text || useTranslate('read_review_spotlight', 'Read review')}
58
+ btnText={res?.link_text || btnText}
58
59
  />
59
60
  )}
60
61
  </div>
@@ -72,6 +73,6 @@ TemplateOne.propTypes = {
72
73
  scrollableContent: PropTypes.bool,
73
74
  buttonType: PropTypes.string,
74
75
  buttonSize: PropTypes.string,
75
- width: PropTypes.string,
76
- height: PropTypes.string,
76
+ width: PropTypes.number,
77
+ height: PropTypes.number,
77
78
  };
@@ -11,8 +11,8 @@ export default function TemplateOne({
11
11
  characterMaxReadMore = 600,
12
12
  buttonType = 'secondary',
13
13
  buttonSize = 'm',
14
- width = '104',
15
- height = '104',
14
+ width = 104,
15
+ height = 104,
16
16
  }) {
17
17
  const { items } = module;
18
18
  return (
@@ -50,6 +50,6 @@ TemplateOne.propTypes = {
50
50
  characterMaxReadMore: PropTypes.number,
51
51
  buttonType: PropTypes.string,
52
52
  buttonSize: PropTypes.string,
53
- width: PropTypes.string,
54
- height: PropTypes.string,
53
+ width: PropTypes.number,
54
+ height: PropTypes.number,
55
55
  };
@@ -17,11 +17,14 @@ export default function TemplateOne({
17
17
  scrollableContent = false,
18
18
  buttonType = 'secondary',
19
19
  buttonSize = 'm',
20
- width = '104',
21
- height = '104',
20
+ width = 104,
21
+ height = 104,
22
22
  }) {
23
23
  const [showMore, setShowMore] = useState(false);
24
24
  const TitleTag = item?.title_tag || 'label';
25
+ const btnText = useTranslate('read_review_spotlight', 'Read review');
26
+ const readMoreText = useTranslate('read_more', 'Read more');
27
+ const readLessText = useTranslate('read_less', 'Read less');
25
28
 
26
29
  return (
27
30
  <div className={styles.item}>
@@ -49,12 +52,12 @@ export default function TemplateOne({
49
52
  <span onClick={() => setShowMore(!showMore)} className={styles.readMoreBtn}>
50
53
  {!showMore ? (
51
54
  <>
52
- {useTranslate('read_more', 'Read more')}
55
+ {readMoreText}
53
56
  <FaPlus size={16} />
54
57
  </>
55
58
  ) : (
56
59
  <>
57
- {useTranslate('read_less', 'Read less')}
60
+ {readLessText}
58
61
  <FaMinus size={16} />
59
62
  </>
60
63
  )}
@@ -70,7 +73,7 @@ export default function TemplateOne({
70
73
  isInternalLink={item?.link?.type !== 'external'}
71
74
  targetBlank={item?.link?.type !== 'page'}
72
75
  to={item?.link?.value}
73
- btnText={item?.link_text || useTranslate('read_review_spotlight', 'Read review')}
76
+ btnText={item?.link_text || btnText}
74
77
  />
75
78
  )}
76
79
  </div>
@@ -96,6 +99,6 @@ TemplateOne.propTypes = {
96
99
  scrollableContent: PropTypes.bool,
97
100
  buttonType: PropTypes.string,
98
101
  buttonSize: PropTypes.string,
99
- width: PropTypes.string,
100
- height: PropTypes.string,
102
+ width: PropTypes.number,
103
+ height: PropTypes.number,
101
104
  };
@@ -13,10 +13,11 @@ export default function TemplateOne({
13
13
  buttonType = 'secondary',
14
14
  buttonSize = 'm',
15
15
  titleType = 'label',
16
- width = '104',
17
- height = '104',
16
+ width = 104,
17
+ height = 104,
18
18
  }) {
19
19
  const { items } = module;
20
+ const btnText = useTranslate('read_review_spotlight', 'Read review');
20
21
 
21
22
  return (
22
23
  <div className={styles?.spotlightsImage || ''}>
@@ -54,7 +55,7 @@ export default function TemplateOne({
54
55
  isInternalLink={res?.link?.type !== 'external'}
55
56
  targetBlank={res?.link?.type !== 'page'}
56
57
  to={res?.link?.value}
57
- btnText={res?.link_text || useTranslate('read_review_spotlight', 'Read review')}
58
+ btnText={res?.link_text || btnText}
58
59
  />
59
60
  )}
60
61
  </div>
@@ -73,6 +74,6 @@ TemplateOne.propTypes = {
73
74
  buttonType: PropTypes.string,
74
75
  buttonSize: PropTypes.string,
75
76
  titleType: PropTypes.string,
76
- width: PropTypes.string,
77
- height: PropTypes.string,
77
+ width: PropTypes.number,
78
+ height: PropTypes.number,
78
79
  };
@@ -24,8 +24,8 @@ const Row = ({
24
24
  className,
25
25
  nofollow = false,
26
26
  moduleName = TrackingKeys?.TOPLIST,
27
- width = '100',
28
- height = '100',
27
+ width = 100,
28
+ height = 100,
29
29
  modulePosition,
30
30
  itemPosition
31
31
  }) => {
@@ -114,8 +114,8 @@ Row.propTypes = {
114
114
  bonus: PropTypes.oneOfType([PropTypes.array, PropTypes.object])
115
115
  }).isRequired,
116
116
  pageTemplate: PropTypes.string,
117
- width: PropTypes.string,
118
- height: PropTypes.string
117
+ width: PropTypes.number,
118
+ height: PropTypes.number
119
119
  }
120
120
 
121
121
  export default Row
@@ -9,7 +9,7 @@ import Link from '~hooks/link';
9
9
  import LazyImage from '~hooks/lazy-image';
10
10
  import { imagePrettyUrl } from '~helpers/getters';
11
11
 
12
- const TemplateTwo = ({ module, author, width = '36', height = '36' }) => {
12
+ const TemplateTwo = ({ module, author, width = 36, height = 36 }) => {
13
13
  const { items } = module;
14
14
  const usernames = [
15
15
  'mindbrew94',
@@ -132,8 +132,8 @@ TemplateTwo.propTypes = {
132
132
  profile_page_path: PropTypes.string,
133
133
  name: PropTypes.string,
134
134
  }),
135
- width: PropTypes.string,
136
- height: PropTypes.string,
135
+ width: PropTypes.number,
136
+ height: PropTypes.number,
137
137
  };
138
138
 
139
139
  export default TemplateTwo;
@@ -9,7 +9,7 @@ import Button from '~atoms/button/button';
9
9
  import useTranslate from '~hooks/useTranslate/useTranslate';
10
10
  import styles from './archive.module.scss';
11
11
 
12
- const Archive = ({ module, page, loadMore, gtmClass = '', anchorLabel, modulePosition }) => {
12
+ const Archive = ({ module, page, loadMore, gtmClass = '', anchorLabel, modulePosition, buttonType = 'tertiary', buttonSize = 'm' }) => {
13
13
  const [moduleItems, setModuleItems] = useState([...module.items]);
14
14
  const updatedModule = { ...module };
15
15
  const hasLoadMore = module.pagination_type === 'load_more';
@@ -44,8 +44,8 @@ const Archive = ({ module, page, loadMore, gtmClass = '', anchorLabel, modulePos
44
44
  <Button
45
45
  btnText={loadMoreText}
46
46
  onClick={loadMoreHandler}
47
- buttonType="tertiary"
48
- buttonSize="m"
47
+ buttonType={buttonType}
48
+ buttonSize={buttonSize}
49
49
  gtmClass="archive-gtm btn-cta"
50
50
  isInternalLink={false}
51
51
  />
@@ -87,6 +87,8 @@ Archive.propTypes = {
87
87
  gtmClass: PropTypes.string,
88
88
  anchorLabel: PropTypes.string,
89
89
  modulePosition: PropTypes.number,
90
+ buttonType: PropTypes.string,
91
+ buttonSize: PropTypes.string,
90
92
  };
91
93
 
92
94
  export default Archive;
@@ -14,7 +14,9 @@ export default function List({
14
14
  pageTemplate,
15
15
  moduleName,
16
16
  pagePath,
17
- modulePosition
17
+ modulePosition,
18
+ buttonType = 'tertiary',
19
+ buttonSize = 'm',
18
20
  }) {
19
21
  const initLoadItems =
20
22
  Number(initItemsCount) !== 0 ? Number(initItemsCount) : 10000
@@ -72,7 +74,8 @@ export default function List({
72
74
  isInternalLink={false}
73
75
  btnText="Load More"
74
76
  onClick={() => handleClick()}
75
- buttonType="tertiary"
77
+ buttonType={buttonType}
78
+ buttonSize={buttonSize}
76
79
  />
77
80
  </div>
78
81
  )}
@@ -97,4 +100,6 @@ List.propTypes = {
97
100
  pagePath: PropTypes.string,
98
101
  modulePosition: PropTypes.number,
99
102
  moduleName: PropTypes.string,
103
+ buttonType: PropTypes.string,
104
+ buttonSize: PropTypes.string,
100
105
  }
@@ -26,8 +26,8 @@ const Tracker = ({
26
26
  operatorLogo = false,
27
27
  operatorLogoWidth = 80,
28
28
  operatorLogoHeight = 80,
29
- siteLogoWidth = '100',
30
- siteLogoHeight = '100',
29
+ siteLogoWidth = 100,
30
+ siteLogoHeight = 100,
31
31
  serverData,
32
32
  }) => {
33
33
  const { operator, page } = pageContext;
@@ -151,8 +151,10 @@ Tracker.propTypes = {
151
151
  redirectTimer: PropTypes.number,
152
152
  isStory: PropTypes.bool,
153
153
  operatorLogo: PropTypes.bool,
154
- operatorLogoWidth: PropTypes.string,
155
- operatorLogoHeight: PropTypes.string,
154
+ operatorLogoWidth: PropTypes.number,
155
+ operatorLogoHeight: PropTypes.number,
156
+ siteLogoWidth: PropTypes.number,
157
+ siteLogoHeight: PropTypes.number,
156
158
  pageContext: PropTypes.shape({
157
159
  operator: PropTypes.shape({
158
160
  bonus: PropTypes.shape({
@@ -84,7 +84,7 @@ export const processCurrencies = (ids, currencies) =>
84
84
  pick(
85
85
  {
86
86
  ...currencies[id],
87
- logo: currencies[id].standardised_logo_filename_object,
87
+ logo: currencies[id].standardised_logo,
88
88
  },
89
89
  pickRelationKeys.currency
90
90
  )
@@ -86,8 +86,8 @@ describe('Processor Relations', () => {
86
86
  test('processCurrencies maps currencies with logos', () => {
87
87
  const ids = [1, 2];
88
88
  const currencies = {
89
- 1: { id: 1, name: 'USD', standardised_logo_filename_object: 'usd_logo.svg' },
90
- 2: { id: 2, name: 'EUR', standardised_logo_filename_object: 'eur_logo.svg' },
89
+ 1: { id: 1, name: 'USD', standardised_logo: 'usd_logo.svg' },
90
+ 2: { id: 2, name: 'EUR', standardised_logo: 'eur_logo.svg' },
91
91
  };
92
92
  const expected = [
93
93
  { id: 1, name: 'USD', logo: 'usd_logo.svg' },