gatsby-core-theme 1.6.13 → 1.6.17

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,43 @@
1
+ ## [1.6.17](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v1.6.16...v1.6.17) (2021-12-03)
2
+
3
+
4
+ ### Code Refactoring
5
+
6
+ * fix the getUrl build errors for rage sites ([7a56fcc](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/7a56fcc4ed6b84908b3c9cabc39871c8dd612ca0))
7
+
8
+
9
+ * Merge branch 'fix_path_error' into 'master' ([cbaeb02](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/cbaeb02080991a4bb2f0e6e3cd50f4d977169509))
10
+
11
+ ## [1.6.16](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v1.6.15...v1.6.16) (2021-12-03)
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * fix event hour format based on site name ([d1c275c](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/d1c275ccc5ed429f04208c1cf8ae4c5d4841aac7))
17
+
18
+
19
+ * Merge branch 'format_event_hour' into 'master' ([1b8c999](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/1b8c999064676973c55360cc04820f0be122496e))
20
+
21
+ ## [1.6.15](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v1.6.14...v1.6.15) (2021-12-02)
22
+
23
+
24
+ ### Bug Fixes
25
+
26
+ * html sitemap page translations ([3bd7093](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/3bd70937dc819d9a98d951ce3946ba71c1ad7055))
27
+
28
+ ## [1.6.14](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v1.6.13...v1.6.14) (2021-12-01)
29
+
30
+
31
+ ### Bug Fixes
32
+
33
+ * added clean up html tags in faq schema data ([0b9ae93](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/0b9ae937928ede9f1f710ee0749108bf99b16757))
34
+ * added clean up html tags in faq schema data ([1b22637](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/1b22637bfadd48e9731e01d82b39e7db97e156ac))
35
+ * added new cdn env var for gifs ([e5bb4bc](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/e5bb4bc6507688fbb8060a4df349fe5ff534a009))
36
+ * geturl func ([c531ed3](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/c531ed335ae4e35aaa5b94010cb136d419826ac7))
37
+
38
+
39
+ * Merge branch 'fix-gif-images' into 'master' ([0fd8aab](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/commit/0fd8aab0d3798b6487d0cc5a3d1a5a8c14d45c7f))
40
+
1
41
  ## [1.6.13](https://git.ilcd.rocks/team-floyd/themes/gatsby-themes/compare/v1.6.12...v1.6.13) (2021-11-28)
2
42
 
3
43
 
@@ -219,6 +219,7 @@ exports.createPages = async ({ actions: { createPage } }, themeOptions) => {
219
219
  marketSections,
220
220
  prefilledModules,
221
221
  siteInfo,
222
+ translations,
222
223
  ...themeOptions,
223
224
  };
224
225
 
