primevue-mirror/pages/landing/HeroSection.vue

129 lines
7.1 KiB
Vue
Raw Normal View History

2022-09-06 13:53:29 +00:00
<template>
2023-03-07 14:29:07 +00:00
<section :class="['landing-hero flex align-items-center flex-column justify-content-center relative', { 'hero-animation': setAnimation }]">
2022-09-06 13:53:29 +00:00
<div class="hero-inner z-2 relative">
<div class="flex flex-column md:align-items-center md:flex-row">
<div class="p-2 flex flex-row md:flex-column">
2023-03-07 14:29:07 +00:00
<div class="hero-box w-10rem h-10rem md:w-12rem md:h-12rem animation flex align-items-center justify-content-center" @click="navigateTo('https://www.primefaces.org/store')">
2022-09-06 13:53:29 +00:00
<div class="flex flex-column align-items-center">
2023-03-07 14:29:07 +00:00
<img src="https://primefaces.org/cdn/primevue/images/landing/templates-icon.svg" alt="primevue templates" />
2022-09-06 13:53:29 +00:00
<div class="name">
<b>Templates</b>
<span>Spectacular Designs</span>
</div>
</div>
</div>
2023-03-08 08:35:24 +00:00
<div class="hero-box w-10rem h-10rem md:w-12rem md:h-12rem animation ml-4 md:ml-0 md:mt-4 flex align-items-center justify-content-center" @click="navigateTo('https://designer.primevue.org')">
2022-09-06 13:53:29 +00:00
<div class="flex flex-column align-items-center">
2023-03-07 14:29:07 +00:00
<img src="https://primefaces.org/cdn/primevue/images/landing/designer-icon.svg" alt="primevue templates" />
2022-09-06 13:53:29 +00:00
<div class="name">
<b>Theme Designer</b>
<span>Create Your Own</span>
</div>
</div>
</div>
</div>
<div class="p-2 flex flex-row md:flex-column">
2023-03-07 14:29:07 +00:00
<div class="hero-box w-10rem h-10rem md:w-12rem md:h-12rem animation flex align-items-center justify-content-center" @click="navigateTo('https://github.com/primefaces/primevue')">
2022-09-06 13:53:29 +00:00
<div class="flex flex-column align-items-center">
2023-03-07 14:29:07 +00:00
<img src="https://primefaces.org/cdn/primevue/images/landing/core-icon.svg" alt="primevue core" />
2022-09-06 13:53:29 +00:00
<div class="name">
<b>Open Source</b>
<span>90+ UI Components</span>
</div>
</div>
</div>
2023-02-28 08:29:30 +00:00
<router-link to="/installation">
2023-03-07 14:29:07 +00:00
<div class="hero-box w-10rem h-10rem md:w-12rem md:h-12rem animation logo hidden md:flex my-4 align-items-center justify-content-center">
2022-09-06 13:53:29 +00:00
<div class="hero-box-inner text-center">
2023-03-07 14:29:07 +00:00
<img src="https://primefaces.org/cdn/primevue/images/landing/overview-icon.svg" alt="primevue main" />
2022-09-06 13:53:29 +00:00
<div class="name">
<b class="font-bold">NEXT-GEN VUE UI</b>
</div>
</div>
</div>
2022-12-08 12:26:57 +00:00
</router-link>
2023-03-07 14:29:07 +00:00
<div class="hero-box w-10rem h-10rem md:w-12rem md:h-12rem animation flex ml-4 md:ml-0 align-items-center justify-content-center" @click="navigateTo('https://www.primefaces.org/primeflex')">
2022-09-06 13:53:29 +00:00
<div class="flex flex-column align-items-center">
2023-03-07 14:29:07 +00:00
<img src="https://primefaces.org/cdn/primevue/images/landing/css-icon.svg" alt="primevue icons" />
2022-09-06 13:53:29 +00:00
<div class="name">
<b>CSS Utilities</b>
<span>PrimeFlex CSS</span>
</div>
</div>
</div>
</div>
<div class="p-2 flex flex-row md:flex-column">
2023-03-08 13:28:23 +00:00
<div class="hero-box w-10rem h-10rem md:w-12rem md:h-12rem animation flex align-items-center justify-content-center" @click="navigateTo('https://blocks.primevue.org')">
2022-09-06 13:53:29 +00:00
<div class="flex flex-column align-items-center">
2023-03-07 14:29:07 +00:00
<img src="https://primefaces.org/cdn/primevue/images/landing/blocks-icon.svg" alt="primevue templates" />
2022-09-06 13:53:29 +00:00
<div class="name">
<b>Prime Blocks</b>
2023-01-30 22:53:56 +00:00
<span>400+ UI Blocks</span>
2022-09-06 13:53:29 +00:00
</div>
</div>
</div>
2022-12-08 12:26:57 +00:00
<router-link to="/icons">
2023-03-07 14:29:07 +00:00
<div class="hero-box w-10rem h-10rem md:w-12rem md:h-12rem animation flex ml-4 md:ml-0 md:mt-4 align-items-center justify-content-center">
2022-09-06 13:53:29 +00:00
<div class="flex flex-column align-items-center">
2023-03-07 14:29:07 +00:00
<img src="https://primefaces.org/cdn/primevue/images/landing/icons-icon.svg" alt="primevue templates" />
2022-09-06 13:53:29 +00:00
<div class="name">
<b>Icon Library</b>
<span>200+ Icons</span>
</div>
</div>
</div>
2022-12-08 12:26:57 +00:00
</router-link>
2022-09-06 13:53:29 +00:00
</div>
</div>
<div class="hero-border-top hidden md:block"></div>
<div class="hero-border-left hidden md:block"></div>
<div class="hero-border-right hidden md:block"></div>
</div>
<section class="landing-getstarted flex flex-column md:flex-row align-items-center justify-content-center mt-8 z-1">
2023-03-07 14:29:07 +00:00
<router-link to="/installation" class="linkbox active font-semibold py-3 px-4 ml-0 md:ml-6 fadeinleft animation-duration-2000 animation-ease-out">
2022-09-14 14:26:41 +00:00
Get Started
2022-09-06 13:53:29 +00:00
<i class="pi pi-arrow-right ml-3"></i>
2022-12-08 12:26:57 +00:00
</router-link>
2023-03-07 14:29:07 +00:00
<div class="box download-box w-14rem cursor-pointer font-medium p-3 px-4 mt-3 md:mt-0 md:ml-3 bg-transparent inline-flex align-items-center fadeinright animation-duration-2000 animation-ease-out" @click="copyMe">
2023-03-07 10:49:25 +00:00
<i :class="npmIcon"></i>
2023-03-07 14:29:07 +00:00
<span class="font-bold" :style="{ fontFamily: 'monaco' }">{{ npmText }}</span>
2022-09-06 13:53:29 +00:00
</div>
</section>
<div class="hero-bg absolute top-0 left-0 right-0 bottom-0 z-0">
<div class="hero-strip-top"></div>
<div class="hero-strip-left"></div>
</div>
</section>
</template>
<script>
export default {
data() {
return {
2023-03-07 14:29:07 +00:00
npmIcon: 'download-icon pi pi-download mr-3',
npmText: 'npm i primevue',
2022-09-06 13:53:29 +00:00
setAnimation: false
2022-09-14 14:26:41 +00:00
};
2022-09-06 13:53:29 +00:00
},
mounted() {
2022-09-14 14:26:41 +00:00
this.setAnimation = true;
2022-09-06 13:53:29 +00:00
},
methods: {
2023-03-07 10:49:25 +00:00
copyMe() {
2023-03-07 14:29:07 +00:00
navigator.clipboard.writeText('npm i primevue');
this.npmText = 'copied!';
this.npmIcon = 'pi pi-copy download-icon mr-3';
2023-03-07 10:49:25 +00:00
setTimeout(() => {
2023-03-07 14:29:07 +00:00
this.npmIcon = 'download-icon pi pi-download mr-3';
this.npmText = 'npm i primevue';
2023-03-07 10:49:25 +00:00
}, 2000);
},
2022-09-06 13:53:29 +00:00
navigateTo(url) {
window.location.href = url;
}
}
2022-09-14 14:26:41 +00:00
};
</script>