gatsby-core-theme 30.0.80 → 30.0.82

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 CHANGED
@@ -1,3 +1,23 @@
1
+ ## [30.0.82](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v30.0.81...v30.0.82) (2024-02-20)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * added helpline extra field check in footer to overwrite ([a2408fe](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/a2408fee5025db856d7364294ea0985293d6be75))
7
+ * added helpline extra field check in footer to overwrite ([75062aa](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/75062aab2aaa787a23a684e4970691cfee912ab9))
8
+ * fixed failing tests ([59fb818](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/59fb8182dd392759ea56b696f2feee92cdf016e5))
9
+ * fixed failing tests ([abdb71e](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/abdb71ee0fb4ec439b51ffecc05b7de856ee94c8))
10
+
11
+
12
+ * Merge branch 'tm-4047-market-helpline' into 'master' ([d474a66](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/d474a6619d7413d52ce4bcf2e50f6f5fda8fe276))
13
+
14
+ ## [30.0.81](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v30.0.80...v30.0.81) (2024-02-16)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * tracker api params cleanup nulls ([46d3380](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/46d3380e2fd4a62306471e587b166fcc5573e8ce))
20
+
1
21
  ## [30.0.80](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v30.0.79...v30.0.80) (2024-02-15)
2
22
 
3
23
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gatsby-core-theme",
3
- "version": "30.0.80",
3
+ "version": "30.0.82",
4
4
  "description": "Gatsby Theme NPM Package",
5
5
  "author": "",
6
6
  "license": "ISC",
