Atlas Dashboard
<bk-atlas-dashboard></bk-atlas-dashboard>

The Atlas Dashboard embeds a read-only dashboard from MongoDB Atlas.
The Atlas Dashboard embeds of a dashboard from MongoDB Atlas which displays data (or filtered data when alongside a filtering component).
How to configure
The Atlas Dashboard should be provided with properties:
baseUrl: URL to reach the dashboard to visualizeddashboardId: id of the dashboard to visualize
{
"tag": "bk-atlas-dashboard",
"properties": {
"baseUrl": "/mongo-db/project-1",
"dashboardId": "dashboard-orders"
}
}
Authentication
To embed an authenticated dashboard, an authentication service must be reachable by the Atlas Dashboard.
Properties apiKey and authEndpoint are used by the Atlas Dashboard to perform authentication.
For instance, service atlas-dashboard-authentication is available in Mia Platform Marketplace as an authentication backend solution.
Filters
The Atlas Dashboard component listens to filtering events in order to replicate the applied filters to the visualized dashboard.
The Atlas Dashboard component listens to filtering events to synchronize applied filters with the displayed dashboard. This synchronization is achieved by monitoring change-query events and relies on a data-schema that defines the structure of the data, which must be provided to the Atlas Dashboard.
When the component detects a change-query event, it processes the event payload's search, filters, and characteristic keys, converting them into queries compatible with the MongoDB Atlas service.
Subsequently, a new call to the service is made, leading to the re-rendering of the dashboard with the updated filters.
{
"tag": "bk-atlas-dashboard",
"properties": {
"dataSchema": {
"type": "object",
"properties": {
"baseUrl": "/mongo-db/project-1",
"dashboardId": "dashboard-orders",
"name": {
"type": "string"
}
}
}
}
}
Known issues
Flickering size
It could happen that the component keeps resizing. This is due to scaling problems of the embedded Mongo Atlas iframe.
This is a known issue of Mongo Atlas, which can be temporarily fixed adding some padding to the component:
{
"tag": "bk-atlas-dashboard",
"attributes": {
"style": "padding: 0.5px"
},
"properties": {
"baseUrl": "/mongo-db/project-1",
"dashboardId": "dashboard-orders"
}
}
API
Properties & Attributes
| property | attribute | type | default | description |
|---|---|---|---|---|
apiKey | api-key | string | - | apikey to call the authentication route from a trusted entity. Leave empty if not set |
authEndpoint | auth-endpoint | string | - | endpoint for the dashboard authentication |
background | background | string | "transparent" | background color of the dashboard. Possible values are color hex code, CSS color name |
baseUrl | base-url | string | - | base URL of the embedded dashboard |
dashboardId | dashboard-id | string | - | dashboard id of the embedded dashboard |
dataSchema | - | ExtendedJSONSchema7Definition | - | data-schema describing the fields of the collection |
Listens to
| event | action |
|---|---|
| change-query | applies filters to its dashboard |
Emits
None