revert: revert to yarn to deploy
This commit is contained in:
+159
-4
@@ -1,5 +1,7 @@
|
|||||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
# Created by https://www.toptal.com/developers/gitignore/api/node,yarn,nextjs
|
||||||
|
# Edit at https://www.toptal.com/developers/gitignore?templates=node,yarn,nextjs
|
||||||
|
|
||||||
|
### NextJS ###
|
||||||
# dependencies
|
# dependencies
|
||||||
/node_modules
|
/node_modules
|
||||||
/.pnp
|
/.pnp
|
||||||
@@ -26,12 +28,165 @@ yarn-error.log*
|
|||||||
.pnpm-debug.log*
|
.pnpm-debug.log*
|
||||||
|
|
||||||
# local env files
|
# local env files
|
||||||
.env
|
.env*.local
|
||||||
.env.*
|
|
||||||
!.env.example
|
|
||||||
|
|
||||||
# vercel
|
# vercel
|
||||||
.vercel
|
.vercel
|
||||||
|
|
||||||
# typescript
|
# typescript
|
||||||
*.tsbuildinfo
|
*.tsbuildinfo
|
||||||
|
next-env.d.ts
|
||||||
|
|
||||||
|
### Node ###
|
||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
lerna-debug.log*
|
||||||
|
|
||||||
|
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||||
|
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||||
|
|
||||||
|
# Runtime data
|
||||||
|
pids
|
||||||
|
*.pid
|
||||||
|
*.seed
|
||||||
|
*.pid.lock
|
||||||
|
|
||||||
|
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||||
|
lib-cov
|
||||||
|
|
||||||
|
# Coverage directory used by tools like istanbul
|
||||||
|
coverage
|
||||||
|
*.lcov
|
||||||
|
|
||||||
|
# nyc test coverage
|
||||||
|
.nyc_output
|
||||||
|
|
||||||
|
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||||
|
.grunt
|
||||||
|
|
||||||
|
# Bower dependency directory (https://bower.io/)
|
||||||
|
bower_components
|
||||||
|
|
||||||
|
# node-waf configuration
|
||||||
|
.lock-wscript
|
||||||
|
|
||||||
|
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||||
|
build/Release
|
||||||
|
|
||||||
|
# Dependency directories
|
||||||
|
node_modules/
|
||||||
|
jspm_packages/
|
||||||
|
|
||||||
|
# Snowpack dependency directory (https://snowpack.dev/)
|
||||||
|
web_modules/
|
||||||
|
|
||||||
|
# TypeScript cache
|
||||||
|
|
||||||
|
# Optional npm cache directory
|
||||||
|
.npm
|
||||||
|
|
||||||
|
# Optional eslint cache
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
.stylelintcache
|
||||||
|
|
||||||
|
# Microbundle cache
|
||||||
|
.rpt2_cache/
|
||||||
|
.rts2_cache_cjs/
|
||||||
|
.rts2_cache_es/
|
||||||
|
.rts2_cache_umd/
|
||||||
|
|
||||||
|
# Optional REPL history
|
||||||
|
.node_repl_history
|
||||||
|
|
||||||
|
# Output of 'npm pack'
|
||||||
|
*.tgz
|
||||||
|
|
||||||
|
# Yarn Integrity file
|
||||||
|
.yarn-integrity
|
||||||
|
|
||||||
|
# dotenv environment variable files
|
||||||
|
.env
|
||||||
|
.env.development.local
|
||||||
|
.env.test.local
|
||||||
|
.env.production.local
|
||||||
|
.env.local
|
||||||
|
|
||||||
|
# parcel-bundler cache (https://parceljs.org/)
|
||||||
|
.cache
|
||||||
|
.parcel-cache
|
||||||
|
|
||||||
|
# Next.js build output
|
||||||
|
.next
|
||||||
|
out
|
||||||
|
|
||||||
|
# Nuxt.js build / generate output
|
||||||
|
.nuxt
|
||||||
|
dist
|
||||||
|
|
||||||
|
# Gatsby files
|
||||||
|
.cache/
|
||||||
|
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||||
|
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||||
|
# public
|
||||||
|
|
||||||
|
# vuepress build output
|
||||||
|
.vuepress/dist
|
||||||
|
|
||||||
|
# vuepress v2.x temp and cache directory
|
||||||
|
.temp
|
||||||
|
|
||||||
|
# Docusaurus cache and generated files
|
||||||
|
.docusaurus
|
||||||
|
|
||||||
|
# Serverless directories
|
||||||
|
.serverless/
|
||||||
|
|
||||||
|
# FuseBox cache
|
||||||
|
.fusebox/
|
||||||
|
|
||||||
|
# DynamoDB Local files
|
||||||
|
.dynamodb/
|
||||||
|
|
||||||
|
# TernJS port file
|
||||||
|
.tern-port
|
||||||
|
|
||||||
|
# Stores VSCode versions used for testing VSCode extensions
|
||||||
|
.vscode-test
|
||||||
|
|
||||||
|
# yarn v2
|
||||||
|
.yarn/cache
|
||||||
|
.yarn/unplugged
|
||||||
|
.yarn/build-state.yml
|
||||||
|
.yarn/install-state.gz
|
||||||
|
.pnp.*
|
||||||
|
|
||||||
|
### Node Patch ###
|
||||||
|
# Serverless Webpack directories
|
||||||
|
.webpack/
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
|
||||||
|
# SvelteKit build / generate output
|
||||||
|
.svelte-kit
|
||||||
|
|
||||||
|
### yarn ###
|
||||||
|
# https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored
|
||||||
|
|
||||||
|
.yarn/*
|
||||||
|
!.yarn/releases
|
||||||
|
!.yarn/patches
|
||||||
|
!.yarn/plugins
|
||||||
|
!.yarn/sdks
|
||||||
|
!.yarn/versions
|
||||||
|
|
||||||
|
# if you are NOT using Zero-installs, then:
|
||||||
|
# comment the following lines
|
||||||
|
# !.yarn/cache
|
||||||
|
|
||||||
|
# and uncomment the following lines
|
||||||
|
# .pnp.*
|
||||||
|
|
||||||
|
# End of https://www.toptal.com/developers/gitignore/api/node,yarn,nextjs
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
nodeLinker: node-modules
|
||||||
+3
-4
@@ -2,9 +2,8 @@ module.exports = {
|
|||||||
apps: [
|
apps: [
|
||||||
{
|
{
|
||||||
name: process.env.APP_NAME || 'entgamers-website',
|
name: process.env.APP_NAME || 'entgamers-website',
|
||||||
script: 'bun',
|
script: 'yarn',
|
||||||
args: 'run start',
|
args: 'run start',
|
||||||
interpreter: '~/.bun/bin/bun',
|
|
||||||
env: {
|
env: {
|
||||||
NODE_ENV: 'production',
|
NODE_ENV: 'production',
|
||||||
PORT: process.env.PORT || 3000,
|
PORT: process.env.PORT || 3000,
|
||||||
@@ -20,7 +19,7 @@ module.exports = {
|
|||||||
ref: 'origin/production',
|
ref: 'origin/production',
|
||||||
repo: 'https://github.com/SrJuggernaut/entgamers_pro',
|
repo: 'https://github.com/SrJuggernaut/entgamers_pro',
|
||||||
path: process.env.DEPLOY_PATH,
|
path: process.env.DEPLOY_PATH,
|
||||||
'post-deploy': 'pm2 startOrRestart ecosystem.config.js',
|
'post-deploy': 'pm2 --silent startOrRestart ecosystem.config.js',
|
||||||
env: {
|
env: {
|
||||||
APP_NAME: process.env.APP_NAME,
|
APP_NAME: process.env.APP_NAME,
|
||||||
PORT: process.env.PORT,
|
PORT: process.env.PORT,
|
||||||
@@ -34,7 +33,7 @@ module.exports = {
|
|||||||
ref: 'origin/preview',
|
ref: 'origin/preview',
|
||||||
repo: 'https://github.com/SrJuggernaut/entgamers_pro',
|
repo: 'https://github.com/SrJuggernaut/entgamers_pro',
|
||||||
path: process.env.DEPLOY_PATH,
|
path: process.env.DEPLOY_PATH,
|
||||||
'post-deploy': 'pm2 startOrRestart ecosystem.config.js',
|
'post-deploy': 'pm2 --silent startOrRestart ecosystem.config.js',
|
||||||
env: {
|
env: {
|
||||||
APP_NAME: process.env.APP_NAME,
|
APP_NAME: process.env.APP_NAME,
|
||||||
PORT: process.env.PORT,
|
PORT: process.env.PORT,
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"develop": "next dev",
|
"develop": "next dev",
|
||||||
"build": "next build",
|
"build": "next build",
|
||||||
"prestart": "bun install && next build",
|
"prestart": "yarn install && next build",
|
||||||
"start": "next start",
|
"start": "next start",
|
||||||
"lint": "next lint",
|
"lint": "next lint",
|
||||||
"prepare": "husky install"
|
"prepare": "husky install"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { SocialSliderProps } from '@components/pages/home/socialNetworks/SocialSlider'
|
// import { SocialSliderProps } from '@components/pages/home/socialNetworks/SocialSlider'
|
||||||
import { Container, Paper } from '@mui/material'
|
import { Container, Paper } from '@mui/material'
|
||||||
import gsap, { Linear } from 'gsap'
|
import gsap, { Linear } from 'gsap'
|
||||||
import ScrollToPlugin from 'gsap/dist/ScrollToPlugin'
|
import ScrollToPlugin from 'gsap/dist/ScrollToPlugin'
|
||||||
@@ -7,11 +7,7 @@ import { FC, useEffect, useRef } from 'react'
|
|||||||
|
|
||||||
gsap.registerPlugin(ScrollTrigger, ScrollToPlugin)
|
gsap.registerPlugin(ScrollTrigger, ScrollToPlugin)
|
||||||
|
|
||||||
export interface SocialNetworksProps {
|
const SocialNetworks: FC = () => {
|
||||||
socialNetworks: SocialSliderProps['slides']
|
|
||||||
}
|
|
||||||
|
|
||||||
const SocialNetworks: FC<SocialNetworksProps> = () => {
|
|
||||||
const layer01 = useRef<HTMLDivElement| null>(null)
|
const layer01 = useRef<HTMLDivElement| null>(null)
|
||||||
const layer02 = useRef<HTMLDivElement| null>(null)
|
const layer02 = useRef<HTMLDivElement| null>(null)
|
||||||
const layer03 = useRef<HTMLDivElement| null>(null)
|
const layer03 = useRef<HTMLDivElement| null>(null)
|
||||||
@@ -86,9 +82,6 @@ const SocialNetworks: FC<SocialNetworksProps> = () => {
|
|||||||
component={Container}
|
component={Container}
|
||||||
variant='glass'
|
variant='glass'
|
||||||
>
|
>
|
||||||
{/* <SocialSlider
|
|
||||||
slides={socialNetworks}
|
|
||||||
/> */}
|
|
||||||
</Paper>
|
</Paper>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,95 +0,0 @@
|
|||||||
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
|
|
||||||
import { faFacebook, faInstagram, faTwitch, faTwitter, faYoutube } from '@fortawesome/free-brands-svg-icons'
|
|
||||||
import { Button, Typography } from '@mui/material'
|
|
||||||
import { Navigation, Pagination, A11y } from 'swiper'
|
|
||||||
import { Swiper, SwiperSlide } from 'swiper/react'
|
|
||||||
|
|
||||||
import 'swiper/css'
|
|
||||||
import 'swiper/css/navigation'
|
|
||||||
import 'swiper/css/pagination'
|
|
||||||
import { FC } from 'react'
|
|
||||||
import { Button as ButtonType } from '@interfaces'
|
|
||||||
|
|
||||||
export interface SlideProps {
|
|
||||||
socialNetwork: 'facebook' | 'twitter' | 'instagram' | 'youtube' | 'twitch'
|
|
||||||
description: string
|
|
||||||
links: ButtonType[]
|
|
||||||
}
|
|
||||||
|
|
||||||
const Slide:FC<SlideProps> = ({ description, socialNetwork, links }) => {
|
|
||||||
return (
|
|
||||||
<div
|
|
||||||
css={{
|
|
||||||
marginInline: '36px',
|
|
||||||
marginBlock: '16px',
|
|
||||||
padding: '16px'
|
|
||||||
}}
|
|
||||||
>
|
|
||||||
<Typography variant="body1" component="div" align="center" >
|
|
||||||
{{
|
|
||||||
facebook: <FontAwesomeIcon style={{ filter: 'drop-shadow(2px 2px 2px rgb(0 0 0 / 0.4)' }}icon={faFacebook} size="5x" fixedWidth />,
|
|
||||||
twitter: <FontAwesomeIcon style={{ filter: 'drop-shadow(2px 2px 2px rgb(0 0 0 / 0.4)' }}icon={faTwitter} size="5x" fixedWidth />,
|
|
||||||
instagram: <FontAwesomeIcon style={{ filter: 'drop-shadow(2px 2px 2px rgb(0 0 0 / 0.4)' }}icon={faInstagram} size="5x" fixedWidth />,
|
|
||||||
youtube: <FontAwesomeIcon style={{ filter: 'drop-shadow(2px 2px 2px rgb(0 0 0 / 0.4)' }}icon={faYoutube} size="5x" fixedWidth />,
|
|
||||||
twitch: <FontAwesomeIcon style={{ filter: 'drop-shadow(2px 2px 2px rgb(0 0 0 / 0.4)' }}icon={faTwitch} size="5x" fixedWidth />
|
|
||||||
}[socialNetwork]}
|
|
||||||
</Typography>
|
|
||||||
<Typography variant="body1" align="center" >
|
|
||||||
{description}
|
|
||||||
</Typography>
|
|
||||||
<div
|
|
||||||
css={{
|
|
||||||
display: 'flex',
|
|
||||||
justifyContent: 'space-around',
|
|
||||||
alignItems: 'center',
|
|
||||||
marginBlock: '1rem'
|
|
||||||
}}
|
|
||||||
>
|
|
||||||
{links.map(({ url, label, color, variant }) => (
|
|
||||||
<Button
|
|
||||||
key={url}
|
|
||||||
href={url}
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer"
|
|
||||||
variant={variant}
|
|
||||||
color={color}
|
|
||||||
>
|
|
||||||
{label}
|
|
||||||
</Button>
|
|
||||||
))}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface SocialSliderProps {
|
|
||||||
slides: SlideProps[]
|
|
||||||
}
|
|
||||||
|
|
||||||
const SocialSlider: FC<SocialSliderProps> = ({ slides }) => {
|
|
||||||
return (
|
|
||||||
<Swiper
|
|
||||||
modules={[Navigation, Pagination, A11y]}
|
|
||||||
spaceBetween={16}
|
|
||||||
slidesPerView={1}
|
|
||||||
navigation
|
|
||||||
pagination={{ clickable: true }}
|
|
||||||
scrollbar={{ draggable: true }}
|
|
||||||
>
|
|
||||||
{slides.map(({ socialNetwork, description, links }) => (
|
|
||||||
|
|
||||||
<SwiperSlide
|
|
||||||
key={socialNetwork}
|
|
||||||
>
|
|
||||||
<Slide
|
|
||||||
socialNetwork={socialNetwork}
|
|
||||||
description={description}
|
|
||||||
links={links}
|
|
||||||
/>
|
|
||||||
</SwiperSlide>
|
|
||||||
))}
|
|
||||||
</Swiper>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default SocialSlider
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
import fetch from 'isomorphic-fetch'
|
|
||||||
import { NextApiRequest, NextApiResponse } from 'next'
|
|
||||||
import nextConnect from 'next-connect'
|
|
||||||
|
|
||||||
const handler = nextConnect<NextApiRequest, NextApiResponse>({
|
|
||||||
onError: (error, req, res) => {
|
|
||||||
res.status(501).json({ error: `Sorry something Happened! ${error.message}` })
|
|
||||||
},
|
|
||||||
onNoMatch: (req, res) => {
|
|
||||||
res.status(405).json({ error: `Method '${req.method}' Not Allowed` })
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
handler.post(
|
|
||||||
async (req, res) => {
|
|
||||||
const bodyToSend = JSON.stringify({
|
|
||||||
content: 'Nueva solicitud de unirse a equipo',
|
|
||||||
embeds: [
|
|
||||||
{
|
|
||||||
title: 'Solicitud de unirse a equipo',
|
|
||||||
color: 3782986,
|
|
||||||
fields: Object.entries(req.body).map(([key, value]) => ({
|
|
||||||
name: key,
|
|
||||||
value,
|
|
||||||
inline: false
|
|
||||||
})),
|
|
||||||
timestamp: new Date().toISOString()
|
|
||||||
}
|
|
||||||
]
|
|
||||||
})
|
|
||||||
const response = await fetch(process.env.DISCORD_JOIN_WEBHOOK_URL || '', {
|
|
||||||
method: 'POST',
|
|
||||||
headers: {
|
|
||||||
'Content-Type': 'application/json'
|
|
||||||
},
|
|
||||||
body: bodyToSend
|
|
||||||
})
|
|
||||||
if (response.ok) {
|
|
||||||
res.status(200).json({ message: 'Form sent' })
|
|
||||||
} else {
|
|
||||||
res.status(500).json({ message: 'Something went wrong' })
|
|
||||||
}
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
export default handler
|
|
||||||
@@ -1,11 +1,8 @@
|
|||||||
import { GetStaticProps, GetStaticPropsResult, InferGetStaticPropsType } from 'next'
|
|
||||||
import { Paper, Tab, Tabs, Theme, Typography, useMediaQuery } from '@mui/material'
|
import { Paper, Tab, Tabs, Theme, Typography, useMediaQuery } from '@mui/material'
|
||||||
import { FC, useEffect, useState } from 'react'
|
import { GetStaticProps, GetStaticPropsResult, InferGetStaticPropsType } from 'next'
|
||||||
import { Swiper as SwiperClass, Virtual } from 'swiper'
|
import { FC, useState } from 'react'
|
||||||
import { Swiper, SwiperSlide } from 'swiper/react'
|
|
||||||
|
|
||||||
import Contained from '@components/layouts/Contained'
|
import Contained from '@components/layouts/Contained'
|
||||||
import PositionJoinTeam from '@components/pages/equipo/unirse/PositionJoinTeam'
|
|
||||||
import Seo from '@components/Seo'
|
import Seo from '@components/Seo'
|
||||||
import { EquipoUnirsePageProps } from '@interfaces'
|
import { EquipoUnirsePageProps } from '@interfaces'
|
||||||
|
|
||||||
@@ -98,16 +95,9 @@ export const getStaticProps: GetStaticProps<EquipoUnirsePageProps> = async (): P
|
|||||||
|
|
||||||
const Unirse: FC<InferGetStaticPropsType<typeof getStaticProps>> = ({ title, seo, description, teamPositions }) => {
|
const Unirse: FC<InferGetStaticPropsType<typeof getStaticProps>> = ({ title, seo, description, teamPositions }) => {
|
||||||
const [currentTab, setCurrentTab] = useState(0)
|
const [currentTab, setCurrentTab] = useState(0)
|
||||||
const [currenSwiper, setCurrenSwiper] = useState<SwiperClass | undefined>(undefined)
|
|
||||||
|
|
||||||
const isMediumOrBigger = useMediaQuery((theme: Theme) => theme.breakpoints.up('md'))
|
const isMediumOrBigger = useMediaQuery((theme: Theme) => theme.breakpoints.up('md'))
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
if (currenSwiper) {
|
|
||||||
currenSwiper.slideToLoop(currentTab)
|
|
||||||
}
|
|
||||||
}, [currentTab])
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Contained>
|
<Contained>
|
||||||
<Seo {...seo} />
|
<Seo {...seo} />
|
||||||
@@ -136,20 +126,7 @@ const Unirse: FC<InferGetStaticPropsType<typeof getStaticProps>> = ({ title, seo
|
|||||||
))}
|
))}
|
||||||
</Tabs>
|
</Tabs>
|
||||||
</Paper>
|
</Paper>
|
||||||
<Swiper
|
|
||||||
spaceBetween={50}
|
|
||||||
modules={[Virtual]}
|
|
||||||
allowTouchMove={false}
|
|
||||||
onSwiper={(swiper) => { setCurrenSwiper(swiper) }}
|
|
||||||
onSlideChange={(swiper) => { setCurrentTab(swiper.activeIndex) }}
|
|
||||||
virtual
|
|
||||||
>
|
|
||||||
{teamPositions.map((position, index) => (
|
|
||||||
<SwiperSlide key={index} >
|
|
||||||
<PositionJoinTeam {...position} />
|
|
||||||
</SwiperSlide>
|
|
||||||
))}
|
|
||||||
</Swiper>
|
|
||||||
</Contained>
|
</Contained>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import Footer from '@components/layouts/Footer'
|
|||||||
import Header from '@components/layouts/Header'
|
import Header from '@components/layouts/Header'
|
||||||
import Clanes from '@components/pages/home/Clanes'
|
import Clanes from '@components/pages/home/Clanes'
|
||||||
import Hero from '@components/pages/home/Hero'
|
import Hero from '@components/pages/home/Hero'
|
||||||
import SocialNetworks from '@components/pages/home/SocialNetworks'
|
|
||||||
import Team from '@components/pages/home/Team'
|
import Team from '@components/pages/home/Team'
|
||||||
|
|
||||||
const Home: NextPage = () => {
|
const Home: NextPage = () => {
|
||||||
@@ -25,40 +24,6 @@ const Home: NextPage = () => {
|
|||||||
title='Clanes'
|
title='Clanes'
|
||||||
description='Los clanes son espacios donde compartir nuestros gustos con otros usuarios, dándonos la oportunidad de organizar proyectos y eventos en los cuales formar parte.'
|
description='Los clanes son espacios donde compartir nuestros gustos con otros usuarios, dándonos la oportunidad de organizar proyectos y eventos en los cuales formar parte.'
|
||||||
/>
|
/>
|
||||||
<SocialNetworks
|
|
||||||
socialNetworks={[
|
|
||||||
{
|
|
||||||
socialNetwork: 'facebook',
|
|
||||||
description: 'Puedes seguirnos en Facebook para ver memes sobre videojuegos, información sobre los Clanes, la comunidad, eventos, etc. o formar parte del grupo para interactuar mas de cerca con otros integrantes de la comunidad',
|
|
||||||
links: [
|
|
||||||
{
|
|
||||||
label: 'Pagina de Facebook',
|
|
||||||
url: 'https://www.facebook.com/EntGamers/',
|
|
||||||
variant: 'contained',
|
|
||||||
color: 'primary'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Grupo de Facebook',
|
|
||||||
url: 'https://www.facebook.com/groups/EntGamers/',
|
|
||||||
variant: 'contained',
|
|
||||||
color: 'primary'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
socialNetwork: 'twitter',
|
|
||||||
description: 'Puedes seguirnos en Twitter para enterarte de las noticias mas recientes sobre la comunidad, eventos y demás información.',
|
|
||||||
links: [
|
|
||||||
{
|
|
||||||
label: 'Twitter',
|
|
||||||
url: 'https://twitter.com/EntGamers',
|
|
||||||
variant: 'contained',
|
|
||||||
color: 'primary'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
<Team
|
<Team
|
||||||
title='Equipo'
|
title='Equipo'
|
||||||
teamMembers={[
|
teamMembers={[
|
||||||
|
|||||||
Reference in New Issue
Block a user