Eslint+prettier init

This commit is contained in:
grinikita 2025-04-26 11:15:19 +03:00
parent 9550031481
commit 859ed6c331
12 changed files with 3658 additions and 308 deletions

7
.prettierrc Normal file
View File

@ -0,0 +1,7 @@
{
"trailingComma": "es5",
"tabWidth": 2,
"semi": true,
"singleQuote": true,
"printWidth": 100
}

28
eslint.config.mjs Normal file
View File

@ -0,0 +1,28 @@
import js from '@eslint/js';
import globals from 'globals';
import tseslint from 'typescript-eslint';
import pluginReact from 'eslint-plugin-react';
import { defineConfig } from 'eslint/config';
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended';
export default defineConfig([
{
files: ['**/*.{js,mjs,cjs,ts,jsx,tsx}'],
plugins: { js },
extends: ['js/recommended'],
},
{
files: ['**/*.{js,mjs,cjs,ts,jsx,tsx}'],
languageOptions: { globals: globals.browser },
},
tseslint.configs.recommended,
pluginReact.configs.flat.recommended,
{
files: ['webpack.config.js'],
languageOptions: { globals: globals.node },
rules: {
'@typescript-eslint/no-require-imports': 'off',
},
},
eslintPluginPrettierRecommended,
]);

3236
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -17,13 +17,21 @@
"webpack-cli": "^6.0.1"
},
"devDependencies": {
"@eslint/js": "^9.25.1",
"@types/react": "^19.1.1",
"@types/react-dom": "^19.1.2",
"copy-webpack-plugin": "^13.0.0",
"css-loader": "^7.1.2",
"eslint": "^9.25.1",
"eslint-config-prettier": "^10.1.2",
"eslint-plugin-prettier": "^5.2.6",
"eslint-plugin-react": "^7.37.5",
"globals": "^16.0.0",
"html-webpack-plugin": "^5.6.3",
"prettier": "3.5.3",
"style-loader": "^4.0.0",
"ts-loader": "^9.5.2",
"typescript": "^5.8.2"
"typescript": "^5.8.2",
"typescript-eslint": "^8.31.0"
}
}

View File

