From 7b1700abb917fd3d425df9691bba507eaa660d52 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 4 Jan 2021 02:01:43 +0000 Subject: [PATCH] Updates --- App.scss | 40 - App.test.tsx | 9 - App.tsx | 17 - CNAME | 1 - asset-manifest.json | 29 + components/AboutMe.scss | 86 - components/AboutMe.tsx | 177 -- components/Contact.tsx | 7 - components/Footer.scss | 49 - components/Footer.tsx | 41 - components/Header.scss | 89 - components/Header.tsx | 55 - components/Home.scss | 2 - components/Home.tsx | 12 - components/Main.tsx | 16 - components/ProjectGrid.scss | 189 --- components/ProjectGrid.tsx | 265 --- components/Resume.tsx | 7 - cusotmHooks.ts | 33 - favicon.ico | Bin 0 -> 270398 bytes images/codeday-notext-color.svg | 1 - images/codedaysd.png | Bin 32574 -> 0 bytes images/distest.ai | 1429 ----------------- images/foresightsports.png | Bin 6109 -> 0 bytes images/icon_128_cmpk.png | Bin 312436 -> 0 bytes images/personal_site_plan.png | Bin 2205566 -> 0 bytes images/scoresaver.ai | 1402 ---------------- imports.scss | 2 - index.html | 1 + index.scss | 13 - index.tsx | 19 - logo.svg | 1 - logo192.png | Bin 0 -> 15724 bytes logo512.png | Bin 0 -> 44998 bytes manifest.json | 25 + react-app-env.d.ts | 1 - reportWebVitals.ts | 15 - robots.txt | 3 + setupTests.ts | 5 - static/css/2.85610714.chunk.css | 9 + static/css/2.85610714.chunk.css.map | 1 + static/css/main.f31ed6c9.chunk.css | 2 + static/css/main.f31ed6c9.chunk.css.map | 1 + static/js/2.c916e45f.chunk.js | 3 + static/js/2.c916e45f.chunk.js.LICENSE.txt | 76 + static/js/2.c916e45f.chunk.js.map | 1 + static/js/3.388ffdd5.chunk.js | 2 + static/js/3.388ffdd5.chunk.js.map | 1 + static/js/main.8c8906ca.chunk.js | 2 + static/js/main.8c8906ca.chunk.js.map | 1 + static/js/runtime-main.4a8ff0c5.js | 2 + static/js/runtime-main.4a8ff0c5.js.map | 1 + .../media/HashiCorp_Logo_no_text.344aecaa.png | Bin .../media/SanDiego.35f8cc09.svg | 0 .../media/distest.6bf47b83.svg | 0 .../media/scoresaver.3f65e348.svg | 0 56 files changed, 160 insertions(+), 3983 deletions(-) delete mode 100644 App.scss delete mode 100644 App.test.tsx delete mode 100644 App.tsx delete mode 100644 CNAME create mode 100644 asset-manifest.json delete mode 100644 components/AboutMe.scss delete mode 100644 components/AboutMe.tsx delete mode 100644 components/Contact.tsx delete mode 100644 components/Footer.scss delete mode 100644 components/Footer.tsx delete mode 100644 components/Header.scss delete mode 100644 components/Header.tsx delete mode 100644 components/Home.scss delete mode 100644 components/Home.tsx delete mode 100644 components/Main.tsx delete mode 100644 components/ProjectGrid.scss delete mode 100644 components/ProjectGrid.tsx delete mode 100644 components/Resume.tsx delete mode 100644 cusotmHooks.ts create mode 100644 favicon.ico delete mode 100644 images/codeday-notext-color.svg delete mode 100644 images/codedaysd.png delete mode 100644 images/distest.ai delete mode 100644 images/foresightsports.png delete mode 100644 images/icon_128_cmpk.png delete mode 100644 images/personal_site_plan.png delete mode 100644 images/scoresaver.ai delete mode 100644 imports.scss create mode 100644 index.html delete mode 100644 index.scss delete mode 100644 index.tsx delete mode 100644 logo.svg create mode 100644 logo192.png create mode 100644 logo512.png create mode 100644 manifest.json delete mode 100644 react-app-env.d.ts delete mode 100644 reportWebVitals.ts create mode 100644 robots.txt delete mode 100644 setupTests.ts create mode 100644 static/css/2.85610714.chunk.css create mode 100644 static/css/2.85610714.chunk.css.map create mode 100644 static/css/main.f31ed6c9.chunk.css create mode 100644 static/css/main.f31ed6c9.chunk.css.map create mode 100644 static/js/2.c916e45f.chunk.js create mode 100644 static/js/2.c916e45f.chunk.js.LICENSE.txt create mode 100644 static/js/2.c916e45f.chunk.js.map create mode 100644 static/js/3.388ffdd5.chunk.js create mode 100644 static/js/3.388ffdd5.chunk.js.map create mode 100644 static/js/main.8c8906ca.chunk.js create mode 100644 static/js/main.8c8906ca.chunk.js.map create mode 100644 static/js/runtime-main.4a8ff0c5.js create mode 100644 static/js/runtime-main.4a8ff0c5.js.map rename images/HashiCorp_Logo_no_text.png => static/media/HashiCorp_Logo_no_text.344aecaa.png (100%) rename images/SanDiego.svg => static/media/SanDiego.35f8cc09.svg (100%) rename images/distest.svg => static/media/distest.6bf47b83.svg (100%) rename images/scoresaver.svg => static/media/scoresaver.3f65e348.svg (100%) diff --git a/App.scss b/App.scss deleted file mode 100644 index 016ba35..0000000 --- a/App.scss +++ /dev/null @@ -1,40 +0,0 @@ -@import '~antd/dist/antd.css'; - -.App { - text-align: center; -} - -.App-logo { - height: 40vmin; - pointer-events: none; -} - -@media (prefers-reduced-motion: no-preference) { - .App-logo { - animation: App-logo-spin infinite 20s linear; - } -} - -.App-header { - background-color: #282c34; - min-height: 100vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - font-size: calc(10px + 2vmin); - color: white; -} - -.App-link { - color: #61dafb; -} - -@keyframes App-logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } -} diff --git a/App.test.tsx b/App.test.tsx deleted file mode 100644 index 2a68616..0000000 --- a/App.test.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import React from 'react'; -import { render, screen } from '@testing-library/react'; -import App from './App'; - -test('renders learn react link', () => { - render(); - const linkElement = screen.getByText(/learn react/i); - expect(linkElement).toBeInTheDocument(); -}); diff --git a/App.tsx b/App.tsx deleted file mode 100644 index 4f481d3..0000000 --- a/App.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import React from "react"; -import "./App.scss"; -import { Footer } from "./components/Footer"; -import { Header } from "./components/Header"; -import { Main } from "./components/Main"; - -function App() { - return ( -
-
-
-
-
- ); -} - -export default App; diff --git a/CNAME b/CNAME deleted file mode 100644 index 0bcdcaa..0000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -jakecover.me \ No newline at end of file diff --git a/asset-manifest.json b/asset-manifest.json new file mode 100644 index 0000000..68724e0 --- /dev/null +++ b/asset-manifest.json @@ -0,0 +1,29 @@ +{ + "files": { + "main.css": "/static/css/main.f31ed6c9.chunk.css", + "main.js": "/static/js/main.8c8906ca.chunk.js", + "main.js.map": "/static/js/main.8c8906ca.chunk.js.map", + "runtime-main.js": "/static/js/runtime-main.4a8ff0c5.js", + "runtime-main.js.map": "/static/js/runtime-main.4a8ff0c5.js.map", + "static/css/2.85610714.chunk.css": "/static/css/2.85610714.chunk.css", + "static/js/2.c916e45f.chunk.js": "/static/js/2.c916e45f.chunk.js", + "static/js/2.c916e45f.chunk.js.map": "/static/js/2.c916e45f.chunk.js.map", + "static/js/3.388ffdd5.chunk.js": "/static/js/3.388ffdd5.chunk.js", + "static/js/3.388ffdd5.chunk.js.map": "/static/js/3.388ffdd5.chunk.js.map", + "index.html": "/index.html", + "static/css/2.85610714.chunk.css.map": "/static/css/2.85610714.chunk.css.map", + "static/css/main.f31ed6c9.chunk.css.map": "/static/css/main.f31ed6c9.chunk.css.map", + "static/js/2.c916e45f.chunk.js.LICENSE.txt": "/static/js/2.c916e45f.chunk.js.LICENSE.txt", + "static/media/HashiCorp_Logo_no_text.344aecaa.png": "/static/media/HashiCorp_Logo_no_text.344aecaa.png", + "static/media/SanDiego.35f8cc09.svg": "/static/media/SanDiego.35f8cc09.svg", + "static/media/distest.6bf47b83.svg": "/static/media/distest.6bf47b83.svg", + "static/media/scoresaver.3f65e348.svg": "/static/media/scoresaver.3f65e348.svg" + }, + "entrypoints": [ + "static/js/runtime-main.4a8ff0c5.js", + "static/css/2.85610714.chunk.css", + "static/js/2.c916e45f.chunk.js", + "static/css/main.f31ed6c9.chunk.css", + "static/js/main.8c8906ca.chunk.js" + ] +} \ No newline at end of file diff --git a/components/AboutMe.scss b/components/AboutMe.scss deleted file mode 100644 index 26c7127..0000000 --- a/components/AboutMe.scss +++ /dev/null @@ -1,86 +0,0 @@ -#about-me-parent { - margin-left: 10px; - margin-right: 10px; - display: flex; - flex-direction: row; - justify-content: center; - - b { - font-weight: 600; - } - - .about-me-card { - background: #61dafb; - border-radius: 5px; - margin: 0 5px 0; - padding: 10px; - width: fit-content; - } - - #about-me { - background: #61dafb; - border-radius: 5px; - padding: 15px; - width: fit-content; - - #info-parent { - display: flex; - flex-direction: row; - - #specific-info { - flex: 1 1 0; - } - - #fun-info { - flex: 1 1 0; - } - - @media screen and (max-width: 660px) { - flex-direction: column; - } - } - - h1 { - font-family: "Fira Code", monospace; - font-weight: 500; - } - - h2 { - font-family: "Fira Code", monospace; - line-height: normal; - margin-bottom: 0; - font-weight: 400; - - text-align: left; - } - - p { - font-family: "Montserrat", sans-serif; - font-size: 16px; - margin: 0; - } - - ul { - text-align: left; - padding-left: 40px; - margin-bottom: 0; - } - - li { - font-family: "Montserrat", sans-serif; - font-size: 18px; - list-style-type: symbols("+"); - list-style-position: inside; - - } - } - -} - -button { - background: none!important; - border: none; - padding: 0!important; - color: #1890ff; - cursor: pointer; -} diff --git a/components/AboutMe.tsx b/components/AboutMe.tsx deleted file mode 100644 index 4370975..0000000 --- a/components/AboutMe.tsx +++ /dev/null @@ -1,177 +0,0 @@ -import "./AboutMe.scss"; -import { Link } from "react-router-dom"; -import { Tooltip } from "antd"; -import { useState, useEffect } from "react"; -import axios from "axios"; - -const TelegramOutlinedSvg = () => { - return ( - - - - ); -}; - -const LastFmLi = () => { - const [nowPlayingSong, setNowPlayingSong] = useState("nothing"); - const [nowPlayingArtist, setNowPlayingArtist] = useState("no-one"); - - const updateNowPlaying = async () => { - try { - const songData = await axios.get( - "https://jsonplaceholder.typicode.com/posts" - ); - - console.log(songData.data); - } catch (err) { - console.error(err); - } - }; - - useEffect(() => { - updateNowPlaying(); - - const interval = setInterval(updateNowPlaying, 10000); - - return () => { - clearInterval(interval); - }; - }, []); - return
  • listening to ____ by ____
  • ; -}; - -const Age = () => { - const [age, setAge] = useState( - Math.round((new Date().getTime() - 1021004428000) / 1000) - ); - - const UpdateAge = () => { - setAge(Math.round((new Date().getTime() - 1021004428000) / 1000)); - }; - - useEffect(() => { - UpdateAge(); - - const interval = setInterval(UpdateAge, 1000); - - return () => { - clearInterval(interval); - }; - }, []); - - return ( -
  • - {age} seconds old{" "} -
  • - ); -}; - -export const AboutMe = () => { - const EmailHandler = () => { - const email = "Y29udGFjdEBqYWtlY292ZXIubWU="; - window.prompt("Thanks for being a human! Here's my email:", atob(email)); - }; - - return ( -
    -
    -

    Hi! I'm Jake!

    - -
    -
    -

    A bit about me:

    - -
      -
    • - Name: Jake Cover -
    • -
    • Occupation: Student
    • -
    • Location: Southern California
    • -
    • - Projects:{" "} - -
    • -
    • - Resume: Over here -
    • -
    • - Find Me: - -
    • -
    -
    -
    -

    I'm:

    -
      - - -
    • - doing (general stuff - in class, projects, sleeping, games) -
    • -
    -
    -
    -
    -
    - ); -}; diff --git a/components/Contact.tsx b/components/Contact.tsx deleted file mode 100644 index 73a5d07..0000000 --- a/components/Contact.tsx +++ /dev/null @@ -1,7 +0,0 @@ -export const Contact = () => { - return ( -
    -

    Contact

    -
    - ) -} diff --git a/components/Footer.scss b/components/Footer.scss deleted file mode 100644 index 8cdc4a2..0000000 --- a/components/Footer.scss +++ /dev/null @@ -1,49 +0,0 @@ -.site-footer { - background: darkgrey; - margin: 10px; - border-radius: 5px; - - h2 { - font-family: "Fira Code", monospace; - margin: 0; - } - - p { - font-family: "Montserrat", sans-serif; - - @media screen and (min-width: 900px) { - font-size: 16px; - } - } -} - -.footer-grid { - display: flex; - justify-content: space-evenly; - - .blurb { - flex: 9; - } - - .links-container { - flex: 4; - } - - .footer-links { - padding-left: 0; - margin: 0; - - columns: 100px 2; - - li { - list-style: none; - } - - a { - //color: black; - font-family: "Montserrat", sans-serif; - text-decoration: underline; - } - } - -} diff --git a/components/Footer.tsx b/components/Footer.tsx deleted file mode 100644 index 4ee8cca..0000000 --- a/components/Footer.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import "./Footer.scss" -import { Link } from "react-router-dom"; - - -export const Footer = () => { - return ( -
    -
    -
    -

    - Made with ☕ and ❤️ by Jake Cover, a CS student who really needs to find something - witty and interesting to put here soon. Feel free to reach out! -
    - Checklist Icon by Arthur Shlain from the Noun Project -

    -
    -
    -

    Links and Stuff

    -
      -
    • - Home -
    • -
    • - Contact -
    • -
    • - Resume -
    • -
    • - GitHub -
    • -
    -
    -
    -
    -
    - Copyright © 2020 All Rights Reserved by Jake Cover -
    -
    - ); -}; diff --git a/components/Header.scss b/components/Header.scss deleted file mode 100644 index afefc08..0000000 --- a/components/Header.scss +++ /dev/null @@ -1,89 +0,0 @@ -header { - display: flex; - flex-direction: row; - - margin: 10px; - padding: 10px; - border-radius: 5px; - background: #66bb6a; - font-family: "Fira Code", monospace; - - h1 { - font-weight: 600; - margin: 0 0 0 5px; - } - - .headerLinks { - display: flex; - flex-direction: row; - align-content: center; - margin-left: auto; - - h2 { - margin: 0; - border-radius: 5px; - line-height: normal; - - &:hover { - background: #ddd; - } - - &.active { - background-color: #4CAF50; - color: white; - } - } - - h2:last-of-type { - margin-right: 5px; - } - } - - /* Hide the link that should open and close the topnav on small screens */ - .icon { - display: none; - } - - @media screen and (max-width: 660px) { - h2 { - display: none; - } - - .icon { - margin-left: auto; - display: block; - position: absolute; - top: 19px; - right: 24px; - font-size: 30px; - border: none; - } - - .headerLinks { - visibility: hidden; - transition: visibility 0s, opacity 0.5s linear; - } - } - - @media screen and (max-width: 660px) { - &.responsive { - display: block; - - .headerLinks { - visibility: visible; - display: flex; - flex-direction: column; - align-items: flex-start; - } - - h1 { - text-align: left; - } - - h2 { - display: block; - margin-left: 5px; - } - } - } -} diff --git a/components/Header.tsx b/components/Header.tsx deleted file mode 100644 index e4e9bdb..0000000 --- a/components/Header.tsx +++ /dev/null @@ -1,55 +0,0 @@ -import React from "react"; -import "./Header.scss"; -import { Button, Space } from "antd"; -import { Link } from "react-router-dom"; -import { MenuOutlined } from "@ant-design/icons"; - -export const Header = () => { - function showHideHamburger() { - var x = document.getElementById("myHeader"); - // @ts-ignore - if (x.className === "header") { - // @ts-ignore - x.className += " responsive"; - } else { - // @ts-ignore - x.className = "header"; - } - } - - return ( -
    - -

    Jake Cover

    - - - - - -

    Home

    - - - -

    Contact

    - - -

    Resume

    - - -

    GitHub

    -
    -
    -
    - ); -}; diff --git a/components/Home.scss b/components/Home.scss deleted file mode 100644 index 139597f..0000000 --- a/components/Home.scss +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/components/Home.tsx b/components/Home.tsx deleted file mode 100644 index 6a1b872..0000000 --- a/components/Home.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import "./Home.scss"; -import { ProjectGrid } from "./ProjectGrid"; -import {AboutMe} from "./AboutMe"; - -export const Home = () => { - return ( -
    - - -
    - ); -}; diff --git a/components/Main.tsx b/components/Main.tsx deleted file mode 100644 index 3592fa3..0000000 --- a/components/Main.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { Route, Switch } from "react-router-dom"; -import { Contact } from "./Contact"; -import { Home } from "./Home"; -import { Resume } from "./Resume"; - -export const Main = () => { - return ( -
    - - - - - -
    - ); -}; diff --git a/components/ProjectGrid.scss b/components/ProjectGrid.scss deleted file mode 100644 index f54645c..0000000 --- a/components/ProjectGrid.scss +++ /dev/null @@ -1,189 +0,0 @@ -@import "~include-media/dist/_include-media.scss"; - -$breakpoints: (x-small: 400px, small: 660px, medium: 900px, large: 1300px, x-large: 1560px); - -// Override Sass min() -@function min($numbers...) { - @return m#{i}n(#{$numbers}); -} - -// Override Sass max() -@function max($numbers...) { - @return m#{a}x(#{$numbers}); -} - -#project-grid-parent { - margin: 10px; - background: #FFD43B; - border-radius: 5px; - - & > #project-header { - background: grey; - border-radius: 5px 5px 0 0; - margin-bottom: 2px; - - padding: 5px; - - h2 { - margin-bottom: 0; - font-family: "Fira Code", monospace; - font-size: 24px; - } - - p { - margin: 0 0 3px; - font-family: "Montserrat", sans-serif; - font-size: 18px; - } - - } -} - - -#project-grid { - - //padding: 10px; - - @include media("<=x-small") { - .GridSizer, .OneWide, .FourByOne { - width: 100%; - } - } - - @include media(">x-small", "=small", "=medium", "=large", "=x-large") { - .GridSizer, .OneWide { - width: 300px; - } - .FourByOne { - width: 900px; - } - } -} - -.GridElement { - padding: 5px; - - .GridElementInternal { - padding: 9px; - border-radius: 5px; - background: lightcyan; - - box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15); - transition: box-shadow 0.3s ease-in-out; - } - - .GridElementInternal:hover { - box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); - } - - h2 { - font-family: "Fira Code", monospace; - font-weight: 400; - margin-bottom: 0px; - line-height: normal; - } - - h3 { - line-height: normal; - color: darkgrey; - margin-bottom: 3px; - } - - p { - font-family: "Montserrat", sans-serif; - color: black; - margin-bottom: 0; - } -} - -.OneWide { - display: flex; - flex-direction: column; - width: available; - - img { - width: 100%; - margin-bottom: 5px; - } -} - -.FourByOne { - .GridElementInternal { - display: flex; - align-items: center; - - .image { - flex: 1; - - img { - width: 100%; - max-width: 100%; - } - } - - .description { - min-width: 20ch; - width: 30ch; - } - - @include media(">small") { - flex-direction: row; - - } - @include media("<=small") { - flex-direction: column; - .description { - width: 95%; - } - } - } -} - -.LinkIcon { - position: absolute; - right: 12px; - top: 12px; - font-size: 24px; - color: black; - - background: rgba(224, 255, 255, 0.7); - border-radius: 5px; -} diff --git a/components/ProjectGrid.tsx b/components/ProjectGrid.tsx deleted file mode 100644 index bd31c5f..0000000 --- a/components/ProjectGrid.tsx +++ /dev/null @@ -1,265 +0,0 @@ -/** - * TODO: - * - For things that can't be linked, use to signal that clicking will open a modal https://ant.design/components/modal/ - * in order to give a more complex writeup and some pictures - * - Tooltip for modal and linkable items, possibly which displays a modal with an example card with tooltips or explanations - * - Footer - * - Responsive top bar - * - */ - -import "./ProjectGrid.scss"; -import Masonry from "masonry-layout"; -import { useEffect } from "react"; -import {LinkOutlined} from "@ant-design/icons"; -import CodeDaySD from "../images/SanDiego.svg"; -import Foresight from "../images/foresightsports.png"; -import Distest from "../images/distest.svg"; -import Scoresaver from "../images/scoresaver.svg"; -import Hashicorp from "../images/HashiCorp_Logo_no_text.png"; - - -type GridElementImageProps = { - image_url: string; - image_alt: string; - title: string; - text: string; - link?: string; - org?: string; -}; - -type GridElementProps = { - title: string; - text: string; - link?: string; - org?: string; -}; - -const OneWide = ({ title, text, link, org }: GridElementProps) => { - if (link === undefined) { - return ( -
    -
    -
    -

    {title}

    - {org &&

    {org}

    } -
    -
    -

    {text}

    -
    -
    -
    - ); - } - return ( - -
    -
    -

    {title}

    - {org &&

    {org}

    } - -
    -
    -

    {text}

    -
    -
    -
    - ); -}; - -const OneWidePic = ({ - image_url, - image_alt, - title, - text, - link, - org, -}: GridElementImageProps) => { - if (link === undefined) { - return ( -
    -
    -
    - {image_alt} -
    -
    -

    {title}

    - {org &&

    {org}

    } - -

    {text}

    -
    -
    -
    - ); - } - return ( - -
    -
    - {image_alt} - -
    -
    -

    {title}

    - {org &&

    {org}

    } -

    {text}

    -
    -
    -
    - ); -}; - -const FourByOneGridElement = ({ - image_url, - image_alt, - title, - text, - link, - org, -}: GridElementImageProps) => { - if (link === undefined) { - return ( -
    -
    -
    - {image_alt} -
    -
    -

    {title}

    - {org &&

    {org}

    } -

    {text}

    -
    -
    -
    - ); - } - return ( - -
    -
    - {image_alt} - -
    -
    -

    {title}

    - {org &&

    {org}

    } -

    {text}

    -
    -
    -
    - ); -}; - -export const ProjectGrid = () => { - useEffect(() => { - var elem = document.querySelector("#project-grid"); - - // @ts-ignore - var msnry = new Masonry(elem, { - itemSelector: ".GridElement", - gutter: 0, - columnWidth: ".GridSizer", - percentPosition: true, - }); - }); - - return ( -
    -
    -
    -

    </> My Projects

    -

    - A gallery of some of my most interesting projects. Look for , click those projects for more information! -

    -
    -
    - -
    - - - - - - - - - - -
    -
    -
    - ); -}; diff --git a/components/Resume.tsx b/components/Resume.tsx deleted file mode 100644 index 4dbaf05..0000000 --- a/components/Resume.tsx +++ /dev/null @@ -1,7 +0,0 @@ -export const Resume = () => { - return ( -
    -

    Resume

    -
    -) -} diff --git a/cusotmHooks.ts b/cusotmHooks.ts deleted file mode 100644 index 6c9865e..0000000 --- a/cusotmHooks.ts +++ /dev/null @@ -1,33 +0,0 @@ -import {useEffect, useState} from "react"; - - -export function useWindowSize() { - // Initialize state with undefined width/height so server and client renders match - // Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/ - const [windowSize, setWindowSize] = useState({ - width: 0, - height: 0, - }); - - useEffect(() => { - // Handler to call on window resize - function handleResize() { - // Set window width/height to state - setWindowSize({ - width: window.innerWidth, - height: window.innerHeight, - }); - } - - // Add event listener - window.addEventListener("resize", handleResize); - - // Call handler right away so state gets updated with initial window size - handleResize(); - - // Remove event listener on cleanup - return () => window.removeEventListener("resize", handleResize); - }, []); // Empty array ensures that effect is only run on mount - - return windowSize; -} diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..09e45fadccbfada5eefeadb1e705e91f4bf1c60d GIT binary patch literal 270398 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�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 \ No newline at end of file diff --git a/images/codedaysd.png b/images/codedaysd.png deleted file mode 100644 index 0b9d8ea2678b0fc2d3781505f6ad39d635a3f58b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32574 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