diff --git a/package.json b/package.json
index dc17f69..0f76a5f 100644
--- a/package.json
+++ b/package.json
@@ -21,36 +21,36 @@
"seed": "ts-node --esm prisma/seed.ts"
},
"devDependencies": {
- "@playwright/test": "^1.34.3",
+ "@playwright/test": "^1.35.1",
"@rgossiaux/svelte-headlessui": "1.0.2",
"@rgossiaux/svelte-heroicons": "^0.1.2",
"@sveltejs/adapter-auto": "^1.0.3",
"@sveltejs/adapter-vercel": "^1.0.6",
- "@sveltejs/kit": "^1.19.0",
+ "@sveltejs/kit": "^1.20.2",
"@types/cookie": "^0.5.1",
- "@types/node": "^18.16.16",
- "@typescript-eslint/eslint-plugin": "^5.59.7",
- "@typescript-eslint/parser": "^5.59.7",
+ "@types/node": "^18.16.18",
+ "@typescript-eslint/eslint-plugin": "^5.59.11",
+ "@typescript-eslint/parser": "^5.59.11",
"autoprefixer": "^10.4.14",
- "eslint": "^8.41.0",
+ "eslint": "^8.42.0",
"eslint-config-prettier": "^8.8.0",
- "eslint-plugin-svelte": "^2.29.0",
+ "eslint-plugin-svelte": "^2.30.0",
"just-clone": "^6.2.0",
"just-debounce-it": "^3.2.0",
- "postcss": "^8.4.23",
+ "postcss": "^8.4.24",
"postcss-import": "^15.1.0",
"postcss-load-config": "^4.0.1",
- "postcss-preset-env": "^8.4.2",
+ "postcss-preset-env": "^8.5.0",
"prettier": "^2.8.8",
- "prettier-plugin-svelte": "^2.10.0",
- "prisma": "^4.14.1",
- "sass": "^1.62.1",
+ "prettier-plugin-svelte": "^2.10.1",
+ "prisma": "^4.15.0",
+ "sass": "^1.63.4",
"svelte": "^3.59.1",
"svelte-check": "^2.10.3",
- "svelte-preprocess": "^5.0.3",
- "sveltekit-superforms": "^0.8.7",
+ "svelte-preprocess": "^5.0.4",
+ "sveltekit-superforms": "^1.0.0",
"ts-node": "^10.9.1",
- "tslib": "^2.5.2",
+ "tslib": "^2.5.3",
"typescript": "^4.9.5",
"vite": "^4.3.9",
"vitest": "^0.25.3",
@@ -64,21 +64,21 @@
"dependencies": {
"@axiomhq/axiom-node": "^0.12.0",
"@fontsource/fira-mono": "^4.5.10",
- "@iconify-icons/line-md": "^1.2.22",
+ "@iconify-icons/line-md": "^1.2.23",
"@iconify-icons/mdi": "^1.2.46",
"@leveluptuts/svelte-side-menu": "^1.0.5",
"@leveluptuts/svelte-toy": "^2.0.3",
"@lucia-auth/adapter-mysql": "^1.1.1",
"@lucia-auth/adapter-prisma": "^2.0.0",
"@lukeed/uuid": "^2.0.1",
- "@prisma/client": "4.14.1",
+ "@prisma/client": "4.15.0",
"@types/feather-icons": "^4.29.1",
"cookie": "^0.5.0",
"feather-icons": "^4.29.0",
"iconify-icon": "^1.0.7",
"loader": "^2.1.1",
- "lucia-auth": "^1.7.0",
- "open-props": "^1.5.8",
+ "lucia-auth": "^1.8.0",
+ "open-props": "^1.5.9",
"svelte-lazy": "^1.2.1",
"svelte-lazy-loader": "^1.0.0",
"svelte-legos": "^0.2.1",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 78c4309..1caaae1 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,4 +1,4 @@
-lockfileVersion: '6.1'
+lockfileVersion: '6.0'
settings:
autoInstallPeers: true
@@ -12,8 +12,8 @@ dependencies:
specifier: ^4.5.10
version: 4.5.10
'@iconify-icons/line-md':
- specifier: ^1.2.22
- version: 1.2.22
+ specifier: ^1.2.23
+ version: 1.2.23
'@iconify-icons/mdi':
specifier: ^1.2.46
version: 1.2.46
@@ -25,16 +25,16 @@ dependencies:
version: 2.0.3
'@lucia-auth/adapter-mysql':
specifier: ^1.1.1
- version: 1.1.1(lucia-auth@1.7.0)
+ version: 1.1.1(lucia-auth@1.8.0)
'@lucia-auth/adapter-prisma':
specifier: ^2.0.0
- version: 2.0.0(@prisma/client@4.14.1)(lucia-auth@1.7.0)
+ version: 2.0.0(@prisma/client@4.15.0)(lucia-auth@1.8.0)
'@lukeed/uuid':
specifier: ^2.0.1
version: 2.0.1
'@prisma/client':
- specifier: 4.14.1
- version: 4.14.1(prisma@4.14.1)
+ specifier: 4.15.0
+ version: 4.15.0(prisma@4.15.0)
'@types/feather-icons':
specifier: ^4.29.1
version: 4.29.1
@@ -51,11 +51,11 @@ dependencies:
specifier: ^2.1.1
version: 2.1.1
lucia-auth:
- specifier: ^1.7.0
- version: 1.7.0
+ specifier: ^1.8.0
+ version: 1.8.0
open-props:
- specifier: ^1.5.8
- version: 1.5.8
+ specifier: ^1.5.9
+ version: 1.5.9
svelte-lazy:
specifier: ^1.2.1
version: 1.2.1(svelte@3.59.1)
@@ -67,15 +67,15 @@ dependencies:
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)
+ version: 0.11.3(@sveltejs/kit@1.20.2)(svelte@3.59.1)
zod-to-json-schema:
specifier: ^3.21.1
version: 3.21.1(zod@3.21.4)
devDependencies:
'@playwright/test':
- specifier: ^1.34.3
- version: 1.34.3
+ specifier: ^1.35.1
+ version: 1.35.1
'@rgossiaux/svelte-headlessui':
specifier: 1.0.2
version: 1.0.2(svelte@3.59.1)
@@ -84,37 +84,37 @@ devDependencies:
version: 0.1.2(svelte@3.59.1)
'@sveltejs/adapter-auto':
specifier: ^1.0.3
- version: 1.0.3(@sveltejs/kit@1.19.0)
+ version: 1.0.3(@sveltejs/kit@1.20.2)
'@sveltejs/adapter-vercel':
specifier: ^1.0.6
- version: 1.0.6(@sveltejs/kit@1.19.0)
+ version: 1.0.6(@sveltejs/kit@1.20.2)
'@sveltejs/kit':
- specifier: ^1.19.0
- version: 1.19.0(svelte@3.59.1)(vite@4.3.9)
+ specifier: ^1.20.2
+ version: 1.20.2(svelte@3.59.1)(vite@4.3.9)
'@types/cookie':
specifier: ^0.5.1
version: 0.5.1
'@types/node':
- specifier: ^18.16.16
- version: 18.16.16
+ specifier: ^18.16.18
+ version: 18.16.18
'@typescript-eslint/eslint-plugin':
- specifier: ^5.59.7
- version: 5.59.7(@typescript-eslint/parser@5.59.7)(eslint@8.41.0)(typescript@4.9.5)
+ specifier: ^5.59.11
+ version: 5.59.11(@typescript-eslint/parser@5.59.11)(eslint@8.42.0)(typescript@4.9.5)
'@typescript-eslint/parser':
- specifier: ^5.59.7
- version: 5.59.7(eslint@8.41.0)(typescript@4.9.5)
+ specifier: ^5.59.11
+ version: 5.59.11(eslint@8.42.0)(typescript@4.9.5)
autoprefixer:
specifier: ^10.4.14
- version: 10.4.14(postcss@8.4.23)
+ version: 10.4.14(postcss@8.4.24)
eslint:
- specifier: ^8.41.0
- version: 8.41.0
+ specifier: ^8.42.0
+ version: 8.42.0
eslint-config-prettier:
specifier: ^8.8.0
- version: 8.8.0(eslint@8.41.0)
+ version: 8.8.0(eslint@8.42.0)
eslint-plugin-svelte:
- specifier: ^2.29.0
- version: 2.29.0(eslint@8.41.0)(svelte@3.59.1)(ts-node@10.9.1)
+ specifier: ^2.30.0
+ version: 2.30.0(eslint@8.42.0)(svelte@3.59.1)(ts-node@10.9.1)
just-clone:
specifier: ^6.2.0
version: 6.2.0
@@ -122,56 +122,56 @@ devDependencies:
specifier: ^3.2.0
version: 3.2.0
postcss:
- specifier: ^8.4.23
- version: 8.4.23
+ specifier: ^8.4.24
+ version: 8.4.24
postcss-import:
specifier: ^15.1.0
- version: 15.1.0(postcss@8.4.23)
+ version: 15.1.0(postcss@8.4.24)
postcss-load-config:
specifier: ^4.0.1
- version: 4.0.1(postcss@8.4.23)(ts-node@10.9.1)
+ version: 4.0.1(postcss@8.4.24)(ts-node@10.9.1)
postcss-preset-env:
- specifier: ^8.4.2
- version: 8.4.2(postcss@8.4.23)
+ specifier: ^8.5.0
+ version: 8.5.0(postcss@8.4.24)
prettier:
specifier: ^2.8.8
version: 2.8.8
prettier-plugin-svelte:
- specifier: ^2.10.0
- version: 2.10.0(prettier@2.8.8)(svelte@3.59.1)
+ specifier: ^2.10.1
+ version: 2.10.1(prettier@2.8.8)(svelte@3.59.1)
prisma:
- specifier: ^4.14.1
- version: 4.14.1
+ specifier: ^4.15.0
+ version: 4.15.0
sass:
- specifier: ^1.62.1
- version: 1.62.1
+ specifier: ^1.63.4
+ version: 1.63.4
svelte:
specifier: ^3.59.1
version: 3.59.1
svelte-check:
specifier: ^2.10.3
- version: 2.10.3(postcss-load-config@4.0.1)(postcss@8.4.23)(sass@1.62.1)(svelte@3.59.1)
+ version: 2.10.3(postcss-load-config@4.0.1)(postcss@8.4.24)(sass@1.63.4)(svelte@3.59.1)
svelte-preprocess:
- specifier: ^5.0.3
- version: 5.0.3(postcss-load-config@4.0.1)(postcss@8.4.23)(sass@1.62.1)(svelte@3.59.1)(typescript@4.9.5)
+ specifier: ^5.0.4
+ version: 5.0.4(postcss-load-config@4.0.1)(postcss@8.4.24)(sass@1.63.4)(svelte@3.59.1)(typescript@4.9.5)
sveltekit-superforms:
- specifier: ^0.8.7
- version: 0.8.7(@sveltejs/kit@1.19.0)(svelte@3.59.1)(zod@3.21.4)
+ specifier: ^1.0.0
+ version: 1.0.0(@sveltejs/kit@1.20.2)(svelte@3.59.1)(zod@3.21.4)
ts-node:
specifier: ^10.9.1
- version: 10.9.1(@types/node@18.16.16)(typescript@4.9.5)
+ version: 10.9.1(@types/node@18.16.18)(typescript@4.9.5)
tslib:
- specifier: ^2.5.2
- version: 2.5.2
+ specifier: ^2.5.3
+ version: 2.5.3
typescript:
specifier: ^4.9.5
version: 4.9.5
vite:
specifier: ^4.3.9
- version: 4.3.9(@types/node@18.16.16)(sass@1.62.1)
+ version: 4.3.9(@types/node@18.16.18)(sass@1.63.4)
vitest:
specifier: ^0.25.3
- version: 0.25.8(sass@1.62.1)
+ version: 0.25.8(sass@1.63.4)
zod:
specifier: ^3.21.4
version: 3.21.4
@@ -236,6 +236,17 @@ packages:
'@csstools/css-tokenizer': 2.1.1
dev: true
+ /@csstools/css-calc@1.1.1(@csstools/css-parser-algorithms@2.2.0)(@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.2.0(@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}
@@ -249,6 +260,19 @@ packages:
'@csstools/css-tokenizer': 2.1.1
dev: true
+ /@csstools/css-color-parser@1.2.1(@csstools/css-parser-algorithms@2.2.0)(@csstools/css-tokenizer@2.1.1):
+ resolution: {integrity: sha512-NcmaoJIEycIH0HnzZRrwRcBljPh1AWcXl4CNL8MAD3+Zy8XyIpdTtTMaY/phnLHHIYkyjaoSTdxAecss6+PCcg==}
+ 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.2.0)(@csstools/css-tokenizer@2.1.1)
+ '@csstools/css-parser-algorithms': 2.2.0(@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}
@@ -258,6 +282,15 @@ packages:
'@csstools/css-tokenizer': 2.1.1
dev: true
+ /@csstools/css-parser-algorithms@2.2.0(@csstools/css-tokenizer@2.1.1):
+ resolution: {integrity: sha512-9BoQ/jSrPq4vv3b9jjLW+PNNv56KlDH5JMx5yASSNrCtvq70FCNZUjXRvbCeR9hYj9ZyhURtqpU/RFIgg6kiOw==}
+ engines: {node: ^14 || ^16 || >=18}
+ peerDependencies:
+ '@csstools/css-tokenizer': ^2.1.1
+ dependencies:
+ '@csstools/css-tokenizer': 2.1.1
+ dev: true
+
/@csstools/css-tokenizer@2.1.1:
resolution: {integrity: sha512-GbrTj2Z8MCTUv+52GE0RbFGM527xuXZ0Xa5g0Z+YN573uveS4G0qi6WNOMyz3yrFM/jaILTTwJ0+umx81EzqfA==}
engines: {node: ^14 || ^16 || >=18}
@@ -274,18 +307,18 @@ packages:
'@csstools/css-tokenizer': 2.1.1
dev: true
- /@csstools/postcss-cascade-layers@3.0.1(postcss@8.4.23):
+ /@csstools/postcss-cascade-layers@3.0.1(postcss@8.4.24):
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: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /@csstools/postcss-color-function@2.2.3(postcss@8.4.23):
+ /@csstools/postcss-color-function@2.2.3(postcss@8.4.24):
resolution: {integrity: sha512-b1ptNkr1UWP96EEHqKBWWaV5m/0hgYGctgA/RVZhONeP1L3T/8hwoqDm9bB23yVCfOgE9U93KI9j06+pEkJTvw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -294,11 +327,11 @@ packages:
'@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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-color-mix-function@1.0.3(postcss@8.4.23):
+ /@csstools/postcss-color-mix-function@1.0.3(postcss@8.4.24):
resolution: {integrity: sha512-QGXjGugTluqFZWzVf+S3wCiRiI0ukXlYqCi7OnpDotP/zaVTyl/aqZujLFzTOXy24BoWnu89frGMc79ohY5eog==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -307,21 +340,21 @@ packages:
'@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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-font-format-keywords@2.0.2(postcss@8.4.23):
+ /@csstools/postcss-font-format-keywords@2.0.2(postcss@8.4.24):
resolution: {integrity: sha512-iKYZlIs6JsNT7NKyRjyIyezTCHLh4L4BBB3F5Nx7Dc4Z/QmBgX+YJFuUSar8IM6KclGiAUFGomXFdYxAwJydlA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /@csstools/postcss-gradients-interpolation-method@3.0.6(postcss@8.4.23):
+ /@csstools/postcss-gradients-interpolation-method@3.0.6(postcss@8.4.24):
resolution: {integrity: sha512-rBOBTat/YMmB0G8VHwKqDEx+RZ4KCU9j42K8LwS0IpZnyThalZZF7BCSsZ6TFlZhcRZKlZy3LLFI2pLqjNVGGA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -330,11 +363,11 @@ packages:
'@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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-hwb-function@2.2.2(postcss@8.4.23):
+ /@csstools/postcss-hwb-function@2.2.2(postcss@8.4.24):
resolution: {integrity: sha512-W5Y5oaJ382HSlbdGfPf60d7dAK6Hqf10+Be1yZbd/TNNrQ/3dDdV1c07YwOXPQ3PZ6dvFMhxbIbn8EC3ki3nEg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -343,61 +376,61 @@ packages:
'@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
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-ic-unit@2.0.4(postcss@8.4.23):
+ /@csstools/postcss-ic-unit@2.0.4(postcss@8.4.24):
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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /@csstools/postcss-is-pseudo-class@3.2.1(postcss@8.4.23):
+ /@csstools/postcss-is-pseudo-class@3.2.1(postcss@8.4.24):
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: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /@csstools/postcss-logical-float-and-clear@1.0.1(postcss@8.4.23):
+ /@csstools/postcss-logical-float-and-clear@1.0.1(postcss@8.4.24):
resolution: {integrity: sha512-eO9z2sMLddvlfFEW5Fxbjyd03zaO7cJafDurK4rCqyRt9P7aaWwha0LcSzoROlcZrw1NBV2JAp2vMKfPMQO1xw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-logical-resize@1.0.1(postcss@8.4.23):
+ /@csstools/postcss-logical-resize@1.0.1(postcss@8.4.24):
resolution: {integrity: sha512-x1ge74eCSvpBkDDWppl+7FuD2dL68WP+wwP2qvdUcKY17vJksz+XoE1ZRV38uJgS6FNUwC0AxrPW5gy3MxsDHQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /@csstools/postcss-logical-viewport-units@1.0.3(postcss@8.4.23):
+ /@csstools/postcss-logical-viewport-units@1.0.3(postcss@8.4.24):
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
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-media-minmax@1.0.3(postcss@8.4.23):
+ /@csstools/postcss-media-minmax@1.0.3(postcss@8.4.24):
resolution: {integrity: sha512-os7qe2HV/qBILKCGa/dl5AbpO6c+MZyunFBWPWJBrEVhulCYo13FgEWbhyERFM5FeJghiqYgJxM54oiJASpBnw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -407,10 +440,10 @@ packages:
'@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
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-media-queries-aspect-ratio-number-values@1.0.3(postcss@8.4.23):
+ /@csstools/postcss-media-queries-aspect-ratio-number-values@1.0.3(postcss@8.4.24):
resolution: {integrity: sha512-JHdwBSNZsur/mJXwzuC/gxyekhfSdWJaTiSOhUITk2D8pYRYcjV1MZiCiWupQNfM2Qp2W7w1A/gEU6U/xlpIyA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -419,30 +452,30 @@ packages:
'@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
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-nested-calc@2.0.2(postcss@8.4.23):
+ /@csstools/postcss-nested-calc@2.0.2(postcss@8.4.24):
resolution: {integrity: sha512-jbwrP8rN4e7LNaRcpx3xpMUjhtt34I9OV+zgbcsYAAk6k1+3kODXJBf95/JMYWhu9g1oif7r06QVUgfWsKxCFw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /@csstools/postcss-normalize-display-values@2.0.1(postcss@8.4.23):
+ /@csstools/postcss-normalize-display-values@2.0.1(postcss@8.4.24):
resolution: {integrity: sha512-TQT5g3JQ5gPXC239YuRK8jFceXF9d25ZvBkyjzBGGoW5st5sPXFVQS8OjYb9IJ/K3CdfK4528y483cgS2DJR/w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /@csstools/postcss-oklab-function@2.2.3(postcss@8.4.23):
+ /@csstools/postcss-oklab-function@2.2.3(postcss@8.4.24):
resolution: {integrity: sha512-AgJ2rWMnLCDcbSMTHSqBYn66DNLBym6JpBpCaqmwZ9huGdljjDRuH3DzOYzkgQ7Pm2K92IYIq54IvFHloUOdvA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -451,44 +484,44 @@ packages:
'@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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-progressive-custom-properties@2.3.0(postcss@8.4.23):
+ /@csstools/postcss-progressive-custom-properties@2.3.0(postcss@8.4.24):
resolution: {integrity: sha512-Zd8ojyMlsL919TBExQ1I0CTpBDdyCpH/yOdqatZpuC3sd22K4SwC7+Yez3Q/vmXMWSAl+shjNeFZ7JMyxMjK+Q==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
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==}
+ /@csstools/postcss-relative-color-syntax@1.0.2(postcss@8.4.24):
+ resolution: {integrity: sha512-juCoVInkgH2TZPfOhyx6tIal7jW37L/0Tt+Vcl1LoxqQA9sxcg3JWYZ98pl1BonDnki6s/M7nXzFQHWsWMeHgw==}
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-color-parser': 1.2.1(@csstools/css-parser-algorithms@2.2.0)(@csstools/css-tokenizer@2.1.1)
+ '@csstools/css-parser-algorithms': 2.2.0(@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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-scope-pseudo-class@2.0.2(postcss@8.4.23):
+ /@csstools/postcss-scope-pseudo-class@2.0.2(postcss@8.4.24):
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: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /@csstools/postcss-stepped-value-functions@2.1.1(postcss@8.4.23):
+ /@csstools/postcss-stepped-value-functions@2.1.1(postcss@8.4.24):
resolution: {integrity: sha512-YCvdF0GCZK35nhLgs7ippcxDlRVe5QsSht3+EghqTjnYnyl3BbWIN6fYQ1dKWYTJ+7Bgi41TgqQFfJDcp9Xy/w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -497,21 +530,21 @@ packages:
'@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
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-text-decoration-shorthand@2.2.4(postcss@8.4.23):
+ /@csstools/postcss-text-decoration-shorthand@2.2.4(postcss@8.4.24):
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: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /@csstools/postcss-trigonometric-functions@2.1.1(postcss@8.4.23):
+ /@csstools/postcss-trigonometric-functions@2.1.1(postcss@8.4.24):
resolution: {integrity: sha512-XcXmHEFfHXhvYz40FtDlA4Fp4NQln2bWTsCwthd2c+MCnYArUYU3YaMqzR5CrKP3pMoGYTBnp5fMqf1HxItNyw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -520,16 +553,16 @@ packages:
'@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
+ postcss: 8.4.24
dev: true
- /@csstools/postcss-unset-value@2.0.1(postcss@8.4.23):
+ /@csstools/postcss-unset-value@2.0.1(postcss@8.4.24):
resolution: {integrity: sha512-oJ9Xl29/yU8U7/pnMJRqAZd4YXNCfGEdcP4ywREuqm/xMqcgDNDppYRoCGDt40aaZQIEKBS79LytUDN/DHf0Ew==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
/@csstools/selector-specificity@2.2.0(postcss-selector-parser@6.0.11):
@@ -541,6 +574,15 @@ packages:
postcss-selector-parser: 6.0.11
dev: true
+ /@csstools/selector-specificity@2.2.0(postcss-selector-parser@6.0.13):
+ 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.13
+ dev: true
+
/@esbuild/android-arm64@0.16.8:
resolution: {integrity: sha512-TGQM/tdy5EV1KoFHu0+cMrKvPR8UBLGEfwS84PTCJ07KVp21Fr488aFEL2TCamz9CxoF1np36kY6XOSdLncg2Q==}
engines: {node: '>=12'}
@@ -915,13 +957,13 @@ packages:
requiresBuild: true
optional: true
- /@eslint-community/eslint-utils@4.4.0(eslint@8.41.0):
+ /@eslint-community/eslint-utils@4.4.0(eslint@8.42.0):
resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
dependencies:
- eslint: 8.41.0
+ eslint: 8.42.0
eslint-visitor-keys: 3.4.1
dev: true
@@ -947,8 +989,8 @@ packages:
- supports-color
dev: true
- /@eslint/js@8.41.0:
- resolution: {integrity: sha512-LxcyMGxwmTh2lY9FwHPGWOHmYFCZvbrFCBZL4FzSSsxsRPuhrYUg/49/0KDfW8tnIEaEHtfmn6+NPN+1DqaNmA==}
+ /@eslint/js@8.42.0:
+ resolution: {integrity: sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
@@ -956,8 +998,8 @@ packages:
resolution: {integrity: sha512-bxUnRP8xptGRo8YXeY073DSpfK74XpSb0ZyRNpHV9WvLnJ7TwPOjZll8hTMin7zLC6iOp59pDZ8EQDj1gzgAQQ==}
dev: false
- /@humanwhocodes/config-array@0.11.8:
- resolution: {integrity: sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==}
+ /@humanwhocodes/config-array@0.11.10:
+ resolution: {integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==}
engines: {node: '>=10.10.0'}
dependencies:
'@humanwhocodes/object-schema': 1.2.1
@@ -976,8 +1018,8 @@ packages:
resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==}
dev: true
- /@iconify-icons/line-md@1.2.22:
- resolution: {integrity: sha512-Z5zMcB/hP6SSfh/HruACSOhJ4A2+qCikaE/vpsJ+HQ1mp9nA1ZnWPdEVeuQmiBbJtXqTayrsQnTEQL+bnGejfA==}
+ /@iconify-icons/line-md@1.2.23:
+ resolution: {integrity: sha512-iyoNK/K2U3bQWh309iI43MXmE/nt7v2Se9UUElKFZvfSerYtqgCzJwMSkwMrr7LFhxFfqqQx65Z04g1vkM68Rw==}
dependencies:
'@iconify/types': 2.0.0
dev: false
@@ -1028,7 +1070,7 @@ packages:
lodash.set: 4.3.2
dev: false
- /@lucia-auth/adapter-mysql@1.1.1(lucia-auth@1.7.0):
+ /@lucia-auth/adapter-mysql@1.1.1(lucia-auth@1.8.0):
resolution: {integrity: sha512-br+/OBDNJ+eRc6RrZnnC20ef+2VEMrXFxNYvsbryPw64ito7vg40STblpENdjJF0o4R10mjWTO43wQ+56jyXLA==}
peerDependencies:
'@planetscale/database': ^1.0.0
@@ -1040,17 +1082,17 @@ packages:
mysql2:
optional: true
dependencies:
- lucia-auth: 1.7.0
+ lucia-auth: 1.8.0
dev: false
- /@lucia-auth/adapter-prisma@2.0.0(@prisma/client@4.14.1)(lucia-auth@1.7.0):
+ /@lucia-auth/adapter-prisma@2.0.0(@prisma/client@4.15.0)(lucia-auth@1.8.0):
resolution: {integrity: sha512-8qxEcoVNJDbK8zXzyMK/4SHnLTaih0oNjTfp7l4ndRg5WI+eMgP3N0OUGQVaq3C5N0iIfkXxgj/ZGH8ZidwVeQ==}
peerDependencies:
'@prisma/client': ^4.2.0
lucia-auth: ^1.3.0
dependencies:
- '@prisma/client': 4.14.1(prisma@4.14.1)
- lucia-auth: 1.7.0
+ '@prisma/client': 4.15.0(prisma@4.15.0)
+ lucia-auth: 1.8.0
dev: false
/@lukeed/csprng@1.1.0:
@@ -1104,13 +1146,13 @@ packages:
fastq: 1.15.0
dev: true
- /@playwright/test@1.34.3:
- resolution: {integrity: sha512-zPLef6w9P6T/iT6XDYG3mvGOqOyb6eHaV9XtkunYs0+OzxBtrPAAaHotc0X+PJ00WPPnLfFBTl7mf45Mn8DBmw==}
- engines: {node: '>=14'}
+ /@playwright/test@1.35.1:
+ resolution: {integrity: sha512-b5YoFe6J9exsMYg0pQAobNDR85T1nLumUYgUTtKm4d21iX2L7WqKq9dW8NGJ+2vX0etZd+Y7UeuqsxDXm9+5ZA==}
+ engines: {node: '>=16'}
hasBin: true
dependencies:
- '@types/node': 18.16.16
- playwright-core: 1.34.3
+ '@types/node': 18.16.18
+ playwright-core: 1.35.1
optionalDependencies:
fsevents: 2.3.2
dev: true
@@ -1118,8 +1160,8 @@ packages:
/@polka/url@1.0.0-next.21:
resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==}
- /@prisma/client@4.14.1(prisma@4.14.1):
- resolution: {integrity: sha512-TZIswkeX1ccsHG/eN2kICzg/csXll0osK3EHu1QKd8VJ3XLcXozbNELKkCNfsCUvKJAwPdDtFCzF+O+raIVldw==}
+ /@prisma/client@4.15.0(prisma@4.15.0):
+ resolution: {integrity: sha512-xnROvyABcGiwqRNdrObHVZkD9EjkJYHOmVdlKy1yGgI+XOzvMzJ4tRg3dz1pUlsyhKxXGCnjIQjWW+2ur+YXuw==}
engines: {node: '>=14.17'}
requiresBuild: true
peerDependencies:
@@ -1128,16 +1170,16 @@ packages:
prisma:
optional: true
dependencies:
- '@prisma/engines-version': 4.14.0-67.d9a4c5988f480fa576d43970d5a23641aa77bc9c
- prisma: 4.14.1
+ '@prisma/engines-version': 4.15.0-28.8fbc245156db7124f997f4cecdd8d1219e360944
+ prisma: 4.15.0
dev: false
- /@prisma/engines-version@4.14.0-67.d9a4c5988f480fa576d43970d5a23641aa77bc9c:
- resolution: {integrity: sha512-3jum8/YSudeSN0zGW5qkpz+wAN2V/NYCQ+BPjvHYDfWatLWlQkqy99toX0GysDeaUoBIJg1vaz2yKqiA3CFcQw==}
+ /@prisma/engines-version@4.15.0-28.8fbc245156db7124f997f4cecdd8d1219e360944:
+ resolution: {integrity: sha512-sVOig4tjGxxlYaFcXgE71f/rtFhzyYrfyfNFUsxCIEJyVKU9rdOWIlIwQ2NQ7PntvGnn+x0XuFo4OC1jvPJKzg==}
dev: false
- /@prisma/engines@4.14.1:
- resolution: {integrity: sha512-APqFddPVHYmWNKqc+5J5SqrLFfOghKOLZxobmguDUacxOwdEutLsbXPVhNnpFDmuQWQFbXmrTTPoRrrF6B1MWA==}
+ /@prisma/engines@4.15.0:
+ resolution: {integrity: sha512-FTaOCGs0LL0OW68juZlGxFtYviZa4xdQj/rQEdat2txw0s3Vu/saAPKjNVXfIgUsGXmQ72HPgNr6935/P8FNAA==}
requiresBuild: true
/@rgossiaux/svelte-headlessui@1.0.2(svelte@3.59.1):
@@ -1164,21 +1206,21 @@ packages:
picomatch: 2.3.1
dev: true
- /@sveltejs/adapter-auto@1.0.3(@sveltejs/kit@1.19.0):
+ /@sveltejs/adapter-auto@1.0.3(@sveltejs/kit@1.20.2):
resolution: {integrity: sha512-hc7O12YQqvZ1CD4fo1gMJuPzBZvuoG5kwxb2RRoz4fVoB8B2vuPO2cY751Ln0G6T/HMrAf8kCqw6Pg+wbxcstw==}
peerDependencies:
'@sveltejs/kit': ^1.0.0
dependencies:
- '@sveltejs/kit': 1.19.0(svelte@3.59.1)(vite@4.3.9)
+ '@sveltejs/kit': 1.20.2(svelte@3.59.1)(vite@4.3.9)
import-meta-resolve: 2.2.0
dev: true
- /@sveltejs/adapter-vercel@1.0.6(@sveltejs/kit@1.19.0):
+ /@sveltejs/adapter-vercel@1.0.6(@sveltejs/kit@1.20.2):
resolution: {integrity: sha512-fo6aaEygPd/6B5Jms4Ff7R4jbADnppuLvKOWBNTGe5MGB7ZRUkl+gxHWMQx2av2knyEZkA6V8y5M6R3ML5yN4g==}
peerDependencies:
'@sveltejs/kit': ^1.0.0
dependencies:
- '@sveltejs/kit': 1.19.0(svelte@3.59.1)(vite@4.3.9)
+ '@sveltejs/kit': 1.20.2(svelte@3.59.1)(vite@4.3.9)
'@vercel/nft': 0.22.6
esbuild: 0.16.8
transitivePeerDependencies:
@@ -1186,16 +1228,16 @@ packages:
- supports-color
dev: true
- /@sveltejs/kit@1.19.0(svelte@3.59.1)(vite@4.3.9):
- resolution: {integrity: sha512-39fHvYvUQL3bCdV6Ed9MRIESO6ceM/MRNxAloQin+Qs9DfiM53vhUJBWtbwWAvRR/nM6isWnsbContjE/2/JxQ==}
+ /@sveltejs/kit@1.20.2(svelte@3.59.1)(vite@4.3.9):
+ resolution: {integrity: sha512-MtR1i+HtmYWcRgtubw1GQqT/+CWXL/z24PegE0xYAdObbhdr7YtEfmoe705D/JZMtMmoPXrmSk4W0MfL5A3lYw==}
engines: {node: ^16.14 || >=18}
hasBin: true
requiresBuild: true
peerDependencies:
- svelte: ^3.54.0
+ svelte: ^3.54.0 || ^4.0.0-next.0
vite: ^4.0.0
dependencies:
- '@sveltejs/vite-plugin-svelte': 2.1.1(svelte@3.59.1)(vite@4.3.9)
+ '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@3.59.1)(vite@4.3.9)
'@types/cookie': 0.5.1
cookie: 0.5.0
devalue: 4.3.1
@@ -1209,24 +1251,40 @@ packages:
svelte: 3.59.1
tiny-glob: 0.2.9
undici: 5.22.0
- vite: 4.3.9(@types/node@18.16.16)(sass@1.62.1)
+ vite: 4.3.9(@types/node@18.16.18)(sass@1.63.4)
transitivePeerDependencies:
- supports-color
- /@sveltejs/vite-plugin-svelte@2.1.1(svelte@3.59.1)(vite@4.3.9):
- resolution: {integrity: sha512-7YeBDt4us0FiIMNsVXxyaP4Hwyn2/v9x3oqStkHU3ZdIc5O22pGwUwH33wUqYo+7Itdmo8zxJ45Qvfm3H7UUjQ==}
+ /@sveltejs/vite-plugin-svelte-inspector@1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@3.59.1)(vite@4.3.9):
+ resolution: {integrity: sha512-Cy1dUMcYCnDVV/hPLXa43YZJ2jGKVW5rA0xuNL9dlmYhT0yoS1g7+FOFSRlgk0BXKk/Oc7grs+8BVA5Iz2fr8A==}
engines: {node: ^14.18.0 || >= 16}
peerDependencies:
- svelte: ^3.54.0
+ '@sveltejs/vite-plugin-svelte': ^2.2.0
+ svelte: ^3.54.0 || ^4.0.0-next.0
vite: ^4.0.0
dependencies:
+ '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@3.59.1)(vite@4.3.9)
+ debug: 4.3.4
+ svelte: 3.59.1
+ vite: 4.3.9(@types/node@18.16.18)(sass@1.63.4)
+ transitivePeerDependencies:
+ - supports-color
+
+ /@sveltejs/vite-plugin-svelte@2.4.1(svelte@3.59.1)(vite@4.3.9):
+ resolution: {integrity: sha512-bNNKvoRY89ptY7udeBSCmTdCVwkjmMcZ0j/z9J5MuedT8jPjq0zrknAo/jF1sToAza4NVaAgR9AkZoD9oJJmnA==}
+ engines: {node: ^14.18.0 || >= 16}
+ peerDependencies:
+ svelte: ^3.54.0 || ^4.0.0-next.0
+ vite: ^4.0.0
+ dependencies:
+ '@sveltejs/vite-plugin-svelte-inspector': 1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@3.59.1)(vite@4.3.9)
debug: 4.3.4
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.0
svelte: 3.59.1
- svelte-hmr: 0.15.1(svelte@3.59.1)
- vite: 4.3.9(@types/node@18.16.16)(sass@1.62.1)
+ svelte-hmr: 0.15.2(svelte@3.59.1)
+ vite: 4.3.9(@types/node@18.16.18)(sass@1.63.4)
vitefu: 0.2.4(vite@4.3.9)
transitivePeerDependencies:
- supports-color
@@ -1264,12 +1322,12 @@ packages:
resolution: {integrity: sha512-8+PdenCN8UWTfyIHNaJdmk/oPg6zyw7S9kHtT8PdkmHEwfTHSrSWEHpNZJzbuWmZBXQKA/+dLVXjrloX9XixPg==}
dev: false
- /@types/json-schema@7.0.11:
- resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==}
+ /@types/json-schema@7.0.12:
+ resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==}
dev: true
- /@types/node@18.16.16:
- resolution: {integrity: sha512-NpaM49IGQQAUlBhHMF82QH80J08os4ZmyF9MkpCzWAGuOHqE4gTEbhzd7L3l5LmWuZ6E0OiC1FweQ4tsiW35+g==}
+ /@types/node@18.16.18:
+ resolution: {integrity: sha512-/aNaQZD0+iSBAGnvvN2Cx92HqE5sZCPZtx2TsK+4nvV23fFe09jVDvpArXr2j9DnYlzuU9WuoykDDc6wqvpNcw==}
/@types/pug@2.0.6:
resolution: {integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==}
@@ -1278,7 +1336,7 @@ packages:
/@types/sass@1.43.1:
resolution: {integrity: sha512-BPdoIt1lfJ6B7rw35ncdwBZrAssjcwzI5LByIrYs+tpXlj/CAkuVdRsgZDdP4lq5EjyWzwxZCqAoFyHKFwp32g==}
dependencies:
- '@types/node': 18.16.16
+ '@types/node': 18.16.18
dev: true
/@types/semver@7.5.0:
@@ -1289,8 +1347,8 @@ packages:
resolution: {integrity: sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==}
dev: false
- /@typescript-eslint/eslint-plugin@5.59.7(@typescript-eslint/parser@5.59.7)(eslint@8.41.0)(typescript@4.9.5):
- resolution: {integrity: sha512-BL+jYxUFIbuYwy+4fF86k5vdT9lT0CNJ6HtwrIvGh0PhH8s0yy5rjaKH2fDCrz5ITHy07WCzVGNvAmjJh4IJFA==}
+ /@typescript-eslint/eslint-plugin@5.59.11(@typescript-eslint/parser@5.59.11)(eslint@8.42.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-XxuOfTkCUiOSyBWIvHlUraLw/JT/6Io1365RO6ZuI88STKMavJZPNMU0lFcUTeQXEhHiv64CbxYxBNoDVSmghg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
'@typescript-eslint/parser': ^5.0.0
@@ -1301,12 +1359,12 @@ packages:
optional: true
dependencies:
'@eslint-community/regexpp': 4.5.0
- '@typescript-eslint/parser': 5.59.7(eslint@8.41.0)(typescript@4.9.5)
- '@typescript-eslint/scope-manager': 5.59.7
- '@typescript-eslint/type-utils': 5.59.7(eslint@8.41.0)(typescript@4.9.5)
- '@typescript-eslint/utils': 5.59.7(eslint@8.41.0)(typescript@4.9.5)
+ '@typescript-eslint/parser': 5.59.11(eslint@8.42.0)(typescript@4.9.5)
+ '@typescript-eslint/scope-manager': 5.59.11
+ '@typescript-eslint/type-utils': 5.59.11(eslint@8.42.0)(typescript@4.9.5)
+ '@typescript-eslint/utils': 5.59.11(eslint@8.42.0)(typescript@4.9.5)
debug: 4.3.4
- eslint: 8.41.0
+ eslint: 8.42.0
grapheme-splitter: 1.0.4
ignore: 5.2.1
natural-compare-lite: 1.4.0
@@ -1317,8 +1375,8 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/parser@5.59.7(eslint@8.41.0)(typescript@4.9.5):
- resolution: {integrity: sha512-VhpsIEuq/8i5SF+mPg9jSdIwgMBBp0z9XqjiEay+81PYLJuroN+ET1hM5IhkiYMJd9MkTz8iJLt7aaGAgzWUbQ==}
+ /@typescript-eslint/parser@5.59.11(eslint@8.42.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-s9ZF3M+Nym6CAZEkJJeO2TFHHDsKAM3ecNkLuH4i4s8/RCPnF5JRip2GyviYkeEAcwGMJxkqG9h2dAsnA1nZpA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
@@ -1327,26 +1385,26 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/scope-manager': 5.59.7
- '@typescript-eslint/types': 5.59.7
- '@typescript-eslint/typescript-estree': 5.59.7(typescript@4.9.5)
+ '@typescript-eslint/scope-manager': 5.59.11
+ '@typescript-eslint/types': 5.59.11
+ '@typescript-eslint/typescript-estree': 5.59.11(typescript@4.9.5)
debug: 4.3.4
- eslint: 8.41.0
+ eslint: 8.42.0
typescript: 4.9.5
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/scope-manager@5.59.7:
- resolution: {integrity: sha512-FL6hkYWK9zBGdxT2wWEd2W8ocXMu3K94i3gvMrjXpx+koFYdYV7KprKfirpgY34vTGzEPPuKoERpP8kD5h7vZQ==}
+ /@typescript-eslint/scope-manager@5.59.11:
+ resolution: {integrity: sha512-dHFOsxoLFtrIcSj5h0QoBT/89hxQONwmn3FOQ0GOQcLOOXm+MIrS8zEAhs4tWl5MraxCY3ZJpaXQQdFMc2Tu+Q==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
- '@typescript-eslint/types': 5.59.7
- '@typescript-eslint/visitor-keys': 5.59.7
+ '@typescript-eslint/types': 5.59.11
+ '@typescript-eslint/visitor-keys': 5.59.11
dev: true
- /@typescript-eslint/type-utils@5.59.7(eslint@8.41.0)(typescript@4.9.5):
- resolution: {integrity: sha512-ozuz/GILuYG7osdY5O5yg0QxXUAEoI4Go3Do5xeu+ERH9PorHBPSdvD3Tjp2NN2bNLh1NJQSsQu2TPu/Ly+HaQ==}
+ /@typescript-eslint/type-utils@5.59.11(eslint@8.42.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-LZqVY8hMiVRF2a7/swmkStMYSoXMFlzL6sXV6U/2gL5cwnLWQgLEG8tjWPpaE4rMIdZ6VKWwcffPlo1jPfk43g==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: '*'
@@ -1355,23 +1413,23 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/typescript-estree': 5.59.7(typescript@4.9.5)
- '@typescript-eslint/utils': 5.59.7(eslint@8.41.0)(typescript@4.9.5)
+ '@typescript-eslint/typescript-estree': 5.59.11(typescript@4.9.5)
+ '@typescript-eslint/utils': 5.59.11(eslint@8.42.0)(typescript@4.9.5)
debug: 4.3.4
- eslint: 8.41.0
+ eslint: 8.42.0
tsutils: 3.21.0(typescript@4.9.5)
typescript: 4.9.5
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/types@5.59.7:
- resolution: {integrity: sha512-UnVS2MRRg6p7xOSATscWkKjlf/NDKuqo5TdbWck6rIRZbmKpVNTLALzNvcjIfHBE7736kZOFc/4Z3VcZwuOM/A==}
+ /@typescript-eslint/types@5.59.11:
+ resolution: {integrity: sha512-epoN6R6tkvBYSc+cllrz+c2sOFWkbisJZWkOE+y3xHtvYaOE6Wk6B8e114McRJwFRjGvYdJwLXQH5c9osME/AA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /@typescript-eslint/typescript-estree@5.59.7(typescript@4.9.5):
- resolution: {integrity: sha512-4A1NtZ1I3wMN2UGDkU9HMBL+TIQfbrh4uS0WDMMpf3xMRursDbqEf1ahh6vAAe3mObt8k3ZATnezwG4pdtWuUQ==}
+ /@typescript-eslint/typescript-estree@5.59.11(typescript@4.9.5):
+ resolution: {integrity: sha512-YupOpot5hJO0maupJXixi6l5ETdrITxeo5eBOeuV7RSKgYdU3G5cxO49/9WRnJq9EMrB7AuTSLH/bqOsXi7wPA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
typescript: '*'
@@ -1379,8 +1437,8 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/types': 5.59.7
- '@typescript-eslint/visitor-keys': 5.59.7
+ '@typescript-eslint/types': 5.59.11
+ '@typescript-eslint/visitor-keys': 5.59.11
debug: 4.3.4
globby: 11.1.0
is-glob: 4.0.3
@@ -1391,19 +1449,19 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/utils@5.59.7(eslint@8.41.0)(typescript@4.9.5):
- resolution: {integrity: sha512-yCX9WpdQKaLufz5luG4aJbOpdXf/fjwGMcLFXZVPUz3QqLirG5QcwwnIHNf8cjLjxK4qtzTO8udUtMQSAToQnQ==}
+ /@typescript-eslint/utils@5.59.11(eslint@8.42.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-didu2rHSOMUdJThLk4aZ1Or8IcO3HzCw/ZvEjTTIfjIrcdd5cvSIwwDy2AOlE7htSNp7QIZ10fLMyRCveesMLg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.41.0)
- '@types/json-schema': 7.0.11
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.42.0)
+ '@types/json-schema': 7.0.12
'@types/semver': 7.5.0
- '@typescript-eslint/scope-manager': 5.59.7
- '@typescript-eslint/types': 5.59.7
- '@typescript-eslint/typescript-estree': 5.59.7(typescript@4.9.5)
- eslint: 8.41.0
+ '@typescript-eslint/scope-manager': 5.59.11
+ '@typescript-eslint/types': 5.59.11
+ '@typescript-eslint/typescript-estree': 5.59.11(typescript@4.9.5)
+ eslint: 8.42.0
eslint-scope: 5.1.1
semver: 7.3.8
transitivePeerDependencies:
@@ -1411,11 +1469,11 @@ packages:
- typescript
dev: true
- /@typescript-eslint/visitor-keys@5.59.7:
- resolution: {integrity: sha512-tyN+X2jvMslUszIiYbF0ZleP+RqQsFVpGrKI6e0Eet1w8WmhsAtmzaqm8oM8WJQ1ysLwhnsK/4hYHJjOgJVfQQ==}
+ /@typescript-eslint/visitor-keys@5.59.11:
+ resolution: {integrity: sha512-KGYniTGG3AMTuKF9QBD7EIrvufkB6O6uX3knP73xbKLMpH+QRPcgnCxjWXSHjMRuOxFLovljqQgQpR0c7GvjoA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
- '@typescript-eslint/types': 5.59.7
+ '@typescript-eslint/types': 5.59.11
eslint-visitor-keys: 3.4.1
dev: true
@@ -1543,7 +1601,7 @@ packages:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
dev: false
- /autoprefixer@10.4.14(postcss@8.4.23):
+ /autoprefixer@10.4.14(postcss@8.4.24):
resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==}
engines: {node: ^10 || ^12 || >=14}
hasBin: true
@@ -1555,7 +1613,7 @@ packages:
fraction.js: 4.2.0
normalize-range: 0.1.2
picocolors: 1.0.0
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
@@ -1742,35 +1800,35 @@ packages:
which: 2.0.2
dev: true
- /css-blank-pseudo@5.0.2(postcss@8.4.23):
+ /css-blank-pseudo@5.0.2(postcss@8.4.24):
resolution: {integrity: sha512-aCU4AZ7uEcVSUzagTlA9pHciz7aWPKA/YzrEkpdSopJ2pvhIxiQ5sYeMz1/KByxlIo4XBdvMNJAVKMg/GRnhfw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /css-has-pseudo@5.0.2(postcss@8.4.23):
+ /css-has-pseudo@5.0.2(postcss@8.4.24):
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: 8.4.24
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):
+ /css-prefers-color-scheme@8.0.2(postcss@8.4.24):
resolution: {integrity: sha512-OvFghizHJ45x7nsJJUSYLyQNTzsCU8yWjxAc/nhPQg1pbs18LMoET8N3kOweFDPy0JV0OSXN2iqRFhPBHYOeMA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
/cssdb@7.6.0:
@@ -1931,36 +1989,36 @@ packages:
engines: {node: '>=10'}
dev: true
- /eslint-config-prettier@8.8.0(eslint@8.41.0):
+ /eslint-config-prettier@8.8.0(eslint@8.42.0):
resolution: {integrity: sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==}
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
dependencies:
- eslint: 8.41.0
+ eslint: 8.42.0
dev: true
- /eslint-plugin-svelte@2.29.0(eslint@8.41.0)(svelte@3.59.1)(ts-node@10.9.1):
- resolution: {integrity: sha512-ukEC5z9ZXwDtwD8L12ei9doF9P/mQVeiLZiUxExWN9ZNTLNwZgfmEKx+s0tNio0YnYHzKz6qELxFei4SqVbLkQ==}
+ /eslint-plugin-svelte@2.30.0(eslint@8.42.0)(svelte@3.59.1)(ts-node@10.9.1):
+ resolution: {integrity: sha512-2/qj0BJsfM0U2j4EjGb7iC/0nbUvXx1Gn78CdtyuXpi/rSomLPCPwnsZsloXMzlt6Xwe8LBlpRvZObSKEHLP5A==}
engines: {node: ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0-0
- svelte: ^3.37.0
+ svelte: ^3.37.0 || ^4.0.0-0
peerDependenciesMeta:
svelte:
optional: true
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.41.0)
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.42.0)
'@jridgewell/sourcemap-codec': 1.4.15
debug: 4.3.4
- eslint: 8.41.0
+ eslint: 8.42.0
esutils: 2.0.3
known-css-properties: 0.27.0
- postcss: 8.4.23
- postcss-load-config: 3.1.4(postcss@8.4.23)(ts-node@10.9.1)
- postcss-safe-parser: 6.0.0(postcss@8.4.23)
+ postcss: 8.4.24
+ postcss-load-config: 3.1.4(postcss@8.4.24)(ts-node@10.9.1)
+ postcss-safe-parser: 6.0.0(postcss@8.4.24)
svelte: 3.59.1
- svelte-eslint-parser: 0.29.0(svelte@3.59.1)
+ svelte-eslint-parser: 0.30.0(svelte@3.59.1)
transitivePeerDependencies:
- supports-color
- ts-node
@@ -1987,16 +2045,16 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /eslint@8.41.0:
- resolution: {integrity: sha512-WQDQpzGBOP5IrXPo4Hc0814r4/v2rrIsB0rhT7jtunIalgg6gYXWhRMOejVO8yH21T/FGaxjmFjBMNqcIlmH1Q==}
+ /eslint@8.42.0:
+ resolution: {integrity: sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
hasBin: true
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.41.0)
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.42.0)
'@eslint-community/regexpp': 4.5.0
'@eslint/eslintrc': 2.0.3
- '@eslint/js': 8.41.0
- '@humanwhocodes/config-array': 0.11.8
+ '@eslint/js': 8.42.0
+ '@humanwhocodes/config-array': 0.11.10
'@humanwhocodes/module-importer': 1.0.1
'@nodelib/fs.walk': 1.2.8
ajv: 6.12.6
@@ -2491,8 +2549,8 @@ packages:
yallist: 4.0.0
dev: true
- /lucia-auth@1.7.0:
- resolution: {integrity: sha512-JisZE50dlvVdX726TSxUH0uoI/bwBrgSjO/+Ts/Yrk7TseKtcK8ezDNCAYUCI1XK3PHm37jgobklELpxeAmYLw==}
+ /lucia-auth@1.8.0:
+ resolution: {integrity: sha512-zI8gT2AOpxTPIxYzToEdgoht+GOflrduZiHPsOEmg4/2pThOyCW3o3lXh+Uwh20tJ9QoXwQe9/Omn6PlUG6efw==}
dev: false
/magic-string@0.25.9:
@@ -2687,8 +2745,8 @@ packages:
wrappy: 1.0.2
dev: true
- /open-props@1.5.8:
- resolution: {integrity: sha512-pE9oKg+4rDrKNJpHNSP1ensgMz41YW5pPCHExd4P12595gdObMmiO1OhTvXG0t7inRS54GhyZr5jm+28XzapEg==}
+ /open-props@1.5.9:
+ resolution: {integrity: sha512-7cY+O+QPiLFcm1a/nnkSK7CHLIW55XBwnnKYS2ajGcWw/xmY990JkgPzYFbohOODyCGM6oJZ+XzRJF7207QqiA==}
dev: false
/optionator@0.9.1:
@@ -2764,64 +2822,64 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
- /playwright-core@1.34.3:
- resolution: {integrity: sha512-2pWd6G7OHKemc5x1r1rp8aQcpvDh7goMBZlJv6Co5vCNLVcQJdhxRL09SGaY6HcyHH9aT4tiynZabMofVasBYw==}
- engines: {node: '>=14'}
+ /playwright-core@1.35.1:
+ resolution: {integrity: sha512-pNXb6CQ7OqmGDRspEjlxE49w+4YtR6a3X6mT1hZXeJHWmsEz7SunmvZeiG/+y1yyMZdHnnn73WKYdtV1er0Xyg==}
+ engines: {node: '>=16'}
hasBin: true
dev: true
- /postcss-attribute-case-insensitive@6.0.2(postcss@8.4.23):
+ /postcss-attribute-case-insensitive@6.0.2(postcss@8.4.24):
resolution: {integrity: sha512-IRuCwwAAQbgaLhxQdQcIIK0dCVXg3XDUnzgKD8iwdiYdwU4rMWRWyl/W9/0nA4ihVpq5pyALiHB2veBJ0292pw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /postcss-clamp@4.1.0(postcss@8.4.23):
+ /postcss-clamp@4.1.0(postcss@8.4.24):
resolution: {integrity: sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==}
engines: {node: '>=7.6.0'}
peerDependencies:
postcss: ^8.4.6
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-color-functional-notation@5.1.0(postcss@8.4.23):
+ /postcss-color-functional-notation@5.1.0(postcss@8.4.24):
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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-color-hex-alpha@9.0.2(postcss@8.4.23):
+ /postcss-color-hex-alpha@9.0.2(postcss@8.4.24):
resolution: {integrity: sha512-SfPjgr//VQ/DOCf80STIAsdAs7sbIbxATvVmd+Ec7JvR8onz9pjawhq3BJM3Pie40EE3TyB0P6hft16D33Nlyg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-color-rebeccapurple@8.0.2(postcss@8.4.23):
+ /postcss-color-rebeccapurple@8.0.2(postcss@8.4.24):
resolution: {integrity: sha512-xWf/JmAxVoB5bltHpXk+uGRoGFwu4WDAR7210el+iyvTdqiKpDhtcT8N3edXMoVJY0WHFMrKMUieql/wRNiXkw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-custom-media@9.1.4(postcss@8.4.23):
+ /postcss-custom-media@9.1.4(postcss@8.4.24):
resolution: {integrity: sha512-4A7WEG3iIyKwfpxL5bkuSlHoHHGRTHl0212Z3uvpwJPyVfZJlkZAQNNgVC+oogrJgksDnfKyuuMbG6HafZPW8Q==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -2831,10 +2889,10 @@ packages:
'@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
+ postcss: 8.4.24
dev: true
- /postcss-custom-properties@13.2.0(postcss@8.4.23):
+ /postcss-custom-properties@13.2.0(postcss@8.4.24):
resolution: {integrity: sha512-UYiPqbqmVayyv56y0mtGhvUKZClflwE9cTTmPaqEX8fOVjVwsotqKGYtJXSLxrJLwf9tt7ka+Luyh1ZAOhGHWA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -2843,11 +2901,11 @@ 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
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-custom-selectors@7.1.3(postcss@8.4.23):
+ /postcss-custom-selectors@7.1.3(postcss@8.4.24):
resolution: {integrity: sha512-GTVscax6O/8s7agFF0HsOoIyjrnAbLjgCUle8tn+0oDGJuVx7p56U7ClSRoC49poxFuMfu2B4Q8GnxSCOeuFKw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -2856,99 +2914,99 @@ 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
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /postcss-dir-pseudo-class@7.0.2(postcss@8.4.23):
+ /postcss-dir-pseudo-class@7.0.2(postcss@8.4.24):
resolution: {integrity: sha512-cMnslilYxBf9k3qejnovrUONZx1rXeUZJw06fgIUBzABJe3D2LiLL5WAER7Imt3nrkaIgG05XZBztueLEf5P8w==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /postcss-double-position-gradients@4.0.4(postcss@8.4.23):
+ /postcss-double-position-gradients@4.0.4(postcss@8.4.24):
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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-focus-visible@8.0.2(postcss@8.4.23):
+ /postcss-focus-visible@8.0.2(postcss@8.4.24):
resolution: {integrity: sha512-f/Vd+EC/GaKElknU59esVcRYr/Y3t1ZAQyL4u2xSOgkDy4bMCmG7VP5cGvj3+BTLNE9ETfEuz2nnt4qkZwTTeA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /postcss-focus-within@7.0.2(postcss@8.4.23):
+ /postcss-focus-within@7.0.2(postcss@8.4.24):
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: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /postcss-font-variant@5.0.0(postcss@8.4.23):
+ /postcss-font-variant@5.0.0(postcss@8.4.24):
resolution: {integrity: sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==}
peerDependencies:
postcss: ^8.1.0
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /postcss-gap-properties@4.0.1(postcss@8.4.23):
+ /postcss-gap-properties@4.0.1(postcss@8.4.24):
resolution: {integrity: sha512-V5OuQGw4lBumPlwHWk/PRfMKjaq/LTGR4WDTemIMCaMevArVfCCA9wBJiL1VjDAd+rzuCIlkRoRvDsSiAaZ4Fg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /postcss-image-set-function@5.0.2(postcss@8.4.23):
+ /postcss-image-set-function@5.0.2(postcss@8.4.24):
resolution: {integrity: sha512-Sszjwo0ubETX0Fi5MvpYzsONwrsjeabjMoc5YqHvURFItXgIu3HdCjcVuVKGMPGzKRhgaknmdM5uVWInWPJmeg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-import@15.1.0(postcss@8.4.23):
+ /postcss-import@15.1.0(postcss@8.4.24):
resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
engines: {node: '>=14.0.0'}
peerDependencies:
postcss: ^8.0.0
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
read-cache: 1.0.0
resolve: 1.22.1
dev: true
- /postcss-initial@4.0.1(postcss@8.4.23):
+ /postcss-initial@4.0.1(postcss@8.4.24):
resolution: {integrity: sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==}
peerDependencies:
postcss: ^8.0.0
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /postcss-lab-function@5.2.3(postcss@8.4.23):
+ /postcss-lab-function@5.2.3(postcss@8.4.24):
resolution: {integrity: sha512-fi32AYKzji5/rvgxo5zXHFvAYBw0u0OzELbeCNjEZVLUir18Oj+9RmNphtM8QdLUaUnrfx8zy8vVYLmFLkdmrQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
@@ -2957,11 +3015,11 @@ packages:
'@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
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ postcss: 8.4.24
dev: true
- /postcss-load-config@3.1.4(postcss@8.4.23)(ts-node@10.9.1):
+ /postcss-load-config@3.1.4(postcss@8.4.24)(ts-node@10.9.1):
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
engines: {node: '>= 10'}
peerDependencies:
@@ -2974,12 +3032,12 @@ packages:
optional: true
dependencies:
lilconfig: 2.0.6
- postcss: 8.4.23
- ts-node: 10.9.1(@types/node@18.16.16)(typescript@4.9.5)
+ postcss: 8.4.24
+ ts-node: 10.9.1(@types/node@18.16.18)(typescript@4.9.5)
yaml: 1.10.2
dev: true
- /postcss-load-config@4.0.1(postcss@8.4.23)(ts-node@10.9.1):
+ /postcss-load-config@4.0.1(postcss@8.4.24)(ts-node@10.9.1):
resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==}
engines: {node: '>= 14'}
peerDependencies:
@@ -2992,168 +3050,168 @@ packages:
optional: true
dependencies:
lilconfig: 2.0.6
- postcss: 8.4.23
- ts-node: 10.9.1(@types/node@18.16.16)(typescript@4.9.5)
+ postcss: 8.4.24
+ ts-node: 10.9.1(@types/node@18.16.18)(typescript@4.9.5)
yaml: 2.1.3
dev: true
- /postcss-logical@6.2.0(postcss@8.4.23):
+ /postcss-logical@6.2.0(postcss@8.4.24):
resolution: {integrity: sha512-aqlfKGaY0nnbgI9jwUikp4gJKBqcH5noU/EdnIVceghaaDPYhZuyJVxlvWNy55tlTG5tunRKCTAX9yljLiFgmw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-nesting@11.2.2(postcss@8.4.23):
- resolution: {integrity: sha512-aOTiUniAB1bcPE6GGiynWRa6PZFPhOTAm5q3q5cem6QeSijIHHkWr6gs65ukCZMXeak8yXeZVbBJET3VM+HlhA==}
+ /postcss-nesting@11.3.0(postcss@8.4.24):
+ resolution: {integrity: sha512-JlS10AQm/RzyrUGgl5irVkAlZYTJ99mNueUl+Qab+TcHhVedLiylWVkKBhRale+rS9yWIJK48JVzQlq3LcSdeA==}
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
+ '@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.13)
+ postcss: 8.4.24
+ postcss-selector-parser: 6.0.13
dev: true
- /postcss-opacity-percentage@2.0.0(postcss@8.4.23):
+ /postcss-opacity-percentage@2.0.0(postcss@8.4.24):
resolution: {integrity: sha512-lyDrCOtntq5Y1JZpBFzIWm2wG9kbEdujpNt4NLannF+J9c8CgFIzPa80YQfdza+Y+yFfzbYj/rfoOsYsooUWTQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.2
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /postcss-overflow-shorthand@4.0.1(postcss@8.4.23):
+ /postcss-overflow-shorthand@4.0.1(postcss@8.4.24):
resolution: {integrity: sha512-HQZ0qi/9iSYHW4w3ogNqVNr2J49DHJAl7r8O2p0Meip38jsdnRPgiDW7r/LlLrrMBMe3KHkvNtAV2UmRVxzLIg==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-page-break@3.0.4(postcss@8.4.23):
+ /postcss-page-break@3.0.4(postcss@8.4.24):
resolution: {integrity: sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==}
peerDependencies:
postcss: ^8
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /postcss-place@8.0.1(postcss@8.4.23):
+ /postcss-place@8.0.1(postcss@8.4.24):
resolution: {integrity: sha512-Ow2LedN8sL4pq8ubukO77phSVt4QyCm35ZGCYXKvRFayAwcpgB0sjNJglDoTuRdUL32q/ZC1VkPBo0AOEr4Uiw==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-value-parser: 4.2.0
dev: true
- /postcss-preset-env@8.4.2(postcss@8.4.23):
- resolution: {integrity: sha512-Bihxo+FsyVNjsRADiYYnj9Ez0WBSWSSHAe8WvxoMlqrw8H8m6gK9E0MkDd7P6ForoikRIF3I8grGg/pFM6ECRQ==}
+ /postcss-preset-env@8.5.0(postcss@8.4.24):
+ resolution: {integrity: sha512-aqAbT5dXqYX5ZvicGKQpaW/eDEZFRfnhV6Hn1Jn2bCKEB9L2MgsTdnIsXsZyFUQflIV2wIs9HTEQgkH5duMCNg==}
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)
+ '@csstools/postcss-cascade-layers': 3.0.1(postcss@8.4.24)
+ '@csstools/postcss-color-function': 2.2.3(postcss@8.4.24)
+ '@csstools/postcss-color-mix-function': 1.0.3(postcss@8.4.24)
+ '@csstools/postcss-font-format-keywords': 2.0.2(postcss@8.4.24)
+ '@csstools/postcss-gradients-interpolation-method': 3.0.6(postcss@8.4.24)
+ '@csstools/postcss-hwb-function': 2.2.2(postcss@8.4.24)
+ '@csstools/postcss-ic-unit': 2.0.4(postcss@8.4.24)
+ '@csstools/postcss-is-pseudo-class': 3.2.1(postcss@8.4.24)
+ '@csstools/postcss-logical-float-and-clear': 1.0.1(postcss@8.4.24)
+ '@csstools/postcss-logical-resize': 1.0.1(postcss@8.4.24)
+ '@csstools/postcss-logical-viewport-units': 1.0.3(postcss@8.4.24)
+ '@csstools/postcss-media-minmax': 1.0.3(postcss@8.4.24)
+ '@csstools/postcss-media-queries-aspect-ratio-number-values': 1.0.3(postcss@8.4.24)
+ '@csstools/postcss-nested-calc': 2.0.2(postcss@8.4.24)
+ '@csstools/postcss-normalize-display-values': 2.0.1(postcss@8.4.24)
+ '@csstools/postcss-oklab-function': 2.2.3(postcss@8.4.24)
+ '@csstools/postcss-progressive-custom-properties': 2.3.0(postcss@8.4.24)
+ '@csstools/postcss-relative-color-syntax': 1.0.2(postcss@8.4.24)
+ '@csstools/postcss-scope-pseudo-class': 2.0.2(postcss@8.4.24)
+ '@csstools/postcss-stepped-value-functions': 2.1.1(postcss@8.4.24)
+ '@csstools/postcss-text-decoration-shorthand': 2.2.4(postcss@8.4.24)
+ '@csstools/postcss-trigonometric-functions': 2.1.1(postcss@8.4.24)
+ '@csstools/postcss-unset-value': 2.0.1(postcss@8.4.24)
+ autoprefixer: 10.4.14(postcss@8.4.24)
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)
+ css-blank-pseudo: 5.0.2(postcss@8.4.24)
+ css-has-pseudo: 5.0.2(postcss@8.4.24)
+ css-prefers-color-scheme: 8.0.2(postcss@8.4.24)
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: 8.4.24
+ postcss-attribute-case-insensitive: 6.0.2(postcss@8.4.24)
+ postcss-clamp: 4.1.0(postcss@8.4.24)
+ postcss-color-functional-notation: 5.1.0(postcss@8.4.24)
+ postcss-color-hex-alpha: 9.0.2(postcss@8.4.24)
+ postcss-color-rebeccapurple: 8.0.2(postcss@8.4.24)
+ postcss-custom-media: 9.1.4(postcss@8.4.24)
+ postcss-custom-properties: 13.2.0(postcss@8.4.24)
+ postcss-custom-selectors: 7.1.3(postcss@8.4.24)
+ postcss-dir-pseudo-class: 7.0.2(postcss@8.4.24)
+ postcss-double-position-gradients: 4.0.4(postcss@8.4.24)
+ postcss-focus-visible: 8.0.2(postcss@8.4.24)
+ postcss-focus-within: 7.0.2(postcss@8.4.24)
+ postcss-font-variant: 5.0.0(postcss@8.4.24)
+ postcss-gap-properties: 4.0.1(postcss@8.4.24)
+ postcss-image-set-function: 5.0.2(postcss@8.4.24)
+ postcss-initial: 4.0.1(postcss@8.4.24)
+ postcss-lab-function: 5.2.3(postcss@8.4.24)
+ postcss-logical: 6.2.0(postcss@8.4.24)
+ postcss-nesting: 11.3.0(postcss@8.4.24)
+ postcss-opacity-percentage: 2.0.0(postcss@8.4.24)
+ postcss-overflow-shorthand: 4.0.1(postcss@8.4.24)
+ postcss-page-break: 3.0.4(postcss@8.4.24)
+ postcss-place: 8.0.1(postcss@8.4.24)
+ postcss-pseudo-class-any-link: 8.0.2(postcss@8.4.24)
+ postcss-replace-overflow-wrap: 4.0.0(postcss@8.4.24)
+ postcss-selector-not: 7.0.1(postcss@8.4.24)
postcss-value-parser: 4.2.0
dev: true
- /postcss-pseudo-class-any-link@8.0.2(postcss@8.4.23):
+ /postcss-pseudo-class-any-link@8.0.2(postcss@8.4.24):
resolution: {integrity: sha512-FYTIuRE07jZ2CW8POvctRgArQJ43yxhr5vLmImdKUvjFCkR09kh8pIdlCwdx/jbFm7MiW4QP58L4oOUv3grQYA==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
- /postcss-replace-overflow-wrap@4.0.0(postcss@8.4.23):
+ /postcss-replace-overflow-wrap@4.0.0(postcss@8.4.24):
resolution: {integrity: sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==}
peerDependencies:
postcss: ^8.0.3
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /postcss-safe-parser@6.0.0(postcss@8.4.23):
+ /postcss-safe-parser@6.0.0(postcss@8.4.24):
resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==}
engines: {node: '>=12.0'}
peerDependencies:
postcss: ^8.3.3
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
dev: true
- /postcss-selector-not@7.0.1(postcss@8.4.23):
+ /postcss-selector-not@7.0.1(postcss@8.4.24):
resolution: {integrity: sha512-1zT5C27b/zeJhchN7fP0kBr16Cc61mu7Si9uWWLoA3Px/D9tIJPKchJCkUH3tPO5D0pCFmGeApAv8XpXBQJ8SQ==}
engines: {node: ^14 || ^16 || >=18}
peerDependencies:
postcss: ^8.4
dependencies:
- postcss: 8.4.23
+ postcss: 8.4.24
postcss-selector-parser: 6.0.11
dev: true
@@ -3165,12 +3223,20 @@ packages:
util-deprecate: 1.0.2
dev: true
+ /postcss-selector-parser@6.0.13:
+ resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==}
+ engines: {node: '>=4'}
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+ dev: true
+
/postcss-value-parser@4.2.0:
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
dev: true
- /postcss@8.4.23:
- resolution: {integrity: sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==}
+ /postcss@8.4.24:
+ resolution: {integrity: sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==}
engines: {node: ^10 || ^12 || >=14}
dependencies:
nanoid: 3.3.6
@@ -3182,11 +3248,11 @@ packages:
engines: {node: '>= 0.8.0'}
dev: true
- /prettier-plugin-svelte@2.10.0(prettier@2.8.8)(svelte@3.59.1):
- resolution: {integrity: sha512-GXMY6t86thctyCvQq+jqElO+MKdB09BkL3hexyGP3Oi8XLKRFaJP1ud/xlWCZ9ZIa2BxHka32zhHfcuU+XsRQg==}
+ /prettier-plugin-svelte@2.10.1(prettier@2.8.8)(svelte@3.59.1):
+ resolution: {integrity: sha512-Wlq7Z5v2ueCubWo0TZzKc9XHcm7TDxqcuzRuGd0gcENfzfT4JZ9yDlCbEgxWgiPmLHkBjfOtpAWkcT28MCDpUQ==}
peerDependencies:
prettier: ^1.16.4 || ^2.0.0
- svelte: ^3.2.0
+ svelte: ^3.2.0 || ^4.0.0-next.0
dependencies:
prettier: 2.8.8
svelte: 3.59.1
@@ -3202,13 +3268,13 @@ packages:
resolution: {integrity: sha512-db91Bf3pRGKDPz1lAqLFSJXeW13mulUJxhycysFpfXV5MIK7RgWWK2E5aPAa71s8TCzQUXxF5JOV42/iOs6QkA==}
dev: false
- /prisma@4.14.1:
- resolution: {integrity: sha512-z6hxzTMYqT9SIKlzD08dhzsLUpxjFKKsLpp5/kBDnSqiOjtUyyl/dC5tzxLcOa3jkEHQ8+RpB/fE3w8bgNP51g==}
+ /prisma@4.15.0:
+ resolution: {integrity: sha512-iKZZpobPl48gTcSZVawLMQ3lEy6BnXwtoMj7hluoGFYu2kQ6F9LBuBrUyF95zRVnNo8/3KzLXJXJ5TEnLSJFiA==}
engines: {node: '>=14.17'}
hasBin: true
requiresBuild: true
dependencies:
- '@prisma/engines': 4.14.1
+ '@prisma/engines': 4.15.0
/prismjs@1.29.0:
resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==}
@@ -3326,8 +3392,8 @@ packages:
rimraf: 2.7.1
dev: true
- /sass@1.62.1:
- resolution: {integrity: sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==}
+ /sass@1.63.4:
+ resolution: {integrity: sha512-Sx/+weUmK+oiIlI+9sdD0wZHsqpbgQg8wSwSnGBjwb5GwqFhYNwwnI+UWZtLjKvKyFlKkatRK235qQ3mokyPoQ==}
engines: {node: '>=14.0.0'}
hasBin: true
dependencies:
@@ -3481,7 +3547,7 @@ packages:
engines: {node: '>= 0.4'}
dev: true
- /svelte-check@2.10.3(postcss-load-config@4.0.1)(postcss@8.4.23)(sass@1.62.1)(svelte@3.59.1):
+ /svelte-check@2.10.3(postcss-load-config@4.0.1)(postcss@8.4.24)(sass@1.63.4)(svelte@3.59.1):
resolution: {integrity: sha512-Nt1aWHTOKFReBpmJ1vPug0aGysqPwJh2seM1OvICfM2oeyaA62mOiy5EvkXhltGfhCcIQcq2LoE0l1CwcWPjlw==}
hasBin: true
peerDependencies:
@@ -3494,7 +3560,7 @@ packages:
picocolors: 1.0.0
sade: 1.8.1
svelte: 3.59.1
- 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)
+ svelte-preprocess: 4.10.7(postcss-load-config@4.0.1)(postcss@8.4.24)(sass@1.63.4)(svelte@3.59.1)(typescript@4.9.5)
typescript: 4.9.5
transitivePeerDependencies:
- '@babel/core'
@@ -3509,11 +3575,11 @@ packages:
- sugarss
dev: true
- /svelte-eslint-parser@0.29.0(svelte@3.59.1):
- resolution: {integrity: sha512-2uzOw9vRpSO3fo6NkbH7UynfCopQbMz/7LO9KT05YPvkB0uuFvFHex8+Ccv3gSrxHRvKS7FwJmV4H8WNWIzgWQ==}
+ /svelte-eslint-parser@0.30.0(svelte@3.59.1):
+ resolution: {integrity: sha512-H0Cn2TKr70DU9p/Gb04CfwtS7eK28MYumrHYPaDNkIFbfwGDLADpbERBn7u8G1Rcm2RMr2/mL6mq0J2e8iKFlA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
- svelte: ^3.37.0
+ svelte: ^3.37.0 || ^4.0.0-0
peerDependenciesMeta:
svelte:
optional: true
@@ -3524,11 +3590,11 @@ packages:
svelte: 3.59.1
dev: true
- /svelte-hmr@0.15.1(svelte@3.59.1):
- resolution: {integrity: sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==}
+ /svelte-hmr@0.15.2(svelte@3.59.1):
+ resolution: {integrity: sha512-q/bAruCvFLwvNbeE1x3n37TYFb3mTBJ6TrCq6p2CoFbSTNhDE9oAtEfpy+wmc9So8AG0Tja+X0/mJzX9tSfvIg==}
engines: {node: ^12.20 || ^14.13.1 || >= 16}
peerDependencies:
- svelte: '>=3.19.0'
+ svelte: ^3.19.0 || ^4.0.0-next.0
dependencies:
svelte: 3.59.1
@@ -3555,7 +3621,7 @@ packages:
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):
+ /svelte-preprocess@4.10.7(postcss-load-config@4.0.1)(postcss@8.4.24)(sass@1.63.4)(svelte@3.59.1)(typescript@4.9.5):
resolution: {integrity: sha512-sNPBnqYD6FnmdBrUmBCaqS00RyCsCpj2BG58A1JBswNF7b0OKviwxqVrOL/CKyJrLSClrSeqQv5BXNg2RUbPOw==}
engines: {node: '>= 9.11.2'}
requiresBuild: true
@@ -3600,17 +3666,17 @@ packages:
'@types/sass': 1.43.1
detect-indent: 6.1.0
magic-string: 0.25.9
- postcss: 8.4.23
- postcss-load-config: 4.0.1(postcss@8.4.23)(ts-node@10.9.1)
- sass: 1.62.1
+ postcss: 8.4.24
+ postcss-load-config: 4.0.1(postcss@8.4.24)(ts-node@10.9.1)
+ sass: 1.63.4
sorcery: 0.10.0
strip-indent: 3.0.0
svelte: 3.59.1
typescript: 4.9.5
dev: true
- /svelte-preprocess@5.0.3(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-GrHF1rusdJVbOZOwgPWtpqmaexkydznKzy5qIC2FabgpFyKN57bjMUUUqPRfbBXK5igiEWn1uO/DXsa2vJ5VHA==}
+ /svelte-preprocess@5.0.4(postcss-load-config@4.0.1)(postcss@8.4.24)(sass@1.63.4)(svelte@3.59.1)(typescript@4.9.5):
+ resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==}
engines: {node: '>= 14.10.0'}
requiresBuild: true
peerDependencies:
@@ -3623,7 +3689,7 @@ packages:
sass: ^1.26.8
stylus: ^0.55.0
sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0
- svelte: ^3.23.0
+ svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0
typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0'
peerDependenciesMeta:
'@babel/core':
@@ -3650,9 +3716,9 @@ packages:
'@types/pug': 2.0.6
detect-indent: 6.1.0
magic-string: 0.27.0
- postcss: 8.4.23
- postcss-load-config: 4.0.1(postcss@8.4.23)(ts-node@10.9.1)
- sass: 1.62.1
+ postcss: 8.4.24
+ postcss-load-config: 4.0.1(postcss@8.4.24)(ts-node@10.9.1)
+ sass: 1.63.4
sorcery: 0.11.0
strip-indent: 3.0.0
svelte: 3.59.1
@@ -3663,24 +3729,24 @@ packages:
resolution: {integrity: sha512-pKj8fEBmqf6mq3/NfrB9SLtcJcUvjYSWyePlfCqN9gujLB25RitWK8PvFzlwim6hD/We35KbPlRteuA6rnPGcQ==}
engines: {node: '>= 8'}
- /sveltekit-flash-message@0.11.3(@sveltejs/kit@1.19.0)(svelte@3.59.1):
+ /sveltekit-flash-message@0.11.3(@sveltejs/kit@1.20.2)(svelte@3.59.1):
resolution: {integrity: sha512-tMKBobVFLYth0z2Kq9M+pi7Ip2OBhOrzivzx64v9+D2bWRwnZ3pmdWStYfQYxlz5CayozRQsmtipNg1vM+JN9Q==}
peerDependencies:
'@sveltejs/kit': ^1.0.0
svelte: ^3
dependencies:
- '@sveltejs/kit': 1.19.0(svelte@3.59.1)(vite@4.3.9)
+ '@sveltejs/kit': 1.20.2(svelte@3.59.1)(vite@4.3.9)
svelte: 3.59.1
dev: false
- /sveltekit-superforms@0.8.7(@sveltejs/kit@1.19.0)(svelte@3.59.1)(zod@3.21.4):
- resolution: {integrity: sha512-0aFK31TNz4AM3N7dzL99QUXlVF2O+W/TNVU+M41VVaAKtJKFNasbv8GNLd5wrhN7UWN6kNJnt4MlZBPISkIQ6w==}
+ /sveltekit-superforms@1.0.0(@sveltejs/kit@1.20.2)(svelte@3.59.1)(zod@3.21.4):
+ resolution: {integrity: sha512-FihTu/szUCF1fpmqBQUo3tYdAMaNNt7HWaRcLWCIbubG29bpPAEoucWJ8IQpjloE4sGpof1MtgvZpK7k78Bkxg==}
peerDependencies:
'@sveltejs/kit': 1.x
svelte: 3.x
zod: 3.x
dependencies:
- '@sveltejs/kit': 1.19.0(svelte@3.59.1)(vite@4.3.9)
+ '@sveltejs/kit': 1.20.2(svelte@3.59.1)(vite@4.3.9)
svelte: 3.59.1
zod: 3.21.4
dev: true
@@ -3745,7 +3811,7 @@ packages:
resolution: {integrity: sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==}
dev: false
- /ts-node@10.9.1(@types/node@18.16.16)(typescript@4.9.5):
+ /ts-node@10.9.1(@types/node@18.16.18)(typescript@4.9.5):
resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==}
hasBin: true
peerDependencies:
@@ -3764,7 +3830,7 @@ packages:
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
'@tsconfig/node16': 1.0.4
- '@types/node': 18.16.16
+ '@types/node': 18.16.18
acorn: 8.8.2
acorn-walk: 8.2.0
arg: 4.1.3
@@ -3780,8 +3846,8 @@ packages:
resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
dev: true
- /tslib@2.5.2:
- resolution: {integrity: sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA==}
+ /tslib@2.5.3:
+ resolution: {integrity: sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==}
dev: true
/tsutils@3.21.0(typescript@4.9.5):
@@ -3847,7 +3913,7 @@ packages:
resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
dev: true
- /vite@4.3.9(@types/node@18.16.16)(sass@1.62.1):
+ /vite@4.3.9(@types/node@18.16.18)(sass@1.63.4):
resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==}
engines: {node: ^14.18.0 || >=16.0.0}
hasBin: true
@@ -3872,11 +3938,11 @@ packages:
terser:
optional: true
dependencies:
- '@types/node': 18.16.16
+ '@types/node': 18.16.18
esbuild: 0.17.18
- postcss: 8.4.23
+ postcss: 8.4.24
rollup: 3.21.0
- sass: 1.62.1
+ sass: 1.63.4
optionalDependencies:
fsevents: 2.3.2
@@ -3888,9 +3954,9 @@ packages:
vite:
optional: true
dependencies:
- vite: 4.3.9(@types/node@18.16.16)(sass@1.62.1)
+ vite: 4.3.9(@types/node@18.16.18)(sass@1.63.4)
- /vitest@0.25.8(sass@1.62.1):
+ /vitest@0.25.8(sass@1.63.4):
resolution: {integrity: sha512-X75TApG2wZTJn299E/TIYevr4E9/nBo1sUtZzn0Ci5oK8qnpZAZyhwg0qCeMSakGIWtc6oRwcQFyFfW14aOFWg==}
engines: {node: '>=v14.16.0'}
hasBin: true
@@ -3914,7 +3980,7 @@ packages:
dependencies:
'@types/chai': 4.3.4
'@types/chai-subset': 1.3.3
- '@types/node': 18.16.16
+ '@types/node': 18.16.18
acorn: 8.8.1
acorn-walk: 8.2.0
chai: 4.3.7
@@ -3925,7 +3991,7 @@ packages:
tinybench: 2.3.1
tinypool: 0.3.0
tinyspy: 1.0.2
- vite: 4.3.9(@types/node@18.16.16)(sass@1.62.1)
+ vite: 4.3.9(@types/node@18.16.18)(sass@1.63.4)
transitivePeerDependencies:
- less
- sass
diff --git a/postcss.config.cjs b/postcss.config.cjs
index 6b00645..2ed1852 100644
--- a/postcss.config.cjs
+++ b/postcss.config.cjs
@@ -5,7 +5,7 @@ const config = {
plugins: [
atImport(),
postcssPresetEnv({
- stage: 3,
+ stage: 2,
features: {
'nesting-rules': true,
'custom-media-queries': true,
diff --git a/prisma/schema.prisma b/prisma/schema.prisma
index 9a0b6c9..96d217b 100644
--- a/prisma/schema.prisma
+++ b/prisma/schema.prisma
@@ -11,20 +11,39 @@ datasource db {
relationMode = "prisma"
}
+model Role {
+ id String @id @default(cuid())
+ name String @unique
+ userRoles UserRole[]
+}
+
+model UserRole {
+ id String @id @default(cuid())
+ user AuthUser @relation(fields: [userId], references: [id])
+ userId String
+ role Role @relation(fields: [roleId], references: [id])
+ roleId String
+
+ @@unique([userId, roleId])
+ @@index([userId])
+ @@index([roleId])
+}
+
model AuthUser {
id String @id @default(cuid())
username String @unique
- email String? @unique
+ email String? @unique
firstName String?
lastName String?
- role Role @default(USER)
+ roles UserRole[]
verified Boolean @default(false)
receiveEmail Boolean @default(false)
token String? @unique
collection Collection?
wishlist Wishlist[]
- createdAt DateTime @default(now()) @db.Timestamp(6)
- updatedAt DateTime @updatedAt @db.Timestamp(6)
+ theme String @default("system")
+ createdAt DateTime @default(now()) @db.Timestamp(6)
+ updatedAt DateTime @updatedAt @db.Timestamp(6)
auth_session AuthSession[]
auth_key AuthKey[]
@@ -54,11 +73,6 @@ model AuthKey {
@@map("auth_key")
}
-enum Role {
- USER
- ADMIN
-}
-
model Collection {
id String @id @default(cuid())
user_id String @unique
diff --git a/prisma/seed.ts b/prisma/seed.ts
index 23e393f..11490cf 100644
--- a/prisma/seed.ts
+++ b/prisma/seed.ts
@@ -1,31 +1,40 @@
import { PrismaClient } from '@prisma/client';
-import userData from '../src/lib/data.json' assert { type: 'json' };
+// import userData from '../src/lib/data.json' assert { type: 'json' };
const prisma = new PrismaClient();
async function main() {
console.log(`Start seeding ...`);
- for (const p of userData) {
- const user = await prisma.user.create({
- data: {
- firstName: p.user.firstName,
- lastName: p.user.lastName,
- email: p.user.email,
- username: p.user.username
- }
+ const existingRoles = await prisma.role.findMany();
+ if (existingRoles.length === 0) {
+ await prisma.role.createMany({
+ data: [{ name: 'admin' }, { name: 'user' }]
});
- console.log(`Created user with id: ${user.id}`);
+ console.log('Roles created.');
+ } else {
+ console.log('Roles already exist. No action taken.');
}
+
+ // for (const p of userData) {
+ // const user = await prisma.user.create({
+ // data: {
+ // firstName: p.user.firstName,
+ // lastName: p.user.lastName,
+ // email: p.user.email,
+ // username: p.user.username
+ // }
+ // });
+ // console.log(`Created user with id: ${user.id}`);
+ // }
console.log(`Seeding finished.`);
}
main()
- .then(async () => {
- await prisma.$disconnect();
- })
.catch(async (e) => {
console.error(e);
- await prisma.$disconnect();
process.exit(1);
+ })
+ .finally(async () => {
+ await prisma.$disconnect();
});
diff --git a/src/app.d.ts b/src/app.d.ts
index 7759350..59ed3b3 100644
--- a/src/app.d.ts
+++ b/src/app.d.ts
@@ -9,6 +9,7 @@ declare global {
}
interface Locals {
auth: import('lucia-auth').AuthRequest;
+ prisma: PrismaClient;
user: Lucia.UserAttributes;
startTimer: number;
error: string;
diff --git a/src/db/roles.ts b/src/db/roles.ts
new file mode 100644
index 0000000..7a3011b
--- /dev/null
+++ b/src/db/roles.ts
@@ -0,0 +1,32 @@
+import prisma from '$lib/prisma';
+
+export async function add_user_to_role(userId: string, roleName: string) {
+ // Find the role by its name
+ const role = await prisma.role.findUnique({
+ where: {
+ name: roleName
+ }
+ });
+
+ if (!role) {
+ throw new Error(`Role with name ${roleName} not found`);
+ }
+
+ // Create a UserRole entry linking the user and the role
+ const userRole = await prisma.userRole.create({
+ data: {
+ user: {
+ connect: {
+ id: userId
+ }
+ },
+ role: {
+ connect: {
+ id: role.id
+ }
+ }
+ }
+ });
+
+ return userRole;
+}
diff --git a/src/db/users.ts b/src/db/users.ts
new file mode 100644
index 0000000..60daed4
--- /dev/null
+++ b/src/db/users.ts
@@ -0,0 +1,56 @@
+import { auth } from '$lib/server/lucia';
+import prisma from '$lib/prisma';
+import type { AuthUser } from '@prisma/client';
+import { add_user_to_role } from './roles';
+
+export function create_user(user: AuthUser) {
+ return prisma.authUser.create({
+ data: {
+ username: user.username
+ }
+ });
+}
+
+export async function find_or_create_user(user: AuthUser) {
+ const existing_user = await prisma.authUser.findUnique({
+ where: {
+ username: user.username
+ }
+ });
+ if (existing_user) {
+ return existing_user;
+ } else {
+ const new_user = await create_user(user);
+ add_user_to_role(new_user.id, 'user');
+ return new_user;
+ }
+}
+
+export async function find_user_with_roles(user_id: string) {
+ const user_with_roles = await prisma.authUser.findUnique({
+ where: {
+ id: user_id
+ },
+ include: {
+ roles: {
+ select: {
+ role: {
+ select: {
+ name: true
+ }
+ }
+ }
+ }
+ }
+ });
+ if (!user_with_roles) {
+ throw new Error('User not found');
+ }
+
+ const user = {
+ ...user_with_roles,
+ roles: user_with_roles.roles.map((user_role) => user_role.role.name)
+ };
+
+ return user;
+}
diff --git a/src/hooks.server.ts b/src/hooks.server.ts
index 7b82c00..6e0ae89 100644
--- a/src/hooks.server.ts
+++ b/src/hooks.server.ts
@@ -1,8 +1,9 @@
-import { redirect, type Handle } from '@sveltejs/kit';
-import type { HandleServerError } from '@sveltejs/kit';
+import { sequence } from '@sveltejs/kit/hooks';
+import { redirect, type HandleServerError, type Handle } from '@sveltejs/kit';
+import { dev } from '$app/environment';
import { auth } from '$lib/server/lucia';
import log from '$lib/server/log';
-import { dev } from '$app/environment';
+import prisma from '$lib/config/prisma';
export const handleError: HandleServerError = async ({ error, event }) => {
const errorId = crypto.randomUUID();
@@ -24,24 +25,28 @@ export const handleError: HandleServerError = async ({ error, event }) => {
};
};
-export const handle: Handle = async ({ event, resolve }) => {
+// export const prismaClient: Handle = async function ({ event, resolve }) {
+// event.locals.prisma = prisma;
+// const response = await resolve(event);
+// return response;
+// };
+
+export const authentication: Handle = async function ({ event, resolve }) {
const startTimer = Date.now();
event.locals.startTimer = startTimer;
event.locals.auth = auth.handleRequest(event);
- console.log(JSON.stringify(event));
if (event.locals?.auth) {
const { user } = await event.locals.auth.validateUser();
event.locals.user = user;
- if (event.route.id?.startsWith('/(protected)')) {
- if (!user) throw redirect(302, '/auth/sign-in');
- if (!user.verified) throw redirect(302, '/auth/verify/email');
- }
+ // if (event.route.id?.startsWith('/(protected)')) {
+ // if (!user) throw redirect(302, '/auth/sign-in');
+ // if (!user.verified) throw redirect(302, '/auth/verify/email');
+ // }
}
const response = await resolve(event);
- if (!dev) {
- log(response.status, event);
- }
return response;
};
+
+export const handle = sequence(authentication);
diff --git a/src/lib/components/header/index.svelte b/src/lib/components/header/index.svelte
index cd7ff9e..b45e950 100644
--- a/src/lib/components/header/index.svelte
+++ b/src/lib/components/header/index.svelte
@@ -1,6 +1,6 @@
diff --git a/src/routes/admin/+layout.server.ts b/src/routes/admin/+layout.server.ts
new file mode 100644
index 0000000..51ade48
--- /dev/null
+++ b/src/routes/admin/+layout.server.ts
@@ -0,0 +1,5 @@
+import { redirect } from '@sveltejs/kit';
+
+export const load = async function ({ locals }) {
+ if (!locals?.user?.role?.includes('admin')) throw redirect(302, '/');
+};
diff --git a/src/routes/admin/+layout.svelte b/src/routes/admin/+layout.svelte
new file mode 100644
index 0000000..0385342
--- /dev/null
+++ b/src/routes/admin/+layout.svelte
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/routes/admin/+page.svelte b/src/routes/admin/+page.svelte
new file mode 100644
index 0000000..e69de29
diff --git a/src/routes/auth/signin/+page.server.ts b/src/routes/auth/signin/+page.server.ts
index 1065f54..dcb743e 100644
--- a/src/routes/auth/signin/+page.server.ts
+++ b/src/routes/auth/signin/+page.server.ts
@@ -1,7 +1,9 @@
import { fail, redirect } from '@sveltejs/kit';
import { setError, superValidate } from 'sveltekit-superforms/server';
import { auth } from '$lib/server/lucia';
+import prisma from '$lib/prisma.js';
import { userSchema } from '$lib/config/zod-schemas';
+import { add_user_to_role } from '$db/roles';
const signInSchema = userSchema.pick({
username: true,
@@ -13,10 +15,10 @@ export const load = async (event) => {
if (session) {
throw redirect(302, '/');
}
- // const form = await superValidate(event, signInSchema);
- // return {
- // form
- // };
+ const form = await superValidate(event, signInSchema);
+ return {
+ form
+ };
};
export const actions = {
@@ -30,16 +32,32 @@ export const actions = {
});
}
- // Adding user to the db
try {
const key = await auth.useKey('username', form.data.username, form.data.password);
const session = await auth.createSession(key.userId);
event.locals.auth.setSession(session);
+
+ const user = await prisma.authUser.findUnique({
+ where: {
+ id: session.userId
+ },
+ include: {
+ roles: {
+ select: {
+ role: true
+ }
+ }
+ }
+ });
+
+ if (user && user.roles.length === 0) {
+ add_user_to_role(user.id, 'user');
+ }
} catch (e) {
// TODO: need to return error message to the client
console.error(e);
form.data.password = '';
- return setError(form, null, 'The username or password is incorrect.');
+ return setError(form, '', 'The username or password is incorrect.');
}
form.data.username = '';
form.data.password = '';
diff --git a/src/routes/auth/signin/+page.svelte b/src/routes/auth/signin/+page.svelte
index 97d1ff8..89f50e3 100644
--- a/src/routes/auth/signin/+page.svelte
+++ b/src/routes/auth/signin/+page.svelte
@@ -3,6 +3,7 @@
import { userSchema } from '$lib/config/zod-schemas.js';
export let data;
+
const signInSchema = userSchema.pick({ username: true, password: true });
const { form, errors, enhance, delayed } = superForm(data.form, {
taintedMessage: null,
diff --git a/src/routes/auth/signup/+page.server.ts b/src/routes/auth/signup/+page.server.ts
index 22127c1..17e4c78 100644
--- a/src/routes/auth/signup/+page.server.ts
+++ b/src/routes/auth/signup/+page.server.ts
@@ -2,6 +2,7 @@ import { fail, redirect } from '@sveltejs/kit';
import { setError, superValidate } from 'sveltekit-superforms/server';
import { auth } from '$lib/server/lucia';
import { userSchema } from '$lib/config/zod-schemas';
+import { add_user_to_role } from '$db/roles';
const signUpSchema = userSchema.pick({
firstName: true,
@@ -55,6 +56,7 @@ export const actions = {
token
}
});
+ add_user_to_role(user.id, 'user');
console.log('User', user);
diff --git a/src/routes/collection/+page.server.ts b/src/routes/collection/+page.server.ts
index 741b409..68103c6 100644
--- a/src/routes/collection/+page.server.ts
+++ b/src/routes/collection/+page.server.ts
@@ -1,14 +1,65 @@
-import type { PageServerLoad } from "../$types";
+// import { redirect } from '@sveltejs/kit';
+// import { superValidate } from 'sveltekit-superforms/server';
+// import { search_schema } from '$lib/zodValidation';
-export const load: PageServerLoad = async ({ fetch, url }) => {
- const searchParams = Object.fromEntries(url?.searchParams);
- const q = searchParams?.q;
- const limit = parseInt(searchParams?.limit) || 10;
- const skip = parseInt(searchParams?.skip) || 0;
+export const load = async ({ fetch, url, locals }) => {
+ // const session = await locals.auth.validate();
+ // if (!session) {
+ // throw redirect(302, '/auth/signin');
+ // }
+
+ console.log('locals load', locals);
+ // const searchParams = Object.fromEntries(url?.searchParams);
+ // const q = searchParams?.q;
+ // const limit = parseInt(searchParams?.limit) || 10;
+ // const skip = parseInt(searchParams?.skip) || 0;
+
+ // const searchData = {
+ // q,
+ // limit,
+ // skip
+ // };
+
+ // const form = await superValidate(searchData, search_schema);
+
+ try {
+ // let collection = await locals.prisma.collection.findUnique({
+ // where: {
+ // user_id: session.userId
+ // }
+ // include: {
+ // collectionItems: {
+ // where: {
+ // title: {
+ // contains: q,
+ // mode: 'insensitive'
+ // }
+ // },
+ // take: limit,
+ // skip
+ // }
+ // }
+ // });
+
+ // console.log('collection', collection);
+ // if (!collection) {
+ // collection = await locals.prisma.collection.create({
+ // data: {
+ // user_id: session.userId
+ // }
+ // });
+ // }
+
+ return {
+ // form,
+ // collection
+ };
+ } catch (e) {
+ console.error(e);
+ }
return {
- q,
- limit,
- skip
+ // form,
+ // collection: []
};
};
diff --git a/src/routes/collection/+page.svelte b/src/routes/collection/+page.svelte
index 4a5eda7..8cb0e0d 100644
--- a/src/routes/collection/+page.svelte
+++ b/src/routes/collection/+page.svelte
@@ -1,78 +1,78 @@
@@ -80,9 +80,9 @@
Your Collection
-
+
-
+
-