gitscope
← marzneshin / Diff · 097061d → 097061d
Changes 097061d..097061d
Patch commit
diff --git a/dashboard/public/locales/en.json b/dashboard/public/locales/en.json
index 625b7b7..6633029 100644
--- a/dashboard/public/locales/en.json
+++ b/dashboard/public/locales/en.json
@@ -37,6 +37,7 @@
"fingerprint": "Fingerprint",
"enable": "Enable",
"disable": "Disable",
+ "save": "Save",
"page": {
"settings": {
"certificate": {
diff --git a/dashboard/public/locales/kur.json b/dashboard/public/locales/kur.json
index eb2a8fa..9998075 100644
--- a/dashboard/public/locales/kur.json
+++ b/dashboard/public/locales/kur.json
@@ -30,6 +30,7 @@
"fingerprint": "Fingerprint",
"enable": "Çalakî ke",
"disable": "Naçalakî ke",
+ "save": "Seyv Bike",
"page": {
"settings": {
"certificate": {
diff --git a/dashboard/src/features/nodes/dialogs/settings.dialog.tsx b/dashboard/src/features/nodes/dialogs/settings.dialog.tsx
index ea045b0..99195ec 100644
--- a/dashboard/src/features/nodes/dialogs/settings.dialog.tsx
+++ b/dashboard/src/features/nodes/dialogs/settings.dialog.tsx
@@ -76,7 +76,7 @@ export const NodesSettingsDialog: FC<NodesSettingsDialogProps> = ({ onOpenChange
defaultValue={JSON.stringify(data, null, '\t')}
onChange={handleConfigChange}
/>
- <Button onClick={() => mutate.mutate(config)}>{t('save')}</Button>
+ <Button onClick={() => mutate.mutate({ node: entity, config })}>{t('save')}</Button>
</CardContent>
</Card>
</TabsContent>
diff --git a/dashboard/src/features/nodes/services/settings.mutate.ts b/dashboard/src/features/nodes/services/settings.mutate.ts
index 6897e00..9d95cd9 100644
--- a/dashboard/src/features/nodes/services/settings.mutate.ts
+++ b/dashboard/src/features/nodes/services/settings.mutate.ts
@@ -5,15 +5,20 @@ import { toast } from "sonner";
import i18n from "@marzneshin/features/i18n";
import { NodesSettingsQueryFetchKey } from "./settings.query";
-export async function fetchUpdateNodesSettings(node: NodeType): Promise<NodeType> {
- return fetch(`/nodes/${node.id}/xray_config`, { method: 'put', body: node }).then((node) => {
+interface UpdateNodesSettings {
+ node: NodeType
+ config: string
+}
+
+export async function fetchUpdateNodesSettings({ node, config }: UpdateNodesSettings): Promise<NodeType> {
+ return fetch(`/nodes/${node.id}/xray_config`, { method: 'put', body: config }).then((node) => {
return node;
});
}
-const handleError = (error: Error, value: NodeType) => {
+const handleError = (error: Error, value: UpdateNodesSettings) => {
toast.error(
- i18n.t('events.update.error', { name: value.name }),
+ i18n.t('events.update.error', { name: value.node.name }),
{
description: error.message
})