@brandlab-digital/site-next 1.0.4 → 1.0.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/contact/email.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,kBAAkB,EACnB,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,yBAAyB,CAAA;IACrC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACxC,OAAO,EAAE,kBAAkB,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAA;CACnD;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAMD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,UAOpD;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,UAExD;AAoCD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,uBAAuB,UAOtE;AA4ED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,oBAAoB,CA4EvF"}
1
+ {"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../../src/contact/email.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,kBAAkB,EACnB,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,yBAAyB,CAAA;IACrC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACxC,OAAO,EAAE,kBAAkB,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAA;CACnD;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAMD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,UAOpD;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,UAExD;AAoCD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,uBAAuB,UAOtE;AA4FD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,oBAAoB,CA+EvF"}
@@ -1,4 +1,4 @@
1
- import { contactVisitSourceLabel, } from '@brandlab-digital/site-core/contact';
1
+ import { contactVisitSourceLabel, isValidAustralianPhoneNumber, normalizeAustralianPhoneDigits, } from '@brandlab-digital/site-core/contact';
2
2
  import { normalizeBrandlabRoutePath } from '@brandlab-digital/site-core/routes';
3
3
  const EMAIL_PATTERN = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
4
4
  const SAFE_COLOR_PATTERN = /^#[0-9a-fA-F]{6}$/;
@@ -61,6 +61,14 @@ function formatAustralianPhone(value) {
61
61
  }
62
62
  return value;
63
63
  }
