diff --git a/CHANGELOG.md b/CHANGELOG.md index eea155bd..c648859f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,26 @@ # Changelog +## [1.8.0](https://github.com/visgl/react-google-maps/compare/v1.7.1...v1.8.0) (2026-03-26) + + +### Features + +* add 2d geometry components - circle, polyline and polygon ([#917](https://github.com/visgl/react-google-maps/issues/917)) ([54b1d0e](https://github.com/visgl/react-google-maps/commit/54b1d0e338e03d2dc5defb67297d52f034f2bd99)) +* add 3D map, marker and popover components ([#898](https://github.com/visgl/react-google-maps/issues/898)) ([2ba09a1](https://github.com/visgl/react-google-maps/commit/2ba09a1c2d4cd9fe3e6d0b6ad1d5047b4cda07f6)) +* add fetchAppCheckToken prop to APIProvider ([#913](https://github.com/visgl/react-google-maps/issues/913)) ([992994d](https://github.com/visgl/react-google-maps/commit/992994d7e16373bf74c2e407adc5d77e5a510080)) +* **api-loader:** migrate to @googlemaps/js-api-loader ([#885](https://github.com/visgl/react-google-maps/issues/885)) ([4af51dd](https://github.com/visgl/react-google-maps/commit/4af51ddf42953a7b0ca3050be712aed0e8efce32)) +* **map3d:** refactor components to use custom elements ([#765](https://github.com/visgl/react-google-maps/issues/765)) ([8b60a78](https://github.com/visgl/react-google-maps/commit/8b60a78115fd6d5f321996f570089223300a736d)) +* **pin:** split Pin component into modern and legacy implementations ([#945](https://github.com/visgl/react-google-maps/issues/945)) ([4826836](https://github.com/visgl/react-google-maps/commit/4826836e737ba1664d6fea3cae24e95a2303392e)) + + +### Bug Fixes + +* better handling for `clickable` prop in AdvancedMarker ([#906](https://github.com/visgl/react-google-maps/issues/906)) ([c8ff82f](https://github.com/visgl/react-google-maps/commit/c8ff82fd2fc251685782d300260d503f2d44e5a4)) +* introduce useEffectEvent to improve stability of event handlers ([#866](https://github.com/visgl/react-google-maps/issues/866)) ([e44933e](https://github.com/visgl/react-google-maps/commit/e44933e7d5f3d79e845081b2cf038f05a0b001f9)) +* **map:** improve reuseMaps reliability after remounting ([#920](https://github.com/visgl/react-google-maps/issues/920)) ([e9296de](https://github.com/visgl/react-google-maps/commit/e9296deeb21f127cb0b5cdc7aea7a77749824e74)) +* more efficient useMemoized hook and fixed infowindow issues ([#903](https://github.com/visgl/react-google-maps/issues/903)) ([8cb7151](https://github.com/visgl/react-google-maps/commit/8cb7151caf5da2e0b325fcad9ff434913f9f8a33)) +* trigger release-please action ([0eaabeb](https://github.com/visgl/react-google-maps/commit/0eaabeba45349fae98118e38929d8111134a5ba5)) + ## [1.7.1](https://github.com/visgl/react-google-maps/compare/v1.7.0...v1.7.1) (2025-11-03) diff --git a/docs/whats-new.md b/docs/whats-new.md index 3647a390..c80024f4 100644 --- a/docs/whats-new.md +++ b/docs/whats-new.md @@ -5,6 +5,86 @@ recent versions of the library. For a complete list of changes, including bug fixes, please refer to the [Changelog](https://github.com/visgl/react-google-maps/blob/main/CHANGELOG.md). +## Version 1.8 (March 2026) + +### 2D Geometry Components: Circle, Polyline, and Polygon + +Three new components make it straightforward to draw geometric shapes directly +on the map without managing the underlying Google Maps API objects manually. + +- **``** — renders a circle at a given center and radius +- **``** — draws a line through a series of coordinates (also accepts + encoded polyline strings) +- **``** — renders a closed shape, supporting multiple paths for + complex geometries + +All three components support controlled and uncontrolled usage, as well as the +full set of event handlers (click, drag, mouse events) and change callbacks. + +```tsx + +``` + +See the API reference for +[``](./api-reference/components/circle.md), +[``](./api-reference/components/polyline.md), and +[``](./api-reference/components/polygon.md) for the full prop +documentation, and the [geometry example](https://visgl.github.io/react-google-maps/examples/geometry) +for a live demo. + +### 3D Map Components: Map3D, Marker3D, and Popover + +The library now ships first-class React components for the Google Maps 3D API: + +- **``** — renders a photorealistic 3D map (uses the `gmp-map-3d` custom + element internally) with props for camera position (`center`, `range`, + `heading`, `tilt`, `roll`) and a `useMap3D` hook to access the underlying + element +- **``** — places a 3D marker on a `` +- **``** — renders an HTML popover attached to a position on a `` + +```tsx + + + +``` + +See the API reference for +[``](./api-reference/components/map-3d.md), +[``](./api-reference/components/marker-3d.md), and +[``](./api-reference/components/popover.md), and the +[map-3d example](https://visgl.github.io/react-google-maps/examples/map-3d) for +a live demo. + +### Firebase App Check Support + +The `` component now accepts a `fetchAppCheckToken` prop. When +provided, the token returned by this function is sent along with every Maps +JavaScript API request, enabling +[Firebase App Check](https://firebase.google.com/docs/app-check) protection for +your Maps usage. + +```tsx + getToken(appCheck).then(r => r.token)}> + {/* ... */} + +``` + +See the [`` API reference](./api-reference/components/api-provider.md) +for details. + ## Version 1.7 (October 2025) ### Add support for Custom Elements diff --git a/package-lock.json b/package-lock.json index 7229fded..be316e11 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@vis.gl/react-google-maps", - "version": "1.7.1", + "version": "1.8.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@vis.gl/react-google-maps", - "version": "1.7.1", + "version": "1.8.0", "license": "MIT", "dependencies": { "@googlemaps/js-api-loader": "^2.0.2", @@ -4970,9 +4970,9 @@ } }, "node_modules/flatted": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz", - "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.1.tgz", + "integrity": "sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==", "dev": true, "license": "ISC" }, diff --git a/package.json b/package.json index 16192e1f..44c90347 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@vis.gl/react-google-maps", - "version": "1.7.1", + "version": "1.8.0", "description": "React components and hooks for the Google Maps JavaScript API", "source": "src/index.ts", "main": "dist/index.umd.js",