@se-studio/core-ui 1.0.40 → 1.0.42
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 +2 -0
- package/dist/analytics/adapters/ConsentAwareAdapter.d.ts +20 -0
- package/dist/analytics/adapters/ConsentAwareAdapter.d.ts.map +1 -0
- package/dist/analytics/adapters/ConsentAwareAdapter.js +35 -0
- package/dist/analytics/adapters/ConsentAwareAdapter.js.map +1 -0
- package/dist/analytics/adapters/GoogleTagManagerAdapter.d.ts +52 -0
- package/dist/analytics/adapters/GoogleTagManagerAdapter.d.ts.map +1 -0
- package/dist/analytics/adapters/GoogleTagManagerAdapter.js +120 -0
- package/dist/analytics/adapters/GoogleTagManagerAdapter.js.map +1 -0
- package/dist/analytics/adapters/index.d.ts +2 -0
- package/dist/analytics/adapters/index.d.ts.map +1 -1
- package/dist/analytics/adapters/index.js +2 -0
- package/dist/analytics/adapters/index.js.map +1 -1
- package/dist/components/ErrorBoundary.d.ts +19 -0
- package/dist/components/ErrorBoundary.d.ts.map +1 -0
- package/dist/components/ErrorBoundary.js +32 -0
- package/dist/components/ErrorBoundary.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/utils/errorMonitoring.d.ts +16 -0
- package/dist/utils/errorMonitoring.d.ts.map +1 -0
- package/dist/utils/errorMonitoring.js +26 -0
- package/dist/utils/errorMonitoring.js.map +1 -0
- package/dist/utils/structuredDataUtils.d.ts +1 -1
- package/dist/utils/structuredDataUtils.d.ts.map +1 -1
- package/dist/utils/structuredDataUtils.js +2 -1
- package/dist/utils/structuredDataUtils.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -429,6 +429,8 @@ Check out the [example-pointme app](../../apps/example-pointme) for a complete i
|
|
|
429
429
|
## Learn More
|
|
430
430
|
|
|
431
431
|
- [CMS Infrastructure Guide](./CMS_INFRASTRUCTURE.md) - Comprehensive guide to the CMS system
|
|
432
|
+
- [Analytics Integration Guide](./ANALYTICS.md) - Analytics and GTM setup
|
|
433
|
+
- [Consent Management Guide](./CONSENT.md) - GDPR/CCPA compliance setup
|
|
432
434
|
- [Core Data Types](../core-data-types/README.md) - Shared TypeScript types
|
|
433
435
|
- [Contentful REST API](../contentful-rest-api/README.md) - API client for Contentful
|
|
434
436
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AnalyticsAdapter, ClickTrackingProperties, PageTrackingProperties } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Adapter that wraps another analytics adapter and checks for consent before tracking.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```tsx
|
|
7
|
+
* const gtmAdapter = new GoogleTagManagerAdapter(...);
|
|
8
|
+
* const consentAwareAdapter = new ConsentAwareAdapter(gtmAdapter, 'google-tag-manager');
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
export declare class ConsentAwareAdapter implements AnalyticsAdapter {
|
|
12
|
+
private adapter;
|
|
13
|
+
private consentName;
|
|
14
|
+
private getConsent;
|
|
15
|
+
constructor(adapter: AnalyticsAdapter, consentName: string, getConsent: (name: string) => boolean);
|
|
16
|
+
trackEvent(event: string, properties: Record<string, unknown>): void;
|
|
17
|
+
trackPage(url: string, properties: PageTrackingProperties): void;
|
|
18
|
+
trackClick(properties: ClickTrackingProperties): void;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ConsentAwareAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsentAwareAdapter.d.ts","sourceRoot":"","sources":["../../../src/analytics/adapters/ConsentAwareAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElG;;;;;;;;GAQG;AACH,qBAAa,mBAAoB,YAAW,gBAAgB;IAExD,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,UAAU;gBAFV,OAAO,EAAE,gBAAgB,EACzB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO;IAG/C,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAMpE,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,GAAG,IAAI;IAMhE,UAAU,CAAC,UAAU,EAAE,uBAAuB,GAAG,IAAI;CAKtD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapter that wraps another analytics adapter and checks for consent before tracking.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```tsx
|
|
6
|
+
* const gtmAdapter = new GoogleTagManagerAdapter(...);
|
|
7
|
+
* const consentAwareAdapter = new ConsentAwareAdapter(gtmAdapter, 'google-tag-manager');
|
|
8
|
+
* ```
|
|
9
|
+
*/
|
|
10
|
+
export class ConsentAwareAdapter {
|
|
11
|
+
adapter;
|
|
12
|
+
consentName;
|
|
13
|
+
getConsent;
|
|
14
|
+
constructor(adapter, consentName, getConsent) {
|
|
15
|
+
this.adapter = adapter;
|
|
16
|
+
this.consentName = consentName;
|
|
17
|
+
this.getConsent = getConsent;
|
|
18
|
+
}
|
|
19
|
+
trackEvent(event, properties) {
|
|
20
|
+
if (this.getConsent(this.consentName)) {
|
|
21
|
+
this.adapter.trackEvent(event, properties);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
trackPage(url, properties) {
|
|
25
|
+
if (this.getConsent(this.consentName)) {
|
|
26
|
+
this.adapter.trackPage(url, properties);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
trackClick(properties) {
|
|
30
|
+
if (this.getConsent(this.consentName)) {
|
|
31
|
+
this.adapter.trackClick(properties);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=ConsentAwareAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsentAwareAdapter.js","sourceRoot":"","sources":["../../../src/analytics/adapters/ConsentAwareAdapter.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,OAAO,mBAAmB;IAEpB;IACA;IACA;IAHV,YACU,OAAyB,EACzB,WAAmB,EACnB,UAAqC;QAFrC,YAAO,GAAP,OAAO,CAAkB;QACzB,gBAAW,GAAX,WAAW,CAAQ;QACnB,eAAU,GAAV,UAAU,CAA2B;IAC5C,CAAC;IAEJ,UAAU,CAAC,KAAa,EAAE,UAAmC;QAC3D,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,SAAS,CAAC,GAAW,EAAE,UAAkC;QACvD,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,UAAU,CAAC,UAAmC;QAC5C,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { AnalyticsAdapter, ClickTrackingProperties, PageTrackingProperties } from '../types';
|
|
2
|
+
declare global {
|
|
3
|
+
interface Window {
|
|
4
|
+
dataLayer: unknown[];
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Consent state for GTM Consent Mode v2
|
|
9
|
+
*/
|
|
10
|
+
export interface ConsentState {
|
|
11
|
+
/** Controls analytics_storage */
|
|
12
|
+
analytics?: boolean;
|
|
13
|
+
/** Controls ad_storage, ad_user_data, ad_personalization */
|
|
14
|
+
advertising?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface GoogleTagManagerConfig {
|
|
17
|
+
/**
|
|
18
|
+
* GTM Container ID (e.g., GTM-XXXXXXX)
|
|
19
|
+
*/
|
|
20
|
+
containerId?: string;
|
|
21
|
+
/**
|
|
22
|
+
* GA4 Measurement ID (e.g., G-XXXXXXXXXX)
|
|
23
|
+
* If provided, it will be initialized via gtag.js if GTM is not used,
|
|
24
|
+
* or can be used alongside GTM if needed.
|
|
25
|
+
*/
|
|
26
|
+
measurementId?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare class GoogleTagManagerAdapter implements AnalyticsAdapter {
|
|
29
|
+
private initialized;
|
|
30
|
+
private config;
|
|
31
|
+
constructor(config: GoogleTagManagerConfig);
|
|
32
|
+
/**
|
|
33
|
+
* Push gtag commands to dataLayer
|
|
34
|
+
*/
|
|
35
|
+
private gtag;
|
|
36
|
+
/**
|
|
37
|
+
* Initialize consent mode with all consent types granted by default
|
|
38
|
+
*/
|
|
39
|
+
private initializeConsentMode;
|
|
40
|
+
private initialize;
|
|
41
|
+
/**
|
|
42
|
+
* Update consent state for specific purposes.
|
|
43
|
+
* Call this when user grants or revokes consent.
|
|
44
|
+
*
|
|
45
|
+
* @param consent - Object with analytics and/or advertising consent state
|
|
46
|
+
*/
|
|
47
|
+
updateConsent(consent: ConsentState): void;
|
|
48
|
+
trackEvent(event: string, properties: Record<string, unknown>): void;
|
|
49
|
+
trackPage(url: string, properties: PageTrackingProperties): void;
|
|
50
|
+
trackClick(properties: ClickTrackingProperties): void;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=GoogleTagManagerAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoogleTagManagerAdapter.d.ts","sourceRoot":"","sources":["../../../src/analytics/adapters/GoogleTagManagerAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElG,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,SAAS,EAAE,OAAO,EAAE,CAAC;KACtB;CACF;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,iCAAiC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,uBAAwB,YAAW,gBAAgB;IAC9D,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAyB;gBAE3B,MAAM,EAAE,sBAAsB;IAK1C;;OAEG;IACH,OAAO,CAAC,IAAI;IAMZ;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,UAAU;IAqClB;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,YAAY;IAkBnC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAapE,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,GAAG,IAAI;IAiBhE,UAAU,CAAC,UAAU,EAAE,uBAAuB,GAAG,IAAI;CAYtD"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
export class GoogleTagManagerAdapter {
|
|
3
|
+
initialized = false;
|
|
4
|
+
config;
|
|
5
|
+
constructor(config) {
|
|
6
|
+
this.config = config;
|
|
7
|
+
this.initialize();
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Push gtag commands to dataLayer
|
|
11
|
+
*/
|
|
12
|
+
gtag(...args) {
|
|
13
|
+
if (typeof window === 'undefined')
|
|
14
|
+
return;
|
|
15
|
+
window.dataLayer = window.dataLayer || [];
|
|
16
|
+
window.dataLayer.push(args);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Initialize consent mode with all consent types granted by default
|
|
20
|
+
*/
|
|
21
|
+
initializeConsentMode() {
|
|
22
|
+
this.gtag('consent', 'default', {
|
|
23
|
+
analytics_storage: 'granted',
|
|
24
|
+
ad_storage: 'granted',
|
|
25
|
+
ad_user_data: 'granted',
|
|
26
|
+
ad_personalization: 'granted',
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
initialize() {
|
|
30
|
+
if (typeof window === 'undefined' || this.initialized)
|
|
31
|
+
return;
|
|
32
|
+
const { containerId, measurementId } = this.config;
|
|
33
|
+
if (!containerId && !measurementId) {
|
|
34
|
+
console.warn('[GTM Adapter] No container ID or measurement ID provided');
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
// Initialize dataLayer
|
|
38
|
+
window.dataLayer = window.dataLayer || [];
|
|
39
|
+
// IMPORTANT: Initialize consent BEFORE loading GTM
|
|
40
|
+
this.initializeConsentMode();
|
|
41
|
+
if (containerId) {
|
|
42
|
+
// Load GTM
|
|
43
|
+
window.dataLayer.push({ 'gtm.start': Date.now(), event: 'gtm.js' });
|
|
44
|
+
const script = document.createElement('script');
|
|
45
|
+
script.async = true;
|
|
46
|
+
script.src = `https://www.googletagmanager.com/gtm.js?id=${containerId}`;
|
|
47
|
+
document.head.appendChild(script);
|
|
48
|
+
}
|
|
49
|
+
else if (measurementId) {
|
|
50
|
+
// Load GA4 directly (gtag.js)
|
|
51
|
+
const script = document.createElement('script');
|
|
52
|
+
script.async = true;
|
|
53
|
+
script.src = `https://www.googletagmanager.com/gtag/js?id=${measurementId}`;
|
|
54
|
+
document.head.appendChild(script);
|
|
55
|
+
this.gtag('js', new Date());
|
|
56
|
+
this.gtag('config', measurementId);
|
|
57
|
+
}
|
|
58
|
+
this.initialized = true;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Update consent state for specific purposes.
|
|
62
|
+
* Call this when user grants or revokes consent.
|
|
63
|
+
*
|
|
64
|
+
* @param consent - Object with analytics and/or advertising consent state
|
|
65
|
+
*/
|
|
66
|
+
updateConsent(consent) {
|
|
67
|
+
if (typeof window === 'undefined')
|
|
68
|
+
return;
|
|
69
|
+
if (consent.analytics !== undefined) {
|
|
70
|
+
this.gtag('consent', 'update', {
|
|
71
|
+
analytics_storage: consent.analytics ? 'granted' : 'denied',
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
if (consent.advertising !== undefined) {
|
|
75
|
+
this.gtag('consent', 'update', {
|
|
76
|
+
ad_storage: consent.advertising ? 'granted' : 'denied',
|
|
77
|
+
ad_user_data: consent.advertising ? 'granted' : 'denied',
|
|
78
|
+
ad_personalization: consent.advertising ? 'granted' : 'denied',
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
trackEvent(event, properties) {
|
|
83
|
+
if (typeof window === 'undefined')
|
|
84
|
+
return;
|
|
85
|
+
const dataLayer = window.dataLayer;
|
|
86
|
+
if (dataLayer) {
|
|
87
|
+
dataLayer.push({
|
|
88
|
+
event,
|
|
89
|
+
...properties,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
trackPage(url, properties) {
|
|
94
|
+
if (typeof window === 'undefined')
|
|
95
|
+
return;
|
|
96
|
+
const dataLayer = window.dataLayer;
|
|
97
|
+
if (dataLayer) {
|
|
98
|
+
dataLayer.push({
|
|
99
|
+
event: 'page_view',
|
|
100
|
+
page_location: url,
|
|
101
|
+
page_path: properties.pathname,
|
|
102
|
+
page_title: properties.title,
|
|
103
|
+
page_type: properties.type,
|
|
104
|
+
slug: properties.slug,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
trackClick(properties) {
|
|
109
|
+
if (typeof window === 'undefined')
|
|
110
|
+
return;
|
|
111
|
+
const dataLayer = window.dataLayer;
|
|
112
|
+
if (dataLayer) {
|
|
113
|
+
dataLayer.push({
|
|
114
|
+
event: 'click',
|
|
115
|
+
...properties,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=GoogleTagManagerAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoogleTagManagerAdapter.js","sourceRoot":"","sources":["../../../src/analytics/adapters/GoogleTagManagerAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/analytics/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/analytics/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/analytics/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/analytics/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAqB,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React, { type ErrorInfo, type ReactNode } from 'react';
|
|
2
|
+
export interface ErrorBoundaryProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
fallback?: ReactNode | ((error: Error) => ReactNode);
|
|
5
|
+
onError?: (error: Error, errorInfo: ErrorInfo) => void;
|
|
6
|
+
name?: string;
|
|
7
|
+
}
|
|
8
|
+
interface ErrorBoundaryState {
|
|
9
|
+
hasError: boolean;
|
|
10
|
+
error: Error | null;
|
|
11
|
+
}
|
|
12
|
+
export declare class ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundaryState> {
|
|
13
|
+
constructor(props: ErrorBoundaryProps);
|
|
14
|
+
static getDerivedStateFromError(error: Error): ErrorBoundaryState;
|
|
15
|
+
componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
|
|
16
|
+
render(): React.ReactNode;
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=ErrorBoundary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.d.ts","sourceRoot":"","sources":["../../src/components/ErrorBoundary.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG9D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC;IACrD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;gBAC5E,KAAK,EAAE,kBAAkB;IAKrC,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,kBAAkB;IAIxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS;IASpD,MAAM;CAahB"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { captureException } from '../utils/errorMonitoring';
|
|
4
|
+
export class ErrorBoundary extends React.Component {
|
|
5
|
+
constructor(props) {
|
|
6
|
+
super(props);
|
|
7
|
+
this.state = { hasError: false, error: null };
|
|
8
|
+
}
|
|
9
|
+
static getDerivedStateFromError(error) {
|
|
10
|
+
return { hasError: true, error };
|
|
11
|
+
}
|
|
12
|
+
componentDidCatch(error, errorInfo) {
|
|
13
|
+
captureException(error, {
|
|
14
|
+
componentStack: errorInfo.componentStack ?? undefined,
|
|
15
|
+
boundaryName: this.props.name,
|
|
16
|
+
});
|
|
17
|
+
this.props.onError?.(error, errorInfo);
|
|
18
|
+
}
|
|
19
|
+
render() {
|
|
20
|
+
if (this.state.hasError) {
|
|
21
|
+
if (this.props.fallback) {
|
|
22
|
+
if (typeof this.props.fallback === 'function') {
|
|
23
|
+
return this.props.fallback(this.state.error || new Error('Unknown error'));
|
|
24
|
+
}
|
|
25
|
+
return this.props.fallback;
|
|
26
|
+
}
|
|
27
|
+
return null; // Render nothing if no fallback
|
|
28
|
+
}
|
|
29
|
+
return this.props.children;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=ErrorBoundary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.js","sourceRoot":"","sources":["../../src/components/ErrorBoundary.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,KAAyC,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAc5D,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,SAAiD;IACxF,YAAY,KAAyB;QACnC,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,wBAAwB,CAAC,KAAY;QAC1C,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAEQ,iBAAiB,CAAC,KAAY,EAAE,SAAoB;QAC3D,gBAAgB,CAAC,KAAK,EAAE;YACtB,cAAc,EAAE,SAAS,CAAC,cAAc,IAAI,SAAS;YACrD,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;SAC9B,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC;IAEQ,MAAM;QACb,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACxB,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;oBAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;gBAC7E,CAAC;gBACD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC7B,CAAC;YACD,OAAO,IAAI,CAAC,CAAC,gCAAgC;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
* @packageDocumentation
|
|
35
35
|
*/
|
|
36
36
|
export { AnalyticsProvider, useAnalyticsContext } from './analytics/AnalyticsProvider';
|
|
37
|
-
export { ConsoleAnalyticsAdapter } from './analytics/adapters';
|
|
37
|
+
export { ConsentAwareAdapter, ConsoleAnalyticsAdapter, GoogleTagManagerAdapter, } from './analytics/adapters';
|
|
38
38
|
export type { AnalyticsAdapter, ClickTrackingProperties, PageTrackingProperties, } from './analytics/types';
|
|
39
39
|
export { useAnalytics } from './analytics/useAnalytics';
|
|
40
40
|
export type { CmsRendererConfig, CmsRendererTypes } from './CmsRendererConfig';
|
|
@@ -48,6 +48,7 @@ export { CmsContent } from './components/CmsContent';
|
|
|
48
48
|
export { CmsConversionErrors } from './components/CmsConversionErrors';
|
|
49
49
|
export { CmsEmbeddedContent } from './components/CmsEmbeddedContent';
|
|
50
50
|
export type { EmbeddedExternalComponentMap, EmbeddedExternalComponentRenderer, ExternalComponentMap, ExternalComponentRenderer, ExternalComponentRendererProps, } from './components/CmsExternalComponent';
|
|
51
|
+
export { ErrorBoundary } from './components/ErrorBoundary';
|
|
51
52
|
export { Preview } from './components/Preview.js';
|
|
52
53
|
export type { StructuredDataProps } from './components/StructuredData';
|
|
53
54
|
export { StructuredData } from './components/StructuredData';
|
|
@@ -72,6 +73,7 @@ export type { ArrayToUnion, CollectionConfig, CollectionPropsFromConfig, Compone
|
|
|
72
73
|
export { createCollectionProps, createComponentProps, extractCollectionInfo, extractComponentInfo, extractPageContext, } from './utils/componentUtils';
|
|
73
74
|
export { convertText } from './utils/convertText';
|
|
74
75
|
export { handleCmsError } from './utils/errorHandling';
|
|
76
|
+
export { captureException, initErrorMonitoring } from './utils/errorMonitoring';
|
|
75
77
|
export type { PreviewSecretValidation } from './utils/previewPageUtils';
|
|
76
78
|
export { validatePreviewSecret } from './utils/previewPageUtils';
|
|
77
79
|
export type { IContent } from './utils/previewUtils';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAKH,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEvF,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
// Analytics
|
|
38
38
|
export { AnalyticsProvider, useAnalyticsContext } from './analytics/AnalyticsProvider';
|
|
39
39
|
// Analytics Adapters
|
|
40
|
-
export { ConsoleAnalyticsAdapter } from './analytics/adapters';
|
|
40
|
+
export { ConsentAwareAdapter, ConsoleAnalyticsAdapter, GoogleTagManagerAdapter, } from './analytics/adapters';
|
|
41
41
|
export { useAnalytics } from './analytics/useAnalytics';
|
|
42
42
|
export { ClientMonitor } from './components/ClientMonitor.js';
|
|
43
43
|
export { CmsCollection } from './components/CmsCollection';
|
|
@@ -45,6 +45,9 @@ export { CmsComponent } from './components/CmsComponent';
|
|
|
45
45
|
export { CmsContent } from './components/CmsContent';
|
|
46
46
|
export { CmsConversionErrors } from './components/CmsConversionErrors';
|
|
47
47
|
export { CmsEmbeddedContent } from './components/CmsEmbeddedContent';
|
|
48
|
+
// Framework Components
|
|
49
|
+
// Error Handling
|
|
50
|
+
export { ErrorBoundary } from './components/ErrorBoundary';
|
|
48
51
|
export { Preview } from './components/Preview.js';
|
|
49
52
|
export { StructuredData } from './components/StructuredData';
|
|
50
53
|
// SVG Sprite System
|
|
@@ -57,7 +60,6 @@ export { TrackedLink } from './elements/TrackedLink';
|
|
|
57
60
|
// Elements
|
|
58
61
|
export { UtmLink } from './elements/UtmLink';
|
|
59
62
|
export { BackgroundMedia } from './framework/BackgroundMedia';
|
|
60
|
-
// Framework Components
|
|
61
63
|
export { ComponentErrorIndicator } from './framework/ComponentErrorIndicator';
|
|
62
64
|
export { showComponentError, showInlineError } from './framework/componentErrors';
|
|
63
65
|
export { default as ResponsiveVisual } from './framework/ResponsiveVisual';
|
|
@@ -70,6 +72,7 @@ export { cn } from './utils/cn';
|
|
|
70
72
|
export { createCollectionProps, createComponentProps, extractCollectionInfo, extractComponentInfo, extractPageContext, } from './utils/componentUtils';
|
|
71
73
|
export { convertText } from './utils/convertText';
|
|
72
74
|
export { handleCmsError } from './utils/errorHandling';
|
|
75
|
+
export { captureException, initErrorMonitoring } from './utils/errorMonitoring';
|
|
73
76
|
export { validatePreviewSecret } from './utils/previewPageUtils';
|
|
74
77
|
export { coreGetPreviewAssetIdProps, coreGetPreviewFieldIdProps, coreGetPreviewParentProps, coreGetPreviewProps, } from './utils/previewUtils';
|
|
75
78
|
export { deduplicateSitemapEntries, generateNextSitemap, sortSitemapEntries, } from './utils/sitemap';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,kDAAkD;AAElD,YAAY;AACZ,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACvF,qBAAqB;AACrB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface ErrorContext {
|
|
2
|
+
componentStack?: string;
|
|
3
|
+
[key: string]: unknown;
|
|
4
|
+
}
|
|
5
|
+
export interface ErrorReporter {
|
|
6
|
+
captureException(error: Error, context?: ErrorContext): void;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Initialize error monitoring with a custom reporter (e.g. Sentry, LogRocket)
|
|
10
|
+
*/
|
|
11
|
+
export declare function initErrorMonitoring(reporter: ErrorReporter): void;
|
|
12
|
+
/**
|
|
13
|
+
* Capture an exception
|
|
14
|
+
*/
|
|
15
|
+
export declare function captureException(error: unknown, context?: ErrorContext): void;
|
|
16
|
+
//# sourceMappingURL=errorMonitoring.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errorMonitoring.d.ts","sourceRoot":"","sources":["../../src/utils/errorMonitoring.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CAC9D;AAgBD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,QAE1D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,QAGtE"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default console reporter
|
|
3
|
+
*/
|
|
4
|
+
const consoleReporter = {
|
|
5
|
+
captureException(error, context) {
|
|
6
|
+
console.error('[ErrorMonitor] Exception captured:', error);
|
|
7
|
+
if (context) {
|
|
8
|
+
console.error('[ErrorMonitor] Context:', context);
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
};
|
|
12
|
+
let currentReporter = consoleReporter;
|
|
13
|
+
/**
|
|
14
|
+
* Initialize error monitoring with a custom reporter (e.g. Sentry, LogRocket)
|
|
15
|
+
*/
|
|
16
|
+
export function initErrorMonitoring(reporter) {
|
|
17
|
+
currentReporter = reporter;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Capture an exception
|
|
21
|
+
*/
|
|
22
|
+
export function captureException(error, context) {
|
|
23
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
24
|
+
currentReporter.captureException(err, context);
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=errorMonitoring.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errorMonitoring.js","sourceRoot":"","sources":["../../src/utils/errorMonitoring.ts"],"names":[],"mappings":"AASA;;GAEG;AACH,MAAM,eAAe,GAAkB;IACrC,gBAAgB,CAAC,KAAK,EAAE,OAAO;QAC7B,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;CACF,CAAC;AAEF,IAAI,eAAe,GAAkB,eAAe,CAAC;AAErD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAuB;IACzD,eAAe,GAAG,QAAQ,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc,EAAE,OAAsB;IACrE,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC"}
|
|
@@ -62,5 +62,5 @@ export interface StructuredDataConfig extends IBuildInformation {
|
|
|
62
62
|
* @param model - The CMS content model (Page, Article, Person, etc.)
|
|
63
63
|
* @param config - Configuration including global URLs and paths
|
|
64
64
|
*/
|
|
65
|
-
export declare function buildStructuredDataContext(model: IBaseModel, config: StructuredDataConfig): StructuredDataContext;
|
|
65
|
+
export declare function buildStructuredDataContext(model: IBaseModel, config: StructuredDataConfig, extraContext?: Record<string, unknown>): StructuredDataContext;
|
|
66
66
|
//# sourceMappingURL=structuredDataUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structuredDataUtils.d.ts","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,UAAU,EAAe,MAAM,4BAA4B,CAAC;AACxF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAEpC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IAGF,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KACpF,CAAC;IAGF,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE;YACP,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;IAEF,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAGF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAyDD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"structuredDataUtils.d.ts","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,UAAU,EAAe,MAAM,4BAA4B,CAAC;AACxF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAEpC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IAGF,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KACpF,CAAC;IAGF,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE;YACP,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;IAEF,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAGF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAyDD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,oBAAoB,EAC5B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,qBAAqB,CA+DvB"}
|
|
@@ -39,7 +39,7 @@ function buildBreadcrumbs(path, baseUrl, currentTitle, breadcrumbTitleOverride)
|
|
|
39
39
|
* @param model - The CMS content model (Page, Article, Person, etc.)
|
|
40
40
|
* @param config - Configuration including global URLs and paths
|
|
41
41
|
*/
|
|
42
|
-
export function buildStructuredDataContext(model, config) {
|
|
42
|
+
export function buildStructuredDataContext(model, config, extraContext) {
|
|
43
43
|
const { baseUrl, logoUrl, path, customerName } = config;
|
|
44
44
|
const currentUrl = `${baseUrl}${path}`;
|
|
45
45
|
const featuredImageId = model.featuredImage?.id;
|
|
@@ -61,6 +61,7 @@ export function buildStructuredDataContext(model, config) {
|
|
|
61
61
|
imageUrl,
|
|
62
62
|
breadcrumbs: buildBreadcrumbs(path, baseUrl, model.title, model.breadcrumbTitle),
|
|
63
63
|
},
|
|
64
|
+
...extraContext,
|
|
64
65
|
};
|
|
65
66
|
// 2. Article Specific Context (mapped to 'information')
|
|
66
67
|
if (model.type === 'Article') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structuredDataUtils.js","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"AAuEA;;;;GAIG;AACH,SAAS,gBAAgB,CACvB,IAAY,EACZ,OAAe,EACf,YAAoB,EACpB,uBAAgC;IAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,WAAW,GAAsB,EAAE,CAAC;IAE1C,OAAO;IACP,WAAW,CAAC,IAAI,CAAC;QACf,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,OAAO;QACZ,IAAI,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;KAC5B,CAAC,CAAC;IAEH,IAAI,WAAW,GAAG,EAAE,CAAC;IAErB,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAClC,WAAW,IAAI,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,KAAK,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAE7C,0EAA0E;QAC1E,yDAAyD;QACzD,oDAAoD;QACpD,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEjF,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,GAAG,uBAAuB,IAAI,YAAY,CAAC;QACjD,CAAC;QAED,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,KAAK,GAAG,CAAC;YACnB,IAAI,EAAE,IAAI;YACV,GAAG,EAAE,GAAG,OAAO,GAAG,WAAW,EAAE;YAC/B,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,KAAiB,EACjB,MAA4B;
|
|
1
|
+
{"version":3,"file":"structuredDataUtils.js","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@se-studio/core-ui",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.42",
|
|
4
4
|
"description": "Shared React UI component library with Tailwind CSS v4 for SE Studio applications",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -58,8 +58,8 @@
|
|
|
58
58
|
"html-entities": "^2.6.0",
|
|
59
59
|
"mustache": "4.2.0",
|
|
60
60
|
"tailwind-merge": "^3.4.0",
|
|
61
|
-
"@se-studio/contentful-rest-api": "1.0.
|
|
62
|
-
"@se-studio/core-data-types": "1.0.
|
|
61
|
+
"@se-studio/contentful-rest-api": "1.0.42",
|
|
62
|
+
"@se-studio/core-data-types": "1.0.42"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
65
|
"@biomejs/biome": "^2.3.9",
|