Compare commits
22 Commits
8d088da286
...
831f7c4ad1
| Author | SHA1 | Date |
|---|---|---|
|
|
831f7c4ad1 | |
|
|
c036a97d39 | |
|
|
7991269dcf | |
|
|
3010fd62be | |
|
|
120ad96545 | |
|
|
7e2a7c31f7 | |
|
|
5bb26be1c3 | |
|
|
bd008c5961 | |
|
|
29d68d8b9b | |
|
|
16ae5880e1 | |
|
|
ba858e70c0 | |
|
|
2b8b4f27ec | |
|
|
cb586bdddb | |
|
|
6cfe95c5ee | |
|
|
7ce0795a7b | |
|
|
9c3f3788c9 | |
|
|
b4817d968e | |
|
|
22de28a9cd | |
|
|
a0347a4fc3 | |
|
|
fcc8bb95f7 | |
|
|
d55a2126b4 | |
|
|
6a64fc24ab |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
|
After Width: | Height: | Size: 273 KiB |
|
|
@ -1 +1 @@
|
||||||
<!doctype html><html lang="en"><head><meta charset="UTF-8"><link rel="icon" href="./favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Hello_World_Vue 01</title><script type="module" crossorigin src="./assets/index-6b91de8d.js"></script></head><body><div id="app"></div></body></html>
|
<!doctype html><html lang="en"><head><meta charset="UTF-8"><link rel="icon" href="./logo.ico"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Gym Tracker</title><script type="module" crossorigin src="./assets/index-3d69e972.js"></script></head><body><div id="app"></div></body></html>
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 162 KiB |
|
|
@ -2,9 +2,9 @@
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<link rel="icon" href="/favicon.ico">
|
<link rel="icon" href="/logo.ico">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>Hello_World_Vue 01</title>
|
<title>Gym Tracker</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="app"></div>
|
<div id="app"></div>
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@
|
||||||
"name": "gym_tracker",
|
"name": "gym_tracker",
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@vueuse/core": "^10.1.2",
|
||||||
"pinia": "^2.0.32",
|
"pinia": "^2.0.32",
|
||||||
"uuid": "^9.0.0",
|
"uuid": "^9.0.0",
|
||||||
"vite-plugin-css-injected-by-js": "^3.1.0",
|
"vite-plugin-css-injected-by-js": "^3.1.0",
|
||||||
|
|
@ -16,19 +17,35 @@
|
||||||
"vue-router": "^4.1.6"
|
"vue-router": "^4.1.6"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@rollup/plugin-json": "^6.0.0",
|
||||||
"@rushstack/eslint-patch": "^1.2.0",
|
"@rushstack/eslint-patch": "^1.2.0",
|
||||||
"@vitejs/plugin-vue": "^4.0.0",
|
"@vitejs/plugin-vue": "^4.0.0",
|
||||||
"@vue/eslint-config-prettier": "^7.1.0",
|
"@vue/eslint-config-prettier": "^7.1.0",
|
||||||
"@vue/test-utils": "^2.3.0",
|
"@vue/test-utils": "^2.3.0",
|
||||||
|
"autoprefixer": "^10.4.14",
|
||||||
"eslint": "^8.34.0",
|
"eslint": "^8.34.0",
|
||||||
"eslint-plugin-vue": "^9.9.0",
|
"eslint-plugin-vue": "^9.9.0",
|
||||||
"jsdom": "^21.1.0",
|
"jsdom": "^21.1.0",
|
||||||
|
"postcss": "^8.4.23",
|
||||||
"prettier": "^2.8.4",
|
"prettier": "^2.8.4",
|
||||||
"sass": "^1.62.0",
|
"sass": "^1.62.1",
|
||||||
|
"tailwindcss": "^3.3.2",
|
||||||
"vite": "^4.1.4",
|
"vite": "^4.1.4",
|
||||||
"vitest": "^0.29.1"
|
"vitest": "^0.29.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@alloc/quick-lru": {
|
||||||
|
"version": "5.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
|
||||||
|
"integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=10"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@babel/parser": {
|
"node_modules/@babel/parser": {
|
||||||
"version": "7.21.4",
|
"version": "7.21.4",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz",
|
||||||
|
|
@ -548,6 +565,48 @@
|
||||||
"node": ">= 8"
|
"node": ">= 8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@rollup/plugin-json": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-i/4C5Jrdr1XUarRhVu27EEwjt4GObltD7c+MkCIpO2QIbojw8MUs+CCTqOphQi3Qtg1FLmYt+l+6YeoIf51J7w==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@rollup/pluginutils": "^5.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14.0.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"rollup": "^1.20.0||^2.0.0||^3.0.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"rollup": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@rollup/plugin-json/node_modules/@rollup/pluginutils": {
|
||||||
|
"version": "5.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz",
|
||||||
|
"integrity": "sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@types/estree": "^1.0.0",
|
||||||
|
"estree-walker": "^2.0.2",
|
||||||
|
"picomatch": "^2.3.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14.0.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"rollup": "^1.20.0||^2.0.0||^3.0.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"rollup": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@rollup/pluginutils": {
|
"node_modules/@rollup/pluginutils": {
|
||||||
"version": "4.2.1",
|
"version": "4.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz",
|
||||||
|
|
@ -590,12 +649,23 @@
|
||||||
"@types/chai": "*"
|
"@types/chai": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@types/estree": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/@types/node": {
|
"node_modules/@types/node": {
|
||||||
"version": "18.15.11",
|
"version": "18.15.11",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz",
|
||||||
"integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==",
|
"integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==",
|
||||||
"devOptional": true
|
"devOptional": true
|
||||||
},
|
},
|
||||||
|
"node_modules/@types/web-bluetooth": {
|
||||||
|
"version": "0.0.17",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.17.tgz",
|
||||||
|
"integrity": "sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA=="
|
||||||
|
},
|
||||||
"node_modules/@vitejs/plugin-vue": {
|
"node_modules/@vitejs/plugin-vue": {
|
||||||
"version": "4.1.0",
|
"version": "4.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz",
|
||||||
|
|
@ -818,6 +888,89 @@
|
||||||
"vue": "^3.0.1"
|
"vue": "^3.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@vueuse/core": {
|
||||||
|
"version": "10.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.1.2.tgz",
|
||||||
|
"integrity": "sha512-roNn8WuerI56A5uiTyF/TEYX0Y+VKlhZAF94unUfdhbDUI+NfwQMn4FUnUscIRUhv3344qvAghopU4bzLPNFlA==",
|
||||||
|
"dependencies": {
|
||||||
|
"@types/web-bluetooth": "^0.0.17",
|
||||||
|
"@vueuse/metadata": "10.1.2",
|
||||||
|
"@vueuse/shared": "10.1.2",
|
||||||
|
"vue-demi": ">=0.14.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vueuse/core/node_modules/vue-demi": {
|
||||||
|
"version": "0.14.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz",
|
||||||
|
"integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==",
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"bin": {
|
||||||
|
"vue-demi-fix": "bin/vue-demi-fix.js",
|
||||||
|
"vue-demi-switch": "bin/vue-demi-switch.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@vue/composition-api": "^1.0.0-rc.1",
|
||||||
|
"vue": "^3.0.0-0 || ^2.6.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@vue/composition-api": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vueuse/metadata": {
|
||||||
|
"version": "10.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.1.2.tgz",
|
||||||
|
"integrity": "sha512-3mc5BqN9aU2SqBeBuWE7ne4OtXHoHKggNgxZR2K+zIW4YLsy6xoZ4/9vErQs6tvoKDX6QAqm3lvsrv0mczAwIQ==",
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vueuse/shared": {
|
||||||
|
"version": "10.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.1.2.tgz",
|
||||||
|
"integrity": "sha512-1uoUTPBlgyscK9v6ScGeVYDDzlPSFXBlxuK7SfrDGyUTBiznb3mNceqhwvZHjtDRELZEN79V5uWPTF1VDV8svA==",
|
||||||
|
"dependencies": {
|
||||||
|
"vue-demi": ">=0.14.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vueuse/shared/node_modules/vue-demi": {
|
||||||
|
"version": "0.14.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz",
|
||||||
|
"integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==",
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"bin": {
|
||||||
|
"vue-demi-fix": "bin/vue-demi-fix.js",
|
||||||
|
"vue-demi-switch": "bin/vue-demi-switch.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@vue/composition-api": "^1.0.0-rc.1",
|
||||||
|
"vue": "^3.0.0-0 || ^2.6.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@vue/composition-api": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/abab": {
|
"node_modules/abab": {
|
||||||
"version": "2.0.6",
|
"version": "2.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
|
||||||
|
|
@ -920,6 +1073,12 @@
|
||||||
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/any-promise": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
|
||||||
|
"integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/anymatch": {
|
"node_modules/anymatch": {
|
||||||
"version": "3.1.3",
|
"version": "3.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
|
||||||
|
|
@ -933,6 +1092,12 @@
|
||||||
"node": ">= 8"
|
"node": ">= 8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/arg": {
|
||||||
|
"version": "5.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
|
||||||
|
"integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/argparse": {
|
"node_modules/argparse": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
|
||||||
|
|
@ -959,6 +1124,39 @@
|
||||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
|
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/autoprefixer": {
|
||||||
|
"version": "10.4.14",
|
||||||
|
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz",
|
||||||
|
"integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==",
|
||||||
|
"dev": true,
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/postcss/"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "tidelift",
|
||||||
|
"url": "https://tidelift.com/funding/github/npm/autoprefixer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"browserslist": "^4.21.5",
|
||||||
|
"caniuse-lite": "^1.0.30001464",
|
||||||
|
"fraction.js": "^4.2.0",
|
||||||
|
"normalize-range": "^0.1.2",
|
||||||
|
"picocolors": "^1.0.0",
|
||||||
|
"postcss-value-parser": "^4.2.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"autoprefixer": "bin/autoprefixer"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^10 || ^12 || >=14"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"postcss": "^8.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/balanced-match": {
|
"node_modules/balanced-match": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||||
|
|
@ -998,6 +1196,34 @@
|
||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/browserslist": {
|
||||||
|
"version": "4.21.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz",
|
||||||
|
"integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==",
|
||||||
|
"dev": true,
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/browserslist"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "tidelift",
|
||||||
|
"url": "https://tidelift.com/funding/github/npm/browserslist"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"caniuse-lite": "^1.0.30001449",
|
||||||
|
"electron-to-chromium": "^1.4.284",
|
||||||
|
"node-releases": "^2.0.8",
|
||||||
|
"update-browserslist-db": "^1.0.10"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"browserslist": "cli.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/buffer-from": {
|
"node_modules/buffer-from": {
|
||||||
"version": "1.1.2",
|
"version": "1.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
|
||||||
|
|
@ -1030,6 +1256,35 @@
|
||||||
"tslib": "^2.0.3"
|
"tslib": "^2.0.3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/camelcase-css": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
|
||||||
|
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/caniuse-lite": {
|
||||||
|
"version": "1.0.30001482",
|
||||||
|
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001482.tgz",
|
||||||
|
"integrity": "sha512-F1ZInsg53cegyjroxLNW9DmrEQ1SuGRTO1QlpA0o2/6OpQ0gFeDRoq1yFmnr8Sakn9qwwt9DmbxHB6w167OSuQ==",
|
||||||
|
"dev": true,
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/browserslist"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "tidelift",
|
||||||
|
"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/ai"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
"node_modules/chai": {
|
"node_modules/chai": {
|
||||||
"version": "4.3.7",
|
"version": "4.3.7",
|
||||||
"resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz",
|
"resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz",
|
||||||
|
|
@ -1337,6 +1592,12 @@
|
||||||
"node": ">=0.4.0"
|
"node": ">=0.4.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/didyoumean": {
|
||||||
|
"version": "1.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
|
||||||
|
"integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/diff": {
|
"node_modules/diff": {
|
||||||
"version": "5.1.0",
|
"version": "5.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz",
|
||||||
|
|
@ -1346,6 +1607,12 @@
|
||||||
"node": ">=0.3.1"
|
"node": ">=0.3.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/dlv": {
|
||||||
|
"version": "1.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
|
||||||
|
"integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/doctrine": {
|
"node_modules/doctrine": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
|
||||||
|
|
@ -1498,6 +1765,12 @@
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/electron-to-chromium": {
|
||||||
|
"version": "1.4.385",
|
||||||
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz",
|
||||||
|
"integrity": "sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/emoji-regex": {
|
"node_modules/emoji-regex": {
|
||||||
"version": "9.2.2",
|
"version": "9.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
|
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
|
||||||
|
|
@ -1552,6 +1825,15 @@
|
||||||
"@esbuild/win32-x64": "0.17.17"
|
"@esbuild/win32-x64": "0.17.17"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/escalade": {
|
||||||
|
"version": "3.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
||||||
|
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/escape-string-regexp": {
|
"node_modules/escape-string-regexp": {
|
||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
|
||||||
|
|
@ -2010,6 +2292,19 @@
|
||||||
"node": ">= 6"
|
"node": ">= 6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/fraction.js": {
|
||||||
|
"version": "4.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
|
||||||
|
"integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "patreon",
|
||||||
|
"url": "https://www.patreon.com/infusion"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/fs-extra": {
|
"node_modules/fs-extra": {
|
||||||
"version": "10.1.0",
|
"version": "10.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
|
||||||
|
|
@ -2410,6 +2705,15 @@
|
||||||
"node": ">=10"
|
"node": ">=10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/jiti": {
|
||||||
|
"version": "1.18.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz",
|
||||||
|
"integrity": "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==",
|
||||||
|
"dev": true,
|
||||||
|
"bin": {
|
||||||
|
"jiti": "bin/jiti.js"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/js-beautify": {
|
"node_modules/js-beautify": {
|
||||||
"version": "1.14.6",
|
"version": "1.14.6",
|
||||||
"resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.6.tgz",
|
"resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.6.tgz",
|
||||||
|
|
@ -2547,6 +2851,21 @@
|
||||||
"node": ">= 0.8.0"
|
"node": ">= 0.8.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/lilconfig": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=10"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/lines-and-columns": {
|
||||||
|
"version": "1.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
|
||||||
|
"integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/local-pkg": {
|
"node_modules/local-pkg": {
|
||||||
"version": "0.4.3",
|
"version": "0.4.3",
|
||||||
"resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz",
|
||||||
|
|
@ -2691,6 +3010,17 @@
|
||||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
|
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/mz": {
|
||||||
|
"version": "2.7.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
|
||||||
|
"integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"any-promise": "^1.0.0",
|
||||||
|
"object-assign": "^4.0.1",
|
||||||
|
"thenify-all": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/nanoid": {
|
"node_modules/nanoid": {
|
||||||
"version": "3.3.6",
|
"version": "3.3.6",
|
||||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
|
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
|
||||||
|
|
@ -2732,6 +3062,12 @@
|
||||||
"he": "1.2.0"
|
"he": "1.2.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/node-releases": {
|
||||||
|
"version": "2.0.10",
|
||||||
|
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz",
|
||||||
|
"integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/nopt": {
|
"node_modules/nopt": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz",
|
||||||
|
|
@ -2756,6 +3092,15 @@
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/normalize-range": {
|
||||||
|
"version": "0.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
|
||||||
|
"integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/nth-check": {
|
"node_modules/nth-check": {
|
||||||
"version": "2.1.1",
|
"version": "2.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
|
||||||
|
|
@ -2773,6 +3118,24 @@
|
||||||
"integrity": "sha512-NHj4rzRo0tQdijE9ZqAx6kYDcoRwYwSYzCA8MY3JzfxlrvEU0jhnhJT9BhqhJs7I/dKcrDm6TyulaRqZPIhN5g==",
|
"integrity": "sha512-NHj4rzRo0tQdijE9ZqAx6kYDcoRwYwSYzCA8MY3JzfxlrvEU0jhnhJT9BhqhJs7I/dKcrDm6TyulaRqZPIhN5g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/object-assign": {
|
||||||
|
"version": "4.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
|
||||||
|
"integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/object-hash": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/once": {
|
"node_modules/once": {
|
||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||||
|
|
@ -2934,6 +3297,15 @@
|
||||||
"url": "https://github.com/sponsors/jonschlinkert"
|
"url": "https://github.com/sponsors/jonschlinkert"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/pify": {
|
||||||
|
"version": "2.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||||
|
"integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/pinia": {
|
"node_modules/pinia": {
|
||||||
"version": "2.0.34",
|
"version": "2.0.34",
|
||||||
"resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.34.tgz",
|
"resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.34.tgz",
|
||||||
|
|
@ -2984,6 +3356,15 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/pirates": {
|
||||||
|
"version": "4.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz",
|
||||||
|
"integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/pkg-types": {
|
"node_modules/pkg-types": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.2.tgz",
|
||||||
|
|
@ -2996,9 +3377,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/postcss": {
|
"node_modules/postcss": {
|
||||||
"version": "8.4.22",
|
"version": "8.4.23",
|
||||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.22.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz",
|
||||||
"integrity": "sha512-XseknLAfRHzVWjCEtdviapiBtfLdgyzExD50Rg2ePaucEesyh8Wv4VPdW0nbyDa1ydbrAxV19jvMT4+LFmcNUA==",
|
"integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==",
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"type": "opencollective",
|
"type": "opencollective",
|
||||||
|
|
@ -3022,6 +3403,90 @@
|
||||||
"node": "^10 || ^12 || >=14"
|
"node": "^10 || ^12 || >=14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/postcss-import": {
|
||||||
|
"version": "15.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz",
|
||||||
|
"integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"postcss-value-parser": "^4.0.0",
|
||||||
|
"read-cache": "^1.0.0",
|
||||||
|
"resolve": "^1.1.7"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14.0.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"postcss": "^8.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/postcss-js": {
|
||||||
|
"version": "4.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz",
|
||||||
|
"integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"camelcase-css": "^2.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^12 || ^14 || >= 16"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/postcss/"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"postcss": "^8.4.21"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/postcss-load-config": {
|
||||||
|
"version": "4.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz",
|
||||||
|
"integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"lilconfig": "^2.0.5",
|
||||||
|
"yaml": "^2.1.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 14"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/postcss/"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"postcss": ">=8.0.9",
|
||||||
|
"ts-node": ">=9.0.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"postcss": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"ts-node": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/postcss-nested": {
|
||||||
|
"version": "6.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz",
|
||||||
|
"integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"postcss-selector-parser": "^6.0.11"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/postcss/"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"postcss": "^8.2.14"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/postcss-selector-parser": {
|
"node_modules/postcss-selector-parser": {
|
||||||
"version": "6.0.11",
|
"version": "6.0.11",
|
||||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz",
|
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz",
|
||||||
|
|
@ -3035,6 +3500,12 @@
|
||||||
"node": ">=4"
|
"node": ">=4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/postcss-value-parser": {
|
||||||
|
"version": "4.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
|
||||||
|
"integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/prelude-ls": {
|
"node_modules/prelude-ls": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
|
||||||
|
|
@ -3155,6 +3626,15 @@
|
||||||
"integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
|
"integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/read-cache": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"pify": "^2.3.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/readdirp": {
|
"node_modules/readdirp": {
|
||||||
"version": "3.6.0",
|
"version": "3.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
||||||
|
|
@ -3300,9 +3780,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/sass": {
|
"node_modules/sass": {
|
||||||
"version": "1.62.0",
|
"version": "1.62.1",
|
||||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.62.0.tgz",
|
"resolved": "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz",
|
||||||
"integrity": "sha512-Q4USplo4pLYgCi+XlipZCWUQz5pkg/ruSSgJ0WRDSb/+3z9tXUOkQ7QPYn4XrhZKYAK4HlpaQecRwKLJX6+DBg==",
|
"integrity": "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==",
|
||||||
"devOptional": true,
|
"devOptional": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"chokidar": ">=3.0.0 <4.0.0",
|
"chokidar": ">=3.0.0 <4.0.0",
|
||||||
|
|
@ -3545,6 +4025,57 @@
|
||||||
"url": "https://github.com/sponsors/antfu"
|
"url": "https://github.com/sponsors/antfu"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/sucrase": {
|
||||||
|
"version": "3.32.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.32.0.tgz",
|
||||||
|
"integrity": "sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@jridgewell/gen-mapping": "^0.3.2",
|
||||||
|
"commander": "^4.0.0",
|
||||||
|
"glob": "7.1.6",
|
||||||
|
"lines-and-columns": "^1.1.6",
|
||||||
|
"mz": "^2.7.0",
|
||||||
|
"pirates": "^4.0.1",
|
||||||
|
"ts-interface-checker": "^0.1.9"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"sucrase": "bin/sucrase",
|
||||||
|
"sucrase-node": "bin/sucrase-node"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/sucrase/node_modules/commander": {
|
||||||
|
"version": "4.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
|
||||||
|
"integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/sucrase/node_modules/glob": {
|
||||||
|
"version": "7.1.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
|
||||||
|
"integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"fs.realpath": "^1.0.0",
|
||||||
|
"inflight": "^1.0.4",
|
||||||
|
"inherits": "2",
|
||||||
|
"minimatch": "^3.0.4",
|
||||||
|
"once": "^1.3.0",
|
||||||
|
"path-is-absolute": "^1.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/isaacs"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/supports-color": {
|
"node_modules/supports-color": {
|
||||||
"version": "7.2.0",
|
"version": "7.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
||||||
|
|
@ -3573,6 +4104,44 @@
|
||||||
"integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
|
"integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/tailwindcss": {
|
||||||
|
"version": "3.3.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz",
|
||||||
|
"integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@alloc/quick-lru": "^5.2.0",
|
||||||
|
"arg": "^5.0.2",
|
||||||
|
"chokidar": "^3.5.3",
|
||||||
|
"didyoumean": "^1.2.2",
|
||||||
|
"dlv": "^1.1.3",
|
||||||
|
"fast-glob": "^3.2.12",
|
||||||
|
"glob-parent": "^6.0.2",
|
||||||
|
"is-glob": "^4.0.3",
|
||||||
|
"jiti": "^1.18.2",
|
||||||
|
"lilconfig": "^2.1.0",
|
||||||
|
"micromatch": "^4.0.5",
|
||||||
|
"normalize-path": "^3.0.0",
|
||||||
|
"object-hash": "^3.0.0",
|
||||||
|
"picocolors": "^1.0.0",
|
||||||
|
"postcss": "^8.4.23",
|
||||||
|
"postcss-import": "^15.1.0",
|
||||||
|
"postcss-js": "^4.0.1",
|
||||||
|
"postcss-load-config": "^4.0.1",
|
||||||
|
"postcss-nested": "^6.0.1",
|
||||||
|
"postcss-selector-parser": "^6.0.11",
|
||||||
|
"postcss-value-parser": "^4.2.0",
|
||||||
|
"resolve": "^1.22.2",
|
||||||
|
"sucrase": "^3.32.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"tailwind": "lib/cli.js",
|
||||||
|
"tailwindcss": "lib/cli.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/terser": {
|
"node_modules/terser": {
|
||||||
"version": "5.17.1",
|
"version": "5.17.1",
|
||||||
"resolved": "https://registry.npmjs.org/terser/-/terser-5.17.1.tgz",
|
"resolved": "https://registry.npmjs.org/terser/-/terser-5.17.1.tgz",
|
||||||
|
|
@ -3596,6 +4165,27 @@
|
||||||
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
|
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/thenify": {
|
||||||
|
"version": "3.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz",
|
||||||
|
"integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"any-promise": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/thenify-all": {
|
||||||
|
"version": "1.6.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz",
|
||||||
|
"integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"thenify": ">= 3.1.0 < 4"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/tinybench": {
|
"node_modules/tinybench": {
|
||||||
"version": "2.4.0",
|
"version": "2.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.4.0.tgz",
|
||||||
|
|
@ -3658,6 +4248,12 @@
|
||||||
"node": ">=14"
|
"node": ">=14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/ts-interface-checker": {
|
||||||
|
"version": "0.1.13",
|
||||||
|
"resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",
|
||||||
|
"integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/tslib": {
|
"node_modules/tslib": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz",
|
||||||
|
|
@ -3711,6 +4307,36 @@
|
||||||
"node": ">= 4.0.0"
|
"node": ">= 4.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/update-browserslist-db": {
|
||||||
|
"version": "1.0.11",
|
||||||
|
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz",
|
||||||
|
"integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==",
|
||||||
|
"dev": true,
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/browserslist"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "tidelift",
|
||||||
|
"url": "https://tidelift.com/funding/github/npm/browserslist"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/ai"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"escalade": "^3.1.1",
|
||||||
|
"picocolors": "^1.0.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"update-browserslist-db": "cli.js"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"browserslist": ">= 4.21.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/uri-js": {
|
"node_modules/uri-js": {
|
||||||
"version": "4.4.1",
|
"version": "4.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||||
|
|
@ -4120,6 +4746,15 @@
|
||||||
"integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
|
"integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/yaml": {
|
||||||
|
"version": "2.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.2.tgz",
|
||||||
|
"integrity": "sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 14"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/yocto-queue": {
|
"node_modules/yocto-queue": {
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@
|
||||||
"format": "prettier --write src/"
|
"format": "prettier --write src/"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@vueuse/core": "^10.1.2",
|
||||||
"pinia": "^2.0.32",
|
"pinia": "^2.0.32",
|
||||||
"uuid": "^9.0.0",
|
"uuid": "^9.0.0",
|
||||||
"vite-plugin-css-injected-by-js": "^3.1.0",
|
"vite-plugin-css-injected-by-js": "^3.1.0",
|
||||||
|
|
@ -21,15 +22,19 @@
|
||||||
"vue-router": "^4.1.6"
|
"vue-router": "^4.1.6"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@rollup/plugin-json": "^6.0.0",
|
||||||
"@rushstack/eslint-patch": "^1.2.0",
|
"@rushstack/eslint-patch": "^1.2.0",
|
||||||
"@vitejs/plugin-vue": "^4.0.0",
|
"@vitejs/plugin-vue": "^4.0.0",
|
||||||
"@vue/eslint-config-prettier": "^7.1.0",
|
"@vue/eslint-config-prettier": "^7.1.0",
|
||||||
"@vue/test-utils": "^2.3.0",
|
"@vue/test-utils": "^2.3.0",
|
||||||
|
"autoprefixer": "^10.4.14",
|
||||||
"eslint": "^8.34.0",
|
"eslint": "^8.34.0",
|
||||||
"eslint-plugin-vue": "^9.9.0",
|
"eslint-plugin-vue": "^9.9.0",
|
||||||
"jsdom": "^21.1.0",
|
"jsdom": "^21.1.0",
|
||||||
|
"postcss": "^8.4.23",
|
||||||
"prettier": "^2.8.4",
|
"prettier": "^2.8.4",
|
||||||
"sass": "^1.62.0",
|
"sass": "^1.62.1",
|
||||||
|
"tailwindcss": "^3.3.2",
|
||||||
"vite": "^4.1.4",
|
"vite": "^4.1.4",
|
||||||
"vitest": "^0.29.1"
|
"vitest": "^0.29.1"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
export default {
|
||||||
|
plugins: {
|
||||||
|
tailwindcss: {},
|
||||||
|
autoprefixer: {},
|
||||||
|
},
|
||||||
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 162 KiB |
60
src/App.vue
60
src/App.vue
|
|
@ -1,14 +1,13 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import { NavigationModel, Nav } from '@/components';
|
import { NavigationModel } from "./components/Index.js";
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-containe">
|
||||||
<NavigationModel />
|
<NavigationModel />
|
||||||
<!-- <Nav /> -->
|
<div class="container px-3 mx-auto">
|
||||||
<div class="container pt-4 pb-4">
|
<router-view class="mt-4" />
|
||||||
<router-view />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -16,56 +15,9 @@ import { NavigationModel, Nav } from '@/components';
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
@import '/css/head.scss';
|
@import '/css/head.scss';
|
||||||
header {
|
.app-container
|
||||||
line-height: 1.5;
|
{
|
||||||
max-height: 100vh;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav {
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 12px;
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 2rem;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
nav a.router-link-exact-active {
|
|
||||||
color: var(--color-text);
|
|
||||||
}
|
|
||||||
|
|
||||||
nav a.router-link-exact-active:hover {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav a {
|
|
||||||
display: inline-block;
|
|
||||||
padding: 0 1rem;
|
|
||||||
border-left: 1px solid var(--color-border);
|
|
||||||
}
|
|
||||||
|
|
||||||
nav a:first-of-type {
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (min-width: 1024px) {
|
|
||||||
header {
|
|
||||||
display: flex;
|
|
||||||
place-items: top;
|
|
||||||
padding-right: calc(var(--section-gap));
|
|
||||||
}
|
|
||||||
|
|
||||||
header .wrapper {
|
|
||||||
display: flex;
|
|
||||||
place-items: flex-start;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav {
|
|
||||||
text-align: center;
|
|
||||||
margin-left: 2rem;
|
|
||||||
font-size: 1rem;
|
|
||||||
|
|
||||||
padding: 1rem 0;
|
|
||||||
margin-top: 1rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -1,65 +0,0 @@
|
||||||
/* color palette from <https://github.com/vuejs/theme> */
|
|
||||||
:root {
|
|
||||||
--vt-c-white: #ffffff;
|
|
||||||
--vt-c-white-soft: #f8f8f8;
|
|
||||||
--vt-c-white-mute: #f2f2f2;
|
|
||||||
--vt-c-black: #181818;
|
|
||||||
--vt-c-black-soft: #222222;
|
|
||||||
--vt-c-black-mute: #282828;
|
|
||||||
--vt-c-indigo: #2c3e50;
|
|
||||||
--vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
|
|
||||||
--vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
|
|
||||||
--vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
|
|
||||||
--vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
|
|
||||||
--vt-c-text-light-1: var(--vt-c-indigo);
|
|
||||||
--vt-c-text-light-2: rgba(60, 60, 60, 0.66);
|
|
||||||
--vt-c-text-dark-1: var(--vt-c-white);
|
|
||||||
--vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* semantic color variables for this project */
|
|
||||||
:root {
|
|
||||||
--color-background: var(--vt-c-white);
|
|
||||||
--color-background-soft: var(--vt-c-white-soft);
|
|
||||||
--color-background-mute: var(--vt-c-white-mute);
|
|
||||||
--color-border: var(--vt-c-divider-light-2);
|
|
||||||
--color-border-hover: var(--vt-c-divider-light-1);
|
|
||||||
--color-heading: var(--vt-c-text-light-1);
|
|
||||||
--color-text: var(--vt-c-text-light-1);
|
|
||||||
--section-gap: 160px;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (prefers-color-scheme: dark) {
|
|
||||||
:root {
|
|
||||||
--color-background: var(--vt-c-black);
|
|
||||||
--color-background-soft: var(--vt-c-black-soft);
|
|
||||||
--color-background-mute: var(--vt-c-black-mute);
|
|
||||||
--color-border: var(--vt-c-divider-dark-2);
|
|
||||||
--color-border-hover: var(--vt-c-divider-dark-1);
|
|
||||||
--color-heading: var(--vt-c-text-dark-1);
|
|
||||||
--color-text: var(--vt-c-text-dark-2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*,
|
|
||||||
*::before,
|
|
||||||
*::after {
|
|
||||||
box-sizing: border-box;
|
|
||||||
margin: 0;
|
|
||||||
position: relative;
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
min-height: 100vh;
|
|
||||||
color: var(--color-text);
|
|
||||||
background: var(--color-background);
|
|
||||||
transition: color 0.5s, background-color 0.5s;
|
|
||||||
line-height: 1.6;
|
|
||||||
font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
|
|
||||||
font-size: 15px;
|
|
||||||
text-rendering: optimizeLegibility;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
-moz-osx-font-smoothing: grayscale;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*# sourceMappingURL=head.css.map */
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"version":3,"sourceRoot":"","sources":["head.scss"],"names":[],"mappings":"AAAA;AACA;EACE;EACA;EACA;EAEA;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;;;AAGF;EACE;IACE;IACA;IACA;IAEA;IACA;IAEA;IACA;;;AAIJ;AAAA;AAAA;EAGE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA","file":"head.css"}
|
|
||||||
|
|
@ -1,74 +0,0 @@
|
||||||
/* color palette from <https://github.com/vuejs/theme> */
|
|
||||||
:root {
|
|
||||||
--vt-c-white: #ffffff;
|
|
||||||
--vt-c-white-soft: #f8f8f8;
|
|
||||||
--vt-c-white-mute: #f2f2f2;
|
|
||||||
|
|
||||||
--vt-c-black: #181818;
|
|
||||||
--vt-c-black-soft: #222222;
|
|
||||||
--vt-c-black-mute: #282828;
|
|
||||||
|
|
||||||
--vt-c-indigo: #2c3e50;
|
|
||||||
|
|
||||||
--vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
|
|
||||||
--vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
|
|
||||||
--vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
|
|
||||||
--vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
|
|
||||||
|
|
||||||
--vt-c-text-light-1: var(--vt-c-indigo);
|
|
||||||
--vt-c-text-light-2: rgba(60, 60, 60, 0.66);
|
|
||||||
--vt-c-text-dark-1: var(--vt-c-white);
|
|
||||||
--vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* semantic color variables for this project */
|
|
||||||
:root {
|
|
||||||
--color-background: var(--vt-c-white);
|
|
||||||
--color-background-soft: var(--vt-c-white-soft);
|
|
||||||
--color-background-mute: var(--vt-c-white-mute);
|
|
||||||
|
|
||||||
--color-border: var(--vt-c-divider-light-2);
|
|
||||||
--color-border-hover: var(--vt-c-divider-light-1);
|
|
||||||
|
|
||||||
--color-heading: var(--vt-c-text-light-1);
|
|
||||||
--color-text: var(--vt-c-text-light-1);
|
|
||||||
|
|
||||||
--section-gap: 160px;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (prefers-color-scheme: dark) {
|
|
||||||
:root {
|
|
||||||
--color-background: var(--vt-c-black);
|
|
||||||
--color-background-soft: var(--vt-c-black-soft);
|
|
||||||
--color-background-mute: var(--vt-c-black-mute);
|
|
||||||
|
|
||||||
--color-border: var(--vt-c-divider-dark-2);
|
|
||||||
--color-border-hover: var(--vt-c-divider-dark-1);
|
|
||||||
|
|
||||||
--color-heading: var(--vt-c-text-dark-1);
|
|
||||||
--color-text: var(--vt-c-text-dark-2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
*,
|
|
||||||
*::before,
|
|
||||||
*::after {
|
|
||||||
box-sizing: border-box;
|
|
||||||
margin: 0;
|
|
||||||
position: relative;
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
min-height: 100vh;
|
|
||||||
color: var(--color-text);
|
|
||||||
background: var(--color-background);
|
|
||||||
transition: color 0.5s, background-color 0.5s;
|
|
||||||
line-height: 1.6;
|
|
||||||
font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
|
|
||||||
Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
|
|
||||||
font-size: 15px;
|
|
||||||
text-rendering: optimizeLegibility;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
-moz-osx-font-smoothing: grayscale;
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
export {default as gymTrackerLogo} from './gymTrackerLogo.png';
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 273 KiB |
|
|
@ -1 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 261.76 226.69"><path d="M161.096.001l-30.225 52.351L100.647.001H-.005l130.877 226.688L261.749.001z" fill="#41b883"/><path d="M161.096.001l-30.225 52.351L100.647.001H52.346l78.526 136.01L209.398.001z" fill="#34495e"/></svg>
|
|
||||||
|
Before Width: | Height: | Size: 276 B |
|
|
@ -1,35 +0,0 @@
|
||||||
@import './base.css';
|
|
||||||
|
|
||||||
#app {
|
|
||||||
max-width: 1280px;
|
|
||||||
margin: 0 auto;
|
|
||||||
padding: 2rem;
|
|
||||||
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
a,
|
|
||||||
.green {
|
|
||||||
text-decoration: none;
|
|
||||||
color: hsla(160, 100%, 37%, 1);
|
|
||||||
transition: 0.4s;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (hover: hover) {
|
|
||||||
a:hover {
|
|
||||||
background-color: hsla(160, 100%, 37%, 0.2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (min-width: 1024px) {
|
|
||||||
body {
|
|
||||||
display: flex;
|
|
||||||
place-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
#app {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
padding: 0 2rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,35 +0,0 @@
|
||||||
@import './base.scss';
|
|
||||||
|
|
||||||
#app {
|
|
||||||
max-width: 1280px;
|
|
||||||
margin: 0 auto;
|
|
||||||
padding: 2rem;
|
|
||||||
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
a,
|
|
||||||
.green {
|
|
||||||
text-decoration: none;
|
|
||||||
color: hsla(160, 100%, 37%, 1);
|
|
||||||
transition: 0.4s;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (hover: hover) {
|
|
||||||
a:hover {
|
|
||||||
background-color: hsla(160, 100%, 37%, 0.2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (min-width: 1024px) {
|
|
||||||
body {
|
|
||||||
display: flex;
|
|
||||||
place-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
#app {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
padding: 0 2rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1,763 @@
|
||||||
|
{ "muscle": [
|
||||||
|
{
|
||||||
|
"name": "Legs",
|
||||||
|
"exercises":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"name": "Barbell Back Squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Barbell Front Squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Split squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Split Squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Barbell Lunge"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Bulgarien split Squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Reverse Lunge"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Bulgarien split squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Lunges"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Walking Lunges"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Reverse Lunge"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Goblet Squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Step Ups"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Hack Squat"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Leg Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Leg Extension"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Leg Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Romanin Deadlift"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Stiff leg Deadlift"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbell Romanin Deadlift"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbell Stiff leg Deadlift"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Decline Dumbbell leg curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Leg Ham Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Leg Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Single Leg Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Laying Leg Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Laying single leg leg Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Laying Leg Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Single Leg Romanian Deadlift"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Back Extension (Ham Focused)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Hip Thrusts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Hip Thusts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell leaning Forward Step up"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Single leg Hip thusts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Standing Cuff Kickback"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Pullthroughs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Standing Side raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Hip Abduction"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Kettkebelt Swings"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Glue hamm Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Back Extension (Glute Focused)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Single leg Hip Thusts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Plate Hip Thrusts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Single leg Plate Hip thusts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Hip Adduction"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Hip Dumbbell Gobleg Adductor Lunges"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Calf Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Single Leg Standing Dumbbell Calf Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Dumbbell Calf Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Dunbbell calrf Extensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Calf Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Staning Calf Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Donkey Calf Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Leg Press Calf Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Smith Maschine Donkey Calf Raises"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Back",
|
||||||
|
"exercises":[
|
||||||
|
{
|
||||||
|
"name":"Bentover Barbell Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing T Bar Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Chest Supported Barbell Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Landmine 1 Arm Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Tripod Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Pullover (Lats)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Chest Supported Dumbbell row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Lat Focused Dumbbell Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Rocking Pulldown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Close Grip Undergand Pulldown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Lap Pulldown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"One Arm High Calbe Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated One Arm High Cable row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Incline Cable Single Arm Stretch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Straight Arm Pushdown Bar"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Straight Arm Pusdown Rope"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Single Arm Straight Arm Pushdown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Lat Focused Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Lat Focused One Arm Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Kneeling one Arm Lat Focused Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Kneeling Lat Pullin"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Chest supported lat row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Pull ups"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Asissted Pull ups"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Lat Pulldown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Chin ups"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Asissted Pull ups"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Austrailan Pull ups"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Bentover Barbell row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Chest Supported Barbell Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Medow Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Chest Supported Dumbbell Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell One Arm Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Bentover Dumbbell Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Helms Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Row (Wide Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated chest supported Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Deadlift"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Sumo Deadlift"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dead Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Good Morning"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbell Good Morning"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbell Superman"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Back Extensions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Superman"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Good Morning"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Rack Pull"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Shrugs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Trap bar Shrugs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Trap Bar Carry"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Shrugs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Carry"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbell Seated Shrug"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Shrugs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Plate Shurugs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Plate Carry"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Wrap Around Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Rope Pull"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Prone Reverse Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable FacePull Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Prone Y Rise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Prone Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Plate Raise"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Chest",
|
||||||
|
"exercises":[
|
||||||
|
{
|
||||||
|
"name":"Incline Barbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Kneeling Landmine Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Flat Underhand Barbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Landmine Rainbow"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Paused Incline Barbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Incline Dumbbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Pullover (Chest)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"DB UCV Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Incline Dumbbell Squeeze Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Flat Underhand Dumbbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Paused Incline Dumbbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Sranding Low to High Cable Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Low to High Cable Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Incline Cable Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Low to High Crossover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Low to High Crossover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dual Cable UCV Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Decline Pushup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Slight Decline Bench Pess"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Close Grip Barbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Slight Delcline Dumbbell Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Paused Dumbbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbel Floor Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Cable Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Cable Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Cable Crossover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Calbe Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Cable Crossover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Staning Cable Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Calbe Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Cable Crossover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Pushup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Push away Pushup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Plate loaded Chest press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Assisted Chest press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Pec Dec (Chest)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Assisted Dip"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dip"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Decline Barbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Dips"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Decline Dumbbell Bench Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Decline Dumbbell Flys Supernated"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Decline Dumbbell Pullover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"High to low Cable flys"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"High to low Cable Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"High to low Crossover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Cable LC Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Kneeling X Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Decline Cable Dip"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Jack Hammer Pushdown"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Shoulders",
|
||||||
|
"exercises":[
|
||||||
|
{
|
||||||
|
"name":"Barbell Overhead Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Barbell Overhead Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Front raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Kneeling Landmine Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Smithmashine Shoulder Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbell Overhead Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Dumbell Overhead Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbell Arnold Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Arnold Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Front Raises (pronated Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Front Raises (Hammer Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Front Raises (Supernated Grip BEST)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Dumbell Press (Supernated Grip"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Staning Dumbell Press (Supernated Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbel Scoop Press"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Front Riase (Pronated Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Front Riase (Supernated Grip BEST)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Strch Front Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Plate Bus Drivers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Handstand Pushup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Pike Pushup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Dumbbell Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Dumbbell Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Cheat Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Lying Incline Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Incline Dumbbell Parsel Side Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Behind Body Lateral Raise "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Lean-Away Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Egyptian Lateral Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Cable Y Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Maschine Side Lateral Raises"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Barbell Rear Delt Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Chest Supported Barbell Rear Delt Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Behinde the Back Barbell Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Rear Delt Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Chest Supported Rear Delt Swing"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Chest Supported Rear Delt Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Reverse Flys"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbll Hip Hugger"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Abdduction Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Incline Behind the Back Dumbbell Raise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Incline Dumbbell Rear Delt Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Cable Rear Delt Row"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Rear Delt Cable Pull"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Double Arm Reverse Cabel Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Singke Arm Reverse Cable Fly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Face Pull"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Kneeling Face Pull"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Laying Face Pull"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Reverse Pec Deck"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Maschine Side Lateral Rear Delt Fly"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Biceps",
|
||||||
|
"exercises":[
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Concentration Curl (Pronated Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Crossbody Cable Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Concentration Curl (Hammer Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Reverse Grip Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Ez Bar Reverse Grip Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Reverse Grip"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Ez bar Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Standing Dumbbell Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Seated Cable Curl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"High Cable Curl"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Triceps",
|
||||||
|
"exercises":[
|
||||||
|
{
|
||||||
|
"name":"Rope Cable Pushdown (infront Body)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Straight Bart Cable Pushdown (underhand Grip)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dumbbell Overhead Extension"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Dip"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Rope Cable Pushdown (behind body)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Cable Straight Bar Pushdown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Barbell Dip"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Close Grip Pushup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name":"Close Grip Barbell Bench Press"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
<template>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
.btn {
|
||||||
|
background-color: white;
|
||||||
|
border: none;
|
||||||
|
border-radius: 1rem;
|
||||||
|
color: #000;
|
||||||
|
cursor: pointer;
|
||||||
|
font-size: 18px;
|
||||||
|
padding: 5px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn--primary {
|
||||||
|
background-color: #007bff;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,118 @@
|
||||||
|
<template>
|
||||||
|
<input class="search " type="text" v-model="input" placeholder="Search..." />
|
||||||
|
<div class="flex">
|
||||||
|
<div class="exerciseList">
|
||||||
|
<ul class="exerciseItem" v-for="exercise in filterExercises()" :key="exercise.name">
|
||||||
|
<Button @click="exerciseClick(exercise)" class="btn bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4" >{{ exercise.name }}</Button>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div v-show="isClicked" class="show">
|
||||||
|
<label> {{ exerciseName }}</label>
|
||||||
|
<WeightsInput/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
|
||||||
|
import { usePostStore } from '@/stores/store.js';
|
||||||
|
import { onMounted, ref } from 'vue';
|
||||||
|
import WeightsInput from "@/views/weight/WeightsInput.vue";
|
||||||
|
|
||||||
|
const muscle = defineProps({
|
||||||
|
muscle: String,
|
||||||
|
warmUpSets: Array,
|
||||||
|
workingSets: Array,
|
||||||
|
warmUpReps: Array,
|
||||||
|
workingReps: Array,
|
||||||
|
})
|
||||||
|
|
||||||
|
let isClicked = false
|
||||||
|
const json = usePostStore()
|
||||||
|
const exercises = ref([])
|
||||||
|
let exerciseName = ""
|
||||||
|
|
||||||
|
onMounted(async () => {
|
||||||
|
await json.fetchMuscleExercise()
|
||||||
|
switch (muscle.muscle) {
|
||||||
|
case "Legs":
|
||||||
|
exercises.value = json.postList.muscle[0].exercises
|
||||||
|
break;
|
||||||
|
case "Back":
|
||||||
|
exercises.value = json.postList.muscle[1].exercises
|
||||||
|
break;
|
||||||
|
case "Chest":
|
||||||
|
exercises.value = json.postList.muscle[2].exercises
|
||||||
|
break;
|
||||||
|
case "Shoulder":
|
||||||
|
exercises.value = json.postList.muscle[3].exercises
|
||||||
|
break;
|
||||||
|
case "Biceps":
|
||||||
|
exercises.value = json.postList.muscle[4].exercises
|
||||||
|
break;
|
||||||
|
case "Triceps":
|
||||||
|
exercises.value = json.postList.muscle[5].exercises
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
// filter exercises with help from https://blog.logrocket.com/create-search-bar-vue/ last accessed 05.05.2023
|
||||||
|
let input = ref('');
|
||||||
|
function filterExercises(){
|
||||||
|
return exercises.value.filter((exercise) => {
|
||||||
|
return exercise.name.toLowerCase().includes(input.value.toLowerCase());
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
const showWeightInput = (isClicked) => {
|
||||||
|
isClicked.value = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const exerciseClick = (exercise) => {
|
||||||
|
isClicked = true
|
||||||
|
exerciseName = exercise.name
|
||||||
|
console.log(isClicked)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
.exerciseList{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: 0.25rem;
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search{
|
||||||
|
width: auto;
|
||||||
|
height: 2rem;
|
||||||
|
border-radius: 1rem;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
padding: 1rem;
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.weights{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
gap: 0.25rem;
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
margin-left: 5rem;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.set{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: 0.25rem;
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
color: white;
|
||||||
|
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -1,2 +1,3 @@
|
||||||
export { default as NavigationModel } from './NavigationModel.vue';
|
export { default as NavigationModel } from './NavigationModel.vue';
|
||||||
export { default as Nav } from './Nav.vue';
|
export { default as ExerciseList } from './ExerciseList.vue';
|
||||||
|
export { default as Button } from './Button.vue';
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
<script setup>
|
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<template>
|
|
||||||
<nav v-show="true" class="navbar navbar-expand navbar-dark bg-dark">
|
|
||||||
<div class="navbar-nav">
|
|
||||||
<router-link to="/" class="nav-item nav-link">Home</router-link>
|
|
||||||
<router-link to="/users" class="nav-item nav-link">Users</router-link>
|
|
||||||
<button @click="authStore.logout()" class="btn btn-link nav-item nav-link">Logout</button>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
</template>
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
<script setup>
|
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<nav v-show="true" class="navbar navbar-expand navbar-dark bg-dark">
|
<nav v-show="true" class="navbar navbar-expand navbar-dark bg-dark">
|
||||||
|
<div class="logo">
|
||||||
|
<img src="../assets/logo.png" alt="logo"/>
|
||||||
|
</div>
|
||||||
<div class="navbar-nav">
|
<div class="navbar-nav">
|
||||||
<router-link to="/" class="nav-item nav-link">Home</router-link>
|
<router-link to="/" class="nav-item nav-link">Home</router-link>
|
||||||
<router-link to="/Muscles/Legs" class="nav-item nav-link">Legs</router-link>
|
<router-link to="/Muscles/Legs" class="nav-item nav-link">Legs</router-link>
|
||||||
|
|
@ -11,7 +10,44 @@
|
||||||
<router-link to="/Muscles/Chest" class="nav-item nav-link">Chest</router-link>
|
<router-link to="/Muscles/Chest" class="nav-item nav-link">Chest</router-link>
|
||||||
<router-link to="/Muscles/Shoulder" class="nav-item nav-link">Shoulder</router-link>
|
<router-link to="/Muscles/Shoulder" class="nav-item nav-link">Shoulder</router-link>
|
||||||
<router-link to="/Muscles/Triceps" class="nav-item nav-link">Triceps</router-link>
|
<router-link to="/Muscles/Triceps" class="nav-item nav-link">Triceps</router-link>
|
||||||
<router-link to="/Muscles/Bicepts" class="nav-item nav-link">Bicepts</router-link>
|
<router-link to="/Muscles/Biceps" class="nav-item nav-link">Biceps</router-link>
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
// styling for the navbar (with reference to https://css-tricks.com/snippets/css/a-guide-to-flexbox/#aa-flexbox-properties last accessed 05.05.2023)
|
||||||
|
.navbar{
|
||||||
|
display: flex;
|
||||||
|
width: 100%;
|
||||||
|
height: 4rem;
|
||||||
|
justify-content: start;
|
||||||
|
background: rgb(36, 165, 75);
|
||||||
|
}
|
||||||
|
.navbar-nav{
|
||||||
|
display: flex;
|
||||||
|
width: 100%;
|
||||||
|
justify-content: start;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.nav-item{
|
||||||
|
margin-left: 1rem;
|
||||||
|
margin-right: 1rem;
|
||||||
|
color: white;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.nav-item:hover{
|
||||||
|
color: orangered;
|
||||||
|
}
|
||||||
|
.logo{
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
.logo img {
|
||||||
|
width: 15%;
|
||||||
|
height: 100%;
|
||||||
|
margin-left: 0.5rem;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
import { describe, it, expect } from 'vitest'
|
|
||||||
|
|
||||||
import { mount } from '@vue/test-utils'
|
|
||||||
import HelloWorld from '../HelloWorld.vue'
|
|
||||||
|
|
||||||
describe('HelloWorld', () => {
|
|
||||||
it('renders properly', () => {
|
|
||||||
const wrapper = mount(HelloWorld, { props: { msg: 'Hello Vitest' } })
|
|
||||||
expect(wrapper.text()).toContain('Hello Vitest')
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
@ -63,4 +63,3 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
/*# sourceMappingURL=head.css.map */
|
/*# sourceMappingURL=head.css.map */
|
||||||
|
|
||||||
|
|
@ -49,17 +49,4 @@
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
body {
|
|
||||||
min-height: 100vh;
|
|
||||||
color: var(--color-text);
|
|
||||||
background: var(--color-background);
|
|
||||||
transition: color 0.5s, background-color 0.5s;
|
|
||||||
line-height: 1.6;
|
|
||||||
font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
|
|
||||||
font-size: 15px;
|
|
||||||
text-rendering: optimizeLegibility;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
-moz-osx-font-smoothing: grayscale;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*# sourceMappingURL=head.css.map */
|
/*# sourceMappingURL=head.css.map */
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
{"version":3,"sourceRoot":"","sources":["head.scss"],"names":[],"mappings":"AAAA;AACA;EACE;EACA;EACA;EAEA;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;;;AAGF;EACE;IACE;IACA;IACA;IAEA;IACA;IAEA;IACA;;;AAIJ;AAAA;AAAA;EAGE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA","file":"head.css"}
|
{"version":3,"sourceRoot":"","sources":["head.scss"],"names":[],"mappings":"AAAA;AACA;EACE;EACA;EACA;EAEA;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;;;AAGF;EACE;IACE;IACA;IACA;IAEA;IACA;IAEA;IACA;;;AAIJ;AAAA;AAAA;EAGE;EACA;EACA;EACA","file":"head.css"}
|
||||||
|
|
@ -58,17 +58,3 @@
|
||||||
position: relative;
|
position: relative;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
body {
|
|
||||||
min-height: 100vh;
|
|
||||||
color: var(--color-text);
|
|
||||||
background: var(--color-background);
|
|
||||||
transition: color 0.5s, background-color 0.5s;
|
|
||||||
line-height: 1.6;
|
|
||||||
font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
|
|
||||||
Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
|
|
||||||
font-size: 15px;
|
|
||||||
text-rendering: optimizeLegibility;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
-moz-osx-font-smoothing: grayscale;
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
@import 'base.scss';
|
||||||
|
@tailwind base;
|
||||||
|
@tailwind components;
|
||||||
|
@tailwind utilities;
|
||||||
|
|
@ -4,7 +4,7 @@ import { createPinia } from 'pinia'
|
||||||
import App from './App.vue'
|
import App from './App.vue'
|
||||||
import router from './router'
|
import router from './router'
|
||||||
|
|
||||||
import './assets/main.css'
|
import './css/main.scss'
|
||||||
|
|
||||||
const app = createApp(App)
|
const app = createApp(App)
|
||||||
app.use(createPinia())
|
app.use(createPinia())
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,13 @@
|
||||||
import { Legs, Back, Chest, Shoulder, Triceps, Biceps } from '@/views/muscles';
|
import {Back, Biceps, Chest, Legs, Shoulder, Triceps } from "../views/muscles/Index.js";
|
||||||
// import Tilebar from '@/views/layouts';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
path: '/muscles',
|
path: '/muscles',
|
||||||
// component: Tilebar,
|
|
||||||
children: [
|
children: [
|
||||||
{ path: 'legs', component: Legs },
|
{ path: 'legs', component: Legs },
|
||||||
{ path: 'back', component: Back },
|
{ path: 'back', component: Back },
|
||||||
{ path: 'chest', component: Chest },
|
{ path: 'chest', component: Chest },
|
||||||
{ path: 'shoulder', component: Shoulder },
|
{ path: 'shoulder', component: Shoulder },
|
||||||
{ path: 'triceps', component: Triceps },
|
{ path: 'triceps', component: Triceps },
|
||||||
{ path: 'bicepts', component: Biceps },
|
{ path: 'biceps', component: Biceps },
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { createRouter, createWebHistory } from 'vue-router'
|
import { createRouter, createWebHistory } from 'vue-router'
|
||||||
import HomeView from '../views/Home.vue'
|
import HomeView from '../views/Home.vue'
|
||||||
import MusclesRouter from './muscle.router.js';
|
import MusclesRouter from './muscle.js';
|
||||||
|
|
||||||
const router = createRouter({
|
const router = createRouter({
|
||||||
history: createWebHistory(import.meta.env.BASE_URL),
|
history: createWebHistory(import.meta.env.BASE_URL),
|
||||||
|
|
@ -11,54 +11,11 @@ const router = createRouter({
|
||||||
component: HomeView
|
component: HomeView
|
||||||
},
|
},
|
||||||
{... MusclesRouter},
|
{... MusclesRouter},
|
||||||
// {
|
{
|
||||||
// path: '/chest',
|
path: '/weightsinput',
|
||||||
// name: 'chest',
|
name: 'weightsinput',
|
||||||
// // route level code-splitting
|
component: () => import('../views/weight/WeightsInput.vue')
|
||||||
// // this generates a separate chunk (About.[hash].js) for this route
|
}
|
||||||
// // which is lazy-loaded when the route is visited.
|
|
||||||
// component: () => import('../views/Muscles/ChestView.vue')
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: '/shoulder',
|
|
||||||
// name: 'shoulder',
|
|
||||||
// // route level code-splitting
|
|
||||||
// // this generates a separate chunk (About.[hash].js) for this route
|
|
||||||
// // which is lazy-loaded when the route is visited.
|
|
||||||
// component: () => import('../views/Muscles/ShoulderView.vue')
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: '/legs',
|
|
||||||
// name: 'legs',
|
|
||||||
// // route level code-splitting
|
|
||||||
// // this generates a separate chunk (About.[hash].js) for this route
|
|
||||||
// // which is lazy-loaded when the route is visited.
|
|
||||||
// component: () => import('../views/Muscles/LegsView.vue')
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: '/back',
|
|
||||||
// name: 'back',
|
|
||||||
// // route level code-splitting
|
|
||||||
// // this generates a separate chunk (About.[hash].js) for this route
|
|
||||||
// // which is lazy-loaded when the route is visited.
|
|
||||||
// component: () => import('../views/Muscles/BackView.vue')
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: '/biceps',
|
|
||||||
// name: 'biceps',
|
|
||||||
// // route level code-splitting
|
|
||||||
// // this generates a separate chunk (About.[hash].js) for this route
|
|
||||||
// // which is lazy-loaded when the route is visited.
|
|
||||||
// component: () => import('../views/Muscles/BicepsView.vue')
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: '/triceps',
|
|
||||||
// name: 'triceps',
|
|
||||||
// // route level code-splitting
|
|
||||||
// // this generates a separate chunk (About.[hash].js) for this route
|
|
||||||
// // which is lazy-loaded when the route is visited.
|
|
||||||
// component: () => import('../views/Muscles/TricepsView.vue')
|
|
||||||
// },
|
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
import { ref, computed } from 'vue'
|
|
||||||
import { defineStore } from 'pinia'
|
|
||||||
|
|
||||||
export const useCounterStore = defineStore('counter', () => {
|
|
||||||
const count = ref(0)
|
|
||||||
const doubleCount = computed(() => count.value * 2)
|
|
||||||
function increment() {
|
|
||||||
count.value++
|
|
||||||
}
|
|
||||||
|
|
||||||
return { count, doubleCount, increment }
|
|
||||||
})
|
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
import {defineStore} from 'pinia'
|
||||||
|
import muscleExercise from '../assets/muscleExercise';
|
||||||
|
import { ref } from 'vue'
|
||||||
|
|
||||||
|
export const usePostStore = defineStore('json', () => {
|
||||||
|
const postList = ref([])
|
||||||
|
const error = ref([])
|
||||||
|
|
||||||
|
async function fetchMuscleExercise() {
|
||||||
|
postList.value = muscleExercise
|
||||||
|
error.value = []
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
postList,
|
||||||
|
error,
|
||||||
|
fetchMuscleExercise
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
export default usePostStore
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
import {defineStore} from 'pinia'
|
||||||
|
import {useStorage} from '@vueuse/core'
|
||||||
|
|
||||||
|
//see https://stephanlangeveld.medium.com/simple-local-storage-implementation-using-vue-3-vueuse-and-pinia-with-zero-extra-lines-of-code-cb9ed2cce42a
|
||||||
|
export const useWeightStore = defineStore({
|
||||||
|
id: 'weight',
|
||||||
|
state: () => ({
|
||||||
|
weight: [],
|
||||||
|
reps: []
|
||||||
|
}),
|
||||||
|
getters: {
|
||||||
|
getAllWeights() {
|
||||||
|
return this.weight.value
|
||||||
|
},
|
||||||
|
},
|
||||||
|
actions: {
|
||||||
|
addWeight(weight, reps) {
|
||||||
|
this.weight.push(weight);
|
||||||
|
this.reps.push(reps);
|
||||||
|
},
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
<template>
|
|
||||||
|
|
||||||
<div class="wrapper">
|
|
||||||
<nav>
|
|
||||||
<RouterLink to="/home">Home</RouterLink>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@media (min-width: 1024px) {
|
|
||||||
.about {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
@ -4,6 +4,6 @@
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<main>
|
<main>
|
||||||
<h1 HomeView h1/>
|
<h1>HomeView</h1>
|
||||||
</main>
|
</main>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
export {default as Tilebar} from './Tilebar.vue';
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="p-4">
|
|
||||||
<div class="container">
|
|
||||||
<router-view />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
|
|
@ -1,16 +1,15 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="back">
|
<div class="text-3xl font-bold underline text-blue-500">
|
||||||
<h1>Back</h1>
|
<h1>Back</h1>
|
||||||
|
<ExerciseList muscle="Back"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style>
|
<script setup>
|
||||||
@media (min-width: 1024px) {
|
import {ExerciseList} from "@/components/Index.js";
|
||||||
.about {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
@ -1,16 +1,15 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="biceps">
|
<div class="biceps">
|
||||||
<h1>Biceps</h1>
|
<h1>Biceps</h1>
|
||||||
|
<ExerciseList muscle="Biceps"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style>
|
<script setup>
|
||||||
@media (min-width: 1024px) {
|
import {ExerciseList} from "@/components/Index.js";
|
||||||
.about {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
@ -1,19 +1,19 @@
|
||||||
<script setup>
|
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="chest">
|
<div class="flex">
|
||||||
|
<div class="w-1/2">
|
||||||
<h1>Chest</h1>
|
<h1>Chest</h1>
|
||||||
|
<ExerciseList muscle="Chest"/>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<weightsInput/>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import {ExerciseList} from "@/components/Index.js";
|
||||||
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
@media (min-width: 1024px) {
|
|
||||||
.about {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|
@ -1,16 +1,15 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="legs">
|
<div class="legs">
|
||||||
<h1>Legs</h1>
|
<h1>Legs</h1>
|
||||||
|
<ExerciseList muscle="Legs"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style>
|
<script setup>
|
||||||
@media (min-width: 1024px) {
|
import {ExerciseList} from "@/components/Index.js";
|
||||||
.about {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
@ -1,16 +1,16 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="shoulder">
|
<div class="shoulder">
|
||||||
<h1>Shoulder</h1>
|
<h1>Shoulder</h1>
|
||||||
|
<ExerciseList muscle="Shoulder"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import {ExerciseList} from "@/components/Index.js";
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
@media (min-width: 1024px) {
|
|
||||||
.about {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|
@ -1,16 +1,15 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="triceps">
|
<div class="triceps">
|
||||||
<h1><button>Triceps</button></h1>
|
<h1>Triceps</h1>
|
||||||
|
<ExerciseList muscle="Triceps"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style>
|
<script setup>
|
||||||
@media (min-width: 1024px) {
|
import {ExerciseList} from "@/components/Index.js";
|
||||||
.about {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
export {default as weightsInput} from './WeightsInput.vue';
|
||||||
|
|
@ -0,0 +1,87 @@
|
||||||
|
<template>
|
||||||
|
//TODO make view resposive on button click add
|
||||||
|
<div class="w-2/3 mx-auto">
|
||||||
|
<div class="warmup-sets mt-12 w-2/3">
|
||||||
|
<label>Warm-Up Sets</label>
|
||||||
|
<button @click="warmUpAddSet()" class="add-btn bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded ml-5">Add</button>
|
||||||
|
<div v-for="warmupset in warmUpInput.warmUpSets" class="item" :key="warmupset">
|
||||||
|
{{ warmupset }}
|
||||||
|
<input name="warmupweight" class="mt-1 px-3 py-2 bg-black border shadow-sm border-slate-300 placeholder-slate-400 focus:outline-none focus:border-sky-500 focus:ring-sky-500 block rounded-md sm:text-sm focus:ring-1" placeholder="Weight in Kg" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="working-set mt-5">
|
||||||
|
<label>Working Sets</label>
|
||||||
|
<button @click="workingAddSet()" class="add-btn bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded ml-7">Add</button>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<div v-for="(workingset, index) in workingInput.workingSets" class="item flex justify-smart mt-3" :key="index">
|
||||||
|
{{ workingset }}
|
||||||
|
<div class="ml-3">
|
||||||
|
<input v-model="workingInput.workingSets" class="mt-1 px-3 py-2 bg-black border shadow-sm border-slate-300 placeholder-slate-400 focus:outline-none focus:border-sky-500 focus:ring-sky-500 block rounded-md sm:text-sm focus:ring-1" placeholder="Weight in Kg"/>
|
||||||
|
</div>
|
||||||
|
<label>Reps</label>
|
||||||
|
<div class="ml-3">
|
||||||
|
<input v-model="workingInput.workingReps" class="mt-1 px-3 py-2 bg-black border shadow-sm border-slate-300 placeholder-slate-400 focus:outline-none focus:border-sky-500 focus:ring-sky-500 block rounded-md sm:text-sm focus:ring-1" placeholder="Reps">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<button @click="addWeight()" class="add-btn bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded mt-5">Save</button>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { useWeightStore } from '@/stores/storeWeight';
|
||||||
|
|
||||||
|
let warmUpSetCount = 0;
|
||||||
|
let workingSetCount = 0;
|
||||||
|
|
||||||
|
const weight = useWeightStore();
|
||||||
|
|
||||||
|
let warmUpInput = {
|
||||||
|
warmUpSets: [],
|
||||||
|
warmUpReps: []
|
||||||
|
}
|
||||||
|
|
||||||
|
let workingInput = {
|
||||||
|
workingSets: [],
|
||||||
|
workingReps: []
|
||||||
|
}
|
||||||
|
|
||||||
|
const warmUpAddSet = () => {
|
||||||
|
const newWarmUpSet = {
|
||||||
|
id: warmUpSetCount++,
|
||||||
|
content: warmUpSetCount + ". Set"
|
||||||
|
};
|
||||||
|
warmUpInput.warmUpSets.push(newWarmUpSet.content);
|
||||||
|
console.log(warmUpInput.warmUpSets);
|
||||||
|
};
|
||||||
|
|
||||||
|
const workingAddSet = () => {
|
||||||
|
const newWorkingSet = {
|
||||||
|
id: workingSetCount++,
|
||||||
|
content: workingSetCount + ". Set"
|
||||||
|
};
|
||||||
|
workingInput.workingSets.push(newWorkingSet.content);
|
||||||
|
console.log(workingInput);
|
||||||
|
};
|
||||||
|
|
||||||
|
const addWeight = () => {
|
||||||
|
//TODO: Add warmup sets and reps to store
|
||||||
|
weight.addWeight(workingSetInput.value, workingRepsSets.value);
|
||||||
|
workingSetInput.value = "";
|
||||||
|
workingRepsSets.value = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log(addWeight);
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
||||||
|
export default weightsInput;
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
/** @type {import('tailwindcss').Config} */
|
||||||
|
export default {
|
||||||
|
content: [
|
||||||
|
"./index.html",
|
||||||
|
"./src/**/*.{vue,js,ts,jsx,tsx}",
|
||||||
|
],
|
||||||
|
theme: {
|
||||||
|
extend: {},
|
||||||
|
},
|
||||||
|
plugins: [],
|
||||||
|
}
|
||||||
|
|
||||||
Loading…
Reference in New Issue