Selaa lähdekoodia

Update branding assets and favicon

Added new logo and gradient SVG assets, updated existing SVG, and set favicon in index.html to logo_color.png. Also made related updates to Footer, Header, BuySimView, HomeProduct, and LoginView components to reflect new branding.
trunghieubui 3 viikkoa sitten
vanhempi
commit
58d83c54c6

BIN
EsimLao/esim-vite/dist.zip


+ 1 - 0
EsimLao/esim-vite/index.html

@@ -3,6 +3,7 @@
 
 <head>
   <meta charset="UTF-8" />
+  <link rel="icon" type="image/svg+xml" href="./publish/assets/img/logo_color.png" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <title>Getgo | Stay Connected Everywhere</title>
   <link rel="preconnect" href="https://fonts.googleapis.com" />

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 34 - 34
EsimLao/esim-vite/src/assets/img/getgo.svg


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 65 - 0
EsimLao/esim-vite/src/assets/img/getgo_gradient.svg


BIN
EsimLao/esim-vite/src/assets/img/logo.png


BIN
EsimLao/esim-vite/src/assets/img/logo_color.png


BIN
EsimLao/esim-vite/src/assets/img/logo_white.png


+ 9 - 4
EsimLao/esim-vite/src/components/Footer.tsx

@@ -1,5 +1,5 @@
 import React from "react";
