diff --git a/docs/config.md b/docs/config.md index 3c27ea2a09..3b7aee0a22 100644 --- a/docs/config.md +++ b/docs/config.md @@ -152,6 +152,8 @@ For a good example, see https://develop.element.io/config.json. 1. `sentry`: [Sentry](https://sentry.io/) configuration for rageshake data being sent to sentry. 1. `dsn`: the Sentry [DSN](https://docs.sentry.io/product/sentry-basics/dsn-explainer/) 2. `environment`: (optional) The [Environment](https://docs.sentry.io/product/sentry-basics/environments/) to pass to sentry +1. `map_style_url`: Maptile server URL for location sharing. e.g. + 'https://api.maptiler.com/maps/basic/style.json?key=YOUR_KEY_GOES_HERE' 1. `analyticsOwner`: The entity that analytics data is being sent to. Used in copy when explaining to the user where data is being sent. If not set, defaults to `brand`. diff --git a/docs/labs.md b/docs/labs.md index 35d12179a0..4920776b2e 100644 --- a/docs/labs.md +++ b/docs/labs.md @@ -151,6 +151,19 @@ entirely incomplete and may not work at all - it is not recommended for general Metaspaces are automatically populated spaces you can enable in your Space panel. By default, you'll have Home or All rooms, but you can opt in to a People, Favourites, and Other Rooms metaspace too. +## Location sharing (`feature_location_share`) [In Development] + +Allows users to send and display location data using [maplibre](https://maplibre.org). + +The current implementation is a quick in-progress development spike to +demonstrate viability and prove [MSC3488](https://github.com/matrix-org/matrix-doc/pull/3488) +and [MSC3489](https://github.com/matrix-org/matrix-doc/pull/3489) - **the UI has not yet +been designed, and it will not exit labs until it has**. + +For this to work, you must specify a valid maptiler.com API key in +`"map_style_url": "https://api.maptiler.com/maps/basic/style.json?key=YOUR_KEY_GOES_HERE"` +in your config.json, or find an alternative map tile server. + ## Breadcrumbs v2 (`feature_breadcrumbs_v2`) Instead of showing the horizontal list of breadcrumbs under the filter field, the new UX is an interactive context menu diff --git a/src/vector/index.html b/src/vector/index.html index b0a2425338..fba86dbdce 100644 --- a/src/vector/index.html +++ b/src/vector/index.html @@ -32,7 +32,7 @@ font-src 'self' data:; media-src * blob: data:; child-src * blob: data:; - worker-src 'self'; + worker-src 'self' blob:; frame-src * blob: data:; form-action 'self'; manifest-src 'self'; diff --git a/test/jest-mocks.js b/test/jest-mocks.js index e924768b9b..6e1ea8a605 100644 --- a/test/jest-mocks.js +++ b/test/jest-mocks.js @@ -12,3 +12,6 @@ Object.defineProperty(window, 'matchMedia', { dispatchEvent: jest.fn(), })), }); + +// maplibre requires a createObjectURL mock +global.URL.createObjectURL = jest.fn();