@pixelated-tech/components 3.2.8 → 3.2.10
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/README.md +19 -13
- package/dist/components/cms/flickr.js +11 -2
- package/dist/components/cms/google.reviews.components.js +16 -5
- package/dist/components/cms/google.reviews.css +92 -0
- package/dist/components/cms/google.reviews.functions.js +1 -5
- package/dist/components/cms/gravatar.components.js +4 -16
- package/dist/components/cms/gravatar.css +110 -0
- package/dist/components/cms/hubspot.components.js +13 -8
- package/dist/components/cms/wordpress.components.js +11 -3
- package/dist/components/cms/wordpress.functions.js +6 -2
- package/dist/components/config/config.example.js +11 -3
- package/dist/components/seo/googleanalytics.js +12 -3
- package/dist/types/components/cms/flickr.d.ts +5 -2
- package/dist/types/components/cms/flickr.d.ts.map +1 -1
- package/dist/types/components/cms/google.reviews.components.d.ts +4 -1
- package/dist/types/components/cms/google.reviews.components.d.ts.map +1 -1
- package/dist/types/components/cms/google.reviews.functions.d.ts +1 -0
- package/dist/types/components/cms/google.reviews.functions.d.ts.map +1 -1
- package/dist/types/components/cms/gravatar.components.d.ts +1 -0
- package/dist/types/components/cms/gravatar.components.d.ts.map +1 -1
- package/dist/types/components/cms/hubspot.components.d.ts +3 -3
- package/dist/types/components/cms/hubspot.components.d.ts.map +1 -1
- package/dist/types/components/cms/wordpress.components.d.ts +2 -1
- package/dist/types/components/cms/wordpress.components.d.ts.map +1 -1
- package/dist/types/components/cms/wordpress.functions.d.ts +4 -0
- package/dist/types/components/cms/wordpress.functions.d.ts.map +1 -1
- package/dist/types/components/config/config.example.d.ts.map +1 -1
- package/dist/types/components/config/config.types.d.ts +7 -1
- package/dist/types/components/config/config.types.d.ts.map +1 -1
- package/dist/types/components/general/semantic.d.ts +1 -1
- package/dist/types/components/seo/googleanalytics.d.ts +2 -2
- package/dist/types/components/seo/googleanalytics.d.ts.map +1 -1
- package/dist/types/stories/cms/google.reviews.stories.d.ts +11 -0
- package/dist/types/stories/cms/google.reviews.stories.d.ts.map +1 -1
- package/dist/types/stories/cms/wordpress.stories.d.ts +4 -0
- package/dist/types/stories/cms/wordpress.stories.d.ts.map +1 -1
- package/dist/types/stories/seo/seo.googleanalytics.stories.d.ts +9 -2
- package/dist/types/stories/seo/seo.googleanalytics.stories.d.ts.map +1 -1
- package/dist/types/tests/google.reviews.test.d.ts +2 -0
- package/dist/types/tests/google.reviews.test.d.ts.map +1 -0
- package/package.json +11 -11
- package/dist/types/tests/google-reviews.test.d.ts +0 -2
- package/dist/types/tests/google-reviews.test.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -173,17 +173,18 @@ npm run storybook
|
|
|
173
173
|
|
|
174
174
|
### Overview
|
|
175
175
|
|
|
176
|
-
**Current Status**: ✅ 2,
|
|
176
|
+
**Current Status**: ✅ 2,037 tests passing across 59 test files (all tests passing)
|
|
177
177
|
|
|
178
178
|
| Metric | Value |
|
|
179
179
|
|--------|-------|
|
|
180
|
-
| Test Files |
|
|
181
|
-
| Total Tests | 2,
|
|
182
|
-
| Components Tested |
|
|
183
|
-
|
|
|
184
|
-
| Coverage (
|
|
185
|
-
| Coverage (
|
|
186
|
-
| Coverage (
|
|
180
|
+
| Test Files | 58 |
|
|
181
|
+
| Total Tests | 2,038 |
|
|
182
|
+
| Components Tested | 52/52 (100%) |
|
|
183
|
+
| Utility Modules Tested | 2/2 (100%) |
|
|
184
|
+
| Coverage (Statements) | 66.81% |
|
|
185
|
+
| Coverage (Lines) | 70.31% |
|
|
186
|
+
| Coverage (Functions) | 74.59% |
|
|
187
|
+
| Coverage (Branches) | 57.62% |
|
|
187
188
|
| Test Framework | Vitest 4.x |
|
|
188
189
|
| Testing Library | @testing-library/react + jsdom |
|
|
189
190
|
|
|
@@ -202,6 +203,7 @@ npm run test:run # Single run (for CI)
|
|
|
202
203
|
|
|
203
204
|
#### Component Coverage (Sorted by Statement Coverage)
|
|
204
205
|
- **sitemap.ts**: 100% statements
|
|
206
|
+
- **google.reviews.functions.ts**: 100% statements
|
|
205
207
|
- **googlesearch.tsx**: 100% statements
|
|
206
208
|
- **formvalidations.tsx**: 100% statements (↑ 92.69 points)
|
|
207
209
|
- **tiles.tsx**: 100% statements
|
|
@@ -210,6 +212,7 @@ npm run test:run # Single run (for CI)
|
|
|
210
212
|
- **timeline.tsx**: 100% statements
|
|
211
213
|
- **config.server.tsx**: 100% statements
|
|
212
214
|
- **modal.tsx**: 100% statements
|
|
215
|
+
- **google.reviews.components.tsx**: 100% statements
|
|
213
216
|
- **recipe.tsx**: 98.8% statements
|
|
214
217
|
- **sidepanel.tsx**: 97.5% statements
|
|
215
218
|
- **resume.tsx**: 94.38% statements
|
|
@@ -231,10 +234,10 @@ npm run test:run # Single run (for CI)
|
|
|
231
234
|
### Test Configuration
|
|
232
235
|
|
|
233
236
|
**Coverage Targets** (Updated - Focus on Statement Coverage):
|
|
234
|
-
- **Statements**: 66.
|
|
235
|
-
- **Lines**:
|
|
236
|
-
- **Functions**: 74.
|
|
237
|
-
- **Branches**:
|
|
237
|
+
- **Statements**: 66.81% ✅ ACHIEVED (Target: 70%)
|
|
238
|
+
- **Lines**: 70.31% ✅ ACHIEVED
|
|
239
|
+
- **Functions**: 74.59% ✅ ACHIEVED
|
|
240
|
+
- **Branches**: 57.62% (Focus area for future)
|
|
238
241
|
|
|
239
242
|
**Coverage Thresholds in vitest.config.ts**:
|
|
240
243
|
- Lines: 70% threshold
|
|
@@ -260,7 +263,7 @@ npm run test:run # Single run (for CI)
|
|
|
260
263
|
|
|
261
264
|
### New Components
|
|
262
265
|
- [ ] **ON HOLD** LinkedIn Recommendations Integration (Not possible with current LinkedIn API)
|
|
263
|
-
- [ ] eBay Feedback Integration
|
|
266
|
+
- [ ] **ON HOLD** eBay Feedback Integration - requires user OAuth login
|
|
264
267
|
- [ ] **ON HOLD** Yelp Recommendations integration (Cost Prohibitive)
|
|
265
268
|
- [ ] Instagram Image Integration for Carousels
|
|
266
269
|
- [ ] Shopify Integration
|
|
@@ -285,6 +288,9 @@ npm run test:run # Single run (for CI)
|
|
|
285
288
|
- [ ] **Form Components**: Fix validation state reset when input props change.
|
|
286
289
|
- [ ] **Carousel Component**: Fix active card state reset when `props.cards` changes.
|
|
287
290
|
- [ ] **NerdJoke Component**: Add props to useEffect dependencies if endpoint becomes configurable.
|
|
291
|
+
- [ ] **GoogleReviews Component**: Add carousel/grid display modes.
|
|
292
|
+
- [ ] **GoogleReviews Component**: Add API key to config provider instead of hardcoding.
|
|
293
|
+
- [ ] **Instagram Component**: Add accessToken and userId to config provider for centralized API credentials.
|
|
288
294
|
|
|
289
295
|
|
|
290
296
|
|
|
@@ -43,11 +43,20 @@ function getFlickrSize(size) {
|
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
GetFlickrData.PropTypes = {
|
|
46
|
-
flickr: PropTypes.object
|
|
46
|
+
flickr: PropTypes.object,
|
|
47
|
+
config: PropTypes.object,
|
|
47
48
|
};
|
|
48
49
|
export function GetFlickrData(props) {
|
|
49
50
|
const debug = false;
|
|
50
|
-
|
|
51
|
+
// Use provided flickr config, or fall back to config provider, or use defaults
|
|
52
|
+
let flickrConfig = { ...defaultFlickr.flickr };
|
|
53
|
+
if (props.config) {
|
|
54
|
+
flickrConfig = mergeDeep(flickrConfig, props.config);
|
|
55
|
+
}
|
|
56
|
+
if (props.flickr) {
|
|
57
|
+
flickrConfig = mergeDeep(flickrConfig, props.flickr);
|
|
58
|
+
}
|
|
59
|
+
const flickr = flickrConfig;
|
|
51
60
|
const myURL = generateURL(flickr.baseURL, flickr.urlProps);
|
|
52
61
|
const fetchFlickrData = async () => {
|
|
53
62
|
try {
|
|
@@ -3,11 +3,14 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
import { useState, useEffect } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import { getGoogleReviewsByPlaceId } from './google.reviews.functions';
|
|
6
|
+
import './google.reviews.css';
|
|
7
|
+
const GOOGLE_MAPS_API_KEY = 'AIzaSyBtknq7LHzN0xb0lIN3K0CXXf0swVp6ReA';
|
|
6
8
|
GoogleReviewsCard.propTypes = {
|
|
7
|
-
|
|
9
|
+
placeId: PropTypes.string.isRequired,
|
|
8
10
|
language: PropTypes.string,
|
|
9
11
|
maxReviews: PropTypes.number,
|
|
10
12
|
proxyBase: PropTypes.string,
|
|
13
|
+
apiKey: PropTypes.string,
|
|
11
14
|
};
|
|
12
15
|
export function GoogleReviewsCard(props) {
|
|
13
16
|
const [place, setPlace] = useState();
|
|
@@ -22,22 +25,30 @@ export function GoogleReviewsCard(props) {
|
|
|
22
25
|
language: props.language,
|
|
23
26
|
maxReviews: props.maxReviews,
|
|
24
27
|
proxyBase: props.proxyBase,
|
|
28
|
+
apiKey: props.apiKey || GOOGLE_MAPS_API_KEY,
|
|
25
29
|
});
|
|
26
30
|
setPlace(result.place);
|
|
27
31
|
setReviews(result.reviews);
|
|
28
32
|
setLoading(false);
|
|
29
33
|
}
|
|
30
34
|
catch (e) {
|
|
31
|
-
|
|
35
|
+
const errorMessage = e?.message || 'Failed to fetch reviews';
|
|
36
|
+
// Check for common CORS/network issues
|
|
37
|
+
if (errorMessage.includes('Failed to fetch') || errorMessage.includes('CORS')) {
|
|
38
|
+
setError('Unable to load reviews. This may be due to CORS restrictions in the browser. Try using a proxy server or server-side rendering.');
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
setError(errorMessage);
|
|
42
|
+
}
|
|
32
43
|
setLoading(false);
|
|
33
44
|
}
|
|
34
45
|
})();
|
|
35
46
|
}, [props.placeId, props.language, props.maxReviews, props.proxyBase]);
|
|
36
47
|
if (loading) {
|
|
37
|
-
return (_jsx("div", {
|
|
48
|
+
return (_jsx("div", { className: "google-reviews-card", children: _jsx("p", { className: "loading", children: "Loading reviews..." }) }));
|
|
38
49
|
}
|
|
39
50
|
if (error) {
|
|
40
|
-
return (_jsx("div", {
|
|
51
|
+
return (_jsx("div", { className: "google-reviews-card", children: _jsxs("p", { className: "error", children: ["Error: ", error] }) }));
|
|
41
52
|
}
|
|
42
|
-
return (_jsxs("div", {
|
|
53
|
+
return (_jsxs("div", { className: "google-reviews-card", children: [_jsx("h3", { children: place?.name || 'Reviews' }), place?.formatted_address && (_jsx("p", { className: "address", children: place.formatted_address })), reviews.length === 0 ? (_jsx("p", { className: "no-reviews", children: "No reviews found." })) : (_jsx("ul", { children: reviews.map((r, i) => (_jsxs("li", { children: [_jsxs("div", { className: "review-header", children: [r.profile_photo_url && (_jsx("img", { src: r.profile_photo_url, alt: r.author_name, className: "profile-photo" })), _jsxs("div", { children: [_jsx("div", { className: "author-name", children: r.author_name }), _jsxs("div", { className: "rating", children: ['★'.repeat(r.rating), '☆'.repeat(5 - r.rating), " ", r.rating, "/5", r.relative_time_description && _jsxs("span", { children: [" \u00B7 ", r.relative_time_description] })] })] })] }), r.text && _jsx("div", { className: "review-text", children: r.text })] }, i))) })), place && (_jsx("a", { href: `https://search.google.com/local/writereview?placeid=${place.place_id}`, target: "_blank", rel: "noopener noreferrer", className: "write-review", children: "Write a review on Google \u2192" }))] }));
|
|
43
54
|
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
.google-reviews-card {
|
|
2
|
+
padding: 16px;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.google-reviews-card h3 {
|
|
6
|
+
margin: 0 0 8px 0;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.google-reviews-card .address {
|
|
10
|
+
font-size: 0.9em;
|
|
11
|
+
color: #666;
|
|
12
|
+
margin-bottom: 16px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.google-reviews-card .loading,
|
|
16
|
+
.google-reviews-card .error,
|
|
17
|
+
.google-reviews-card .no-reviews {
|
|
18
|
+
padding: 16px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.google-reviews-card .error {
|
|
22
|
+
color: tomato;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.google-reviews-card ul {
|
|
26
|
+
list-style: none;
|
|
27
|
+
padding: 0;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.google-reviews-card li {
|
|
31
|
+
margin-bottom: 16px;
|
|
32
|
+
border-bottom: 1px solid #eee;
|
|
33
|
+
padding-bottom: 12px;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.google-reviews-card .review-header {
|
|
37
|
+
display: flex;
|
|
38
|
+
align-items: center;
|
|
39
|
+
margin-bottom: 8px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.google-reviews-card .profile-photo-container {
|
|
43
|
+
width: 40px;
|
|
44
|
+
height: 40px;
|
|
45
|
+
margin-right: 12px;
|
|
46
|
+
flex-shrink: 0;
|
|
47
|
+
position: relative;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.google-reviews-card .profile-photo {
|
|
51
|
+
width: 100%;
|
|
52
|
+
height: 100%;
|
|
53
|
+
border-radius: 50%;
|
|
54
|
+
object-fit: cover;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.google-reviews-card .profile-placeholder {
|
|
58
|
+
width: 100%;
|
|
59
|
+
height: 100%;
|
|
60
|
+
border-radius: 50%;
|
|
61
|
+
background-color: #e0e0e0;
|
|
62
|
+
color: #666;
|
|
63
|
+
display: flex;
|
|
64
|
+
align-items: center;
|
|
65
|
+
justify-content: center;
|
|
66
|
+
font-weight: bold;
|
|
67
|
+
font-size: 16px;
|
|
68
|
+
position: absolute;
|
|
69
|
+
top: 0;
|
|
70
|
+
left: 0;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.google-reviews-card .author-name {
|
|
74
|
+
font-weight: bold;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.google-reviews-card .rating {
|
|
78
|
+
font-size: 0.9em;
|
|
79
|
+
color: #666;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.google-reviews-card .review-text {
|
|
83
|
+
margin-top: 8px;
|
|
84
|
+
line-height: 1.5;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.google-reviews-card .write-review {
|
|
88
|
+
display: inline-block;
|
|
89
|
+
margin-top: 16px;
|
|
90
|
+
color: #1a73e8;
|
|
91
|
+
text-decoration: none;
|
|
92
|
+
}
|
|
@@ -2,11 +2,7 @@
|
|
|
2
2
|
// Requires: GOOGLE_MAPS_API_KEY or hard-coded key
|
|
3
3
|
// Flow: Place Details (reviews)
|
|
4
4
|
export async function getGoogleReviewsByPlaceId(params) {
|
|
5
|
-
const apiKey =
|
|
6
|
-
if (!apiKey) {
|
|
7
|
-
throw new Error('GOOGLE_MAPS_API_KEY is required');
|
|
8
|
-
}
|
|
9
|
-
const { placeId, language, maxReviews, proxyBase } = params;
|
|
5
|
+
const { placeId, language, maxReviews, proxyBase, apiKey } = params;
|
|
10
6
|
const detailsBase = 'https://maps.googleapis.com/maps/api/place/details/json';
|
|
11
7
|
const fields = encodeURIComponent('reviews,name,place_id,formatted_address');
|
|
12
8
|
const detailsUrl = `${detailsBase}?place_id=${encodeURIComponent(placeId)}&fields=${fields}${language ? `&language=${encodeURIComponent(language)}` : ''}&key=${apiKey}`;
|
|
@@ -4,6 +4,7 @@ import PropTypes from 'prop-types';
|
|
|
4
4
|
// import { type GravatarProfile } from './gravatar.functions';
|
|
5
5
|
import { SmartImage } from './cloudinary.image';
|
|
6
6
|
import { usePixelatedConfig } from '../config/config.client';
|
|
7
|
+
import './gravatar.css';
|
|
7
8
|
/* export type GravatarCardProps = {
|
|
8
9
|
// Gravatar profile data (fetched server-side)
|
|
9
10
|
profile?: GravatarProfile | null;
|
|
@@ -104,20 +105,7 @@ export function GravatarCard(props) {
|
|
|
104
105
|
const isHorizontal = layout === 'horizontal';
|
|
105
106
|
const photoOnRight = direction === 'right';
|
|
106
107
|
const config = usePixelatedConfig();
|
|
107
|
-
const avatarElement = (_jsx("div", {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
display: 'block',
|
|
111
|
-
}, cloudinaryEnv: config?.cloudinary?.product_env, cloudinaryDomain: config?.cloudinary?.baseUrl, cloudinaryTransforms: config?.cloudinary?.transforms }) }));
|
|
112
|
-
const contentElement = (_jsxs("div", { style: { flex: 1, minWidth: 0 }, children: [_jsxs("div", { style: { marginBottom: 8 }, children: [_jsx("h3", { style: { margin: 0, fontSize: compact ? '1.1em' : '1.4em' }, children: profileLink ? (_jsx("a", { href: profileLink, target: "_blank", rel: "noopener noreferrer", style: { textDecoration: 'none', color: 'inherit' }, children: displayName })) : (displayName) }), pronouns && _jsxs("span", { style: { fontSize: '0.9em', color: '#666', marginLeft: 8 }, children: ["(", pronouns, ")"] })] }), (jobTitle || company) && (_jsxs("div", { style: { fontSize: '0.95em', color: '#555', marginBottom: 8 }, children: [jobTitle && _jsx("strong", { children: jobTitle }), jobTitle && company && _jsx("span", { children: " at " }), company && _jsx("span", { children: company })] })), location && (_jsxs("div", { style: { fontSize: '0.9em', color: '#777', marginBottom: 8 }, children: ["\uD83D\uDCCD ", location] })), aboutMe && !compact && (_jsx("p", { style: { margin: '12px 0', fontSize: '0.95em', lineHeight: 1.5, color: '#333' }, children: aboutMe })), (githubUrl || linkedinUrl || twitterUrl || instagramUrl || websiteUrl) && (_jsxs("div", { style: { display: 'flex', gap: 12, marginTop: 12, flexWrap: 'wrap' }, children: [githubUrl && (_jsx("a", { href: githubUrl, target: "_blank", rel: "noopener noreferrer", style: { color: '#333', textDecoration: 'none', fontSize: '1.2em' }, children: "GitHub" })), linkedinUrl && (_jsx("a", { href: linkedinUrl, target: "_blank", rel: "noopener noreferrer", style: { color: '#0077b5', textDecoration: 'none', fontSize: '1.2em' }, children: "LinkedIn" })), twitterUrl && (_jsx("a", { href: twitterUrl, target: "_blank", rel: "noopener noreferrer", style: { color: '#1da1f2', textDecoration: 'none', fontSize: '1.2em' }, children: "X" })), instagramUrl && (_jsx("a", { href: instagramUrl, target: "_blank", rel: "noopener noreferrer", style: { color: '#e4405f', textDecoration: 'none', fontSize: '1.2em' }, children: "Instagram" })), websiteUrl && (_jsx("a", { href: websiteUrl, target: "_blank", rel: "noopener noreferrer", style: { color: '#666', textDecoration: 'none', fontSize: '1.2em' }, children: "Website" }))] }))] }));
|
|
113
|
-
return (_jsx("div", { style: {
|
|
114
|
-
display: 'flex',
|
|
115
|
-
flexDirection: isHorizontal ? 'row' : 'column',
|
|
116
|
-
alignItems: isHorizontal ? 'flex-start' : 'center',
|
|
117
|
-
gap: 16,
|
|
118
|
-
padding: 16,
|
|
119
|
-
border: '1px solid #e0e0e0',
|
|
120
|
-
borderRadius: 8,
|
|
121
|
-
maxWidth: isHorizontal ? 600 : 400,
|
|
122
|
-
}, children: isHorizontal && photoOnRight ? (_jsxs(_Fragment, { children: [contentElement, avatarElement] })) : (_jsxs(_Fragment, { children: [avatarElement, contentElement] })) }));
|
|
108
|
+
const avatarElement = (_jsx("div", { className: "gravatar-avatar-container", children: _jsx(SmartImage, { src: avatarUrl, alt: displayName, title: displayName, width: avatarSize ?? 120, height: avatarSize ?? 120, quality: 100, className: "gravatar-avatar", cloudinaryEnv: config?.cloudinary?.product_env, cloudinaryDomain: config?.cloudinary?.baseUrl, cloudinaryTransforms: config?.cloudinary?.transforms }) }));
|
|
109
|
+
const contentElement = (_jsxs("div", { className: "gravatar-content", children: [_jsxs("div", { className: "gravatar-header", children: [_jsx("h3", { className: "gravatar-name", children: profileLink ? (_jsx("a", { href: profileLink, target: "_blank", rel: "noopener noreferrer", className: "gravatar-name-link", children: displayName })) : (displayName) }), pronouns && _jsxs("span", { className: "gravatar-pronouns", children: ["(", pronouns, ")"] })] }), (jobTitle || company) && (_jsxs("div", { className: "gravatar-job-company", children: [jobTitle && _jsx("strong", { children: jobTitle }), jobTitle && company && _jsx("span", { children: " at " }), company && _jsx("span", { children: company })] })), location && (_jsxs("div", { className: "gravatar-location", children: ["\uD83D\uDCCD ", location] })), aboutMe && !compact && (_jsx("p", { className: "gravatar-about", children: aboutMe })), (githubUrl || linkedinUrl || twitterUrl || instagramUrl || websiteUrl) && (_jsxs("div", { className: "gravatar-social-links", children: [githubUrl && (_jsx("a", { href: githubUrl, target: "_blank", rel: "noopener noreferrer", className: "gravatar-social-link", children: "GitHub" })), linkedinUrl && (_jsx("a", { href: linkedinUrl, target: "_blank", rel: "noopener noreferrer", className: "gravatar-social-link gravatar-social-link-linkedin", children: "LinkedIn" })), twitterUrl && (_jsx("a", { href: twitterUrl, target: "_blank", rel: "noopener noreferrer", className: "gravatar-social-link gravatar-social-link-twitter", children: "X" })), instagramUrl && (_jsx("a", { href: instagramUrl, target: "_blank", rel: "noopener noreferrer", className: "gravatar-social-link gravatar-social-link-instagram", children: "Instagram" })), websiteUrl && (_jsx("a", { href: websiteUrl, target: "_blank", rel: "noopener noreferrer", className: "gravatar-social-link gravatar-social-link-website", children: "Website" }))] }))] }));
|
|
110
|
+
return (_jsx("div", { className: `gravatar-card ${isHorizontal ? 'gravatar-card-horizontal' : ''} ${compact ? 'gravatar-card-compact' : ''}`, children: isHorizontal && photoOnRight ? (_jsxs(_Fragment, { children: [contentElement, avatarElement] })) : (_jsxs(_Fragment, { children: [avatarElement, contentElement] })) }));
|
|
123
111
|
}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/* Gravatar Component Styles */
|
|
2
|
+
|
|
3
|
+
.gravatar-card {
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
align-items: center;
|
|
7
|
+
gap: 16px;
|
|
8
|
+
padding: 16px;
|
|
9
|
+
border: 2px solid #e0e0e0;
|
|
10
|
+
border-radius: 8px;
|
|
11
|
+
/* max-width: 400px; */
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.gravatar-card-horizontal {
|
|
15
|
+
flex-direction: row;
|
|
16
|
+
align-items: flex-start;
|
|
17
|
+
/* max-width: 600px; */
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.gravatar-avatar-container {
|
|
21
|
+
flex-shrink: 0;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.gravatar-avatar {
|
|
25
|
+
border-radius: 50%;
|
|
26
|
+
object-fit: cover;
|
|
27
|
+
display: block;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.gravatar-content {
|
|
31
|
+
flex: 1;
|
|
32
|
+
min-width: 0;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.gravatar-header {
|
|
36
|
+
margin-bottom: 8px;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.gravatar-name {
|
|
40
|
+
margin: 0;
|
|
41
|
+
font-size: 1.4em;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.gravatar-name-link {
|
|
45
|
+
text-decoration: none;
|
|
46
|
+
color: inherit;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.gravatar-pronouns {
|
|
50
|
+
font-size: 0.9em;
|
|
51
|
+
color: #666;
|
|
52
|
+
margin-left: 8px;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.gravatar-job-company {
|
|
56
|
+
font-size: 0.95em;
|
|
57
|
+
color: #555;
|
|
58
|
+
margin-bottom: 8px;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.gravatar-location {
|
|
62
|
+
font-size: 0.9em;
|
|
63
|
+
color: #777;
|
|
64
|
+
margin-bottom: 8px;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.gravatar-about {
|
|
68
|
+
margin: 12px 0;
|
|
69
|
+
font-size: 0.95em;
|
|
70
|
+
line-height: 1.5;
|
|
71
|
+
color: #333;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.gravatar-social-links {
|
|
75
|
+
display: flex;
|
|
76
|
+
gap: 12px;
|
|
77
|
+
margin-top: 12px;
|
|
78
|
+
flex-wrap: wrap;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.gravatar-social-link {
|
|
82
|
+
color: #333;
|
|
83
|
+
text-decoration: none;
|
|
84
|
+
font-size: 1.2em;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.gravatar-social-link-linkedin {
|
|
88
|
+
color: #0077b5;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.gravatar-social-link-twitter {
|
|
92
|
+
color: #1da1f2;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.gravatar-social-link-instagram {
|
|
96
|
+
color: #e4405f;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.gravatar-social-link-website {
|
|
100
|
+
color: #666;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/* Compact variant */
|
|
104
|
+
.gravatar-card-compact .gravatar-name {
|
|
105
|
+
font-size: 1.1em;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.gravatar-card-compact .gravatar-about {
|
|
109
|
+
display: none;
|
|
110
|
+
}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
3
|
import { useEffect } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
|
+
import { usePixelatedConfig } from '../config/config.client';
|
|
5
6
|
export function initializeHubSpotScript(region, portalId) {
|
|
6
7
|
if (typeof document === 'undefined')
|
|
7
8
|
return;
|
|
@@ -16,22 +17,26 @@ export function initializeHubSpotScript(region, portalId) {
|
|
|
16
17
|
document.head.appendChild(script);
|
|
17
18
|
}
|
|
18
19
|
HubSpotForm.propTypes = {
|
|
19
|
-
region: PropTypes.string
|
|
20
|
-
portalId: PropTypes.string
|
|
21
|
-
formId: PropTypes.string
|
|
20
|
+
region: PropTypes.string,
|
|
21
|
+
portalId: PropTypes.string,
|
|
22
|
+
formId: PropTypes.string,
|
|
22
23
|
target: PropTypes.string,
|
|
23
24
|
containerId: PropTypes.string,
|
|
24
25
|
};
|
|
25
26
|
export function HubSpotForm({ region, portalId, formId, target, containerId = 'hubspot-form-container' }) {
|
|
27
|
+
const config = usePixelatedConfig();
|
|
28
|
+
const finalRegion = region || config.hubspot?.region || 'na1';
|
|
29
|
+
const finalPortalId = portalId || config.hubspot?.portalId || '';
|
|
30
|
+
const finalFormId = formId || config.hubspot?.formId || '';
|
|
26
31
|
const formTarget = target || `#${containerId}`;
|
|
27
32
|
useEffect(() => {
|
|
28
33
|
const createHubspotForm = () => {
|
|
29
34
|
const win = window;
|
|
30
35
|
if (win.hbspt && win.hbspt.forms) {
|
|
31
36
|
win.hbspt.forms.create({
|
|
32
|
-
region,
|
|
33
|
-
portalId,
|
|
34
|
-
formId,
|
|
37
|
+
region: finalRegion,
|
|
38
|
+
portalId: finalPortalId,
|
|
39
|
+
formId: finalFormId,
|
|
35
40
|
target: formTarget
|
|
36
41
|
});
|
|
37
42
|
}
|
|
@@ -40,8 +45,8 @@ export function HubSpotForm({ region, portalId, formId, target, containerId = 'h
|
|
|
40
45
|
}
|
|
41
46
|
};
|
|
42
47
|
createHubspotForm();
|
|
43
|
-
}, [
|
|
44
|
-
return _jsx("div", { className: "hs-form-frame", "data-region":
|
|
48
|
+
}, [finalRegion, finalPortalId, finalFormId, formTarget]);
|
|
49
|
+
return _jsx("div", { className: "hs-form-frame", "data-region": finalRegion, "data-form-id": finalFormId, "data-portal-id": finalPortalId });
|
|
45
50
|
}
|
|
46
51
|
HubspotTrackingCode.propTypes = {
|
|
47
52
|
hubID: PropTypes.string.isRequired,
|
|
@@ -13,7 +13,10 @@ function decodeString(str) {
|
|
|
13
13
|
return textarea.value;
|
|
14
14
|
}
|
|
15
15
|
export function BlogPostList(props) {
|
|
16
|
-
const { site, count, posts: cachedPosts } = props;
|
|
16
|
+
const { site: propSite, baseURL: propBaseURL, count, posts: cachedPosts } = props;
|
|
17
|
+
const config = usePixelatedConfig();
|
|
18
|
+
const site = propSite ?? config?.wordpress?.site;
|
|
19
|
+
const baseURL = propBaseURL ?? config?.wordpress?.baseURL;
|
|
17
20
|
const [posts, setPosts] = useState(cachedPosts ?? []);
|
|
18
21
|
useEffect(() => {
|
|
19
22
|
// If posts are provided, use them directly without fetching
|
|
@@ -22,15 +25,20 @@ export function BlogPostList(props) {
|
|
|
22
25
|
setPosts(sorted);
|
|
23
26
|
return;
|
|
24
27
|
}
|
|
28
|
+
// If no site is configured, don't fetch
|
|
29
|
+
if (!site) {
|
|
30
|
+
console.warn('WordPress site not configured. Provide site prop or wordpress.site in config.');
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
25
33
|
// Otherwise, fetch from WordPress
|
|
26
34
|
ToggleLoading({ show: true });
|
|
27
35
|
(async () => {
|
|
28
|
-
const data = (await getWordPressItems({ site, count })) ?? [];
|
|
36
|
+
const data = (await getWordPressItems({ site, count, baseURL })) ?? [];
|
|
29
37
|
const sorted = data.sort((a, b) => ((a.date ?? '') < (b.date ?? '')) ? 1 : -1);
|
|
30
38
|
setPosts(sorted);
|
|
31
39
|
ToggleLoading({ show: false });
|
|
32
40
|
})();
|
|
33
|
-
}, [site, count, cachedPosts]);
|
|
41
|
+
}, [site, baseURL, count, cachedPosts]);
|
|
34
42
|
return (_jsxs(_Fragment, { children: [_jsx(Loading, {}), posts.map((post) => (_jsx(PageGridItem, { children: _jsx(BlogPostSummary, { ID: post.ID, title: post.title, date: post.date, excerpt: post.excerpt, URL: post.URL, categories: post.categories, featured_image: post.featured_image }) }, post.ID)))] }));
|
|
35
43
|
}
|
|
36
44
|
export function BlogPostSummary(props) {
|
|
@@ -7,15 +7,17 @@ const wpCategoriesPath = "/categories";
|
|
|
7
7
|
getWordPressItems.propTypes = {
|
|
8
8
|
site: PropTypes.string.isRequired,
|
|
9
9
|
count: PropTypes.number,
|
|
10
|
+
baseURL: PropTypes.string,
|
|
10
11
|
};
|
|
11
12
|
export async function getWordPressItems(props) {
|
|
13
|
+
const { baseURL = wpApiURL } = props;
|
|
12
14
|
const requested = props.count; // undefined means fetch all available
|
|
13
15
|
const posts = [];
|
|
14
16
|
let page = 1;
|
|
15
17
|
while (true) {
|
|
16
18
|
const remaining = requested ? Math.max(requested - posts.length, 0) : 100;
|
|
17
19
|
const number = Math.min(remaining || 100, 100);
|
|
18
|
-
const wpPostsURL = `${
|
|
20
|
+
const wpPostsURL = `${baseURL}${props.site}/posts?number=${number}&page=${page}`;
|
|
19
21
|
try {
|
|
20
22
|
const response = await fetch(wpPostsURL);
|
|
21
23
|
const data = await response.json();
|
|
@@ -82,9 +84,11 @@ export function getWordPressItemImages(item) {
|
|
|
82
84
|
}
|
|
83
85
|
getWordPressCategories.propTypes = {
|
|
84
86
|
site: PropTypes.string.isRequired,
|
|
87
|
+
baseURL: PropTypes.string,
|
|
85
88
|
};
|
|
86
89
|
export async function getWordPressCategories(props) {
|
|
87
|
-
const
|
|
90
|
+
const { baseURL = wpApiURL } = props;
|
|
91
|
+
const wpCategoriesURL = baseURL + props.site + wpCategoriesPath;
|
|
88
92
|
const categories = [];
|
|
89
93
|
try {
|
|
90
94
|
const response = await fetch(wpCategoriesURL);
|
|
@@ -15,9 +15,6 @@ const pixelatedConfig = {
|
|
|
15
15
|
management_access_token: "muY9LfpCt4qoXosDsnRkkoH3DAVVuUFEuB0WRKRdBUM",
|
|
16
16
|
preview_access_token: "muY9LfpCt4qoXosDsnRkkoH3DAVVuUFEuB0WRKRdBUM",
|
|
17
17
|
},
|
|
18
|
-
featureFlags: {
|
|
19
|
-
enableNewGrid: true,
|
|
20
|
-
},
|
|
21
18
|
ebay: {
|
|
22
19
|
proxyURL: 'https://proxy.provier.com/proxy?url=',
|
|
23
20
|
appId: 'your-ebay-client-id',
|
|
@@ -33,6 +30,9 @@ const pixelatedConfig = {
|
|
|
33
30
|
baseItemURL: 'https://api.ebay.com/buy/browse/v1/item',
|
|
34
31
|
qsItemURL: '/v1|295959752403|0?fieldgroups=PRODUCT,ADDITIONAL_SELLER_DETAILS',
|
|
35
32
|
},
|
|
33
|
+
featureFlags: {
|
|
34
|
+
enableNewGrid: true,
|
|
35
|
+
},
|
|
36
36
|
flickr: {
|
|
37
37
|
baseURL: 'https://api.flickr.com/services/rest/?',
|
|
38
38
|
urlProps: {
|
|
@@ -56,6 +56,7 @@ const pixelatedConfig = {
|
|
|
56
56
|
"id": "G-XXXXXXX"
|
|
57
57
|
},
|
|
58
58
|
hubspot: {
|
|
59
|
+
region: 'na1',
|
|
59
60
|
portalId: 'your-hubspot-portal-id',
|
|
60
61
|
formId: 'your-default-form-id',
|
|
61
62
|
trackingCode: 'UA-XXXXXXXXX-X',
|
|
@@ -66,5 +67,12 @@ const pixelatedConfig = {
|
|
|
66
67
|
payPalApiKey: "your-paypal-client-id",
|
|
67
68
|
payPalSecret: "your-paypal-client-secret"
|
|
68
69
|
},
|
|
70
|
+
proxy: {
|
|
71
|
+
proxyURL: 'https://proxy.pixelated.tech/prod/proxy?url='
|
|
72
|
+
},
|
|
73
|
+
wordpress: {
|
|
74
|
+
baseURL: 'https://public-api.wordpress.com/rest/v1/sites/',
|
|
75
|
+
site: 'your-blog.wordpress.com'
|
|
76
|
+
},
|
|
69
77
|
};
|
|
70
78
|
export default pixelatedConfig;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
// import { useEffect } from "react";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
|
+
import { usePixelatedConfig } from "../config/config.client";
|
|
5
6
|
function isGA() {
|
|
6
7
|
const hasGtag = typeof window.gtag === 'function';
|
|
7
8
|
const hasDataLayer = typeof window.dataLayer !== 'undefined' && Array.isArray(window.dataLayer);
|
|
@@ -11,9 +12,16 @@ function isGA() {
|
|
|
11
12
|
return (hasGtag || hasDataLayer || hasGAScript || hasGAScriptID || hasGAInitScriptID);
|
|
12
13
|
}
|
|
13
14
|
GoogleAnalytics.propTypes = {
|
|
14
|
-
id: PropTypes.string
|
|
15
|
+
id: PropTypes.string,
|
|
15
16
|
};
|
|
16
17
|
export function GoogleAnalytics(props) {
|
|
18
|
+
const config = usePixelatedConfig();
|
|
19
|
+
const id = props.id || config?.googleAnalytics?.id;
|
|
20
|
+
const adId = config?.googleAnalytics?.adId;
|
|
21
|
+
if (!id) {
|
|
22
|
+
console.warn('Google Analytics ID not provided. Set id prop or googleAnalytics.id in config.');
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
17
25
|
if (typeof window === 'undefined') {
|
|
18
26
|
return;
|
|
19
27
|
}
|
|
@@ -23,7 +31,7 @@ export function GoogleAnalytics(props) {
|
|
|
23
31
|
if (isGA()) {
|
|
24
32
|
return;
|
|
25
33
|
}
|
|
26
|
-
const gaSRC = "https://www.googletagmanager.com/gtag/js?id=" +
|
|
34
|
+
const gaSRC = "https://www.googletagmanager.com/gtag/js?id=" + id;
|
|
27
35
|
// useEffect(() => {
|
|
28
36
|
// INIT GA TAG TO PAGE
|
|
29
37
|
const gaInit = document.createElement("script");
|
|
@@ -34,7 +42,8 @@ export function GoogleAnalytics(props) {
|
|
|
34
42
|
window.dataLayer = window.dataLayer || [];
|
|
35
43
|
window.gtag = function gtag(){ window.dataLayer.push(arguments); }
|
|
36
44
|
window.gtag('js', new Date());
|
|
37
|
-
window.gtag('config', '${
|
|
45
|
+
window.gtag('config', '${id}');
|
|
46
|
+
${adId ? `window.gtag('config', '${adId}');` : ''}
|
|
38
47
|
`;
|
|
39
48
|
document.head.appendChild(gaInit);
|
|
40
49
|
// INSTALL GA SCRIPT
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import PropTypes, { InferProps } from 'prop-types';
|
|
2
2
|
import type { CarouselCardType } from '../carousel/carousel';
|
|
3
|
+
import type { FlickrConfig } from '../config/config.types';
|
|
3
4
|
export declare function GetFlickrData(props: {
|
|
4
|
-
flickr
|
|
5
|
+
flickr?: any;
|
|
6
|
+
config?: FlickrConfig;
|
|
5
7
|
}): Promise<any>;
|
|
6
8
|
export declare namespace GetFlickrData {
|
|
7
9
|
var PropTypes: {
|
|
8
|
-
flickr: PropTypes.
|
|
10
|
+
flickr: PropTypes.Requireable<object>;
|
|
11
|
+
config: PropTypes.Requireable<object>;
|
|
9
12
|
};
|
|
10
13
|
}
|
|
11
14
|
export type GenerateFlickrCardsType = InferProps<typeof GenerateFlickrCards.propTypes>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flickr.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/flickr.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"flickr.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/flickr.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAsE3D,wBAAgB,aAAa,CAAE,KAAK,EAAE;IAAE,MAAM,CAAC,EAAE,GAAG,CAAC;IAAC,MAAM,CAAC,EAAE,YAAY,CAAA;CAAE,gBAmD5E;yBAnDe,aAAa;;;;;;AA2D7B,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,SAAS,CAAC,CAAC;AACvF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,uBAAuB;;;;;;;gBAejE;yBAfe,mBAAmB;;;;;;AA8BnC,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC;AAC3E,wBAAgB,aAAa,CAAE,KAAK,EAAE,iBAAiB,2CA0CtD;yBA1Ce,aAAa"}
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
import PropTypes, { InferProps } from 'prop-types';
|
|
2
|
+
import './google.reviews.css';
|
|
2
3
|
export type GoogleReviewsCardType = InferProps<typeof GoogleReviewsCard.propTypes>;
|
|
3
4
|
export declare function GoogleReviewsCard(props: {
|
|
4
5
|
placeId: string;
|
|
5
6
|
language?: string;
|
|
6
7
|
maxReviews?: number;
|
|
7
8
|
proxyBase?: string;
|
|
9
|
+
apiKey?: string;
|
|
8
10
|
}): import("react/jsx-runtime").JSX.Element;
|
|
9
11
|
export declare namespace GoogleReviewsCard {
|
|
10
12
|
var propTypes: {
|
|
11
|
-
|
|
13
|
+
placeId: PropTypes.Validator<string>;
|
|
12
14
|
language: PropTypes.Requireable<string>;
|
|
13
15
|
maxReviews: PropTypes.Requireable<number>;
|
|
14
16
|
proxyBase: PropTypes.Requireable<string>;
|
|
17
|
+
apiKey: PropTypes.Requireable<string>;
|
|
15
18
|
};
|
|
16
19
|
}
|
|
17
20
|
//# sourceMappingURL=google.reviews.components.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google.reviews.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/google.reviews.components.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"google.reviews.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/google.reviews.components.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,sBAAsB,CAAC;AAW9B,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACnF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,2CA+FA;yBArGe,iBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google.reviews.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/google.reviews.functions.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,MAAM,EAAE;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"google.reviews.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/google.reviews.functions.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,MAAM,EAAE;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC;IAAE,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC,CAuBnE"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import PropTypes, { InferProps } from 'prop-types';
|
|
2
|
+
import './gravatar.css';
|
|
2
3
|
export type GravatarCardType = InferProps<typeof GravatarCard.propTypes>;
|
|
3
4
|
export declare function GravatarCard(props: GravatarCardType): import("react/jsx-runtime").JSX.Element;
|
|
4
5
|
export declare namespace GravatarCard {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gravatar.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/gravatar.components.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"gravatar.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/gravatar.components.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAInD,OAAO,gBAAgB,CAAC;AAwFxB,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;AACzE,wBAAgB,YAAY,CAAC,KAAK,EAAE,gBAAgB,2CAoInD;yBApIe,YAAY"}
|
|
@@ -4,9 +4,9 @@ type HubSpotFormType = InferProps<typeof HubSpotForm.propTypes>;
|
|
|
4
4
|
export declare function HubSpotForm({ region, portalId, formId, target, containerId }: HubSpotFormType): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
export declare namespace HubSpotForm {
|
|
6
6
|
var propTypes: {
|
|
7
|
-
region: PropTypes.
|
|
8
|
-
portalId: PropTypes.
|
|
9
|
-
formId: PropTypes.
|
|
7
|
+
region: PropTypes.Requireable<string>;
|
|
8
|
+
portalId: PropTypes.Requireable<string>;
|
|
9
|
+
formId: PropTypes.Requireable<string>;
|
|
10
10
|
target: PropTypes.Requireable<string>;
|
|
11
11
|
containerId: PropTypes.Requireable<string>;
|
|
12
12
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hubspot.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/hubspot.components.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"hubspot.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/hubspot.components.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAMnD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAUvE;AASD,KAAK,eAAe,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;AAChE,wBAAgB,WAAW,CAAC,EAC3B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAsC,EACxE,EAAE,eAAe,2CA+BjB;yBAjCe,WAAW;;;;;;;;;AAyC3B,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,SAAS,CAAC,CAAC;AACvF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,uBAAuB,2CAQjE;yBARe,mBAAmB;;;;;AAmBnC,MAAM,MAAM,6BAA6B,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,SAAS,CAAC,CAAC;AACnG,wBAAsB,yBAAyB,CAAC,KAAK,EAAE,6BAA6B,gBAmBnF;yBAnBqB,yBAAyB"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { BlogPostType } from './wordpress.functions';
|
|
2
2
|
import "./wordpress.css";
|
|
3
3
|
export declare function BlogPostList(props: {
|
|
4
|
-
site
|
|
4
|
+
site?: string;
|
|
5
|
+
baseURL?: string;
|
|
5
6
|
count?: number;
|
|
6
7
|
posts?: BlogPostType[];
|
|
7
8
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wordpress.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/wordpress.components.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAI1D,OAAO,iBAAiB,CAAC;AAWzB,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"wordpress.components.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/wordpress.components.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAI1D,OAAO,iBAAiB,CAAC;AAWzB,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAA;CAAE,2CAkD9G;AAGD,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,2CA+ClD;AAID,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,kDA0BjE"}
|
|
@@ -19,11 +19,13 @@ export type getWordPressItemsType = InferProps<typeof getWordPressItems.propType
|
|
|
19
19
|
export declare function getWordPressItems(props: {
|
|
20
20
|
site: string;
|
|
21
21
|
count?: number;
|
|
22
|
+
baseURL?: string;
|
|
22
23
|
}): Promise<BlogPostType[] | undefined>;
|
|
23
24
|
export declare namespace getWordPressItems {
|
|
24
25
|
var propTypes: {
|
|
25
26
|
site: PropTypes.Validator<string>;
|
|
26
27
|
count: PropTypes.Requireable<number>;
|
|
28
|
+
baseURL: PropTypes.Requireable<string>;
|
|
27
29
|
};
|
|
28
30
|
}
|
|
29
31
|
export type WordPressSitemapImage = {
|
|
@@ -50,10 +52,12 @@ export type BlogPostCategoryType = {
|
|
|
50
52
|
export type getWordPressCategoriesType = InferProps<typeof getWordPressCategories.propTypes>;
|
|
51
53
|
export declare function getWordPressCategories(props: {
|
|
52
54
|
site: string;
|
|
55
|
+
baseURL?: string;
|
|
53
56
|
}): Promise<any[] | undefined>;
|
|
54
57
|
export declare namespace getWordPressCategories {
|
|
55
58
|
var propTypes: {
|
|
56
59
|
site: PropTypes.Validator<string>;
|
|
60
|
+
baseURL: PropTypes.Requireable<string>;
|
|
57
61
|
};
|
|
58
62
|
}
|
|
59
63
|
//# sourceMappingURL=wordpress.functions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wordpress.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/wordpress.functions.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAWnD,MAAM,MAAM,YAAY,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE;QAChB,GAAG,EAAE,MAAM,CAAC;KACZ,CAAA;IACD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC,CAAC;
|
|
1
|
+
{"version":3,"file":"wordpress.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/wordpress.functions.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAWnD,MAAM,MAAM,YAAY,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE;QAChB,GAAG,EAAE,MAAM,CAAC;KACZ,CAAA;IACD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC,CAAC;AAMF,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACnF,wBAAsB,iBAAiB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,uCA2BhG;yBA3BqB,iBAAiB;;;;;;;AAiCvC,MAAM,MAAM,qBAAqB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAIF,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC7F,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,qBAAqB,EAAE,CAuClF;yBAvCe,sBAAsB;;;;;AA8CtC,MAAM,MAAM,oBAAoB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CACjB,CAAC;AAKF,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC7F,wBAAsB,sBAAsB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,8BAerF;yBAfqB,sBAAsB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.example.d.ts","sourceRoot":"","sources":["../../../../src/components/config/config.example.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAA,MAAM,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"config.example.d.ts","sourceRoot":"","sources":["../../../../src/components/config/config.example.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAA,MAAM,eAAe,EAAE,eA0EtB,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -55,6 +55,7 @@ export interface GoogleSearchConsoleConfig {
|
|
|
55
55
|
id: string;
|
|
56
56
|
}
|
|
57
57
|
export interface HubspotConfig {
|
|
58
|
+
region?: string;
|
|
58
59
|
portalId?: string;
|
|
59
60
|
formId?: string;
|
|
60
61
|
trackingCode?: string;
|
|
@@ -66,8 +67,12 @@ export interface PaypalConfig {
|
|
|
66
67
|
payPalApiKey: string;
|
|
67
68
|
payPalSecret: string;
|
|
68
69
|
}
|
|
70
|
+
export interface ProxyConfig {
|
|
71
|
+
proxyURL: string;
|
|
72
|
+
}
|
|
69
73
|
export interface WordpressConfig {
|
|
70
|
-
|
|
74
|
+
baseURL: string;
|
|
75
|
+
site: string;
|
|
71
76
|
}
|
|
72
77
|
export interface PixelatedConfig {
|
|
73
78
|
cloudinary?: CloudinaryConfig;
|
|
@@ -79,6 +84,7 @@ export interface PixelatedConfig {
|
|
|
79
84
|
googleSearchConsole?: GoogleSearchConsoleConfig;
|
|
80
85
|
hubspot?: HubspotConfig;
|
|
81
86
|
paypal?: PaypalConfig;
|
|
87
|
+
proxy?: ProxyConfig;
|
|
82
88
|
wordpress?: WordpressConfig;
|
|
83
89
|
}
|
|
84
90
|
//# sourceMappingURL=config.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../../src/components/config/config.types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QACT,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,cAAc,CAAC,EAAE,MAAM,CAAC;KACxB,CAAA;CACD;AAED,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAAyB;IACzC,EAAE,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC/B,
|
|
1
|
+
{"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../../src/components/config/config.types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QACT,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,cAAc,CAAC,EAAE,MAAM,CAAC;KACxB,CAAA;CACD;AAED,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAAyB;IACzC,EAAE,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,aAAa;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC3B,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,eAAe;IAC/B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;IAChD,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,eAAe,CAAC;CAC5B"}
|
|
@@ -36,7 +36,7 @@ export declare namespace PageSection {
|
|
|
36
36
|
tablet: PropTypes.Requireable<number>;
|
|
37
37
|
desktop: PropTypes.Requireable<number>;
|
|
38
38
|
}>>;
|
|
39
|
-
direction: PropTypes.Requireable<"row" | "column" | "
|
|
39
|
+
direction: PropTypes.Requireable<"row" | "column" | "row-reverse" | "column-reverse">;
|
|
40
40
|
wrap: PropTypes.Requireable<"nowrap" | "wrap" | "wrap-reverse">;
|
|
41
41
|
justifyContent: PropTypes.Requireable<"center" | "end" | "start" | "space-between" | "space-around" | "space-evenly">;
|
|
42
42
|
alignItems: PropTypes.Requireable<"center" | "baseline" | "end" | "start" | "stretch">;
|
|
@@ -6,10 +6,10 @@ declare global {
|
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
export type GoogleAnalyticsType = InferProps<typeof GoogleAnalytics.propTypes>;
|
|
9
|
-
export declare function GoogleAnalytics(props: GoogleAnalyticsType): import("react/jsx-runtime").JSX.Element | undefined;
|
|
9
|
+
export declare function GoogleAnalytics(props: GoogleAnalyticsType): import("react/jsx-runtime").JSX.Element | null | undefined;
|
|
10
10
|
export declare namespace GoogleAnalytics {
|
|
11
11
|
var propTypes: {
|
|
12
|
-
id: PropTypes.
|
|
12
|
+
id: PropTypes.Requireable<string>;
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
export type GoogleAnalyticsEventType = InferProps<typeof GoogleAnalyticsEvent.propTypes>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"googleanalytics.d.ts","sourceRoot":"","sources":["../../../../src/components/seo/googleanalytics.tsx"],"names":[],"mappings":"AAIA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"googleanalytics.d.ts","sourceRoot":"","sources":["../../../../src/components/seo/googleanalytics.tsx"],"names":[],"mappings":"AAIA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAanD,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;KAChC;CACD;AAiBD,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,SAAS,CAAC,CAAC;AAC/E,wBAAgB,eAAe,CAAE,KAAK,EAAE,mBAAmB,8DAuC1D;yBAvCe,eAAe;;;;;AA+C/B,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,SAAS,CAAC,CAAC;AACzF,wBAAgB,oBAAoB,CAAE,KAAK,EAAE,wBAAwB,oBAYpE;yBAZe,oBAAoB"}
|
|
@@ -2,10 +2,21 @@ import { GoogleReviewsCard } from '@/components/cms/google.reviews.components';
|
|
|
2
2
|
declare const _default: {
|
|
3
3
|
title: string;
|
|
4
4
|
component: typeof GoogleReviewsCard;
|
|
5
|
+
parameters: {
|
|
6
|
+
docs: {
|
|
7
|
+
description: {
|
|
8
|
+
component: string;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
};
|
|
5
12
|
};
|
|
6
13
|
export default _default;
|
|
7
14
|
export declare const ReviewsByPlaceId: {
|
|
8
15
|
(): import("react/jsx-runtime").JSX.Element;
|
|
9
16
|
storyName: string;
|
|
10
17
|
};
|
|
18
|
+
export declare const ReviewsWithoutProxy: {
|
|
19
|
+
(): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
storyName: string;
|
|
21
|
+
};
|
|
11
22
|
//# sourceMappingURL=google.reviews.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google.reviews.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/cms/google.reviews.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC
|
|
1
|
+
{"version":3,"file":"google.reviews.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/cms/google.reviews.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;;;;;;;;;;;;AAE/E,wBAmCE;AAEF,eAAO,MAAM,gBAAgB;;;CAa5B,CAAC;AAGF,eAAO,MAAM,mBAAmB;;;CAa/B,CAAC"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
export function WordpressBlogPostSummary(): import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
export function WordpressBlogPostList(): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
export namespace WordpressBlogPostList {
|
|
4
|
+
let storyName: string;
|
|
5
|
+
}
|
|
2
6
|
declare namespace _default {
|
|
3
7
|
export let title: string;
|
|
4
8
|
export { BlogPostSummary as component };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wordpress.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/cms/wordpress.stories.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wordpress.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/cms/wordpress.stories.js"],"names":[],"mappings":"AA8BA,oFAsCC;AAED,iFAEC;;;;;;;;;;gCAvE6C,uCAAuC"}
|
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
declare namespace _default {
|
|
2
2
|
export let title: string;
|
|
3
3
|
export { GoogleAnalytics as component };
|
|
4
|
+
export let decorators: ((Story: any) => import("react/jsx-runtime").JSX.Element)[];
|
|
4
5
|
}
|
|
5
6
|
export default _default;
|
|
6
|
-
export namespace
|
|
7
|
-
|
|
7
|
+
export namespace Google_Analytics_Config {
|
|
8
|
+
let args: {};
|
|
9
|
+
}
|
|
10
|
+
export namespace Google_Analytics_Props {
|
|
11
|
+
export namespace args_1 {
|
|
8
12
|
let id: string;
|
|
9
13
|
}
|
|
14
|
+
export { args_1 as args };
|
|
15
|
+
let decorators_1: ((Story: any) => import("react/jsx-runtime").JSX.Element)[];
|
|
16
|
+
export { decorators_1 as decorators };
|
|
10
17
|
}
|
|
11
18
|
import { GoogleAnalytics } from '@/components/seo/googleanalytics';
|
|
12
19
|
//# sourceMappingURL=seo.googleanalytics.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seo.googleanalytics.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/seo/seo.googleanalytics.stories.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"seo.googleanalytics.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/seo/seo.googleanalytics.stories.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;gCAAgC,kCAAkC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google.reviews.test.d.ts","sourceRoot":"","sources":["../../../src/tests/google.reviews.test.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pixelated-tech/components",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.10",
|
|
4
4
|
"private": false,
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Pixelated Technologies",
|
|
@@ -91,19 +91,19 @@
|
|
|
91
91
|
"@eslint/markdown": "^7.5.1",
|
|
92
92
|
"@storybook/addon-webpack5-compiler-babel": "^4.0.0",
|
|
93
93
|
"@storybook/preset-scss": "^1.0.3",
|
|
94
|
-
"@storybook/react-webpack5": "^10.1.
|
|
94
|
+
"@storybook/react-webpack5": "^10.1.9",
|
|
95
95
|
"@testing-library/dom": "^10.4.1",
|
|
96
|
-
"@testing-library/react": "^16.3.
|
|
96
|
+
"@testing-library/react": "^16.3.1",
|
|
97
97
|
"@testing-library/user-event": "^14.6.1",
|
|
98
98
|
"@types/md5": "^2.3.6",
|
|
99
99
|
"@types/node": "^25.0.2",
|
|
100
100
|
"@types/prop-types": "^15.7.15",
|
|
101
101
|
"@types/react": "^19.2.7",
|
|
102
102
|
"@types/react-dom": "^19.2.3",
|
|
103
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
103
|
+
"@typescript-eslint/eslint-plugin": "^8.50.0",
|
|
104
104
|
"@vitejs/plugin-react": "^5.1.2",
|
|
105
|
-
"@vitest/coverage-v8": "^4.0.
|
|
106
|
-
"@vitest/ui": "^4.0.
|
|
105
|
+
"@vitest/coverage-v8": "^4.0.16",
|
|
106
|
+
"@vitest/ui": "^4.0.16",
|
|
107
107
|
"ajv": "^8.17.1",
|
|
108
108
|
"ajv-keywords": "^5.1.0",
|
|
109
109
|
"babel-loader": "^10.0.0",
|
|
@@ -117,7 +117,7 @@
|
|
|
117
117
|
"eslint-plugin-n": "^17.23.1",
|
|
118
118
|
"eslint-plugin-promise": "^7.2.1",
|
|
119
119
|
"eslint-plugin-react": "^7.37.4",
|
|
120
|
-
"eslint-plugin-storybook": "^10.1.
|
|
120
|
+
"eslint-plugin-storybook": "^10.1.9",
|
|
121
121
|
"file-loader": "^6.2.0",
|
|
122
122
|
"happy-dom": "^20.0.11",
|
|
123
123
|
"jsdom": "^27.3.0",
|
|
@@ -129,15 +129,15 @@
|
|
|
129
129
|
"react": "^19.2.3",
|
|
130
130
|
"react-dom": "^19.2.3",
|
|
131
131
|
"react-test-renderer": "^19.2.3",
|
|
132
|
-
"sass": "^1.
|
|
132
|
+
"sass": "^1.97.0",
|
|
133
133
|
"sass-loader": "^16.0.6",
|
|
134
|
-
"storybook": "^10.1.
|
|
134
|
+
"storybook": "^10.1.9",
|
|
135
135
|
"style-loader": "^4.0.0",
|
|
136
136
|
"ts-loader": "^9.5.4",
|
|
137
137
|
"typescript": "^5.9.3",
|
|
138
138
|
"url-loader": "^4.1.1",
|
|
139
|
-
"vitest": "^4.0.
|
|
140
|
-
"webpack": "^5.
|
|
139
|
+
"vitest": "^4.0.16",
|
|
140
|
+
"webpack": "^5.104.0",
|
|
141
141
|
"webpack-cli": "^6.0.1",
|
|
142
142
|
"webpack-dev-server": "^5.2.2",
|
|
143
143
|
"webpack-node-externals": "^3.0.0"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"google-reviews.test.d.ts","sourceRoot":"","sources":["../../../src/tests/google-reviews.test.tsx"],"names":[],"mappings":""}
|