chore: 删除未使用的模板遗留页面
删除以下未在路由中配置且从未被引用的组件: - src/views/Authentication/ (9个文件) - Lock: LockBasic, LockCover, LockIllustration - Reset: ResetBasic, ResetCover, ResetIllustration - Verification: VerificationBasic, VerificationCover, VerificationIllustration - src/views/Landing/ (1个文件) - index.js - 通过 iframe 嵌入静态页面 - src/views/Pricing/ (2个文件) - index.tsx, content.tsx - 与 Subscription 功能重复 这些组件是 Argon Dashboard 模板遗留物,从未在项目中实际使用。 删除后减少 12 个冗余文件,降低维护负担。 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,117 +0,0 @@
|
||||
/*!
|
||||
|
||||
=========================================================
|
||||
* Argon Dashboard Chakra PRO - v1.0.0
|
||||
=========================================================
|
||||
|
||||
* Product Page: https://www.creative-tim.com/product/argon-dashboard-chakra-pro
|
||||
* Copyright 2022 Creative Tim (https://www.creative-tim.com/)
|
||||
|
||||
* Designed and Coded by Simmmple & Creative Tim
|
||||
|
||||
=========================================================
|
||||
|
||||
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
*/
|
||||
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
FormControl,
|
||||
FormLabel,
|
||||
HStack,
|
||||
Icon,
|
||||
Input,
|
||||
Link,
|
||||
Switch,
|
||||
Text,
|
||||
useColorModeValue,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import BasicImage from "assets/img/BasicImage.png";
|
||||
import React from "react";
|
||||
import AuthBasic from "layouts/AuthBasic";
|
||||
|
||||
function LockBasic() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("gray.700", "white");
|
||||
const bgForm = useColorModeValue("white", "navy.800");
|
||||
return (
|
||||
<AuthBasic
|
||||
title="Welcome!"
|
||||
description="Use these awesome forms to login or create new account in your project for free."
|
||||
image={BasicImage}
|
||||
>
|
||||
<Flex
|
||||
w="100%"
|
||||
h="100%"
|
||||
alignItems="center"
|
||||
justifyContent="center"
|
||||
mb="60px"
|
||||
mt={{ base: "60px", md: "0px" }}
|
||||
>
|
||||
<Flex
|
||||
zIndex="2"
|
||||
direction="column"
|
||||
w="445px"
|
||||
background="transparent"
|
||||
borderRadius="15px"
|
||||
p="40px"
|
||||
mx={{ base: "20px", md: "100px" }}
|
||||
mb={{ base: "20px", md: "auto" }}
|
||||
bg={bgForm}
|
||||
boxShadow={useColorModeValue(
|
||||
"0px 5px 14px rgba(0, 0, 0, 0.05)",
|
||||
"unset"
|
||||
)}
|
||||
>
|
||||
<Text
|
||||
fontWeight="bold"
|
||||
color={textColor}
|
||||
textAlign="center"
|
||||
mb="10px"
|
||||
fontSize={{ base: "3xl", md: "4xl" }}
|
||||
>
|
||||
Mike Priesler
|
||||
</Text>
|
||||
<Text
|
||||
fontWeight="regular"
|
||||
textAlign="center"
|
||||
color="gray.400"
|
||||
mb="35px"
|
||||
>
|
||||
Enter your password to unlock your account.
|
||||
</Text>
|
||||
<FormControl>
|
||||
<FormLabel ms="4px" fontSize="sm" fontWeight="normal">
|
||||
Password
|
||||
</FormLabel>
|
||||
<Input
|
||||
variant="auth"
|
||||
fontSize="sm"
|
||||
ms="4px"
|
||||
type="password"
|
||||
placeholder="Your password"
|
||||
mb="24px"
|
||||
size="lg"
|
||||
/>
|
||||
<Button
|
||||
fontSize="10px"
|
||||
variant="dark"
|
||||
fontWeight="bold"
|
||||
w="100%"
|
||||
h="45"
|
||||
mb="24px"
|
||||
>
|
||||
UNLOCK
|
||||
</Button>
|
||||
</FormControl>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthBasic>
|
||||
);
|
||||
}
|
||||
|
||||
export default LockBasic;
|
||||
@@ -1,109 +0,0 @@
|
||||
/*!
|
||||
|
||||
=========================================================
|
||||
* Argon Dashboard Chakra PRO - v1.0.0
|
||||
=========================================================
|
||||
|
||||
* Product Page: https://www.creative-tim.com/product/argon-dashboard-chakra-pro
|
||||
* Copyright 2022 Creative Tim (https://www.creative-tim.com/)
|
||||
|
||||
* Designed and Coded by Simmmple & Creative Tim
|
||||
|
||||
=========================================================
|
||||
|
||||
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
*/
|
||||
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
FormControl,
|
||||
FormLabel,
|
||||
Input,
|
||||
Text,
|
||||
useColorModeValue,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import CoverImage from "assets/img/CoverImage.png";
|
||||
import React from "react";
|
||||
import AuthCover from "layouts/AuthCover";
|
||||
|
||||
function LockCover() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("gray.700", "white");
|
||||
const bgForm = useColorModeValue("white", "navy.800");
|
||||
return (
|
||||
<AuthCover image={CoverImage}>
|
||||
<Flex
|
||||
w="100%"
|
||||
h="100%"
|
||||
alignItems="center"
|
||||
justifyContent="center"
|
||||
mb="60px"
|
||||
mt={{ base: "60px", md: "30vh" }}
|
||||
>
|
||||
<Flex
|
||||
zIndex="2"
|
||||
direction="column"
|
||||
w="445px"
|
||||
background="transparent"
|
||||
borderRadius="15px"
|
||||
p="40px"
|
||||
mx={{ base: "20px", md: "100px" }}
|
||||
mb={{ base: "20px", md: "auto" }}
|
||||
bg={bgForm}
|
||||
boxShadow={useColorModeValue(
|
||||
"0px 5px 14px rgba(0, 0, 0, 0.05)",
|
||||
"unset"
|
||||
)}
|
||||
>
|
||||
<Text
|
||||
fontWeight="bold"
|
||||
color={textColor}
|
||||
textAlign="center"
|
||||
mb="10px"
|
||||
fontSize={{ base: "3xl", md: "4xl" }}
|
||||
>
|
||||
Mike Priesler
|
||||
</Text>
|
||||
<Text
|
||||
fontWeight="regular"
|
||||
textAlign="center"
|
||||
color="gray.400"
|
||||
mb="35px"
|
||||
>
|
||||
Enter your password to unlock your account.
|
||||
</Text>
|
||||
<FormControl>
|
||||
<FormLabel ms="4px" fontSize="sm" fontWeight="normal">
|
||||
Email
|
||||
</FormLabel>
|
||||
<Input
|
||||
variant="auth"
|
||||
fontSize="sm"
|
||||
ms="4px"
|
||||
type="text"
|
||||
placeholder="Your email address"
|
||||
mb="24px"
|
||||
size="lg"
|
||||
/>
|
||||
<Button
|
||||
fontSize="10px"
|
||||
variant="dark"
|
||||
fontWeight="bold"
|
||||
w="100%"
|
||||
h="45"
|
||||
mb="24px"
|
||||
>
|
||||
UNLOCK
|
||||
</Button>
|
||||
</FormControl>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthCover>
|
||||
);
|
||||
}
|
||||
|
||||
export default LockCover;
|
||||
@@ -1,81 +0,0 @@
|
||||
import React from "react";
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
FormControl,
|
||||
FormLabel,
|
||||
Input,
|
||||
Text,
|
||||
useColorModeValue,
|
||||
LightMode,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import illustration from "assets/img/illustration-auth.png";
|
||||
import AuthIllustration from "layouts/AuthIllustration";
|
||||
|
||||
function LockIllustration() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("blue.500", "blue.500");
|
||||
return (
|
||||
<AuthIllustration
|
||||
illustrationBackground='linear-gradient(180deg, #3182CE 0%, #63B3ED 100%)'
|
||||
image={illustration}>
|
||||
<Flex
|
||||
w='100%'
|
||||
h='100%'
|
||||
alignItems='start'
|
||||
justifyContent='start'
|
||||
mb={{ base: "0px", md: "60px" }}
|
||||
mt={{ base: "60px", md: "34vh" }}>
|
||||
<Flex
|
||||
zIndex='2'
|
||||
direction='column'
|
||||
w='445px'
|
||||
background='transparent'
|
||||
borderRadius='15px'
|
||||
pe={{ base: "0px", md: "80px" }}
|
||||
mx={{ base: "20px", md: "0px" }}
|
||||
mb={{ base: "20px", md: "auto" }}>
|
||||
<Text
|
||||
fontWeight='bold'
|
||||
color={textColor}
|
||||
mb='10px'
|
||||
fontSize={{ base: "3xl", md: "4xl" }}>
|
||||
Mike Priesler
|
||||
</Text>
|
||||
<Text fontWeight='regular' color='gray.400' mb='35px'>
|
||||
Enter your password to unlock your account.
|
||||
</Text>
|
||||
<FormControl>
|
||||
<FormLabel ms='4px' fontSize='sm' fontWeight='normal'>
|
||||
Password
|
||||
</FormLabel>
|
||||
<Input
|
||||
variant='main'
|
||||
fontSize='sm'
|
||||
ms='4px'
|
||||
type='password'
|
||||
placeholder='Your password'
|
||||
mb='24px'
|
||||
size='lg'
|
||||
/>
|
||||
<LightMode>
|
||||
<Button
|
||||
fontSize='10px'
|
||||
colorScheme='blue'
|
||||
fontWeight='bold'
|
||||
w='100%'
|
||||
h='45'
|
||||
mb='24px'>
|
||||
UNLOCK
|
||||
</Button>
|
||||
</LightMode>
|
||||
</FormControl>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthIllustration>
|
||||
);
|
||||
}
|
||||
|
||||
export default LockIllustration;
|
||||
@@ -1,125 +0,0 @@
|
||||
/*!
|
||||
|
||||
=========================================================
|
||||
* Argon Dashboard Chakra PRO - v1.0.0
|
||||
=========================================================
|
||||
|
||||
* Product Page: https://www.creative-tim.com/product/argon-dashboard-chakra-pro
|
||||
* Copyright 2022 Creative Tim (https://www.creative-tim.com/)
|
||||
|
||||
* Designed and Coded by Simmmple & Creative Tim
|
||||
|
||||
=========================================================
|
||||
|
||||
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
*/
|
||||
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
FormControl,
|
||||
FormLabel,
|
||||
Input,
|
||||
Text,
|
||||
useColorModeValue,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import BasicImage from "assets/img/BasicImage.png";
|
||||
import React from "react";
|
||||
import AuthBasic from "layouts/AuthBasic";
|
||||
|
||||
function ResetCover() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("gray.700", "white");
|
||||
const bgForm = useColorModeValue("white", "navy.800");
|
||||
return (
|
||||
<AuthBasic
|
||||
title="Welcome!"
|
||||
description="Use these awesome forms to login or create new account in your project for free."
|
||||
image={BasicImage}
|
||||
>
|
||||
<Flex
|
||||
w="100%"
|
||||
h="100%"
|
||||
alignItems="center"
|
||||
justifyContent="center"
|
||||
mb="60px"
|
||||
mt={{ base: "60px", md: "0px" }}
|
||||
>
|
||||
<Flex
|
||||
zIndex="2"
|
||||
direction="column"
|
||||
w="445px"
|
||||
background="transparent"
|
||||
borderRadius="15px"
|
||||
p="40px"
|
||||
mx={{ base: "20px", md: "100px" }}
|
||||
mb={{ base: "20px", md: "auto" }}
|
||||
bg={bgForm}
|
||||
boxShadow={useColorModeValue(
|
||||
"0px 5px 14px rgba(0, 0, 0, 0.05)",
|
||||
"unset"
|
||||
)}
|
||||
>
|
||||
<Text
|
||||
fontWeight="bold"
|
||||
color={textColor}
|
||||
textAlign="center"
|
||||
mb="10px"
|
||||
fontSize={{ base: "3xl", md: "4xl" }}
|
||||
>
|
||||
Reset password
|
||||
</Text>
|
||||
<Text
|
||||
fontWeight="regular"
|
||||
textAlign="center"
|
||||
color="gray.400"
|
||||
mb="35px"
|
||||
>
|
||||
You will receive an e-mail in maximum 60 seconds.
|
||||
</Text>
|
||||
<FormControl>
|
||||
<FormLabel ms="4px" fontSize="sm" fontWeight="normal">
|
||||
Email
|
||||
</FormLabel>
|
||||
<Input
|
||||
variant="auth"
|
||||
fontSize="sm"
|
||||
ms="4px"
|
||||
type="text"
|
||||
placeholder="Your email address"
|
||||
mb="24px"
|
||||
size="lg"
|
||||
/>
|
||||
{/* <FormLabel ms='4px' fontSize='sm' fontWeight='normal'>
|
||||
Password
|
||||
</FormLabel>
|
||||
<Input
|
||||
variant='auth'
|
||||
fontSize='sm'
|
||||
ms='4px'
|
||||
type='password'
|
||||
placeholder='Your password'
|
||||
mb='24px'
|
||||
size='lg'
|
||||
/> */}
|
||||
<Button
|
||||
fontSize="10px"
|
||||
variant="dark"
|
||||
fontWeight="bold"
|
||||
w="100%"
|
||||
h="45"
|
||||
mb="24px"
|
||||
>
|
||||
SEND
|
||||
</Button>
|
||||
</FormControl>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthBasic>
|
||||
);
|
||||
}
|
||||
|
||||
export default ResetCover;
|
||||
@@ -1,109 +0,0 @@
|
||||
/*!
|
||||
|
||||
=========================================================
|
||||
* Argon Dashboard Chakra PRO - v1.0.0
|
||||
=========================================================
|
||||
|
||||
* Product Page: https://www.creative-tim.com/product/argon-dashboard-chakra-pro
|
||||
* Copyright 2022 Creative Tim (https://www.creative-tim.com/)
|
||||
|
||||
* Designed and Coded by Simmmple & Creative Tim
|
||||
|
||||
=========================================================
|
||||
|
||||
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
*/
|
||||
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
FormControl,
|
||||
FormLabel,
|
||||
Input,
|
||||
Text,
|
||||
useColorModeValue,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import CoverImage from "assets/img/CoverImage.png";
|
||||
import React from "react";
|
||||
import AuthCover from "layouts/AuthCover";
|
||||
|
||||
function ResetCover() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("gray.700", "white");
|
||||
const bgForm = useColorModeValue("white", "navy.800");
|
||||
return (
|
||||
<AuthCover image={CoverImage}>
|
||||
<Flex
|
||||
w="100%"
|
||||
h="100%"
|
||||
alignItems="center"
|
||||
justifyContent="center"
|
||||
mb="60px"
|
||||
mt={{ base: "60px", md: "30vh" }}
|
||||
>
|
||||
<Flex
|
||||
zIndex="2"
|
||||
direction="column"
|
||||
w="445px"
|
||||
background="transparent"
|
||||
borderRadius="15px"
|
||||
p="40px"
|
||||
mx={{ base: "20px", md: "100px" }}
|
||||
mb={{ base: "20px", md: "auto" }}
|
||||
bg={bgForm}
|
||||
boxShadow={useColorModeValue(
|
||||
"0px 5px 14px rgba(0, 0, 0, 0.05)",
|
||||
"unset"
|
||||
)}
|
||||
>
|
||||
<Text
|
||||
fontWeight="bold"
|
||||
color={textColor}
|
||||
textAlign="center"
|
||||
mb="10px"
|
||||
fontSize={{ base: "3xl", md: "4xl" }}
|
||||
>
|
||||
Reset password
|
||||
</Text>
|
||||
<Text
|
||||
fontWeight="regular"
|
||||
textAlign="center"
|
||||
color="gray.400"
|
||||
mb="35px"
|
||||
>
|
||||
You will receive an e-mail in maximum 60 seconds.
|
||||
</Text>
|
||||
<FormControl>
|
||||
<FormLabel ms="4px" fontSize="sm" fontWeight="normal">
|
||||
Email
|
||||
</FormLabel>
|
||||
<Input
|
||||
variant="auth"
|
||||
fontSize="sm"
|
||||
ms="4px"
|
||||
type="text"
|
||||
placeholder="Your email address"
|
||||
mb="24px"
|
||||
size="lg"
|
||||
/>
|
||||
<Button
|
||||
fontSize="10px"
|
||||
variant="dark"
|
||||
fontWeight="bold"
|
||||
w="100%"
|
||||
h="45"
|
||||
mb="24px"
|
||||
>
|
||||
SEND
|
||||
</Button>
|
||||
</FormControl>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthCover>
|
||||
);
|
||||
}
|
||||
|
||||
export default ResetCover;
|
||||
@@ -1,81 +0,0 @@
|
||||
import React from "react";
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
FormControl,
|
||||
FormLabel,
|
||||
Input,
|
||||
Text,
|
||||
useColorModeValue,
|
||||
LightMode,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import illustration from "assets/img/illustration-auth.png";
|
||||
import AuthIllustration from "layouts/AuthIllustration";
|
||||
|
||||
function ResetIllustration() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("blue.500", "blue.500");
|
||||
return (
|
||||
<AuthIllustration
|
||||
illustrationBackground='linear-gradient(180deg, #3182CE 0%, #63B3ED 100%)'
|
||||
image={illustration}>
|
||||
<Flex
|
||||
w='100%'
|
||||
h='100%'
|
||||
alignItems='start'
|
||||
justifyContent='start'
|
||||
mb={{ base: "0px", md: "60px" }}
|
||||
mt={{ base: "60px", md: "34vh" }}>
|
||||
<Flex
|
||||
zIndex='2'
|
||||
direction='column'
|
||||
w='445px'
|
||||
background='transparent'
|
||||
borderRadius='15px'
|
||||
pe={{ base: "0px", md: "80px" }}
|
||||
mx={{ base: "20px", md: "0px" }}
|
||||
mb={{ base: "20px", md: "auto" }}>
|
||||
<Text
|
||||
fontWeight='bold'
|
||||
color={textColor}
|
||||
mb='10px'
|
||||
fontSize={{ base: "3xl", md: "4xl" }}>
|
||||
Reset password
|
||||
</Text>
|
||||
<Text fontWeight='regular' color='gray.400' mb='35px'>
|
||||
You will receive an e-mail in maximum 60 seconds.
|
||||
</Text>
|
||||
<FormControl>
|
||||
<FormLabel ms='4px' fontSize='sm' fontWeight='normal'>
|
||||
Email
|
||||
</FormLabel>
|
||||
<Input
|
||||
variant='main'
|
||||
fontSize='sm'
|
||||
ms='4px'
|
||||
type='text'
|
||||
placeholder='Your email address'
|
||||
mb='24px'
|
||||
size='lg'
|
||||
/>
|
||||
<LightMode>
|
||||
<Button
|
||||
fontSize='10px'
|
||||
colorScheme='blue'
|
||||
fontWeight='bold'
|
||||
w='100%'
|
||||
h='45'
|
||||
mb='24px'>
|
||||
SEND
|
||||
</Button>
|
||||
</LightMode>
|
||||
</FormControl>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthIllustration>
|
||||
);
|
||||
}
|
||||
|
||||
export default ResetIllustration;
|
||||
@@ -1,116 +0,0 @@
|
||||
/*!
|
||||
|
||||
=========================================================
|
||||
* Argon Dashboard Chakra PRO - v1.0.0
|
||||
=========================================================
|
||||
|
||||
* Product Page: https://www.creative-tim.com/product/argon-dashboard-chakra-pro
|
||||
* Copyright 2022 Creative Tim (https://www.creative-tim.com/)
|
||||
|
||||
* Designed and Coded by Simmmple & Creative Tim
|
||||
|
||||
=========================================================
|
||||
|
||||
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
*/
|
||||
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Link,
|
||||
Flex,
|
||||
FormControl,
|
||||
Text,
|
||||
Icon,
|
||||
useColorModeValue,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import BasicImage from "assets/img/BasicImage.png";
|
||||
import React from "react";
|
||||
import AuthBasic from "layouts/AuthBasic";
|
||||
import { PinInputLight } from "components/PinInput/PinInput";
|
||||
import { Rocket } from "lucide-react";
|
||||
|
||||
function LockBasic() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("gray.700", "white");
|
||||
const bgForm = useColorModeValue("white", "navy.800");
|
||||
return (
|
||||
<AuthBasic
|
||||
title="Welcome!"
|
||||
description="Use these awesome forms to login or create new account in your project for free."
|
||||
image={BasicImage}
|
||||
>
|
||||
<Flex
|
||||
w="100%"
|
||||
h="100%"
|
||||
alignItems="center"
|
||||
justifyContent="center"
|
||||
mb="60px"
|
||||
mt={{ base: "60px", md: "0px" }}
|
||||
>
|
||||
<Flex
|
||||
zIndex="2"
|
||||
direction="column"
|
||||
w="445px"
|
||||
background="transparent"
|
||||
borderRadius="15px"
|
||||
p="40px"
|
||||
mx={{ base: "20px", md: "100px" }}
|
||||
mb={{ base: "20px", md: "auto" }}
|
||||
bg={bgForm}
|
||||
boxShadow={useColorModeValue(
|
||||
"0px 5px 14px rgba(0, 0, 0, 0.05)",
|
||||
"unset"
|
||||
)}
|
||||
>
|
||||
<Flex
|
||||
mx="auto"
|
||||
borderRadius="50%"
|
||||
bg="blue.500"
|
||||
w={{ base: "100px" }}
|
||||
h={{ base: "100px" }}
|
||||
justify="center"
|
||||
align="center"
|
||||
mb="30px"
|
||||
>
|
||||
<Icon as={Rocket} color="white" w="36px" h="36px" />
|
||||
</Flex>
|
||||
<Text
|
||||
fontWeight="bold"
|
||||
color={textColor}
|
||||
textAlign="center"
|
||||
mb="10px"
|
||||
fontSize={{ base: "3xl", md: "4xl" }}
|
||||
>
|
||||
2-Step Verification
|
||||
</Text>
|
||||
<FormControl>
|
||||
<Flex justify="center" align="center" mx="auto" mb="30px">
|
||||
<PinInputLight />
|
||||
</Flex>
|
||||
<Button
|
||||
fontSize="10px"
|
||||
variant="dark"
|
||||
fontWeight="bold"
|
||||
w="100%"
|
||||
h="45"
|
||||
mb="24px"
|
||||
>
|
||||
UNLOCK
|
||||
</Button>
|
||||
</FormControl>
|
||||
<Text color="gray.400" fontWeight="400" textAlign="center">
|
||||
Haven't received it?{" "}
|
||||
<Link color={textColor} as="span" fontWeight="700">
|
||||
Resend a new code.
|
||||
</Link>
|
||||
</Text>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthBasic>
|
||||
);
|
||||
}
|
||||
|
||||
export default LockBasic;
|
||||
@@ -1,104 +0,0 @@
|
||||
/*!
|
||||
|
||||
=========================================================
|
||||
* Argon Dashboard Chakra PRO - v1.0.0
|
||||
=========================================================
|
||||
|
||||
* Product Page: https://www.creative-tim.com/product/argon-dashboard-chakra-pro
|
||||
* Copyright 2022 Creative Tim (https://www.creative-tim.com/)
|
||||
|
||||
* Designed and Coded by Simmmple & Creative Tim
|
||||
|
||||
=========================================================
|
||||
|
||||
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
*/
|
||||
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
Link,
|
||||
Icon,
|
||||
FormControl,
|
||||
Text,
|
||||
useColorModeValue,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import { PinInputLight } from "components/PinInput/PinInput";
|
||||
import { Rocket } from "lucide-react";
|
||||
import CoverImage from "assets/img/CoverImage.png";
|
||||
import React from "react";
|
||||
import AuthCover from "layouts/AuthCover";
|
||||
|
||||
function LockCover() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("gray.700", "white");
|
||||
const bgForm = useColorModeValue("white", "navy.800");
|
||||
return (
|
||||
<AuthCover image={CoverImage}>
|
||||
<Flex
|
||||
zIndex="2"
|
||||
direction="column"
|
||||
w="445px"
|
||||
background="transparent"
|
||||
borderRadius="15px"
|
||||
p="40px"
|
||||
mx={{ base: "20px", md: "auto" }}
|
||||
mb={{ base: "20px", md: "auto" }}
|
||||
bg={bgForm}
|
||||
boxShadow={useColorModeValue(
|
||||
"0px 5px 14px rgba(0, 0, 0, 0.05)",
|
||||
"unset"
|
||||
)}
|
||||
mt="25vh"
|
||||
>
|
||||
<Flex
|
||||
mx="auto"
|
||||
borderRadius="50%"
|
||||
bg="blue.500"
|
||||
w={{ base: "100px" }}
|
||||
h={{ base: "100px" }}
|
||||
justify="center"
|
||||
align="center"
|
||||
mb="30px"
|
||||
>
|
||||
<Icon as={Rocket} color="white" w="36px" h="36px" />
|
||||
</Flex>
|
||||
<Text
|
||||
fontWeight="bold"
|
||||
color={textColor}
|
||||
textAlign="center"
|
||||
mb="10px"
|
||||
fontSize={{ base: "3xl", md: "4xl" }}
|
||||
>
|
||||
2-Step Verification
|
||||
</Text>
|
||||
<FormControl>
|
||||
<Flex justify="center" align="center" mx="auto" mb="30px">
|
||||
<PinInputLight />
|
||||
</Flex>
|
||||
<Button
|
||||
fontSize="10px"
|
||||
variant="dark"
|
||||
fontWeight="bold"
|
||||
w="100%"
|
||||
h="45"
|
||||
mb="24px"
|
||||
>
|
||||
UNLOCK
|
||||
</Button>
|
||||
</FormControl>
|
||||
<Text color="gray.400" fontWeight="400" textAlign="center">
|
||||
Haven't received it?{" "}
|
||||
<Link color={textColor} as="span" fontWeight="700">
|
||||
Resend a new code.
|
||||
</Link>
|
||||
</Text>
|
||||
</Flex>
|
||||
</AuthCover>
|
||||
);
|
||||
}
|
||||
|
||||
export default LockCover;
|
||||
@@ -1,93 +0,0 @@
|
||||
import React from "react";
|
||||
// Chakra imports
|
||||
import {
|
||||
Button,
|
||||
Flex,
|
||||
FormControl,
|
||||
Link,
|
||||
Text,
|
||||
Icon,
|
||||
useColorModeValue,
|
||||
} from "@chakra-ui/react";
|
||||
// Assets
|
||||
import illustration from "assets/img/illustration-auth.png";
|
||||
import AuthIllustration from "layouts/AuthIllustration";
|
||||
import { PinInputDark } from "components/PinInput/PinInput";
|
||||
import { Rocket } from "lucide-react";
|
||||
|
||||
function LockIllustration() {
|
||||
// Chakra color mode
|
||||
const textColor = useColorModeValue("blue.500", "blue.500");
|
||||
const inputBg = useColorModeValue(
|
||||
{ background: "white !important" },
|
||||
{ background: "red !important" }
|
||||
);
|
||||
return (
|
||||
<AuthIllustration
|
||||
illustrationBackground='linear-gradient(180deg, #3182CE 0%, #63B3ED 100%)'
|
||||
image={illustration}>
|
||||
<Flex
|
||||
w='100%'
|
||||
h='100%'
|
||||
alignItems='start'
|
||||
justifyContent='start'
|
||||
mb={{ base: "0px", md: "60px" }}
|
||||
mt={{ base: "60px", md: "30vh" }}>
|
||||
<Flex
|
||||
zIndex='2'
|
||||
direction='column'
|
||||
w='445px'
|
||||
background='transparent'
|
||||
borderRadius='15px'
|
||||
pe={{ base: "0px", md: "80px" }}
|
||||
mx={{ base: "20px", md: "0px" }}
|
||||
mb={{ base: "20px", md: "auto" }}>
|
||||
<Flex
|
||||
mx={{ base: "auto", md: "0px" }}
|
||||
borderRadius='50%'
|
||||
bg='blue.500'
|
||||
w={{ base: "100px" }}
|
||||
h={{ base: "100px" }}
|
||||
justify='center'
|
||||
align='center'
|
||||
mb='30px'>
|
||||
<Icon as={Rocket} color='white' w='36px' h='36px' />
|
||||
</Flex>
|
||||
<Text
|
||||
fontWeight='bold'
|
||||
color={textColor}
|
||||
textAlign='start'
|
||||
mb='10px'
|
||||
fontSize={{ base: "3xl", md: "4xl" }}>
|
||||
2-Step Verification
|
||||
</Text>
|
||||
<FormControl>
|
||||
<Flex mx={{ base: "auto", md: "0px" }} mb='30px'>
|
||||
<PinInputDark />
|
||||
</Flex>
|
||||
<Button
|
||||
fontSize='10px'
|
||||
variant='dark'
|
||||
fontWeight='bold'
|
||||
w='100%'
|
||||
h='45'
|
||||
mb='24px'>
|
||||
UNLOCK
|
||||
</Button>
|
||||
</FormControl>
|
||||
<Text
|
||||
color='gray.400'
|
||||
fontWeight='400'
|
||||
textAlign={{ base: "center", md: "start" }}>
|
||||
Haven't received it?{" "}
|
||||
<Link color={textColor} as='span' fontWeight='700'>
|
||||
Resend a new code.
|
||||
</Link>
|
||||
</Text>
|
||||
</Flex>
|
||||
</Flex>
|
||||
</AuthIllustration>
|
||||
);
|
||||
}
|
||||
|
||||
export default LockIllustration;
|
||||
@@ -1,29 +0,0 @@
|
||||
// src/views/Landing/index.js
|
||||
// Landing 页面 - 使用 iframe 嵌入静态 landing.html
|
||||
|
||||
/**
|
||||
* Landing 组件
|
||||
*
|
||||
* 使用 iframe 全屏嵌入 landing.html,保持静态页面的完整功能
|
||||
* 同时可以通过 React 路由访问
|
||||
*/
|
||||
export default function Landing() {
|
||||
return (
|
||||
<iframe
|
||||
src="/landing.html"
|
||||
title="价值前沿 - 金融AI舆情分析系统"
|
||||
style={{
|
||||
position: 'fixed',
|
||||
top: 0,
|
||||
left: 0,
|
||||
width: '100%',
|
||||
height: '100%',
|
||||
border: 'none',
|
||||
margin: 0,
|
||||
padding: 0,
|
||||
overflow: 'hidden',
|
||||
zIndex: 9999,
|
||||
}}
|
||||
/>
|
||||
);
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
export const pricing = [
|
||||
{
|
||||
title: "STARTER",
|
||||
price: 99,
|
||||
features: [
|
||||
"1 Active Bot",
|
||||
"1,000 Conversations per month",
|
||||
"Web & WhatsApp Integration",
|
||||
"Basic Dashboard & Chat Reports",
|
||||
"Email Support",
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "PRO",
|
||||
price: 149,
|
||||
features: [
|
||||
"Up to 5 Active Bots",
|
||||
"10,000 Conversations per month",
|
||||
"Multi-Channel (Web, WhatsApp, IG, Telegram)",
|
||||
"Custom Workflows & Automation",
|
||||
"Real-Time Reports & Zapier Integration",
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "ENTERPRISE",
|
||||
price: 199,
|
||||
features: [
|
||||
"Unlimited Bots & Chats",
|
||||
"Role-Based Access & Team Management",
|
||||
"Integration to CRM & Custom APIs",
|
||||
"Advanced AI Training (LLM/NLP)",
|
||||
"Dedicated Onboarding Team",
|
||||
],
|
||||
},
|
||||
];
|
||||
@@ -1,129 +0,0 @@
|
||||
import { motion } from "framer-motion";
|
||||
import Button from "@/components/Button";
|
||||
|
||||
import { pricing } from "./content";
|
||||
|
||||
const Pricing = () => (
|
||||
<div
|
||||
id="pricing"
|
||||
className="pt-34.5 pb-25 max-2xl:pt-25 max-lg:py-20 max-md:py-15"
|
||||
>
|
||||
<div className="center">
|
||||
<motion.div
|
||||
className="max-w-175 mx-auto mb-17.5 text-center max-xl:mb-14 max-md:mb-8"
|
||||
initial={{ opacity: 0 }}
|
||||
whileInView={{ opacity: 1 }}
|
||||
transition={{ delay: 0.2, duration: 0.7 }}
|
||||
viewport={{ amount: 0.7 }}
|
||||
>
|
||||
<div className="label mb-3 max-md:mb-1.5">Pricing</div>
|
||||
<div className="bg-radial-white-2 bg-clip-text text-transparent text-title-1 max-lg:text-title-2 max-md:text-title-1-mobile">
|
||||
Start Automation Today
|
||||
</div>
|
||||
</motion.div>
|
||||
<motion.div
|
||||
className="flex gap-4 max-lg:-mx-10 max-lg:px-10 max-lg:overflow-x-auto max-lg:scrollbar-none max-md:-mx-5 max-md:px-5"
|
||||
initial={{ opacity: 0 }}
|
||||
whileInView={{ opacity: 1 }}
|
||||
transition={{ delay: 0.2, duration: 0.7 }}
|
||||
viewport={{ amount: 0.35 }}
|
||||
>
|
||||
{pricing.map((item, index) => (
|
||||
<div
|
||||
className={`relative flex flex-col flex-1 rounded-[1.25rem] overflow-hidden after:absolute after:inset-0 after:border after:border-line after:rounded-[1.25rem] after:pointer-events-none max-lg:shrink-0 max-lg:flex-auto max-lg:w-84 ${
|
||||
item.title === "PRO"
|
||||
? "shadow-2 before:absolute before:-top-20 before:left-1/2 before:z-1 before:-translate-x-1/2 before:w-65 before:h-57 before:bg-green/10 before:rounded-full before:blur-[3.375rem]"
|
||||
: "shadow-[0.0625rem_0.0625rem_0.0625rem_0_rgba(255,255,255,0.10)_inset]"
|
||||
}`}
|
||||
key={index}
|
||||
>
|
||||
{item.title === "PRO" && (
|
||||
<div className="absolute -top-36 left-13 w-105 mask-radial-at-center mask-radial-from-20% mask-radial-to-52%">
|
||||
<video
|
||||
className="w-full"
|
||||
src="/videos/video-1.mp4"
|
||||
autoPlay
|
||||
loop
|
||||
muted
|
||||
playsInline
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
<div
|
||||
className={`relative z-2 pt-8 px-8.5 pb-10 text-title-4 max-md:text-title-5 ${
|
||||
item.title === "PRO"
|
||||
? "bg-[#175673]/20 rounded-t-[1.25rem] text-green"
|
||||
: "text-white"
|
||||
}`}
|
||||
>
|
||||
{item.title}
|
||||
</div>
|
||||
<div
|
||||
className={`relative z-3 flex flex-col grow -mt-5 p-3.5 pb-8.25 rounded-[1.25rem] after:absolute after:inset-0 after:border after:border-line after:rounded-[1.25rem] after:pointer-events-none ${
|
||||
item.title === "PRO"
|
||||
? "backdrop-blur-[2rem] shadow-2 bg-white/7"
|
||||
: "backdrop-blur-[1.25rem] bg-white/1"
|
||||
}`}
|
||||
>
|
||||
<div
|
||||
className={`relative mb-8 p-5 rounded-[0.8125rem] backdrop-blur-[1.25rem] shadow-2 after:absolute after:inset-0 after:border after:border-line after:rounded-[0.8125rem] after:pointer-events-none ${
|
||||
item.title === "PRO"
|
||||
? "bg-line"
|
||||
: "bg-white/2"
|
||||
}`}
|
||||
>
|
||||
<div className="flex items-end gap-3 mb-4">
|
||||
<div className="bg-radial-white-2 bg-clip-text text-transparent text-title-1 leading-[3.1rem] max-xl:text-title-2 max-xl:leading-[2.4rem]">
|
||||
${item.price}
|
||||
</div>
|
||||
<div className="text-title-5">/Month</div>
|
||||
</div>
|
||||
<Button
|
||||
className={`w-full bg-line ${
|
||||
item.title !== "PRO"
|
||||
? "!text-description hover:!text-white"
|
||||
: ""
|
||||
}`}
|
||||
isPrimary={item.title === "PRO"}
|
||||
isSecondary={item.title !== "PRO"}
|
||||
>
|
||||
{item.title === "STARTER"
|
||||
? "Start with Beginner"
|
||||
: item.title === "PRO"
|
||||
? "Choose Pro Plan"
|
||||
: "Contact for Enterprise"}
|
||||
</Button>
|
||||
</div>
|
||||
<div className="flex flex-col gap-6.5 px-3.5 max-xl:px-0 max-xl:gap-5 max-md:px-3.5">
|
||||
{item.features.map((feature, index) => (
|
||||
<div
|
||||
className="flex items-center gap-2.5 text-description max-xl:text-description-2 max-md:text-description-mobile"
|
||||
key={index}
|
||||
>
|
||||
<div className="flex justify-center items-center shrink-0 size-5 bg-green rounded-full shadow-[0.0625rem_0.0625rem_0.0625rem_0_rgba(255,255,255,0.20)_inset,_0_0_0.625rem_0_rgba(255,255,255,0.50)_inset]">
|
||||
<svg
|
||||
className="size-5 fill-black"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="20"
|
||||
height="20"
|
||||
viewBox="0 0 20 20"
|
||||
>
|
||||
<path d="M13.47 6.97A.75.75 0 0 1 14.53 8.03l-5 5a.75.75 0 0 1-1.061 0l-3-3A.75.75 0 0 1 6.53 8.97L9 11.439l4.47-4.469z" />
|
||||
</svg>
|
||||
</div>
|
||||
{feature}
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
))}
|
||||
</motion.div>
|
||||
<div className="mt-13.5 text-center max-md:mt-8 max-md:text-title-3-mobile">
|
||||
Free 7 Day Trial
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
export default Pricing;
|
||||
Reference in New Issue
Block a user