Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1a1e8be18e | ||
|
|
c9f9f7d783 | ||
|
|
73215f91f9 | ||
|
|
513d33b397 | ||
|
|
4c528b03e2 | ||
|
|
dcf451cf08 | ||
|
|
6f124089b4 | ||
|
|
2e68d918fa | ||
|
|
ad8c88cee9 | ||
|
|
25b72374db | ||
|
|
cb2a76f3c3 | ||
|
|
1fd80bf74d | ||
|
|
27cb3f365e | ||
|
|
7f425d8ca2 | ||
|
|
10da219b9d | ||
|
|
b113e95776 | ||
|
|
ceb6924084 | ||
|
|
3cc193681d | ||
|
|
c537af89ac | ||
|
|
69cbf69995 | ||
|
|
3d635c27ac | ||
|
|
ce5fc5ec43 | ||
|
|
c7528766e9 | ||
|
|
2f629c621c | ||
|
|
3603535003 | ||
|
|
e21035fed0 | ||
|
|
21eb5cfd23 | ||
|
|
6d55c2d1d5 | ||
|
|
10938d1bd3 | ||
|
|
7819ac69b1 | ||
|
|
b49418d172 | ||
|
|
04b00b7a44 | ||
|
|
2e3f1e00a3 | ||
|
|
6c3b70f393 | ||
|
|
e01650ab23 | ||
|
|
319ac06cfd | ||
|
|
ac0515983d | ||
|
|
297c14f4fc | ||
|
|
3f37eae1bf | ||
|
|
719cfb304e | ||
|
|
2f07d74e59 | ||
|
|
1358ed83df | ||
|
|
ac52736d2a | ||
|
|
5266191230 | ||
|
|
f4390bedf5 | ||
|
|
c3693ec923 | ||
|
|
6f53561b37 | ||
|
|
f4fc3f5018 | ||
|
|
b0b0250255 | ||
|
|
9e24e03cfb | ||
|
|
a26f9881ad | ||
|
|
6fbde1e4e1 | ||
|
|
e10d90da1f | ||
|
|
a677319fa3 | ||
|
|
7ba4c6b126 | ||
|
|
0437203f2f | ||
|
|
bbcd865eed | ||
|
|
93e05b7b82 | ||
|
|
b64e1af9a5 | ||
|
|
9ccb561e16 | ||
|
|
fed6170141 | ||
|
|
1c22bb8252 | ||
|
|
b03cfdcfe5 | ||
|
|
4514647865 | ||
|
|
10df83d121 | ||
|
|
65891dd9c9 | ||
|
|
bef8c9c762 | ||
|
|
d45c3f2c29 | ||
|
|
735399ed9b | ||
|
|
42d2955cbc | ||
|
|
5c34a2c0a5 | ||
|
|
49bf5be4fb | ||
|
|
d8cd63e2af | ||
|
|
18117f03ce | ||
|
|
13bfcf5533 | ||
|
|
2fbf9682b3 | ||
|
|
fe7f97f1bd | ||
|
|
5e717f7df5 | ||
|
|
cc69ae888b | ||
|
|
a3a65e7867 | ||
|
|
4a3c76563b | ||
|
|
10b129ad65 | ||
|
|
e00f4d57ae | ||
|
|
7c5cffeb68 | ||
|
|
520b9721e7 | ||
|
|
8709413043 | ||
|
|
f25b1db910 | ||
|
|
bc660d12d2 | ||
|
|
f046a6c3f1 | ||
|
|
2013e9ba98 | ||
|
|
736ee9dc99 | ||
|
|
1319a55ebe | ||
|
|
96cf6b2b3c | ||
|
|
2ab15204c2 | ||
|
|
b743bbd023 | ||
|
|
e0bbfddff8 | ||
|
|
c191deefb8 | ||
|
|
c41dbd5fc9 | ||
|
|
8a98f59945 | ||
|
|
429f829ccb | ||
|
|
cb27cb4045 | ||
|
|
591fbe04d1 | ||
|
|
732289aabc | ||
|
|
5ac0135c42 | ||
|
|
731c1ca3b9 | ||
|
|
15173b9855 | ||
|
|
73059fc75b | ||
|
|
5d204347b7 | ||
|
|
7ea9ee32ad | ||
|
|
a8ecd20e43 | ||
|
|
d5f3401b28 | ||
|
|
8c97cb3328 | ||
|
|
a691854a49 | ||
|
|
dc7fcfd1b5 | ||
|
|
fbdf04a4c6 | ||
|
|
dee47aa6e5 | ||
|
|
99b99bbea3 | ||
|
|
cba8790d93 | ||
|
|
50566e68e1 | ||
|
|
13f7ff56ca | ||
|
|
de2fe6c33d | ||
|
|
691a014c3c | ||
|
|
0bd1eb39c9 |
@@ -0,0 +1,8 @@
|
||||
Dockerfile
|
||||
.dockerignore
|
||||
node_modules
|
||||
npm-debug.log
|
||||
README.md
|
||||
.next
|
||||
.git
|
||||
codegen.ts
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"extends": "next/core-web-vitals",
|
||||
"rules": {
|
||||
"@next/next/no-img-element": "off"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
### Summary:
|
||||
[Provide a brief summary of the issue.]
|
||||
|
||||
### Environment:
|
||||
- Operating System:
|
||||
- Browser (If applicable):
|
||||
- Project Version:
|
||||
- Additional relevant information:
|
||||
|
||||
### Steps to Reproduce:
|
||||
1. [First step]
|
||||
2. [Second step]
|
||||
3. [And so on…]
|
||||
|
||||
### Expected Behavior:
|
||||
[Provide a detailed description of the expected behavior.]
|
||||
|
||||
### Actual Behavior:
|
||||
[Provide a detailed description of the actual behavior you are experiencing.]
|
||||
|
||||
### Screenshots (if applicable):
|
||||
[Attach screenshots to help illustrate the issue.]
|
||||
|
||||
### Additional Information:
|
||||
[Any additional information, configuration, or data that might be necessary to reproduce the issue.]
|
||||
|
||||
### Potential Solutions (if applicable):
|
||||
[Optional: Provide any thoughts or ideas you might have on potential solutions to the issue.]
|
||||
@@ -0,0 +1,17 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
### Feature Request:
|
||||
[Quick summary of the feature you would like to be added.]
|
||||
|
||||
### Why is this feature important?
|
||||
[Explain why you think this feature would be beneficial.]
|
||||
|
||||
### How should it work?
|
||||
[Briefly describe how you envision this feature working, or how you would like it to be implemented.]
|
||||
@@ -0,0 +1,24 @@
|
||||
### Description:
|
||||
[Provide a brief description of the changes in the pull request.]
|
||||
|
||||
### Related Issue(s):
|
||||
[Link to the related Issue(s), if any.]
|
||||
|
||||
### Changes Included:
|
||||
- [ ] Bugfix (a change that fixes an issue)
|
||||
- [ ] New feature (a change that adds new functionality)
|
||||
- [ ] Refactoring (a change that improves code quality and/or architecture)
|
||||
- [ ] Other (explain below)
|
||||
|
||||
### Implementation Details:
|
||||
[Explain any new decisions made during the implementation of the changes.]
|
||||
|
||||
### Testing:
|
||||
[Describe how the changes have been tested.]
|
||||
|
||||
### Checklist:
|
||||
- [ ] My code follows the style guidelines of this project
|
||||
- [ ] I have performed a self-review of my own code
|
||||
- [ ] I have commented my code, particularly in hard-to-understand areas
|
||||
- [ ] My changes generate no new warnings
|
||||
- [ ] Any dependent changes have been merged and published in downstream modules
|
||||
@@ -0,0 +1,41 @@
|
||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
||||
|
||||
# dependencies
|
||||
/node_modules
|
||||
/.pnp
|
||||
.pnp.js
|
||||
|
||||
# testing
|
||||
/coverage
|
||||
|
||||
# next.js
|
||||
/.next/
|
||||
/out/
|
||||
|
||||
# production
|
||||
/build
|
||||
|
||||
# misc
|
||||
.DS_Store
|
||||
*.pem
|
||||
|
||||
# debug
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
|
||||
# local env files
|
||||
.env*.local
|
||||
|
||||
# vercel
|
||||
.vercel
|
||||
|
||||
# typescript
|
||||
*.tsbuildinfo
|
||||
next-env.d.ts
|
||||
|
||||
.idea
|
||||
.env
|
||||
|
||||
public/rss.xml
|
||||
public/atom*.xml
|
||||
@@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env sh
|
||||
. "$(dirname -- "$0")/_/husky.sh"
|
||||
|
||||
npx lint-staged
|
||||
@@ -0,0 +1,2 @@
|
||||
src/components/Copy
|
||||
src/components/Info/index.tsx
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"tabWidth": 2,
|
||||
"semi": false,
|
||||
"singleQuote": true,
|
||||
"trailingComma": "all",
|
||||
"plugins": ["prettier-plugin-organize-imports"]
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
#!/usr/bin/env groovy
|
||||
library 'status-jenkins-lib@v1.8.16'
|
||||
|
||||
pipeline {
|
||||
agent { label 'linux' }
|
||||
|
||||
options {
|
||||
disableConcurrentBuilds()
|
||||
/* manage how many builds we keep */
|
||||
buildDiscarder(logRotator(
|
||||
numToKeepStr: '20',
|
||||
daysToKeepStr: '30',
|
||||
))
|
||||
}
|
||||
|
||||
environment {
|
||||
GIT_COMMITTER_NAME = 'status-im-auto'
|
||||
GIT_COMMITTER_EMAIL = 'auto@status.im'
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Install') {
|
||||
steps {
|
||||
sh 'yarn install'
|
||||
}
|
||||
}
|
||||
|
||||
stage('Build') {
|
||||
steps {
|
||||
script {
|
||||
sh 'yarn build'
|
||||
jenkins.genBuildMetaJSON('out/build.json')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Publish') {
|
||||
steps {
|
||||
sshagent(credentials: ['status-im-auto-ssh']) {
|
||||
sh """
|
||||
ghp-import \
|
||||
-b ${deployBranch()} \
|
||||
-c ${deployDomain()} \
|
||||
-p out
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
post {
|
||||
cleanup { cleanWs() }
|
||||
}
|
||||
}
|
||||
|
||||
def isMasterBranch() { GIT_BRANCH ==~ /.*master/ }
|
||||
def deployBranch() { isMasterBranch() ? 'deploy-master' : 'deploy-develop' }
|
||||
def deployDomain() { isMasterBranch() ? 'psc.logos.co' : 'dev-psc.logos.co' }
|
||||
@@ -0,0 +1,32 @@
|
||||
# psc.logos.co
|
||||
|
||||
https://psc.logos.co/
|
||||
|
||||
## How to Run Locally
|
||||
|
||||
1. Clone this repository
|
||||
```bash
|
||||
$ git clone https://github.com/acid-info/psc.logos.co.git
|
||||
```
|
||||
|
||||
2. Install the dependencies:
|
||||
```bash
|
||||
$ yarn install
|
||||
```
|
||||
|
||||
3. Start the development server:
|
||||
```bash
|
||||
$ yarn dev
|
||||
```
|
||||
|
||||
4. Visit `http://localhost:3000` in your browser
|
||||
|
||||
## CI/CD
|
||||
|
||||
- [CI builds](https://ci.infra.status.im/job/website/job/psc.logos.co/) `master` and pushes to `deploy-master` branch, which is hosted at <https://psc.logos.co//>.
|
||||
- [CI builds](https://ci.infra.status.im/job/website/job/dev-psc.logos.co/) `develop` and pushes to `deploy-develop` branch, which is hosted at <https://dev-psc.logos.co//>.
|
||||
|
||||
The hosting is done using [Caddy server with Git plugin for handling GitHub webhooks](https://github.com/status-im/infra-misc/blob/master/ansible/roles/caddy-git).
|
||||
|
||||
Information about deployed build can be also found in `/build.json` available on the website.
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":["static/chunks/946-9a26d27f6b0d4a65.js","static/chunks/pages/index-e60f8f78c634a1b6.js"],"/_error":["static/chunks/pages/_error-77823ddac6993d35.js"],"/world-debt":["static/chunks/pages/world-debt-ce190a8e06677851.js"],sortedPages:["/","/_app","/_error","/world-debt"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
||||
@@ -1 +0,0 @@
|
||||
self.__SSG_MANIFEST=new Set,self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB();
|
||||
@@ -1 +0,0 @@
|
||||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[820],{1981:function(n,_,u){(window.__NEXT_P=window.__NEXT_P||[]).push(["/_error",function(){return u(6971)}])}},function(n){n.O(0,[888,774,179],function(){return n(n.s=1981)}),_N_E=n.O()}]);
|
||||
@@ -1 +0,0 @@
|
||||
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[223],{9913:function(n,t,e){(window.__NEXT_P=window.__NEXT_P||[]).push(["/world-debt",function(){return e(9332)}])},9332:function(n,t,e){"use strict";e.r(t),e.d(t,{default:function(){return s}});var r=e(2729),i=e(5893),u=e(1998),l=e(7294);function c(){let n=(0,r._)(["\n width: 100vw;\n height: 100vh;\n background-color: #000;\n color: #fff;\n display: flex;\n justify-content: center;\n align-items: center;\n\n h1 {\n font-size: 52px;\n text-align: center;\n }\n\n p {\n font-size: 60px;\n text-align: center;\n margin-top: 20px;\n font-weight: bold;\n }\n"]);return c=function(){return n},n}function o(){let n=(0,r._)([""]);return o=function(){return n},n}let f=n=>n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",");function s(){let[n,t]=(0,l.useState)(72748553737909);return(0,l.useEffect)(()=>{if(null===n)return;let e=setInterval(()=>{t(n+5e-13*n)},2e3);return()=>clearInterval(e)},[n]),(0,i.jsx)(d,{children:(0,i.jsxs)(a,{children:[(0,i.jsx)("h1",{children:"World Debt Clock"}),(0,i.jsxs)("p",{children:["$",f(n).split(".")[0]]})]})})}let d=u.Z.div(c()),a=u.Z.div(o())}},function(n){n.O(0,[888,774,179],function(){return n(n.s=9913)}),_N_E=n.O()}]);
|
||||
@@ -1 +0,0 @@
|
||||
!function(){"use strict";var e,t,n,r,o,u,f={},i={};function c(e){var t=i[e];if(void 0!==t)return t.exports;var n=i[e]={exports:{}},r=!0;try{f[e].call(n.exports,n,n.exports,c),r=!1}finally{r&&delete i[e]}return n.exports}c.m=f,e=[],c.O=function(t,n,r,o){if(n){o=o||0;for(var u=e.length;u>0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[n,r,o];return}for(var f=1/0,u=0;u<e.length;u++){for(var n=e[u][0],r=e[u][1],o=e[u][2],i=!0,l=0;l<n.length;l++)f>=o&&Object.keys(c.O).every(function(e){return c.O[e](n[l])})?n.splice(l--,1):(i=!1,o<f&&(f=o));if(i){e.splice(u--,1);var a=r();void 0!==a&&(t=a)}}return t},c.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return c.d(t,{a:t}),t},n=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},c.t=function(e,r){if(1&r&&(e=this(e)),8&r||"object"==typeof e&&e&&(4&r&&e.__esModule||16&r&&"function"==typeof e.then))return e;var o=Object.create(null);c.r(o);var u={};t=t||[null,n({}),n([]),n(n)];for(var f=2&r&&e;"object"==typeof f&&!~t.indexOf(f);f=n(f))Object.getOwnPropertyNames(f).forEach(function(t){u[t]=function(){return e[t]}});return u.default=function(){return e},c.d(o,u),o},c.d=function(e,t){for(var n in t)c.o(t,n)&&!c.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},c.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},c.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.p="/_next/",r={272:0},c.O.j=function(e){return 0===r[e]},o=function(e,t){var n,o,u=t[0],f=t[1],i=t[2],l=0;if(u.some(function(e){return 0!==r[e]})){for(n in f)c.o(f,n)&&(c.m[n]=f[n]);if(i)var a=i(c)}for(e&&e(t);l<u.length;l++)o=u[l],c.o(r,o)&&r[o]&&r[o][0](),r[o]=0;return c.O(a)},(u=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(o.bind(null,0)),u.push=o.bind(null,u.push.bind(u))}();
|
||||
@@ -1 +0,0 @@
|
||||
.hero-cover-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1}
|
||||
@@ -1,15 +0,0 @@
|
||||
{
|
||||
"timestamp": "2024-11-11T00:27:11Z",
|
||||
"git": {
|
||||
"commit": "1a1e8be18e90f658a7e8ee6e0b3ac5441b508c2a",
|
||||
"branch": "origin/develop",
|
||||
"url": "git@github.com:acid-info/psc.logos.co.git"
|
||||
},
|
||||
"build": {
|
||||
"id": "95",
|
||||
"number": "95",
|
||||
"name": "website/dev-psc.logos.co",
|
||||
"slave": "linux-02",
|
||||
"url": "https://ci.infra.status.im/job/website/job/dev-psc.logos.co/95/"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
import { useRouter } from 'next/router'
|
||||
import { useEffect } from 'react'
|
||||
|
||||
const useUTMSource = () => {
|
||||
const router = useRouter()
|
||||
const { utm_source } = router.query
|
||||
|
||||
useEffect(() => {
|
||||
if (utm_source) {
|
||||
const links = document.querySelectorAll<HTMLAnchorElement>(
|
||||
'a[href^="https://lu.ma/psc1"]',
|
||||
)
|
||||
|
||||
links.forEach((link) => {
|
||||
if (link && link.href) {
|
||||
const url = new URL(link.href)
|
||||
url.searchParams.set('utm_source', utm_source as string)
|
||||
link.href = url.toString()
|
||||
}
|
||||
})
|
||||
}
|
||||
}, [utm_source])
|
||||
}
|
||||
|
||||
export default useUTMSource
|
||||
@@ -0,0 +1,29 @@
|
||||
import { useEffect, useState } from 'react'
|
||||
|
||||
function useWindowSize() {
|
||||
const [windowSize, setWindowSize] = useState({
|
||||
width: 0,
|
||||
height: 0,
|
||||
})
|
||||
|
||||
useEffect(() => {
|
||||
function handleResize() {
|
||||
setWindowSize({
|
||||
width: window.innerWidth,
|
||||
height: window.innerHeight,
|
||||
})
|
||||
}
|
||||
window.addEventListener('resize', handleResize)
|
||||
handleResize()
|
||||
return () => window.removeEventListener('resize', handleResize)
|
||||
}, [])
|
||||
|
||||
const { width, height } = windowSize
|
||||
|
||||
return {
|
||||
width,
|
||||
height,
|
||||
}
|
||||
}
|
||||
|
||||
export default useWindowSize
|
||||
@@ -0,0 +1,7 @@
|
||||
import type { MDXComponents } from 'mdx/types'
|
||||
|
||||
export function useMDXComponents(components: MDXComponents): MDXComponents {
|
||||
return {
|
||||
...components,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
import createMDX from '@next/mdx'
|
||||
import remarkGfm from 'remark-gfm'
|
||||
|
||||
const withMDX = createMDX({
|
||||
// Add markdown plugins here, as desired
|
||||
options: {
|
||||
remarkPlugins: [remarkGfm],
|
||||
rehypePlugins: [],
|
||||
},
|
||||
})
|
||||
|
||||
/** @type {import('next').NextConfig} */
|
||||
const nextConfig = {
|
||||
output: 'export',
|
||||
trailingSlash: true,
|
||||
images: {
|
||||
unoptimized: true,
|
||||
},
|
||||
|
||||
pageExtensions: ['js', 'jsx', 'mdx', 'ts', 'tsx'],
|
||||
images: {
|
||||
domains: ['avatars.githubusercontent.com', 'source.unsplash.com'],
|
||||
},
|
||||
}
|
||||
|
||||
export default withMDX(nextConfig)
|
||||
@@ -0,0 +1,66 @@
|
||||
{
|
||||
"name": "PSC",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "next dev",
|
||||
"build": "next build",
|
||||
"start": "next start",
|
||||
"lint": "next lint",
|
||||
"prepare": "husky install"
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{ts,tsx}": [
|
||||
"prettier --write",
|
||||
"eslint --fix"
|
||||
]
|
||||
},
|
||||
"husky": {
|
||||
"hooks": {
|
||||
"pre-commit": "lint-staged"
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@emotion/react": "^11.11.1",
|
||||
"@emotion/styled": "^11.11.0",
|
||||
"@hookstate/core": "^4.0.1",
|
||||
"@hookstate/localstored": "^4.0.2",
|
||||
"@mdx-js/loader": "^2.3.0",
|
||||
"@mdx-js/react": "^2.3.0",
|
||||
"@next/mdx": "^13.5.5",
|
||||
"@types/mdx": "^2.0.8",
|
||||
"@types/web3": "^1.2.2",
|
||||
"@vercel/og": "^0.5.4",
|
||||
"axios": "^1.4.0",
|
||||
"i": "^0.3.7",
|
||||
"next": "^14.2.3",
|
||||
"next-mdx-remote": "^4.4.1",
|
||||
"nextjs-progressbar": "^0.0.16",
|
||||
"npm": "^10.7.0",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
"react-markdown": "^9.0.1",
|
||||
"react-photo-album": "^2.3.1",
|
||||
"recoil": "^0.7.7",
|
||||
"rehype-raw": "^7.0.0",
|
||||
"remark-breaks": "^4.0.0",
|
||||
"remark-gfm": "3.0.1",
|
||||
"web3": "^4.9.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^20",
|
||||
"@types/react": "^18",
|
||||
"@types/react-dom": "^18",
|
||||
"clsx": "^2.1.1",
|
||||
"dotenv": "^16.3.1",
|
||||
"dotenv-cli": "^7.2.1",
|
||||
"eslint": "^8",
|
||||
"eslint-config-next": "14.2.0",
|
||||
"husky": "^8.0.3",
|
||||
"lint-staged": "^13.2.1",
|
||||
"prettier": "^2.8.7",
|
||||
"prettier-plugin-organize-imports": "^3.2.3",
|
||||
"typescript": "^5"
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 61 KiB |
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 61 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 867 KiB After Width: | Height: | Size: 867 KiB |
|
Before Width: | Height: | Size: 267 KiB After Width: | Height: | Size: 267 KiB |
|
Before Width: | Height: | Size: 737 KiB After Width: | Height: | Size: 737 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 358 B After Width: | Height: | Size: 358 B |
|
Before Width: | Height: | Size: 394 B After Width: | Height: | Size: 394 B |
|
Before Width: | Height: | Size: 556 B After Width: | Height: | Size: 556 B |
|
Before Width: | Height: | Size: 196 KiB After Width: | Height: | Size: 196 KiB |
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 126 KiB |
|
Before Width: | Height: | Size: 353 B After Width: | Height: | Size: 353 B |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 159 B After Width: | Height: | Size: 159 B |
|
Before Width: | Height: | Size: 175 B After Width: | Height: | Size: 175 B |
|
Before Width: | Height: | Size: 722 KiB After Width: | Height: | Size: 722 KiB |
|
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 151 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 405 KiB After Width: | Height: | Size: 405 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 433 KiB After Width: | Height: | Size: 433 KiB |
|
Before Width: | Height: | Size: 624 KiB After Width: | Height: | Size: 624 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 296 KiB After Width: | Height: | Size: 296 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 560 KiB After Width: | Height: | Size: 560 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 442 KiB After Width: | Height: | Size: 442 KiB |
|
Before Width: | Height: | Size: 354 KiB After Width: | Height: | Size: 354 KiB |
|
Before Width: | Height: | Size: 511 KiB After Width: | Height: | Size: 511 KiB |
|
Before Width: | Height: | Size: 315 KiB After Width: | Height: | Size: 315 KiB |
|
Before Width: | Height: | Size: 507 KiB After Width: | Height: | Size: 507 KiB |
|
Before Width: | Height: | Size: 254 KiB After Width: | Height: | Size: 254 KiB |
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 96 KiB After Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 432 KiB After Width: | Height: | Size: 432 KiB |
|
Before Width: | Height: | Size: 549 KiB After Width: | Height: | Size: 549 KiB |
|
Before Width: | Height: | Size: 249 KiB After Width: | Height: | Size: 249 KiB |
|
Before Width: | Height: | Size: 395 KiB After Width: | Height: | Size: 395 KiB |
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 228 KiB After Width: | Height: | Size: 228 KiB |
|
Before Width: | Height: | Size: 382 KiB After Width: | Height: | Size: 382 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |