diff --git a/.gitignore b/.gitignore index ac9edce..350c520 100644 --- a/.gitignore +++ b/.gitignore @@ -27,4 +27,5 @@ dist-ssr # Remove some things for docker-compose -.clickhouse_local_data \ No newline at end of file +.clickhouse_local_data + diff --git a/Dockerfile b/Dockerfile index 9058505..b900e37 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,6 +10,10 @@ COPY package*.json ./ # Install dependencies RUN npm install +# Run browser list update +RUN npx update-browserslist-db@latest + + # Bundle app source inside Docker image COPY . . diff --git a/index.html b/index.html index f57148b..191161f 100644 --- a/index.html +++ b/index.html @@ -2,12 +2,12 @@
- + -- The page you are looking for does not exist. -
-- {project.description} -
- {project.cta && ( - - )} -No results to display
-- Error: {tab.tab_errors} -
-
- Rows Read:
- {isLoadingQuery ? (
-
- Elapsed:
- {isLoadingQuery ? (
-
- Data Read:
- {isLoadingQuery ? (
-
- Last Run:
- {isLoadingQuery ? (
-
- No tables found in the selected database -
- )} -Server Status
++ {isLoadingCredentials + ? "Connecting..." + : isServerAvailable + ? "Connected" + : "Disconnected"} +
+Version: {version}
+{errors.databaseName}
+ )} +{errors.clusterName}
+ )} ++ {sql} ++
Loading...
+{tabError}
+ +No results found
+ {searchTerm && ( + + )} +Table Schema:
+ ++ {errors[`fields.${index}.name`]} +
+ )} +{errors.database}
+ )} +{errors.tableName}
+ )} ++ {errors.csvDelimiter} +
+ )} ++ {errors.csvQuoteChar} +
+ )} ++ {errors.csvEscapeChar} +
+ )} ++ {errors.csvHeaderRowsToSkip} +
+ )} +{errors.file}
} +{errors.database}
+ )} +{errors.tableName}
+ )} ++ {sql} ++
{node.name}
++ {errorMessage} +
+Copy error message
+Copy associated query
+Attempt to fetch data again
++ {item.description} +
++ {children} +
+{message}
++ Query ID: {query_id || "Unknown"} +
+No data/meta
+Rows Read: {statistics.rows_read}
+Bytes Read: {statistics.bytes_read}
+Elapsed Time: {statistics.elapsed} seconds
+
+ {header.isPlaceholder ? null : (
+ <>
+ {header.column.id === "row-number" ? (
+ "#"
+ ) : (
+
+
+ )}
+ {header.column.getCanResize() && (
+
+ {flexRender(
+ header.column.columnDef.header,
+ header.getContext()
+ )}
+ {{
+ asc:
+
+
+ handleDoubleClick(header)}
+ className={`absolute right-0 top-0 h-full w-1 bg-gray-300 cursor-col-resize select-none touch-none hover:bg-gray-400 ${
+ header.column.getIsResizing() ? "bg-gray-500" : ""
+ }`}
+ />
+ )}
+ >
+ )}
+ |
+ ))}
+
---|
+ |
+ |
+ {detail.label} +
+{detail.value}
++ {((data.total_bytes / data.lifetime_bytes) * 100).toFixed(2)}% + of lifetime data +
+
+ {(data as TableData).create_table_query}
+
+ Running query
+Run a query to see results here
+ ); + } + + if (tab.result.error) { + return ( +- {children} -
- ); -}; diff --git a/src/components/ui/card.jsx b/src/components/ui/card.jsx deleted file mode 100644 index dd79b51..0000000 --- a/src/components/ui/card.jsx +++ /dev/null @@ -1,50 +0,0 @@ -import * as React from "react" - -import { cn } from "@/lib/utils" - -const Card = React.forwardRef(({ className, ...props }, ref) => ( - -)) -Card.displayName = "Card" - -const CardHeader = React.forwardRef(({ className, ...props }, ref) => ( - -)) -CardHeader.displayName = "CardHeader" - -const CardTitle = React.forwardRef(({ className, ...props }, ref) => ( - -)) -CardTitle.displayName = "CardTitle" - -const CardDescription = React.forwardRef(({ className, ...props }, ref) => ( - -)) -CardDescription.displayName = "CardDescription" - -const CardContent = React.forwardRef(({ className, ...props }, ref) => ( - -)) -CardContent.displayName = "CardContent" - -const CardFooter = React.forwardRef(({ className, ...props }, ref) => ( - -)) -CardFooter.displayName = "CardFooter" - -export { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent } diff --git a/src/components/ui/card.tsx b/src/components/ui/card.tsx new file mode 100644 index 0000000..afa13ec --- /dev/null +++ b/src/components/ui/card.tsx @@ -0,0 +1,79 @@ +import * as React from "react" + +import { cn } from "@/lib/utils" + +const Card = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes