Updating dependencies, updating postcss to be cleaner, and fixing css code.

This commit is contained in:
Bradley Shellnut 2023-06-01 22:22:34 -07:00
parent 16aad6696d
commit 734cee7a29
11 changed files with 815 additions and 105 deletions

40
.vscode/launch.json vendored
View file

@ -1,17 +1,27 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch Vite DEV server",
"request": "launch",
"runtimeExecutable": "npx",
"runtimeArgs": ["vite"],
"type": "node",
"serverReadyAction": {
"action": "debugWithChrome",
"pattern": "Local: http://localhost:([0-9]+)",
"uriFormat": "http://localhost:%s"
}
}
]
"version": "0.2.0",
"configurations": [
{
"name": "Launch server",
"request": "launch",
"runtimeArgs": ["dev"],
"runtimeExecutable": "pnpm",
"skipFiles": ["<node_internals>/**"],
"type": "node",
"console": "integratedTerminal"
},
{
"type": "chrome",
"request": "launch",
"name": "Launch browser",
"url": "http://localhost:5173",
"webRoot": "${workspaceFolder}"
}
],
"compounds": [
{
"name": "Both",
"configurations": ["Launch server", "Launch browser"]
}
]
}

View file

@ -11,7 +11,11 @@
"check": "svelte-check --tsconfig ./tsconfig.json",
"check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
"lint": "prettier --check --plugin-search-dir=. . && eslint .",
"format": "prettier --write --plugin-search-dir=. ."
"format": "prettier --write --plugin-search-dir=. .",
"site:update": "pnpm update -i -L",
"db:studio": "prisma studio",
"db:push": "prisma db push",
"db:seed": "prisma db seed"
},
"prisma": {
"seed": "ts-node --esm prisma/seed.ts"
@ -34,13 +38,9 @@
"just-clone": "^6.2.0",
"just-debounce-it": "^3.2.0",
"postcss": "^8.4.23",
"postcss-color-functional-notation": "^4.2.4",
"postcss-custom-media": "^9.1.3",
"postcss-env-function": "^4.0.6",
"postcss-import": "^15.1.0",
"postcss-load-config": "^4.0.1",
"postcss-media-minmax": "^5.0.0",
"postcss-nested": "^6.0.1",
"postcss-preset-env": "^8.4.2",
"prettier": "^2.8.8",
"prettier-plugin-svelte": "^2.10.0",
"prisma": "^4.14.1",
@ -57,6 +57,10 @@
"zod": "^3.21.4"
},
"type": "module",
"engines": {
"node": ">=18.12.1",
"pnpm": ">=8"
},
"dependencies": {
"@axiomhq/axiom-node": "^0.12.0",
"@fontsource/fira-mono": "^4.5.10",
@ -77,6 +81,7 @@
"open-props": "^1.5.8",
"svelte-lazy": "^1.2.1",
"svelte-lazy-loader": "^1.0.0",
"svelte-legos": "^0.2.1",
"sveltekit-flash-message": "^0.11.3",
"zod-to-json-schema": "^3.21.1"
}

View file

