Merge pull request '更改静态资源地址为cdn链接' (#83) from cdn into main

Reviewed-on: https://git.wishpal.cn/wishpal_ironfan/tiefen_space_web/pulls/83
This commit is contained in:
yezian 2024-06-14 23:34:53 +08:00
commit 8577e61c37
17 changed files with 121 additions and 141 deletions

View File

@ -5,10 +5,6 @@ import React, { useState } from "react";
import { useRouter } from "next/navigation"; import { useRouter } from "next/navigation";
import baseRequest from "@/utils/baseRequest"; import baseRequest from "@/utils/baseRequest";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import Image from "next/image";
import platform_wechat from "@/public/images/platform_wechat.png";
import direct_purchase from "@/public/icon/direct_purchase.png";
import app_purchase from "@/public/icon/app_purchase.png";
import { Toast } from "antd-mobile"; import { Toast } from "antd-mobile";
import { checkAuth } from "@/utils/auth"; import { checkAuth } from "@/utils/auth";
@ -98,7 +94,7 @@ export default function WechatBar({
onClick={() => setShowBuyWechat(!showBuyWechat)} onClick={() => setShowBuyWechat(!showBuyWechat)}
className="flex flex-row cursor-pointer bg-[#07050A] border-2 border-[#FFFFFF26] rounded-2xl h-12 items-center justify-center" className="flex flex-row cursor-pointer bg-[#07050A] border-2 border-[#FFFFFF26] rounded-2xl h-12 items-center justify-center"
> >
<Image src={platform_wechat} alt="" className="w-5 h-5" /> <img src="/cdn/images/platform_wechat.png" alt="" className="w-5 h-5" />
<p className="text-white text-base font-medium ml-2">我的微信</p> <p className="text-white text-base font-medium ml-2">我的微信</p>
</div> </div>
<div <div
@ -110,7 +106,7 @@ export default function WechatBar({
className="flex flex-row cursor-pointer items-center justify-center py-4" className="flex flex-row cursor-pointer items-center justify-center py-4"
onClick={() => document.getElementById("comfirm_modal").showModal()} onClick={() => document.getElementById("comfirm_modal").showModal()}
> >
<Image src={direct_purchase} alt="" className="w-5 h-5" /> <img src="/cdn/icon/direct_purchase.png" alt="" className="w-5 h-5" />
<p className="text-white text-base font-medium ml-2"> <p className="text-white text-base font-medium ml-2">
直接解锁(¥{price}) 直接解锁(¥{price})
</p> </p>
@ -123,7 +119,7 @@ export default function WechatBar({
router.push("/"); router.push("/");
}} }}
> >
<Image src={app_purchase} alt="" className="w-5 h-5" /> <img src="/cdn/icon/app_purchase.png" alt="" className="w-5 h-5" />
<p className="text-white text-base font-medium ml-2"> <p className="text-white text-base font-medium ml-2">
APP内解锁(-10%) APP内解锁(-10%)
</p> </p>

View File

@ -7,10 +7,6 @@ import baseRequest from "@/utils/baseRequest";
import { Toast } from "antd-mobile"; import { Toast } from "antd-mobile";
import InOtherApp from "@/components/InOtherApp"; import InOtherApp from "@/components/InOtherApp";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import Image from "next/image";
import verification from "@/public/icon/verification.png";
import icon_border from "@/public/images/icon_border.png";
import zone from "@/public/images/zone.png";
import Link from "next/link"; import Link from "next/link";
import { setCookie } from "cookies-next"; import { setCookie } from "cookies-next";
import copy from "@/utils/copy"; import copy from "@/utils/copy";
@ -87,7 +83,7 @@ export default function StreamerDetail({ params }) {
</div> </div>
<div className="flex flex-row items-center mt-3"> <div className="flex flex-row items-center mt-3">
<p className="text-white text-2xl font-medium mr-1">{data?.name}</p> <p className="text-white text-2xl font-medium mr-1">{data?.name}</p>
<Image src={verification} alt="" className="w-6 h-6" /> <img src="/cdn/icon/verification.png" alt="" className="w-6 h-6" />
</div> </div>
<p className="text-secondary text-sm text-center font-medium mt-3 px-4"> <p className="text-secondary text-sm text-center font-medium mt-3 px-4">
{data?.bio} {data?.bio}
@ -98,7 +94,7 @@ export default function StreamerDetail({ params }) {
href={`/zone/${data?.user_id}`} href={`/zone/${data?.user_id}`}
className="flex flex-row cursor-pointer bg-[#07050A] border-2 border-[#FFFFFF26] rounded-2xl h-12 items-center justify-center mt-4" className="flex flex-row cursor-pointer bg-[#07050A] border-2 border-[#FFFFFF26] rounded-2xl h-12 items-center justify-center mt-4"
> >
<Image src={zone} alt="" className="w-5 h-5" /> <img src="/cdn/images/zone.png" alt="" className="w-5 h-5" />
<p className="text-white text-base font-medium ml-2"> <p className="text-white text-base font-medium ml-2">
我的秘密空间 我的秘密空间
</p> </p>
@ -129,7 +125,7 @@ export default function StreamerDetail({ params }) {
))} ))}
</div> </div>
<div className="flex flex-row items-center bg-[#13121F] fixed bottom-0 left-0 w-full rounded-t-2xl z-20 p-4"> <div className="flex flex-row items-center bg-[#13121F] fixed bottom-0 left-0 w-full rounded-t-2xl z-20 p-4">
<Image src={icon_border} alt="" className="w-12 h-12" /> <img src="/cdn/images/icon_border.png" alt="" className="w-12 h-12" />
<div className="flex flex-col flex-1 ml-4"> <div className="flex flex-col flex-1 ml-4">
<p className="text-white text-base font-medium">铁粉空间</p> <p className="text-white text-base font-medium">铁粉空间</p>
<p className="text-secondary text-sm font-medium">下载APP探索更多</p> <p className="text-secondary text-sm font-medium">下载APP探索更多</p>

