Update dependencies, add deployment workflow
All checks were successful
Deploy / build (push) Successful in 36s
All checks were successful
Deploy / build (push) Successful in 36s
This commit is contained in:
parent
8ed9e9382c
commit
f8dcf2315b
7 changed files with 1261 additions and 1513 deletions
45
.forgejo/workflows/deploy.yaml
Normal file
45
.forgejo/workflows/deploy.yaml
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
name: "Deploy"
|
||||||
|
on: ["push"]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: "docker"
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: "Checkout"
|
||||||
|
uses: "https://code.forgejo.org/actions/checkout@v4"
|
||||||
|
|
||||||
|
- name: "Setup pnpm"
|
||||||
|
uses: "https://github.com/pnpm/action-setup@v4"
|
||||||
|
with:
|
||||||
|
version: 10
|
||||||
|
|
||||||
|
- name: "Setup Node.js"
|
||||||
|
uses: "https://code.forgejo.org/actions/setup-node@v4"
|
||||||
|
with:
|
||||||
|
node-version-file: "package.json"
|
||||||
|
cache: "pnpm"
|
||||||
|
|
||||||
|
- name: "Install dependencies"
|
||||||
|
run: "pnpm install"
|
||||||
|
|
||||||
|
- name: "Build"
|
||||||
|
run: "pnpm build"
|
||||||
|
|
||||||
|
- name: "Upload"
|
||||||
|
id: "upload"
|
||||||
|
uses: "https://code.forgejo.org/forgejo/upload-artifact@v4"
|
||||||
|
with:
|
||||||
|
name: "site.zip"
|
||||||
|
if-no-files-found: "error"
|
||||||
|
path: |
|
||||||
|
./dist/**/*
|
||||||
|
!dist/.vite
|
||||||
|
|
||||||
|
- name: "Notify the web server"
|
||||||
|
run: >
|
||||||
|
curl https://teavail.deltaa.xyz/_sscdc/notify
|
||||||
|
--fail
|
||||||
|
-H "Content-Type: application/json"
|
||||||
|
-H "Authorization: Bearer ${{ secrets.SSCDC_SECRET }}"
|
||||||
|
-d '{ "id": "${{ github.sha }}", "download_url": "https://git.moritzruth.de/${{ github.repository }}/actions/runs/${{ github.run_number }}/artifacts/site.zip" }'
|
1
.nvmrc
1
.nvmrc
|
@ -1 +0,0 @@
|
||||||
20.11
|
|
8
README.md
Normal file
8
README.md
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# Teavail web frontend
|
||||||
|
|
||||||
|
> Web application for viewing Teavail statistics and managing settings
|
||||||
|
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
- `chart.js` is pinned to `v4.4.1` until `vue-chartjs` is updated.
|
58
package.json
58
package.json
|
@ -9,36 +9,46 @@
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/lodash-es": "^4.17.12",
|
"@types/lodash-es": "^4.17.12",
|
||||||
"@types/node": "^20.12.12",
|
"@types/node": "^22.13.8",
|
||||||
"@vitejs/plugin-vue": "^5.0.4",
|
"@vitejs/plugin-vue": "^5.2.1",
|
||||||
"browserslist": "^4.23.0",
|
"browserslist": "^4.24.4",
|
||||||
"modern-normalize": "^2.0.0",
|
"modern-normalize": "^3.0.1",
|
||||||
"sass": "^1.77.2",
|
"sass": "^1.85.1",
|
||||||
"type-fest": "^4.18.2",
|
"type-fest": "^4.36.0",
|
||||||
"typescript": "^5.4.5",
|
"typescript": "^5.8.2",
|
||||||
"unocss": "^0.60.2",
|
"unocss": "^66.0.0",
|
||||||
"unplugin-icons": "^0.19.0",
|
"unplugin-icons": "^22.1.0",
|
||||||
"unplugin-vue-router": "^0.8.6",
|
"unplugin-vue-router": "^0.11.2",
|
||||||
"vite": "^5.2.11",
|
"vite": "^6.2.0",
|
||||||
"windicss": "^3.5.6"
|
"windicss": "^3.5.6"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@fontsource-variable/fraunces": "^5.0.21",
|
"@fontsource-variable/fraunces": "^5.2.5",
|
||||||
"@fontsource-variable/manrope": "^5.0.20",
|
"@fontsource-variable/manrope": "^5.2.5",
|
||||||
"@iconify-json/solar": "^1.1.9",
|
"@iconify-json/solar": "^1.2.2",
|
||||||
"@iconify-json/svg-spinners": "^1.1.2",
|
"@iconify-json/svg-spinners": "^1.2.2",
|
||||||
"@unhead/vue": "^1.9.10",
|
"@unhead/vue": "^1.11.20",
|
||||||
"@vueuse/core": "^10.9.0",
|
"@vueuse/core": "^10.11.1",
|
||||||
"chart.js": "^4.4.3",
|
"chart.js": "4.4.1",
|
||||||
"chartjs-adapter-date-fns": "^3.0.0",
|
"chartjs-adapter-date-fns": "^3.0.0",
|
||||||
"color-alpha": "^2.0.0",
|
"color-alpha": "^2.0.0",
|
||||||
"date-fns": "^3.6.0",
|
"date-fns": "^3.6.0",
|
||||||
"ky": "^1.3.0",
|
"ky": "^1.7.5",
|
||||||
"lodash-es": "^4.17.21",
|
"lodash-es": "^4.17.21",
|
||||||
"nanoid": "^5.0.7",
|
"nanoid": "^5.1.2",
|
||||||
"temporal-polyfill": "^0.2.4",
|
"temporal-polyfill": "^0.2.5",
|
||||||
"vue": "^3.4.27",
|
"vue": "^3.5.13",
|
||||||
"vue-chartjs": "^5.3.1",
|
"vue-chartjs": "^5.3.2",
|
||||||
"vue-router": "^4.3.2"
|
"vue-router": "^4.5.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "22"
|
||||||
|
},
|
||||||
|
"pnpm": {
|
||||||
|
"onlyBuiltDependencies": [
|
||||||
|
"@parcel/watcher",
|
||||||
|
"esbuild",
|
||||||
|
"vue-demi"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
2647
pnpm-lock.yaml
generated
2647
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load diff
|
@ -93,9 +93,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(props.brewingEvents)
|
|
||||||
console.log(props.brewingEvents.filter(e => e.typeOfTeaId === "9").map(e => e.timestamp.toJSON()))
|
|
||||||
|
|
||||||
const chartData = computed<ChartData<"line">>(() => ({
|
const chartData = computed<ChartData<"line">>(() => ({
|
||||||
datasets: [
|
datasets: [
|
||||||
{
|
{
|
||||||
|
|
10
src/main.ts
10
src/main.ts
|
@ -2,13 +2,15 @@ import "uno.css"
|
||||||
|
|
||||||
import { createApp } from "vue"
|
import { createApp } from "vue"
|
||||||
import App from "./App.vue"
|
import App from "./App.vue"
|
||||||
import { createRouter, createWebHistory } from "vue-router/auto"
|
import { createRouter, createWebHistory } from "vue-router"
|
||||||
|
import { routes, handleHotUpdate } from "vue-router/auto-routes"
|
||||||
import { createHead } from "@unhead/vue"
|
import { createHead } from "@unhead/vue"
|
||||||
|
|
||||||
const app = createApp(App)
|
const app = createApp(App)
|
||||||
|
|
||||||
const router = createRouter({
|
const router = createRouter({
|
||||||
history: createWebHistory()
|
history: createWebHistory(),
|
||||||
|
routes
|
||||||
})
|
})
|
||||||
|
|
||||||
const head = createHead()
|
const head = createHead()
|
||||||
|
@ -17,3 +19,7 @@ app
|
||||||
.use(router)
|
.use(router)
|
||||||
.use(head)
|
.use(head)
|
||||||
.mount("#app")
|
.mount("#app")
|
||||||
|
|
||||||
|
if (import.meta.hot) {
|
||||||
|
handleHotUpdate(router)
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue