@sonordev/site-kit 2.5.1 → 2.5.3
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/dist/EngageWidget-VCMSEZIF.mjs +4 -0
- package/dist/{EngageWidget-GI5YY4GM.mjs.map → EngageWidget-VCMSEZIF.mjs.map} +1 -1
- package/dist/EngageWidget-XUYC27CV.js +13 -0
- package/dist/{EngageWidget-IJGEP44J.js.map → EngageWidget-XUYC27CV.js.map} +1 -1
- package/dist/blog/index.d.mts +4 -32
- package/dist/blog/index.d.ts +4 -32
- package/dist/blog/index.js +13 -189
- package/dist/blog/index.js.map +1 -1
- package/dist/blog/index.mjs +4 -183
- package/dist/blog/index.mjs.map +1 -1
- package/dist/blog/server-ui.d.mts +32 -2
- package/dist/blog/server-ui.d.ts +32 -2
- package/dist/blog/server-ui.js +12 -3
- package/dist/blog/server-ui.mjs +2 -1
- package/dist/{chunk-K4AUQZG5.js → chunk-7EPMDUE6.js} +2 -2
- package/dist/{chunk-K4AUQZG5.js.map → chunk-7EPMDUE6.js.map} +1 -1
- package/dist/{chunk-GVDPTXN3.js → chunk-BYCLAEHI.js} +3 -3
- package/dist/{chunk-GVDPTXN3.js.map → chunk-BYCLAEHI.js.map} +1 -1
- package/dist/{chunk-DV2BURIN.mjs → chunk-CCU7EY5V.mjs} +3 -3
- package/dist/{chunk-DV2BURIN.mjs.map → chunk-CCU7EY5V.mjs.map} +1 -1
- package/dist/{chunk-T5UU7I4V.mjs → chunk-EHNJDXBY.mjs} +266 -59
- package/dist/chunk-EHNJDXBY.mjs.map +1 -0
- package/dist/{chunk-SROW253N.js → chunk-GQU4LXOP.js} +2 -2
- package/dist/chunk-GQU4LXOP.js.map +1 -0
- package/dist/{chunk-QJIEREW4.mjs → chunk-LBII2GAF.mjs} +2 -2
- package/dist/chunk-LBII2GAF.mjs.map +1 -0
- package/dist/{chunk-F54HGPDM.js → chunk-REJSE5AU.js} +266 -58
- package/dist/chunk-REJSE5AU.js.map +1 -0
- package/dist/{chunk-EHKM5Y7Z.mjs → chunk-YX23HISG.mjs} +2 -2
- package/dist/{chunk-EHKM5Y7Z.mjs.map → chunk-YX23HISG.mjs.map} +1 -1
- package/dist/engage/index.js +4 -4
- package/dist/engage/index.mjs +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +4 -4
- package/dist/index.mjs +1 -1
- package/dist/layout/client.js +2 -2
- package/dist/layout/client.mjs +1 -1
- package/dist/layout/index.js +2 -2
- package/dist/layout/index.mjs +1 -1
- package/dist/maps/index.d.mts +121 -0
- package/dist/maps/index.d.ts +121 -0
- package/dist/maps/index.js +365 -0
- package/dist/maps/index.js.map +1 -0
- package/dist/maps/index.mjs +359 -0
- package/dist/maps/index.mjs.map +1 -0
- package/dist/signal/index.d.mts +6 -2
- package/dist/signal/index.d.ts +6 -2
- package/dist/signal/index.js +4 -4
- package/dist/signal/index.mjs +1 -1
- package/package.json +21 -5
- package/dist/EngageWidget-GI5YY4GM.mjs +0 -4
- package/dist/EngageWidget-IJGEP44J.js +0 -13
- package/dist/chunk-F54HGPDM.js.map +0 -1
- package/dist/chunk-QJIEREW4.mjs.map +0 -1
- package/dist/chunk-SROW253N.js.map +0 -1
- package/dist/chunk-T5UU7I4V.mjs.map +0 -1
package/dist/engage/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunk7EPMDUE6_js = require('../chunk-7EPMDUE6.js');
|
|
5
5
|
require('../chunk-ZSMWDLMK.js');
|
|
6
6
|
|
|
7
7
|
// src/engage/echo-config.ts
|
|
@@ -33,15 +33,15 @@ function getEchoWidgetProps(config = SONOR_PUBLIC_ECHO_DEFAULTS) {
|
|
|
33
33
|
|
|
34
34
|
Object.defineProperty(exports, "ChatWidget", {
|
|
35
35
|
enumerable: true,
|
|
36
|
-
get: function () { return
|
|
36
|
+
get: function () { return chunk7EPMDUE6_js.ChatWidget; }
|
|
37
37
|
});
|
|
38
38
|
Object.defineProperty(exports, "DesignRenderer", {
|
|
39
39
|
enumerable: true,
|
|
40
|
-
get: function () { return
|
|
40
|
+
get: function () { return chunk7EPMDUE6_js.DesignRenderer; }
|
|
41
41
|
});
|
|
42
42
|
Object.defineProperty(exports, "EngageWidget", {
|
|
43
43
|
enumerable: true,
|
|
44
|
-
get: function () { return
|
|
44
|
+
get: function () { return chunk7EPMDUE6_js.EngageWidget; }
|
|
45
45
|
});
|
|
46
46
|
exports.SONOR_PUBLIC_ECHO_DEFAULTS = SONOR_PUBLIC_ECHO_DEFAULTS;
|
|
47
47
|
exports.getEchoWidgetProps = getEchoWidgetProps;
|
package/dist/engage/index.mjs
CHANGED
package/dist/index.d.mts
CHANGED
|
@@ -218,7 +218,7 @@ interface AffiliatesWidgetProps {
|
|
|
218
218
|
* />
|
|
219
219
|
* ```
|
|
220
220
|
*/
|
|
221
|
-
declare function AffiliatesWidget({ className, loadingComponent, emptyComponent, errorComponent, showOffers, renderAffiliate, limit, }: AffiliatesWidgetProps): string | number | bigint | true | Iterable<React__default.ReactNode> | Promise<React__default.
|
|
221
|
+
declare function AffiliatesWidget({ className, loadingComponent, emptyComponent, errorComponent, showOffers, renderAffiliate, limit, }: AffiliatesWidgetProps): string | number | bigint | true | Iterable<React__default.ReactNode> | Promise<string | number | bigint | boolean | React__default.ReactPortal | React__default.ReactElement<unknown, string | React__default.JSXElementConstructor<any>> | Iterable<React__default.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null;
|
|
222
222
|
|
|
223
223
|
/**
|
|
224
224
|
* Sync Module Types - Booking Widget for Client Sites
|
package/dist/index.d.ts
CHANGED
|
@@ -218,7 +218,7 @@ interface AffiliatesWidgetProps {
|
|
|
218
218
|
* />
|
|
219
219
|
* ```
|
|
220
220
|
*/
|
|
221
|
-
declare function AffiliatesWidget({ className, loadingComponent, emptyComponent, errorComponent, showOffers, renderAffiliate, limit, }: AffiliatesWidgetProps): string | number | bigint | true | Iterable<React__default.ReactNode> | Promise<React__default.
|
|
221
|
+
declare function AffiliatesWidget({ className, loadingComponent, emptyComponent, errorComponent, showOffers, renderAffiliate, limit, }: AffiliatesWidgetProps): string | number | bigint | true | Iterable<React__default.ReactNode> | Promise<string | number | bigint | boolean | React__default.ReactPortal | React__default.ReactElement<unknown, string | React__default.JSXElementConstructor<any>> | Iterable<React__default.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null;
|
|
222
222
|
|
|
223
223
|
/**
|
|
224
224
|
* Sync Module Types - Booking Widget for Client Sites
|
package/dist/index.js
CHANGED
|
@@ -9,7 +9,7 @@ var chunkTA2RGEE3_js = require('./chunk-TA2RGEE3.js');
|
|
|
9
9
|
var chunkZQINTH5K_js = require('./chunk-ZQINTH5K.js');
|
|
10
10
|
require('./chunk-KGPSUN4H.js');
|
|
11
11
|
require('./chunk-6I5KNOFU.js');
|
|
12
|
-
var
|
|
12
|
+
var chunkGQU4LXOP_js = require('./chunk-GQU4LXOP.js');
|
|
13
13
|
var chunk7M3FNAS5_js = require('./chunk-7M3FNAS5.js');
|
|
14
14
|
require('./chunk-ZSMWDLMK.js');
|
|
15
15
|
var react = require('react');
|
|
@@ -358,15 +358,15 @@ Object.defineProperty(exports, "releaseSlotHold", {
|
|
|
358
358
|
});
|
|
359
359
|
Object.defineProperty(exports, "ExperimentConversion", {
|
|
360
360
|
enumerable: true,
|
|
361
|
-
get: function () { return
|
|
361
|
+
get: function () { return chunkGQU4LXOP_js.ExperimentConversion; }
|
|
362
362
|
});
|
|
363
363
|
Object.defineProperty(exports, "SignalExperiment", {
|
|
364
364
|
enumerable: true,
|
|
365
|
-
get: function () { return
|
|
365
|
+
get: function () { return chunkGQU4LXOP_js.SignalExperiment; }
|
|
366
366
|
});
|
|
367
367
|
Object.defineProperty(exports, "useExperimentVariant", {
|
|
368
368
|
enumerable: true,
|
|
369
|
-
get: function () { return
|
|
369
|
+
get: function () { return chunkGQU4LXOP_js.useExperimentVariant; }
|
|
370
370
|
});
|
|
371
371
|
Object.defineProperty(exports, "SignalBridge", {
|
|
372
372
|
enumerable: true,
|
package/dist/index.mjs
CHANGED
|
@@ -7,7 +7,7 @@ export { CalendarView, CheckoutForm, EventCalendar, EventEmbed, EventModal, Even
|
|
|
7
7
|
export { BookingWidget, createBooking, createSlotHold, detectTimezone, fetchAvailability, fetchAvailableDates, fetchBookingTypeDetails, fetchBookingTypes, formatDate as formatBookingDate, formatTime as formatBookingTime, formatDuration, releaseSlotHold } from './chunk-AT2ZF3TL.mjs';
|
|
8
8
|
import './chunk-YQGOLHPF.mjs';
|
|
9
9
|
import './chunk-DTY2JI33.mjs';
|
|
10
|
-
export { ExperimentConversion, SignalExperiment, useExperimentVariant } from './chunk-
|
|
10
|
+
export { ExperimentConversion, SignalExperiment, useExperimentVariant } from './chunk-LBII2GAF.mjs';
|
|
11
11
|
export { SignalBridge, useSignal, useSignalConfig, useSignalEvent, useSignalExperiment, useSignalOutcome } from './chunk-AOIG5PVY.mjs';
|
|
12
12
|
import './chunk-4XPGGLVP.mjs';
|
|
13
13
|
import { useState, useEffect } from 'react';
|
package/dist/layout/client.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunkBYCLAEHI_js = require('../chunk-BYCLAEHI.js');
|
|
5
5
|
require('../chunk-ZSMWDLMK.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
Object.defineProperty(exports, "SiteKitClientProviders", {
|
|
10
10
|
enumerable: true,
|
|
11
|
-
get: function () { return
|
|
11
|
+
get: function () { return chunkBYCLAEHI_js.SiteKitClientProviders; }
|
|
12
12
|
});
|
|
13
13
|
//# sourceMappingURL=client.js.map
|
|
14
14
|
//# sourceMappingURL=client.js.map
|
package/dist/layout/client.mjs
CHANGED
package/dist/layout/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkBYCLAEHI_js = require('../chunk-BYCLAEHI.js');
|
|
4
4
|
var chunkGCPPXUAI_js = require('../chunk-GCPPXUAI.js');
|
|
5
5
|
var chunkPKUTYMN7_js = require('../chunk-PKUTYMN7.js');
|
|
6
6
|
require('../chunk-VU4GL5ZG.js');
|
|
@@ -42,7 +42,7 @@ async function SiteKitLayout({
|
|
|
42
42
|
favicon && /* @__PURE__ */ jsxRuntime.jsx(chunkGCPPXUAI_js.ManagedFavicon, { apiKey: resolvedApiKey, apiUrl: resolvedApiUrl }),
|
|
43
43
|
managedScripts && /* @__PURE__ */ jsxRuntime.jsx(chunkPKUTYMN7_js.ManagedScripts, { position: "head" }),
|
|
44
44
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
45
|
-
|
|
45
|
+
chunkBYCLAEHI_js.SiteKitClientProviders,
|
|
46
46
|
{
|
|
47
47
|
apiKey: resolvedApiKey,
|
|
48
48
|
apiUrl: resolvedApiUrl,
|
package/dist/layout/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SiteKitClientProviders } from '../chunk-
|
|
1
|
+
import { SiteKitClientProviders } from '../chunk-CCU7EY5V.mjs';
|
|
2
2
|
import { ManagedFavicon } from '../chunk-CU6OGBKK.mjs';
|
|
3
3
|
import { ManagedScripts } from '../chunk-L7XPPFSS.mjs';
|
|
4
4
|
import '../chunk-TUFP3FGI.mjs';
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @sonordev/site-kit/maps — Shared types
|
|
5
|
+
*/
|
|
6
|
+
interface MapsConfig {
|
|
7
|
+
apiKey: string;
|
|
8
|
+
mapId: string;
|
|
9
|
+
}
|
|
10
|
+
interface MapMarker {
|
|
11
|
+
position: {
|
|
12
|
+
lat: number;
|
|
13
|
+
lng: number;
|
|
14
|
+
};
|
|
15
|
+
title: string;
|
|
16
|
+
type?: string;
|
|
17
|
+
category?: string;
|
|
18
|
+
rating?: number;
|
|
19
|
+
totalRatings?: number;
|
|
20
|
+
address?: string;
|
|
21
|
+
mapsUrl?: string;
|
|
22
|
+
website?: string;
|
|
23
|
+
isOpen?: boolean;
|
|
24
|
+
}
|
|
25
|
+
interface NearbyPlace {
|
|
26
|
+
id: string;
|
|
27
|
+
name: string;
|
|
28
|
+
address: string;
|
|
29
|
+
lat: number;
|
|
30
|
+
lng: number;
|
|
31
|
+
rating?: number;
|
|
32
|
+
totalRatings?: number;
|
|
33
|
+
category: string;
|
|
34
|
+
types: string[];
|
|
35
|
+
placeType?: string;
|
|
36
|
+
isOpen?: boolean;
|
|
37
|
+
mapsUrl: string;
|
|
38
|
+
website?: string;
|
|
39
|
+
}
|
|
40
|
+
interface GoogleMapProps {
|
|
41
|
+
/** Google Maps JavaScript API key (fetched from Sonor API) */
|
|
42
|
+
apiKey: string;
|
|
43
|
+
/** Google Maps style ID */
|
|
44
|
+
mapId?: string;
|
|
45
|
+
/** Center coordinates for the map */
|
|
46
|
+
center: {
|
|
47
|
+
lat: number;
|
|
48
|
+
lng: number;
|
|
49
|
+
};
|
|
50
|
+
/** Initial zoom level (default 14) */
|
|
51
|
+
zoom?: number;
|
|
52
|
+
/** Place markers to display */
|
|
53
|
+
markers?: MapMarker[];
|
|
54
|
+
/** CSS class for the map container */
|
|
55
|
+
className?: string;
|
|
56
|
+
/** Show a pin for the property location (default true) */
|
|
57
|
+
showPropertyMarker?: boolean;
|
|
58
|
+
/** Property name for the info window */
|
|
59
|
+
propertyName?: string;
|
|
60
|
+
/** Property address for the info window */
|
|
61
|
+
propertyAddress?: string;
|
|
62
|
+
/** Property pin color (default '#4a7c59') */
|
|
63
|
+
propertyPinColor?: string;
|
|
64
|
+
}
|
|
65
|
+
interface PlaceTypeFilter {
|
|
66
|
+
id: string;
|
|
67
|
+
label: string;
|
|
68
|
+
icon: string;
|
|
69
|
+
}
|
|
70
|
+
interface NeighborhoodMapProps {
|
|
71
|
+
/** Property coordinates — center of the map and nearby search */
|
|
72
|
+
center: {
|
|
73
|
+
lat: number;
|
|
74
|
+
lng: number;
|
|
75
|
+
};
|
|
76
|
+
/** Property name for the map marker */
|
|
77
|
+
propertyName: string;
|
|
78
|
+
/** Full address for the info window and Google Maps link */
|
|
79
|
+
propertyAddress: string;
|
|
80
|
+
/** CSS class for the outer container */
|
|
81
|
+
className?: string;
|
|
82
|
+
/** Custom place type filters (defaults to restaurants, bars, cafes, fitness, parks, shopping) */
|
|
83
|
+
placeTypes?: PlaceTypeFilter[];
|
|
84
|
+
/** Section title (default "Interactive Map") */
|
|
85
|
+
title?: string;
|
|
86
|
+
/** Section subtitle */
|
|
87
|
+
subtitle?: string;
|
|
88
|
+
/** Property pin color */
|
|
89
|
+
propertyPinColor?: string;
|
|
90
|
+
}
|
|
91
|
+
declare const DEFAULT_PLACE_TYPES: PlaceTypeFilter[];
|
|
92
|
+
|
|
93
|
+
declare function GoogleMap({ apiKey, mapId, center, zoom, markers, className, showPropertyMarker, propertyName, propertyAddress, propertyPinColor, }: GoogleMapProps): react_jsx_runtime.JSX.Element;
|
|
94
|
+
|
|
95
|
+
declare function NeighborhoodMap({ center, propertyName, propertyAddress, className, placeTypes, title, subtitle, propertyPinColor, }: NeighborhoodMapProps): react_jsx_runtime.JSX.Element;
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* @sonordev/site-kit/maps — API Functions
|
|
99
|
+
*
|
|
100
|
+
* Fetch Google Maps config and nearby places from Sonor API.
|
|
101
|
+
* Uses API key authentication (x-api-key header).
|
|
102
|
+
*/
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Fetch Google Maps config (API key + map ID) from Sonor API.
|
|
106
|
+
* Cached for 5 minutes to avoid redundant calls.
|
|
107
|
+
*/
|
|
108
|
+
declare function fetchMapsConfig(): Promise<MapsConfig | null>;
|
|
109
|
+
/**
|
|
110
|
+
* Fetch nearby places from Sonor API.
|
|
111
|
+
* Cached per type for 1 minute.
|
|
112
|
+
*/
|
|
113
|
+
declare function fetchNearbyPlaces(params: {
|
|
114
|
+
lat: number;
|
|
115
|
+
lng: number;
|
|
116
|
+
type: string;
|
|
117
|
+
radius?: number;
|
|
118
|
+
limit?: number;
|
|
119
|
+
}): Promise<NearbyPlace[]>;
|
|
120
|
+
|
|
121
|
+
export { DEFAULT_PLACE_TYPES, GoogleMap, type GoogleMapProps, type MapMarker, type MapsConfig, type NearbyPlace, NeighborhoodMap, type NeighborhoodMapProps, type PlaceTypeFilter, fetchMapsConfig, fetchNearbyPlaces };
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @sonordev/site-kit/maps — Shared types
|
|
5
|
+
*/
|
|
6
|
+
interface MapsConfig {
|
|
7
|
+
apiKey: string;
|
|
8
|
+
mapId: string;
|
|
9
|
+
}
|
|
10
|
+
interface MapMarker {
|
|
11
|
+
position: {
|
|
12
|
+
lat: number;
|
|
13
|
+
lng: number;
|
|
14
|
+
};
|
|
15
|
+
title: string;
|
|
16
|
+
type?: string;
|
|
17
|
+
category?: string;
|
|
18
|
+
rating?: number;
|
|
19
|
+
totalRatings?: number;
|
|
20
|
+
address?: string;
|
|
21
|
+
mapsUrl?: string;
|
|
22
|
+
website?: string;
|
|
23
|
+
isOpen?: boolean;
|
|
24
|
+
}
|
|
25
|
+
interface NearbyPlace {
|
|
26
|
+
id: string;
|
|
27
|
+
name: string;
|
|
28
|
+
address: string;
|
|
29
|
+
lat: number;
|
|
30
|
+
lng: number;
|
|
31
|
+
rating?: number;
|
|
32
|
+
totalRatings?: number;
|
|
33
|
+
category: string;
|
|
34
|
+
types: string[];
|
|
35
|
+
placeType?: string;
|
|
36
|
+
isOpen?: boolean;
|
|
37
|
+
mapsUrl: string;
|
|
38
|
+
website?: string;
|
|
39
|
+
}
|
|
40
|
+
interface GoogleMapProps {
|
|
41
|
+
/** Google Maps JavaScript API key (fetched from Sonor API) */
|
|
42
|
+
apiKey: string;
|
|
43
|
+
/** Google Maps style ID */
|
|
44
|
+
mapId?: string;
|
|
45
|
+
/** Center coordinates for the map */
|
|
46
|
+
center: {
|
|
47
|
+
lat: number;
|
|
48
|
+
lng: number;
|
|
49
|
+
};
|
|
50
|
+
/** Initial zoom level (default 14) */
|
|
51
|
+
zoom?: number;
|
|
52
|
+
/** Place markers to display */
|
|
53
|
+
markers?: MapMarker[];
|
|
54
|
+
/** CSS class for the map container */
|
|
55
|
+
className?: string;
|
|
56
|
+
/** Show a pin for the property location (default true) */
|
|
57
|
+
showPropertyMarker?: boolean;
|
|
58
|
+
/** Property name for the info window */
|
|
59
|
+
propertyName?: string;
|
|
60
|
+
/** Property address for the info window */
|
|
61
|
+
propertyAddress?: string;
|
|
62
|
+
/** Property pin color (default '#4a7c59') */
|
|
63
|
+
propertyPinColor?: string;
|
|
64
|
+
}
|
|
65
|
+
interface PlaceTypeFilter {
|
|
66
|
+
id: string;
|
|
67
|
+
label: string;
|
|
68
|
+
icon: string;
|
|
69
|
+
}
|
|
70
|
+
interface NeighborhoodMapProps {
|
|
71
|
+
/** Property coordinates — center of the map and nearby search */
|
|
72
|
+
center: {
|
|
73
|
+
lat: number;
|
|
74
|
+
lng: number;
|
|
75
|
+
};
|
|
76
|
+
/** Property name for the map marker */
|
|
77
|
+
propertyName: string;
|
|
78
|
+
/** Full address for the info window and Google Maps link */
|
|
79
|
+
propertyAddress: string;
|
|
80
|
+
/** CSS class for the outer container */
|
|
81
|
+
className?: string;
|
|
82
|
+
/** Custom place type filters (defaults to restaurants, bars, cafes, fitness, parks, shopping) */
|
|
83
|
+
placeTypes?: PlaceTypeFilter[];
|
|
84
|
+
/** Section title (default "Interactive Map") */
|
|
85
|
+
title?: string;
|
|
86
|
+
/** Section subtitle */
|
|
87
|
+
subtitle?: string;
|
|
88
|
+
/** Property pin color */
|
|
89
|
+
propertyPinColor?: string;
|
|
90
|
+
}
|
|
91
|
+
declare const DEFAULT_PLACE_TYPES: PlaceTypeFilter[];
|
|
92
|
+
|
|
93
|
+
declare function GoogleMap({ apiKey, mapId, center, zoom, markers, className, showPropertyMarker, propertyName, propertyAddress, propertyPinColor, }: GoogleMapProps): react_jsx_runtime.JSX.Element;
|
|
94
|
+
|
|
95
|
+
declare function NeighborhoodMap({ center, propertyName, propertyAddress, className, placeTypes, title, subtitle, propertyPinColor, }: NeighborhoodMapProps): react_jsx_runtime.JSX.Element;
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* @sonordev/site-kit/maps — API Functions
|
|
99
|
+
*
|
|
100
|
+
* Fetch Google Maps config and nearby places from Sonor API.
|
|
101
|
+
* Uses API key authentication (x-api-key header).
|
|
102
|
+
*/
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Fetch Google Maps config (API key + map ID) from Sonor API.
|
|
106
|
+
* Cached for 5 minutes to avoid redundant calls.
|
|
107
|
+
*/
|
|
108
|
+
declare function fetchMapsConfig(): Promise<MapsConfig | null>;
|
|
109
|
+
/**
|
|
110
|
+
* Fetch nearby places from Sonor API.
|
|
111
|
+
* Cached per type for 1 minute.
|
|
112
|
+
*/
|
|
113
|
+
declare function fetchNearbyPlaces(params: {
|
|
114
|
+
lat: number;
|
|
115
|
+
lng: number;
|
|
116
|
+
type: string;
|
|
117
|
+
radius?: number;
|
|
118
|
+
limit?: number;
|
|
119
|
+
}): Promise<NearbyPlace[]>;
|
|
120
|
+
|
|
121
|
+
export { DEFAULT_PLACE_TYPES, GoogleMap, type GoogleMapProps, type MapMarker, type MapsConfig, type NearbyPlace, NeighborhoodMap, type NeighborhoodMapProps, type PlaceTypeFilter, fetchMapsConfig, fetchNearbyPlaces };
|