64
+ function australianPhoneHref(value) {
65
+ if (!isValidAustralianPhoneNumber(value))
66
+ return undefined;
67
+ const digits = normalizeAustralianPhoneDigits(value);
68
+ return digits.startsWith('0')
69
+ ? `tel:+61${digits.slice(1)}`
70
+ : `tel:+${digits}`;
71
+ }
64
72
  function formatSubmittedAt(value) {
65
73
  const date = new Date(value);
66
74
  if (!Number.isFinite(date.getTime()))
@@ -100,8 +108,11 @@ function renderEmailLogo(definition, muted) {
100
108
  : 144;
101
109
  return `<img src="${escapeContactEmailHtml(logo.url)}" alt="${escapeContactEmailHtml(logo.alt)}" width="${width}" style="display:block;width:${width}px;max-width:100%;height:auto;border:0;outline:none;text-decoration:none;color:${muted};margin:0 0 14px">`;
102
110
  }
103
- function row(label, value, colors) {
104
- return `<tr><td class="brandlab-email-label" style="padding:0 12px 14px 0;width:118px;vertical-align:top;color:${colors.muted};font-size:13px;font-weight:700;line-height:20px">${escapeContactEmailHtml(label)}</td><td class="brandlab-email-value" style="padding:0 0 14px;vertical-align:top;color:${colors.text};font-size:15px;font-weight:600;line-height:20px;word-break:break-all;overflow-wrap:anywhere">${escapeContactEmailHtml(value)}</td></tr>`;
111
+ function row(label, value, colors, href) {
112
+ const renderedValue = href
113
+ ? `<a href="${escapeContactEmailHtml(href)}" style="color:#1d4ed8;text-decoration:underline;font-weight:600">${escapeContactEmailHtml(value)}</a>`
114
+ : escapeContactEmailHtml(value);
115
+ return `<tr><td class="brandlab-email-label" style="padding:0 12px 14px 0;width:118px;vertical-align:top;color:${colors.muted};font-size:13px;font-weight:700;line-height:20px">${escapeContactEmailHtml(label)}</td><td class="brandlab-email-value" style="padding:0 0 14px;vertical-align:top;color:${colors.text};font-size:15px;font-weight:600;line-height:20px;word-break:break-all;overflow-wrap:anywhere">${renderedValue}</td></tr>`;
105
116
  }
106
117
  function contextRow(label, value, colors) {
107
118
  return `<tr><td class="brandlab-email-label" style="padding:0 12px 10px 0;width:118px;vertical-align:top;color:${colors.muted};font-size:12px;font-weight:700;line-height:18px">${escapeContactEmailHtml(label)}</td><td class="brandlab-email-value" style="padding:0 0 10px;vertical-align:top;color:${colors.text};font-size:13px;line-height:18px;word-break:break-all;overflow-wrap:anywhere">${escapeContactEmailHtml(value)}</td></tr>`;
@@ -131,6 +142,7 @@ export function renderContactEmail(input) {
131
142
  return [{
132
143
  label: field.label,
133
144
  value: field.role === 'phone' ? formatAustralianPhone(value) : value,
145
+ ...(field.role === 'phone' ? { href: australianPhoneHref(value) } : {}),
134
146
  }];
135
147
  });
136
148
  const landingPath = safePath(input.context.initialLandingPath) ?? '/';
@@ -154,7 +166,9 @@ export function renderContactEmail(input) {
154
166
  const logoHtml = renderEmailLogo(input.definition, colors.muted);
155
167
  const subject = buildContactEmailSubject(input);
156
168
  const heading = `New enquiry for ${input.definition.brandName}`;
157
- const htmlContactRows = contactRows.map((item) => row(item.label, item.value, colors)).join('');
169
+ const htmlContactRows = contactRows
170
+ .map((item) => row(item.label, item.value, colors, item.href))
171
+ .join('');
158
172
  const htmlContextRows = contextRows.map((item) => contextRow(item.label, item.value, colors)).join('');
159
173
  const messageHtml = message
160
174
  ? `<div style="padding:18px 20px;border-left:4px solid ${colors.accent};background:${colors.background};color:${colors.text};font-size:15px;line-height:24px;white-space:pre-wrap;word-break:break-word">${escapeContactEmailHtml(message)}</div>`
@@ -1 +1 @@
1
- {"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/contact/email.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/contact/email.ts"],"names":[],"mappings":"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"}
@@ -18,5 +18,5 @@ export interface GooglePlaceReviewsClientProps extends Omit<GooglePlaceReviewsPr
18
18
  * Cost-aware display controller. It requests live Places data only when the
19
19
  * approved placement approaches the viewport and always retains a stable link.
20
20
  */
21
- export declare function GooglePlaceReviewsClient({ mode, endpoint, fallbackGoogleMapsUri, fallbackLabel, fallbackClassName, renderSnapshot, wrapperProps, ...reviewProps }: GooglePlaceReviewsClientProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function GooglePlaceReviewsClient({ mode, endpoint, fallbackGoogleMapsUri, fallbackLabel, fallbackClassName, renderSnapshot, wrapperProps, selection, ...reviewProps }: GooglePlaceReviewsClientProps): import("react/jsx-runtime").JSX.Element;
22
22
  //# sourceMappingURL=google-reviews-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"google-reviews-client.d.ts","sourceRoot":"","sources":["../src/google-reviews-client.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AACxF,OAAO,EAEL,KAAK,mCAAmC,EACxC,KAAK,sBAAsB,EAE5B,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAA;AAI/B,MAAM,MAAM,gCAAgC,GAAG,WAAW,GAAG,sBAAsB,CAAA;AAEnF,MAAM,WAAW,6BACf,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC;IACjD,IAAI,EAAE,gCAAgC,CAAA;IACtC,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,uFAAuF;IACvF,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,mCAAmC,KAAK,SAAS,CAAA;IAC7E,gFAAgF;IAChF,YAAY,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,CAAA;CAChE;AA0BD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,IAAI,EACJ,QAAQ,EACR,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,GAAG,WAAW,EACf,EAAE,6BAA6B,2CAoF/B"}
1
+ {"version":3,"file":"google-reviews-client.d.ts","sourceRoot":"","sources":["../src/google-reviews-client.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AACxF,OAAO,EAIL,KAAK,mCAAmC,EACxC,KAAK,sBAAsB,EAE5B,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAA;AAI/B,MAAM,MAAM,gCAAgC,GAAG,WAAW,GAAG,sBAAsB,CAAA;AAEnF,MAAM,WAAW,6BACf,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC;IACjD,IAAI,EAAE,gCAAgC,CAAA;IACtC,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,uFAAuF;IACvF,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,mCAAmC,KAAK,SAAS,CAAA;IAC7E,gFAAgF;IAChF,YAAY,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,CAAA;CAChE;AA0BD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,IAAI,EACJ,QAAQ,EACR,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,SAAuB,EACvB,GAAG,WAAW,EACf,EAAE,6BAA6B,2CAiG/B"}
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useEffect, useRef, useState } from 'react';
4
- import { parseGooglePlaceReviewsSnapshot, } from '@brandlab-digital/site-core/google-reviews';
5
- import { GooglePlaceReviews, GooglePlaceReviewsAttribution, GoogleReviewsLink, } from './google-reviews-ui.js';
4
+ import { normalizeGooglePlaceReviewsSelection, parseGooglePlaceReviewsSnapshot, selectGooglePlaceReviewsSnapshot, } from '@brandlab-digital/site-core/google-reviews';
5
+ import { GooglePlaceReviews, GooglePlaceReviewsPolicyAttribution, GoogleReviewsLink, } from './google-reviews-ui.js';
6
6
  const MAXIMUM_ROUTE_RESPONSE_BYTES = 64 * 1_024;
7
7
  function normalizeSameOriginEndpoint(value) {
8
8
  if (!value || !value.startsWith('/') || value.startsWith('//'))
@@ -24,11 +24,15 @@ function ReviewFallback(props) {
24
24
  * Cost-aware display controller. It requests live Places data only when the
25
25
  * approved placement approaches the viewport and always retains a stable link.
26
26
  */
27
- export function GooglePlaceReviewsClient({ mode, endpoint, fallbackGoogleMapsUri, fallbackLabel, fallbackClassName, renderSnapshot, wrapperProps, ...reviewProps }) {
27
+ export function GooglePlaceReviewsClient({ mode, endpoint, fallbackGoogleMapsUri, fallbackLabel, fallbackClassName, renderSnapshot, wrapperProps, selection = 'relevance', ...reviewProps }) {
28
28
  const wrapperRef = useRef(null);
29
29
  const [snapshot, setSnapshot] = useState(null);
30
30
  const [activated, setActivated] = useState(false);
31
31
  const safeEndpoint = normalizeSameOriginEndpoint(endpoint);
32
+ const normalizedSelection = normalizeGooglePlaceReviewsSelection(selection);
33
+ if (normalizedSelection === 'five-star-featured' && mode !== 'full') {
34
+ throw new Error('Five-star featured reviews require full mode.');
35
+ }
32
36
  useEffect(() => {
33
37
  if (mode === 'link-only' || !safeEndpoint)
34
38
  return;
@@ -80,8 +84,8 @@ export function GooglePlaceReviewsClient({ mode, endpoint, fallbackGoogleMapsUri
80
84
  }
81
85
  return (_jsx("div", { ...wrapperProps, ref: wrapperRef, children: snapshot?.status === 'available'
82
86
  ? renderSnapshot
83
- ? (_jsxs(_Fragment, { children: [renderSnapshot(snapshot), _jsx(GooglePlaceReviewsAttribution, { attributionMode: reviewProps.attributionMode, attributionTone: reviewProps.attributionTone, className: reviewProps.attributionClassName, snapshot: snapshot })] }))
84
- : _jsx(GooglePlaceReviews, { ...reviewProps, snapshot: snapshot })
87
+ ? (_jsxs(_Fragment, { children: [renderSnapshot(selectGooglePlaceReviewsSnapshot(snapshot, normalizedSelection)), _jsx(GooglePlaceReviewsPolicyAttribution, { attributionMode: reviewProps.attributionMode, attributionTone: reviewProps.attributionTone, className: reviewProps.attributionClassName, policyAttributionClassName: reviewProps.policyAttributionClassName, policyClassName: reviewProps.policyClassName, selection: normalizedSelection, snapshot: selectGooglePlaceReviewsSnapshot(snapshot, normalizedSelection) })] }))
88
+ : (_jsx(GooglePlaceReviews, { ...reviewProps, selection: normalizedSelection, snapshot: snapshot }))
85
89
  : (_jsx(ReviewFallback, { fallbackClassName: fallbackClassName, fallbackGoogleMapsUri: fallbackGoogleMapsUri, fallbackLabel: fallbackLabel })) }));
86
90
  }
87
91
  //# sourceMappingURL=google-reviews-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"google-reviews-client.js","sourceRoot":"","sources":["../src/google-reviews-client.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"google-reviews-client.js","sourceRoot":"","sources":["../src/google-reviews-client.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import 'server-only';
2
- import { type FetchGooglePlaceReviewsOptions, type GooglePlaceReviewsMode } from '@brandlab-digital/site-core/google-reviews';
2
+ import { type FetchGooglePlaceReviewsOptions, type GooglePlaceReviewsMode, type GooglePlaceReviewsSelection } from '@brandlab-digital/site-core/google-reviews';
3
3
  export declare const BRANDLAB_GOOGLE_REVIEWS_PRODUCTION_RUNTIME: "brandlab-google-reviews-production-v2";
4
4
  export declare const BRANDLAB_GOOGLE_REVIEWS_ENVIRONMENT_NAMES: {
5
5
  readonly apiKey: "GOOGLE_MAPS_PLATFORM_API_KEY";
@@ -22,6 +22,8 @@ export declare function createGooglePlaceReviewsRouteResponse(options: GooglePla
22
22
  export interface BrandlabGooglePlaceReviewsProductionRuntimeOptions {
23
23
  placeId: string;
24
24
  mode: GooglePlaceReviewsMode;
25
+ /** Full-mode presentation policy. Featured mode always requests Google's full five-review window. */
26
+ selection?: GooglePlaceReviewsSelection;
25
27
  /** Full mode only. Google currently returns at most five reviews. */
26
28
  maxReviews?: number;
27
29
  fallbackGoogleMapsUri?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"google-reviews-server.d.ts","sourceRoot":"","sources":["../src/google-reviews-server.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EAIL,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAE5B,MAAM,4CAA4C,CAAA;AAEnD,eAAO,MAAM,0CAA0C,EACrD,uCAAgD,CAAA;AAElD,eAAO,MAAM,yCAAyC;;CAE5C,CAAA;AAEV,eAAO,MAAM,wCAAwC;;;;CAI3C,CAAA;AAEV,eAAO,MAAM,sCAAsC;;;;CACT,CAAA;AAE1C,MAAM,WAAW,8BAA+B,SAAQ,8BAA8B;IACpF,YAAY,CAAC,EAAE,YAAY,CAAA;CAC5B;AA2CD,uEAAuE;AACvE,wBAAsB,qCAAqC,CACzD,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,QAAQ,CAAC,CAYnB;AAED,MAAM,WAAW,kDAAkD;IACjE,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,sBAAsB,CAAA;IAC5B,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;IACzD,oCAAoC;IACpC,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;CACvB;AAED,MAAM,WAAW,2CAA2C;IAC1D,WAAW,EAAE,OAAO,0CAA0C,CAAA;IAC9D,IAAI,EAAE,sBAAsB,CAAA;IAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;CACtC;AAYD;;;;GAIG;AACH,wBAAgB,iDAAiD,CAC/D,OAAO,EAAE,kDAAkD,GAC1D,2CAA2C,CA0B7C"}
1
+ {"version":3,"file":"google-reviews-server.d.ts","sourceRoot":"","sources":["../src/google-reviews-server.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EAML,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,EAEjC,MAAM,4CAA4C,CAAA;AAEnD,eAAO,MAAM,0CAA0C,EACrD,uCAAgD,CAAA;AAElD,eAAO,MAAM,yCAAyC;;CAE5C,CAAA;AAEV,eAAO,MAAM,wCAAwC;;;;CAI3C,CAAA;AAEV,eAAO,MAAM,sCAAsC;;;;CACT,CAAA;AAE1C,MAAM,WAAW,8BAA+B,SAAQ,8BAA8B;IACpF,YAAY,CAAC,EAAE,YAAY,CAAA;CAC5B;AA2CD,uEAAuE;AACvE,wBAAsB,qCAAqC,CACzD,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,QAAQ,CAAC,CAYnB;AAED,MAAM,WAAW,kDAAkD;IACjE,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,sBAAsB,CAAA;IAC5B,qGAAqG;IACrG,SAAS,CAAC,EAAE,2BAA2B,CAAA;IACvC,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;IACzD,oCAAoC;IACpC,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;CACvB;AAED,MAAM,WAAW,2CAA2C;IAC1D,WAAW,EAAE,OAAO,0CAA0C,CAAA;IAC9D,IAAI,EAAE,sBAAsB,CAAA;IAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;CACtC;AAYD;;;;GAIG;AACH,wBAAgB,iDAAiD,CAC/D,OAAO,EAAE,kDAAkD,GAC1D,2CAA2C,CAkC7C"}
@@ -1,5 +1,5 @@
1
1
  import 'server-only';
2
- import { fetchGooglePlaceReviewsSnapshot, normalizeGooglePlaceId, normalizeGooglePlaceReviewsMode, } from '@brandlab-digital/site-core/google-reviews';
2
+ import { GOOGLE_PLACE_REVIEWS_MAX_REVIEWS, fetchGooglePlaceReviewsSnapshot, normalizeGooglePlaceId, normalizeGooglePlaceReviewsMode, normalizeGooglePlaceReviewsSelection, } from '@brandlab-digital/site-core/google-reviews';
3
3
  export const BRANDLAB_GOOGLE_REVIEWS_PRODUCTION_RUNTIME = 'brandlab-google-reviews-production-v2';
4
4
  export const BRANDLAB_GOOGLE_REVIEWS_ENVIRONMENT_NAMES = {
5
5
  apiKey: 'GOOGLE_MAPS_PLATFORM_API_KEY',
@@ -70,6 +70,10 @@ export function createBrandlabGooglePlaceReviewsProductionRuntime(options) {
70
70
  }
71
71
  const apiKey = optionalEnvironment(options.environment, BRANDLAB_GOOGLE_REVIEWS_ENVIRONMENT_NAMES.apiKey);
72
72
  const mode = normalizeGooglePlaceReviewsMode(options.mode);
73
+ const selection = normalizeGooglePlaceReviewsSelection(options.selection);
74
+ if (selection === 'five-star-featured' && mode !== 'full') {
75
+ throw new Error('Five-star featured reviews require full mode.');
76
+ }
73
77
  return {
74
78
  runtimeKind: BRANDLAB_GOOGLE_REVIEWS_PRODUCTION_RUNTIME,
75
79
  mode,
@@ -77,8 +81,12 @@ export function createBrandlabGooglePlaceReviewsProductionRuntime(options) {
77
81
  apiKey,
78
82
  placeId: options.placeId,
79
83
  mode,
80
- ...(mode === 'full' && options.maxReviews !== undefined
81
- ? { maxReviews: options.maxReviews }
84
+ ...(mode === 'full' && (selection === 'five-star-featured' || options.maxReviews !== undefined)
85
+ ? {
86
+ maxReviews: selection === 'five-star-featured'
87
+ ? GOOGLE_PLACE_REVIEWS_MAX_REVIEWS
88
+ : options.maxReviews,
89
+ }
82
90
  : {}),
83
91
  ...(options.fallbackGoogleMapsUri
84
92
  ? { fallbackGoogleMapsUri: options.fallbackGoogleMapsUri }
@@ -1 +1 @@
1
- {"version":3,"file":"google-reviews-server.js","sourceRoot":"","sources":["../src/google-reviews-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"google-reviews-server.js","sourceRoot":"","sources":["../src/google-reviews-server.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type AnchorHTMLAttributes, type HTMLAttributes } from 'react';
2
- import { type GooglePlaceReviewsAvailableSnapshot, type GooglePlaceReviewsSnapshot } from '@brandlab-digital/site-core/google-reviews';
2
+ import { type GooglePlaceReview, type GooglePlaceReviewsAvailableSnapshot, type GooglePlaceReviewsSelection, type GooglePlaceReviewsSnapshot } from '@brandlab-digital/site-core/google-reviews';
3
3
  export interface GoogleReviewsLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href'> {
4
4
  googleMapsUri: string;
5
5
  label?: string;
@@ -299,10 +299,18 @@ export interface GooglePlaceReviewsProps extends HTMLAttributes<HTMLElement> {
299
299
  snapshot: GooglePlaceReviewsSnapshot;
300
300
  reviewClassName?: string;
301
301
  authorClassName?: string;
302
+ avatarClassName?: string;
303
+ actionsClassName?: string;
302
304
  textClassName?: string;
303
305
  attributionClassName?: string;
304
306
  /** Styles the required review-ordering notice in full mode. */
305
307
  policyClassName?: string;
308
+ /** Styles the compact policy and provider-attribution row. */
309
+ policyAttributionClassName?: string;
310
+ allReviewsLinkClassName?: string;
311
+ allReviewsLinkLabel?: string;
312
+ /** Keeps source order or presents up to three five-star reviews from the relevance window. */
313
+ selection?: GooglePlaceReviewsSelection;
306
314
  /** Selects the approved Google Maps attribution asset for the project background. */
307
315
  attributionTone?: 'light' | 'dark';
308
316
  /** Text is reserved for interfaces that cannot accommodate the official logo. */
@@ -314,19 +322,50 @@ export interface GooglePlaceReviewsAttributionProps {
314
322
  attributionTone?: NonNullable<GooglePlaceReviewsProps['attributionTone']>;
315
323
  attributionMode?: NonNullable<GooglePlaceReviewsProps['attributionMode']>;
316
324
  }
325
+ export interface GooglePlaceReviewAuthorProps {
326
+ review: GooglePlaceReview;
327
+ className?: string;
328
+ avatarClassName?: string;
329
+ }
330
+ export interface GooglePlaceReviewActionsProps {
331
+ review: GooglePlaceReview;
332
+ className?: string;
333
+ }
334
+ export interface GooglePlaceReviewsPolicyAttributionProps extends GooglePlaceReviewsAttributionProps {
335
+ selection?: GooglePlaceReviewsSelection;
336
+ policyClassName?: string;
337
+ policyAttributionClassName?: string;
338
+ }
339
+ /** Reviewer identity. The avatar identifies and links to the author; it is not an actions button. */
340
+ export declare function GooglePlaceReviewAuthor({ review, className, avatarClassName, }: GooglePlaceReviewAuthorProps): import("react").DetailedReactHTMLElement<{
341
+ className: string | undefined;
342
+ 'data-brandlab-google-review-author': string;
343
+ }, HTMLElement>;
344
+ /** Compact per-review source and reporting actions with no client JavaScript. */
345
+ export declare function GooglePlaceReviewActions({ review, className, }: GooglePlaceReviewActionsProps): import("react").DetailedReactHTMLElement<{
346
+ className: string | undefined;
347
+ 'data-brandlab-google-review-actions': string;
348
+ }, HTMLElement> | null;
317
349
  /** Required provider attribution with no project styling or layout policy. */
318
350
  export declare function GooglePlaceReviewsAttribution({ snapshot, className, attributionTone, attributionMode, }: GooglePlaceReviewsAttributionProps): import("react").DetailedReactHTMLElement<{
319
351
  className: string | undefined;
320
352
  'data-brandlab-google-reviews-attribution': string;
321
353
  }, HTMLElement>;
354
+ export declare function GooglePlaceReviewsPolicyAttribution({ snapshot, selection, className, policyClassName, policyAttributionClassName, attributionTone, attributionMode, }: GooglePlaceReviewsPolicyAttributionProps): import("react").DetailedReactHTMLElement<{
355
+ className: string | undefined;
356
+ 'data-brandlab-google-review-selection': GooglePlaceReviewsSelection;
357
+ 'data-brandlab-google-reviews-policy-attribution': string;
358
+ }, HTMLElement>;
322
359
  /**
323
360
  * Minimal, unstyled Places output. Projects may use this semantic renderer or
324
361
  * render a validated snapshot themselves through GooglePlaceReviewsClient.
325
362
  */
326
- export declare function GooglePlaceReviews({ snapshot, reviewClassName, authorClassName, textClassName, attributionClassName, policyClassName, attributionTone, attributionMode, ...sectionProps }: GooglePlaceReviewsProps): import("react").DetailedReactHTMLElement<{
363
+ export declare function GooglePlaceReviews({ snapshot, reviewClassName, authorClassName, avatarClassName, actionsClassName, textClassName, attributionClassName, policyClassName, policyAttributionClassName, allReviewsLinkClassName, allReviewsLinkLabel, selection, attributionTone, attributionMode, ...sectionProps }: GooglePlaceReviewsProps): import("react").DetailedReactHTMLElement<{
327
364
  'aria-label': string;
328
365
  'data-brandlab-google-reviews': string;
329
366
  'data-brandlab-google-attribution-mode': "logo" | "text-constrained-space";
367
+ 'data-brandlab-google-review-count': number;
368
+ 'data-brandlab-google-review-selection': GooglePlaceReviewsSelection;
330
369
  defaultChecked?: boolean | undefined;
331
370
  defaultValue?: string | number | readonly string[] | undefined;
332
371
  suppressContentEditableWarning?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"google-reviews-ui.d.ts","sourceRoot":"","sources":["../src/google-reviews-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,OAAO,CAAA;AACrF,OAAO,EAML,KAAK,mCAAmC,EACxC,KAAK,0BAA0B,EAChC,MAAM,4CAA4C,CAAA;AAOnD,MAAM,WAAW,sBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC7D,aAAa,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,iBAAiB,CAAC,EAChC,aAAa,EACb,KAAiC,EACjC,GAAG,WAAW,EACf,EAAE,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAexB;AAED,MAAM,WAAW,uBAAwB,SAAQ,cAAc,CAAC,WAAW,CAAC;IAC1E,QAAQ,EAAE,0BAA0B,CAAA;IACpC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,qFAAqF;IACrF,eAAe,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAClC,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,GAAG,wBAAwB,CAAA;CACpD;AAED,MAAM,WAAW,kCAAkC;IACjD,QAAQ,EAAE,mCAAmC,CAAA;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,WAAW,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAC,CAAA;IACzE,eAAe,CAAC,EAAE,WAAW,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAC,CAAA;CAC1E;AAiKD,8EAA8E;AAC9E,wBAAgB,6BAA6B,CAAC,EAC5C,QAAQ,EACR,SAAS,EACT,eAAyB,EACzB,eAAwB,GACzB,EAAE,kCAAkC;;;gBA0BpC;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,eAAe,EACf,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAyB,EACzB,eAAwB,EACxB,GAAG,YAAY,EAChB,EAAE,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAoDzB"}
1
+ {"version":3,"file":"google-reviews-ui.d.ts","sourceRoot":"","sources":["../src/google-reviews-ui.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { createElement } from 'react';
2
- import { GOOGLE_MAPS_ATTRIBUTION_LABEL, GOOGLE_MAPS_ATTRIBUTION_TEXT, GOOGLE_PLACE_REVIEWS_MAX_REVIEWS, normalizeGooglePlacePublicUrl, } from '@brandlab-digital/site-core/google-reviews';
2
+ import { GOOGLE_MAPS_ATTRIBUTION_LABEL, GOOGLE_MAPS_ATTRIBUTION_TEXT, GOOGLE_PLACE_REVIEWS_MAX_REVIEWS, normalizeGooglePlacePublicUrl, normalizeGooglePlaceReviewsSelection, selectGooglePlaceReviewsSnapshot, } from '@brandlab-digital/site-core/google-reviews';
3
3
  import { GOOGLE_MAPS_ATTRIBUTION_LOGO_DATA_URL, GOOGLE_MAPS_ATTRIBUTION_LOGO_HEIGHT, GOOGLE_MAPS_ATTRIBUTION_LOGO_WIDTH, } from './google-maps-attribution-assets.js';
4
4
  export function GoogleReviewsLink({ googleMapsUri, label = 'Read our Google reviews', ...anchorProps }) {
5
5
  const href = normalizeGooglePlacePublicUrl(googleMapsUri);
@@ -65,6 +65,60 @@ function externalLinkProps(href) {
65
65
  target: '_blank',
66
66
  };
67
67
  }
68
+ /** Reviewer identity. The avatar identifies and links to the author; it is not an actions button. */
69
+ export function GooglePlaceReviewAuthor({ review, className, avatarClassName, }) {
70
+ const authorUri = normalizeGooglePlacePublicUrl(review.authorUri);
71
+ const authorPhotoUri = normalizeGooglePlacePublicUrl(review.authorPhotoUri);
72
+ const children = [
73
+ authorPhotoUri
74
+ ? createElement('img', {
75
+ alt: '',
76
+ className: avatarClassName,
77
+ decoding: 'async',
78
+ 'data-brandlab-google-review-avatar': 'author',
79
+ height: 40,
80
+ key: 'avatar',
81
+ loading: 'lazy',
82
+ referrerPolicy: 'no-referrer',
83
+ src: authorPhotoUri,
84
+ width: 40,
85
+ })
86
+ : null,
87
+ createElement('span', { key: 'name' }, review.authorName),
88
+ ];
89
+ return authorUri
90
+ ? createElement('a', {
91
+ ...externalLinkProps(authorUri),
92
+ className,
93
+ 'data-brandlab-google-review-author': 'profile-link',
94
+ }, ...children)
95
+ : createElement('span', {
96
+ className,
97
+ 'data-brandlab-google-review-author': 'text',
98
+ }, ...children);
99
+ }
100
+ /** Compact per-review source and reporting actions with no client JavaScript. */
101
+ export function GooglePlaceReviewActions({ review, className, }) {
102
+ const sourceUrl = normalizeGooglePlacePublicUrl(review.googleMapsUri);
103
+ const flagContentUri = normalizeGooglePlacePublicUrl(review.flagContentUri);
104
+ if (!sourceUrl)
105
+ return null;
106
+ return createElement('details', {
107
+ className,
108
+ 'data-brandlab-google-review-actions': 'details',
109
+ }, createElement('summary', {
110
+ 'aria-label': `Review options for ${review.authorName}`,
111
+ 'data-brandlab-google-review-actions': 'trigger',
112
+ }, createElement('span', { 'aria-hidden': true }, '•••')), createElement('div', { 'data-brandlab-google-review-actions': 'menu' }, createElement('a', {
113
+ ...externalLinkProps(sourceUrl),
114
+ 'data-brandlab-google-review-action': 'source',
115
+ }, 'Read this review on Google Maps'), flagContentUri
116
+ ? createElement('a', {
117
+ ...externalLinkProps(flagContentUri),
118
+ 'data-brandlab-google-review-action': 'report',
119
+ }, 'Report this review to Google')
120
+ : null));
121
+ }
68
122
  function renderGoogleMapsAttribution(attributionUrl, mode, tone) {
69
123
  const content = mode === 'logo'
70
124
  ? createElement('img', {
@@ -88,31 +142,18 @@ function renderGoogleMapsAttribution(attributionUrl, mode, tone) {
88
142
  }, content);
89
143
  }
90
144
  function renderReview(review, index, props) {
91
- const authorUri = normalizeGooglePlacePublicUrl(review.authorUri);
92
- const authorPhotoUri = normalizeGooglePlacePublicUrl(review.authorPhotoUri);
93
- const sourceUrl = normalizeGooglePlacePublicUrl(review.googleMapsUri);
94
- const flagContentUri = normalizeGooglePlacePublicUrl(review.flagContentUri);
95
- return createElement('article', { className: props.reviewClassName, key: `${review.authorName}:${review.publishTime ?? index}` }, createElement('header', null, authorPhotoUri
96
- ? createElement('img', {
97
- alt: '',
98
- decoding: 'async',
99
- height: 40,
100
- loading: 'lazy',
101
- referrerPolicy: 'no-referrer',
102
- src: authorPhotoUri,
103
- width: 40,
104
- })
105
- : null, authorUri
106
- ? createElement('a', { ...externalLinkProps(authorUri), className: props.authorClassName }, review.authorName)
107
- : createElement('span', { className: props.authorClassName }, review.authorName), review.rating
145
+ return createElement('article', { className: props.reviewClassName, key: `${review.authorName}:${review.publishTime ?? index}` }, createElement('header', null, createElement(GooglePlaceReviewAuthor, {
146
+ avatarClassName: props.avatarClassName,
147
+ className: props.authorClassName,
148
+ review,
149
+ }), review.rating
108
150
  ? createElement('span', { 'aria-label': `${review.rating} out of 5 stars` }, `${review.rating}/5`)
109
151
  : null, review.relativePublishTimeDescription
110
152
  ? createElement('time', { dateTime: review.publishTime }, review.relativePublishTimeDescription)
111
- : null), createElement('blockquote', { className: props.textClassName }, createElement('p', null, review.text)), createElement('footer', null, sourceUrl
112
- ? createElement('a', externalLinkProps(sourceUrl), 'Read this review on Google Maps')
113
- : null, flagContentUri
114
- ? createElement('a', externalLinkProps(flagContentUri), 'Report this review to Google')
115
- : null));
153
+ : null, createElement(GooglePlaceReviewActions, {
154
+ className: props.actionsClassName,
155
+ review,
156
+ })), createElement('blockquote', { className: props.textClassName }, createElement('p', null, review.text)));
116
157
  }
117
158
  /** Required provider attribution with no project styling or layout policy. */
118
159
  export function GooglePlaceReviewsAttribution({ snapshot, className, attributionTone = 'light', attributionMode = 'logo', }) {
@@ -127,19 +168,49 @@ export function GooglePlaceReviewsAttribution({ snapshot, className, attribution
127
168
  : item.provider);
128
169
  }), createElement('p', null, 'Reviews provided by ', renderGoogleMapsAttribution(attributionUrl, attributionMode, attributionTone)));
129
170
  }
171
+ export function GooglePlaceReviewsPolicyAttribution({ snapshot, selection = 'relevance', className, policyClassName, policyAttributionClassName, attributionTone = 'light', attributionMode = 'logo', }) {
172
+ const normalizedSelection = normalizeGooglePlaceReviewsSelection(selection);
173
+ const policy = snapshot.mode === 'full' && snapshot.reviews.length > 0
174
+ ? normalizedSelection === 'five-star-featured'
175
+ ? "Showing 5-star reviews selected from Google's relevance-ranked results."
176
+ : 'Google Maps reviews are ordered by relevance.'
177
+ : null;
178
+ return createElement('div', {
179
+ className: policyAttributionClassName,
180
+ 'data-brandlab-google-review-selection': normalizedSelection,
181
+ 'data-brandlab-google-reviews-policy-attribution': 'compact',
182
+ }, policy
183
+ ? createElement('p', {
184
+ className: policyClassName,
185
+ 'data-brandlab-google-review-ordering': normalizedSelection,
186
+ }, policy)
187
+ : null, createElement(GooglePlaceReviewsAttribution, {
188
+ attributionMode,
189
+ attributionTone,
190
+ className,
191
+ snapshot,
192
+ }));
193
+ }
130
194
  /**
131
195
  * Minimal, unstyled Places output. Projects may use this semantic renderer or
132
196
  * render a validated snapshot themselves through GooglePlaceReviewsClient.
133
197
  */
134
- export function GooglePlaceReviews({ snapshot, reviewClassName, authorClassName, textClassName, attributionClassName, policyClassName, attributionTone = 'light', attributionMode = 'logo', ...sectionProps }) {
198
+ export function GooglePlaceReviews({ snapshot, reviewClassName, authorClassName, avatarClassName, actionsClassName, textClassName, attributionClassName, policyClassName, policyAttributionClassName, allReviewsLinkClassName, allReviewsLinkLabel = 'Read all reviews on Google Maps', selection = 'relevance', attributionTone = 'light', attributionMode = 'logo', ...sectionProps }) {
135
199
  if (snapshot.status !== 'available')
136
200
  return null;
137
201
  assertGooglePlaceReviewsSnapshotIsRenderable(snapshot);
202
+ const normalizedSelection = normalizeGooglePlaceReviewsSelection(selection);
203
+ if (normalizedSelection === 'five-star-featured' && snapshot.mode !== 'full') {
204
+ throw new Error('Five-star featured reviews require full mode.');
205
+ }
206
+ const displayedSnapshot = selectGooglePlaceReviewsSnapshot(snapshot, normalizedSelection);
138
207
  const props = {
139
208
  ...sectionProps,
140
- snapshot,
209
+ snapshot: displayedSnapshot,
141
210
  reviewClassName,
142
211
  authorClassName,
212
+ avatarClassName,
213
+ actionsClassName,
143
214
  textClassName,
144
215
  attributionClassName,
145
216
  attributionTone,
@@ -150,20 +221,26 @@ export function GooglePlaceReviews({ snapshot, reviewClassName, authorClassName,
150
221
  'aria-label': sectionProps['aria-label'] ?? `${snapshot.businessName} reviews on Google Maps`,
151
222
  'data-brandlab-google-reviews': `attribution-complete-${snapshot.mode}`,
152
223
  'data-brandlab-google-attribution-mode': attributionMode,
224
+ 'data-brandlab-google-review-count': displayedSnapshot.reviews.length,
225
+ 'data-brandlab-google-review-selection': normalizedSelection,
153
226
  }, snapshot.rating
154
227
  ? createElement('p', {
155
228
  'aria-label': `Average rating ${snapshot.rating} out of 5${snapshot.userRatingCount === undefined ? '' : ` from ${snapshot.userRatingCount} reviews`}`,
156
229
  }, `${snapshot.rating}/5${snapshot.userRatingCount === undefined ? '' : ` from ${snapshot.userRatingCount} reviews`}`)
157
- : null, snapshot.mode === 'full' && snapshot.reviews.length > 0
158
- ? createElement('p', {
159
- className: policyClassName,
160
- 'data-brandlab-google-review-ordering': 'relevance',
161
- }, 'Google Maps reviews are ordered by relevance.')
162
- : null, ...snapshot.reviews.map((review, index) => renderReview(review, index, props)), createElement(GooglePlaceReviewsAttribution, {
230
+ : null, ...displayedSnapshot.reviews.map((review, index) => renderReview(review, index, props)), normalizedSelection === 'five-star-featured' && displayedSnapshot.reviews.length === 0
231
+ ? createElement(GoogleReviewsLink, {
232
+ className: allReviewsLinkClassName,
233
+ googleMapsUri: displayedSnapshot.googleMapsUri,
234
+ label: allReviewsLinkLabel,
235
+ })
236
+ : null, createElement(GooglePlaceReviewsPolicyAttribution, {
163
237
  attributionMode,
164
238
  attributionTone,
165
239
  className: attributionClassName,
166
- snapshot,
240
+ policyAttributionClassName,
241
+ policyClassName,
242
+ selection: normalizedSelection,
243
+ snapshot: displayedSnapshot,
167
244
  }));
168
245
  }
169
246
  //# sourceMappingURL=google-reviews-ui.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"google-reviews-ui.js","sourceRoot":"","sources":["../src/google-reviews-ui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"google-reviews-ui.js","sourceRoot":"","sources":["../src/google-reviews-ui.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brandlab-digital/site-next",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/RomieDandan/brandlab.git",
@@ -18,7 +18,7 @@
18
18
  "typecheck": "tsc --noEmit -p tsconfig.json"
19
19
  },
20
20
  "dependencies": {
21
- "@brandlab-digital/site-core": "1.0.4",
21
+ "@brandlab-digital/site-core": "1.0.6",
22
22
  "browser-image-compression": "2.0.2",
23
23
  "server-only": "0.0.1",
24
24
  "sharp": "0.35.3"