Button: Added 'action' variable. Added new section to the Hub and navbar 'About'.
This commit is contained in:
parent
45411181aa
commit
3ac5290cbe
7 changed files with 38 additions and 5 deletions
|
@ -1,4 +1,4 @@
|
||||||
<script lang="ts">
|
<script>
|
||||||
import "$lib/css/button.css";
|
import "$lib/css/button.css";
|
||||||
import "$lib/css/base.css";
|
import "$lib/css/base.css";
|
||||||
import SvgIcon from "@jamescoyle/svelte-icon";
|
import SvgIcon from "@jamescoyle/svelte-icon";
|
||||||
|
@ -6,10 +6,13 @@
|
||||||
import anime from "animejs";
|
import anime from "animejs";
|
||||||
|
|
||||||
export let label = "Button";
|
export let label = "Button";
|
||||||
|
export let action = () => {
|
||||||
|
console.log("Hello from button!");
|
||||||
|
};
|
||||||
|
|
||||||
let iconDiv: HTMLElement;
|
let iconDiv;
|
||||||
|
|
||||||
function button_animation(event: Event, enter: boolean) {
|
function button_animation(event, enter) {
|
||||||
let opacity = [0, 1];
|
let opacity = [0, 1];
|
||||||
let marginRight = ["0rem", "1rem"];
|
let marginRight = ["0rem", "1rem"];
|
||||||
let translateX = [-20, 0];
|
let translateX = [-20, 0];
|
||||||
|
@ -32,6 +35,7 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
||||||
|
<!-- svelte-ignore a11y_click_events_have_key_events -->
|
||||||
<div
|
<div
|
||||||
class="button flex center"
|
class="button flex center"
|
||||||
on:mouseenter={(event) => {
|
on:mouseenter={(event) => {
|
||||||
|
@ -40,6 +44,9 @@
|
||||||
on:mouseleave={(event) => {
|
on:mouseleave={(event) => {
|
||||||
button_animation(event, false);
|
button_animation(event, false);
|
||||||
}}
|
}}
|
||||||
|
on:click={(event) => {
|
||||||
|
action();
|
||||||
|
}}
|
||||||
>
|
>
|
||||||
<span>{label}</span>
|
<span>{label}</span>
|
||||||
<div class="button-icon" bind:this={iconDiv}>
|
<div class="button-icon" bind:this={iconDiv}>
|
||||||
|
|
|
@ -101,6 +101,9 @@
|
||||||
<div>
|
<div>
|
||||||
<a class={isActive("/projects", pageUrl)} href="/projects">{mainjson.tab.projects}</a>
|
<a class={isActive("/projects", pageUrl)} href="/projects">{mainjson.tab.projects}</a>
|
||||||
</div>
|
</div>
|
||||||
|
<div>
|
||||||
|
<a class={isActive("/about", pageUrl)} href="/about">{mainjson.tab.about}</a>
|
||||||
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<a href="https://blog.etheryo.fr">{mainjson.tab.blog}</a>
|
<a href="https://blog.etheryo.fr">{mainjson.tab.blog}</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
export let name = "John Doe";
|
export let name = "John Doe";
|
||||||
export let pronouns = "";
|
export let pronouns = "";
|
||||||
export let description = "Normal human being I swear";
|
export let description = "Normal human being I swear";
|
||||||
|
export let url = "https://github.com"
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="flex center">
|
<div class="flex center">
|
||||||
|
@ -22,7 +23,7 @@
|
||||||
</div>
|
</div>
|
||||||
<p>{description}</p>
|
<p>{description}</p>
|
||||||
<div class="flex-row flex-end">
|
<div class="flex-row flex-end">
|
||||||
<Button label="Me connaître" />
|
<Button label="Me connaître" action={() => {window.location.href = url;}} />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -6,5 +6,6 @@
|
||||||
"name": "Yohan Boujon",
|
"name": "Yohan Boujon",
|
||||||
"pronouns": "il/lui",
|
"pronouns": "il/lui",
|
||||||
"description": "Informatics and electronics engineer"
|
"description": "Informatics and electronics engineer"
|
||||||
}
|
},
|
||||||
|
"projects":"Mes projets"
|
||||||
}
|
}
|
|
@ -3,6 +3,7 @@
|
||||||
{
|
{
|
||||||
"hub": "Hub",
|
"hub": "Hub",
|
||||||
"projects": "Projets",
|
"projects": "Projets",
|
||||||
|
"about": "À propos",
|
||||||
"blog": "Blog",
|
"blog": "Blog",
|
||||||
"lab": "Labo"
|
"lab": "Labo"
|
||||||
},
|
},
|
||||||
|
|
|
@ -28,5 +28,9 @@
|
||||||
name={hubjson.person.name}
|
name={hubjson.person.name}
|
||||||
pronouns={hubjson.person.pronouns}
|
pronouns={hubjson.person.pronouns}
|
||||||
description={hubjson.person.description}
|
description={hubjson.person.description}
|
||||||
|
url="/about"
|
||||||
/>
|
/>
|
||||||
|
<div class="section">
|
||||||
|
<h1>{hubjson.projects}</h1>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
16
src/routes/about/+page.svelte
Normal file
16
src/routes/about/+page.svelte
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<script>
|
||||||
|
import "$lib/css/base.css";
|
||||||
|
import "$lib/css/main.css";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div class="main-banner">
|
||||||
|
<div class="main-banner-gradient"></div>
|
||||||
|
<div class="main-banner-content">
|
||||||
|
<div
|
||||||
|
class="flex-row center"
|
||||||
|
style="padding-top: 15rem;padding-bottom: 15rem;"
|
||||||
|
>
|
||||||
|
<h1>About</h1>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
Loading…
Add table
Reference in a new issue