-
+
setShowUpload(true)}
+ handleSave={() => {}}
+ />
-
+
-
+
@@ -110,6 +120,10 @@ export function Playground() {
)}
+
+
+
+
>
);
}
diff --git a/frontend-37/src/features/playground/query-input/HelpButton.module.css b/frontend-37/src/features/playground/query-input/HelpButton.module.css
new file mode 100644
index 00000000..91f4a482
--- /dev/null
+++ b/frontend-37/src/features/playground/query-input/HelpButton.module.css
@@ -0,0 +1,38 @@
+.button {
+ width: 76.5px;
+ height: 40px;
+ border-radius: 5px;
+ border: none;
+ border: 1px solid #c1c1c1;
+ background-color: white;
+ padding-top: 10px;
+ padding-right: 10px;
+ padding-bottom: 10px;
+ padding-left: 10px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+
+ z-index: 2;
+
+ font-family: "Onest", sans-serif;
+ font-size: inherit !important;
+}
+
+.button:hover {
+ cursor: pointer;
+}
+
+.button img {
+ width: 16.5px;
+ height: 16.5px;
+ padding-left: 8px;
+}
+
+.button p {
+ width: 37px;
+ height: 20px;
+ margin: auto;
+
+ color: #666666;
+}
diff --git a/frontend-37/src/features/playground/query-input/HelpButton.tsx b/frontend-37/src/features/playground/query-input/HelpButton.tsx
new file mode 100644
index 00000000..bab3676b
--- /dev/null
+++ b/frontend-37/src/features/playground/query-input/HelpButton.tsx
@@ -0,0 +1,17 @@
+import infoImg from "@/assets/info.svg";
+import styles from "./HelpButton.module.css";
+
+interface HelpButtonProps {
+ handleClick: () => void;
+}
+
+export function HelpButton({ handleClick }: HelpButtonProps) {
+ return (
+ <>
+
+ >
+ );
+}
diff --git a/frontend-37/src/features/playground/query-input/QueryInput.module.css b/frontend-37/src/features/playground/query-input/QueryInput.module.css
index b2609139..291c16c8 100644
--- a/frontend-37/src/features/playground/query-input/QueryInput.module.css
+++ b/frontend-37/src/features/playground/query-input/QueryInput.module.css
@@ -7,6 +7,13 @@
height: 100%;
position: relative;
+
+ font-size: 16px;
+ font-weight: 400;
+
+ line-height: 19px;
+
+ background-color: white;
}
.wrapper {
@@ -30,7 +37,7 @@
flex-direction: column;
flex-basis: 42px;
- color: #d4d4d4;
+ color: #c1c1c1;
margin-top: 10px;
max-height: 100%;
@@ -41,11 +48,12 @@
overflow: hidden;
user-select: none;
+
+ background: transparent;
}
.rowcounter div {
text-align: right;
- line-height: 25px;
}
.textarea {
@@ -56,7 +64,7 @@
font-family: inherit;
font-size: inherit;
font-weight: inherit;
- line-height: inherit;
+ line-height: inherit !important;
color: inherit;
/* Ensure it grows and scrolls correctly */
@@ -77,8 +85,42 @@
z-index: 1;
scrollbar-width: thin;
+
+ color: #1f1f1f;
+
+ background: transparent;
}
.textarea::selection {
- background-color: #dedeff;
+ background-color: rgba(169, 169, 255, 0.3);
+}
+
+.bgImg {
+ width: 100%;
+ height: 100%;
+}
+
+.bgMongo {
+ position: absolute;
+ top: 148px;
+ width: 410px;
+ height: 704px;
+}
+
+.bgPSQL {
+ position: absolute;
+ top: 49;
+ width: 736px;
+ height: 862px;
+}
+
+.buttonsWrapper {
+ position: absolute;
+ right: 15px;
+ bottom: 15px;
+
+ display: flex;
+ flex-direction: row;
+
+ gap: 10px;
}
diff --git a/frontend-37/src/features/playground/query-input/RunButton.module.css b/frontend-37/src/features/playground/query-input/RunButton.module.css
index d9b32639..43b27e2a 100644
--- a/frontend-37/src/features/playground/query-input/RunButton.module.css
+++ b/frontend-37/src/features/playground/query-input/RunButton.module.css
@@ -1,22 +1,21 @@
.button {
- width: 111px;
- height: 53px;
- border-radius: 10px;
- border: 1px solid #c1c1c1;
- background-color: white;
- padding-top: 6px;
- padding-right: 9px;
- padding-bottom: 6px;
- padding-left: 9px;
+ width: 87px;
+ height: 40px;
+ border-radius: 5px;
+ border: 1px transparent;
+ background-color: #a9a9ff;
+ padding-top: 10px;
+ padding-right: 15px;
+ padding-bottom: 10px;
+ padding-left: 15px;
display: flex;
justify-content: center;
align-items: center;
- position: absolute;
- right: 10px;
- bottom: 10px;
-
z-index: 2;
+
+ font-family: "Onest", sans-serif;
+ font-size: inherit !important;
}
.button:hover {
@@ -24,14 +23,15 @@
}
.button img {
- width: 36px;
- height: 36px;
- padding-left: 5px;
+ width: 12px;
+ height: 16px;
+ padding-left: 8px;
}
.button p {
- font-size: 24px;
width: 52px;
height: 28px;
- margin-bottom: 32px;
+ margin: auto;
+
+ color: white;
}
diff --git a/frontend-37/src/features/playground/query-input/RunButton.tsx b/frontend-37/src/features/playground/query-input/RunButton.tsx
index f3a7de4a..da4e14a5 100644
--- a/frontend-37/src/features/playground/query-input/RunButton.tsx
+++ b/frontend-37/src/features/playground/query-input/RunButton.tsx
@@ -1,4 +1,4 @@
-import triangleJpg from "@/assets/triangle.jpg";
+import runImg from "@/assets/run.svg";
import styles from "./RunButton.module.css";
interface RunButtonProps {
@@ -9,8 +9,8 @@ export function RunButton({ handleClick }: RunButtonProps) {
return (
<>
>
);
diff --git a/frontend-37/src/features/playground/query-input/index.tsx b/frontend-37/src/features/playground/query-input/index.tsx
index 8e733660..18f98136 100644
--- a/frontend-37/src/features/playground/query-input/index.tsx
+++ b/frontend-37/src/features/playground/query-input/index.tsx
@@ -1,9 +1,13 @@
+import mongoImg from "@/assets/inputBgMongo.png";
+import psqlImg from "@/assets/inputBgPGSQL.png";
import { API_URL } from "@/config/env";
+import { DBType } from "@/types/DBType";
import { useRef, useState, useEffect } from "react";
import styles from "./QueryInput.module.css";
import { queryResultsStore } from "../queryResultsStore";
import { schemasStore } from "../schemasStore";
import { QueryResult, DBSchema } from "../types";
+import { HelpButton } from "./HelpButton";
import { RunButton } from "./RunButton";
export interface QueryResultsResponse {
@@ -15,7 +19,11 @@ export interface QueryResultsResponse {
};
}
-export function QueryInput() {
+interface QueryInputProps {
+ templateType: DBType;
+}
+
+export function QueryInput({ templateType }: QueryInputProps) {
const textareaRef = useRef
(null);
const numbersColumnRef = useRef(null);
const containerRef = useRef(null);
@@ -90,11 +98,18 @@ export function QueryInput() {
return (
+
+

+
+
+

+
-
+
+ {}} />
+
+
);
}