ai seo engine badge with logo sideabr and marketingsite
This commit is contained in:
@@ -460,7 +460,7 @@ export default function SignUpFormUnified({
|
|||||||
ReactDOM.createPortal(
|
ReactDOM.createPortal(
|
||||||
<div className="space-y-6">
|
<div className="space-y-6">
|
||||||
{/* Billing Toggle - Centered with inline discount */}
|
{/* Billing Toggle - Centered with inline discount */}
|
||||||
<div className="flex items-center justify-center gap-3">
|
<div className="flex items-center justify-center gap-3 w-full max-w-[640px] mx-auto">
|
||||||
<div className="relative inline-flex p-1 bg-gray-100 dark:bg-gray-800 rounded-xl shadow-sm">
|
<div className="relative inline-flex p-1 bg-gray-100 dark:bg-gray-800 rounded-xl shadow-sm">
|
||||||
<span
|
<span
|
||||||
className={`absolute top-1/2 left-1 flex h-11 w-32 -translate-y-1/2 rounded-lg bg-gradient-to-br from-brand-500 to-brand-600 shadow-md transition-all duration-300 ease-out ${
|
className={`absolute top-1/2 left-1 flex h-11 w-32 -translate-y-1/2 rounded-lg bg-gradient-to-br from-brand-500 to-brand-600 shadow-md transition-all duration-300 ease-out ${
|
||||||
|
|||||||
@@ -101,10 +101,16 @@ const AppHeader: React.FC = () => {
|
|||||||
<div className="flex flex-col items-center justify-between grow lg:flex-row lg:px-6">
|
<div className="flex flex-col items-center justify-between grow lg:flex-row lg:px-6">
|
||||||
<div className="flex items-center justify-between w-full gap-2 px-3 py-3 border-b border-gray-200 dark:border-gray-800 sm:gap-4 lg:justify-normal lg:border-b-0 lg:px-0 lg:py-4">
|
<div className="flex items-center justify-between w-full gap-2 px-3 py-3 border-b border-gray-200 dark:border-gray-800 sm:gap-4 lg:justify-normal lg:border-b-0 lg:px-0 lg:py-4">
|
||||||
{/* Mobile Logo */}
|
{/* Mobile Logo */}
|
||||||
<Link to="/" className="lg:hidden">
|
<div className="flex items-center gap-2 lg:hidden">
|
||||||
|
<Link to="/" className="flex items-center">
|
||||||
<img className="dark:hidden" src="./images/logo/IGNY8_LIGHT_LOGO.png" alt="Logo" />
|
<img className="dark:hidden" src="./images/logo/IGNY8_LIGHT_LOGO.png" alt="Logo" />
|
||||||
<img className="hidden dark:block" src="./images/logo/logo-dark.svg" alt="Logo" />
|
<img className="hidden dark:block" src="./images/logo/logo-dark.svg" alt="Logo" />
|
||||||
</Link>
|
</Link>
|
||||||
|
{/* AI SEO Engine Badge */}
|
||||||
|
<div className="px-3 py-1 rounded-full bg-brand-600 dark:bg-brand-800">
|
||||||
|
<span className="text-xs font-medium text-white">AI SEO Engine</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
{/* Mobile Menu Toggle */}
|
{/* Mobile Menu Toggle */}
|
||||||
<IconButton
|
<IconButton
|
||||||
@@ -132,7 +138,7 @@ const AppHeader: React.FC = () => {
|
|||||||
shape="rounded"
|
shape="rounded"
|
||||||
onClick={toggleSidebar}
|
onClick={toggleSidebar}
|
||||||
aria-label={isExpanded ? "Collapse Sidebar" : "Expand Sidebar"}
|
aria-label={isExpanded ? "Collapse Sidebar" : "Expand Sidebar"}
|
||||||
className="ml-0 lg:-ml-8 rounded-md rounded-l-none border border-gray-300 border-l-0 dark:border-gray-700"
|
className="ml-0 lg:-ml-6 rounded-md rounded-l-none border border-gray-300 border-l-0 dark:border-gray-700"
|
||||||
icon={
|
icon={
|
||||||
<svg
|
<svg
|
||||||
className={`w-3 h-3 transition-transform duration-300 ${isExpanded ? 'rotate-180' : ''}`}
|
className={`w-3 h-3 transition-transform duration-300 ${isExpanded ? 'rotate-180' : ''}`}
|
||||||
|
|||||||
@@ -421,7 +421,7 @@ const AppSidebar: React.FC = () => {
|
|||||||
onMouseEnter={() => !isExpanded && setIsHovered(true)}
|
onMouseEnter={() => !isExpanded && setIsHovered(true)}
|
||||||
onMouseLeave={() => setIsHovered(false)}
|
onMouseLeave={() => setIsHovered(false)}
|
||||||
>
|
>
|
||||||
<div className="py-4 flex justify-center items-center">
|
<div className="py-4 flex flex-col justify-center items-center border-b border-gray-200 dark:border-gray-800">
|
||||||
<Link to="/" className="flex flex-col items-center">
|
<Link to="/" className="flex flex-col items-center">
|
||||||
{isExpanded || isHovered || isMobileOpen ? (
|
{isExpanded || isHovered || isMobileOpen ? (
|
||||||
<>
|
<>
|
||||||
@@ -439,13 +439,10 @@ const AppSidebar: React.FC = () => {
|
|||||||
width={113}
|
width={113}
|
||||||
height={30}
|
height={30}
|
||||||
/>
|
/>
|
||||||
<div
|
{/* AI SEO Engine Badge */}
|
||||||
className="mt-2 h-6 w-[163px] rounded-full"
|
<span className="mt-2 px-2 py-0.5 text-xs font-medium rounded-[5px] bg-purple-100 text-purple-700 dark:bg-purple-500/20 dark:text-purple-300">
|
||||||
style={{
|
AI SEO Engine
|
||||||
background: "radial-gradient(ellipse at center, rgba(59,130,246,0.35) 0%, rgba(59,130,246,0) 70%)",
|
</span>
|
||||||
filter: "blur(2px)",
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
</>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<img
|
<img
|
||||||
@@ -457,7 +454,7 @@ const AppSidebar: React.FC = () => {
|
|||||||
)}
|
)}
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex flex-col overflow-y-auto duration-300 ease-linear no-scrollbar mt-[25px]">
|
<div className="flex flex-col overflow-y-auto duration-300 ease-linear no-scrollbar mt-[22px]">
|
||||||
<nav>
|
<nav>
|
||||||
<div className="flex flex-col gap-1">
|
<div className="flex flex-col gap-1">
|
||||||
{allSections.map((section, sectionIndex) => (
|
{allSections.map((section, sectionIndex) => (
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ const MarketingLayout: React.FC<MarketingLayoutProps> = ({ children }) => {
|
|||||||
<div className="min-h-screen flex flex-col bg-gradient-to-b from-white via-gray-50 to-white text-gray-900">
|
<div className="min-h-screen flex flex-col bg-gradient-to-b from-white via-gray-50 to-white text-gray-900">
|
||||||
<header className="sticky top-0 z-[1100] backdrop-blur-xl bg-white/95 border-b border-gray-200 shadow-sm">
|
<header className="sticky top-0 z-[1100] backdrop-blur-xl bg-white/95 border-b border-gray-200 shadow-sm">
|
||||||
<div className="max-w-6xl mx-auto px-6 py-4 flex items-center justify-between">
|
<div className="max-w-6xl mx-auto px-6 py-4 flex items-center justify-between">
|
||||||
|
<div className="flex items-center gap-3">
|
||||||
<Link to="/" className="flex items-center gap-3" onClick={closeMobile}>
|
<Link to="/" className="flex items-center gap-3" onClick={closeMobile}>
|
||||||
<img
|
<img
|
||||||
src="/images/logo/IGNY8_LIGHT_LOGO.png"
|
src="/images/logo/IGNY8_LIGHT_LOGO.png"
|
||||||
@@ -25,6 +26,10 @@ const MarketingLayout: React.FC<MarketingLayoutProps> = ({ children }) => {
|
|||||||
className="h-10 w-auto"
|
className="h-10 w-auto"
|
||||||
/>
|
/>
|
||||||
</Link>
|
</Link>
|
||||||
|
<div className="px-3 py-0.5 rounded-[5px] bg-[var(--color-primary-dark)]">
|
||||||
|
<span className="text-xs font-medium text-white">AI SEO Engine</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<nav className="hidden lg:flex items-center gap-8 text-sm font-medium">
|
<nav className="hidden lg:flex items-center gap-8 text-sm font-medium">
|
||||||
{primaryNav.map((link) => {
|
{primaryNav.map((link) => {
|
||||||
|
|||||||
@@ -598,19 +598,6 @@ export default function ContentCalendar() {
|
|||||||
<p className="text-gray-600 dark:text-gray-400">Loading calendar...</p>
|
<p className="text-gray-600 dark:text-gray-400">Loading calendar...</p>
|
||||||
</div>
|
</div>
|
||||||
</Card>
|
</Card>
|
||||||
) : queueItems.length === 0 && approvedItems.length === 0 ? (
|
|
||||||
<Card className="p-12 text-center">
|
|
||||||
<CalendarIcon className="w-12 h-12 mx-auto text-gray-400 mb-4" />
|
|
||||||
<h3 className="text-lg font-medium text-gray-900 dark:text-white mb-2">
|
|
||||||
No content to schedule
|
|
||||||
</h3>
|
|
||||||
<p className="text-gray-600 dark:text-gray-400 mb-4">
|
|
||||||
Approve content from the review queue to schedule for publishing.
|
|
||||||
</p>
|
|
||||||
<Button variant="outline" onClick={() => navigate('/writer/review')}>
|
|
||||||
Go to Review Queue
|
|
||||||
</Button>
|
|
||||||
</Card>
|
|
||||||
) : viewMode === 'list' ? (
|
) : viewMode === 'list' ? (
|
||||||
/* List View */
|
/* List View */
|
||||||
<ComponentCard title="Publishing Queue" desc="Drag items to reorder or drag from sidebar to add.">
|
<ComponentCard title="Publishing Queue" desc="Drag items to reorder or drag from sidebar to add.">
|
||||||
|
|||||||
Reference in New Issue
Block a user