-
+import logoColor from "../assets/img/logo_color.png";
 const Footer: React.FC = () => {
   return (
     <footer className="bg-white border-t border-slate-100 pt-16 pb-8">
@@ -8,14 +8,19 @@ const Footer: React.FC = () => {
         <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-12 mb-16">
           <div className="space-y-6">
             <div className="flex items-center space-x-2">
-              <svg
+              {/* <svg
                 className="w-8 h-8 text-[#EE0434]"
                 viewBox="0 0 24 24"
                 fill="currentColor"
               >
                 <path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5" />
-              </svg>
-              <span className="text-xl font-black text-[#EE0434]">Getgo</span>
+              </svg> */}
+              <img
+                src={logoColor}
+                alt="Getgo Logo"
+                className="w-8 h-8 text-[#EE0434] mr-0"
+              />
+              <span className="text-xl font-black text-[#EE0434]">etgo</span>
             </div>
             <p className="text-sm font-bold text-[#EE0434] leading-tight">
               Công ty TNHH Phát triển toàn cầu VIETTECH

+ 4 - 4
EsimLao/esim-vite/src/components/Header.tsx

@@ -605,7 +605,7 @@ const Header: React.FC = () => {
                   </div>
                 )}
               </div>
-              <button className="hidden sm:flex p-2 text-slate-700 hover:text-[#EE0434] relative">
+              {/* <button className="hidden sm:flex p-2 text-slate-700 hover:text-[#EE0434] relative">
                 <svg
                   className="w-6 h-6"
                   fill="none"
@@ -622,7 +622,7 @@ const Header: React.FC = () => {
                 <span className="absolute top-1 right-1 w-4 h-4 bg-[#EE0434] text-white text-[10px] flex items-center justify-center rounded-full font-black">
                   0
                 </span>
-              </button>
+              </button> */}
 
               <div className="relative" ref={langMenuRef}>
                 <button
@@ -728,8 +728,8 @@ const Header: React.FC = () => {
                 <path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5" />
               </svg>
               <span className="text-xl font-black tracking-tighter">
-                <span className="text-[#EE0434]">Infi</span>
-                <span className="text-[#333]">Gate</span>
+                <span className="text-[#EE0434]">Get</span>
+                <span className="text-[#333]">Go</span>
               </span>
             </Link>
             <button

+ 2 - 1
EsimLao/esim-vite/src/pages/buy-sim/BuySimView.tsx

@@ -30,9 +30,10 @@ const BuySimView: React.FC<BuySimViewProps> = ({
         dispatch(startLoading({}));
         const res = await productApi.loadArea({
           isCountry: "-1",
-          isPopular: "1",
+          isPopular: "-1",
         });
         // save to redux store
+        console.log("Get area response data:", res);
         return res.data as Area[];
       } catch (error) {
         console.error(error);

+ 25 - 23
EsimLao/esim-vite/src/pages/home/components/HomeProduct.tsx

@@ -22,28 +22,6 @@ const HomeProduct = () => {
     getAreaMutation.mutate();
   }, []);
 
-  // const { data: loadArea = [] } = useQuery<Area[]>({
-  //   queryKey: [DataCacheKey.AREAS],
-  //   queryFn: async (): Promise<Area[]> => {
-  //     try {
-  //       dispatch(startLoading({}));
-  //       const res = await productApi.loadArea({
-  //         isCountry: "-1",
-  //         isPopular: "1",
-  //       });
-  //       // save to redux store
-  //       dispatch(setAreas(res.data as Area[]));
-  //       return res.data as Area[];
-  //     } catch (error) {
-  //       console.error(error);
-  //       return []; // 🔴 bắt buộc
-  //     } finally {
-  //       dispatch(stopLoading());
-  //     }
-  //   },
-  //   staleTime: staleTime,
-  // });
-
   const getAreaMutation = useMutation({
     mutationFn: async () => {
       dispatch(startLoading({}));
@@ -65,7 +43,8 @@ const HomeProduct = () => {
       console.log("Get area response data:", data);
       if (data && data.errorCode === "0") {
         console.log("Get area successful");
-        setAreasList(data.data as Area[]);
+        const areas = data.data as Area[];
+        setAreasList(areas.slice(0, 8));
       } else {
         console.error("Get area failed, no token received");
       }
@@ -159,6 +138,29 @@ const HomeProduct = () => {
           ))}
         </div>
       </div>
+      <div className="max-w-7xl mx-auto flex flex-col items-center mt-16">
+        <button
+          className="flex items-center bg-gradient-to-r from-[#E21c34] to-[#500B28] p-2 pr-10 rounded-full shadow-xl hover:scale-105 transition-all"
+          onClick={() => navigate("/buy-sim")}
+        >
+          <div className="w-16 h-16 bg-white rounded-full flex items-center justify-center text-slate-800">
+            <svg
+              className="w-8 h-8"
+              fill="none"
+              stroke="currentColor"
+              viewBox="0 0 24 24"
+            >
+              <path
+                strokeLinecap="round"
+                strokeLinejoin="round"
+                strokeWidth={2.5}
+                d="M17 8l4 4m0 0l-4 4m4-4H3"
+              />
+            </svg>
+          </div>
+          <span className="ml-6 text-white text-2xl font-black">See More</span>
+        </button>
+      </div>
     </section>
   );
 };

+ 4 - 3
EsimLao/esim-vite/src/pages/login/LoginView.tsx

@@ -11,7 +11,7 @@ import React, { useState } from "react";
 import { useNavigate } from "react-router-dom";
 import { useEffect, useRef } from "react";
 import { accountLogin } from "../../features/account/accuntSlice";
-import { time } from "console";
+import logoApp from "../../assets/img/logo_white.png";
 
 const LoginView: React.FC = () => {
   const navigate = useNavigate();
@@ -184,7 +184,7 @@ const LoginView: React.FC = () => {
           <div className="space-y-4 text-center lg:text-left">
             <div className="lg:hidden flex justify-center mb-8">
               <div className="w-20 h-20 rounded-[24px] bg-gradient-to-br from-[#EE0434] to-[#80001a] flex items-center justify-center shadow-lg">
-                <svg
+                {/* <svg
                   className="w-10 h-10 text-white"
                   fill="none"
                   stroke="currentColor"
@@ -196,7 +196,8 @@ const LoginView: React.FC = () => {
                     strokeLinecap="round"
                     strokeLinejoin="round"
                   />
-                </svg>
+                </svg> */}
+                <img src={logoApp} alt="Getgo Logo" />
               </div>
             </div>
             <h1 className="text-3xl md:text-4xl lg:text-5xl font-black text-slate-900 tracking-tight">

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä