gatsby-matrix-theme 6.0.7 → 7.0.2
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/CHANGELOG.md +79 -0
- package/package.json +2 -2
- package/src/components/atoms/author-card/index.js +4 -3
- package/src/components/atoms/cards/author-card/index.js +8 -3
- package/src/components/atoms/cards/game-card/index.js +7 -1
- package/src/components/atoms/cards/operator-card/index.js +8 -3
- package/src/components/atoms/cards/payment-method-card/index.js +11 -2
- package/src/components/atoms/cards/popup-card/index.js +11 -2
- package/src/components/atoms/cards/software-provider-card/index.js +9 -2
- package/src/components/molecules/carousel/screenshot-slide/index.js +2 -2
- package/src/components/molecules/small-welcome-bonus/index.js +3 -2
- package/src/components/molecules/toplist/row/variant-one.js +4 -1
- package/src/gatsby-core-theme/components/atoms/author/author.module.scss +63 -4
- package/src/gatsby-core-theme/components/atoms/author/index.js +25 -13
- package/src/gatsby-core-theme/components/atoms/spotlights/spotlights-theme.module.scss +4 -0
- package/src/gatsby-core-theme/components/molecules/module/index.js +1 -1
- package/src/gatsby-core-theme/components/organisms/head/index.js +1 -4
- package/src/gatsby-core-theme/components/organisms/toplist/index.js +4 -1
- package/src/gatsby-core-theme/components/organisms/toplist/list/index.js +4 -0
- package/src/gatsby-core-theme/helpers/schema.js +72 -84
- package/src/gatsby-core-theme/helpers/schema.test.js +165 -0
- package/src/helpers/strings.js +1 -1
- package/src/helpers/strings.test.js +1 -1
- package/src/hooks/tabs/index.js +22 -16
- package/src/hooks/tabs/tabs.module.scss +21 -6
- package/storybook/public/152.6cc82cda.iframe.bundle.js +7 -0
- package/storybook/public/{152.9981f97c.iframe.bundle.js.LICENSE.txt → 152.6cc82cda.iframe.bundle.js.LICENSE.txt} +0 -0
- package/storybook/public/{152.9981f97c.iframe.bundle.js.map → 152.6cc82cda.iframe.bundle.js.map} +1 -1
- package/storybook/public/331.e1ec4d4f.iframe.bundle.js +1 -0
- package/storybook/public/409.d7fe6677.iframe.bundle.js +1 -0
- package/storybook/public/720.03eee3cd.iframe.bundle.js +1 -0
- package/storybook/public/iframe.html +1 -1
- package/storybook/public/main.aea3939f.iframe.bundle.js +1 -0
- package/storybook/public/{runtime~main.9b2d0881.iframe.bundle.js → runtime~main.d8ea6524.iframe.bundle.js} +1 -1
- package/storybook/public/152.9981f97c.iframe.bundle.js +0 -7
- package/storybook/public/331.d887dc00.iframe.bundle.js +0 -1
- package/storybook/public/409.a5d345d6.iframe.bundle.js +0 -1
- package/storybook/public/720.bf033bab.iframe.bundle.js +0 -1
- package/storybook/public/main.a3cba67c.iframe.bundle.js +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,82 @@
|
|
|
1
|
+
## [7.0.2](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/compare/v7.0.1...v7.0.2) (2022-05-09)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* alignment for toplist tabs ([37c0f39](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/37c0f39a5e9d35bfff0a11c94d102793cfc38de4))
|
|
7
|
+
* moved tabs aboved module-introduction and fixed layout ([480edba](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/480edbaf6e1ed588923996e099fea31484d70a8c))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Code Refactoring
|
|
11
|
+
|
|
12
|
+
* author card alignment ([c856e84](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/c856e84877e496b136fb13714c224c5f4894d3f1))
|
|
13
|
+
* theme styles to match IL ([8099473](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/80994733d4227f38f7999cea67654a70d6a783f4))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
* Merge branch 'tm-2689-include-a-paragraph-in-all-module' into 'master' ([0e3e26b](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/0e3e26b203a3b708834a5415253804c80c62f917))
|
|
17
|
+
* Merge branch 'tm-2801-fact-checker' into 'master' ([29ea252](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/29ea252b432f524a8592c339f2a870fbe483cab0))
|
|
18
|
+
|
|
19
|
+
## [7.0.1](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/compare/v7.0.0...v7.0.1) (2022-05-05)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Bug Fixes
|
|
23
|
+
|
|
24
|
+
* aded page path to toplist row ([0169dc1](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/0169dc16798874635f4cb61b708f68f2bd40b2a1))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Code Refactoring
|
|
28
|
+
|
|
29
|
+
* update nsa specific schema ([ee5bd71](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/ee5bd7134baf71dc3aba62f8c833e4dbc7007933))
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
* Merge branch 'tm-2814-toplist-extra-prop' into 'master' ([78975b6](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/78975b654605f831f78ecc0805d91a234a40a262))
|
|
33
|
+
* Merge branch 'tm-2708-update-nsa-specific-schema' into 'master' ([90821d2](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/90821d27e7d8c218bee5c590a2dc997798f7912c))
|
|
34
|
+
|
|
35
|
+
# [7.0.0](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/compare/v6.0.7...v7.0.0) (2022-05-05)
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
### Bug Fixes
|
|
39
|
+
|
|
40
|
+
* add props from image_object ([281f8cf](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/281f8cf5e71a961c0c2d44048e700980ba378a65))
|
|
41
|
+
* fix conflicts ([b516ebf](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/b516ebf750adc150a7f357e72567886f6cf151f2))
|
|
42
|
+
* launch date test ([88cf0cb](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/88cf0cb87c16480a249780ba709961182b11cb6e))
|
|
43
|
+
* rearenged logic in order for toplist's title and module introduction to appear in a correct way ([89a2c23](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/89a2c235c0b6cfef90ad7ba663b02a532b96db89))
|
|
44
|
+
* replace altText ([1f3b340](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/1f3b340bd3d21d0ed915e67237e6255c68f38d37))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
### Code Refactoring
|
|
48
|
+
|
|
49
|
+
* align spotlight links ([11ae011](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/11ae01120c99c42233a962375ab7454ecb26f654))
|
|
50
|
+
* author format change ([52ca43b](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/52ca43b06b7e5817d6bd5aa5144250b5712e16a2))
|
|
51
|
+
* correction to proptypes ([22b3bce](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/22b3bce9f02ea56fa8414061ea0e296d9dd2c1fa))
|
|
52
|
+
* disable NSA extra braedcrumb for schema ([c7476c6](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/c7476c6e6d38a024931b96d94dc67d2ffddddcc6))
|
|
53
|
+
* hide fact checker on article cards ([4487d16](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/4487d166727cf389e9a5520d4b2c578af7e54448))
|
|
54
|
+
* matrix fact checked by ([0ae7edc](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/0ae7edc29d4391ef441f99b7e722bb0b810d3b83))
|
|
55
|
+
* remove fallback for publishing principles ([58e2a37](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/58e2a377b477d03da86216b6e8be598f9145d31e))
|
|
56
|
+
* remove styles and use prop for author card fact checker ([a2910b7](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/a2910b76f4725087703cdb7e45d50c23051c6a1c))
|
|
57
|
+
* update head meta robots for archive ([8c163b9](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/8c163b9ad8ad345ce2e467d46361b5fa3af96c34))
|
|
58
|
+
* update NSA specific breadcrumb schema ([0ccd233](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/0ccd233d26acd27f5b0e6bf1457e8a8b487e6a4e))
|
|
59
|
+
* update site specific schema and update tests ([d796598](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/d796598928668f2cbdc9c1397e8f0c03139aad06))
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
### Config
|
|
63
|
+
|
|
64
|
+
* update core theme ([4849170](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/4849170f16a98dc3ba4b6b57fe23bec941d379df))
|
|
65
|
+
* updated to latest core version ([2362319](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/236231966a405123c153d1269f0e1b2bbf9ef277))
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
* Merge branch 'tm-2801-fact-checker' into 'master' ([1aa6e20](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/1aa6e2038bf610f18e5c6d6db1cb529a172a8ea1))
|
|
69
|
+
* Merge branch 'tm-2829-image-alt-text' into 'master' ([fe1faea](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/fe1faea10da44d3df6121afe2218ec112fa0f7ee))
|
|
70
|
+
* Merge branch 'tm-2708-update-site-specific-schema' into 'master' ([9292722](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/9292722a6cdd664f4d1746f8a56d33db0f681b49))
|
|
71
|
+
* Merge branch 'tm-2831-update-archive-noindex-nofollow' into 'master' ([b7fec29](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/b7fec29a39cacc39b6f1ffb02cefe3e50a5b0c9b))
|
|
72
|
+
* Merge branch 'tm-2880-spotlight-links' into 'master' ([3ba81db](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/3ba81dbf0efcd3abd63d6bdb6b40dc56f0434086))
|
|
73
|
+
* Merge branch 'master' into tm-2708-update-site-specific-schema ([4e6a2aa](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/4e6a2aa0f50d316bf54c7cc75e668ec7527f4a38))
|
|
74
|
+
* Merge branch 'master' into tm-2801-fact-checker ([5e3e762](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/5e3e76213240cf0aeef600de7a200050a6a11b7f))
|
|
75
|
+
* Merge branch 'master' into tm-2880-spotlight-links ([87d9b61](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/87d9b61689689e2231dbdaf07c8fd7c916ce9c15))
|
|
76
|
+
* Merge branch 'tm-2689-add-paragraph' into 'master' ([7db206a](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/7db206a4f4b1a67772ee425951e0c73e13037d8f))
|
|
77
|
+
* Merge branch 'master' into tm-2880-spotlight-links ([be5072f](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/be5072f72e787dbfd7ca10b3b13acb623d80e1ea))
|
|
78
|
+
* Merge branch 'master' into tm-2801-fact-checker ([09ab168](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/commit/09ab16836bc94b6565eb67481eacd7c4a2dee768))
|
|
79
|
+
|
|
1
80
|
## [6.0.7](https://git.ilcd.rocks/team-floyd/themes/matrix-theme/compare/v6.0.6...v6.0.7) (2022-04-28)
|
|
2
81
|
|
|
3
82
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gatsby-matrix-theme",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "7.0.2",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"description": "Matrix Theme NPM Package",
|
|
6
6
|
"author": "",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"react": "^17.0.2",
|
|
30
30
|
"gatsby-plugin-sitemap": "^3.3.0",
|
|
31
31
|
"react-dom": "^17.0.2",
|
|
32
|
-
"gatsby-core-theme": "^
|
|
32
|
+
"gatsby-core-theme": "^7.0.1"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@babel/core": "^7.13.1",
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
+
/* eslint-disable import/no-extraneous-dependencies */
|
|
1
2
|
/* eslint-disable camelcase */
|
|
2
3
|
import React from 'react';
|
|
3
4
|
import PropTypes from 'prop-types';
|
|
4
5
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
5
|
-
import { imagePrettyUrl } from 'gatsby-core-theme/src/helpers/getters';
|
|
6
|
+
import { imagePrettyUrl, getAltText } from 'gatsby-core-theme/src/helpers/getters';
|
|
6
7
|
import styles from './author-card.module.scss';
|
|
7
8
|
|
|
8
9
|
const AuthorCard = ({ author, width = 60, height = 60 }) => {
|
|
9
|
-
const { name, author_title, email_address, image, image_alt } = author || {};
|
|
10
|
+
const { name, author_title, email_address, image, image_alt, image_object } = author || {};
|
|
10
11
|
|
|
11
12
|
return (
|
|
12
13
|
<div className={styles.authorCard}>
|
|
13
14
|
<div className={styles.img}>
|
|
14
15
|
<LazyImage
|
|
15
16
|
src={imagePrettyUrl(image)}
|
|
16
|
-
alt={image_alt || name}
|
|
17
|
+
alt={getAltText(image_object, image_alt || name)}
|
|
17
18
|
width={width}
|
|
18
19
|
height={height}
|
|
19
20
|
/>
|
|
@@ -1,16 +1,18 @@
|
|
|
1
|
+
/* eslint-disable import/no-extraneous-dependencies */
|
|
1
2
|
/* eslint-disable camelcase */
|
|
2
3
|
import React from 'react';
|
|
3
4
|
import PropTypes from 'prop-types';
|
|
4
5
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
5
|
-
|
|
6
|
+
import { getAltText } from 'gatsby-core-theme/src/helpers/getters';
|
|
6
7
|
import styles from './author-card.module.scss';
|
|
7
8
|
|
|
8
9
|
const AuthorCard = ({ item, width, height }) => {
|
|
9
|
-
const { name, position, email, image } = item;
|
|
10
|
+
const { name, position, email, image, image_object } = item;
|
|
11
|
+
|
|
10
12
|
return (
|
|
11
13
|
<div className={styles.authorCard}>
|
|
12
14
|
<div className={styles.img}>
|
|
13
|
-
<LazyImage width={width} height={height} src={image} alt={name} />
|
|
15
|
+
<LazyImage width={width} height={height} src={image} alt={getAltText(image_object, name)} />
|
|
14
16
|
</div>
|
|
15
17
|
<div className={styles.txt}>
|
|
16
18
|
<div className={styles.name}>{name}</div>
|
|
@@ -34,6 +36,9 @@ AuthorCard.propTypes = {
|
|
|
34
36
|
position: PropTypes.string,
|
|
35
37
|
email: PropTypes.string,
|
|
36
38
|
image: PropTypes.string,
|
|
39
|
+
image_object: PropTypes.shape({
|
|
40
|
+
alt: PropTypes.string,
|
|
41
|
+
}),
|
|
37
42
|
}).isRequired,
|
|
38
43
|
width: PropTypes.number,
|
|
39
44
|
height: PropTypes.number,
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
imagePrettyUrl,
|
|
10
10
|
getSectionExtraField,
|
|
11
11
|
translate,
|
|
12
|
+
getAltText,
|
|
12
13
|
} from 'gatsby-core-theme/src/helpers/getters';
|
|
13
14
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
14
15
|
import { Context } from 'gatsby-core-theme/src/context/TranslationsProvider';
|
|
@@ -27,6 +28,8 @@ const GameCard = ({
|
|
|
27
28
|
const cardBackgroundImage = getSectionExtraField(null, item, 'card_background_image');
|
|
28
29
|
const featured = !!cardBackgroundImage;
|
|
29
30
|
const { translations } = useContext(Context) || {};
|
|
31
|
+
|
|
32
|
+
const logUrlObject = relation?.thumbnail_filename_object;
|
|
30
33
|
const StarRating = useOneStarRating
|
|
31
34
|
? loadable(() => import('gatsby-core-theme/src/components/molecules/star-rating/one-star'))
|
|
32
35
|
: loadable(() => import('gatsby-core-theme/src/components/molecules/star-rating'));
|
|
@@ -44,7 +47,7 @@ const GameCard = ({
|
|
|
44
47
|
width={width}
|
|
45
48
|
height={height}
|
|
46
49
|
src={imagePrettyUrl(banner, width, height)}
|
|
47
|
-
alt={title}
|
|
50
|
+
alt={getAltText(logUrlObject, title)}
|
|
48
51
|
/>
|
|
49
52
|
) : (
|
|
50
53
|
<GatsbyImg filename="default-slot.jpg" alt={title} />
|
|
@@ -92,6 +95,9 @@ GameCard.propTypes = {
|
|
|
92
95
|
third_rating: PropTypes.string,
|
|
93
96
|
fourth_rating: PropTypes.string,
|
|
94
97
|
game_provider: PropTypes.shape({ name: PropTypes.string }),
|
|
98
|
+
thumbnail_filename_object: PropTypes.shape({
|
|
99
|
+
alt: PropTypes.string,
|
|
100
|
+
}),
|
|
95
101
|
}),
|
|
96
102
|
title: PropTypes.string,
|
|
97
103
|
path: PropTypes.string,
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import React, { useContext } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import loadable from '@loadable/component';
|
|
6
|
-
import { imagePrettyUrl, translate } from 'gatsby-core-theme/src/helpers/getters';
|
|
6
|
+
import { getAltText, imagePrettyUrl, translate } from 'gatsby-core-theme/src/helpers/getters';
|
|
7
7
|
import Link from 'gatsby-core-theme/src/hooks/link';
|
|
8
8
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
9
9
|
import Bonus from 'gatsby-core-theme/src/components/atoms/bonus';
|
|
@@ -26,6 +26,7 @@ const OperatorCard = ({
|
|
|
26
26
|
const status = relation?.status;
|
|
27
27
|
const isInactive = status === 'inactive';
|
|
28
28
|
const backgroundImage = number === 1 ? 'featuredCasino' : null;
|
|
29
|
+
const logUrlObject = relation?.logo_url_object;
|
|
29
30
|
const { translations } = useContext(Context) || {};
|
|
30
31
|
const StarRating = useOneStarRating
|
|
31
32
|
? loadable(() => import('gatsby-core-theme/src/components/molecules/star-rating/one-star'))
|
|
@@ -46,8 +47,8 @@ const OperatorCard = ({
|
|
|
46
47
|
<LazyImage
|
|
47
48
|
width={width}
|
|
48
49
|
height={height}
|
|
49
|
-
src={imagePrettyUrl(relation
|
|
50
|
-
alt={relation.name}
|
|
50
|
+
src={imagePrettyUrl(relation?.logo_url_object?.filename)}
|
|
51
|
+
alt={getAltText(logUrlObject, relation.name)}
|
|
51
52
|
/>
|
|
52
53
|
</Link>
|
|
53
54
|
<StarRating numOfStars={5} halfStars={false} rating={relation.rating} />
|
|
@@ -103,6 +104,10 @@ OperatorCard.propTypes = {
|
|
|
103
104
|
terms_and_conditions_text_enabled: PropTypes.string,
|
|
104
105
|
}),
|
|
105
106
|
status: PropTypes.string,
|
|
107
|
+
logo_url_object: PropTypes.shape({
|
|
108
|
+
alt: PropTypes.string,
|
|
109
|
+
filename: PropTypes.string,
|
|
110
|
+
}),
|
|
106
111
|
}),
|
|
107
112
|
path: PropTypes.string,
|
|
108
113
|
}).isRequired,
|
|
@@ -2,7 +2,12 @@ import React, { useContext } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import Link from 'gatsby-core-theme/src/hooks/link';
|
|
4
4
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
getAltText,
|
|
7
|
+
imagePrettyUrl,
|
|
8
|
+
textWordsLimit,
|
|
9
|
+
translate,
|
|
10
|
+
} from 'gatsby-core-theme/src/helpers/getters';
|
|
6
11
|
import Button from 'gatsby-core-theme/src/components/atoms/button';
|
|
7
12
|
import { Context } from 'gatsby-core-theme/src/context/TranslationsProvider';
|
|
8
13
|
|
|
@@ -11,6 +16,7 @@ import styles from './payment-method-card.module.scss';
|
|
|
11
16
|
|
|
12
17
|
const PaymentMethodCard = ({ item, showTitle = true, showDesc = true, width, height }) => {
|
|
13
18
|
const { title, path, relation, sections } = item;
|
|
19
|
+
const logUrlObject = relation?.logo_object;
|
|
14
20
|
const { translations } = useContext(Context) || {};
|
|
15
21
|
|
|
16
22
|
return (
|
|
@@ -27,7 +33,7 @@ const PaymentMethodCard = ({ item, showTitle = true, showDesc = true, width, hei
|
|
|
27
33
|
height={height}
|
|
28
34
|
className={styles.logo}
|
|
29
35
|
src={imagePrettyUrl(relation?.logo)}
|
|
30
|
-
alt={title}
|
|
36
|
+
alt={getAltText(logUrlObject, title)}
|
|
31
37
|
/>
|
|
32
38
|
</Link>
|
|
33
39
|
{showTitle && (
|
|
@@ -64,6 +70,9 @@ PaymentMethodCard.propTypes = {
|
|
|
64
70
|
relation: PropTypes.shape({
|
|
65
71
|
games_count: PropTypes.number,
|
|
66
72
|
logo: PropTypes.string,
|
|
73
|
+
logo_object: PropTypes.shape({
|
|
74
|
+
alt: PropTypes.string,
|
|
75
|
+
}),
|
|
67
76
|
}),
|
|
68
77
|
sections: PropTypes.shape({
|
|
69
78
|
header: PropTypes.shape({
|
|
@@ -2,7 +2,7 @@ import React, { useContext } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { Context } from 'gatsby-core-theme/src/context/TranslationsProvider';
|
|
4
4
|
import OperatorCta from 'gatsby-core-theme/src/components/atoms/operator-cta';
|
|
5
|
-
import { imagePrettyUrl, translate } from 'gatsby-core-theme/src/helpers/getters';
|
|
5
|
+
import { getAltText, imagePrettyUrl, translate } from 'gatsby-core-theme/src/helpers/getters';
|
|
6
6
|
import Tnc from 'gatsby-core-theme/src/components/molecules/tnc';
|
|
7
7
|
import StarRating from 'gatsby-core-theme/src/components/molecules/star-rating';
|
|
8
8
|
import LazyImage from '~hooks/lazy-image';
|
|
@@ -27,11 +27,17 @@ const PopupCard = ({
|
|
|
27
27
|
oneLiner,
|
|
28
28
|
secondLiner,
|
|
29
29
|
];
|
|
30
|
+
const logUrlObject = item?.logo_url_object;
|
|
30
31
|
|
|
31
32
|
return (
|
|
32
33
|
<div className={styles.popupCard}>
|
|
33
34
|
<div className={styles.imgContainer}>
|
|
34
|
-
<LazyImage
|
|
35
|
+
<LazyImage
|
|
36
|
+
src={imagePrettyUrl(logoUrl)}
|
|
37
|
+
alt={getAltText(logUrlObject, oneLiner)}
|
|
38
|
+
width={98}
|
|
39
|
+
height={98}
|
|
40
|
+
/>
|
|
35
41
|
{showRating && <StarRating numOfStars={5} rating={item?.rating} />}
|
|
36
42
|
{showName && <p className={styles.name}>{name}</p>}
|
|
37
43
|
</div>
|
|
@@ -71,6 +77,9 @@ PopupCard.propTypes = {
|
|
|
71
77
|
}),
|
|
72
78
|
review_link: PropTypes.string,
|
|
73
79
|
rating: PropTypes.string,
|
|
80
|
+
logo_url_object: PropTypes.shape({
|
|
81
|
+
alt: PropTypes.string,
|
|
82
|
+
}),
|
|
74
83
|
extra_fields: PropTypes.shape({
|
|
75
84
|
terms_and_conditions_text_enabled: PropTypes.string,
|
|
76
85
|
}),
|
|
@@ -2,7 +2,12 @@ import React, { useContext } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import Link from 'gatsby-core-theme/src/hooks/link';
|
|
4
4
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
getAltText,
|
|
7
|
+
imagePrettyUrl,
|
|
8
|
+
textWordsLimit,
|
|
9
|
+
translate,
|
|
10
|
+
} from 'gatsby-core-theme/src/helpers/getters';
|
|
6
11
|
import Button from 'gatsby-core-theme/src/components/atoms/button';
|
|
7
12
|
import { Context } from 'gatsby-core-theme/src/context/TranslationsProvider';
|
|
8
13
|
|
|
@@ -23,6 +28,7 @@ const SoftwareProviderCard = ({
|
|
|
23
28
|
}) => {
|
|
24
29
|
const { title, path, relation, sections } = item;
|
|
25
30
|
const { translations } = useContext(Context) || {};
|
|
31
|
+
const logUrlObject = relation?.logo_object;
|
|
26
32
|
|
|
27
33
|
return (
|
|
28
34
|
<BaseCard item={item} cardType="software_provider">
|
|
@@ -38,7 +44,7 @@ const SoftwareProviderCard = ({
|
|
|
38
44
|
height={height}
|
|
39
45
|
className={styles.logo}
|
|
40
46
|
src={imagePrettyUrl(relation?.logo)}
|
|
41
|
-
alt={title}
|
|
47
|
+
alt={getAltText(logUrlObject, title)}
|
|
42
48
|
/>
|
|
43
49
|
</Link>
|
|
44
50
|
{showTitle && (
|
|
@@ -87,6 +93,7 @@ SoftwareProviderCard.propTypes = {
|
|
|
87
93
|
relation: PropTypes.shape({
|
|
88
94
|
games_count: PropTypes.number,
|
|
89
95
|
logo: PropTypes.string,
|
|
96
|
+
logo_object: PropTypes.shape({}),
|
|
90
97
|
}),
|
|
91
98
|
sections: PropTypes.shape({
|
|
92
99
|
header: PropTypes.shape({
|
|
@@ -4,7 +4,7 @@ import PropTypes from 'prop-types';
|
|
|
4
4
|
import parse from 'html-react-parser';
|
|
5
5
|
|
|
6
6
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
7
|
-
import { imagePrettyUrl } from 'gatsby-core-theme/src/helpers/getters';
|
|
7
|
+
import { imagePrettyUrl, getAltText } from 'gatsby-core-theme/src/helpers/getters';
|
|
8
8
|
import styles from './screenshot-slide.module.scss';
|
|
9
9
|
|
|
10
10
|
const Slide = ({ item = {}, slideTitle = '' }) => (
|
|
@@ -15,7 +15,7 @@ const Slide = ({ item = {}, slideTitle = '' }) => (
|
|
|
15
15
|
height={item?.image_object?.height}
|
|
16
16
|
className={styles.image}
|
|
17
17
|
src={imagePrettyUrl(item.image)}
|
|
18
|
-
alt={item.title || slideTitle}
|
|
18
|
+
alt={getAltText(item?.image_object, item.title || slideTitle)}
|
|
19
19
|
/>
|
|
20
20
|
)}
|
|
21
21
|
{item.content && <p className={styles.content}>{parse(item.content)}</p>}
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
imagePrettyUrl,
|
|
8
8
|
translate,
|
|
9
9
|
getBonus,
|
|
10
|
+
getAltText,
|
|
10
11
|
} from 'gatsby-core-theme/src/helpers/getters';
|
|
11
12
|
import LazyImage from 'gatsby-core-theme/src/hooks/lazy-image';
|
|
12
13
|
import { Context } from 'gatsby-core-theme/src/context/TranslationsProvider';
|
|
@@ -22,7 +23,7 @@ const Index = ({ page }) => {
|
|
|
22
23
|
const prettyLink = prettyTracker(operator);
|
|
23
24
|
let playNow = translate(translations, 'play_now', 'Play now');
|
|
24
25
|
const bonus = getBonus('main', operator);
|
|
25
|
-
|
|
26
|
+
const logUrlObject = operator?.logo_url_object;
|
|
26
27
|
if (isMobile) {
|
|
27
28
|
playNow = `> ${translate(translations, 'play_for_real_at', 'Play for real at')} @ ${
|
|
28
29
|
operator.name
|
|
@@ -45,7 +46,7 @@ const Index = ({ page }) => {
|
|
|
45
46
|
<LazyImage
|
|
46
47
|
width={120}
|
|
47
48
|
height={50}
|
|
48
|
-
alt={operator?.name}
|
|
49
|
+
alt={getAltText(logUrlObject, operator?.name)}
|
|
49
50
|
src={imagePrettyUrl(logo_url, 120, 50)}
|
|
50
51
|
/>
|
|
51
52
|
</a>
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
imagePrettyUrl,
|
|
8
8
|
getExtraField,
|
|
9
9
|
translate,
|
|
10
|
+
getAltText,
|
|
10
11
|
} from 'gatsby-core-theme/src/helpers/getters';
|
|
11
12
|
import Link from 'gatsby-core-theme/src/hooks/link';
|
|
12
13
|
import Label from 'gatsby-core-theme/src/components/atoms/label';
|
|
@@ -45,6 +46,7 @@ export default function Row({
|
|
|
45
46
|
const trackerType = tracker.toLowerCase().replace(' ', '_');
|
|
46
47
|
const prettyLink = prettyTracker(item, trackerType);
|
|
47
48
|
const launchDate = getLaunchDate(item.founded);
|
|
49
|
+
const logUrlObject = item?.logo_url_object;
|
|
48
50
|
|
|
49
51
|
return (
|
|
50
52
|
<div className={`${styles.row} ${layout === 'grid' ? styles.grid : ''}`}>
|
|
@@ -77,7 +79,7 @@ export default function Row({
|
|
|
77
79
|
className="toplist-variant-one-gtm logo-cta"
|
|
78
80
|
>
|
|
79
81
|
<LazyImage
|
|
80
|
-
alt={itemName}
|
|
82
|
+
alt={getAltText(logUrlObject, itemName)}
|
|
81
83
|
width={128}
|
|
82
84
|
height={40}
|
|
83
85
|
src={imagePrettyUrl(logoUrl, 128, 60)}
|
|
@@ -148,6 +150,7 @@ Row.propTypes = {
|
|
|
148
150
|
name: PropTypes.string,
|
|
149
151
|
logo_url: PropTypes.string,
|
|
150
152
|
rating: PropTypes.string,
|
|
153
|
+
logo_url_object: PropTypes.shape({}),
|
|
151
154
|
selling_points: PropTypes.arrayOf(PropTypes.string),
|
|
152
155
|
review_link: PropTypes.string,
|
|
153
156
|
one_liners: PropTypes.shape({
|
|
@@ -1,13 +1,25 @@
|
|
|
1
1
|
.authorWraper {
|
|
2
|
-
display:
|
|
3
|
-
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-wrap: wrap;
|
|
4
4
|
align-items: center;
|
|
5
|
+
justify-content: flex-end;
|
|
5
6
|
font-size: var(--author-text-fontSize);
|
|
6
7
|
color: var(--author-primary-text-color);
|
|
8
|
+
max-width: 370px;
|
|
9
|
+
column-gap: 0.5rem;
|
|
10
|
+
|
|
11
|
+
> div {
|
|
12
|
+
display: flex;
|
|
13
|
+
justify-content: flex-end;
|
|
14
|
+
}
|
|
15
|
+
|
|
7
16
|
.infoContainer {
|
|
8
17
|
display: flex;
|
|
9
18
|
align-items: center;
|
|
10
19
|
white-space: nowrap;
|
|
20
|
+
order: 1;
|
|
21
|
+
flex: 1 1 auto;
|
|
22
|
+
|
|
11
23
|
.prefixStyle {
|
|
12
24
|
margin: 0px;
|
|
13
25
|
}
|
|
@@ -34,21 +46,64 @@
|
|
|
34
46
|
padding: 0px 2px;
|
|
35
47
|
}
|
|
36
48
|
}
|
|
49
|
+
|
|
50
|
+
@include max(mobile) {
|
|
51
|
+
justify-content: flex-start;
|
|
52
|
+
}
|
|
37
53
|
}
|
|
38
54
|
.dateTimeWrapper {
|
|
39
55
|
display: flex;
|
|
40
56
|
align-items: center;
|
|
41
57
|
white-space: nowrap;
|
|
58
|
+
order: 4;
|
|
59
|
+
flex: 0 0 auto;
|
|
60
|
+
gap: 0.5rem;
|
|
61
|
+
|
|
42
62
|
.readingWithBorder {
|
|
43
63
|
&:before {
|
|
44
64
|
content: '|';
|
|
45
65
|
padding: 0px 3px;
|
|
46
66
|
}
|
|
47
67
|
}
|
|
68
|
+
|
|
69
|
+
@include max(mobile){
|
|
70
|
+
order: 2;
|
|
71
|
+
|
|
72
|
+
span {
|
|
73
|
+
display: none;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.readingWithBorder {
|
|
79
|
+
order: 2;
|
|
80
|
+
flex: 0 0 auto;
|
|
81
|
+
gap: 0.5rem;
|
|
82
|
+
|
|
83
|
+
@include max(mobile){
|
|
84
|
+
order: 4;
|
|
85
|
+
}
|
|
48
86
|
}
|
|
49
87
|
|
|
50
|
-
|
|
51
|
-
|
|
88
|
+
.reviewer {
|
|
89
|
+
order: 3;
|
|
90
|
+
flex: 1 1 auto;
|
|
91
|
+
gap: 0.5rem;
|
|
92
|
+
|
|
93
|
+
> a {
|
|
94
|
+
color: var(--author-link-text-color);
|
|
95
|
+
font-weight: var(--author-fontweight);
|
|
96
|
+
text-decoration: underline;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@include max(mobile) {
|
|
100
|
+
justify-content: flex-start;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
@include max(mobile) {
|
|
105
|
+
max-width: 100%;
|
|
106
|
+
margin: 0.8rem 0 0.2rem;
|
|
52
107
|
}
|
|
53
108
|
}
|
|
54
109
|
|
|
@@ -58,6 +113,10 @@
|
|
|
58
113
|
justify-content: space-between;
|
|
59
114
|
color: var( --author-card-text-color);
|
|
60
115
|
|
|
116
|
+
.infoContainer {
|
|
117
|
+
justify-content: flex-start;
|
|
118
|
+
}
|
|
119
|
+
|
|
61
120
|
@include min(tablet){
|
|
62
121
|
display: flex;
|
|
63
122
|
justify-content: space-between;
|
|
@@ -22,6 +22,7 @@ const Author = ({
|
|
|
22
22
|
splitDateFormat = '.',
|
|
23
23
|
dateFormat = 'DD.MM.YYYY',
|
|
24
24
|
isCardsAuthor = false,
|
|
25
|
+
reviewer = {},
|
|
25
26
|
}) => {
|
|
26
27
|
const { translations } = useContext(Context) || {};
|
|
27
28
|
const prefixstyle = !link || !authorImg;
|
|
@@ -34,7 +35,7 @@ const Author = ({
|
|
|
34
35
|
<div className={`${styles.authorWraper} ${isCardsAuthor && styles.authorCard} `}>
|
|
35
36
|
<div className={`${styles.infoContainer} ${isCardsAuthor && styles.infoCardContainer}`}>
|
|
36
37
|
<p className={`${styles.prefixStyle} ${prefixstyle && styles.prefixCardText}`}>
|
|
37
|
-
{prefix || getPrefixBasedOnPage}
|
|
38
|
+
<span>{prefix || getPrefixBasedOnPage}</span>
|
|
38
39
|
</p>
|
|
39
40
|
<Link to={link} title={name}>
|
|
40
41
|
{name}
|
|
@@ -50,18 +51,28 @@ const Author = ({
|
|
|
50
51
|
/>
|
|
51
52
|
)}
|
|
52
53
|
</div>
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
54
|
+
{reviewer.name && !isCardsAuthor && (
|
|
55
|
+
<div className={date && styles.reviewer}>
|
|
56
|
+
<span>{`${translate(translations, 'fact_checked_by', 'Fact checked by')}`}</span>
|
|
57
|
+
{` `}
|
|
58
|
+
<Link to={reviewer.profile_page_path} title={reviewer.name}>
|
|
59
|
+
{reviewer.name}
|
|
60
|
+
</Link>
|
|
61
|
+
</div>
|
|
62
|
+
)}
|
|
63
|
+
{date && (
|
|
64
|
+
<div className={styles.dateTimeWrapper}>
|
|
65
|
+
{!isCardsAuthor && <span>{translate(translations, 'published_on', 'Published on')}</span>}
|
|
66
|
+
{` `}
|
|
67
|
+
{formatDate(date, dateFormat, splitDateFormat, 'en-GB')}
|
|
68
|
+
</div>
|
|
69
|
+
)}
|
|
70
|
+
{readingTime && !isCardsAuthor && (
|
|
71
|
+
<div className={date && styles.readingWithBorder}>
|
|
72
|
+
<span>{translate(translations, 'reading_time', 'Reading time')}</span>
|
|
73
|
+
{` ${readingTime} ${translate(translations, 'minutes', 'min')}`}
|
|
74
|
+
</div>
|
|
75
|
+
)}
|
|
65
76
|
</div>
|
|
66
77
|
);
|
|
67
78
|
};
|
|
@@ -78,6 +89,7 @@ Author.propTypes = {
|
|
|
78
89
|
icon: PropTypes.string,
|
|
79
90
|
splitDateFormat: PropTypes.string,
|
|
80
91
|
isCardsAuthor: PropTypes.bool,
|
|
92
|
+
reviewer: PropTypes.shape({}),
|
|
81
93
|
};
|
|
82
94
|
|
|
83
95
|
export default Author;
|
|
@@ -120,7 +120,7 @@ const Modules = ({ module, page, pageContext }) => {
|
|
|
120
120
|
} ${styles.module} ${module?.style && styles[module.style]} module`}
|
|
121
121
|
>
|
|
122
122
|
{module.name !== 'top_list' && <ModuleTitle module={module} />}
|
|
123
|
-
{module.module_introduction && (
|
|
123
|
+
{module.name !== 'top_list' && module.module_introduction && (
|
|
124
124
|
// eslint-disable-next-line react/no-danger
|
|
125
125
|
<div dangerouslySetInnerHTML={{ __html: module?.module_introduction }} />
|
|
126
126
|
)}
|
|
@@ -57,10 +57,7 @@ const Head = ({ page = {}, siteInfo }) => {
|
|
|
57
57
|
{page.meta_robots && process.env.GATSBY_ACTIVE_ENV !== 'development' && (
|
|
58
58
|
<meta name="robots" content={page.meta_robots.join()} />
|
|
59
59
|
)}
|
|
60
|
-
{page.robot_options &&
|
|
61
|
-
<meta name="robots" content={getRobotOptions(page.robot_options)} />
|
|
62
|
-
)}
|
|
63
|
-
{page.path.includes('/page/') && <meta name="robots" content="noindex,follow" />}
|
|
60
|
+
{page.robot_options && <meta name="robots" content={getRobotOptions(page.robot_options)} />}
|
|
64
61
|
{process.env.GATSBY_ACTIVE_ENV === 'development' && (
|
|
65
62
|
<meta name="googlebot" content="noindex,follow" />
|
|
66
63
|
)}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
/* eslint-disable react/forbid-prop-types */
|
|
1
2
|
import React from 'react';
|
|
3
|
+
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
2
4
|
import PropTypes from 'prop-types';
|
|
3
5
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
4
6
|
import keygen from '~helpers/keygen';
|
|
@@ -16,6 +18,7 @@ const TopList = ({ module, toplistHeading, CustomRow, page }) => {
|
|
|
16
18
|
<div label={toplist.title} key={keygen()}>
|
|
17
19
|
{toplistHeading}
|
|
18
20
|
<List
|
|
21
|
+
pagePath={page.path}
|
|
19
22
|
toplist={toplist}
|
|
20
23
|
CustomRow={Row}
|
|
21
24
|
hasLoadMoreButton={toplist.show_load_more}
|
|
@@ -37,7 +40,7 @@ TopList.propTypes = {
|
|
|
37
40
|
}),
|
|
38
41
|
toplistHeading: PropTypes.element,
|
|
39
42
|
CustomRow: PropTypes.func,
|
|
40
|
-
page: PropTypes.shape({ template: PropTypes.string }),
|
|
43
|
+
page: PropTypes.shape({ template: PropTypes.string, path: PropTypes.string }),
|
|
41
44
|
};
|
|
42
45
|
|
|
43
46
|
export default TopList;
|