Compare commits
174 Commits
version_2
...
version_12
| Author | SHA1 | Date | |
|---|---|---|---|
| a8ded39087 | |||
| b5ca2643f1 | |||
| 050f19e986 | |||
| a8017f5724 | |||
| 33a2e39d39 | |||
| 2dc39bb2cf | |||
| 92112155e5 | |||
| d3af33e7e3 | |||
| d61045c9d8 | |||
| 6faecaf23b | |||
| 5eee8ce6be | |||
| f75e59e5c0 | |||
| 49d24c1598 | |||
| a5785f7aa0 | |||
| 09d317c2cc | |||
| 160c43773f | |||
| 739b1c961b | |||
| b8bc880f53 | |||
| 8e8979b40e | |||
| 1ca23e612e | |||
| d199527d15 | |||
| 3dffe3e0d6 | |||
| 486989ba4e | |||
| cd18984b98 | |||
| 6bc7e37de3 | |||
| 0062f1b86c | |||
| f707dd7960 | |||
| c09508a388 | |||
| 22d78ced96 | |||
| b8d4733676 | |||
| dbd615c441 | |||
| 3834fb315c | |||
| 4d995ac093 | |||
| 14f2677bff | |||
| cc6340fcd3 | |||
| cb66bdb6b7 | |||
| 459a30a094 | |||
| 1f54b3f9a1 | |||
| 8d8bea898f | |||
| ad0ba9212d | |||
| 3068ba05e2 | |||
| 068cd18051 | |||
| 70d9744ebf | |||
| 26df9ba228 | |||
| e7d04c4d9b | |||
| f941057dd5 | |||
| 6d18416127 | |||
| 6105f238ea | |||
| dd2191896f | |||
| f08e036857 | |||
| 438cc0e8a0 | |||
| 99d335c969 | |||
| d68f3bc2a6 | |||
| d84c2707b1 | |||
| d8a8fb661a | |||
| ede15e5c99 | |||
| 04edff6916 | |||
| 965b43d915 | |||
| 3844962a0f | |||
| 2cf3b4edd4 | |||
| 11f41f3b8d | |||
| b6d207a98b | |||
| 00d8e97d55 | |||
| 99e97c338d | |||
| 3270358d85 | |||
| ef15985447 | |||
| 6b87762e5f | |||
| 249d24ee4b | |||
| 3efb94d59c | |||
| 3d9fb5262c | |||
| 7e7022ff5f | |||
| 9a5124a202 | |||
| 93723a0141 | |||
| abf7ef66d9 | |||
| 6d85e39d5f | |||
| cf6ac2a9b1 | |||
| 08b0d9da3e | |||
| 4cc8630218 | |||
| 20be286ecf | |||
| e1da1dbe79 | |||
| dd2618f4f9 | |||
| ca24136a8a | |||
| 3083c9e094 | |||
| b038392480 | |||
| 8ba98fb895 | |||
| 65bc36b317 | |||
| d1db18f66d | |||
| 900b5fa37c | |||
| eddfd0f9f7 | |||
| 6e61679d23 | |||
| 1d2211fb4f | |||
| e9432cd6d5 | |||
| 2a42cea50d | |||
| 0981b2ed2e | |||
| 8f38ce2201 | |||
| 26a381d59d | |||
| 1d2eda0b83 | |||
| 3a8227dc55 | |||
| 925882a8de | |||
| 58ffad4ffd | |||
| 42a62e7a88 | |||
| 2c23b8e6f1 | |||
| 8dcd8bea14 | |||
| 39f35646a7 | |||
| 94dea43dc0 | |||
| 6967280dd7 | |||
| 645c680660 | |||
| 114dde5120 | |||
| 5bf495a88f | |||
| 3768d142b8 | |||
| 7e0fb58678 | |||
| 2936cd1bb7 | |||
| 9e027c2a0a | |||
| 1cbe51dbf7 | |||
| 15edb459da | |||
| 022b5476c9 | |||
| 5b0928cec0 | |||
| 6758cef7ff | |||
| 534e440f6a | |||
| ce7d8fff9b | |||
| e65d516ccc | |||
| e618a750bb | |||
| 96b4849038 | |||
| 7b537abaf2 | |||
| 5f639cee71 | |||
| b80a6e16d2 | |||
| 731c295a03 | |||
| ee5c634682 | |||
| 00ef59a0f3 | |||
| 8de6026486 | |||
| df24f5b37f | |||
| ce62aba487 | |||
| 2957580565 | |||
| c2bcbb4e0b | |||
| 60788cde0d | |||
| ddc9ad8097 | |||
| 169b80f393 | |||
| c93a3255a6 | |||
| 2544d7815a | |||
| f1b3280ccf | |||
| d11b4fc554 | |||
| 2c9c1dbad3 | |||
| f2bc4b9822 | |||
| 746976a69a | |||
| f6f28cd883 | |||
| 671c719712 | |||
| 93c3ea9521 | |||
| c16901f34f | |||
| b338307d10 | |||
| dc34dc6618 | |||
| 34f1fff9a4 | |||
| 07b086a9c1 | |||
| 7d4976a86c | |||
| 43f29350d1 | |||
| f5e0a53658 | |||
| b605b63705 | |||
| ebe8997193 | |||
| 2826734778 | |||
| ed9075ae19 | |||
| dad116fca9 | |||
| 10464e9f6c | |||
| b68cf9ad24 | |||
| 3fa5e57918 | |||
| 15b241e26e | |||
| 7437429516 | |||
| 66602d91c5 | |||
| 94edb008c6 | |||
| 78a3da0f0c | |||
| 5f388149d7 | |||
| 992b276728 | |||
| 6ae3474379 | |||
| 1f4fe4e2f6 | |||
| 6876d00f0e | |||
| a2ab26bd1e |
@@ -6,14 +6,14 @@
|
||||
"textRules": {
|
||||
"logoText": {
|
||||
"required": false,
|
||||
"default": "Webild",
|
||||
"default": "",
|
||||
"example": "Company Name",
|
||||
"minChars": 2,
|
||||
"maxChars": 30
|
||||
},
|
||||
"copyrightText": {
|
||||
"required": false,
|
||||
"default": "© 2025 | Webild",
|
||||
"default": "© 2025 | ",
|
||||
"example": "© 2025 Company Name",
|
||||
"minChars": 5,
|
||||
"maxChars": 50
|
||||
@@ -51,8 +51,8 @@
|
||||
},
|
||||
"propsSchema": {
|
||||
"columns": "Array<{ title: string, items: Array<{ label: string, href: string }> }> - Footer navigation columns (required)",
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"onPrivacyClick?": "() => void",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
"textRules": {
|
||||
"copyrightText": {
|
||||
"required": false,
|
||||
"example": "© 2025 | Webild",
|
||||
"example": "© 2025 | ",
|
||||
"minChars": 5,
|
||||
"maxChars": 100,
|
||||
"note": "Copyright text displayed at bottom left"
|
||||
},
|
||||
"logoText": {
|
||||
"required": false,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"minChars": 2,
|
||||
"maxChars": 30,
|
||||
"note": "Text used for h2 heading"
|
||||
@@ -34,9 +34,9 @@
|
||||
}
|
||||
},
|
||||
"propsSchema": {
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"columns": "Array<{ title: string, items: Array<{ label: string, href: string }> }> - Footer navigation columns (required)",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"onPrivacyClick?": "() => void",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
@@ -51,7 +51,7 @@
|
||||
"copyrightTextClassName?": "string",
|
||||
"privacyButtonClassName?": "string"
|
||||
},
|
||||
"usageExample": "<FooterBaseCard columns={[{ title: 'Product', items: [{ label: 'Features', href: '/features' }, { label: 'Pricing', href: '/pricing' }] }, { title: 'Company', items: [{ label: 'About', href: '/about' }, { label: 'Blog', href: '/blog' }] }]} logoText=\"Webild\" copyrightText=\"© 2025 | Webild\" onPrivacyClick={() => console.log('Privacy clicked')} />",
|
||||
"usageExample": "<FooterBaseCard columns={[{ title: 'Product', items: [{ label: 'Features', href: '/features' }, { label: 'Pricing', href: '/pricing' }] }, { title: 'Company', items: [{ label: 'About', href: '/about' }, { label: 'Blog', href: '/blog' }] }]} logoText=\"\" copyrightText=\"© 2025 | \" onPrivacyClick={() => console.log('Privacy clicked')} />",
|
||||
"do": [
|
||||
"Use for general use",
|
||||
"Requires columns[]"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
"textRules": {
|
||||
"copyrightText": {
|
||||
"required": false,
|
||||
"default": "© 2025 | Webild",
|
||||
"default": "© 2025 | ",
|
||||
"example": "© 2025 Company Name",
|
||||
"minChars": 5,
|
||||
"maxChars": 50
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
"textRules": {
|
||||
"copyrightText": {
|
||||
"required": false,
|
||||
"example": "© 2025 | Webild",
|
||||
"example": "© 2025 | ",
|
||||
"minChars": 5,
|
||||
"maxChars": 100,
|
||||
"note": "Copyright text displayed at bottom left"
|
||||
},
|
||||
"logoText": {
|
||||
"required": false,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"minChars": 2,
|
||||
"maxChars": 30,
|
||||
"note": "Text used for SVG logo"
|
||||
@@ -33,8 +33,8 @@
|
||||
}
|
||||
},
|
||||
"propsSchema": {
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"socialLinks?": "Array<{ icon: LucideIcon, href: string, ariaLabel: string }> - Social media links",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
@@ -47,7 +47,7 @@
|
||||
"socialContainerClassName?": "string",
|
||||
"socialIconClassName?": "string"
|
||||
},
|
||||
"usageExample": "<FooterCard logoText=\"Webild\" copyrightText=\"© 2025 | Webild\" socialLinks={[{ icon: Twitter, href: 'https://twitter.com/webild', ariaLabel: 'Twitter' }, { icon: Linkedin, href: 'https://linkedin.com/company/webild', ariaLabel: 'LinkedIn' }]} />",
|
||||
"usageExample": "<FooterCard logoText=\"\" copyrightText=\"© 2025 | \" socialLinks={[{ icon: Twitter, href: 'https://twitter.com/webild', ariaLabel: 'Twitter' }, { icon: Linkedin, href: 'https://linkedin.com/company/webild', ariaLabel: 'LinkedIn' }]} />",
|
||||
"do": [
|
||||
"Use for general use",
|
||||
"Requires socialLinks?[]"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
"textRules": {
|
||||
"logoText": {
|
||||
"required": false,
|
||||
"default": "Webild",
|
||||
"default": "",
|
||||
"example": "Company Name",
|
||||
"minChars": 2,
|
||||
"maxChars": 30
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
"textRules": {
|
||||
"logoText": {
|
||||
"required": false,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"minChars": 2,
|
||||
"maxChars": 30,
|
||||
"note": "Text used for SVG logo"
|
||||
@@ -20,7 +20,7 @@
|
||||
}
|
||||
},
|
||||
"propsSchema": {
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"leftLink": "{ text: string, onClick?: () => void, href?: string } (required)",
|
||||
"rightLink": "{ text: string, onClick?: () => void, href?: string } (required)",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
@@ -30,7 +30,7 @@
|
||||
"logoClassName?": "string",
|
||||
"linkClassName?": "string"
|
||||
},
|
||||
"usageExample": "<FooterLogoReveal logoText=\"Webild\" leftLink={{ text: 'Privacy Policy', href: '/privacy' }} rightLink={{ text: 'Terms of Service', href: '/terms' }} />",
|
||||
"usageExample": "<FooterLogoReveal logoText=\"\" leftLink={{ text: 'Privacy Policy', href: '/privacy' }} rightLink={{ text: 'Terms of Service', href: '/terms' }} />",
|
||||
"do": [
|
||||
"Use for general use"
|
||||
],
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
"textRules": {
|
||||
"logoText": {
|
||||
"required": false,
|
||||
"default": "Webild",
|
||||
"default": "",
|
||||
"example": "Company Name",
|
||||
"minChars": 2,
|
||||
"maxChars": 30
|
||||
},
|
||||
"copyrightText": {
|
||||
"required": false,
|
||||
"default": "© 2025 | Webild",
|
||||
"default": "© 2025 | ",
|
||||
"example": "© 2025 Company Name",
|
||||
"minChars": 5,
|
||||
"maxChars": 50
|
||||
@@ -66,8 +66,8 @@
|
||||
"videoSrc": "string (required if no imageSrc)",
|
||||
"videoAriaLabel?": "string (default: 'Footer video')",
|
||||
"columns": "Array<{ title: string, items: Array<{ label: string, href: string }> }> - Footer navigation columns (required)",
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"onPrivacyClick?": "() => void",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
},
|
||||
"bottomRightText": {
|
||||
"required": true,
|
||||
"example": "Made with Webild",
|
||||
"example": "Made with ",
|
||||
"minChars": 2,
|
||||
"maxChars": 50
|
||||
},
|
||||
@@ -63,7 +63,7 @@
|
||||
"bottomLeftTextClassName?": "string",
|
||||
"bottomRightTextClassName?": "string"
|
||||
},
|
||||
"usageExample": "<FooterSimple columns={[{ title: 'Navigate', items: [{ label: 'Home', href: '#' }, { label: 'About', href: '#' }] }, { title: 'Resources', items: [{ label: 'Blog', href: '#' }, { label: 'FAQ', href: '#' }] }, { title: 'Legal', items: [{ label: 'Privacy', href: '#' }, { label: 'Terms', href: '#' }] }]} bottomLeftText=\"© 2025 Company. All rights reserved.\" bottomRightText=\"Made with Webild\" />",
|
||||
"usageExample": "<FooterSimple columns={[{ title: 'Navigate', items: [{ label: 'Home', href: '#' }, { label: 'About', href: '#' }] }, { title: 'Resources', items: [{ label: 'Blog', href: '#' }, { label: 'FAQ', href: '#' }] }, { title: 'Legal', items: [{ label: 'Privacy', href: '#' }, { label: 'Terms', href: '#' }] }]} bottomLeftText=\"© 2025 Company. All rights reserved.\" bottomRightText=\"Made with \" />",
|
||||
"do": [
|
||||
"Use for feature showcases",
|
||||
"Use for capability displays",
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
"textRules": {
|
||||
"logoText": {
|
||||
"required": true,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"minChars": 2,
|
||||
"maxChars": 20
|
||||
},
|
||||
@@ -79,7 +79,7 @@
|
||||
"blurClassName?": "string",
|
||||
"dimOverlayClassName?": "string"
|
||||
},
|
||||
"usageExample": "<ThemeProvider defaultButtonVariant=\"hover-bubble\" defaultTextAnimation=\"entrance-slide\" borderRadius=\"pill\">\n <HeroLogo \n logoText=\"Webild\" \n description=\"Building the future of web design with innovative solutions\" \n buttons={[{ text: 'Get Started', href: 'https://github.com' }, { text: 'Learn More', href: 'about' }]} \n imageSrc=\"/placeholders/placeholder5.jpg\" \n imageAlt=\"Hero background\"\n />\n</ThemeProvider>",
|
||||
"usageExample": "<ThemeProvider defaultButtonVariant=\"hover-bubble\" defaultTextAnimation=\"entrance-slide\" borderRadius=\"pill\">\n <HeroLogo \n logoText=\"\" \n description=\"Building the future of web design with innovative solutions\" \n buttons={[{ text: 'Get Started', href: 'https://github.com' }, { text: 'Learn More', href: 'about' }]} \n imageSrc=\"/placeholders/placeholder5.jpg\" \n imageAlt=\"Hero background\"\n />\n</ThemeProvider>",
|
||||
"do": [
|
||||
"Use for landing pages",
|
||||
"Use for feature showcases",
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"required": false,
|
||||
"minChars": 2,
|
||||
"maxChars": 20,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"fallbackBehavior": "Shows brandName text"
|
||||
},
|
||||
"buttonRules": {
|
||||
@@ -52,7 +52,7 @@
|
||||
},
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"button": "{text: string, onClick?: () => void, href?: string}",
|
||||
"animateOnLoad?": "boolean (default: true)",
|
||||
"className?": "string (default: '')",
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"required": false,
|
||||
"minChars": 2,
|
||||
"maxChars": 20,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"fallbackBehavior": "Shows brandName text"
|
||||
},
|
||||
"buttonRules": {
|
||||
@@ -53,7 +53,7 @@
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"className?": "string",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"button": "{text: string, onClick?: () => void, href?: string}",
|
||||
"buttonClassName?": "string (default: '')",
|
||||
"buttonTextClassName?": "string (default: '')"
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"required": false,
|
||||
"minChars": 2,
|
||||
"maxChars": 20,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"fallbackBehavior": "Shows brandName text"
|
||||
},
|
||||
"linkRules": {
|
||||
@@ -35,7 +35,7 @@
|
||||
},
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"brandName?": "string (default: 'Webild')"
|
||||
"brandName?": "string (default: '')"
|
||||
},
|
||||
"usageExample": "<NavbarStyleApple />",
|
||||
"do": [
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"required": false,
|
||||
"minChars": 2,
|
||||
"maxChars": 20,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"fallbackBehavior": "Shows brandName text"
|
||||
},
|
||||
"buttonRules": {
|
||||
@@ -53,7 +53,7 @@
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"button": "{text: string, onClick?: () => void, href?: string}",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"className?": "string (default: '')"
|
||||
},
|
||||
"usageExample": "<NavbarStyleCentered navItems={[{name: 'Home', id: 'home'}, {name: 'About', id: 'about'}, {name: 'Services', id: 'services'}, {name: 'Blog', id: 'blog'}, {name: 'Contact', id: 'contact'}]} button={{text: 'Get Started', href: 'contact'}} />",
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"required": false,
|
||||
"minChars": 2,
|
||||
"maxChars": 20,
|
||||
"example": "Webild",
|
||||
"example": "",
|
||||
"fallbackBehavior": "Shows brandName text"
|
||||
},
|
||||
"linkRules": {
|
||||
@@ -49,7 +49,7 @@
|
||||
},
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"bottomLeftText?": "string (default: 'Global Community')",
|
||||
"bottomRightText?": "string (default: 'hello@example.com')",
|
||||
"topBarClassName?": "string (default: '')"
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
"name": "FooterBase",
|
||||
"propsSchema": {
|
||||
"columns": "Array<{ title: string, items: Array<{ label: string, href: string }> }> - Footer navigation columns",
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"onPrivacyClick?": "() => void",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"name": "FooterBaseCard",
|
||||
"propsSchema": {
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"columns": "Array<{ title: string, items: Array<{ label: string, href: string }> }> - Footer navigation columns",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"onPrivacyClick?": "() => void",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"name": "FooterCard",
|
||||
"propsSchema": {
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"socialLinks?": "Array<{ icon: LucideIcon, href: string, ariaLabel: string }> - Social media links",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "FooterLogoEmphasis",
|
||||
"propsSchema": {
|
||||
"columns": "Array<{ items: Array<{ label: string, href?: string, onClick?: () => void }> }> - Footer navigation columns (required, max 5)",
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
"containerClassName?": "string",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "FooterLogoReveal",
|
||||
"propsSchema": {
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"logoLineHeight?": "number (default: 1.1)",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
"videoSrc": "string (required if no imageSrc)",
|
||||
"videoAriaLabel?": "string (default: 'Footer video')",
|
||||
"columns": "Array<{ title: string, items: Array<{ label: string, href: string }> }> - Footer navigation columns",
|
||||
"logoText?": "string (default: 'Webild')",
|
||||
"copyrightText?": "string (default: '© 2025 | Webild')",
|
||||
"logoText?": "string (default: '')",
|
||||
"copyrightText?": "string (default: '© 2025 | ')",
|
||||
"onPrivacyClick?": "() => void",
|
||||
"ariaLabel?": "string (default: 'Site footer')",
|
||||
"className?": "string",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "NavbarLayoutFloatingInline",
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"button": "{text: string, onClick?: () => void, href?: string}",
|
||||
"animateOnLoad?": "boolean (default: true)",
|
||||
"className?": "string (default: '')",
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"className?": "string",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"button": "{text: string, onClick?: () => void, href?: string}",
|
||||
"buttonClassName?": "string (default: '')",
|
||||
"buttonTextClassName?": "string (default: '')"
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
"name": "NavbarStyleApple",
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"brandName?": "string (default: 'Webild')"
|
||||
"brandName?": "string (default: '')"
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"button": "{text: string, onClick?: () => void, href?: string}",
|
||||
"topBarButton?": "{text: string, onClick?: () => void, href?: string}",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"className?": "string (default: '')"
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "NavbarStyleFullscreen",
|
||||
"propsSchema": {
|
||||
"navItems": "Array<{name: string, id: string}>",
|
||||
"brandName?": "string (default: 'Webild')",
|
||||
"brandName?": "string (default: '')",
|
||||
"bottomLeftText?": "string (default: 'Global Community')",
|
||||
"bottomRightText?": "string (default: 'hello@example.com')",
|
||||
"topBarClassName?": "string (default: '')"
|
||||
|
||||
@@ -1,45 +1,25 @@
|
||||
import type { Metadata } from "next";
|
||||
import { DM_Sans } from "next/font/google";
|
||||
import { Inter } from "next/font/google";
|
||||
import "./styles/variables.css";
|
||||
import "./globals.css";
|
||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||
import Tag from "@/tag/Tag";
|
||||
|
||||
const dmSans = DM_Sans({
|
||||
variable: "--font-dm-sans", subsets: ["latin"],
|
||||
});
|
||||
|
||||
const inter = Inter({
|
||||
variable: "--font-inter", subsets: ["latin"],
|
||||
});
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "DeCasa | Premium Wood-Fired Pizza in Midland", description: "Best pizza in Midland. 48-hour fermented dough, real wood-fired. Limited daily availability. Award-winning since 2024.", keywords: "wood-fired pizza, Midland pizza, artisan pizza, premium pizza, authentic Neapolitan", metadataBase: new URL("https://decasa-midland.com"),
|
||||
alternates: {
|
||||
canonical: "https://decasa-midland.com"
|
||||
},
|
||||
openGraph: {
|
||||
title: "DeCasa | Premium Wood-Fired Pizza", description: "48-hour fermented dough. Real wood-fired pizza. Limited daily availability.", url: "https://decasa-midland.com", siteName: "DeCasa", type: "website"
|
||||
},
|
||||
twitter: {
|
||||
card: "summary_large_image", title: "DeCasa | Premium Wood-Fired Pizza in Midland", description: "48-hour fermented dough. Real wood-fired pizza. Limited daily availability."
|
||||
}
|
||||
};
|
||||
title: "DeCasa Pizza Wood Fired", description: "Premium wood-fired pizza in Midland, TX"};
|
||||
|
||||
export default function RootLayout({
|
||||
children,
|
||||
}: Readonly<{
|
||||
}: {
|
||||
children: React.ReactNode;
|
||||
}>) {
|
||||
}) {
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body
|
||||
className={`${dmSans.variable} ${inter.variable} antialiased`}
|
||||
>
|
||||
<Tag />
|
||||
{children}
|
||||
|
||||
<html lang="en">
|
||||
<body className={inter.variable}>
|
||||
{children}
|
||||
|
||||
<script
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: `
|
||||
@@ -1407,7 +1387,6 @@ export default function RootLayout({
|
||||
}}
|
||||
/>
|
||||
</body>
|
||||
</ServiceWrapper>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import ProductCardTwo from "@/components/sections/product/ProductCardTwo";
|
||||
import ContactFaq from "@/components/sections/contact/ContactFaq";
|
||||
import SocialProofOne from "@/components/sections/socialProof/SocialProofOne";
|
||||
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
|
||||
import { Award, MapPin } from "lucide-react";
|
||||
import { Award, MapPin, Phone, Clock } from "lucide-react";
|
||||
|
||||
const navItems = [
|
||||
{ name: "Menu", id: "menu" },
|
||||
@@ -23,13 +23,14 @@ const navButton = {
|
||||
const heroProps = {
|
||||
title: "The Best Pizza in Midland. Two Years Running.", description: "48-hour fermented dough. Real wood-fired pizza. Limited daily availability.", tag: "MRT Best of Midland 2024 & 2025", tagIcon: Award,
|
||||
background: { variant: "plain" as const },
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/delicious-vegan-pizza-social-post_23-2151895448.jpg?_wi=1", imageAlt: "Wood-fired pizza fresh from oven", imagePosition: "right" as const,
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3ATOPwaLclIhBPrud8y1xTqDki0/uploaded-1772692161535-oa1bbbmr.png", imageAlt: "Wood-fired pizza fresh from oven", imagePosition: "right" as const,
|
||||
mediaAnimation: "blur-reveal" as const,
|
||||
buttons: [
|
||||
{ text: "Reserve Your Slice", href: "#menu" },
|
||||
{ text: "Call Now", href: "tel:+16325551234" }
|
||||
],
|
||||
buttonAnimation: "blur-reveal" as const
|
||||
buttonAnimation: "blur-reveal" as const,
|
||||
containerClassName: "relative bg-cover bg-center bg-no-repeat", className: "relative z-10"
|
||||
};
|
||||
|
||||
const philosophyProps = {
|
||||
@@ -45,31 +46,31 @@ const philosophyProps = {
|
||||
|
||||
const menuProducts = [
|
||||
{
|
||||
id: "margherita", brand: "DE CASA PIZZA WOOD FIRED", name: "Margherita", price: "$18", rating: 5,
|
||||
id: "margherita", brand: "DECASA PIZZA WOOD FIRED", name: "Margherita", price: "$18", rating: 5,
|
||||
reviewCount: "Best Seller", imageSrc: "http://img.b2bpic.net/free-photo/closeup-fresh-pizza-with-mozzarella-cheese-tomatoes-basil_181624-58097.jpg", imageAlt: "Margherita pizza with fresh mozzarella and basil"
|
||||
},
|
||||
{
|
||||
id: "hot-honey-pepperoni", brand: "DE CASA PIZZA WOOD FIRED", name: "Hot Honey Pepperoni", price: "$21", rating: 5,
|
||||
id: "hot-honey-pepperoni", brand: "DECASA PIZZA WOOD FIRED", name: "Hot Honey Pepperoni", price: "$21", rating: 5,
|
||||
reviewCount: "Signature", imageSrc: "http://img.b2bpic.net/free-photo/baking-pizza-wood-fired-oven_52683-106697.jpg", imageAlt: "Hot honey pepperoni pizza"
|
||||
},
|
||||
{
|
||||
id: "truffle", brand: "DE CASA PIZZA WOOD FIRED", name: "Truffle", price: "$21", rating: 5,
|
||||
id: "truffle", brand: "DECASA PIZZA WOOD FIRED", name: "Truffle", price: "$21", rating: 5,
|
||||
reviewCount: "Premium", imageSrc: "http://img.b2bpic.net/free-photo/delicious-vegan-pizza-social-post_23-2151895434.jpg", imageAlt: "Luxury truffle pizza"
|
||||
},
|
||||
{
|
||||
id: "western", brand: "DE CASA PIZZA WOOD FIRED", name: "Western", price: "$21", rating: 5,
|
||||
id: "western", brand: "DECASA PIZZA WOOD FIRED", name: "Western", price: "$21", rating: 5,
|
||||
reviewCount: "House Special", imageSrc: "http://img.b2bpic.net/free-photo/delicious-vegan-pizza-social-post_23-2151895448.jpg?_wi=2", imageAlt: "Western BBQ pizza"
|
||||
},
|
||||
{
|
||||
id: "meatballs", brand: "DE CASA PIZZA WOOD FIRED", name: "Meatballs", price: "$18", rating: 5,
|
||||
id: "meatballs", brand: "DECASA PIZZA WOOD FIRED", name: "Meatballs", price: "$18", rating: 5,
|
||||
reviewCount: "Italian", imageSrc: "http://img.b2bpic.net/free-photo/farfalle-pasta-with-meatballs-spinach-sauce-with-fried-chickpeas_2829-18262.jpg", imageAlt: "Wood-fired meatballs"
|
||||
},
|
||||
{
|
||||
id: "four-cheese-calzone", brand: "DE CASA PIZZA WOOD FIRED", name: "Four Cheese Calzone", price: "$17", rating: 5,
|
||||
id: "four-cheese-calzone", brand: "DECASA PIZZA WOOD FIRED", name: "Four Cheese Calzone", price: "$17", rating: 5,
|
||||
reviewCount: "Baked Fresh", imageSrc: "http://img.b2bpic.net/free-photo/italian-bread-calzone-restaurant_501050-877.jpg", imageAlt: "Four cheese calzone"
|
||||
},
|
||||
{
|
||||
id: "house-salad", brand: "DE CASA PIZZA WOOD FIRED", name: "House Salad", price: "$7", rating: 5,
|
||||
id: "house-salad", brand: "DECASA PIZZA WOOD FIRED", name: "House Salad", price: "$7", rating: 5,
|
||||
reviewCount: "Fresh", imageSrc: "http://img.b2bpic.net/free-photo/fresh-salad-with-vegetables-greens-wooden-table-healthy-food-concept_1150-1832.jpg", imageAlt: "Fresh house salad with seasonal vegetables"
|
||||
}
|
||||
];
|
||||
@@ -80,18 +81,22 @@ const menuProps = {
|
||||
products: menuProducts,
|
||||
gridVariant: "three-columns-all-equal-width" as const,
|
||||
animationType: "slide-up" as const,
|
||||
carouselMode: "buttons" as const
|
||||
carouselMode: "buttons" as const,
|
||||
buttons: [
|
||||
{ text: "Call to Order: (632) 555-1234", href: "tel:+16325551234" }
|
||||
],
|
||||
buttonAnimation: "blur-reveal" as const
|
||||
};
|
||||
|
||||
const locationFaqs = [
|
||||
{
|
||||
id: "hours-tue-wed-sat", title: "Tuesday, Wednesday, Saturday", content: "11am–2pm. Until sold out."
|
||||
id: "hours-tue-wed-sat", title: "Tuesday, Wednesday, Saturday", content: "<div class='space-y-2'><p class='font-semibold'>11am–2pm</p><p class='text-sm opacity-75'>Until sold out.</p></div>"
|
||||
},
|
||||
{
|
||||
id: "hours-thu-fri", title: "Thursday, Friday", content: "11am–2pm / 4pm–7pm. Until sold out."
|
||||
id: "hours-thu-fri", title: "Thursday, Friday", content: "<div class='space-y-2'><p class='font-semibold'>11am–2pm / 4pm–7pm</p><p class='text-sm opacity-75'>Until sold out.</p></div>"
|
||||
},
|
||||
{
|
||||
id: "hours-sun-mon", title: "Sunday, Monday", content: "Closed. Resting the dough."
|
||||
id: "hours-sun-mon", title: "Sunday, Monday", content: "<div class='space-y-2'><p class='font-semibold'>Closed</p><p class='text-sm opacity-75'>Resting the dough.</p></div>"
|
||||
},
|
||||
{
|
||||
id: "ordering", title: "How to Order", content: "Call to place an order. We prepare fresh wood-fired pizzas to order. Limited daily availability."
|
||||
@@ -165,11 +170,16 @@ export default function LandingPage() {
|
||||
<NavbarStyleCentered
|
||||
navItems={navItems}
|
||||
button={navButton}
|
||||
brandName="DE CASA PIZZA WOOD FIRED"
|
||||
brandName="DECASA PIZZA WOOD FIRED"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="hero" data-section="hero">
|
||||
<div id="hero" data-section="hero" style={{
|
||||
backgroundImage: 'url(https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3ATOPwaLclIhBPrud8y1xTqDki0/uploaded-1772692161535-oa1bbbmr.png)',
|
||||
backgroundSize: 'cover',
|
||||
backgroundPosition: 'center',
|
||||
backgroundAttachment: 'fixed'
|
||||
}}>
|
||||
<HeroSplit {...heroProps} />
|
||||
</div>
|
||||
|
||||
|
||||
@@ -2,23 +2,23 @@
|
||||
/* Base units */
|
||||
/* --vw is set by ThemeProvider */
|
||||
|
||||
/* --background: #000000;;
|
||||
--card: #0a0a0a;;
|
||||
--foreground: #F5F5F7;;
|
||||
--primary-cta: #F5F5F7;;
|
||||
--secondary-cta: #0a0a0a;;
|
||||
--accent: #4a4a4a;;
|
||||
--background-accent: #1a1a1a;; */
|
||||
/* --background: #000000;;;;
|
||||
--card: #000000;;;;
|
||||
--foreground: #F5F5F7;;;;
|
||||
--primary-cta: #F5F5F7;;;;
|
||||
--secondary-cta: #0a0a0a;;;;
|
||||
--accent: #4a4a4a;;;;
|
||||
--background-accent: #883535;;;; */
|
||||
|
||||
--background: #000000;;
|
||||
--card: #0a0a0a;;
|
||||
--foreground: #F5F5F7;;
|
||||
--primary-cta: #F5F5F7;;
|
||||
--primary-cta-text: #000000;;
|
||||
--secondary-cta: #0a0a0a;;
|
||||
--secondary-cta-text: #F5F5F7;;
|
||||
--accent: #4a4a4a;;
|
||||
--background-accent: #1a1a1a;;
|
||||
--background: #000000;;;;
|
||||
--card: #000000;;;;
|
||||
--foreground: #F5F5F7;;;;
|
||||
--primary-cta: #F5F5F7;;;;
|
||||
--primary-cta-text: #000000;;;;
|
||||
--secondary-cta: #0a0a0a;;;;
|
||||
--secondary-cta-text: #F5F5F7;;;;
|
||||
--accent: #4a4a4a;;;;
|
||||
--background-accent: #883535;;;;
|
||||
|
||||
/* text sizing - set by ThemeProvider */
|
||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||
|
||||
@@ -18,7 +18,7 @@ interface LogoProps {
|
||||
const Logo = ({
|
||||
// logoSrc,
|
||||
// logoAlt = "",
|
||||
brandName = "Webild",
|
||||
brandName = "",
|
||||
// className = "",
|
||||
// imageClassName = "",
|
||||
textClassName = "",
|
||||
|
||||
@@ -23,7 +23,7 @@ interface NavbarLayoutFloatingInlineProps {
|
||||
|
||||
const NavbarLayoutFloatingInline = ({
|
||||
navItems,
|
||||
brandName = "Webild",
|
||||
brandName = "",
|
||||
button,
|
||||
animateOnLoad = true,
|
||||
className = "",
|
||||
|
||||
@@ -28,7 +28,7 @@ const NavbarLayoutFloatingOverlay = ({
|
||||
// logoSrc,
|
||||
// logoAlt = "",
|
||||
className = "",
|
||||
brandName = "Webild",
|
||||
brandName = "",
|
||||
button,
|
||||
buttonClassName = "",
|
||||
buttonTextClassName = "",
|
||||
|
||||
@@ -25,7 +25,7 @@ const NavbarStyleApple = ({
|
||||
navItems,
|
||||
// logoSrc,
|
||||
// logoAlt = "",
|
||||
brandName = "Webild",
|
||||
brandName = "",
|
||||
button,
|
||||
buttonClassName = "",
|
||||
buttonTextClassName = "",
|
||||
|
||||
@@ -57,7 +57,7 @@ const NavbarStyleCentered = ({
|
||||
topBarButton,
|
||||
// logoSrc,
|
||||
// logoAlt = "",
|
||||
brandName = "Webild",
|
||||
brandName = "",
|
||||
className = "",
|
||||
}: NavbarStyleCenteredProps) => {
|
||||
const [isActive, setIsActive] = useState(false);
|
||||
|
||||
@@ -49,7 +49,7 @@ const NavbarStyleFullscreen = ({
|
||||
navItems,
|
||||
// logoSrc,
|
||||
// logoAlt = "",
|
||||
brandName = "Webild",
|
||||
brandName = "",
|
||||
bottomLeftText = "Global Community",
|
||||
bottomRightText = "hello@example.com",
|
||||
topBarClassName = "",
|
||||
|
||||
@@ -30,11 +30,11 @@ interface FooterBaseProps {
|
||||
|
||||
const FooterBase = ({
|
||||
// logoSrc = "/brand/logowhite.svg",
|
||||
logoText = "Webild",
|
||||
logoText = "",
|
||||
// logoWidth = 120,
|
||||
// logoHeight = 40,
|
||||
columns,
|
||||
copyrightText = `© 2025 | Webild`,
|
||||
copyrightText = `© 2025 | `,
|
||||
onPrivacyClick,
|
||||
ariaLabel = "Site footer",
|
||||
className = "",
|
||||
|
||||
@@ -31,11 +31,11 @@ interface FooterBaseCardProps {
|
||||
|
||||
const FooterBaseCard = ({
|
||||
// logoSrc = "/brand/logowhite.svg",
|
||||
logoText = "Webild",
|
||||
logoText = "",
|
||||
// logoWidth = 120,
|
||||
// logoHeight = 40,
|
||||
columns,
|
||||
copyrightText = `© 2025 | Webild`,
|
||||
copyrightText = `© 2025 | `,
|
||||
onPrivacyClick,
|
||||
ariaLabel = "Site footer",
|
||||
className = "",
|
||||
|
||||
@@ -26,8 +26,8 @@ interface FooterCardProps {
|
||||
const FooterCard = ({
|
||||
// logoSrc,
|
||||
// logoAlt = "Logo",
|
||||
logoText = "Webild",
|
||||
copyrightText = `© 2025 | Webild`,
|
||||
logoText = "",
|
||||
copyrightText = `© 2025 | `,
|
||||
socialLinks,
|
||||
ariaLabel = "Site footer",
|
||||
className = "",
|
||||
|
||||
@@ -28,7 +28,7 @@ interface FooterLogoRevealProps {
|
||||
const FooterLogoReveal = ({
|
||||
// logoSrc,
|
||||
// logoAlt = "Logo",
|
||||
logoText = "Webild",
|
||||
logoText = "",
|
||||
leftLink,
|
||||
rightLink,
|
||||
ariaLabel = "Site footer",
|
||||
|
||||
@@ -51,11 +51,11 @@ const FooterMedia = ({
|
||||
imageAlt = "",
|
||||
videoAriaLabel = "Footer video",
|
||||
// logoSrc = "/brand/logowhite.svg",
|
||||
logoText = "Webild",
|
||||
logoText = "",
|
||||
// logoWidth = 120,
|
||||
// logoHeight = 40,
|
||||
columns,
|
||||
copyrightText = `© 2025 | Webild`,
|
||||
copyrightText = `© 2025 | `,
|
||||
onPrivacyClick,
|
||||
ariaLabel = "Site footer",
|
||||
className = "",
|
||||
|
||||
Reference in New Issue
Block a user