@griddo/cx 1.75.34 → 1.75.35

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,7 +1,7 @@
1
1
  {
2
2
  "name": "@griddo/cx",
3
3
  "description": "Griddo SSG based on Gatsby",
4
- "version": "1.75.34",
4
+ "version": "1.75.35",
5
5
  "authors": [
6
6
  "Álvaro Sánchez' <alvaro.sanches@secuoyas.com>",
7
7
  "Carlos Torres <carlos.torres@secuoyas.com>",
@@ -65,7 +65,7 @@
65
65
  "react-helmet": "^6.0.0"
66
66
  },
67
67
  "devDependencies": {
68
- "@griddo/eslint-config-back": "^1.75.34",
68
+ "@griddo/eslint-config-back": "^1.75.35",
69
69
  "eslint": "^7.5.0",
70
70
  "eslint-plugin-node": "^11.1.0",
71
71
  "eslint-plugin-react": "7.14.3",
@@ -97,5 +97,5 @@
97
97
  "publishConfig": {
98
98
  "access": "public"
99
99
  },
100
- "gitHead": "cadffc9497096901e309b5b897f168759e09df92"
100
+ "gitHead": "b07f3c7a091191e2bcc82ff31bb034456d68f4d0"
101
101
  }
@@ -21,29 +21,36 @@ import { formatImage, cleanCommaSeparated } from '../utils/helpers';
21
21
  // strategy works, maybe we want to isolate `<Head>` in its own file as we did
22
22
  // with seo.js.
23
23
  //
24
- export const Head = ({ pageContext }) => {
24
+ export const Head = data => {
25
25
  // ^^^^^^^^^^^
26
26
  // A context object which is passed in during the creation of the page
27
27
  const {
28
- siteMetadata,
29
- pageMetadata,
30
- siteOptions,
31
- locale,
32
- openGraph,
33
- analyticsDimensions,
34
- analyticsScript,
35
- componentsVersion,
36
- griddoVersion,
37
- page: {
38
- fullUrl,
28
+ pageContext: {
29
+ siteMetadata,
30
+ pageMetadata,
31
+ siteOptions,
32
+ locale,
33
+ openGraph,
34
+ componentsVersion,
35
+ griddoVersion,
36
+ page: {
37
+ fullUrl,
38
+ },
39
39
  },
40
- } = pageContext;
40
+ } = data;
41
41
 
42
42
  const metaRobots = cleanCommaSeparated(
43
43
  `${pageMetadata?.index},${pageMetadata?.follow},${pageMetadata?.translate},${pageMetadata?.metasAdvanced}`
44
44
  );
45
45
 
46
- const showMetaRobots = !!metaRobots && (siteOptions?.showBasicMetaRobots || metaRobots !== 'index,follow');
46
+ const showMetaRobots =
47
+ !!metaRobots &&
48
+ (siteOptions?.showBasicMetaRobots || metaRobots !== 'index,follow');
49
+
50
+ const { analyticsScript, analyticsDimensions } = composeAnalytics(
51
+ data,
52
+ generateAutomaticDimensions
53
+ );
47
54
 
48
55
  const emptyCodeScript = { props: { dangerouslySetInnerHTML: {} } };
49
56
 
@@ -72,15 +79,11 @@ export const Head = ({ pageContext }) => {
72
79
  } = fixedAnalyticsCode;
73
80
 
74
81
  // Resize favicon
75
- const faviconResized = formatImage(
76
- siteMetadata?.favicon,
77
- 32,
78
- 32,
79
- 'png'
80
- );
82
+ const faviconResized = formatImage(siteMetadata?.favicon, 32, 32, 'png');
81
83
 
82
84
  // Validate options
83
- const cleanPageLanguages = pageMetadata?.pageLanguages?.filter(item => item.isLive) || [];
85
+ const cleanPageLanguages =
86
+ pageMetadata?.pageLanguages?.filter(item => item.isLive) || [];
84
87
 
85
88
  const useCanonical =
86
89
  !!pageMetadata?.canonical &&
@@ -101,57 +104,82 @@ export const Head = ({ pageContext }) => {
101
104
  return (
102
105
  <>
103
106
  {!!pageMetadata?.title && <title>{pageMetadata?.title}</title>}
104
- {!!pageMetadata?.description && <meta name="description" content={pageMetadata?.description} />}
107
+ {!!pageMetadata?.description && (
108
+ <meta name="description" content={pageMetadata?.description} />
109
+ )}
105
110
  {siteOptions?.useMetaTitle && (
106
111
  <meta name="title" content={pageMetadata?.title} />
107
112
  )}
108
- {useCanonical && (
109
- <link rel="canonical" href={pageMetadata?.canonical} />
110
- )}
113
+ {useCanonical && <link rel="canonical" href={pageMetadata?.canonical} />}
111
114
  {!!faviconResized && <link rel="icon" href={faviconResized} />}
112
115
 
113
116
  {/* Alternate, solo si se indexa la página y tiene traducciones */}
114
117
  {useHrefLangs &&
115
- cleanPageLanguages
116
- .map(item => (
117
- <link
118
- key={item.pageId}
119
- rel="alternate"
120
- href={`${item.url}`}
121
- hreflang={item.locale?.replace(/_/g, '-')}
122
- />
123
- ))}
118
+ cleanPageLanguages.map(item => (
119
+ <link
120
+ key={item.pageId}
121
+ rel="alternate"
122
+ href={`${item.url}`}
123
+ hreflang={item.locale?.replace(/_/g, '-')}
124
+ />
125
+ ))}
124
126
 
125
127
  {/* Robots */}
126
- {showMetaRobots && (
127
- <meta name="robots" content={metaRobots} />
128
- )}
128
+ {showMetaRobots && <meta name="robots" content={metaRobots} />}
129
129
 
130
130
  {/* Facebook */}
131
- {!!siteMetadata?.title && <meta property="og:site_name" content={siteMetadata?.title} />}
131
+ {!!siteMetadata?.title && (
132
+ <meta property="og:site_name" content={siteMetadata?.title} />
133
+ )}
132
134
  {!!locale && <meta property="og:locale" content={locale} />}
133
- {(!!openGraph?.title || !!pageMetadata?.title) && <meta
134
- property="og:title"
135
- content={openGraph?.title || pageMetadata?.title}
136
- />}
135
+ {(!!openGraph?.title || !!pageMetadata?.title) && (
136
+ <meta
137
+ property="og:title"
138
+ content={openGraph?.title || pageMetadata?.title}
139
+ />
140
+ )}
137
141
  <meta property="og:type" content={openGraph?.type || 'website'} />
138
- {(!!openGraph?.description || !!pageMetadata?.description) && <meta property="og:description" content={openGraph?.description || pageMetadata?.description} />}
139
- {!!openGraph?.image && <meta property="og:image" content={openGraph?.image} />}
142
+ {(!!openGraph?.description || !!pageMetadata?.description) && (
143
+ <meta
144
+ property="og:description"
145
+ content={openGraph?.description || pageMetadata?.description}
146
+ />
147
+ )}
148
+ {!!openGraph?.image && (
149
+ <meta property="og:image" content={openGraph?.image} />
150
+ )}
140
151
  <meta property="og:url" content={pageMetadata?.canonical || fullUrl} />
141
152
 
142
153
  {/* Twitter */}
143
154
  <meta property="twitter:card" content="summary_large_image" />
144
- {(!!openGraph?.title || !!pageMetadata?.title) && <meta
145
- property="twitter:title"
146
- content={openGraph?.title || pageMetadata?.title}
147
- />}
148
- {(!!openGraph?.description || pageMetadata?.description) && <meta property="twitter:description" content={openGraph?.description || pageMetadata?.description} />}
149
- {(!!openGraph?.twitterImage || !!openGraph?.image) && <meta property="twitter:image" content={openGraph?.twitterImage || openGraph?.image} />}
155
+ {(!!openGraph?.title || !!pageMetadata?.title) && (
156
+ <meta
157
+ property="twitter:title"
158
+ content={openGraph?.title || pageMetadata?.title}
159
+ />
160
+ )}
161
+ {(!!openGraph?.description || pageMetadata?.description) && (
162
+ <meta
163
+ property="twitter:description"
164
+ content={openGraph?.description || pageMetadata?.description}
165
+ />
166
+ )}
167
+ {(!!openGraph?.twitterImage || !!openGraph?.image) && (
168
+ <meta
169
+ property="twitter:image"
170
+ content={openGraph?.twitterImage || openGraph?.image}
171
+ />
172
+ )}
150
173
  <meta
151
174
  property="twitter:url"
152
175
  content={pageMetadata?.canonical || fullUrl}
153
176
  />
154
- {!siteOptions?.avoidDebugMetas && <meta property="debug" content={`Components v${componentsVersion} by Griddo v${griddoVersion} @ ${new Date()}`} />}
177
+ {!siteOptions?.avoidDebugMetas && (
178
+ <meta
179
+ property="debug"
180
+ content={`Components v${componentsVersion} by Griddo v${griddoVersion} @ ${new Date()}`}
181
+ />
182
+ )}
155
183
 
156
184
  {/* Data Layer */}
157
185
  {/* Solo cuando se ejecuta en el navegador */}
@@ -175,19 +203,21 @@ export const Head = ({ pageContext }) => {
175
203
 
176
204
  export default data => {
177
205
  const {
178
- page: content,
179
- locale,
180
- header,
181
- footer,
182
- siteMetadata,
183
- theme,
184
- cloudinaryName,
185
- socials,
186
- siteLangs,
187
- BUILD_MODE,
188
- page: { site: siteId, apiUrl, publicApiUrl, instance },
189
- sitePages,
190
- } = data.pageContext;
206
+ pageContext: {
207
+ page: content,
208
+ locale,
209
+ header,
210
+ footer,
211
+ siteMetadata,
212
+ theme,
213
+ cloudinaryName,
214
+ socials,
215
+ siteLangs,
216
+ BUILD_MODE,
217
+ page: { site: siteId, apiUrl, publicApiUrl, instance },
218
+ sitePages,
219
+ },
220
+ } = data;
191
221
 
192
222
  const library = {
193
223
  components,
@@ -243,4 +273,4 @@ export default data => {
243
273
  />
244
274
  </SiteProvider>
245
275
  );
246
- };
276
+ };
@@ -30,7 +30,7 @@ const formatImage = (image, width, height, format = 'jpg') => {
30
30
  if (!url) return null;
31
31
  return url.split('/')[2].includes('cloudinary.com')
32
32
  ? addCloudinaryParams(url, `c_fill,w_${width},h_${height}`)
33
- : addGriddoDamParams(url, `f/${format}/c/fill/w/${width}/h/${height}`);
33
+ : addGriddoDamParams(url, `f/${format}/w/${width}/h/${height}`);
34
34
  };
35
35
 
36
36
  // Format Griddo DAM image