diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx
index 193523c..e896ba0 100644
--- a/frontend/src/App.jsx
+++ b/frontend/src/App.jsx
@@ -7,6 +7,7 @@ import Clock from './components/Clock';
import { ToastContainer, toast } from 'react-toastify';
import 'react-toastify/dist/ReactToastify.css';
import { IoIosAdd } from 'react-icons/io';
+import CustomToast from './components/CustomToast';
import {
fetchSections,
addAppToSection,
@@ -48,7 +49,7 @@ function App() {
section: confirmData.app.section,
app: confirmData.app,
});
- toast.error(`App "${confirmData.app.name}" deleted successfully!`);
+ toast();
loadSections();
} catch (err) {
console.error('Failed to delete app:', err);
@@ -61,7 +62,7 @@ function App() {
const handleAddSubmit = async (data) => {
try {
await addAppToSection(data);
- toast.success(`App "${data.app.name}" added successfully!`);
+ toast();
setShowAdd(false);
loadSections();
} catch (err) {
@@ -77,7 +78,7 @@ function App() {
app: data.app,
original_name: data.original_name || data.app.name,
});
- toast.warning(`App "${data.app.name}" updated successfully!`);
+ toast();
setEditData(null);
loadSections();
} catch (err) {
@@ -143,7 +144,17 @@ function App() {
pauseOnFocusLoss
draggable
pauseOnHover
- theme="colored"
+ theme="dark"
+ toastStyle={{
+ backgroundColor: 'black',
+ borderRadius: '12px',
+ minHeight: '110px',
+ padding: '20px',
+ color: '#fff',
+ display: 'flex',
+ alignItems: 'center',
+ }}
+ bodyClassName="toast-body"
/>
);
diff --git a/frontend/src/components/CustomToast.jsx b/frontend/src/components/CustomToast.jsx
new file mode 100644
index 0000000..6f61249
--- /dev/null
+++ b/frontend/src/components/CustomToast.jsx
@@ -0,0 +1,17 @@
+import { FaCheckCircle, FaEdit, FaTrash } from 'react-icons/fa';
+import '../style/CustomToast.css'; // Ensure you have this CSS file for styling
+
+const iconMap = {
+ success: ,
+ edit: ,
+ delete:
+};
+
+export default function CustomToast({ type, message }) {
+ return (
+
+ {iconMap[type]}
+ {message}
+
+ );
+}
diff --git a/frontend/src/style/CustomToast.css b/frontend/src/style/CustomToast.css
new file mode 100644
index 0000000..ebcc0d9
--- /dev/null
+++ b/frontend/src/style/CustomToast.css
@@ -0,0 +1,26 @@
+.custom-toast {
+ display: flex;
+ align-items: center;
+ gap: 14px;
+ font-family: 'Orbitron', sans-serif;
+ font-size: 16px;
+ color: #ffffff;
+ line-height: 1.4;
+}
+
+.custom-toast .icon {
+ font-size: 22px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ color: inherit;
+}
+
+.custom-toast .message {
+ flex: 1;
+ font-size: 15px;
+}
+
+.Toastify__progress-bar {
+ background: #4e9aff !important;
+}
\ No newline at end of file
diff --git a/navix-helm/Chart.yaml b/navix-chart/Chart.yaml
similarity index 100%
rename from navix-helm/Chart.yaml
rename to navix-chart/Chart.yaml
diff --git a/navix-helm/templates/backend-deployment.yaml b/navix-chart/templates/backend-deployment.yaml
similarity index 100%
rename from navix-helm/templates/backend-deployment.yaml
rename to navix-chart/templates/backend-deployment.yaml
diff --git a/navix-helm/templates/backend-service.yaml b/navix-chart/templates/backend-service.yaml
similarity index 100%
rename from navix-helm/templates/backend-service.yaml
rename to navix-chart/templates/backend-service.yaml
diff --git a/navix-chart/templates/frontend-deployment.yaml b/navix-chart/templates/frontend-deployment.yaml
new file mode 100644
index 0000000..1a3340e
--- /dev/null
+++ b/navix-chart/templates/frontend-deployment.yaml
@@ -0,0 +1,27 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: navix-frontend
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: navix-frontend
+ template:
+ metadata:
+ labels:
+ app: navix-frontend
+ spec:
+ containers:
+ - name: frontend
+ image: "{{ .Values.frontend.image.repository }}:{{ .Values.frontend.tag }}"
+ imagePullPolicy: {{ .Values.frontend.image.pullPolicy }}
+ ports:
+ - containerPort: 80
+ env:
+ - name: API_BASE
+ value: {{ .Values.frontend.env.API_BASE | quote }}
+ - name: MINIO_ENDPOINT
+ value: {{ .Values.frontend.env.MINIO_ENDPOINT | quote }}
+ - name: MINIO_BUCKET
+ value: {{ .Values.frontend.env.MINIO_BUCKET | quote }}
diff --git a/navix-helm/templates/frontend-service.yaml b/navix-chart/templates/frontend-service.yaml
similarity index 100%
rename from navix-helm/templates/frontend-service.yaml
rename to navix-chart/templates/frontend-service.yaml
diff --git a/navix-helm/templates/ingress.yaml b/navix-chart/templates/ingress.yaml
similarity index 100%
rename from navix-helm/templates/ingress.yaml
rename to navix-chart/templates/ingress.yaml
diff --git a/navix-helm/values.yaml b/navix-chart/values.yaml
similarity index 82%
rename from navix-helm/values.yaml
rename to navix-chart/values.yaml
index c0650ad..0e67780 100644
--- a/navix-helm/values.yaml
+++ b/navix-chart/values.yaml
@@ -1,8 +1,8 @@
frontend:
image:
- repository: harbor.dvirlabs.com/my-apps/navix-frontend
+ repository: harbor.dvirlabs.com/my-apps/navix-front
+ tag: latest
pullPolicy: IfNotPresent
- tag: master-4fc5494
service:
type: ClusterIP
port: 80
@@ -21,12 +21,12 @@ frontend:
API_BASE: "https://navix.dvirlabs.com/api"
MINIO_ENDPOINT: "s3.dvirlabs.com"
MINIO_BUCKET: "navix-icons"
- tag: master-4fc5494
+
backend:
image:
- repository: harbor.dvirlabs.com/my-apps/navix-backend
+ repository: harbor.dvirlabs.com/my-apps/navix-back
+ tag: latest
pullPolicy: IfNotPresent
- tag: master-4fc5494
service:
type: ClusterIP
port: 8000
@@ -42,8 +42,7 @@ backend:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
hosts:
- - host: api-navix.dvirlabs.com
+ - host: navix.dvirlabs.com
paths:
- path: /api
pathType: Prefix
-
diff --git a/navix-helm/templates/env-configmap.yaml b/navix-helm/templates/env-configmap.yaml
deleted file mode 100644
index afc939e..0000000
--- a/navix-helm/templates/env-configmap.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: navix-frontend-env
-data:
- env.js: |
- window.ENV = {
- API_BASE: "{{ .Values.frontend.env.API_BASE }}",
- MINIO_ENDPOINT: "{{ .Values.frontend.env.MINIO_ENDPOINT }}",
- MINIO_BUCKET: "{{ .Values.frontend.env.MINIO_BUCKET }}"
- };
diff --git a/navix-helm/templates/frontend-deployment.yaml b/navix-helm/templates/frontend-deployment.yaml
deleted file mode 100644
index 9819a6f..0000000
--- a/navix-helm/templates/frontend-deployment.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: navix-frontend
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: navix-frontend
- template:
- metadata:
- labels:
- app: navix-frontend
- spec:
- initContainers:
- - name: copy-env
- image: busybox
- command: ["sh", "-c", "cp /config/env.js /env/env.js"]
- volumeMounts:
- - name: env-config
- mountPath: /config
- - name: env-volume
- mountPath: /env
-
- containers:
- - name: frontend
- image: "{{ .Values.frontend.image.repository }}:{{ .Values.frontend.tag }}"
- imagePullPolicy: {{ .Values.frontend.image.pullPolicy }}
- ports:
- - containerPort: 80
- volumeMounts:
- - name: env-volume
- mountPath: /usr/share/nginx/html/env.js
- subPath: env.js
-
- volumes:
- - name: env-volume
- emptyDir: {}
- - name: env-config
- configMap:
- name: navix-frontend-env
- items:
- - key: env.js
- path: env.js