@ -1,19 +1,25 @@
import './logger'
import './logger';
const moveContainer = (container: HTMLElement, btnLeft: HTMLButtonElement, btnRight: HTMLButtonElement, prevOffset: number, offset: number) => {
const containerWidth = container.scrollWidth
const moveContainer = (
container: HTMLElement,
btnLeft: HTMLButtonElement,
btnRight: HTMLButtonElement,
prevOffset: number,
offset: number
) => {
const containerWidth = container.scrollWidth;
let newOffset = prevOffset + offset
const minOffset = (containerWidth - document.body.clientWidth) * -1
const maxOffset = 0;
newOffset = Math.min(Math.max(minOffset, newOffset), maxOffset);
container.style.transform = `translateX(${newOffset}px)`
let newOffset = prevOffset + offset;
const minOffset = (containerWidth - document.body.clientWidth) * -1;
const maxOffset = 0;
newOffset = Math.min(Math.max(minOffset, newOffset), maxOffset);
container.style.transform = `translateX(${newOffset}px)`;
btnLeft.disabled = newOffset >= maxOffset;
btnRight.disabled = newOffset <= minOffset;
btnLeft.disabled = newOffset >= maxOffset;
btnRight.disabled = newOffset <= minOffset;
return newOffset;
}
return newOffset;
};
/**
* Инициализация карусели
@ -21,17 +27,38 @@ const moveContainer = (container: HTMLElement, btnLeft: HTMLButtonElement, btnRi
* @param btnLeft
* @param btnRight
*/
export function initCarusel(container: HTMLElement, btnLeft: HTMLButtonElement, btnRight: HTMLButtonElement) {
let containerOffset = 0;
export function initCarusel(
container: HTMLElement,
btnLeft: HTMLButtonElement,
btnRight: HTMLButtonElement
) {
let containerOffset = 0;
containerOffset = moveContainer(container, btnLeft, btnRight, containerOffset, 0)
containerOffset = moveContainer(
container,
btnLeft,
btnRight,
containerOffset,
0
);
btnLeft.addEventListener('click', () => {
containerOffset = moveContainer(container, btnLeft, btnRight, containerOffset, 285)
})
btnLeft.addEventListener('click', () => {
containerOffset = moveContainer(
container,
btnLeft,
btnRight,
containerOffset,
285
);
});
btnRight.addEventListener('click', () => {
containerOffset = moveContainer(container, btnLeft, btnRight, containerOffset, -285)
})
btnRight.addEventListener('click', () => {
containerOffset = moveContainer(
container,
btnLeft,
btnRight,
containerOffset,
-285
);
});
}

View File

@ -1 +1 @@
console.log('hello world')
console.log('hello world');

View File

@ -1,12 +1,12 @@
import {createRoot} from "react-dom/client"
import { createRoot } from 'react-dom/client';
import React from 'react';
import './style.css'
import HomePage from "./pages/home";
import './style.css';
import HomePage from './pages/home';
const rootHtmlElement = document.getElementById('root')
const rootHtmlElement = document.getElementById('root');
if (rootHtmlElement) {
const root = createRoot(rootHtmlElement);
root.render(<HomePage />);
const root = createRoot(rootHtmlElement);
root.render(<HomePage />);
}
// import { initCarusel } from './components/carusel'

View File

@ -1,163 +1,171 @@
import React from "react";
import React from 'react';
export const arrowEl = <svg className="hero-dots" width="120" height="400" viewBox="0 0 120 400" fill="none"
xmlns="http://www.w3.org/2000/svg">
export const arrowEl = (
<svg
className="hero-dots"
width="120"
height="400"
viewBox="0 0 120 400"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<g opacity="0.5">
<rect y="207.423" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="207.423" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="207.423" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="207.423" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="207.423" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="207.423" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="207.423" width="2.83607" height="2.84073" fill="black"/>
<rect y="226.36" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="226.36" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="226.36" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="226.36" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="226.36" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="226.36" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="226.36" width="2.83607" height="2.84073" fill="black"/>
<rect y="245.3" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="245.3" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="245.3" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="245.3" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="245.3" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="245.3" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="245.3" width="2.83607" height="2.84073" fill="black"/>
<rect y="264.238" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="264.238" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="264.238" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="264.238" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="264.238" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="264.238" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="264.238" width="2.83607" height="2.84073" fill="black"/>
<rect y="283.176" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="283.176" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="283.176" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="283.176" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="283.176" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="283.176" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="283.176" width="2.83607" height="2.84073" fill="black"/>
<rect y="302.114" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="302.114" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="302.114" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="302.114" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="302.114" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="302.114" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="302.114" width="2.83607" height="2.84073" fill="black"/>
<rect y="321.052" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="321.052" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="321.052" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="321.052" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="321.052" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="321.052" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="321.052" width="2.83607" height="2.84073" fill="black"/>
<rect y="339.989" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="339.991" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="339.991" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="339.991" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="339.991" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="339.991" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="339.991" width="2.83607" height="2.84073" fill="black"/>
<rect y="358.929" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="358.929" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="358.929" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="358.929" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="358.929" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="358.929" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="358.929" width="2.83607" height="2.84073" fill="black"/>
<rect y="377.866" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="377.866" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="377.866" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="377.866" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="377.866" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="377.866" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="377.866" width="2.83607" height="2.84073" fill="black"/>
<rect y="396.805" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="396.806" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="396.806" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="396.806" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="396.806" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="396.806" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="396.806" width="2.83607" height="2.84073" fill="black"/>
<rect y="207.423" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="207.423" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="207.423" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="207.423" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="207.423" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="207.423" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="207.423" width="2.83607" height="2.84073" fill="black" />
<rect y="226.36" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="226.36" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="226.36" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="226.36" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="226.36" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="226.36" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="226.36" width="2.83607" height="2.84073" fill="black" />
<rect y="245.3" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="245.3" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="245.3" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="245.3" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="245.3" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="245.3" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="245.3" width="2.83607" height="2.84073" fill="black" />
<rect y="264.238" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="264.238" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="264.238" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="264.238" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="264.238" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="264.238" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="264.238" width="2.83607" height="2.84073" fill="black" />
<rect y="283.176" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="283.176" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="283.176" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="283.176" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="283.176" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="283.176" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="283.176" width="2.83607" height="2.84073" fill="black" />
<rect y="302.114" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="302.114" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="302.114" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="302.114" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="302.114" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="302.114" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="302.114" width="2.83607" height="2.84073" fill="black" />
<rect y="321.052" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="321.052" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="321.052" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="321.052" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="321.052" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="321.052" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="321.052" width="2.83607" height="2.84073" fill="black" />
<rect y="339.989" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="339.991" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="339.991" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="339.991" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="339.991" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="339.991" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="339.991" width="2.83607" height="2.84073" fill="black" />
<rect y="358.929" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="358.929" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="358.929" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="358.929" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="358.929" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="358.929" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="358.929" width="2.83607" height="2.84073" fill="black" />
<rect y="377.866" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="377.866" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="377.866" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="377.866" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="377.866" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="377.866" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="377.866" width="2.83607" height="2.84073" fill="black" />
<rect y="396.805" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="396.806" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="396.806" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="396.806" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="396.806" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="396.806" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="396.806" width="2.83607" height="2.84073" fill="black" />
</g>
<g opacity="0.5">
<rect width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" width="2.83607" height="2.84073" fill="black"/>
<rect y="18.9375" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="18.9375" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="18.9375" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="18.9375" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="18.9375" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="18.9375" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="18.9375" width="2.83607" height="2.84073" fill="black"/>
<rect y="37.877" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="37.877" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="37.877" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="37.877" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="37.877" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="37.877" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="37.877" width="2.83607" height="2.84073" fill="black"/>
<rect y="56.8154" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="56.8154" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="56.8154" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="56.8154" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="56.8154" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="56.8154" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="56.8154" width="2.83607" height="2.84073" fill="black"/>
<rect y="75.7529" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="75.7529" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="75.7529" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="75.7529" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="75.7529" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="75.7529" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="75.7529" width="2.83607" height="2.84073" fill="black"/>
<rect y="94.6914" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="94.6914" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="94.6914" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="94.6914" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="94.6914" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="94.6914" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="94.6914" width="2.83607" height="2.84073" fill="black"/>
<rect y="113.629" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="113.629" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="113.629" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="113.629" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="113.629" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="113.629" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="113.629" width="2.83607" height="2.84073" fill="black"/>
<rect y="132.566" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="132.568" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="132.568" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="132.568" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="132.568" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="132.568" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="132.568" width="2.83607" height="2.84073" fill="black"/>
<rect y="151.506" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="151.506" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="151.506" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="151.506" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="151.506" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="151.506" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="151.506" width="2.83607" height="2.84073" fill="black"/>
<rect y="170.443" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="170.443" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="170.443" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="170.443" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="170.443" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="170.443" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="170.443" width="2.83607" height="2.84073" fill="black"/>
<rect y="189.382" width="2.83607" height="2.84073" fill="black"/>
<rect x="18.9062" y="189.383" width="2.83607" height="2.84073" fill="black"/>
<rect x="37.8145" y="189.383" width="2.83607" height="2.84073" fill="black"/>
<rect x="56.7217" y="189.383" width="2.83607" height="2.84073" fill="black"/>
<rect x="75.6279" y="189.383" width="2.83607" height="2.84073" fill="black"/>
<rect x="94.5361" y="189.383" width="2.83607" height="2.84073" fill="black"/>
<rect x="113.443" y="189.383" width="2.83607" height="2.84073" fill="black"/>
<rect width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" width="2.83607" height="2.84073" fill="black" />
<rect y="18.9375" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="18.9375" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="18.9375" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="18.9375" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="18.9375" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="18.9375" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="18.9375" width="2.83607" height="2.84073" fill="black" />
<rect y="37.877" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="37.877" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="37.877" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="37.877" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="37.877" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="37.877" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="37.877" width="2.83607" height="2.84073" fill="black" />
<rect y="56.8154" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="56.8154" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="56.8154" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="56.8154" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="56.8154" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="56.8154" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="56.8154" width="2.83607" height="2.84073" fill="black" />
<rect y="75.7529" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="75.7529" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="75.7529" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="75.7529" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="75.7529" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="75.7529" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="75.7529" width="2.83607" height="2.84073" fill="black" />
<rect y="94.6914" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="94.6914" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="94.6914" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="94.6914" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="94.6914" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="94.6914" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="94.6914" width="2.83607" height="2.84073" fill="black" />
<rect y="113.629" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="113.629" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="113.629" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="113.629" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="113.629" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="113.629" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="113.629" width="2.83607" height="2.84073" fill="black" />
<rect y="132.566" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="132.568" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="132.568" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="132.568" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="132.568" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="132.568" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="132.568" width="2.83607" height="2.84073" fill="black" />
<rect y="151.506" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="151.506" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="151.506" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="151.506" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="151.506" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="151.506" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="151.506" width="2.83607" height="2.84073" fill="black" />
<rect y="170.443" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="170.443" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="170.443" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="170.443" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="170.443" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="170.443" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="170.443" width="2.83607" height="2.84073" fill="black" />
<rect y="189.382" width="2.83607" height="2.84073" fill="black" />
<rect x="18.9062" y="189.383" width="2.83607" height="2.84073" fill="black" />
<rect x="37.8145" y="189.383" width="2.83607" height="2.84073" fill="black" />
<rect x="56.7217" y="189.383" width="2.83607" height="2.84073" fill="black" />
<rect x="75.6279" y="189.383" width="2.83607" height="2.84073" fill="black" />
<rect x="94.5361" y="189.383" width="2.83607" height="2.84073" fill="black" />
<rect x="113.443" y="189.383" width="2.83607" height="2.84073" fill="black" />
</g>
</svg>
</svg>
);

View File

@ -1,61 +1,93 @@
import React from "react";
import {arrowEl} from "./arrow";
import './style.css'
import React from 'react';
import { arrowEl } from './arrow';
import './style.css';
const Banner = () => {
return (
<div className="container hero">
<div className="hero-main">
<div className="hero-line"></div>
<h1 className="hero-title">Discover And Create NFTs</h1>
<p className="hero-description">Discover, Create and Sell NFTs On Our NFT Marketplace With Over
Thousands Of NFTs
And Get a <span className="hero-description__bold">$20 bonus</span>.</p>
<div className="hero-buttons">
<button className="button">Explore More</button>
<button className="button button-secondary">create NFT</button>
</div>
</div>
<div>
<div className="hero-cubs">
<div className="hero-cub1">
<svg className="cub1-arrow" width="131" height="136" viewBox="0 0 131 136" fill="none"
xmlns="http://www.w3.org/2000/svg">
<path
d="M15.6507 43.2949C32.4339 30.7255 51.9743 23.0115 72.683 28.6293C91.3749 33.7001 103.143 49.6308 90.5396 69.3323C84.5735 78.6586 71.8706 85.1866 61.8852 79.874C50.7606 73.9554 59.5288 59.017 66.6505 54.7089C83.2839 44.6468 106.696 49.3237 118.212 68.8676C131.849 92.0121 108.785 103.532 108.769 103.344"
stroke="black" stroke-width="3.37884" stroke-miterlimit="1.5" stroke-linecap="round"
stroke-linejoin="round"/>
<path
d="M19.2682 18.3819C19.8774 20.8064 19.5256 23.2335 19.2862 25.677C18.5006 33.7006 15.3552 42.0307 9.71151 47.2931C17.1379 44.0369 27.7921 42.6188 34.5374 48.3345"
stroke="black" stroke-width="3.37884" stroke-miterlimit="1.5" stroke-linecap="round"
stroke-linejoin="round"/>
</svg>
<div className="hero-cub2"></div>
</div>
<div className="lr-button">
<button className="lr-button-left">
<svg width="27" height="27" viewBox="0 0 27 27" fill="none"
xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd"
d="M11.2397 8.39036C10.8023 7.98657 10.1203 8.01384 9.71654 8.45128L6.23402 12.224C5.85287 12.6369 5.85287 13.2733 6.23401 13.6862L9.71653 17.459C10.1203 17.8965 10.8023 17.9237 11.2397 17.5199C11.6772 17.1161 11.7045 16.4342 11.3007 15.9967L9.48802 14.033L19.9611 14.033C20.5565 14.033 21.0391 13.5504 21.0391 12.9551C21.0391 12.3598 20.5565 11.8772 19.9611 11.8772L9.48805 11.8772L11.3007 9.91356C11.7044 9.47612 11.6772 8.79416 11.2397 8.39036Z"
fill="#929292"/>
</svg>
</button>
<div className="lr-button-delimiter"></div>
<button className="lr-button-right">
<svg width="27" height="27" viewBox="0 0 27 27" fill="none"
xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd"
d="M15.7603 8.39036C16.1977 7.98657 16.8797 8.01384 17.2835 8.45128L20.766 12.224C21.1471 12.6369 21.1471 13.2733 20.766 13.6862L17.2835 17.459C16.8797 17.8965 16.1977 17.9237 15.7603 17.5199C15.3228 17.1161 15.2955 16.4342 15.6993 15.9967L17.512 14.033L7.03886 14.033C6.44354 14.033 5.96094 13.5504 5.96094 12.9551C5.96094 12.3598 6.44354 11.8772 7.03886 11.8772L17.5119 11.8772L15.6993 9.91356C15.2956 9.47612 15.3228 8.79416 15.7603 8.39036Z"
fill="#23262F"/>
</svg>
</button>
</div>
</div>
{arrowEl}
</div>
return (
<div className="container hero">
<div className="hero-main">
<div className="hero-line"></div>
<h1 className="hero-title">Discover And Create NFTs</h1>
<p className="hero-description">
Discover, Create and Sell NFTs On Our NFT Marketplace With Over
Thousands Of NFTs And Get a{' '}
<span className="hero-description__bold">$20 bonus</span>.
</p>
<div className="hero-buttons">
<button className="button">Explore More</button>
<button className="button button-secondary">create NFT</button>
</div>
)
}
</div>
<div>
<div className="hero-cubs">
<div className="hero-cub1">
<svg
className="cub1-arrow"
width="131"
height="136"
viewBox="0 0 131 136"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M15.6507 43.2949C32.4339 30.7255 51.9743 23.0115 72.683 28.6293C91.3749 33.7001 103.143 49.6308 90.5396 69.3323C84.5735 78.6586 71.8706 85.1866 61.8852 79.874C50.7606 73.9554 59.5288 59.017 66.6505 54.7089C83.2839 44.6468 106.696 49.3237 118.212 68.8676C131.849 92.0121 108.785 103.532 108.769 103.344"
stroke="black"
strokeWidth="3.37884"
strokeMiterlimit="1.5"
strokeLinecap="round"
strokeLinejoin="round"
/>
<path
d="M19.2682 18.3819C19.8774 20.8064 19.5256 23.2335 19.2862 25.677C18.5006 33.7006 15.3552 42.0307 9.71151 47.2931C17.1379 44.0369 27.7921 42.6188 34.5374 48.3345"
stroke="black"
strokeWidth="3.37884"
strokeMiterlimit="1.5"
strokeLinecap="round"
strokeLinejoin="round"
/>
</svg>
<div className="hero-cub2"></div>
</div>
<div className="lr-button">
<button className="lr-button-left">
<svg
width="27"
height="27"
viewBox="0 0 27 27"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
fillRule="evenodd"
clipRule="evenodd"
d="M11.2397 8.39036C10.8023 7.98657 10.1203 8.01384 9.71654 8.45128L6.23402 12.224C5.85287 12.6369 5.85287 13.2733 6.23401 13.6862L9.71653 17.459C10.1203 17.8965 10.8023 17.9237 11.2397 17.5199C11.6772 17.1161 11.7045 16.4342 11.3007 15.9967L9.48802 14.033L19.9611 14.033C20.5565 14.033 21.0391 13.5504 21.0391 12.9551C21.0391 12.3598 20.5565 11.8772 19.9611 11.8772L9.48805 11.8772L11.3007 9.91356C11.7044 9.47612 11.6772 8.79416 11.2397 8.39036Z"
fill="#929292"
/>
</svg>
</button>
<div className="lr-button-delimiter"></div>
<button className="lr-button-right">
<svg
width="27"
height="27"
viewBox="0 0 27 27"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
fillRule="evenodd"
clipRule="evenodd"
d="M15.7603 8.39036C16.1977 7.98657 16.8797 8.01384 17.2835 8.45128L20.766 12.224C21.1471 12.6369 21.1471 13.2733 20.766 13.6862L17.2835 17.459C16.8797 17.8965 16.1977 17.9237 15.7603 17.5199C15.3228 17.1161 15.2955 16.4342 15.6993 15.9967L17.512 14.033L7.03886 14.033C6.44354 14.033 5.96094 13.5504 5.96094 12.9551C5.96094 12.3598 6.44354 11.8772 7.03886 11.8772L17.5119 11.8772L15.6993 9.91356C15.2956 9.47612 15.3228 8.79416 15.7603 8.39036Z"
fill="#23262F"
/>
</svg>
</button>
</div>
</div>
{arrowEl}
</div>
</div>
);
};
export default Banner
export default Banner;