View File

@ -2,14 +2,12 @@
import { usePathname } from "next/navigation"; import { usePathname } from "next/navigation";
import Link from "next/link"; import Link from "next/link";
import Image from "next/image";
import slogan from "@/public/images/slogan.png";
export default function LoginLayout({ children }) { export default function LoginLayout({ children }) {
const pathname = usePathname(); const pathname = usePathname();
return ( return (
<section className="flex flex-1 flex-col items-center"> <section className="flex flex-1 flex-col items-center">
<Image src={slogan} priority alt="" className="mt-24 w-96" /> <img src="/cdn/images/slogan.png" alt="" className="mt-24 w-96" />
<div className="flex mt-4 h-10 justify-center"> <div className="flex mt-4 h-10 justify-center">
<div className="tabs tab-boxed w-72"> <div className="tabs tab-boxed w-72">
<Link <Link

View File

@ -1,12 +1,5 @@
import Link from "next/link"; import Link from "next/link";
import React from "react"; import React from "react";
import Image from "next/image";
import iosinstall_1 from "@/public/images/iosinstall_1.png";
import iosinstall_2 from "@/public/images/iosinstall_2.png";
import iosinstall_3 from "@/public/images/iosinstall_3.png";
import iosinstall_4 from "@/public/images/iosinstall_4.png";
import iosinstall_5 from "@/public/images/iosinstall_5.png";
import iosinstall_6 from "@/public/images/iosinstall_6.png";
export default function IosHowToInstall() { export default function IosHowToInstall() {
return ( return (
@ -23,17 +16,41 @@ export default function IosHowToInstall() {
</p> </p>
<h1 className="text-white text-2xl font-medium mt-4">操作指引</h1> <h1 className="text-white text-2xl font-medium mt-4">操作指引</h1>
<p className="text-white text-base mt-2">1打开设置</p> <p className="text-white text-base mt-2">1打开设置</p>
<Image className="w-80 self-center" src={iosinstall_1} priority alt="" /> <img
className="w-80 self-center"
src="/cdn/images/iosinstall_1.png"
alt=""
/>
<p className="text-white text-base mt-2">2点击通用</p> <p className="text-white text-base mt-2">2点击通用</p>
<Image className="w-80 self-center" src={iosinstall_2} priority alt="" /> <img
className="w-80 self-center"
src="/cdn/images/iosinstall_2.png"
alt=""
/>
<p className="text-white text-base mt-2">3点击VPN与设备管理</p> <p className="text-white text-base mt-2">3点击VPN与设备管理</p>
<Image className="w-80 self-center" src={iosinstall_3} priority alt="" /> <img
className="w-80 self-center"
src="/cdn/images/iosinstall_3.png"
alt=""
/>
<p className="text-white text-base mt-2">4点击证书</p> <p className="text-white text-base mt-2">4点击证书</p>
<Image className="w-80 self-center" src={iosinstall_4} alt="" /> <img
className="w-80 self-center"
src="/cdn/images/iosinstall_4.png"
alt=""
/>
<p className="text-white text-base mt-2">5点击信任证书</p> <p className="text-white text-base mt-2">5点击信任证书</p>
<Image className="w-80 self-center" src={iosinstall_5} alt="" /> <img
className="w-80 self-center"
src="/cdn/images/iosinstall_5.png"
alt=""
/>
<p className="text-white text-base mt-2">6在弹出页点击信任</p> <p className="text-white text-base mt-2">6在弹出页点击信任</p>
<Image className="w-80 self-center" src={iosinstall_6} alt="" /> <img
className="w-80 self-center"
src="/cdn/images/iosinstall_6.png"
alt=""
/>
<p className="text-white text-base mt-4"> <p className="text-white text-base mt-4">
请于IOS7.1及以上版本运行此软件具体设置内的样式展示可能会根据您的IOS版本有些区别请注意区分 请于IOS7.1及以上版本运行此软件具体设置内的样式展示可能会根据您的IOS版本有些区别请注意区分
</p> </p>

View File

@ -1,16 +1,7 @@
"use client"; "use client";
import Link from "next/link";
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import InOtherApp from "@/components/InOtherApp"; import InOtherApp from "@/components/InOtherApp";
import Image from "next/image";
import download_lefttop from "@/public/images/download_lefttop.png";
import download_righttop from "@/public/images/download_righttop.png";
import download_rightmedium from "@/public/images/download_rightmedium.png";
import download_leftbottom from "@/public/images/download_leftbottom.png";
import download_rightbottom from "@/public/images/download_rightbottom.png";
import slogan from "@/public/images/slogan.png";
import qrcode from "@/public/images/qrcode.png";
import baseRequest from "@/utils/baseRequest"; import baseRequest from "@/utils/baseRequest";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import { Toast } from "antd-mobile"; import { Toast } from "antd-mobile";
@ -79,34 +70,34 @@ export default function Download({ params }) {
<section className="flex flex-col container"> <section className="flex flex-col container">
<InOtherApp /> <InOtherApp />
<div className="absolute top-0 left-0 w-full h-full z-0"> <div className="absolute top-0 left-0 w-full h-full z-0">
<Image <img
className="absolute top-0 left-0 w-36" className="absolute top-0 left-0 w-36"
src={download_lefttop} src="/cdn/images/download_lefttop.png"
alt="" alt=""
/> />
<Image <img
className="absolute top-10 right-0 w-28" className="absolute top-10 right-0 w-28"
src={download_righttop} src="/cdn/images/download_righttop.png"
alt="" alt=""
/> />
<Image <img
className="absolute top-64 right-0 w-24" className="absolute top-64 right-0 w-24"
src={download_rightmedium} src="/cdn/images/download_rightmedium.png"
alt="" alt=""
/> />
<Image <img
className="absolute bottom-[17rem] left-0 w-32" className="absolute bottom-[17rem] left-0 w-32"
src={download_leftbottom} src="/cdn/images/download_leftbottom.png"
alt="" alt=""
/> />
<Image <img
className="absolute bottom-0 right-0 w-[21rem]" className="absolute bottom-0 right-0 w-[21rem]"
src={download_rightbottom} src="/cdn/images/download_rightbottom.png"
alt="" alt=""
/> />
</div> </div>
<div className="flex flex-col flex-1 pt-16 pb-36 items-center justify-around z-10"> <div className="flex flex-col flex-1 pt-16 pb-36 items-center justify-around z-10">
<Image className="w-96" src={slogan} priority alt="" /> <img className="w-96" src="/cdn/images/slogan.png" alt="" />
{deviceType === "pc" && ( {deviceType === "pc" && (
<div className="flex flex-row gap-20"> <div className="flex flex-row gap-20">
<a <a
@ -147,7 +138,11 @@ export default function Download({ params }) {
</div> </div>
)} )}
<div className="flex flex-col justify-center items-center"> <div className="flex flex-col justify-center items-center">
<Image className="w-28 rounded-2xl" src={qrcode} priority alt="" /> <img
className="w-28 rounded-2xl"
src="/cdn/images/qrcode.png"
alt=""
/>
{deviceType === "pc" && ( {deviceType === "pc" && (
<p className="mt-3 text-white text-sm font-normal">手机扫码下载</p> <p className="mt-3 text-white text-sm font-normal">手机扫码下载</p>
)} )}

View File

@ -1,12 +1,10 @@
import React from "react"; import React from "react";
import Image from "next/image";
import logo from "@/public/images/logo.png";
export default function Help() { export default function Help() {
return ( return (
<section className="flex-1 container"> <section className="flex-1 container">
<div className="flex flex-col items-center justify-center p-4"> <div className="flex flex-col items-center justify-center p-4">
<Image src={logo} priority alt="" className="w-64 mt-12" /> <img src="/cdn/images/logo.png" alt="" className="w-64 mt-12" />
<p className="text-white font-medium text-base text-center mt-4"> <p className="text-white font-medium text-base text-center mt-4">
若对于产品存在任何疑问或需要技术支持请发送邮件到 若对于产品存在任何疑问或需要技术支持请发送邮件到
</p> </p>

View File

@ -1,15 +1,12 @@
import React from "react"; import React from "react";
import Image from "next/image";
import notFoundSvg from "@/public/svgs/illustatus.svg";
import Link from "next/link"; import Link from "next/link";
export default function NotFound() { export default function NotFound() {
return ( return (
<section className="flex flex-col container items-center"> <section className="flex flex-col container items-center">
<Image <img
className="w-full max-w-2xl mt-24" className="w-full max-w-2xl mt-24"
priority src="/cdn/svgs/illustatus.svg"
src={notFoundSvg}
alt="" alt=""
/> />
<p className="text-2xl text-white font-semibold">404 当前页面不存在</p> <p className="text-2xl text-white font-semibold">404 当前页面不存在</p>

View File

@ -2,14 +2,6 @@
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import InOtherApp from "@/components/InOtherApp"; import InOtherApp from "@/components/InOtherApp";
import Image from "next/image";
import download_lefttop from "@/public/images/download_lefttop.png";
import download_righttop from "@/public/images/download_righttop.png";
import download_rightmedium from "@/public/images/download_rightmedium.png";
import download_leftbottom from "@/public/images/download_leftbottom.png";
import download_rightbottom from "@/public/images/download_rightbottom.png";
import slogan from "@/public/images/slogan.png";
import qrcode from "@/public/images/qrcode.png";
import Footer from "@/components/Footer"; import Footer from "@/components/Footer";
import Link from "next/link"; import Link from "next/link";
@ -30,34 +22,34 @@ export default function Home() {
<section className="flex flex-col container"> <section className="flex flex-col container">
<InOtherApp /> <InOtherApp />
<div className="absolute top-0 left-0 w-full h-full z-0"> <div className="absolute top-0 left-0 w-full h-full z-0">
<Image <img
className="absolute top-0 left-0 w-36" className="absolute top-0 left-0 w-36"
src={download_lefttop} src="/cdn/images/download_lefttop.png"
alt="" alt=""
/> />
<Image <img
className="absolute top-10 right-0 w-28" className="absolute top-10 right-0 w-28"
src={download_righttop} src="/cdn/images/download_righttop.png"
alt="" alt=""
/> />
<Image <img
className="absolute top-64 right-0 w-24" className="absolute top-64 right-0 w-24"
src={download_rightmedium} src="/cdn/images/download_rightmedium.png"
alt="" alt=""
/> />
<Image <img
className="absolute bottom-[17rem] left-0 w-32" className="absolute bottom-[17rem] left-0 w-32"
src={download_leftbottom} src="/cdn/images/download_leftbottom.png"
alt="" alt=""
/> />
<Image <img
className="absolute bottom-0 right-0 w-[21rem]" className="absolute bottom-0 right-0 w-[21rem]"
src={download_rightbottom} src="/cdn/images/download_rightbottom.png"
alt="" alt=""
/> />
</div> </div>
<div className="flex flex-col flex-1 py-8 items-center justify-around z-10"> <div className="flex flex-col flex-1 py-8 items-center justify-around z-10">
<Image className="w-96" src={slogan} priority alt="" /> <img className="w-96" src="/cdn/images/slogan.png" alt="" />
<div className="flex px-8 max-w-xl"> <div className="flex px-8 max-w-xl">
<h1 className="text-white text-base leading-6"> <h1 className="text-white text-base leading-6">
<svg <svg
@ -128,7 +120,11 @@ export default function Home() {
</div> </div>
)} )}
<div className="flex flex-col justify-center items-center"> <div className="flex flex-col justify-center items-center">
<Image className="w-28 rounded-2xl" src={qrcode} priority alt="" /> <img
className="w-28 rounded-2xl"
src="/cdn/images/qrcode.png"
alt=""
/>
{deviceType === "pc" && ( {deviceType === "pc" && (
<p className="mt-3 text-white text-sm font-normal">手机扫码下载</p> <p className="mt-3 text-white text-sm font-normal">手机扫码下载</p>
)} )}

View File

@ -5,10 +5,6 @@ import React, { useState } from "react";
import { useRouter } from "next/navigation"; import { useRouter } from "next/navigation";
import baseRequest from "@/utils/baseRequest"; import baseRequest from "@/utils/baseRequest";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import Image from "next/image";
import platform_wechat from "@/public/images/platform_wechat.png";
import direct_purchase from "@/public/icon/direct_purchase.png";
import app_purchase from "@/public/icon/app_purchase.png";
import { Toast } from "antd-mobile"; import { Toast } from "antd-mobile";
import { checkAuth } from "@/utils/auth"; import { checkAuth } from "@/utils/auth";
@ -69,7 +65,7 @@ export default function WechatBar({ price, streamerMid }) {
onClick={() => setShowBuyWechat(!showBuyWechat)} onClick={() => setShowBuyWechat(!showBuyWechat)}
className="flex flex-row cursor-pointer bg-[#07050A] border-2 border-[#FFFFFF26] rounded-2xl h-12 items-center justify-center" className="flex flex-row cursor-pointer bg-[#07050A] border-2 border-[#FFFFFF26] rounded-2xl h-12 items-center justify-center"
> >
<Image src={platform_wechat} alt="" className="w-5 h-5" /> <img src="/cdn/images/platform_wechat.png" alt="" className="w-5 h-5" />
<p className="text-white text-base font-medium ml-2">我的微信</p> <p className="text-white text-base font-medium ml-2">我的微信</p>
</div> </div>
<div <div
@ -81,7 +77,7 @@ export default function WechatBar({ price, streamerMid }) {
className="flex flex-row cursor-pointer items-center justify-center py-4" className="flex flex-row cursor-pointer items-center justify-center py-4"
onClick={() => document.getElementById("comfirm_modal").showModal()} onClick={() => document.getElementById("comfirm_modal").showModal()}
> >
<Image src={direct_purchase} alt="" className="w-5 h-5" /> <img src="/cdn/icon/direct_purchase.png" alt="" className="w-5 h-5" />
<p className="text-white text-base font-medium ml-2"> <p className="text-white text-base font-medium ml-2">
直接解锁(¥{price}) 直接解锁(¥{price})
</p> </p>
@ -91,7 +87,7 @@ export default function WechatBar({ price, streamerMid }) {
className="flex flex-row cursor-pointer items-center justify-center py-4 mb-2" className="flex flex-row cursor-pointer items-center justify-center py-4 mb-2"
onClick={() => router.push("/")} onClick={() => router.push("/")}
> >
<Image src={app_purchase} alt="" className="w-5 h-5" /> <img src="/cdn/icon/app_purchase.png" alt="" className="w-5 h-5" />
<p className="text-white text-base font-medium ml-2"> <p className="text-white text-base font-medium ml-2">
APP内解锁(-10%) APP内解锁(-10%)
</p> </p>

View File

@ -82,7 +82,7 @@ export default function StreamerDetail({ params }) {
</div> </div>
<div className="flex flex-row items-center mt-3"> <div className="flex flex-row items-center mt-3">
<p className="text-white text-2xl font-medium mr-1">{data?.name}</p> <p className="text-white text-2xl font-medium mr-1">{data?.name}</p>
<Image src={verification} alt="" className="w-6 h-6" /> <img src="/cdn/icon/verification.png" alt="" className="w-6 h-6" />
</div> </div>
<p className="text-secondary text-sm text-center font-medium mt-3 px-4"> <p className="text-secondary text-sm text-center font-medium mt-3 px-4">
{data?.bio} {data?.bio}

View File

@ -8,7 +8,6 @@ import { JSEncrypt } from "jsencrypt";
import { useRouter } from "next/navigation"; import { useRouter } from "next/navigation";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import Image from "next/image"; import Image from "next/image";
import verification_water_mark from "@/public/images/verification_water_mark.png";
export default function Verification() { export default function Verification() {
const router = useRouter(); const router = useRouter();
@ -147,9 +146,9 @@ export default function Verification() {
fill fill
alt="" alt=""
/> />
<Image <img
className="w-full h-full object-cover absolute top-0 left-0 bg-black/50" className="w-full h-full object-cover absolute top-0 left-0 bg-black/50"
src={verification_water_mark} src="/cdn/images/verification_water_mark.png"
alt="" alt=""
/> />
</div> </div>
@ -192,9 +191,9 @@ export default function Verification() {
fill fill
alt="" alt=""
/> />
<Image <img
className="w-full h-full object-cover absolute top-0 left-0 bg-black/50" className="w-full h-full object-cover absolute top-0 left-0 bg-black/50"
src={verification_water_mark} src="/cdn/images/verification_water_mark.png"
alt="" alt=""
/> />
</div> </div>
@ -246,9 +245,9 @@ export default function Verification() {
fill fill
alt="" alt=""
/> />
<Image <img
className="w-full h-full object-cover absolute top-0 left-0 bg-black/50" className="w-full h-full object-cover absolute top-0 left-0 bg-black/50"
src={verification_water_mark} src="/cdn/images/verification_water_mark.png"
alt="" alt=""
/> />
</div> </div>

View File

@ -3,17 +3,6 @@
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import webviewBaseRequest from "@/utils/webviewBaseRequest"; import webviewBaseRequest from "@/utils/webviewBaseRequest";
import Image from "next/image";
import vipbackground from "@/public/images/vipbackground.png";
import isvip from "@/public/images/isvip.png";
import notvip from "@/public/images/notvip.png";
import alipay from "@/public/images/alipay.png";
import contact from "@/public/images/contact.png";
import vipright1 from "@/public/images/vipright1.png";
import vipright2 from "@/public/images/vipright2.png";
import vipright3 from "@/public/images/vipright3.png";
import vipright4 from "@/public/images/vipright4.png";
import viptitle from "@/public/images/viptitle.png";
import Link from "next/link"; import Link from "next/link";
import { Toast } from "antd-mobile"; import { Toast } from "antd-mobile";
import { useRouter } from "next/navigation"; import { useRouter } from "next/navigation";
@ -148,36 +137,36 @@ export default function Vip() {
} }
}; };
if (isFetching) { // if (isFetching) {
return ( // return (
<section className="flex flex-1 justify-center container"> // <section className="flex flex-1 justify-center container">
<span className="absolute top-1/2 loading loading-spinner loading-lg"></span> // <span className="absolute top-1/2 loading loading-spinner loading-lg"></span>
</section> // </section>
); // );
} // }
return ( return (
<section className="flex flex-1 justify-center container"> <section className="flex flex-1 justify-center container">
{isLoading && ( {isLoading && (
<span className="absolute top-1/2 loading loading-spinner loading-lg z-20"></span> <span className="absolute top-1/2 loading loading-spinner loading-lg z-20"></span>
)} )}
<Image <img
className="absolute top-0 left-0 z-0 w-full" className="absolute top-0 left-0 z-0 w-full"
src={vipbackground} src="/cdn/images/vipbackground.png"
alt="" alt=""
/> />
<div className="flex flex-col z-10"> <div className="flex flex-col z-10">
<Image className="pt-24" src={viptitle} alt="" /> <img className="pt-24" src="/cdn/images/viptitle.png" alt="" />
<div className="flex flex-col px-4 pb-32"> <div className="flex flex-col px-4 pb-32">
{isVip ? ( {isVip ? (
<div className="relative"> <div className="relative">
<Image src={isvip} alt="" /> <img src="/cdn/images/isvip.png" alt="" />
<p className="absolute bottom-5 left-5 text-[#521824B2] text-sm font-medium"> <p className="absolute bottom-5 left-5 text-[#521824B2] text-sm font-medium">
{name} {name}
</p> </p>
</div> </div>
) : ( ) : (
<Image src={notvip} alt="" /> <img src="/cdn/images/notvip.png" alt="" />
)} )}
<div <div
className="flex flex-col p-4 rounded-2xl mt-4" className="flex flex-col p-4 rounded-2xl mt-4"
@ -191,28 +180,28 @@ export default function Vip() {
<p className="text-[#F5C4CC] text-2xl font-bold">会员权益</p> <p className="text-[#F5C4CC] text-2xl font-bold">会员权益</p>
<div className="flex flex-row flex-wrap gap-y-3.5 mt-4"> <div className="flex flex-row flex-wrap gap-y-3.5 mt-4">
<div className="flex flex-row items-center basis-1/2"> <div className="flex flex-row items-center basis-1/2">
<Image className="w-11" src={vipright1} alt="" /> <img className="w-11" src="/cdn/images/vipright1.png" alt="" />
<div className="flex flex-col ml-1.5"> <div className="flex flex-col ml-1.5">
<p className="text-[#F5C4CC] text-sm">高清图片</p> <p className="text-[#F5C4CC] text-sm">高清图片</p>
<p className="text-[#613F46] text-xs">下载保存</p> <p className="text-[#613F46] text-xs">下载保存</p>
</div> </div>
</div> </div>
<div className="flex flex-row items-center basis-1/2"> <div className="flex flex-row items-center basis-1/2">
<Image className="w-11" src={vipright2} alt="" /> <img className="w-11" src="/cdn/images/vipright2.png" alt="" />
<div className="flex flex-col ml-1.5"> <div className="flex flex-col ml-1.5">
<p className="text-[#F5C4CC] text-sm">身份标签</p> <p className="text-[#F5C4CC] text-sm">身份标签</p>
<p className="text-[#613F46] text-xs">专属标识</p> <p className="text-[#613F46] text-xs">专属标识</p>
</div> </div>
</div> </div>
<div className="flex flex-row items-center basis-1/2"> <div className="flex flex-row items-center basis-1/2">
<Image className="w-11" src={vipright3} alt="" /> <img className="w-11" src="/cdn/images/vipright3.png" alt="" />
<div className="flex flex-col ml-1.5"> <div className="flex flex-col ml-1.5">
<p className="text-[#F5C4CC] text-sm">专属客服</p> <p className="text-[#F5C4CC] text-sm">专属客服</p>
<p className="text-[#613F46] text-xs">极速服务</p> <p className="text-[#613F46] text-xs">极速服务</p>
</div> </div>
</div> </div>
<div className="flex flex-row items-center basis-1/2"> <div className="flex flex-row items-center basis-1/2">
<Image className="w-11" src={vipright4} alt="" /> <img className="w-11" src="/cdn/images/vipright4.png" alt="" />
<div className="flex flex-col ml-1.5"> <div className="flex flex-col ml-1.5">
<p className="text-[#F5C4CC] text-sm">期待更多</p> <p className="text-[#F5C4CC] text-sm">期待更多</p>
<p className="text-[#613F46] text-xs">惊喜福利</p> <p className="text-[#613F46] text-xs">惊喜福利</p>
@ -258,7 +247,11 @@ export default function Vip() {
onClick={() => createOrder("yeepay_alipay_h5")} onClick={() => createOrder("yeepay_alipay_h5")}
className="flex flex-row cursor-pointer gap-1.5 h-11 items-center justify-center bg-primary rounded-full" className="flex flex-row cursor-pointer gap-1.5 h-11 items-center justify-center bg-primary rounded-full"
> >
<Image src={alipay} width={22} alt="" /> <img
className="w-[22px]"
src="/cdn/images/alipay.png"
alt=""
/>
<p className="text-white text-base font-medium whitespace-nowrap"> <p className="text-white text-base font-medium whitespace-nowrap">
支付宝支付 支付宝支付
</p> </p>

View File

@ -5,8 +5,6 @@ import baseRequest from "@/utils/baseRequest";
import { Toast } from "antd-mobile"; import { Toast } from "antd-mobile";
import InOtherApp from "@/components/InOtherApp"; import InOtherApp from "@/components/InOtherApp";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import Image from "next/image";
import verification from "@/public/icon/verification.png";
import Link from "next/link"; import Link from "next/link";
import copy from "@/utils/copy"; import copy from "@/utils/copy";
@ -70,7 +68,7 @@ export default function Weibo({ params }) {
</div> </div>
<div className="flex flex-row items-center mt-3"> <div className="flex flex-row items-center mt-3">
<p className="text-white text-2xl font-medium mr-1">{data?.name}</p> <p className="text-white text-2xl font-medium mr-1">{data?.name}</p>
<Image src={verification} alt="" className="w-6 h-6" /> <img src="/cdn/icon/verification.png" alt="" className="w-6 h-6" />
</div> </div>
<Link className="p-2" href="/" onClick={copyInviter}> <Link className="p-2" href="/" onClick={copyInviter}>
<p className="btn w-48 bg-gradient-to-r from-[#FF668B] to-[#FF66F0] rounded-full text-white font-medium"> <p className="btn w-48 bg-gradient-to-r from-[#FF668B] to-[#FF66F0] rounded-full text-white font-medium">

View File

@ -1,11 +1,6 @@
"use client"; "use client";
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import Image from "next/image";
import pinkline from "@/public/images/pinkline.png";
import ID from "@/public/images/ID.png";
import tiefen from "@/public/images/tiefen.png";
import wechat from "@/public/images/wechat.png";
import { Toast } from "antd-mobile"; import { Toast } from "antd-mobile";
import baseRequest from "@/utils/baseRequest"; import baseRequest from "@/utils/baseRequest";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
@ -83,7 +78,7 @@ export default function Zone({ params }) {
</p> </p>
<div className="flex flex-row"> <div className="flex flex-row">
<div className="flex flex-row items-center py-0.5 px-2 mr-2 bg-[#FFFFFF1A] rounded-full"> <div className="flex flex-row items-center py-0.5 px-2 mr-2 bg-[#FFFFFF1A] rounded-full">
<Image src={ID} alt="" className="w-4" /> <img src="/cdn/images/ID.png" alt="" className="w-4" />
<p className="text-white text-xs font-medium ml-0.5"> <p className="text-white text-xs font-medium ml-0.5">
{data?.streamer_ext?.user_id} {data?.streamer_ext?.user_id}
</p> </p>
@ -111,8 +106,8 @@ export default function Zone({ params }) {
<div className="flex"> <div className="flex">
<div className="relative"> <div className="relative">
<p className="text-lg text-white font-medium">空间介绍</p> <p className="text-lg text-white font-medium">空间介绍</p>
<Image <img
src={pinkline} src="/cdn/images/pinkline.png"
alt="" alt=""
className="absolute w-9 bottom-0 -right-2" className="absolute w-9 bottom-0 -right-2"
/> />
@ -147,7 +142,7 @@ export default function Zone({ params }) {
document.getElementById("comfirm_modal").showModal(); document.getElementById("comfirm_modal").showModal();
}} }}
> >
<Image src={tiefen} alt="" className="w-5" /> <img src="/cdn/images/tiefen.png" alt="" className="w-5" />
<p className="text-white text-sm font-meidum">查看更多内容</p> <p className="text-white text-sm font-meidum">查看更多内容</p>
</div> </div>
<div <div
@ -157,7 +152,7 @@ export default function Zone({ params }) {
document.getElementById("comfirm_modal").showModal(); document.getElementById("comfirm_modal").showModal();
}} }}
> >
<Image src={wechat} alt="" className="w-5" /> <img src="/cdn/images/wechat.png" alt="" className="w-5" />
<p className="text-white text-sm font-meidum">解锁Ta的微信</p> <p className="text-white text-sm font-meidum">解锁Ta的微信</p>
</div> </div>
</div> </div>
@ -176,8 +171,8 @@ export default function Zone({ params }) {
<div className="flex"> <div className="flex">
<div className="relative"> <div className="relative">
<p className="text-lg text-white font-medium">加入须知</p> <p className="text-lg text-white font-medium">加入须知</p>
<Image <img
src={pinkline} src="/cdn/images/pinkline.png"
alt="" alt=""
className="absolute w-9 bottom-0 -right-2" className="absolute w-9 bottom-0 -right-2"
/> />

View File

@ -7,8 +7,6 @@ import { Toast, Switch } from "antd-mobile";
import { generateSignature } from "@/utils/crypto"; import { generateSignature } from "@/utils/crypto";
import webviewBaseRequest from "@/utils/webviewBaseRequest"; import webviewBaseRequest from "@/utils/webviewBaseRequest";
import { useRouter } from "next/navigation"; import { useRouter } from "next/navigation";
import alipay from "@/public/images/alipay.png";
import Image from "next/image";
export default function Pay({ params }) { export default function Pay({ params }) {
const router = useRouter(); const router = useRouter();
@ -317,7 +315,11 @@ export default function Pay({ params }) {
onClick={() => createOrder("yeepay_alipay_h5")} onClick={() => createOrder("yeepay_alipay_h5")}
className="flex flex-row cursor-pointer gap-1.5 h-11 items-center justify-center bg-primary rounded-full" className="flex flex-row cursor-pointer gap-1.5 h-11 items-center justify-center bg-primary rounded-full"
> >
<Image src={alipay} width={22} alt="" /> <img
className="w-[22px]"
src="/cdn/images/alipay.png"
alt=""
/>
<p className="text-white text-base font-medium whitespace-nowrap"> <p className="text-white text-base font-medium whitespace-nowrap">
支付宝支付 支付宝支付
</p> </p>

View File

@ -28,7 +28,7 @@ export default function InOtherApp() {
return ( return (
<div className="fixed top-0 left-0 w-full h-full bg-[#000000B2] z-50"> <div className="fixed top-0 left-0 w-full h-full bg-[#000000B2] z-50">
<div className="flex justify-end pt-4 pr-4"> <div className="flex justify-end pt-4 pr-4">
<Image src={arrow} alt="" /> <img src="/cdn/images/arrow.png" alt="" />
</div> </div>
<p className="text-white text-2xl font-medium text-center"> <p className="text-white text-2xl font-medium text-center">
请前往浏览器打开 请前往浏览器打开

View File

@ -10,6 +10,10 @@ const nextConfig = {
source: "/cors/:path*", source: "/cors/:path*",
destination: "https://file.tiefen.fun/:path*", destination: "https://file.tiefen.fun/:path*",
}, },
{
source: "/cdn/:path*",
destination: "https://filecdnhw01.tiefen.fun/public/:path*",
},
]; ];
}, },
transpilePackages: ["crypto-js"], transpilePackages: ["crypto-js"],