Configure the tools
The tools are located on the left of the application, when the user is viewing a dashboard.
By default, they include:
- Fields
- Filters
- Style
@activeviam/atoti-ui-sdk
exports additional tools which can be plugged into Atoti UI:
To learn how to make these tools available in your application, see activate the state tab.
Prerequisites
Before you read this page, you must complete Setup.
Add a tool
To add a tab (for example the Query tab), go to your index.ts
and make the following change:
import { toolQueryEditor } from "@activeviam/atoti-ui-sdk";
const extension: ExtensionModule = {
activate: async (configuration) => {
configuration.tools.push(toolQueryEditor);
},
};
Remove a tool
Similarly, you can remove a tab like this:
const extension: ExtensionModule = {
activate: async (configuration) => {
configuration.tools = configuration.tools.filter(
({ key }) => key !== "widgets",
);
},
};
Create a custom tool
You can also create custom tabs.
This can be done by creating a Tool and adding it to configuration.tools
.
Create a file named myTool.tsx
with the following content:
import React, { FC } from "react";
import { EditorProps, Tool } from "@activeviam/atoti-ui-sdk";
import { CheckOutlined } from "@activeviam/icons/antd";
const MyToolComponent: FC<EditorProps> = () => <div>Hello world</div>;
const MyToolIcon: FC = () => <CheckOutlined />;
export const myTool: Tool = {
key: "my-tool",
component: MyToolComponent,
type: "single",
icon: MyToolIcon,
};
MyToolComponent
has access to the state of the dashboard and to those of the selected widget. It can also update these pieces of state. See EditorProps for more information.
Finally, go to your index.ts
and make the following change:
import { myTool } from "./myTool";
const extension: ExtensionModule = {
activate: async (configuration) => {
configuration.tools.push(myTool);
},
};