Deploy
This commit is contained in:
+677
@@ -0,0 +1,677 @@
|
|||||||
|
{
|
||||||
|
"projectName": "Vault by Mkhize",
|
||||||
|
"businessType": "",
|
||||||
|
"industry": "",
|
||||||
|
"tone": "",
|
||||||
|
"tier": 3,
|
||||||
|
"generatedAt": "2026-07-28T13:23:26.422Z",
|
||||||
|
"sections": [
|
||||||
|
{
|
||||||
|
"name": "HeroSection",
|
||||||
|
"importPath": "@/components/sections/HeroSection",
|
||||||
|
"position": 0,
|
||||||
|
"role": "hero",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": -1,
|
||||||
|
"layout": "flex-row",
|
||||||
|
"headings": [
|
||||||
|
"{d.title}"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"next/image",
|
||||||
|
"@/hooks/useVulaContent",
|
||||||
|
"hero_banners",
|
||||||
|
"flex justify-center py-16",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
|
||||||
|
"hero",
|
||||||
|
"relative overflow-hidden bg-gray-900 text-white",
|
||||||
|
"relative min-h-[480px] flex items-center",
|
||||||
|
"object-cover opacity-40",
|
||||||
|
"relative z-10 max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-24",
|
||||||
|
"text-4xl sm:text-5xl font-bold mb-4 max-w-2xl",
|
||||||
|
"text-xl text-gray-200 mb-8 max-w-xl",
|
||||||
|
"inline-flex items-center px-8 py-3 bg-white text-gray-900 font-bold rounded-full hover:bg-gray-100 transition-colors"
|
||||||
|
],
|
||||||
|
"cmsCollection": "hero_banners"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "LatestDropsSection",
|
||||||
|
"importPath": "@/components/sections/LatestDropsSection",
|
||||||
|
"position": 1,
|
||||||
|
"role": "unknown",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 10,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useMedusaProducts",
|
||||||
|
"@/hooks/useMedusaCart",
|
||||||
|
"@/components/ui/Card",
|
||||||
|
"@/components/ui/Button",
|
||||||
|
"@/components/ui/Badge",
|
||||||
|
"next/image",
|
||||||
|
"next/link",
|
||||||
|
"latestdrops",
|
||||||
|
"latest-drops",
|
||||||
|
"flex justify-center py-24 bg-[#0f0f17]",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-[#c0c0c0] border-t-transparent animate-spin",
|
||||||
|
"py-24 px-6 bg-[#0f0f17]",
|
||||||
|
"max-w-7xl mx-auto",
|
||||||
|
"flex items-center justify-center gap-4 mb-10",
|
||||||
|
"block w-14 h-0.5 bg-[#c0c0c0]",
|
||||||
|
"text-3xl md:text-4xl font-light text-[#e7e7ee] font-['Cormorant_Garamond'] uppercase tracking-wider",
|
||||||
|
"Latest",
|
||||||
|
"italic text-[#c0c0c0]",
|
||||||
|
"Drops",
|
||||||
|
"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6",
|
||||||
|
"Price on request",
|
||||||
|
"bg-[#18181b] border border-[#303040] hover:border-[#c0c0c0] transition-all duration-200 ease-out",
|
||||||
|
"block",
|
||||||
|
"aspect-square overflow-hidden",
|
||||||
|
"object-cover w-full h-full hover:scale-105 transition-transform duration-500 ease-out",
|
||||||
|
"p-4 pb-0",
|
||||||
|
"text-[#e7e7ee] font-['Cormorant_Garamond'] text-xl",
|
||||||
|
"p-4 pt-2",
|
||||||
|
"text-[#c0c0c0] font-semibold",
|
||||||
|
"p-4 pt-0",
|
||||||
|
"outline",
|
||||||
|
"sm",
|
||||||
|
"w-full border-[#c0c0c0] text-[#c0c0c0] hover:bg-[#c0c0c0] hover:text-[#0f0f17]",
|
||||||
|
"cart-drawer-open",
|
||||||
|
"Add to Cart"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "FeaturedProductsSection",
|
||||||
|
"importPath": "@/components/sections/FeaturedProductsSection",
|
||||||
|
"position": 2,
|
||||||
|
"role": "services",
|
||||||
|
"hasImage": false,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 11,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [
|
||||||
|
"Featured Products"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useFeaturedProducts",
|
||||||
|
"next/link",
|
||||||
|
"lucide-react",
|
||||||
|
"@/hooks/useMedusaCart",
|
||||||
|
"KSh",
|
||||||
|
"py-20",
|
||||||
|
"container mx-auto px-4",
|
||||||
|
"grid grid-cols-2 md:grid-cols-4 gap-6",
|
||||||
|
"aspect-square rounded-xl bg-muted animate-pulse",
|
||||||
|
"featuredproducts",
|
||||||
|
"flex items-center justify-between mb-10",
|
||||||
|
"text-xs uppercase tracking-widest text-primary font-semibold mb-1",
|
||||||
|
"Curated for You",
|
||||||
|
"text-3xl font-bold text-foreground",
|
||||||
|
"Featured Products",
|
||||||
|
"text-sm font-semibold text-primary hover:underline underline-offset-4",
|
||||||
|
"View all →",
|
||||||
|
"group bg-card rounded-xl overflow-hidden border border-border hover:shadow-md transition-all",
|
||||||
|
"block",
|
||||||
|
"relative aspect-square bg-muted",
|
||||||
|
"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500",
|
||||||
|
"w-full h-full flex items-center justify-center",
|
||||||
|
"h-8 w-8 text-muted-foreground/30",
|
||||||
|
"p-4",
|
||||||
|
"text-sm font-semibold text-foreground line-clamp-2 mb-1 hover:text-primary transition-colors",
|
||||||
|
"text-sm font-bold text-primary mb-3",
|
||||||
|
"cart-drawer-open",
|
||||||
|
"w-full text-xs bg-primary/10 text-primary hover:bg-primary hover:text-primary-foreground py-2 rounded-lg transition-colors font-medium disabled:opacity-40",
|
||||||
|
"Add to Cart"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "MostPopularSection",
|
||||||
|
"importPath": "@/components/sections/MostPopularSection",
|
||||||
|
"position": 3,
|
||||||
|
"role": "unknown",
|
||||||
|
"hasImage": false,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 12,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [
|
||||||
|
"Most Popular"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"react",
|
||||||
|
"@/hooks/useMedusaCart",
|
||||||
|
"@/hooks/useMedusaProducts",
|
||||||
|
"next/link",
|
||||||
|
"lucide-react",
|
||||||
|
"KSh",
|
||||||
|
"py-20",
|
||||||
|
"container mx-auto px-4",
|
||||||
|
"grid grid-cols-2 md:grid-cols-4 gap-6",
|
||||||
|
"aspect-square rounded-xl bg-muted animate-pulse",
|
||||||
|
"mostpopular",
|
||||||
|
"flex items-center justify-between mb-10",
|
||||||
|
"flex items-center gap-3",
|
||||||
|
"h-6 w-6 text-primary",
|
||||||
|
"text-xs uppercase tracking-widest text-primary font-semibold mb-1",
|
||||||
|
"Best Sellers",
|
||||||
|
"text-3xl font-bold text-foreground",
|
||||||
|
"Most Popular",
|
||||||
|
"text-sm font-semibold text-primary hover:underline underline-offset-4 hidden md:inline-flex items-center gap-1",
|
||||||
|
"View all →",
|
||||||
|
"grid grid-cols-2 lg:grid-cols-4 gap-6",
|
||||||
|
"group bg-card rounded-xl overflow-hidden border border-border hover:shadow-md transition-all relative",
|
||||||
|
"absolute top-2 left-2 z-10 bg-primary text-primary-foreground text-xs font-semibold px-2 py-0.5 rounded-full",
|
||||||
|
"Best Seller",
|
||||||
|
"block overflow-hidden",
|
||||||
|
"relative aspect-square bg-muted",
|
||||||
|
"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300",
|
||||||
|
"w-full h-full flex items-center justify-center",
|
||||||
|
"h-8 w-8 text-muted-foreground/30",
|
||||||
|
"p-4",
|
||||||
|
"text-sm font-semibold text-foreground line-clamp-2 mb-1 hover:text-primary transition-colors",
|
||||||
|
"text-sm font-bold text-primary mb-3",
|
||||||
|
"cart-drawer-open",
|
||||||
|
"w-full text-xs bg-primary/10 text-primary hover:bg-primary hover:text-primary-foreground py-2 rounded-lg transition-colors font-medium disabled:opacity-40",
|
||||||
|
"Add to Cart"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ProductCarouselSection",
|
||||||
|
"importPath": "@/components/sections/ProductCarouselSection",
|
||||||
|
"position": 4,
|
||||||
|
"role": "services",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 4,
|
||||||
|
"layout": "flex-row",
|
||||||
|
"headings": [
|
||||||
|
"{section.title}"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"next/image",
|
||||||
|
"next/link",
|
||||||
|
"@/lib/cms",
|
||||||
|
"KSh",
|
||||||
|
"x-publishable-api-key",
|
||||||
|
"py-8 px-4",
|
||||||
|
"max-w-7xl mx-auto",
|
||||||
|
"text-xl font-bold mb-5",
|
||||||
|
"flex gap-4 overflow-x-auto pb-3 scrollbar-hide snap-x snap-mandatory",
|
||||||
|
"flex-none snap-start w-44 group",
|
||||||
|
"relative h-44 w-44 rounded-xl overflow-hidden bg-muted mb-2 group-hover:shadow-md transition-shadow",
|
||||||
|
"object-cover group-hover:scale-105 transition-transform duration-300",
|
||||||
|
"w-full h-full flex items-center justify-center text-muted-foreground text-xs",
|
||||||
|
"No image",
|
||||||
|
"text-xs font-medium line-clamp-2 group-hover:text-primary transition-colors mb-1",
|
||||||
|
"text-xs font-bold text-primary"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "FeaturedCollectionsSection",
|
||||||
|
"importPath": "@/components/sections/FeaturedCollectionsSection",
|
||||||
|
"position": 5,
|
||||||
|
"role": "services",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 10,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useMedusaProducts",
|
||||||
|
"@/hooks/useMedusaCart",
|
||||||
|
"@/components/ui/Card",
|
||||||
|
"@/components/ui/Button",
|
||||||
|
"@/components/ui/Badge",
|
||||||
|
"next/image",
|
||||||
|
"next/link",
|
||||||
|
"featuredcollections",
|
||||||
|
"featured-collections",
|
||||||
|
"flex justify-center py-24 bg-[#18181b]",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-[#c0c0c0] border-t-transparent animate-spin",
|
||||||
|
"py-24 px-6 bg-[#18181b]",
|
||||||
|
"max-w-7xl mx-auto",
|
||||||
|
"flex items-center justify-center gap-4 mb-12",
|
||||||
|
"block w-14 h-0.5 bg-[#c0c0c0]",
|
||||||
|
"text-3xl md:text-4xl font-light text-[#e7e7ee] font-['Cormorant_Garamond'] uppercase tracking-wider",
|
||||||
|
"Featured",
|
||||||
|
"italic text-[#c0c0c0]",
|
||||||
|
"Collections",
|
||||||
|
"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6",
|
||||||
|
"Price on request",
|
||||||
|
"bg-[#0f0f17] border border-[#303040] hover:border-[#c0c0c0] transition-all duration-200 ease-out",
|
||||||
|
"block",
|
||||||
|
"aspect-square overflow-hidden",
|
||||||
|
"object-cover w-full h-full hover:scale-105 transition-transform duration-500 ease-out",
|
||||||
|
"p-4 pb-0",
|
||||||
|
"text-[#e7e7ee] font-['Cormorant_Garamond'] text-lg",
|
||||||
|
"p-4 pt-2",
|
||||||
|
"text-[#c0c0c0] font-semibold",
|
||||||
|
"p-4 pt-0",
|
||||||
|
"outline",
|
||||||
|
"sm",
|
||||||
|
"w-full border-[#c0c0c0] text-[#c0c0c0] hover:bg-[#c0c0c0] hover:text-[#0f0f17]",
|
||||||
|
"cart-drawer-open",
|
||||||
|
"Add to Cart"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "BrandCarouselSection",
|
||||||
|
"importPath": "@/components/sections/BrandCarouselSection",
|
||||||
|
"position": 6,
|
||||||
|
"role": "partners",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 4,
|
||||||
|
"layout": "flex-row",
|
||||||
|
"headings": [
|
||||||
|
"Shop by Collection"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"react",
|
||||||
|
"next/link",
|
||||||
|
"next/image",
|
||||||
|
"py-10 px-4",
|
||||||
|
"max-w-7xl mx-auto",
|
||||||
|
"text-xl font-bold mb-5",
|
||||||
|
"Shop by Collection",
|
||||||
|
"flex gap-4 overflow-x-auto pb-3 scrollbar-hide snap-x snap-mandatory",
|
||||||
|
"flex-none snap-start w-36 group",
|
||||||
|
"relative h-36 w-36 rounded-2xl overflow-hidden bg-muted mb-2 group-hover:shadow-md transition-shadow",
|
||||||
|
"object-cover group-hover:scale-105 transition-transform duration-300",
|
||||||
|
"w-full h-full flex items-center justify-center text-3xl font-bold text-primary/30 uppercase",
|
||||||
|
"text-xs font-medium text-center line-clamp-2 group-hover:text-primary transition-colors"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "AdvertBannerSection",
|
||||||
|
"importPath": "@/components/sections/AdvertBannerSection",
|
||||||
|
"position": 7,
|
||||||
|
"role": "hero",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 4,
|
||||||
|
"layout": "flex-row",
|
||||||
|
"headings": [
|
||||||
|
"{headline}"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"next/image",
|
||||||
|
"next/link",
|
||||||
|
"@/lib/cms",
|
||||||
|
"relative w-full overflow-hidden rounded-2xl my-8 mx-auto max-w-7xl px-4",
|
||||||
|
"relative h-64 md:h-80 w-full",
|
||||||
|
"object-cover rounded-2xl",
|
||||||
|
"absolute inset-0 bg-black/45 rounded-2xl",
|
||||||
|
"absolute inset-0 flex flex-col items-center justify-center text-center px-6 gap-3",
|
||||||
|
"text-2xl md:text-4xl font-bold text-white drop-shadow",
|
||||||
|
"text-sm md:text-base text-white/90",
|
||||||
|
"mt-2 inline-block bg-white text-black font-semibold px-6 py-2 rounded-full hover:bg-primary hover:text-white transition-colors text-sm",
|
||||||
|
"flex flex-col items-center justify-center gap-3 py-16 px-6 text-center bg-primary/10 rounded-2xl",
|
||||||
|
"text-2xl md:text-3xl font-bold",
|
||||||
|
"text-muted-foreground",
|
||||||
|
"inline-block bg-primary text-white font-semibold px-6 py-2 rounded-full hover:bg-primary/80 transition-colors text-sm"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "AboutVaultSection",
|
||||||
|
"importPath": "@/components/sections/AboutVaultSection",
|
||||||
|
"position": 8,
|
||||||
|
"role": "about",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 10,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"next/image",
|
||||||
|
"aboutvault",
|
||||||
|
"about-vault",
|
||||||
|
"py-24 px-6 bg-[#0f0f17]",
|
||||||
|
"max-w-6xl mx-auto grid grid-cols-1 lg:grid-cols-2 gap-12 items-center",
|
||||||
|
"relative h-[400px] lg:h-[500px] overflow-hidden rounded-sm border border-[#303040]",
|
||||||
|
"Vault by Mkhize boutique interior, Johannesburg",
|
||||||
|
"(max-width: 768px) 100vw, 50vw",
|
||||||
|
"object-cover",
|
||||||
|
"absolute inset-0 bg-gradient-to-t from-[#0f0f17]/70 to-transparent",
|
||||||
|
"text-left",
|
||||||
|
"flex items-center gap-4 mb-6",
|
||||||
|
"block w-14 h-0.5 bg-[#c0c0c0]",
|
||||||
|
"text-[#c0c0c0] tracking-[0.2em] uppercase text-xs font-medium",
|
||||||
|
"Our Origin",
|
||||||
|
"text-4xl md:text-5xl font-light text-[#e7e7ee] font-['Cormorant_Garamond'] leading-tight mb-8",
|
||||||
|
"Curating",
|
||||||
|
"italic text-[#c0c0c0]",
|
||||||
|
"exclusivity",
|
||||||
|
"since 2020",
|
||||||
|
"space-y-4 text-[#e7e7ee]/70 text-base leading-relaxed",
|
||||||
|
"Vault by Mkhize was born in the heart of Sandton — a response to Johannesburg's hunger for\n sneakers that tell a story. We don't just sell shoes; we curate cultural artifacts from the\n world's most coveted labels: Nike, Adidas, and exclusive South African collaborations.",
|
||||||
|
"Every pair that enters our vault undergoes rigorous authentication by a team with over a decade\n of experience. We partner directly with global brands and local creatives to secure limited runs\n that never see the mass market. Our Rosebank showroom is an invitation to experience the craft.",
|
||||||
|
"For the collector who demands more than hype — who seeks provenance, rarity, and the quiet\n confidence of owning something few will ever see — Vault by Mkhize is your sanctuary.",
|
||||||
|
"mt-10 grid grid-cols-3 gap-6 text-center",
|
||||||
|
"text-2xl font-bold text-[#c0c0c0]",
|
||||||
|
"500+",
|
||||||
|
"text-xs text-[#e7e7ee]/50 uppercase tracking-wider",
|
||||||
|
"Curated releases",
|
||||||
|
"100%",
|
||||||
|
"Authenticity guaranteed",
|
||||||
|
"#1",
|
||||||
|
"SA luxury sneaker destination"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "CampaignsSection",
|
||||||
|
"importPath": "@/components/sections/CampaignsSection",
|
||||||
|
"position": 9,
|
||||||
|
"role": "cms-campaigns",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": -1,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [
|
||||||
|
"Campaigns"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useVulaContent",
|
||||||
|
"@/components/ui/Card",
|
||||||
|
"@/components/ui/Button",
|
||||||
|
"@/components/ui/Badge",
|
||||||
|
"next/image",
|
||||||
|
"campaigns",
|
||||||
|
"flex justify-center py-16",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
|
||||||
|
"py-24 bg-[#0f0f17]",
|
||||||
|
"container mx-auto px-4",
|
||||||
|
"text-3xl font-light text-[#e7e7ee] tracking-wide uppercase text-center mb-12",
|
||||||
|
"Campaigns",
|
||||||
|
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",
|
||||||
|
"bg-[#18181b] border border-[#303040]",
|
||||||
|
"relative aspect-video overflow-hidden rounded-t-lg",
|
||||||
|
"(max-width: 768px) 100vw, 33vw",
|
||||||
|
"object-cover",
|
||||||
|
"accent",
|
||||||
|
"w-fit mb-2",
|
||||||
|
"text-[#e7e7ee] font-light",
|
||||||
|
"text-[#e7e7ee]/70 text-sm",
|
||||||
|
"outline",
|
||||||
|
"sm"
|
||||||
|
],
|
||||||
|
"cmsCollection": "campaigns"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "GallerySection",
|
||||||
|
"importPath": "@/components/sections/GallerySection",
|
||||||
|
"position": 10,
|
||||||
|
"role": "gallery",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": -1,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [
|
||||||
|
"Gallery",
|
||||||
|
"{d.title}"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useVulaContent",
|
||||||
|
"@/components/ui/Card",
|
||||||
|
"next/image",
|
||||||
|
"gallery",
|
||||||
|
"flex justify-center py-16",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
|
||||||
|
"py-24 bg-[#0f0f17]",
|
||||||
|
"container mx-auto px-4",
|
||||||
|
"text-3xl font-light text-[#e7e7ee] tracking-wide uppercase text-center mb-12",
|
||||||
|
"Gallery",
|
||||||
|
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",
|
||||||
|
"bg-[#18181b] border border-[#303040] overflow-hidden group relative",
|
||||||
|
"relative aspect-square",
|
||||||
|
"(max-width: 768px) 100vw, 33vw",
|
||||||
|
"object-cover transition-transform duration-500 group-hover:scale-105",
|
||||||
|
"absolute inset-0 bg-gradient-to-t from-black/80 to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-end p-4",
|
||||||
|
"text-white font-medium text-sm",
|
||||||
|
"text-white/70 text-xs mt-1"
|
||||||
|
],
|
||||||
|
"cmsCollection": "gallery"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "JournalSection",
|
||||||
|
"importPath": "@/components/sections/JournalSection",
|
||||||
|
"position": 11,
|
||||||
|
"role": "blog",
|
||||||
|
"hasImage": true,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": -1,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [
|
||||||
|
"Journal"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useVulaContent",
|
||||||
|
"@/components/ui/Card",
|
||||||
|
"@/components/ui/Badge",
|
||||||
|
"next/image",
|
||||||
|
"posts",
|
||||||
|
"flex justify-center py-16",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
|
||||||
|
"journal",
|
||||||
|
"py-24 bg-[#0f0f17]",
|
||||||
|
"container mx-auto px-4",
|
||||||
|
"text-3xl font-light text-[#e7e7ee] tracking-wide uppercase text-center mb-12",
|
||||||
|
"Journal",
|
||||||
|
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",
|
||||||
|
"bg-[#18181b] border border-[#303040] flex flex-col",
|
||||||
|
"relative aspect-video overflow-hidden rounded-t-lg",
|
||||||
|
"(max-width: 768px) 100vw, 33vw",
|
||||||
|
"object-cover",
|
||||||
|
"secondary",
|
||||||
|
"w-fit mb-2 text-xs",
|
||||||
|
"text-[#e7e7ee] font-light text-lg",
|
||||||
|
"flex-1",
|
||||||
|
"text-[#e7e7ee]/70 text-sm leading-relaxed",
|
||||||
|
"border-t border-[#303040] pt-3",
|
||||||
|
"text-[#c0c0c0] text-xs uppercase tracking-wider"
|
||||||
|
],
|
||||||
|
"cmsCollection": "posts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "AuthenticationGuaranteeSection",
|
||||||
|
"importPath": "@/components/sections/AuthenticationGuaranteeSection",
|
||||||
|
"position": 12,
|
||||||
|
"role": "unknown",
|
||||||
|
"hasImage": false,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": -1,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [
|
||||||
|
"{d.title}"
|
||||||
|
],
|
||||||
|
"buttonLabels": [],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useVulaContent",
|
||||||
|
"lucide-react",
|
||||||
|
"@/components/ui/Card",
|
||||||
|
"@/components/ui/Badge",
|
||||||
|
"policies",
|
||||||
|
"flex justify-center py-24",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin text-[#c0c0c0]",
|
||||||
|
"authentication-guarantee",
|
||||||
|
"authenticationguarantee",
|
||||||
|
"bg-[#0f0f17] py-24 lg:py-32 px-4",
|
||||||
|
"max-w-6xl mx-auto",
|
||||||
|
"flex items-center gap-4 mb-12",
|
||||||
|
"h-px w-14 bg-[#c0c0c0]",
|
||||||
|
"accent",
|
||||||
|
"tracking-widest uppercase text-xs",
|
||||||
|
"Trust Guarantee",
|
||||||
|
"font-serif text-3xl lg:text-4xl text-[#e7e7ee] mb-16 max-w-3xl leading-tight",
|
||||||
|
"Every pair authenticated",
|
||||||
|
"italic text-[#c0c0c0]",
|
||||||
|
"before it reaches your door",
|
||||||
|
"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8",
|
||||||
|
"bg-[#18181b] border border-[#303040] rounded-lg overflow-hidden",
|
||||||
|
"p-8",
|
||||||
|
"mb-6",
|
||||||
|
"w-8 h-8 text-[#c0c0c0]",
|
||||||
|
"text-xl font-semibold text-[#e7e7ee] mb-3 font-sans",
|
||||||
|
"text-[#a0a0b0] leading-relaxed text-sm",
|
||||||
|
"mt-16 flex flex-wrap gap-10 justify-center text-xs uppercase tracking-widest text-[#c0c0c0]",
|
||||||
|
"flex items-center gap-2",
|
||||||
|
"w-4 h-4",
|
||||||
|
"Verified by third-party experts",
|
||||||
|
"100% satisfaction guarantee",
|
||||||
|
"Free returns within 7 days"
|
||||||
|
],
|
||||||
|
"cmsCollection": "policies"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ShopTheVaultCTASection",
|
||||||
|
"importPath": "@/components/sections/ShopTheVaultCTASection",
|
||||||
|
"position": 13,
|
||||||
|
"role": "cta",
|
||||||
|
"hasImage": false,
|
||||||
|
"hasForm": false,
|
||||||
|
"itemCount": 1,
|
||||||
|
"layout": "single",
|
||||||
|
"headings": [],
|
||||||
|
"buttonLabels": [
|
||||||
|
"Enter The Vault"
|
||||||
|
],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"@/components/ui/Button",
|
||||||
|
"next/link",
|
||||||
|
"shop-the-vault",
|
||||||
|
"shopthevaultcta",
|
||||||
|
"bg-[#0f0f17] py-24 lg:py-32 px-4 border-t border-[#303040]",
|
||||||
|
"max-w-4xl mx-auto text-center",
|
||||||
|
"text-xs uppercase tracking-[0.2em] text-[#c0c0c0] mb-6",
|
||||||
|
"Sandton / Rosebank",
|
||||||
|
"font-serif text-3xl lg:text-5xl text-[#e7e7ee] leading-tight mb-8",
|
||||||
|
"Discover the rarest drops,",
|
||||||
|
"italic text-[#c0c0c0]",
|
||||||
|
"curated for you",
|
||||||
|
"text-[#a0a0b0] max-w-2xl mx-auto mb-10 text-sm leading-relaxed",
|
||||||
|
"Limited-edition Nike, Adidas, and exclusive SA collaborations.\n Each pair authenticated before it reaches your doorstep.",
|
||||||
|
"default",
|
||||||
|
"lg",
|
||||||
|
"bg-[#c0c0c0] text-[#0f0f17] hover:bg-[#d0d0d0] px-10 py-5 text-sm uppercase tracking-widest font-semibold",
|
||||||
|
"Enter The Vault"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ContactVaultSection",
|
||||||
|
"importPath": "@/components/sections/ContactVaultSection",
|
||||||
|
"position": 14,
|
||||||
|
"role": "contact",
|
||||||
|
"hasImage": false,
|
||||||
|
"hasForm": true,
|
||||||
|
"itemCount": -1,
|
||||||
|
"layout": "grid",
|
||||||
|
"headings": [
|
||||||
|
"Request a Private Appointment"
|
||||||
|
],
|
||||||
|
"buttonLabels": [
|
||||||
|
"Send Enquiry"
|
||||||
|
],
|
||||||
|
"people": [],
|
||||||
|
"allText": [
|
||||||
|
"use client",
|
||||||
|
"@/hooks/useVulaContent",
|
||||||
|
"react",
|
||||||
|
"lucide-react",
|
||||||
|
"@/components/ui/Input",
|
||||||
|
"@/components/ui/Button",
|
||||||
|
"@/components/ui/Card",
|
||||||
|
"business_hours",
|
||||||
|
"flex justify-center py-24",
|
||||||
|
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin text-[#c0c0c0]",
|
||||||
|
"Thank you for your enquiry. Our concierge will be in touch within 24 hours.",
|
||||||
|
"contact-vault",
|
||||||
|
"contactvault",
|
||||||
|
"bg-[#0f0f17] py-24 lg:py-32 px-4",
|
||||||
|
"max-w-6xl mx-auto",
|
||||||
|
"grid grid-cols-1 lg:grid-cols-2 gap-16",
|
||||||
|
"flex items-center gap-4 mb-8",
|
||||||
|
"h-px w-14 bg-[#c0c0c0]",
|
||||||
|
"font-sans text-xs uppercase tracking-[0.15em] text-[#c0c0c0]",
|
||||||
|
"Private Appointments",
|
||||||
|
"font-serif text-3xl lg:text-4xl text-[#e7e7ee] leading-tight mb-12",
|
||||||
|
"Visit Our",
|
||||||
|
"italic text-[#c0c0c0]",
|
||||||
|
"Sandton",
|
||||||
|
"Showroom",
|
||||||
|
"space-y-6 text-[#a0a0b0] text-sm",
|
||||||
|
"flex items-start gap-4",
|
||||||
|
"w-5 h-5 mt-0.5 text-[#c0c0c0]",
|
||||||
|
"text-[#e7e7ee] font-medium",
|
||||||
|
"Vault by Mkhize",
|
||||||
|
"5th Floor, Sandton City Mall",
|
||||||
|
"Sandton, Johannesburg, 2196",
|
||||||
|
"South Africa",
|
||||||
|
"+27 11 234 5678",
|
||||||
|
"text-xs mt-1",
|
||||||
|
"WhatsApp: +27 71 234 5678",
|
||||||
|
"concierge@vaultbymkhize.co.za",
|
||||||
|
"pt-6 border-t border-[#303040]",
|
||||||
|
"flex items-center gap-2 mb-4",
|
||||||
|
"w-5 h-5 text-[#c0c0c0]",
|
||||||
|
"text-[#e7e7ee] font-medium uppercase text-xs tracking-widest",
|
||||||
|
"Operating Hours",
|
||||||
|
"flex justify-between text-sm py-2 border-b border-[#303040]/50 last:border-none",
|
||||||
|
"text-[#e7e7ee]",
|
||||||
|
"text-[#a0a0b0]",
|
||||||
|
"Closed",
|
||||||
|
"text-xs text-[#707080] mt-4",
|
||||||
|
"Closed on South African public holidays.",
|
||||||
|
"bg-[#18181b] border border-[#303040] rounded-lg",
|
||||||
|
"p-8"
|
||||||
|
],
|
||||||
|
"cmsCollection": "business_hours"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"navigationLinks": [
|
||||||
|
"Vault by Mkhize",
|
||||||
|
"Home",
|
||||||
|
"Latest Drops",
|
||||||
|
"Featured Collections",
|
||||||
|
"About Vault",
|
||||||
|
"Gallery",
|
||||||
|
"Products"
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user