diff --git a/web/src/components/ui/list/ListEmptyStateWithButton.tsx b/web/src/components/ui/list/ListEmptyStateWithButton.tsx
index 2bb5478a2..2de15fe5e 100644
--- a/web/src/components/ui/list/ListEmptyStateWithButton.tsx
+++ b/web/src/components/ui/list/ListEmptyStateWithButton.tsx
@@ -10,10 +10,24 @@ export const ListEmptyStateWithButton: React.FC<{
description: string;
onClick?: () => void;
buttonText: string;
+ buttonPrefix?: React.ReactNode;
+ buttonSuffix?: React.ReactNode;
loading?: boolean;
linkButton?: string;
+ linkButtonTarget?: '_blank' | '_self';
}> = React.memo(
- ({ isAdmin = true, linkButton, title, buttonText, description, onClick, loading = false }) => {
+ ({
+ isAdmin = true,
+ buttonPrefix,
+ buttonSuffix,
+ linkButton,
+ title,
+ buttonText,
+ description,
+ onClick,
+ loading = false,
+ linkButtonTarget
+ }) => {
return (
-
+
{title}
@@ -30,8 +44,13 @@ export const ListEmptyStateWithButton: React.FC<{
{isAdmin && (
-
- } loading={loading} onClick={onClick}>
+
+ }
+ suffix={buttonSuffix}
+ loading={loading}
+ onClick={onClick}>
{buttonText}
@@ -45,9 +64,14 @@ export const ListEmptyStateWithButton: React.FC<{
const ButtonWrapper: React.FC<{
children: React.ReactNode;
href?: string;
-}> = ({ children, href }) => {
+ target?: '_blank' | '_self';
+}> = ({ children, href, target }) => {
if (!href) return <>{children}>;
- return {children};
+ return (
+
+ {children}
+
+ );
};
ListEmptyStateWithButton.displayName = 'ListEmptyStateWithButton';
diff --git a/web/src/controllers/DatasetsListController/DatasetListContent.tsx b/web/src/controllers/DatasetsListController/DatasetListContent.tsx
index 9eee12868..7cf6dca65 100644
--- a/web/src/controllers/DatasetsListController/DatasetListContent.tsx
+++ b/web/src/controllers/DatasetsListController/DatasetListContent.tsx
@@ -1,15 +1,15 @@
'use client';
import React, { useState, useMemo } from 'react';
-import { AppPageLayoutContent } from '@/components/ui/layouts/AppPageLayoutContent';
import { Avatar } from '@/components/ui/avatar';
import { formatDate } from '@/lib';
import { BusterList, BusterListColumn, BusterListRow } from '@/components/ui/list';
-import { BusterRoutes, createBusterRoute } from '@/routes';
+import { BUSTER_DOCS_QUICKSTART, BusterRoutes, createBusterRoute } from '@/routes';
import type { BusterDatasetListItem } from '@/api/asset_interfaces';
import { ListEmptyStateWithButton } from '@/components/ui/list';
import { useMemoizedFn } from '@/hooks';
import { DatasetSelectedOptionPopup } from './DatasetSelectedPopup';
+import { ArrowUpRight, ExternalLink } from '@/components/ui/icons';
const columns: BusterListColumn[] = [
{
@@ -91,9 +91,13 @@ export const DatasetListContent: React.FC<{
>}
+ buttonSuffix={}
+ linkButtonTarget="_blank"
+ description="Datasets help you organize your data and Buster uses them to help answer questions. Datasets will appear here when you create them. Currently, you can only create datasets through our CLI tool which you can read more about in our docs."
+ // onClick={onClickEmptyState}
/>
),
[isFetchedDatasets, isAdmin, onClickEmptyState]
diff --git a/web/src/controllers/DatasetsListController/DatasetsListController.tsx b/web/src/controllers/DatasetsListController/DatasetsListController.tsx
index 2fc8f8347..74f0c18fb 100644
--- a/web/src/controllers/DatasetsListController/DatasetsListController.tsx
+++ b/web/src/controllers/DatasetsListController/DatasetsListController.tsx
@@ -48,7 +48,7 @@ export const DatasetsListController: React.FC<{}> = ({}) => {
/>
}>