diff --git a/src/data/projects/ad-astra.ts b/src/data/projects/ad-astra.ts index c502cca..40cc12d 100644 --- a/src/data/projects/ad-astra.ts +++ b/src/data/projects/ad-astra.ts @@ -1,11 +1,10 @@ -import adAstraWebP from '../media/ad_astra.jpg?format=webp'; -import adAstraJpeg from '../media/ad_astra.jpg?format=jpg'; -import adAstraMp4 from '../media/mp4/ad_astra.mp4'; -import adAstraWebM from '../media/webm/ad_astra.webm'; - -import { GitHub } from '../shared'; import { Video } from '../../page/basics/video/video'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import adAstraJpeg from '../media/ad_astra.jpg?format=jpg'; +import adAstraWebP from '../media/ad_astra.jpg?format=webp'; +import adAstraMp4 from '../media/mp4/ad_astra.mp4'; +import adAstraWebM from '../media/webm/ad_astra.webm'; +import { GitHub } from '../shared'; export const adAstraTimelineElement: TimelineElementParameters = { title: `Gaming on an ATtiny85`, diff --git a/src/data/projects/city-simulation.ts b/src/data/projects/city-simulation.ts index 603e7aa..7a65382 100644 --- a/src/data/projects/city-simulation.ts +++ b/src/data/projects/city-simulation.ts @@ -1,10 +1,9 @@ -import citySimulationPosterWebP from '../media/simulation.jpg?format=webp'; -import citySimulationPosterJpeg from '../media/simulation.jpg?format=jpg'; -import citySimulationMp4 from '../media/mp4/simulation.mp4'; -import citySimulationWebM from '../media/webm/simulation.webm'; - import { Video } from '../../page/basics/video/video'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import citySimulationMp4 from '../media/mp4/simulation.mp4'; +import citySimulationPosterJpeg from '../media/simulation.jpg?format=jpg'; +import citySimulationPosterWebP from '../media/simulation.jpg?format=webp'; +import citySimulationWebM from '../media/webm/simulation.webm'; export const citySimulationTimelineElement: TimelineElementParameters = { title: `City simulation`, diff --git a/src/data/projects/colors.ts b/src/data/projects/colors.ts index 7a3ea92..dfebd38 100644 --- a/src/data/projects/colors.ts +++ b/src/data/projects/colors.ts @@ -1,8 +1,7 @@ -import colourJpeg from '../media/color.jpg?format=jpg'; -import colourWebP from '../media/color.jpg?format=webp'; - import { Image } from '../../page/basics/image/image'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import colourJpeg from '../media/color.jpg?format=jpg'; +import colourWebP from '../media/color.jpg?format=webp'; export const colorsTimelineElement: TimelineElementParameters = { title: `Photo colour grader`, diff --git a/src/data/projects/forex.ts b/src/data/projects/forex.ts index ebb9df2..d32eec8 100644 --- a/src/data/projects/forex.ts +++ b/src/data/projects/forex.ts @@ -1,10 +1,9 @@ -import forexPosterWebP from '../media/forex.jpg?format=webp'; -import forexPosterJpeg from '../media/forex.jpg?format=jpg'; -import forexMp4 from '../media/mp4/forex.mp4'; -import forexWebM from '../media/webm/forex.webm'; - import { Video } from '../../page/basics/video/video'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import forexPosterJpeg from '../media/forex.jpg?format=jpg'; +import forexPosterWebP from '../media/forex.jpg?format=webp'; +import forexMp4 from '../media/mp4/forex.mp4'; +import forexWebM from '../media/webm/forex.webm'; export const forexTimelineElement: TimelineElementParameters = { title: `Predicting foreign exchange rates`, diff --git a/src/data/projects/leds.ts b/src/data/projects/leds.ts index 89cc29a..b50bb1c 100644 --- a/src/data/projects/leds.ts +++ b/src/data/projects/leds.ts @@ -1,10 +1,9 @@ -import ledPosterWebP from '../media/led.jpg?format=webp'; -import ledPosterJpeg from '../media/led.jpg?format=jpg'; -import ledMp4 from '../media/mp4/led.mp4'; -import ledWebM from '../media/webm/led.webm'; - import { Video } from '../../page/basics/video/video'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import ledPosterJpeg from '../media/led.jpg?format=jpg'; +import ledPosterWebP from '../media/led.jpg?format=webp'; +import ledMp4 from '../media/mp4/led.mp4'; +import ledWebM from '../media/webm/led.webm'; export const ledsTimelineElement: TimelineElementParameters = { title: `Lights synchronised to music`, diff --git a/src/data/projects/my-notes.ts b/src/data/projects/my-notes.ts index 7cbe2c3..e5279a8 100644 --- a/src/data/projects/my-notes.ts +++ b/src/data/projects/my-notes.ts @@ -1,9 +1,8 @@ +import { Image } from '../../page/basics/image/image'; +import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; import myNotesJpeg from '../media/my-notes.png?format=jpg'; import myNotesWebP from '../media/my-notes.png?format=webp'; - -import { Image } from '../../page/basics/image/image'; import { GitHub } from '../shared'; -import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; export const myNotesTimelineElement: TimelineElementParameters = { title: `My Notes`, diff --git a/src/data/projects/nuclear-editor.ts b/src/data/projects/nuclear-editor.ts index 4dd7cc3..02e5584 100644 --- a/src/data/projects/nuclear-editor.ts +++ b/src/data/projects/nuclear-editor.ts @@ -1,8 +1,7 @@ -import processSimulatorInputJpeg from '../media/process-simulator-input.jpg?format=jpg'; -import processSimulatorInputWebP from '../media/process-simulator-input.jpg?format=webp'; - import { Image } from '../../page/basics/image/image'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import processSimulatorInputJpeg from '../media/process-simulator-input.jpg?format=jpg'; +import processSimulatorInputWebP from '../media/process-simulator-input.jpg?format=webp'; export const nuclearEditorTimelineElement: TimelineElementParameters = { title: `Graph editing application`, diff --git a/src/data/projects/nuclear.ts b/src/data/projects/nuclear.ts index 69eebbf..39a65ee 100644 --- a/src/data/projects/nuclear.ts +++ b/src/data/projects/nuclear.ts @@ -1,8 +1,7 @@ -import processSimulatorJpeg from '../media/process-simulator.jpg?format=jpg'; -import processSimulatorWebP from '../media/process-simulator.jpg?format=webp'; - import { Image } from '../../page/basics/image/image'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import processSimulatorJpeg from '../media/process-simulator.jpg?format=jpg'; +import processSimulatorWebP from '../media/process-simulator.jpg?format=webp'; export const nuclearTimelineElement: TimelineElementParameters = { title: `Simulating the cooling system of a nuclear facility`, diff --git a/src/data/projects/photos.ts b/src/data/projects/photos.ts index 4258043..aff0ffc 100644 --- a/src/data/projects/photos.ts +++ b/src/data/projects/photos.ts @@ -1,9 +1,8 @@ +import { Image } from '../../page/basics/image/image'; +import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; import photosJpeg from '../media/photos.jpg?format=jpg'; import photosWebP from '../media/photos.jpg?format=webp'; - -import { Image } from '../../page/basics/image/image'; import { Open } from '../shared'; -import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; export const photosTimelineElement: TimelineElementParameters = { title: `Photos`, diff --git a/src/data/projects/platform-game.ts b/src/data/projects/platform-game.ts index b3c7ea8..da91c4d 100644 --- a/src/data/projects/platform-game.ts +++ b/src/data/projects/platform-game.ts @@ -1,10 +1,9 @@ -import platformPosterWebP from '../media/platform.png?format=webp'; -import platformPosterJpeg from '../media/platform.png?format=jpg'; -import platformMp4 from '../media/mp4/platform.mp4'; -import platformWebM from '../media/webm/platform.webm'; - import { Video } from '../../page/basics/video/video'; import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import platformMp4 from '../media/mp4/platform.mp4'; +import platformPosterJpeg from '../media/platform.png?format=jpg'; +import platformPosterWebP from '../media/platform.png?format=webp'; +import platformWebM from '../media/webm/platform.webm'; export const platformGameTimelineElement: TimelineElementParameters = { title: `Platform game`, diff --git a/src/data/projects/sdf2d.ts b/src/data/projects/sdf2d.ts index c8f72e0..2512841 100644 --- a/src/data/projects/sdf2d.ts +++ b/src/data/projects/sdf2d.ts @@ -1,9 +1,8 @@ +import { Preview } from '../../page/basics/preview/preview'; +import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; import sdf2dJpeg from '../media/sdf2d.png?format=jpg'; import sdf2dWebP from '../media/sdf2d.png?format=webp'; - -import { Preview } from '../../page/basics/preview/preview'; -import { Open, NPM, Youtube } from '../shared'; -import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import { NPM, Open, Youtube } from '../shared'; export const sdf2dTimelineElement: TimelineElementParameters = { title: `2D ray tracing`, diff --git a/src/data/projects/towers.ts b/src/data/projects/towers.ts index 909c659..f195157 100644 --- a/src/data/projects/towers.ts +++ b/src/data/projects/towers.ts @@ -1,9 +1,8 @@ +import { Image } from '../../page/basics/image/image'; +import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; import towersJpeg from '../media/towers.png?format=jpg'; import towersWebP from '../media/towers.png?format=webp'; - -import { Image } from '../../page/basics/image/image'; -import { Open, GitHub } from '../shared'; -import { TimelineElementParameters } from '../../page/timeline/timeline-element/timeline-element'; +import { GitHub, Open } from '../shared'; export const towersTimelineElement: TimelineElementParameters = { title: `Towers tracking app`, diff --git a/src/page/background/background.html.ts b/src/page/background/background.html.ts index 1205e18..ba45421 100644 --- a/src/page/background/background.html.ts +++ b/src/page/background/background.html.ts @@ -1,5 +1,5 @@ -import './background.scss'; import { html } from '../../types/html'; +import './background.scss'; export const generate = (): html => `
diff --git a/src/page/background/background.ts b/src/page/background/background.ts index 418913f..53b1b5a 100644 --- a/src/page/background/background.ts +++ b/src/page/background/background.ts @@ -1,12 +1,10 @@ -import { PageElement } from '../page-element'; -import { generate } from './background.html'; - import { createElement } from '../../helper/create-element'; -import { sum } from '../../helper/sum'; import { getHeight } from '../../helper/get-height'; - import { mix } from '../../helper/mix'; import { Random } from '../../helper/random'; +import { sum } from '../../helper/sum'; +import { PageElement } from '../page-element'; +import { generate } from './background.html'; export class PageBackground extends PageElement { private static readonly perspective = 5; diff --git a/src/page/basics/image-anchor/image-anchor.html.ts b/src/page/basics/image-anchor/image-anchor.html.ts index 1a58ef3..0dbc327 100644 --- a/src/page/basics/image-anchor/image-anchor.html.ts +++ b/src/page/basics/image-anchor/image-anchor.html.ts @@ -1,6 +1,6 @@ -import './image-anchor.scss'; import { html } from '../../../types/html'; import { url } from '../../../types/url'; +import './image-anchor.scss'; export const generate = ({ href, diff --git a/src/page/basics/image-anchor/image-anchor.ts b/src/page/basics/image-anchor/image-anchor.ts index b0c3034..343e828 100644 --- a/src/page/basics/image-anchor/image-anchor.ts +++ b/src/page/basics/image-anchor/image-anchor.ts @@ -1,6 +1,6 @@ -import { PageElement } from '../../page-element'; import { createElement } from '../../../helper/create-element'; import { url } from '../../../types/url'; +import { PageElement } from '../../page-element'; import { generate } from './image-anchor.html'; export const ImageAnchorFactory = ( diff --git a/src/page/basics/image/image.html.ts b/src/page/basics/image/image.html.ts index 0766842..da92916 100644 --- a/src/page/basics/image/image.html.ts +++ b/src/page/basics/image/image.html.ts @@ -1,7 +1,7 @@ -import './image.scss'; import { last } from '../../../helper/last'; -import { ResponsiveImage } from '../../../types/responsive-image'; import { html } from '../../../types/html'; +import { ResponsiveImage } from '../../../types/responsive-image'; +import './image.scss'; export const generate = ({ sizes, diff --git a/src/page/basics/image/image.ts b/src/page/basics/image/image.ts index d0f17b1..2a02206 100644 --- a/src/page/basics/image/image.ts +++ b/src/page/basics/image/image.ts @@ -1,8 +1,8 @@ -import { PageElement } from '../../page-element'; import { createElement } from '../../../helper/create-element'; -import { generate } from './image.html'; import { last } from '../../../helper/last'; import { ResponsiveImage } from '../../../types/responsive-image'; +import { PageElement } from '../../page-element'; +import { generate } from './image.html'; export class Image extends PageElement { private static readonly imageScreenRatio = 0.8; diff --git a/src/page/basics/preview/preview.html.ts b/src/page/basics/preview/preview.html.ts index 12bb48a..9519931 100644 --- a/src/page/basics/preview/preview.html.ts +++ b/src/page/basics/preview/preview.html.ts @@ -1,7 +1,7 @@ -import './preview.scss'; -import play from '../../../../static/icons/play-button.svg'; import loading from '../../../../static/icons/loading.svg'; +import play from '../../../../static/icons/play-button.svg'; import { html } from '../../../types/html'; +import './preview.scss'; export const generate = ({ alt }: { alt: string }): html => `
diff --git a/src/page/basics/preview/preview.ts b/src/page/basics/preview/preview.ts index 7e54e5d..a846dd0 100644 --- a/src/page/basics/preview/preview.ts +++ b/src/page/basics/preview/preview.ts @@ -1,8 +1,8 @@ -import { PageElement } from '../../page-element'; import { createElement } from '../../../helper/create-element'; -import { generate } from './preview.html'; -import { Image } from '../image/image'; import { ResponsiveImage } from '../../../types/responsive-image'; +import { PageElement } from '../../page-element'; +import { Image } from '../image/image'; +import { generate } from './preview.html'; export class Preview extends PageElement { public constructor( diff --git a/src/page/basics/video/video.html.ts b/src/page/basics/video/video.html.ts index 74a155e..8fe102b 100644 --- a/src/page/basics/video/video.html.ts +++ b/src/page/basics/video/video.html.ts @@ -1,10 +1,8 @@ -import './video.scss'; - import loading from '../../../../static/icons/loading.svg'; - -import { html } from '../../../types/html'; import play from '../../../../static/icons/play-button.svg'; +import { html } from '../../../types/html'; import { VideoParameters } from './video'; +import './video.scss'; export const generate = ({ webm, diff --git a/src/page/basics/video/video.ts b/src/page/basics/video/video.ts index d3600a7..1230b31 100644 --- a/src/page/basics/video/video.ts +++ b/src/page/basics/video/video.ts @@ -1,9 +1,9 @@ -import { PageElement } from '../../page-element'; import { createElement } from '../../../helper/create-element'; -import { generate } from './video.html'; -import { Image } from '../image/image'; -import { url } from '../../../types/url'; import { ResponsiveImage } from '../../../types/responsive-image'; +import { url } from '../../../types/url'; +import { PageElement } from '../../page-element'; +import { Image } from '../image/image'; +import { generate } from './video.html'; export interface VideoParameters { mp4: url; diff --git a/src/page/content/content.html.ts b/src/page/content/content.html.ts index bfb1054..d295767 100644 --- a/src/page/content/content.html.ts +++ b/src/page/content/content.html.ts @@ -1,5 +1,5 @@ -import './content.scss'; import { html } from '../../types/html'; +import './content.scss'; export const generate = (): html => `
diff --git a/src/page/footer/footer.html.ts b/src/page/footer/footer.html.ts index e50e658..e81f94c 100644 --- a/src/page/footer/footer.html.ts +++ b/src/page/footer/footer.html.ts @@ -1,9 +1,9 @@ -import './footer.scss'; import cvIcon from '../../../static/icons/cv.svg'; import emailIcon from '../../../static/icons/email.svg'; import linkedinIcon from '../../../static/icons/linkedin.svg'; import { html } from '../../types/html'; import { FooterParameters } from './footer'; +import './footer.scss'; export const generate = ({ title, diff --git a/src/page/footer/footer.ts b/src/page/footer/footer.ts index 7609cd4..63d69ef 100644 --- a/src/page/footer/footer.ts +++ b/src/page/footer/footer.ts @@ -1,7 +1,7 @@ -import { PageElement } from '../page-element'; -import { generate } from './footer.html'; import { createElement } from '../../helper/create-element'; import { url } from '../../types/url'; +import { PageElement } from '../page-element'; +import { generate } from './footer.html'; export interface FooterParameters { title: string; diff --git a/src/page/header/header.html.ts b/src/page/header/header.html.ts index 8fd1c84..0237ff6 100644 --- a/src/page/header/header.html.ts +++ b/src/page/header/header.html.ts @@ -1,6 +1,5 @@ -import './header.scss'; - import { html } from '../../types/html'; +import './header.scss'; export const generate = (name: string): html => `
diff --git a/src/page/header/header.ts b/src/page/header/header.ts index 26ef73f..ed3854a 100644 --- a/src/page/header/header.ts +++ b/src/page/header/header.ts @@ -1,10 +1,9 @@ -import { PageContent } from '../content/content'; - -import { generate } from './header.html'; import { createElement } from '../../helper/create-element'; -import { PageThemeSwitcher } from '../theme-switcher/theme-switcher'; -import { PageElement } from '../page-element'; import { Image } from '../basics/image/image'; +import { PageContent } from '../content/content'; +import { PageElement } from '../page-element'; +import { PageThemeSwitcher } from '../theme-switcher/theme-switcher'; +import { generate } from './header.html'; export class PageHeader extends PageElement { public constructor(header: { name: string; photo: Image; about: Array }) { diff --git a/src/page/image-viewer/image-viewer.html.ts b/src/page/image-viewer/image-viewer.html.ts index 7cb4adc..6e275f7 100644 --- a/src/page/image-viewer/image-viewer.html.ts +++ b/src/page/image-viewer/image-viewer.html.ts @@ -1,7 +1,6 @@ import cancel from '../../../static/icons/cancel.svg'; - -import './image-viewer.scss'; import { html } from '../../types/html'; +import './image-viewer.scss'; export const generate = (): html => `
diff --git a/src/page/main/main.html.ts b/src/page/main/main.html.ts index 664e0f0..72540b1 100644 --- a/src/page/main/main.html.ts +++ b/src/page/main/main.html.ts @@ -1,5 +1,5 @@ -import './main.scss'; import { html } from '../../types/html'; +import './main.scss'; export const generate = (): html => `
diff --git a/src/page/main/main.ts b/src/page/main/main.ts index e270d71..768e478 100644 --- a/src/page/main/main.ts +++ b/src/page/main/main.ts @@ -1,6 +1,6 @@ +import { createElement } from '../../helper/create-element'; import { PageElement } from '../page-element'; import { generate } from './main.html'; -import { createElement } from '../../helper/create-element'; export class Main extends PageElement { constructor(...children: Array) { diff --git a/src/page/page-element.ts b/src/page/page-element.ts index 6fdba2f..0dc303b 100644 --- a/src/page/page-element.ts +++ b/src/page/page-element.ts @@ -5,7 +5,7 @@ export abstract class PageElement { ) {} // eslint-disable-next-line @typescript-eslint/no-unused-vars - protected setParent(parent?: PageElement): void { + protected setParent(parent?: PageElement | null): void { this.children.forEach((c) => c.setParent(this)); } diff --git a/src/page/theme-switcher/theme-switcher.html.ts b/src/page/theme-switcher/theme-switcher.html.ts index 292ea9e..653980b 100644 --- a/src/page/theme-switcher/theme-switcher.html.ts +++ b/src/page/theme-switcher/theme-switcher.html.ts @@ -1,5 +1,5 @@ -import './theme-switcher.scss'; import { html } from '../../types/html'; +import './theme-switcher.scss'; export const generate = (): html => ` diff --git a/src/page/theme-switcher/theme-switcher.ts b/src/page/theme-switcher/theme-switcher.ts index 54e03fa..65a7eed 100644 --- a/src/page/theme-switcher/theme-switcher.ts +++ b/src/page/theme-switcher/theme-switcher.ts @@ -1,12 +1,12 @@ -import { PageElement } from '../page-element'; import { createElement } from '../../helper/create-element'; -import { generate } from './theme-switcher.html'; +import { turnOffAnimations, turnOnAnimations } from '../../style/animations/animations'; import { isSystemLevelDarkModeEnabled, turnOnDarkMode, turnOnLightMode, } from '../../style/dark-mode/dark-mode'; -import { turnOffAnimations, turnOnAnimations } from '../../style/animations/animations'; +import { PageElement } from '../page-element'; +import { generate } from './theme-switcher.html'; export class PageThemeSwitcher extends PageElement { private static readonly localStorageKey = 'dark-mode'; diff --git a/src/page/timeline/timeline-element/timeline-element.html.ts b/src/page/timeline/timeline-element/timeline-element.html.ts index 5534dc5..1c36441 100644 --- a/src/page/timeline/timeline-element/timeline-element.html.ts +++ b/src/page/timeline/timeline-element/timeline-element.html.ts @@ -1,8 +1,8 @@ import info from '../../../../static/icons/info.svg'; -import './timeline-element.scss'; +import { titleToFragment } from '../../../helper/title-to-fragment'; import { html } from '../../../types/html'; import { TimelineElementParameters } from './timeline-element'; -import { titleToFragment } from '../../../helper/title-to-fragment'; +import './timeline-element.scss'; export const generate = ( { date, title, description, more }: TimelineElementParameters, diff --git a/src/page/timeline/timeline-element/timeline-element.ts b/src/page/timeline/timeline-element/timeline-element.ts index 74277fb..78555ba 100644 --- a/src/page/timeline/timeline-element/timeline-element.ts +++ b/src/page/timeline/timeline-element/timeline-element.ts @@ -1,10 +1,10 @@ +import { createElement } from '../../../helper/create-element'; +import { Image } from '../../basics/image/image'; +import { Preview } from '../../basics/preview/preview'; +import { Video } from '../../basics/video/video'; import { PageContent } from '../../content/content'; import { PageElement } from '../../page-element'; import { generate } from './timeline-element.html'; -import { createElement } from '../../../helper/create-element'; -import { Video } from '../../basics/video/video'; -import { Image } from '../../basics/image/image'; -import { Preview } from '../../basics/preview/preview'; export interface TimelineElementParameters { date: string; diff --git a/src/page/timeline/timeline.html.ts b/src/page/timeline/timeline.html.ts index 2ca3371..dae1347 100644 --- a/src/page/timeline/timeline.html.ts +++ b/src/page/timeline/timeline.html.ts @@ -1,5 +1,5 @@ -import './timeline.scss'; import { html } from '../../types/html'; +import './timeline.scss'; export const generate = (): html => `
diff --git a/src/page/timeline/timeline.ts b/src/page/timeline/timeline.ts index fef0118..8a7e035 100644 --- a/src/page/timeline/timeline.ts +++ b/src/page/timeline/timeline.ts @@ -1,10 +1,10 @@ +import { createElement } from '../../helper/create-element'; +import { PageElement } from '../page-element'; import { PageTimelineElement, TimelineElementParameters, } from './timeline-element/timeline-element'; import { generate } from './timeline.html'; -import { createElement } from '../../helper/create-element'; -import { PageElement } from '../page-element'; export class PageTimeline extends PageElement { public constructor({