@@ -247,7 +248,6 @@ exports.createPages = async ({ actions: { createPage } }, themeOptions) => {
247
248
  context: {
248
249
  ...contextData,
249
250
  siteSchema,
250
- translations,
251
251
  isPreview: page.path === 'preview',
252
252
  },
253
253
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gatsby-core-theme",
3
- "version": "1.6.13",
3
+ "version": "1.6.17",
4
4
  "description": "Gatsby Theme NPM Package",
5
5
  "main": "index.js",
6
6
  "GATSBY_RECAPTCHA_SITEKEY": "6LfoyvMUAAAAAO4nl_MQnqHb4XdHxEiu5cXgIqeB",
@@ -90,8 +90,15 @@ export function image(filename, width, height, fit = 'cover') {
90
90
  return `${cloudFrontUrl}/${Buffer.from(imageRequest).toString('base64')}`;
91
91
  }
92
92
 
93
+ export function getImageExtension(filename) {
94
+ return filename && filename.split('.').pop();
95
+ }
96
+
93
97
  export function imagePrettyUrl(filename = 'image.png', width = null, height = null) {
94
- const cdnURL = process.env.IMAGE_CDN_URL || process.env.STORYBOOK_IMAGE_CDN_URL;
98
+ const cdnURL =
99
+ (getImageExtension(filename) === 'gif'
100
+ ? process.env.GIFS_CDN_URL
101
+ : process.env.IMAGE_CDN_URL) || process.env.STORYBOOK_IMAGE_CDN_URL;
95
102
 
96
103
  if (width && height) {
97
104
  const urlPath = '/fit-in';
@@ -259,10 +266,15 @@ export function isTandcEnabled(extraFields) {
259
266
  }
260
267
 
261
268
  export function getUrl(path) {
269
+ if (!path) {
270
+ return '';
271
+ }
272
+
262
273
  if (path === '/') {
263
274
  return process.env.GATSBY_SITE_URL;
264
275
  }
265
- return `${process.env.GATSBY_SITE_URL}${path}`;
276
+
277
+ return `${process.env.GATSBY_SITE_URL}${path.replace(/^\//, '')}`;
266
278
  }
267
279
 
268
280
  export function getLanguage(language) {
@@ -68,6 +68,12 @@ describe('Getters Helper', () => {
68
68
  );
69
69
  });
70
70
 
71
+ test('getImageExtension()', () => {
72
+ expect(Getters.getImageExtension('photo.jpg')).toBeTruthy();
73
+ expect(Getters.getImageExtension('photo.jpg')).toEqual('jpg');
74
+ expect(Getters.getImageExtension(null)).toEqual(null);
75
+ });
76
+
71
77
  test('getPageImage()', () => {
72
78
  expect(
73
79
  Getters.getPageImage({ type: 'operator', relation: { default_logo_url: 'foo.jpg' } })
@@ -191,8 +197,9 @@ describe('Getters Helper', () => {
191
197
  });
192
198
 
193
199
  test('getUrl()', () => {
194
- expect(Getters.getUrl('/')).toEqual('http://urltest.com');
200
+ expect(Getters.getUrl('/')).toEqual('http://urltest.com/');
195
201
  expect(Getters.getUrl('/games')).toEqual('http://urltest.com/games');
202
+ expect(Getters.getUrl('games')).toEqual('http://urltest.com/games');
196
203
  });
197
204
 
198
205
  test('getLanguage()', () => {
@@ -6,9 +6,11 @@ import {
6
6
  filterEvents,
7
7
  findTournaments,
8
8
  getSortedEvents,
9
+ formatEvents,
9
10
  } from '../schedule';
10
11
 
11
12
  export function prepareSportsData(sportsData) {
13
+ sportsData.events = formatEvents(sportsData.events);
12
14
  Object.keys(sportsData.tournaments).forEach((key) => {
13
15
  if (sportsData.tournaments[key].events) {
14
16
  sportsData.tournaments[key].events = filterEvents(
@@ -120,3 +120,44 @@ export function filterEvents(tournamentEvents, events) {
120
120
 
121
121
  return futureEvents;
122
122
  }
123
+
124
+ export function changeEventHour(event, hour = 1) {
125
+ if (!event || !event.date || !event.date.time) {
126
+ return event;
127
+ }
128
+
129
+ const timeArr = event.date.time.split(':');
130
+ timeArr[0] = Number(timeArr[0]) - hour;
131
+ event.date.time = timeArr.join(':');
132
+
133
+ return event;
134
+ }
135
+
136
+ export function formatEvents(events) {
137
+ const eventsArr = Object.values(events);
138
+ const siteName = process.env.GATSBY_SITE_NAME;
139
+ let prefix = '0';
140
+
141
+ switch (siteName) {
142
+ case 'sefodbold.dk':
143
+ prefix = 1;
144
+ break;
145
+ case 'sesport.dk':
146
+ prefix = 1;
147
+ break;
148
+ case 'bekijksport.nl':
149
+ prefix = 1;
150
+ break;
151
+ case 'livestreamsvoetbal.nl':
152
+ prefix = 1;
153
+ break;
154
+ default:
155
+ prefix = 0;
156
+ }
157
+
158
+ return eventsArr.reduce((acc, current) => {
159
+ const event = changeEventHour(current, prefix);
160
+ acc[event.id] = event;
161
+ return acc;
162
+ }, {});
163
+ }
@@ -1,4 +1,5 @@
1
1
  import { getGameRating, getUrl, getLanguage } from './getters';
2
+ import { cleanHTML } from './strings';
2
3
 
3
4
  /* HardCoded Start */
4
5
  const isIL = process.env.GATSBY_SITE_NAME === 'Irishluck.ie';
@@ -178,9 +179,9 @@ export function moduleSchemas(modules) {
178
179
  '@type': 'Question',
179
180
  acceptedAnswer: {
180
181
  '@type': 'Answer',
181
- text: item.answer,
182
+ text: cleanHTML(item.answer),
182
183
  },
183
- name: item.question,
184
+ name: cleanHTML(item.question),
184
185
  })),
185
186
  };
186
187
 
@@ -370,8 +370,9 @@ describe('Schema Helper', () => {
370
370
  test('schemaGenerator()', () => {
371
371
  const output = Schema.schemaGenerator({
372
372
  seo_json_schema: 'SEO JSON Schema',
373
- breadcrumbs: [{}],
373
+ breadcrumbs: [{ path: '/test' }],
374
374
  type: 'article',
375
+ path: '/test-path',
375
376
  sections: { main: { modules: [{ name: 'faq' }] } },
376
377
  });
377
378
 
@@ -51,3 +51,7 @@ export function truncateString(str, num, dots = '...') {
51
51
  trimmedString = trimmedString.substr(0, trimmedString.lastIndexOf(' '));
52
52
  return `${trimmedString}${dots}`;
53
53
  }
54
+
55
+ export function cleanHTML(string) {
56
+ return string && string.replace(/(<([^>]+)>)/gi, '');
57
+ }
@@ -26,7 +26,11 @@ describe('Strings Helper', () => {
26
26
  });
27
27
 
28
28
  test('truncateString()', () => {
29
- expect(Strings.truncateString('hello i think',5)).toEqual('hello...');
30
- expect(Strings.truncateString('hello i think',10)).toEqual('hello i...');
29
+ expect(Strings.truncateString('hello i think', 5)).toEqual('hello...');
30
+ expect(Strings.truncateString('hello i think', 10)).toEqual('hello i...');
31
+ });
32
+
33
+ test('cleanHTML()', () => {
34
+ expect(Strings.cleanHTML('<p>hello <a>i</a> think</p>')).toEqual('hello i think');
31
35
  });
32
36
  });
package/tests/envVars.js CHANGED
@@ -1,5 +1,5 @@
1
1
  process.env.GATSBY_SITE_NAME = 'norskespilleautomater.com';
2
- process.env.GATSBY_SITE_URL = 'http://urltest.com';
2
+ process.env.GATSBY_SITE_URL = 'http://urltest.com/';
3
3
  process.env.IMAGE_CDN_URL = 'https://cdn.images.com';
4
4
  process.env.TRACKER_LINK_FORMAT_MAIN = '[no],[visit],short_name';
5
5
  process.env.TRACKER_LINK_FORMAT_NON_MAIN = '[no],[visit],short_name,type,[tracker]';