@libredb/studio 0.9.12 → 0.9.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-VWVRUCQO.mjs → chunk-CPF7XWV5.mjs} +77 -77
- package/dist/chunk-CPF7XWV5.mjs.map +1 -0
- package/dist/{chunk-DZ2UB3C6.mjs → chunk-G3S66G64.mjs} +259 -265
- package/dist/chunk-G3S66G64.mjs.map +1 -0
- package/dist/{chunk-JOGLIOFO.js → chunk-HGPD6PWV.js} +129 -129
- package/dist/chunk-HGPD6PWV.js.map +1 -0
- package/dist/{chunk-RBVDMLFV.js → chunk-Y52UIFEX.js} +259 -265
- package/dist/chunk-Y52UIFEX.js.map +1 -0
- package/dist/components.js +14 -14
- package/dist/components.mjs +2 -2
- package/dist/index.js +14 -14
- package/dist/index.mjs +2 -2
- package/dist/workspace.js +350 -358
- package/dist/workspace.js.map +1 -1
- package/dist/workspace.mjs +220 -228
- package/dist/workspace.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-DZ2UB3C6.mjs.map +0 -1
- package/dist/chunk-JOGLIOFO.js.map +0 -1
- package/dist/chunk-RBVDMLFV.js.map +0 -1
- package/dist/chunk-VWVRUCQO.mjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Label, Input, Button, ENVIRONMENT_COLORS, ENVIRONMENT_LABELS, cn, getDBConfig, Dialog, DialogContent, DialogTitle, DialogDescription } from './chunk-
|
|
1
|
+
import { Label, Input, Button, ENVIRONMENT_COLORS, ENVIRONMENT_LABELS, cn, getDBConfig, Dialog, DialogContent, DialogTitle, DialogDescription } from './chunk-G3S66G64.mjs';
|
|
2
2
|
import { __spreadValues, __objRest, __spreadProps } from './chunk-4LVB3K53.mjs';
|
|
3
3
|
import { Drawer as Drawer$1 } from 'vaul';
|
|
4
4
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
@@ -638,18 +638,18 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
638
638
|
/* @__PURE__ */ jsxs("div", { className: "flex-1 overflow-y-auto p-4 md:p-8", children: [
|
|
639
639
|
/* @__PURE__ */ jsxs("div", { className: "mb-4 md:mb-8", children: [
|
|
640
640
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3 mb-2", children: [
|
|
641
|
-
/* @__PURE__ */ jsx("div", { className: "p-2 rounded-xl bg-blue-500/10 border border-blue-500/20", children: /* @__PURE__ */ jsx(Zap, { className: "w-5 h-5 text-blue-400" }) }),
|
|
642
|
-
/* @__PURE__ */ jsx("h2", { className: "text-
|
|
641
|
+
/* @__PURE__ */ jsx("div", { className: "p-2 rounded-xl bg-blue-500/10 border border-blue-500/20", children: /* @__PURE__ */ jsx(Zap, { strokeWidth: 1.5, className: "w-5 h-5 text-blue-400" }) }),
|
|
642
|
+
/* @__PURE__ */ jsx("h2", { className: "text-xs md:text-[0.8125rem] font-medium", children: isEditMode ? "Edit Connection" : "New Connection" })
|
|
643
643
|
] }),
|
|
644
644
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
645
|
-
/* @__PURE__ */ jsx("p", { className: "text-
|
|
645
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-zinc-500", children: isEditMode ? "Update your database connection parameters." : "Configure your database connection parameters securely." }),
|
|
646
646
|
!isEditMode && /* @__PURE__ */ jsxs(
|
|
647
647
|
"button",
|
|
648
648
|
{
|
|
649
649
|
onClick: () => setShowPasteInput(!showPasteInput),
|
|
650
|
-
className: "flex items-center gap-1.5 text-xs font-
|
|
650
|
+
className: "flex items-center gap-1.5 text-xs font-mediumr text-blue-400 hover:text-blue-300 transition-colors px-2 py-1 rounded-md hover:bg-blue-500/10",
|
|
651
651
|
children: [
|
|
652
|
-
/* @__PURE__ */ jsx(ClipboardPaste, { className: "w-3 h-3" }),
|
|
652
|
+
/* @__PURE__ */ jsx(ClipboardPaste, { strokeWidth: 1.5, className: "w-3 h-3" }),
|
|
653
653
|
"Paste URL"
|
|
654
654
|
]
|
|
655
655
|
}
|
|
@@ -664,7 +664,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
664
664
|
exit: { height: 0, opacity: 0 },
|
|
665
665
|
className: "mb-6 overflow-hidden",
|
|
666
666
|
children: /* @__PURE__ */ jsxs("div", { className: "p-3 rounded-lg border border-blue-500/20 bg-blue-500/5 space-y-2", children: [
|
|
667
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
667
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-blue-400", children: "Paste Connection URL" }),
|
|
668
668
|
/* @__PURE__ */ jsxs("div", { className: "flex gap-2", children: [
|
|
669
669
|
/* @__PURE__ */ jsx(
|
|
670
670
|
Input,
|
|
@@ -672,7 +672,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
672
672
|
value: pasteInput,
|
|
673
673
|
onChange: (e) => setPasteInput(e.target.value),
|
|
674
674
|
placeholder: "postgres://user:pass@host:5432/db or mongodb://...",
|
|
675
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 text-
|
|
675
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 text-xs font-mono flex-1",
|
|
676
676
|
onKeyDown: (e) => e.key === "Enter" && handlePasteConnectionString()
|
|
677
677
|
}
|
|
678
678
|
),
|
|
@@ -681,7 +681,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
681
681
|
{
|
|
682
682
|
size: "sm",
|
|
683
683
|
onClick: handlePasteConnectionString,
|
|
684
|
-
className: "bg-blue-600 hover:bg-blue-500 text-white h-9 px-4 text-xs font-
|
|
684
|
+
className: "bg-blue-600 hover:bg-blue-500 text-white h-9 px-4 text-xs font-medium",
|
|
685
685
|
children: "Parse"
|
|
686
686
|
}
|
|
687
687
|
)
|
|
@@ -693,8 +693,8 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
693
693
|
/* @__PURE__ */ jsxs("div", { className: "space-y-4 md:space-y-6", children: [
|
|
694
694
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
695
695
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mb-1", children: [
|
|
696
|
-
/* @__PURE__ */ jsx(Database, { className: "w-3 h-3 text-zinc-500" }),
|
|
697
|
-
/* @__PURE__ */ jsx(Label, { htmlFor: "name", className: "text-xs font-
|
|
696
|
+
/* @__PURE__ */ jsx(Database, { strokeWidth: 1.5, className: "w-3 h-3 text-zinc-500" }),
|
|
697
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "name", className: "text-xs font-mediumr text-zinc-500", children: "Connection Name" })
|
|
698
698
|
] }),
|
|
699
699
|
/* @__PURE__ */ jsx(
|
|
700
700
|
Input,
|
|
@@ -703,18 +703,18 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
703
703
|
value: name,
|
|
704
704
|
onChange: (e) => setName(e.target.value),
|
|
705
705
|
placeholder: "My Database",
|
|
706
|
-
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
706
|
+
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs"
|
|
707
707
|
}
|
|
708
708
|
)
|
|
709
709
|
] }),
|
|
710
710
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
711
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
711
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Environment" }),
|
|
712
712
|
/* @__PURE__ */ jsx("div", { className: "flex flex-wrap items-center gap-2", children: Object.keys(ENVIRONMENT_COLORS).map((env) => /* @__PURE__ */ jsxs(
|
|
713
713
|
"button",
|
|
714
714
|
{
|
|
715
715
|
onClick: () => setEnvironment(env),
|
|
716
716
|
className: cn(
|
|
717
|
-
"flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-
|
|
717
|
+
"flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-mediumr transition-all border",
|
|
718
718
|
environment === env ? "border-white/20 bg-white/5 text-zinc-200" : "border-transparent text-zinc-500 hover:text-zinc-300 hover:bg-white/5"
|
|
719
719
|
),
|
|
720
720
|
children: [
|
|
@@ -748,7 +748,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
748
748
|
),
|
|
749
749
|
children: [
|
|
750
750
|
/* @__PURE__ */ jsx(db.icon, { className: cn("w-6 h-6 mb-1 transition-transform group-hover:scale-110", type === db.value ? db.color : "text-zinc-600") }),
|
|
751
|
-
/* @__PURE__ */ jsx("span", { className: cn("text-xs font-
|
|
751
|
+
/* @__PURE__ */ jsx("span", { className: cn("text-xs font-medium", type === db.value ? "text-zinc-200" : "text-zinc-500"), children: db.label })
|
|
752
752
|
]
|
|
753
753
|
},
|
|
754
754
|
db.value
|
|
@@ -760,11 +760,11 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
760
760
|
{
|
|
761
761
|
onClick: () => setMongoConnectionMode("host"),
|
|
762
762
|
className: cn(
|
|
763
|
-
"flex-1 flex items-center justify-center gap-2 px-3 py-2 rounded-md text-xs font-
|
|
763
|
+
"flex-1 flex items-center justify-center gap-2 px-3 py-2 rounded-md text-xs font-medium transition-all",
|
|
764
764
|
mongoConnectionMode === "host" ? "bg-blue-600/20 text-blue-400 border border-blue-500/30" : "text-zinc-500 hover:text-zinc-300"
|
|
765
765
|
),
|
|
766
766
|
children: [
|
|
767
|
-
/* @__PURE__ */ jsx(Globe, { className: "w-3 h-3" }),
|
|
767
|
+
/* @__PURE__ */ jsx(Globe, { strokeWidth: 1.5, className: "w-3 h-3" }),
|
|
768
768
|
"Host / Port"
|
|
769
769
|
]
|
|
770
770
|
}
|
|
@@ -774,11 +774,11 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
774
774
|
{
|
|
775
775
|
onClick: () => setMongoConnectionMode("connectionString"),
|
|
776
776
|
className: cn(
|
|
777
|
-
"flex-1 flex items-center justify-center gap-2 px-3 py-2 rounded-md text-xs font-
|
|
777
|
+
"flex-1 flex items-center justify-center gap-2 px-3 py-2 rounded-md text-xs font-medium transition-all",
|
|
778
778
|
mongoConnectionMode === "connectionString" ? "bg-blue-600/20 text-blue-400 border border-blue-500/30" : "text-zinc-500 hover:text-zinc-300"
|
|
779
779
|
),
|
|
780
780
|
children: [
|
|
781
|
-
/* @__PURE__ */ jsx(Link, { className: "w-3 h-3" }),
|
|
781
|
+
/* @__PURE__ */ jsx(Link, { strokeWidth: 1.5, className: "w-3 h-3" }),
|
|
782
782
|
"Connection String"
|
|
783
783
|
]
|
|
784
784
|
}
|
|
@@ -787,8 +787,8 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
787
787
|
getDBConfig(type).showConnectionStringToggle && mongoConnectionMode === "connectionString" ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
788
788
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
789
789
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mb-1", children: [
|
|
790
|
-
/* @__PURE__ */ jsx(Link, { className: "w-3 h-3 text-zinc-500" }),
|
|
791
|
-
/* @__PURE__ */ jsx(Label, { htmlFor: "connectionString", className: "text-xs font-
|
|
790
|
+
/* @__PURE__ */ jsx(Link, { strokeWidth: 1.5, className: "w-3 h-3 text-zinc-500" }),
|
|
791
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "connectionString", className: "text-xs font-mediumr text-zinc-500", children: "Connection URI" })
|
|
792
792
|
] }),
|
|
793
793
|
/* @__PURE__ */ jsx(
|
|
794
794
|
Input,
|
|
@@ -797,14 +797,14 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
797
797
|
value: connectionString,
|
|
798
798
|
onChange: (e) => setConnectionString(e.target.value),
|
|
799
799
|
placeholder: "mongodb://localhost:27017/mydb or mongodb+srv://...",
|
|
800
|
-
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
800
|
+
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs font-mono"
|
|
801
801
|
}
|
|
802
802
|
)
|
|
803
803
|
] }),
|
|
804
804
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
805
805
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mb-1", children: [
|
|
806
|
-
/* @__PURE__ */ jsx(Database, { className: "w-3 h-3 text-zinc-500" }),
|
|
807
|
-
/* @__PURE__ */ jsx(Label, { htmlFor: "database", className: "text-xs font-
|
|
806
|
+
/* @__PURE__ */ jsx(Database, { strokeWidth: 1.5, className: "w-3 h-3 text-zinc-500" }),
|
|
807
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "database", className: "text-xs font-mediumr text-zinc-500", children: "Database Name (optional override)" })
|
|
808
808
|
] }),
|
|
809
809
|
/* @__PURE__ */ jsx(
|
|
810
810
|
Input,
|
|
@@ -813,15 +813,15 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
813
813
|
value: database,
|
|
814
814
|
onChange: (e) => setDatabase(e.target.value),
|
|
815
815
|
placeholder: "Extracted from URI if not provided",
|
|
816
|
-
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
816
|
+
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs font-mono"
|
|
817
817
|
}
|
|
818
818
|
)
|
|
819
819
|
] })
|
|
820
820
|
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
821
821
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
822
822
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mb-1", children: [
|
|
823
|
-
/* @__PURE__ */ jsx(Globe, { className: "w-3 h-3 text-zinc-500" }),
|
|
824
|
-
/* @__PURE__ */ jsx(Label, { htmlFor: "host", className: "text-xs font-
|
|
823
|
+
/* @__PURE__ */ jsx(Globe, { strokeWidth: 1.5, className: "w-3 h-3 text-zinc-500" }),
|
|
824
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "host", className: "text-xs font-mediumr text-zinc-500", children: "Host & Instance" })
|
|
825
825
|
] }),
|
|
826
826
|
/* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-4 gap-3", children: [
|
|
827
827
|
/* @__PURE__ */ jsx(
|
|
@@ -831,7 +831,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
831
831
|
value: host,
|
|
832
832
|
onChange: (e) => setHost(e.target.value),
|
|
833
833
|
placeholder: "localhost",
|
|
834
|
-
className: "md:col-span-3 h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
834
|
+
className: "md:col-span-3 h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs"
|
|
835
835
|
}
|
|
836
836
|
),
|
|
837
837
|
/* @__PURE__ */ jsx(
|
|
@@ -840,7 +840,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
840
840
|
id: "port",
|
|
841
841
|
value: port,
|
|
842
842
|
onChange: (e) => setPort(e.target.value),
|
|
843
|
-
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
843
|
+
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs font-mono"
|
|
844
844
|
}
|
|
845
845
|
)
|
|
846
846
|
] })
|
|
@@ -848,8 +848,8 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
848
848
|
/* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-4", children: [
|
|
849
849
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
850
850
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mb-1", children: [
|
|
851
|
-
/* @__PURE__ */ jsx(Key, { className: "w-3 h-3 text-zinc-500" }),
|
|
852
|
-
/* @__PURE__ */ jsx(Label, { htmlFor: "user", className: "text-xs font-
|
|
851
|
+
/* @__PURE__ */ jsx(Key, { strokeWidth: 1.5, className: "w-3 h-3 text-zinc-500" }),
|
|
852
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "user", className: "text-xs font-mediumr text-zinc-500", children: "Username" })
|
|
853
853
|
] }),
|
|
854
854
|
/* @__PURE__ */ jsx(
|
|
855
855
|
Input,
|
|
@@ -858,14 +858,14 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
858
858
|
value: user,
|
|
859
859
|
onChange: (e) => setUser(e.target.value),
|
|
860
860
|
placeholder: "postgres",
|
|
861
|
-
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
861
|
+
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs"
|
|
862
862
|
}
|
|
863
863
|
)
|
|
864
864
|
] }),
|
|
865
865
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
866
866
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mb-1", children: [
|
|
867
|
-
/* @__PURE__ */ jsx(ShieldCheck, { className: "w-3 h-3 text-zinc-500" }),
|
|
868
|
-
/* @__PURE__ */ jsx(Label, { htmlFor: "password", className: "text-xs font-
|
|
867
|
+
/* @__PURE__ */ jsx(ShieldCheck, { strokeWidth: 1.5, className: "w-3 h-3 text-zinc-500" }),
|
|
868
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "password", className: "text-xs font-mediumr text-zinc-500", children: "Password" })
|
|
869
869
|
] }),
|
|
870
870
|
/* @__PURE__ */ jsx(
|
|
871
871
|
Input,
|
|
@@ -875,15 +875,15 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
875
875
|
value: password,
|
|
876
876
|
onChange: (e) => setPassword(e.target.value),
|
|
877
877
|
placeholder: "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022",
|
|
878
|
-
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
878
|
+
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs"
|
|
879
879
|
}
|
|
880
880
|
)
|
|
881
881
|
] })
|
|
882
882
|
] }),
|
|
883
883
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
884
884
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mb-1", children: [
|
|
885
|
-
/* @__PURE__ */ jsx(Database, { className: "w-3 h-3 text-zinc-500" }),
|
|
886
|
-
/* @__PURE__ */ jsx(Label, { htmlFor: "database", className: "text-xs font-
|
|
885
|
+
/* @__PURE__ */ jsx(Database, { strokeWidth: 1.5, className: "w-3 h-3 text-zinc-500" }),
|
|
886
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "database", className: "text-xs font-mediumr text-zinc-500", children: "Database Name" })
|
|
887
887
|
] }),
|
|
888
888
|
/* @__PURE__ */ jsx(
|
|
889
889
|
Input,
|
|
@@ -892,7 +892,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
892
892
|
value: database,
|
|
893
893
|
onChange: (e) => setDatabase(e.target.value),
|
|
894
894
|
placeholder: "production_db",
|
|
895
|
-
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-
|
|
895
|
+
className: "h-10 bg-zinc-900/50 border-white/5 focus:border-blue-500/50 transition-all text-xs font-mono"
|
|
896
896
|
}
|
|
897
897
|
)
|
|
898
898
|
] })
|
|
@@ -904,11 +904,11 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
904
904
|
{
|
|
905
905
|
type: "button",
|
|
906
906
|
onClick: () => setShowAdvanced(!showAdvanced),
|
|
907
|
-
className: "flex items-center gap-2 w-full px-3 py-2 rounded-lg border border-white/5 hover:border-white/10 bg-zinc-900/30 text-xs font-
|
|
907
|
+
className: "flex items-center gap-2 w-full px-3 py-2 rounded-lg border border-white/5 hover:border-white/10 bg-zinc-900/30 text-xs font-medium text-zinc-400 hover:text-zinc-200 transition-all",
|
|
908
908
|
children: [
|
|
909
|
-
/* @__PURE__ */ jsx(Settings2, { className: "w-3.5 h-3.5 text-orange-500" }),
|
|
909
|
+
/* @__PURE__ */ jsx(Settings2, { strokeWidth: 1.5, className: "w-3.5 h-3.5 text-orange-500" }),
|
|
910
910
|
/* @__PURE__ */ jsx("span", { children: "Advanced" }),
|
|
911
|
-
(serviceName || instanceName) && /* @__PURE__ */ jsx("span", { className: "ml-1 px-1.5 py-0.5 rounded text-
|
|
911
|
+
(serviceName || instanceName) && /* @__PURE__ */ jsx("span", { className: "ml-1 px-1.5 py-0.5 rounded text-[0.625rem] bg-orange-500/10 text-orange-400 border border-orange-500/20", children: "SET" }),
|
|
912
912
|
/* @__PURE__ */ jsx(ChevronDown, { className: cn("w-3 h-3 ml-auto transition-transform", showAdvanced && "rotate-180") })
|
|
913
913
|
]
|
|
914
914
|
}
|
|
@@ -922,27 +922,27 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
922
922
|
className: "overflow-hidden",
|
|
923
923
|
children: /* @__PURE__ */ jsxs("div", { className: "p-3 rounded-lg border border-orange-500/10 bg-orange-500/5 space-y-3", children: [
|
|
924
924
|
type === "oracle" && /* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
925
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
925
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Service Name" }),
|
|
926
926
|
/* @__PURE__ */ jsx(
|
|
927
927
|
Input,
|
|
928
928
|
{
|
|
929
929
|
value: serviceName,
|
|
930
930
|
onChange: (e) => setServiceName(e.target.value),
|
|
931
931
|
placeholder: "ORCL or XEPDB1",
|
|
932
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-orange-500/50 text-
|
|
932
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-orange-500/50 text-xs"
|
|
933
933
|
}
|
|
934
934
|
),
|
|
935
935
|
/* @__PURE__ */ jsx("p", { className: "text-xs text-zinc-500", children: "If empty, the Database Name field is used as the service name." })
|
|
936
936
|
] }),
|
|
937
937
|
type === "mssql" && /* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
938
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
938
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Instance Name" }),
|
|
939
939
|
/* @__PURE__ */ jsx(
|
|
940
940
|
Input,
|
|
941
941
|
{
|
|
942
942
|
value: instanceName,
|
|
943
943
|
onChange: (e) => setInstanceName(e.target.value),
|
|
944
944
|
placeholder: "SQLEXPRESS",
|
|
945
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-orange-500/50 text-
|
|
945
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-orange-500/50 text-xs"
|
|
946
946
|
}
|
|
947
947
|
),
|
|
948
948
|
/* @__PURE__ */ jsx("p", { className: "text-xs text-zinc-500", children: "For named instances (e.g. SQLEXPRESS). Leave empty for default instance." })
|
|
@@ -957,11 +957,11 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
957
957
|
{
|
|
958
958
|
type: "button",
|
|
959
959
|
onClick: () => setShowSSL(!showSSL),
|
|
960
|
-
className: "flex items-center gap-2 w-full px-3 py-2 rounded-lg border border-white/5 hover:border-white/10 bg-zinc-900/30 text-xs font-
|
|
960
|
+
className: "flex items-center gap-2 w-full px-3 py-2 rounded-lg border border-white/5 hover:border-white/10 bg-zinc-900/30 text-xs font-medium text-zinc-400 hover:text-zinc-200 transition-all",
|
|
961
961
|
children: [
|
|
962
|
-
/* @__PURE__ */ jsx(Lock, { className: "w-3.5 h-3.5 text-emerald-500" }),
|
|
962
|
+
/* @__PURE__ */ jsx(Lock, { strokeWidth: 1.5, className: "w-3.5 h-3.5 text-emerald-500" }),
|
|
963
963
|
/* @__PURE__ */ jsx("span", { children: "SSL / TLS" }),
|
|
964
|
-
sslMode !== "disable" && /* @__PURE__ */ jsx("span", { className: "ml-1 px-1.5 py-0.5 rounded text-
|
|
964
|
+
sslMode !== "disable" && /* @__PURE__ */ jsx("span", { className: "ml-1 px-1.5 py-0.5 rounded text-[0.625rem] bg-emerald-500/10 text-emerald-400 border border-emerald-500/20", children: sslMode.toUpperCase() }),
|
|
965
965
|
/* @__PURE__ */ jsx(ChevronDown, { className: cn("w-3 h-3 ml-auto transition-transform", showSSL && "rotate-180") })
|
|
966
966
|
]
|
|
967
967
|
}
|
|
@@ -975,14 +975,14 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
975
975
|
className: "overflow-hidden",
|
|
976
976
|
children: /* @__PURE__ */ jsxs("div", { className: "p-3 rounded-lg border border-emerald-500/10 bg-emerald-500/5 space-y-3", children: [
|
|
977
977
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
978
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
978
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "SSL Mode" }),
|
|
979
979
|
/* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1.5", children: ["disable", "require", "verify-ca", "verify-full"].map((mode) => /* @__PURE__ */ jsx(
|
|
980
980
|
"button",
|
|
981
981
|
{
|
|
982
982
|
type: "button",
|
|
983
983
|
onClick: () => setSSLMode(mode),
|
|
984
984
|
className: cn(
|
|
985
|
-
"px-2.5 py-1.5 rounded-md text-xs font-
|
|
985
|
+
"px-2.5 py-1.5 rounded-md text-xs font-mediumr transition-all border",
|
|
986
986
|
sslMode === mode ? "border-emerald-500/30 bg-emerald-500/10 text-emerald-400" : "border-transparent text-zinc-500 hover:text-zinc-300 hover:bg-white/5"
|
|
987
987
|
),
|
|
988
988
|
children: mode
|
|
@@ -992,7 +992,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
992
992
|
] }),
|
|
993
993
|
sslMode !== "disable" && /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
994
994
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
995
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
995
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "CA Certificate (PEM)" }),
|
|
996
996
|
/* @__PURE__ */ jsx(
|
|
997
997
|
"textarea",
|
|
998
998
|
{
|
|
@@ -1006,7 +1006,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1006
1006
|
] }),
|
|
1007
1007
|
(sslMode === "verify-ca" || sslMode === "verify-full") && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1008
1008
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
1009
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1009
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Client Certificate (PEM)" }),
|
|
1010
1010
|
/* @__PURE__ */ jsx(
|
|
1011
1011
|
"textarea",
|
|
1012
1012
|
{
|
|
@@ -1019,7 +1019,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1019
1019
|
)
|
|
1020
1020
|
] }),
|
|
1021
1021
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
1022
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1022
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Client Private Key (PEM)" }),
|
|
1023
1023
|
/* @__PURE__ */ jsx(
|
|
1024
1024
|
"textarea",
|
|
1025
1025
|
{
|
|
@@ -1041,11 +1041,11 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1041
1041
|
{
|
|
1042
1042
|
type: "button",
|
|
1043
1043
|
onClick: () => setShowSSH(!showSSH),
|
|
1044
|
-
className: "flex items-center gap-2 w-full px-3 py-2 rounded-lg border border-white/5 hover:border-white/10 bg-zinc-900/30 text-xs font-
|
|
1044
|
+
className: "flex items-center gap-2 w-full px-3 py-2 rounded-lg border border-white/5 hover:border-white/10 bg-zinc-900/30 text-xs font-medium text-zinc-400 hover:text-zinc-200 transition-all",
|
|
1045
1045
|
children: [
|
|
1046
|
-
/* @__PURE__ */ jsx(Terminal, { className: "w-3.5 h-3.5 text-purple-500" }),
|
|
1046
|
+
/* @__PURE__ */ jsx(Terminal, { strokeWidth: 1.5, className: "w-3.5 h-3.5 text-purple-500" }),
|
|
1047
1047
|
/* @__PURE__ */ jsx("span", { children: "SSH Tunnel" }),
|
|
1048
|
-
sshEnabled && /* @__PURE__ */ jsx("span", { className: "ml-1 px-1.5 py-0.5 rounded text-
|
|
1048
|
+
sshEnabled && /* @__PURE__ */ jsx("span", { className: "ml-1 px-1.5 py-0.5 rounded text-[0.625rem] bg-purple-500/10 text-purple-400 border border-purple-500/20", children: "ON" }),
|
|
1049
1049
|
/* @__PURE__ */ jsx(ChevronDown, { className: cn("w-3 h-3 ml-auto transition-transform", showSSH && "rotate-180") })
|
|
1050
1050
|
]
|
|
1051
1051
|
}
|
|
@@ -1068,48 +1068,48 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1068
1068
|
className: "rounded border-white/20 bg-zinc-900/50"
|
|
1069
1069
|
}
|
|
1070
1070
|
),
|
|
1071
|
-
/* @__PURE__ */ jsx("span", { className: "text-xs font-
|
|
1071
|
+
/* @__PURE__ */ jsx("span", { className: "text-xs font-medium text-zinc-300", children: "Enable SSH Tunnel" })
|
|
1072
1072
|
] }),
|
|
1073
1073
|
sshEnabled && /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
1074
1074
|
/* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 md:grid-cols-4 gap-3", children: [
|
|
1075
1075
|
/* @__PURE__ */ jsxs("div", { className: "md:col-span-3 space-y-1.5", children: [
|
|
1076
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1076
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "SSH Host" }),
|
|
1077
1077
|
/* @__PURE__ */ jsx(
|
|
1078
1078
|
Input,
|
|
1079
1079
|
{
|
|
1080
1080
|
value: sshHost,
|
|
1081
1081
|
onChange: (e) => setSSHHost(e.target.value),
|
|
1082
1082
|
placeholder: "bastion.example.com",
|
|
1083
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-
|
|
1083
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-xs"
|
|
1084
1084
|
}
|
|
1085
1085
|
)
|
|
1086
1086
|
] }),
|
|
1087
1087
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
1088
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1088
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Port" }),
|
|
1089
1089
|
/* @__PURE__ */ jsx(
|
|
1090
1090
|
Input,
|
|
1091
1091
|
{
|
|
1092
1092
|
value: sshPort,
|
|
1093
1093
|
onChange: (e) => setSSHPort(e.target.value),
|
|
1094
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-
|
|
1094
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-xs font-mono"
|
|
1095
1095
|
}
|
|
1096
1096
|
)
|
|
1097
1097
|
] })
|
|
1098
1098
|
] }),
|
|
1099
1099
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
1100
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1100
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Username" }),
|
|
1101
1101
|
/* @__PURE__ */ jsx(
|
|
1102
1102
|
Input,
|
|
1103
1103
|
{
|
|
1104
1104
|
value: sshUsername,
|
|
1105
1105
|
onChange: (e) => setSSHUsername(e.target.value),
|
|
1106
1106
|
placeholder: "ubuntu",
|
|
1107
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-
|
|
1107
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-xs"
|
|
1108
1108
|
}
|
|
1109
1109
|
)
|
|
1110
1110
|
] }),
|
|
1111
1111
|
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
1112
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1112
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Auth Method" }),
|
|
1113
1113
|
/* @__PURE__ */ jsxs("div", { className: "flex gap-2", children: [
|
|
1114
1114
|
/* @__PURE__ */ jsx(
|
|
1115
1115
|
"button",
|
|
@@ -1117,7 +1117,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1117
1117
|
type: "button",
|
|
1118
1118
|
onClick: () => setSSHAuthMethod("password"),
|
|
1119
1119
|
className: cn(
|
|
1120
|
-
"flex-1 px-3 py-1.5 rounded-md text-xs font-
|
|
1120
|
+
"flex-1 px-3 py-1.5 rounded-md text-xs font-mediumr transition-all border",
|
|
1121
1121
|
sshAuthMethod === "password" ? "border-purple-500/30 bg-purple-500/10 text-purple-400" : "border-transparent text-zinc-500 hover:text-zinc-300 hover:bg-white/5"
|
|
1122
1122
|
),
|
|
1123
1123
|
children: "Password"
|
|
@@ -1129,7 +1129,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1129
1129
|
type: "button",
|
|
1130
1130
|
onClick: () => setSSHAuthMethod("privateKey"),
|
|
1131
1131
|
className: cn(
|
|
1132
|
-
"flex-1 px-3 py-1.5 rounded-md text-xs font-
|
|
1132
|
+
"flex-1 px-3 py-1.5 rounded-md text-xs font-mediumr transition-all border",
|
|
1133
1133
|
sshAuthMethod === "privateKey" ? "border-purple-500/30 bg-purple-500/10 text-purple-400" : "border-transparent text-zinc-500 hover:text-zinc-300 hover:bg-white/5"
|
|
1134
1134
|
),
|
|
1135
1135
|
children: "Private Key"
|
|
@@ -1138,7 +1138,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1138
1138
|
] })
|
|
1139
1139
|
] }),
|
|
1140
1140
|
sshAuthMethod === "password" ? /* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
1141
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1141
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "SSH Password" }),
|
|
1142
1142
|
/* @__PURE__ */ jsx(
|
|
1143
1143
|
Input,
|
|
1144
1144
|
{
|
|
@@ -1146,12 +1146,12 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1146
1146
|
value: sshPassword,
|
|
1147
1147
|
onChange: (e) => setSSHPassword(e.target.value),
|
|
1148
1148
|
placeholder: "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022",
|
|
1149
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-
|
|
1149
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-xs"
|
|
1150
1150
|
}
|
|
1151
1151
|
)
|
|
1152
1152
|
] }) : /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
1153
1153
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
1154
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1154
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Private Key (PEM)" }),
|
|
1155
1155
|
/* @__PURE__ */ jsx(
|
|
1156
1156
|
"textarea",
|
|
1157
1157
|
{
|
|
@@ -1164,7 +1164,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1164
1164
|
)
|
|
1165
1165
|
] }),
|
|
1166
1166
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
1167
|
-
/* @__PURE__ */ jsx(Label, { className: "text-xs font-
|
|
1167
|
+
/* @__PURE__ */ jsx(Label, { className: "text-xs font-mediumr text-zinc-500", children: "Passphrase (optional)" }),
|
|
1168
1168
|
/* @__PURE__ */ jsx(
|
|
1169
1169
|
Input,
|
|
1170
1170
|
{
|
|
@@ -1172,7 +1172,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1172
1172
|
value: sshPassphrase,
|
|
1173
1173
|
onChange: (e) => setSSHPassphrase(e.target.value),
|
|
1174
1174
|
placeholder: "Key passphrase (if encrypted)",
|
|
1175
|
-
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-
|
|
1175
|
+
className: "h-9 bg-zinc-900/50 border-white/5 focus:border-purple-500/50 text-xs"
|
|
1176
1176
|
}
|
|
1177
1177
|
)
|
|
1178
1178
|
] })
|
|
@@ -1193,7 +1193,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1193
1193
|
"flex items-center gap-2 p-3 rounded-lg border text-xs",
|
|
1194
1194
|
testResult.success ? "bg-emerald-500/5 border-emerald-500/20 text-emerald-400" : "bg-red-500/5 border-red-500/20 text-red-400"
|
|
1195
1195
|
), children: [
|
|
1196
|
-
testResult.success ? /* @__PURE__ */ jsx(CheckCircle2, { className: "w-
|
|
1196
|
+
testResult.success ? /* @__PURE__ */ jsx(CheckCircle2, { strokeWidth: 1.5, className: "w-3.5 h-3.5 shrink-0" }) : /* @__PURE__ */ jsx(XCircle, { strokeWidth: 1.5, className: "w-3.5 h-3.5 shrink-0" }),
|
|
1197
1197
|
/* @__PURE__ */ jsx("span", { className: "leading-relaxed", children: testResult.message })
|
|
1198
1198
|
] })
|
|
1199
1199
|
}
|
|
@@ -1206,7 +1206,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1206
1206
|
{
|
|
1207
1207
|
variant: "ghost",
|
|
1208
1208
|
onClick: onClose,
|
|
1209
|
-
className: "w-full md:w-auto text-zinc-500 hover:text-zinc-200 hover:bg-white/5 text-xs font-
|
|
1209
|
+
className: "w-full md:w-auto text-zinc-500 hover:text-zinc-200 hover:bg-white/5 text-xs font-medium",
|
|
1210
1210
|
children: "Cancel"
|
|
1211
1211
|
}
|
|
1212
1212
|
),
|
|
@@ -1217,7 +1217,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1217
1217
|
variant: "outline",
|
|
1218
1218
|
onClick: handleTestConnection,
|
|
1219
1219
|
disabled: isTesting,
|
|
1220
|
-
className: "w-full md:w-auto border-white/10 text-zinc-400 hover:text-white hover:bg-white/5 text-xs font-
|
|
1220
|
+
className: "w-full md:w-auto border-white/10 text-zinc-400 hover:text-white hover:bg-white/5 text-xs font-medium h-10 px-4",
|
|
1221
1221
|
children: isTesting ? /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
1222
1222
|
/* @__PURE__ */ jsx("div", { className: "w-3 h-3 border-2 border-zinc-400/30 border-t-zinc-400 rounded-full animate-spin" }),
|
|
1223
1223
|
"Testing..."
|
|
@@ -1229,7 +1229,7 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1229
1229
|
{
|
|
1230
1230
|
onClick: handleConnect,
|
|
1231
1231
|
disabled: isTesting || getDBConfig(type).showConnectionStringToggle && mongoConnectionMode === "connectionString" && !connectionString.trim(),
|
|
1232
|
-
className: "w-full md:w-auto min-w-0 md:min-w-[140px] bg-blue-600 hover:bg-blue-500 text-white font-
|
|
1232
|
+
className: "w-full md:w-auto min-w-0 md:min-w-[140px] bg-blue-600 hover:bg-blue-500 text-white font-medium text-xs h-10 shadow-lg shadow-blue-900/20 group relative overflow-hidden",
|
|
1233
1233
|
children: /* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", children: isTesting ? /* @__PURE__ */ jsxs(
|
|
1234
1234
|
motion.div,
|
|
1235
1235
|
{
|
|
@@ -1285,5 +1285,5 @@ function ConnectionModal({ isOpen, onClose, onConnect, editConnection, onTestCon
|
|
|
1285
1285
|
}
|
|
1286
1286
|
|
|
1287
1287
|
export { ConnectionModal };
|
|
1288
|
-
//# sourceMappingURL=chunk-
|
|
1289
|
-
//# sourceMappingURL=chunk-
|
|
1288
|
+
//# sourceMappingURL=chunk-CPF7XWV5.mjs.map
|
|
1289
|
+
//# sourceMappingURL=chunk-CPF7XWV5.mjs.map
|