diff --git a/dashboard/components/explorer/DependencyGraph.tsx b/dashboard/components/explorer/DependencyGraph.tsx
index 0b116759f..4c98ab025 100644
--- a/dashboard/components/explorer/DependencyGraph.tsx
+++ b/dashboard/components/explorer/DependencyGraph.tsx
@@ -151,7 +151,7 @@ const DependencyGraph = ({ data }: DependencyGraphProps) => {
{data?.nodes?.length} Resources
-
+
Only AWS resources are currently supported on the explorer.
diff --git a/dashboard/components/layout/Layout.tsx b/dashboard/components/layout/Layout.tsx
index 26c6b424e..b2b8f08b4 100644
--- a/dashboard/components/layout/Layout.tsx
+++ b/dashboard/components/layout/Layout.tsx
@@ -28,7 +28,11 @@ function Layout({ children }: LayoutProps) {
useEffect(() => {
settingsService.getOnboardingStatus().then(res => {
- if (res.onboarded === true && res.status === 'COMPLETE') {
+ if (
+ res.onboarded === true &&
+ res.status === 'COMPLETE' &&
+ router.asPath.includes('/onboarding/')
+ ) {
router.replace('/dashboard/');
} else if (res.onboarded === false && res.status === 'PENDING_DATABASE') {
router.replace('/onboarding/choose-database');
diff --git a/dashboard/components/tooltip/Tooltip.stories.tsx b/dashboard/components/tooltip/Tooltip.stories.tsx
new file mode 100644
index 000000000..ffb727ba2
--- /dev/null
+++ b/dashboard/components/tooltip/Tooltip.stories.tsx
@@ -0,0 +1,67 @@
+import type { Meta, StoryObj } from '@storybook/react';
+import WarningIcon from '@components/icons/WarningIcon';
+import Tooltip from './Tooltip';
+
+// More on how to set up stories at: https://storybook.js.org/docs/7.0/react/writing-stories/introduction
+const meta: Meta = {
+ title: 'Komiser/Tooltip',
+ component: Tooltip,
+ parameters: {
+ docs: {
+ description: {
+ component:
+ // eslint-disable-next-line no-multi-str
+ 'The tooltip component required to be wrapped inside an relative positioned container. There also need to be a trigger element which is required to have `className="peer"`!\
+ In this example the strigger element is the Info icon.\
+ The Storybook preview gives you an idea about possible parameters but might not work 100% because you should either define top **or** bottom, **not** both.\
+ To allow to show all possible options, we define both top, bottom and left, right in this example. Please keep this in mind!'
+ }
+ }
+ },
+ tags: ['autodocs'],
+ decorators: [
+ Story => (
+
+ )
+ ],
+ argTypes: {
+ top: {
+ control: {
+ type: 'inline-radio'
+ }
+ },
+ bottom: {
+ control: {
+ type: 'inline-radio'
+ }
+ },
+ align: {
+ control: {
+ type: 'inline-radio'
+ }
+ },
+ width: {
+ control: {
+ type: 'inline-radio'
+ }
+ }
+ }
+};
+
+export default meta;
+type Story = StoryObj;
+
+// More on writing stories with args: https://storybook.js.org/docs/7.0/react/writing-stories/args
+export const TopTiny: Story = {
+ args: {
+ top: 'xs',
+ align: 'left',
+ width: 'lg',
+ children: "That's a tooltip"
+ }
+};
diff --git a/dashboard/components/tooltip/Tooltip.tsx b/dashboard/components/tooltip/Tooltip.tsx
index f66552cf2..7fdec818a 100644
--- a/dashboard/components/tooltip/Tooltip.tsx
+++ b/dashboard/components/tooltip/Tooltip.tsx
@@ -3,7 +3,8 @@ import { ReactNode } from 'react';
type TooltipProps = {
children: ReactNode;
- top?: 'sm' | 'md' | 'lg';
+ top?: 'xs' | 'sm' | 'md' | 'lg';
+ bottom?: 'xs' | 'sm' | 'md' | 'lg';
align?: 'left' | 'center' | 'right';
width?: 'sm' | 'md' | 'lg';
};
@@ -12,15 +13,24 @@ function Tooltip({
children,
top = 'md',
align = 'left',
- width = 'md'
+ width = 'md',
+ bottom
}: TooltipProps) {
return (