View File

@ -1,16 +1,16 @@
import React from 'react';
import Header from "../../widgets/header";
import Banner from "./banner";
import Header from '../../widgets/header';
import Banner from './banner';
const HomePage = (): React.ReactElement => {
return (<>
<Header/>
<main>
<Banner/>
</main>
</>
)
}
return (
<>
<Header />
<main>
<Banner />
</main>
</>
);
};
export default HomePage
export default HomePage;

View File

@ -1,20 +1,30 @@
import React from 'react'
import React from 'react';
const Header = (): React.ReactElement => {
return (
<header className="header container">
<a href="index.html"><img className="logo" src="./images/logo.svg" alt=""/></a>
<nav>
<ul className="nav-list">
<li><a href="./discover.html">Discover</a></li>
<li><a href="./creators.html">creators</a></li>
<li><a href="./creators.html">Sell</a></li>
<li><a href="./creators.html">stats</a></li>
</ul>
</nav>
<button className="button">Connect Wallet</button>
</header>
)
}
return (
<header className="header container">
<a href="index.html">
<img className="logo" src="./images/logo.svg" alt="" />
</a>
<nav>
<ul className="nav-list">
<li>
<a href="./discover.html">Discover</a>
</li>
<li>
<a href="./creators.html">creators</a>
</li>
<li>
<a href="./creators.html">Sell</a>
</li>
<li>
<a href="./creators.html">stats</a>
</li>
</ul>
</nav>
<button className="button">Connect Wallet</button>
</header>
);
};
export default Header
export default Header;