@ -1,4 +1,8 @@
lockfileVersion: '6.0'
lockfileVersion: '6.1'
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
dependencies:
'@axiomhq/axiom-node':
@ -58,6 +62,9 @@ dependencies:
svelte-lazy-loader:
specifier: ^1.0.0
version: 1.0.0
svelte-legos:
specifier: ^0.2.1
version: 0.2.1(svelte@3.59.1)
sveltekit-flash-message:
specifier: ^0.11.3
version: 0.11.3(@sveltejs/kit@1.19.0)(svelte@3.59.1)
@ -117,27 +124,15 @@ devDependencies:
postcss:
specifier: ^8.4.23
version: 8.4.23
postcss-color-functional-notation:
specifier: ^4.2.4
version: 4.2.4(postcss@8.4.23)
postcss-custom-media:
specifier: ^9.1.3
version: 9.1.3(postcss@8.4.23)
postcss-env-function:
specifier: ^4.0.6
version: 4.0.6(postcss@8.4.23)
postcss-import:
specifier: ^15.1.0
version: 15.1.0(postcss@8.4.23)
postcss-load-config:
specifier: ^4.0.1
version: 4.0.1(postcss@8.4.23)(ts-node@10.9.1)
postcss-media-minmax:
specifier: ^5.0.0
version: 5.0.0(postcss@8.4.23)
postcss-nested:
specifier: ^6.0.1
version: 6.0.1(postcss@8.4.23)
postcss-preset-env:
specifier: ^8.4.2
version: 8.4.2(postcss@8.4.23)
prettier:
specifier: ^2.8.8
version: 2.8.8
@ -225,6 +220,35 @@ packages:
'@csstools/css-tokenizer': 2.1.1
dev: true
/@csstools/color-helpers@2.1.0:
resolution: {integrity: sha512-OWkqBa7PDzZuJ3Ha7T5bxdSVfSCfTq6K1mbAhbO1MD+GSULGjrp45i5RudyJOedstSarN/3mdwu9upJE7gDXfw==}
engines: {node: ^14 || ^16 || >=18}
dev: true
/@csstools/css-calc@1.1.1(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1):
resolution: {integrity: sha512-Nh+iLCtjlooTzuR0lpmB8I6hPX/VupcGQ3Z1U2+wgJJ4fa8+cWkub+lCsbZcYPzBGsZLEL8fQAg+Na5dwEFJxg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
'@csstools/css-parser-algorithms': ^2.1.1
'@csstools/css-tokenizer': ^2.1.1
dependencies:
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
dev: true
/@csstools/css-color-parser@1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1):
resolution: {integrity: sha512-kt9jhqyL/Ig/Tsf1cY+iygxs2nu3/D532048G9BSeg9YjlpZxbor6I+nvgMNB1A1ppL+i15Mb/yyDHYMQmgBtQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
'@csstools/css-parser-algorithms': ^2.1.1
'@csstools/css-tokenizer': ^2.1.1
dependencies:
'@csstools/color-helpers': 2.1.0
'@csstools/css-calc': 1.1.1(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
dev: true
/@csstools/css-parser-algorithms@2.1.1(@csstools/css-tokenizer@2.1.1):
resolution: {integrity: sha512-viRnRh02AgO4mwIQb2xQNJju0i+Fh9roNgmbR5xEuG7J3TGgxjnE95HnBLgsFJOJOksvcfxOUCgODcft6Y07cA==}
engines: {node: ^14 || ^16 || >=18}
@ -239,8 +263,8 @@ packages:
engines: {node: ^14 || ^16 || >=18}
dev: true
/@csstools/media-query-list-parser@2.0.4(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1):
resolution: {integrity: sha512-GyYot6jHgcSDZZ+tLSnrzkR7aJhF2ZW6d+CXH66mjy5WpAQhZD4HDke2OQ36SivGRWlZJpAz7TzbW6OKlEpxAA==}
/@csstools/media-query-list-parser@2.1.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1):
resolution: {integrity: sha512-MXkR+TeaS2q9IkpyO6jVCdtA/bfpABJxIrfkLswThFN8EZZgI2RfAHhm6sDNDuYV25d5+b8Lj1fpTccIcSLPsQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
'@csstools/css-parser-algorithms': ^2.1.1
@ -250,6 +274,273 @@ packages:
'@csstools/css-tokenizer': 2.1.1
dev: true
/@csstools/postcss-cascade-layers@3.0.1(postcss@8.4.23):
resolution: {integrity: sha512-dD8W98dOYNOH/yX4V4HXOhfCOnvVAg8TtsL+qCGNoKXuq5z2C/d026wGWgySgC8cajXXo/wNezS31Glj5GcqrA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.11)
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/@csstools/postcss-color-function@2.2.3(postcss@8.4.23):
resolution: {integrity: sha512-b1ptNkr1UWP96EEHqKBWWaV5m/0hgYGctgA/RVZhONeP1L3T/8hwoqDm9bB23yVCfOgE9U93KI9j06+pEkJTvw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-color-parser': 1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
dev: true
/@csstools/postcss-color-mix-function@1.0.3(postcss@8.4.23):
resolution: {integrity: sha512-QGXjGugTluqFZWzVf+S3wCiRiI0ukXlYqCi7OnpDotP/zaVTyl/aqZujLFzTOXy24BoWnu89frGMc79ohY5eog==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-color-parser': 1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
dev: true
/@csstools/postcss-font-format-keywords@2.0.2(postcss@8.4.23):
resolution: {integrity: sha512-iKYZlIs6JsNT7NKyRjyIyezTCHLh4L4BBB3F5Nx7Dc4Z/QmBgX+YJFuUSar8IM6KclGiAUFGomXFdYxAwJydlA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/@csstools/postcss-gradients-interpolation-method@3.0.6(postcss@8.4.23):
resolution: {integrity: sha512-rBOBTat/YMmB0G8VHwKqDEx+RZ4KCU9j42K8LwS0IpZnyThalZZF7BCSsZ6TFlZhcRZKlZy3LLFI2pLqjNVGGA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-color-parser': 1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
dev: true
/@csstools/postcss-hwb-function@2.2.2(postcss@8.4.23):
resolution: {integrity: sha512-W5Y5oaJ382HSlbdGfPf60d7dAK6Hqf10+Be1yZbd/TNNrQ/3dDdV1c07YwOXPQ3PZ6dvFMhxbIbn8EC3ki3nEg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-color-parser': 1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
postcss: 8.4.23
dev: true
/@csstools/postcss-ic-unit@2.0.4(postcss@8.4.23):
resolution: {integrity: sha512-9W2ZbV7whWnr1Gt4qYgxMWzbevZMOvclUczT5vk4yR6vS53W/njiiUhtm/jh/BKYwQ1W3PECZjgAd2dH4ebJig==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/@csstools/postcss-is-pseudo-class@3.2.1(postcss@8.4.23):
resolution: {integrity: sha512-AtANdV34kJl04Al62is3eQRk/BfOfyAvEmRJvbt+nx5REqImLC+2XhuE6skgkcPli1l8ONS67wS+l1sBzySc3Q==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.11)
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/@csstools/postcss-logical-float-and-clear@1.0.1(postcss@8.4.23):
resolution: {integrity: sha512-eO9z2sMLddvlfFEW5Fxbjyd03zaO7cJafDurK4rCqyRt9P7aaWwha0LcSzoROlcZrw1NBV2JAp2vMKfPMQO1xw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
dev: true
/@csstools/postcss-logical-resize@1.0.1(postcss@8.4.23):
resolution: {integrity: sha512-x1ge74eCSvpBkDDWppl+7FuD2dL68WP+wwP2qvdUcKY17vJksz+XoE1ZRV38uJgS6FNUwC0AxrPW5gy3MxsDHQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/@csstools/postcss-logical-viewport-units@1.0.3(postcss@8.4.23):
resolution: {integrity: sha512-6zqcyRg9HSqIHIPMYdt6THWhRmE5/tyHKJQLysn2TeDf/ftq7Em9qwMTx98t2C/7UxIsYS8lOiHHxAVjWn2WUg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-tokenizer': 2.1.1
postcss: 8.4.23
dev: true
/@csstools/postcss-media-minmax@1.0.3(postcss@8.4.23):
resolution: {integrity: sha512-os7qe2HV/qBILKCGa/dl5AbpO6c+MZyunFBWPWJBrEVhulCYo13FgEWbhyERFM5FeJghiqYgJxM54oiJASpBnw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-calc': 1.1.1(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/media-query-list-parser': 2.1.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
postcss: 8.4.23
dev: true
/@csstools/postcss-media-queries-aspect-ratio-number-values@1.0.3(postcss@8.4.23):
resolution: {integrity: sha512-JHdwBSNZsur/mJXwzuC/gxyekhfSdWJaTiSOhUITk2D8pYRYcjV1MZiCiWupQNfM2Qp2W7w1A/gEU6U/xlpIyA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/media-query-list-parser': 2.1.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
postcss: 8.4.23
dev: true
/@csstools/postcss-nested-calc@2.0.2(postcss@8.4.23):
resolution: {integrity: sha512-jbwrP8rN4e7LNaRcpx3xpMUjhtt34I9OV+zgbcsYAAk6k1+3kODXJBf95/JMYWhu9g1oif7r06QVUgfWsKxCFw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/@csstools/postcss-normalize-display-values@2.0.1(postcss@8.4.23):
resolution: {integrity: sha512-TQT5g3JQ5gPXC239YuRK8jFceXF9d25ZvBkyjzBGGoW5st5sPXFVQS8OjYb9IJ/K3CdfK4528y483cgS2DJR/w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/@csstools/postcss-oklab-function@2.2.3(postcss@8.4.23):
resolution: {integrity: sha512-AgJ2rWMnLCDcbSMTHSqBYn66DNLBym6JpBpCaqmwZ9huGdljjDRuH3DzOYzkgQ7Pm2K92IYIq54IvFHloUOdvA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-color-parser': 1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
dev: true
/@csstools/postcss-progressive-custom-properties@2.3.0(postcss@8.4.23):
resolution: {integrity: sha512-Zd8ojyMlsL919TBExQ1I0CTpBDdyCpH/yOdqatZpuC3sd22K4SwC7+Yez3Q/vmXMWSAl+shjNeFZ7JMyxMjK+Q==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/@csstools/postcss-relative-color-syntax@1.0.1(postcss@8.4.23):
resolution: {integrity: sha512-IskxdQqAkx/pyyOEW3Lhn3nvOu5zlaZ8wQljFl5zc3ABl+gEFf2G42yWK3+wX+J0F4jm7OikOigXo9fAISFEmg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-color-parser': 1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
dev: true
/@csstools/postcss-scope-pseudo-class@2.0.2(postcss@8.4.23):
resolution: {integrity: sha512-6Pvo4uexUCXt+Hz5iUtemQAcIuCYnL+ePs1khFR6/xPgC92aQLJ0zGHonWoewiBE+I++4gXK3pr+R1rlOFHe5w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/@csstools/postcss-stepped-value-functions@2.1.1(postcss@8.4.23):
resolution: {integrity: sha512-YCvdF0GCZK35nhLgs7ippcxDlRVe5QsSht3+EghqTjnYnyl3BbWIN6fYQ1dKWYTJ+7Bgi41TgqQFfJDcp9Xy/w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-calc': 1.1.1(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
postcss: 8.4.23
dev: true
/@csstools/postcss-text-decoration-shorthand@2.2.4(postcss@8.4.23):
resolution: {integrity: sha512-zPN56sQkS/7YTCVZhOBVCWf7AiNge8fXDl7JVaHLz2RyT4pnyK2gFjckWRLpO0A2xkm1lCgZ0bepYZTwAVd/5A==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/color-helpers': 2.1.0
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/@csstools/postcss-trigonometric-functions@2.1.1(postcss@8.4.23):
resolution: {integrity: sha512-XcXmHEFfHXhvYz40FtDlA4Fp4NQln2bWTsCwthd2c+MCnYArUYU3YaMqzR5CrKP3pMoGYTBnp5fMqf1HxItNyw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-calc': 1.1.1(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
postcss: 8.4.23
dev: true
/@csstools/postcss-unset-value@2.0.1(postcss@8.4.23):
resolution: {integrity: sha512-oJ9Xl29/yU8U7/pnMJRqAZd4YXNCfGEdcP4ywREuqm/xMqcgDNDppYRoCGDt40aaZQIEKBS79LytUDN/DHf0Ew==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
dev: true
/@csstools/selector-specificity@2.2.0(postcss-selector-parser@6.0.11):
resolution: {integrity: sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss-selector-parser: ^6.0.10
dependencies:
postcss-selector-parser: 6.0.11
dev: true
/@esbuild/android-arm64@0.16.8:
resolution: {integrity: sha512-TGQM/tdy5EV1KoFHu0+cMrKvPR8UBLGEfwS84PTCJ07KVp21Fr488aFEL2TCamz9CxoF1np36kY6XOSdLncg2Q==}
engines: {node: '>=12'}
@ -1346,6 +1637,10 @@ packages:
resolution: {integrity: sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==}
dev: true
/canvas-confetti@1.6.0:
resolution: {integrity: sha512-ej+w/m8Jzpv9Z7W7uJZer14Ke8P2ogsjg4ZMGIuq4iqUOqY2Jq8BNW42iGmNfRwREaaEfFIczLuZZiEVSYNHAA==}
dev: false
/chai@4.3.7:
resolution: {integrity: sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==}
engines: {node: '>=4'}
@ -1447,6 +1742,41 @@ packages:
which: 2.0.2
dev: true
/css-blank-pseudo@5.0.2(postcss@8.4.23):
resolution: {integrity: sha512-aCU4AZ7uEcVSUzagTlA9pHciz7aWPKA/YzrEkpdSopJ2pvhIxiQ5sYeMz1/KByxlIo4XBdvMNJAVKMg/GRnhfw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/css-has-pseudo@5.0.2(postcss@8.4.23):
resolution: {integrity: sha512-q+U+4QdwwB7T9VEW/LyO6CFrLAeLqOykC5mDqJXc7aKZAhDbq7BvGT13VGJe+IwBfdN2o3Xdw2kJ5IxwV1Sc9Q==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.11)
postcss: 8.4.23
postcss-selector-parser: 6.0.11
postcss-value-parser: 4.2.0
dev: true
/css-prefers-color-scheme@8.0.2(postcss@8.4.23):
resolution: {integrity: sha512-OvFghizHJ45x7nsJJUSYLyQNTzsCU8yWjxAc/nhPQg1pbs18LMoET8N3kOweFDPy0JV0OSXN2iqRFhPBHYOeMA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
dev: true
/cssdb@7.6.0:
resolution: {integrity: sha512-Nna7rph8V0jC6+JBY4Vk4ndErUmfJfV6NJCaZdurL0omggabiy+QB2HCQtu5c/ACLZ0I7REv7A4QyPIoYzZx0w==}
dev: true
/cssesc@3.0.0:
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
engines: {node: '>=4'}
@ -2440,18 +2770,59 @@ packages:
hasBin: true
dev: true
/postcss-color-functional-notation@4.2.4(postcss@8.4.23):
resolution: {integrity: sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==}
engines: {node: ^12 || ^14 || >=16}
/postcss-attribute-case-insensitive@6.0.2(postcss@8.4.23):
resolution: {integrity: sha512-IRuCwwAAQbgaLhxQdQcIIK0dCVXg3XDUnzgKD8iwdiYdwU4rMWRWyl/W9/0nA4ihVpq5pyALiHB2veBJ0292pw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.2
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-clamp@4.1.0(postcss@8.4.23):
resolution: {integrity: sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==}
engines: {node: '>=7.6.0'}
peerDependencies:
postcss: ^8.4.6
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-custom-media@9.1.3(postcss@8.4.23):
resolution: {integrity: sha512-W1C4Fu6KAZ7sKYQCuGMr8gyaE4BtjTQGPLVS4m0WCaWM6l7PgVbvmDeb4ClBc5R/7kdwESYf0hdxGtEPhi9CLA==}
/postcss-color-functional-notation@5.1.0(postcss@8.4.23):
resolution: {integrity: sha512-w2R4py6zrVE1U7FwNaAc76tNQlG9GLkrBbcFw+VhUjyDDiV28vfZG+l4LyPmpoQpeSJVtu8VgNjE8Jv5SpC7dQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-color-hex-alpha@9.0.2(postcss@8.4.23):
resolution: {integrity: sha512-SfPjgr//VQ/DOCf80STIAsdAs7sbIbxATvVmd+Ec7JvR8onz9pjawhq3BJM3Pie40EE3TyB0P6hft16D33Nlyg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-color-rebeccapurple@8.0.2(postcss@8.4.23):
resolution: {integrity: sha512-xWf/JmAxVoB5bltHpXk+uGRoGFwu4WDAR7210el+iyvTdqiKpDhtcT8N3edXMoVJY0WHFMrKMUieql/wRNiXkw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-custom-media@9.1.4(postcss@8.4.23):
resolution: {integrity: sha512-4A7WEG3iIyKwfpxL5bkuSlHoHHGRTHl0212Z3uvpwJPyVfZJlkZAQNNgVC+oogrJgksDnfKyuuMbG6HafZPW8Q==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
@ -2459,13 +2830,97 @@ packages:
'@csstools/cascade-layer-name-parser': 1.0.2(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/media-query-list-parser': 2.0.4(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/media-query-list-parser': 2.1.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
postcss: 8.4.23
dev: true
/postcss-env-function@4.0.6(postcss@8.4.23):
resolution: {integrity: sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==}
engines: {node: ^12 || ^14 || >=16}
/postcss-custom-properties@13.2.0(postcss@8.4.23):
resolution: {integrity: sha512-UYiPqbqmVayyv56y0mtGhvUKZClflwE9cTTmPaqEX8fOVjVwsotqKGYtJXSLxrJLwf9tt7ka+Luyh1ZAOhGHWA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/cascade-layer-name-parser': 1.0.2(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-custom-selectors@7.1.3(postcss@8.4.23):
resolution: {integrity: sha512-GTVscax6O/8s7agFF0HsOoIyjrnAbLjgCUle8tn+0oDGJuVx7p56U7ClSRoC49poxFuMfu2B4Q8GnxSCOeuFKw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/cascade-layer-name-parser': 1.0.2(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-dir-pseudo-class@7.0.2(postcss@8.4.23):
resolution: {integrity: sha512-cMnslilYxBf9k3qejnovrUONZx1rXeUZJw06fgIUBzABJe3D2LiLL5WAER7Imt3nrkaIgG05XZBztueLEf5P8w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-double-position-gradients@4.0.4(postcss@8.4.23):
resolution: {integrity: sha512-nUAbUXURemLXIrl4Xoia2tiu5z/n8sY+BVDZApoeT9BlpByyrp02P/lFCRrRvZ/zrGRE+MOGLhk8o7VcMCtPtQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-focus-visible@8.0.2(postcss@8.4.23):
resolution: {integrity: sha512-f/Vd+EC/GaKElknU59esVcRYr/Y3t1ZAQyL4u2xSOgkDy4bMCmG7VP5cGvj3+BTLNE9ETfEuz2nnt4qkZwTTeA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-focus-within@7.0.2(postcss@8.4.23):
resolution: {integrity: sha512-AHAJ89UQBcqBvFgQJE9XasGuwMNkKsGj4D/f9Uk60jFmEBHpAL14DrnSk3Rj+SwZTr/WUG+mh+Rvf8fid/346w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-font-variant@5.0.0(postcss@8.4.23):
resolution: {integrity: sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==}
peerDependencies:
postcss: ^8.1.0
dependencies:
postcss: 8.4.23
dev: true
/postcss-gap-properties@4.0.1(postcss@8.4.23):
resolution: {integrity: sha512-V5OuQGw4lBumPlwHWk/PRfMKjaq/LTGR4WDTemIMCaMevArVfCCA9wBJiL1VjDAd+rzuCIlkRoRvDsSiAaZ4Fg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
dev: true
/postcss-image-set-function@5.0.2(postcss@8.4.23):
resolution: {integrity: sha512-Sszjwo0ubETX0Fi5MvpYzsONwrsjeabjMoc5YqHvURFItXgIu3HdCjcVuVKGMPGzKRhgaknmdM5uVWInWPJmeg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
@ -2485,6 +2940,27 @@ packages:
resolve: 1.22.1
dev: true
/postcss-initial@4.0.1(postcss@8.4.23):
resolution: {integrity: sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==}
peerDependencies:
postcss: ^8.0.0
dependencies:
postcss: 8.4.23
dev: true
/postcss-lab-function@5.2.3(postcss@8.4.23):
resolution: {integrity: sha512-fi32AYKzji5/rvgxo5zXHFvAYBw0u0OzELbeCNjEZVLUir18Oj+9RmNphtM8QdLUaUnrfx8zy8vVYLmFLkdmrQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/css-color-parser': 1.2.0(@csstools/css-parser-algorithms@2.1.1)(@csstools/css-tokenizer@2.1.1)
'@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
'@csstools/css-tokenizer': 2.1.1
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
postcss: 8.4.23
dev: true
/postcss-load-config@3.1.4(postcss@8.4.23)(ts-node@10.9.1):
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
engines: {node: '>= 10'}
@ -2521,25 +2997,147 @@ packages:
yaml: 2.1.3
dev: true
/postcss-media-minmax@5.0.0(postcss@8.4.23):
resolution: {integrity: sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==}
engines: {node: '>=10.0.0'}
/postcss-logical@6.2.0(postcss@8.4.23):
resolution: {integrity: sha512-aqlfKGaY0nnbgI9jwUikp4gJKBqcH5noU/EdnIVceghaaDPYhZuyJVxlvWNy55tlTG5tunRKCTAX9yljLiFgmw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.1.0
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-nesting@11.2.2(postcss@8.4.23):
resolution: {integrity: sha512-aOTiUniAB1bcPE6GGiynWRa6PZFPhOTAm5q3q5cem6QeSijIHHkWr6gs65ukCZMXeak8yXeZVbBJET3VM+HlhA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.11)
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-opacity-percentage@2.0.0(postcss@8.4.23):
resolution: {integrity: sha512-lyDrCOtntq5Y1JZpBFzIWm2wG9kbEdujpNt4NLannF+J9c8CgFIzPa80YQfdza+Y+yFfzbYj/rfoOsYsooUWTQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.2
dependencies:
postcss: 8.4.23
dev: true
/postcss-nested@6.0.1(postcss@8.4.23):
resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==}
engines: {node: '>=12.0'}
/postcss-overflow-shorthand@4.0.1(postcss@8.4.23):
resolution: {integrity: sha512-HQZ0qi/9iSYHW4w3ogNqVNr2J49DHJAl7r8O2p0Meip38jsdnRPgiDW7r/LlLrrMBMe3KHkvNtAV2UmRVxzLIg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.2.14
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-page-break@3.0.4(postcss@8.4.23):
resolution: {integrity: sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==}
peerDependencies:
postcss: ^8
dependencies:
postcss: 8.4.23
dev: true
/postcss-place@8.0.1(postcss@8.4.23):
resolution: {integrity: sha512-Ow2LedN8sL4pq8ubukO77phSVt4QyCm35ZGCYXKvRFayAwcpgB0sjNJglDoTuRdUL32q/ZC1VkPBo0AOEr4Uiw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-value-parser: 4.2.0
dev: true
/postcss-preset-env@8.4.2(postcss@8.4.23):
resolution: {integrity: sha512-Bihxo+FsyVNjsRADiYYnj9Ez0WBSWSSHAe8WvxoMlqrw8H8m6gK9E0MkDd7P6ForoikRIF3I8grGg/pFM6ECRQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
'@csstools/postcss-cascade-layers': 3.0.1(postcss@8.4.23)
'@csstools/postcss-color-function': 2.2.3(postcss@8.4.23)
'@csstools/postcss-color-mix-function': 1.0.3(postcss@8.4.23)
'@csstools/postcss-font-format-keywords': 2.0.2(postcss@8.4.23)
'@csstools/postcss-gradients-interpolation-method': 3.0.6(postcss@8.4.23)
'@csstools/postcss-hwb-function': 2.2.2(postcss@8.4.23)
'@csstools/postcss-ic-unit': 2.0.4(postcss@8.4.23)
'@csstools/postcss-is-pseudo-class': 3.2.1(postcss@8.4.23)
'@csstools/postcss-logical-float-and-clear': 1.0.1(postcss@8.4.23)
'@csstools/postcss-logical-resize': 1.0.1(postcss@8.4.23)
'@csstools/postcss-logical-viewport-units': 1.0.3(postcss@8.4.23)
'@csstools/postcss-media-minmax': 1.0.3(postcss@8.4.23)
'@csstools/postcss-media-queries-aspect-ratio-number-values': 1.0.3(postcss@8.4.23)
'@csstools/postcss-nested-calc': 2.0.2(postcss@8.4.23)
'@csstools/postcss-normalize-display-values': 2.0.1(postcss@8.4.23)
'@csstools/postcss-oklab-function': 2.2.3(postcss@8.4.23)
'@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.23)
'@csstools/postcss-relative-color-syntax': 1.0.1(postcss@8.4.23)
'@csstools/postcss-scope-pseudo-class': 2.0.2(postcss@8.4.23)
'@csstools/postcss-stepped-value-functions': 2.1.1(postcss@8.4.23)
'@csstools/postcss-text-decoration-shorthand': 2.2.4(postcss@8.4.23)
'@csstools/postcss-trigonometric-functions': 2.1.1(postcss@8.4.23)
'@csstools/postcss-unset-value': 2.0.1(postcss@8.4.23)
autoprefixer: 10.4.14(postcss@8.4.23)
browserslist: 4.21.5
css-blank-pseudo: 5.0.2(postcss@8.4.23)
css-has-pseudo: 5.0.2(postcss@8.4.23)
css-prefers-color-scheme: 8.0.2(postcss@8.4.23)
cssdb: 7.6.0
postcss: 8.4.23
postcss-attribute-case-insensitive: 6.0.2(postcss@8.4.23)
postcss-clamp: 4.1.0(postcss@8.4.23)
postcss-color-functional-notation: 5.1.0(postcss@8.4.23)
postcss-color-hex-alpha: 9.0.2(postcss@8.4.23)
postcss-color-rebeccapurple: 8.0.2(postcss@8.4.23)
postcss-custom-media: 9.1.4(postcss@8.4.23)
postcss-custom-properties: 13.2.0(postcss@8.4.23)
postcss-custom-selectors: 7.1.3(postcss@8.4.23)
postcss-dir-pseudo-class: 7.0.2(postcss@8.4.23)
postcss-double-position-gradients: 4.0.4(postcss@8.4.23)
postcss-focus-visible: 8.0.2(postcss@8.4.23)
postcss-focus-within: 7.0.2(postcss@8.4.23)
postcss-font-variant: 5.0.0(postcss@8.4.23)
postcss-gap-properties: 4.0.1(postcss@8.4.23)
postcss-image-set-function: 5.0.2(postcss@8.4.23)
postcss-initial: 4.0.1(postcss@8.4.23)
postcss-lab-function: 5.2.3(postcss@8.4.23)
postcss-logical: 6.2.0(postcss@8.4.23)
postcss-nesting: 11.2.2(postcss@8.4.23)
postcss-opacity-percentage: 2.0.0(postcss@8.4.23)
postcss-overflow-shorthand: 4.0.1(postcss@8.4.23)
postcss-page-break: 3.0.4(postcss@8.4.23)
postcss-place: 8.0.1(postcss@8.4.23)
postcss-pseudo-class-any-link: 8.0.2(postcss@8.4.23)
postcss-replace-overflow-wrap: 4.0.0(postcss@8.4.23)
postcss-selector-not: 7.0.1(postcss@8.4.23)
postcss-value-parser: 4.2.0
dev: true
/postcss-pseudo-class-any-link@8.0.2(postcss@8.4.23):
resolution: {integrity: sha512-FYTIuRE07jZ2CW8POvctRgArQJ43yxhr5vLmImdKUvjFCkR09kh8pIdlCwdx/jbFm7MiW4QP58L4oOUv3grQYA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-replace-overflow-wrap@4.0.0(postcss@8.4.23):
resolution: {integrity: sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==}
peerDependencies:
postcss: ^8.0.3
dependencies:
postcss: 8.4.23
dev: true
/postcss-safe-parser@6.0.0(postcss@8.4.23):
resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==}
engines: {node: '>=12.0'}
@ -2549,6 +3147,16 @@ packages:
postcss: 8.4.23
dev: true
/postcss-selector-not@7.0.1(postcss@8.4.23):
resolution: {integrity: sha512-1zT5C27b/zeJhchN7fP0kBr16Cc61mu7Si9uWWLoA3Px/D9tIJPKchJCkUH3tPO5D0pCFmGeApAv8XpXBQJ8SQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
postcss: 8.4.23
postcss-selector-parser: 6.0.11
dev: true
/postcss-selector-parser@6.0.11:
resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==}
engines: {node: '>=4'}
@ -2590,6 +3198,10 @@ packages:
hasBin: true
dev: true
/prism-svelte@0.5.0:
resolution: {integrity: sha512-db91Bf3pRGKDPz1lAqLFSJXeW13mulUJxhycysFpfXV5MIK7RgWWK2E5aPAa71s8TCzQUXxF5JOV42/iOs6QkA==}
dev: false
/prisma@4.14.1:
resolution: {integrity: sha512-z6hxzTMYqT9SIKlzD08dhzsLUpxjFKKsLpp5/kBDnSqiOjtUyyl/dC5tzxLcOa3jkEHQ8+RpB/fE3w8bgNP51g==}
engines: {node: '>=14.17'}
@ -2598,6 +3210,11 @@ packages:
dependencies:
'@prisma/engines': 4.14.1
/prismjs@1.29.0:
resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==}
engines: {node: '>=6'}
dev: false
/proxy-from-env@1.1.0:
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
dev: false
@ -2927,6 +3544,17 @@ packages:
svelte: 3.59.1
dev: false
/svelte-legos@0.2.1(svelte@3.59.1):
resolution: {integrity: sha512-M7IncWP2e8FaHzQN1DSzxLSoq/6aQYWZ93REZam9bYlvLEjdPGWLAYdpPNnnZtXlHco+o3zrgYTdwsyyS9beUQ==}
peerDependencies:
svelte: ^3.54.0
dependencies:
canvas-confetti: 1.6.0
prism-svelte: 0.5.0
prismjs: 1.29.0
svelte: 3.59.1
dev: false
/svelte-preprocess@4.10.7(postcss-load-config@4.0.1)(postcss@8.4.23)(sass@1.62.1)(svelte@3.59.1)(typescript@4.9.5):
resolution: {integrity: sha512-sNPBnqYD6FnmdBrUmBCaqS00RyCsCpj2BG58A1JBswNF7b0OKviwxqVrOL/CKyJrLSClrSeqQv5BXNg2RUbPOw==}
engines: {node: '>= 9.11.2'}

View file

@ -1,24 +1,17 @@
// const tailwindcss = require('tailwindcss');
const autoprefixer = require('autoprefixer');
const postcssMediaMinmax = require('postcss-media-minmax');
const customMedia = require('postcss-custom-media');
const postcssPresetEnv = require('postcss-preset-env');
const atImport = require('postcss-import');
const postcssNested = require('postcss-nested');
const postcssEnvFunction = require('postcss-env-function');
const config = {
plugins: [
//Some plugins, like tailwindcss/nesting, need to run before Tailwind,
// tailwindcss(),
//But others, like autoprefixer, need to run after
autoprefixer(),
postcssMediaMinmax,
customMedia,
atImport(),
postcssNested,
postcssEnvFunction({
importFrom: './src/lib/util/environmentVariables.json'
}),
postcssPresetEnv({
stage: 3,
features: {
'nesting-rules': true,
'custom-media-queries': true,
'media-query-ranges': true,
}
})
]
};

View file

@ -21,8 +21,10 @@ model AuthUser {
verified Boolean @default(false)
receiveEmail Boolean @default(false)
token String? @unique
createdAt DateTime @default(now()) @db.Timestamp(6)
updatedAt DateTime @updatedAt @db.Timestamp(6)
collection Collection?
wishlist Wishlist[]
createdAt DateTime @default(now()) @db.Timestamp(6)
updatedAt DateTime @updatedAt @db.Timestamp(6)
auth_session AuthSession[]
auth_key AuthKey[]
@ -57,8 +59,52 @@ enum Role {
ADMIN
}
model Collection {
id String @id @default(cuid())
user_id String @unique
auth_user AuthUser @relation(references: [id], fields: [user_id])
items CollectionItem[]
@@index([user_id])
@@map("collections")
}
model CollectionItem {
id String @id @default(cuid())
collection_id String
collection Collection @relation(references: [id], fields: [collection_id])
game_id String
game Game @relation(references: [id], fields: [game_id])
times_played Int
@@index([game_id, collection_id])
@@map("collection_items")
}
model Wishlist {
id String @id @default(cuid())
name String
user_id String
auth_user AuthUser @relation(references: [id], fields: [user_id])
items WishlistItem[]
@@index([user_id])
@@map("wishlists")
}
model WishlistItem {
id String @id @default(cuid())
wishlist_id String
wishlist Wishlist @relation(references: [id], fields: [wishlist_id])
game_id String
game Game @relation(references: [id], fields: [game_id])
@@index([game_id, wishlist_id])
@@map("wishlist_items")
}
model Game {
id String @id
id String @id @default(cuid())
name String
description String?
yearPublished Int?
@ -75,24 +121,43 @@ model Game {
weightUnits String?
bggId String?
bggUrl String?
primaryPublisher Publisher?
primary_publisher_id String
primaryPublisher Publisher? @relation("PrimaryPublishers", references: [id], fields: [primary_publisher_id])
categories Category[]
mechanics Mechanic[]
designers Designer[]
publishers Publisher[]
artists Artist[]
names String[] @db.Array
names GameName[]
expansions Expansion[]
collection_items CollectionItem[]
wishlist_items WishlistItem[]
external_id String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@index([game_id])
@@index([primary_publisher_id])
@@map("games")
}
model GameName {
id String @id @default(cuid())
name String
game_id String
game Game @relation(references: [id], fields: [game_id])
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@index([game_id])
@@map("game_names")
}
model Publisher {
id String @id
id String @id @default(cuid())
name String
games Game[] @relation(references: [id], fields: [game_id])
primaryPublisher Game[] @relation("PrimaryPublisher")
games Game[]
primaryPublisher Game[] @relation("PrimaryPublishers")
external_id String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@ -100,10 +165,11 @@ model Publisher {
}
model Category {
id String @id
id String @id @default(cuid())
name String
slug String
games Game[] @relation("GameCategories")
games Game[]
external_id String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@ -111,9 +177,10 @@ model Category {
}
model Mechanic {
id String @id
id String @id @default(cuid())
name String
games Game[] @relation("GameMechanics")
games Game[]
external_id String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@ -121,9 +188,10 @@ model Mechanic {
}
model Designer {
id String @id
id String @id @default(cuid())
name String
games Game[] @relation("GameDesigners")
games Game[]
external_id String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@ -131,9 +199,10 @@ model Designer {
}
model Artist {
id String @id
id String @id @default(cuid())
name String
games Game[] @relation("GameArtists")
games Game[]
external_id String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@ -141,13 +210,15 @@ model Artist {
}
model Expansion {
id String @id
id String @id @default(cuid())
name String
yearPublished Int?
baseGame Game? @relation("Expansions", fields: [baseGameId], references: [id])
baseGameId String?
baseGame Game? @relation(fields: [base_game_id], references: [id])
base_game_id String?
external_id String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@index([base_game_id])
@@map("expansions")
}

View file

@ -23,7 +23,7 @@
text-align: start;
background-color: var(--color-btn-primary-active);
@media (min-width: env(--large-viewport)) {
@media (min-width: 1000px) {
min-width: 23.5rem;
}
}

View file

@ -48,7 +48,7 @@
gap: 2rem;
margin: 1rem 0;
button {
& button {
display: flex;
place-content: center;
gap: 1rem;

View file

@ -285,7 +285,7 @@
.games {
margin: 2rem 0rem;
h1 {
& h1 {
margin-bottom: 2rem;
}
}
@ -296,15 +296,19 @@
grid-template-columns: repeat(var(--listColumns), minmax(250px, 1fr));
gap: 2rem;
@media screen and (env(--large-viewport) < width <= env(--xxlarge-viewport)) {
@media (width >= 1500px) {
--listColumns: 3;
}
@media screen and (env(--small-viewport) < width <= env(--large-viewport)) {
@media (1000px < width <= 1500px) {
--listColumns: 3;
}
@media (600px < width <= 1000px) {
--listColumns: 2;
}
@media screen and (width <= env(--small-viewport)) {
@media (width <= 600px) {
--listColumns: 1;
}
}

View file

@ -1,6 +1,6 @@
export const load = async (event: { locals: { user: any }; url: URL }) => {
export const load = async ({ url, locals }) => {
return {
url: event.url.pathname,
user: event.locals.user
url: url.pathname,
user: locals.user
};
};

View file

@ -123,7 +123,7 @@
place-items: center;
gap: 1rem;
h3 {
& h3 {
color: white;
}
}

View file

@ -1,4 +1,3 @@
import type { Actions, RequestEvent } from '../$types';
import { BOARD_GAME_ATLAS_CLIENT_ID } from '$env/static/private';
import { error } from '@sveltejs/kit';
import { superValidate } from 'sveltekit-superforms/server';
@ -109,7 +108,7 @@ export const load = async ({ fetch, url }) => {
};
};
export const actions: Actions = {
export const actions = {
random: async ({ request }): Promise<any> => {
const form = await superValidate(request, search_schema);
const queryParams: SearchQuery = {