@@ -0,0 +1,78 @@
1
+
2
+ .asSeenOn {
3
+ background: var(--footer-asSeenOn-background-color);
4
+ border-bottom: var(--footer-asSeenOn-border);
5
+ @include flex-align(flex-start, center);
6
+ flex-direction: column;
7
+ gap: 1.6rem;
8
+ padding: 3.2rem 1.6rem;
9
+
10
+ @include min(tablet) {
11
+ @include flex-align(center, center);
12
+ padding: 48px 0px;
13
+ }
14
+
15
+ > span,
16
+ > ul {
17
+ @include min(tablet) {
18
+ margin: 0 auto;
19
+ max-width: calc(var(--main-container-max) + var(--side-container));
20
+ }
21
+ }
22
+
23
+ > span {
24
+ font-size: var(--h5-size);
25
+ margin-top: 0;
26
+ font-weight: 700;
27
+ margin-bottom: 0;
28
+ color: var(--footer-asSeenOn-text-color, var(--color-49));
29
+ }
30
+
31
+ > ul {
32
+ @include flex-align(flex-start, flex-start);
33
+ flex-wrap: wrap;
34
+
35
+ li {
36
+ padding-right: 1rem;
37
+ padding-bottom: 1rem;
38
+
39
+ @include min(tablet) {
40
+ padding-bottom: 2rem;
41
+ padding-right: 2.5rem;
42
+ }
43
+
44
+ @include min(laptop) {
45
+ padding-bottom: 0;
46
+ }
47
+
48
+ img {
49
+ max-width: 9.5rem;
50
+
51
+ @include min(tablet) {
52
+ max-width: 13rem;
53
+ }
54
+ }
55
+ }
56
+
57
+ @include min(tablet) {
58
+ @include flex-align(center, center);
59
+ }
60
+ }
61
+ }
62
+
63
+ .templateTwo {
64
+ border: none;
65
+ @include flex-align(flex-start, flex-start);
66
+ padding: 0;
67
+
68
+ > span,
69
+ > ul {
70
+ margin: 0;
71
+ }
72
+
73
+ > ul {
74
+ @include min(tablet) {
75
+ @include flex-align(flex-start, flex-start);
76
+ }
77
+ }
78
+ }
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import LinkList from '../../../molecules/link-list';
4
+ import styles from './as-seen-on.module.scss';
5
+
6
+ const AsSeenOn = ({ asSeenOn, template }) => (
7
+ <div
8
+ className={`${styles?.asSeenOn || ''} ${
9
+ template && styles[template] ? styles[template] || '' : ''
10
+ }`}
11
+ >
12
+ <span>As Seen On:</span>
13
+ <LinkList
14
+ showListTitle={false}
15
+ imageOnly
16
+ singleList
17
+ lists={asSeenOn}
18
+ width={130}
19
+ height={140}
20
+ gtmClass="mobile-menu-gtm logo-cta"
21
+ />
22
+ </div>
23
+ );
24
+
25
+ export default AsSeenOn;
26
+
27
+ AsSeenOn.propTypes = {
28
+ asSeenOn: PropTypes.shape({}),
29
+ template: PropTypes.string,
30
+ };
@@ -0,0 +1,72 @@
1
+ .footerHotline {
2
+ @include flex-direction(row);
3
+ padding-bottom: 2rem;
4
+
5
+ > div {
6
+ flex-grow: 3;
7
+ flex-basis: 0;
8
+ }
9
+ }
10
+
11
+ .helpContainer {
12
+ color: var(--footer-text-color, var(--color-49));
13
+ font-weight: var(--footer-helpline-font-weight, 900);
14
+ @include flex-align(center, center);
15
+ flex-direction: column;
16
+
17
+ > p {
18
+ text-align: center;
19
+
20
+ > a {
21
+ text-decoration: underline;
22
+ }
23
+ }
24
+ }
25
+
26
+ .helpText {
27
+ text-align: center;
28
+
29
+ a {
30
+ color: var(--footer-text-color, var(--color-49));
31
+ text-decoration: underline;
32
+ }
33
+ }
34
+
35
+ .phoneNum {
36
+ @include text-background(var(--footer-helpline-background-color), var(--footer-helpline-text-color));
37
+ padding: 0.5rem 2rem;
38
+ width: auto;
39
+ margin: 2rem auto;
40
+
41
+ svg {
42
+ margin-right: 0.5rem;
43
+ color: var(--footer-helpline-icon-color, var(--color-32));
44
+ }
45
+ }
46
+
47
+ .templateTwo {
48
+ @include flex-direction(column);
49
+ padding-bottom: 5rem;
50
+ }
51
+
52
+ .hasAsSeenOn {
53
+ @include min(tablet) {
54
+ .helpText {
55
+ text-align: left;
56
+ }
57
+ }
58
+
59
+ @include min(laptop) {
60
+ @include flex-direction(row);
61
+ justify-content: space-between;
62
+
63
+ > div {
64
+ flex: 0 1 491px;
65
+ @include flex-align(flex-start, flex-start);
66
+ }
67
+
68
+ .phoneNum {
69
+ margin-left: 0;
70
+ }
71
+ }
72
+ }
@@ -0,0 +1,42 @@
1
+ /* eslint-disable import/no-extraneous-dependencies */
2
+ import React from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import loadable from '@loadable/component';
5
+ import { MdPhoneInTalk } from '@react-icons/all-files/md/MdPhoneInTalk';
6
+ import styles from './hotline.module.scss';
7
+
8
+ const FooterHotline = ({ showAsSeen = false, asSeenOn, helpText, phoneNum, template }) => {
9
+ const AsSeenOn = showAsSeen ? loadable(() => import('../as-seen-on')) : null;
10
+ return (
11
+ <div
12
+ className={`${styles?.footerHotline || ''} ${
13
+ styles[template] ? styles[template] || '' : ''
14
+ } ${showAsSeen && styles.hasAsSeenOn ? styles.hasAsSeenOn || '' : ''}`}
15
+ >
16
+ <div className={styles.helpContainer}>
17
+ <div
18
+ className={styles.helpText}
19
+ // eslint-disable-next-line react/no-danger
20
+ dangerouslySetInnerHTML={{
21
+ __html: helpText,
22
+ }}
23
+ />
24
+ <div className={styles.phoneNum}>
25
+ <MdPhoneInTalk title="Phone Icon" />
26
+ {phoneNum}
27
+ </div>
28
+ </div>
29
+ {showAsSeen && AsSeenOn && <AsSeenOn asSeenOn={asSeenOn} template={template} />}
30
+ </div>
31
+ );
32
+ };
33
+
34
+ FooterHotline.propTypes = {
35
+ showAsSeen: PropTypes.bool,
36
+ asSeenOn: PropTypes.shape({}),
37
+ helpText: PropTypes.string,
38
+ phoneNum: PropTypes.string,
39
+ template: PropTypes.string,
40
+ };
41
+
42
+ export default FooterHotline;
@@ -0,0 +1,69 @@
1
+ /* eslint-disable react/no-danger */
2
+ import React, { useContext } from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import { translate } from '../../../../helpers/getters';
5
+ import LazyImage from '../../../../hooks/lazy-image';
6
+ import LinkList from '../../../molecules/link-list';
7
+ import { Context } from '../../../../context/MainProvider';
8
+ import styles from './license.module.scss';
9
+
10
+ const FooterLicense = ({
11
+ gamblingText,
12
+ socialIcons,
13
+ template,
14
+ logo,
15
+ securityIcon,
16
+ imgWidth,
17
+ imgHeight,
18
+ }) => {
19
+ const { translations } = useContext(Context) || {};
20
+
21
+ return (
22
+ <div className={`${styles?.license || ''} ${styles[template] ? styles[template] || '' : ''}`}>
23
+ <div className={styles.logo}>
24
+ <LazyImage
25
+ alt="Site footer logo"
26
+ width={imgWidth || 182}
27
+ height={imgHeight || 48}
28
+ src={logo}
29
+ />
30
+ </div>
31
+ <div className={styles?.security || ''}>
32
+ <LazyImage alt="Security icon" width="26" height="20" src={securityIcon} />
33
+ <span className={styles?.securityText || ''}>
34
+ {translate(translations, 'licensed_casinos', 'We only list licensed casinos')}
35
+ </span>
36
+ </div>
37
+ {socialIcons && (
38
+ <div className={styles?.socialIcons || ''}>
39
+ <LinkList
40
+ width={40}
41
+ height={40}
42
+ singleList
43
+ imageOnly
44
+ lists={socialIcons}
45
+ gtmClass="mobile-menu-gtm logo-cta"
46
+ />
47
+ </div>
48
+ )}
49
+ {template !== 'templateOne' && gamblingText && (
50
+ <div
51
+ className={styles?.gamblingText || ''}
52
+ dangerouslySetInnerHTML={{ __html: gamblingText }}
53
+ />
54
+ )}
55
+ </div>
56
+ );
57
+ };
58
+
59
+ FooterLicense.propTypes = {
60
+ gamblingText: PropTypes.string,
61
+ socialIcons: PropTypes.shape({}),
62
+ template: PropTypes.string,
63
+ logo: PropTypes.string,
64
+ securityIcon: PropTypes.string,
65
+ imgWidth: PropTypes.number,
66
+ imgHeight: PropTypes.number,
67
+ };
68
+
69
+ export default FooterLicense;
@@ -0,0 +1,151 @@
1
+ .license {
2
+ @include flex-align(center, space-between);
3
+ flex-direction: column;
4
+ flex-basis: 0;
5
+ flex-grow: 2.7;
6
+ padding-bottom: 4rem;
7
+ gap: 3.2rem;
8
+
9
+ > p {
10
+ text-align: left;
11
+ color: var(--footer-text-color, #f4f3f9);
12
+ margin: 0 auto;
13
+ padding: 2rem 0;
14
+
15
+ @include min(tablet) {
16
+ padding: 1rem 0;
17
+ margin: 0;
18
+ width: 85%;
19
+ }
20
+
21
+ @include min(laptop) {
22
+ width: 60%;
23
+ }
24
+ }
25
+ }
26
+
27
+ .info {
28
+ @include flex-direction(column);
29
+
30
+ @include min(tablet) {
31
+ padding-bottom: 2rem;
32
+ }
33
+
34
+ @include min(laptop) {
35
+ @include flex-direction(row);
36
+ padding-bottom: 4rem;
37
+ }
38
+
39
+ > div > img {
40
+ padding-right: 2rem;
41
+ }
42
+ }
43
+
44
+ .security {
45
+ @include text-background(var(--footer-security-background-color), var(--footer-security-text-color, var(--color-49)));
46
+ width: auto;
47
+ padding: 0.7rem 2rem;
48
+ order: 3;
49
+ @include min(tablet) {
50
+ min-width: 285px;
51
+ }
52
+
53
+ img {
54
+ padding-right: 1rem;
55
+ }
56
+ }
57
+
58
+ .socialIcons {
59
+ ul {
60
+ @include flex-align(center, center);
61
+ flex-wrap: wrap;
62
+
63
+ @include min(tablet) {
64
+ @include flex-align(center, flex-start);
65
+ }
66
+
67
+ li {
68
+ margin: 0 0.8rem 0.8rem 0;
69
+
70
+ a {
71
+ color: var(--footer-text-color, var(--color-4));
72
+ display: flex;
73
+ width: 40px;
74
+ height: 40px;
75
+
76
+ &:hover {
77
+ color: var(--footer-text-color, var(--color-21));
78
+ }
79
+
80
+ svg {
81
+ font-size: 1.2rem;
82
+ }
83
+
84
+ img {
85
+ width: 40px;
86
+ height: 40px;
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }
92
+
93
+ .gamblingText {
94
+ order: 4;
95
+ }
96
+
97
+ .templateOne {
98
+ @include min(tablet) {
99
+ padding-bottom: 6rem;
100
+ flex-direction: row;
101
+
102
+ .socialIcons {
103
+ order: -1;
104
+ }
105
+ }
106
+ }
107
+
108
+ .templateTwo,
109
+ .templateThree {
110
+ .gamblingText,
111
+ .socialIcons {
112
+ flex-basis: 100%;
113
+ }
114
+
115
+ .socialIcons {
116
+ order: 3;
117
+ }
118
+
119
+ .security {
120
+ order: 2;
121
+ }
122
+
123
+ @include min(tablet) {
124
+ flex-wrap: wrap;
125
+ @include flex-align(flex-start, space-between);
126
+ flex-direction: row;
127
+ gap: unset;
128
+ flex: 0 1 40%;
129
+
130
+ .socialIcons {
131
+ padding: 4rem 0;
132
+ }
133
+
134
+ .security {
135
+ margin: 2rem 0;
136
+ position: absolute;
137
+ top: 3.5rem;
138
+ left: calc(40% + 1.6rem);
139
+ }
140
+ }
141
+
142
+ @include min(laptop) {
143
+ flex: 0 1 491px;
144
+
145
+ .security {
146
+ position: inherit;
147
+ margin: 0;
148
+ order: unset;
149
+ }
150
+ }
151
+ }
@@ -1,9 +1,9 @@
1
1
  .footer {
2
- background-color: var(--footer-background-color);
3
- color: white;
2
+ background-color: var(--footer-background-color, var(--color-1));
3
+ color: var(--footer-text-color, var(--color-50));
4
4
  padding: 2rem 2rem;
5
5
  position: relative;
6
-
6
+ border-top: 1px solid;
7
7
  @include min(tablet) {
8
8
  padding: 5.5rem 3rem;
9
9
  }
@@ -14,123 +14,124 @@
14
14
 
15
15
  > div {
16
16
  margin: 0 auto;
17
- max-width: calc(var(--main-container-max) + var(--side-container));
17
+ max-width: calc(var(--main-container-max) + var(--side-container) - 6rem);
18
+ }
19
+ }
20
+
21
+ .topPart {
22
+ padding-bottom: 4rem;
23
+ @include flex-direction(column-reverse);
24
+
25
+ @include min(tablet) {
26
+ gap: 1.6rem;
27
+ padding-bottom: 6rem;
28
+ }
29
+ }
30
+
31
+ .bottomPart {
32
+ @include flex-direction(column-reverse);
33
+ justify-content: center;
34
+ align-items: center;
35
+ padding-bottom: 3rem;
36
+
37
+ @include min(laptop) {
38
+ padding-bottom: 0;
39
+ }
40
+ }
41
+
42
+ .hasFooterLinks {
43
+ @media only screen and (max-width: 767px) {
44
+ position: relative;
45
+ padding-bottom: 88px;
46
+ }
47
+ }
48
+
49
+ .links {
50
+ flex-grow: 4;
51
+ flex-basis: 0;
52
+ text-align: center;
53
+
54
+ @include min(tablet) {
18
55
  @include flex-direction(row);
56
+ text-align: left;
57
+ }
19
58
 
20
- &.topPart {
21
- padding-bottom: 4rem;
22
- @include flex-direction(column);
23
- flex-flow: column-reverse;
59
+ > ul {
60
+ padding: 0.5rem;
61
+ flex-grow: 1;
62
+ flex-basis: 0;
24
63
 
25
- @include min(tablet) {
26
- @include flex-direction(row);
27
- flex-flow: row-reverse;
28
- }
64
+ li {
65
+ padding-bottom: 2rem;
29
66
 
30
- > ul {
31
- flex-grow: 1;
67
+ &:first-child {
68
+ font-weight: 700;
69
+ color: var(--footer-links-heading-color, var(--color-49));
32
70
  }
33
71
 
34
- > div {
35
- @include min(tablet) {
36
- flex-grow: 3;
37
- flex-basis: 0;
38
- }
72
+ a {
73
+ @include link-color(var(--footer-text-color, var(--color-50)));
39
74
  }
75
+ }
76
+ }
77
+ }
40
78
 
41
- .links {
42
- @include flex-direction(row);
79
+ .copyrightDisclaimer {
80
+ margin: 3rem 0 2rem 0;
43
81
 
44
- @include min(tablet) {
45
- padding-top: 7rem;
46
- }
82
+ p {
83
+ text-align: left;
47
84
 
48
- @include min(laptop) {
49
- padding-top: 0;
50
- }
85
+ &:last-child {
86
+ padding-top: 2rem;
87
+ }
88
+ }
51
89
 
52
- > ul {
53
- padding: 0.5rem;
54
- flex-grow: 1;
55
- li {
56
- padding-bottom: 2rem;
57
-
58
- &:first-child {
59
- font-weight: 700;
60
- text-transform: uppercase;
61
- }
62
-
63
- &:not(:first-child) {
64
- a {
65
- @include link-color(white);
66
- }
67
- }
68
- }
69
- }
70
- }
71
- }
90
+ @include min(laptop) {
91
+ margin: 3rem 0 2rem 0;
92
+
93
+ p {
94
+ text-align: justify;
95
+ }
96
+ }
97
+ }
72
98
 
73
- &.bottomPart {
74
- flex-flow: column;
75
- flex-direction: column-reverse;
76
- justify-content: center;
77
- align-items: center;
99
+ .copyrightText {
100
+ order: -1;
101
+ }
78
102
 
79
- .copyrightDisclaimer {
80
- padding: 3rem 0;
103
+ .logos {
104
+ @include flex-align(center, center);
105
+ flex-direction: column;
106
+ > ul {
107
+ @include flex-align(center, center);
108
+ flex-wrap: wrap;
109
+ padding-bottom: 3rem;
81
110
 
82
- @include min(laptop) {
83
- padding: 3rem 0 0 0;
84
- }
111
+ @include min(tablet) {
112
+ padding-bottom: 0;
113
+ }
85
114
 
86
- p {
87
- text-align: center;
115
+ li {
116
+ padding-right: 1rem;
117
+ padding-bottom: 1rem;
88
118
 
89
- &:last-child {
90
- padding-top: 2rem;
91
- }
92
- }
119
+ @include min(tablet) {
120
+ padding-bottom: 2rem;
121
+ padding-right: 2.5rem;
122
+ }
123
+
124
+ @include min(laptop) {
125
+ padding-bottom: 0;
93
126
  }
94
127
 
95
- .logos {
96
- > ul {
97
- @include flex-align(center, center);
98
- flex-wrap: wrap;
99
- padding-bottom: 3rem;
100
-
101
- @include min(tablet) {
102
- padding-bottom: 0;
103
- }
104
-
105
- li {
106
- padding-right: 1rem;
107
- padding-bottom: 1rem;
108
-
109
- @include min(tablet) {
110
- padding-bottom: 2rem;
111
- padding-right: 2.5rem;
112
- }
113
-
114
- @include min(laptop) {
115
- padding-bottom: 0;
116
- }
117
-
118
- &:first-child {
119
- img {
120
- max-width: 3rem;
121
- }
122
- }
123
-
124
- img {
125
- max-width: 9.5rem;
126
-
127
- @include min(tablet) {
128
- max-width: 13rem;
129
- }
130
- }
131
- }
128
+ img {
129
+ max-width: 9.5rem;
130
+
131
+ @include min(tablet) {
132
+ max-width: 13rem;
132
133
  }
133
134
  }
134
135
  }
135
136
  }
136
- }
137
+ }