View File

@ -1,37 +1,33 @@
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const CopyPlugin = require("copy-webpack-plugin");
module.exports = {
entry: './src/index.tsx',
output: {
filename: 'index.js',
path: path.resolve(__dirname, 'dist'),
clean: true
},
resolve: {
extensions: ['.js', '.ts', '.jsx', '.tsx']
},
module: {
rules: [
{ test: /\.(ts|tsx)$/, loader: "ts-loader" },
{
test: /\.hbs|html$/,
loader: 'handlebars-loader',
},
{
test: /\.css$/i,
use: [
{ loader: "style-loader" },
{ loader: "css-loader" },
],
},
],
},
plugins: [
new HtmlWebpackPlugin({
template: "./src/index.html",
filename: "index.html"
})
]
entry: './src/index.tsx',
output: {
filename: 'index.js',
path: path.resolve(__dirname, 'dist'),
clean: true,
},
resolve: {
extensions: ['.js', '.ts', '.jsx', '.tsx'],
},
module: {
rules: [
{ test: /\.(ts|tsx)$/, loader: 'ts-loader' },
{
test: /\.hbs|html$/,
loader: 'handlebars-loader'``,
},
{
test: /\.css$/i,
use: [{ loader: 'style-loader' }, { loader: 'css-loader' }],
},
],
},
plugins: [
new HtmlWebpackPlugin({
template: './src/index.html',
filename: 'index.html',
}),
],
};