Compare commits

...

19 Commits
1.0.0 ... 1.2.2

Author SHA1 Message Date
c8ceae5cf0 🚀Bumped version to v1.2.2
Some checks failed
ci/woodpecker/push/build Pipeline failed
ci/woodpecker/tag/release Pipeline was successful
2024-12-16 17:10:39 +01:00
1d7cd601ee feat(profile): add cursor pointer
Some checks failed
ci/woodpecker/push/build Pipeline failed
2024-12-16 17:10:27 +01:00
9ddb188ef6 🚀Bumped version to v1.2.1
All checks were successful
ci/woodpecker/push/build Pipeline was successful
ci/woodpecker/tag/release Pipeline was successful
2024-12-16 17:03:30 +01:00
4996b8c526 Merge branch 'dev' of https://git.odit.services/lfk/selfservice into dev 2024-12-16 17:03:06 +01:00
7d2a29c0d8 🚀Bumped version to v1.2.0
All checks were successful
ci/woodpecker/push/build Pipeline was successful
ci/woodpecker/tag/release Pipeline was successful
2024-12-16 16:56:10 +01:00
721892c315 refacor(documents): Switch to new document-server 2024-12-16 16:55:26 +01:00
d5641312ca feat(profile): updated tab alignment 2024-12-16 16:55:16 +01:00
c34a8a7fcc refactor(profile): replace styles with tailwindcss 2024-12-16 16:55:01 +01:00
55abb9ed22 feat(profile): show total distance 2024-12-16 16:54:06 +01:00
1d55445c1b 🚀Bumped version to v1.1.2
Some checks failed
ci/woodpecker/push/build Pipeline failed
ci/woodpecker/tag/release Pipeline was successful
2024-12-11 23:08:38 +01:00
762454a086 fix(profile): migrate to code128 2024-12-11 23:08:27 +01:00
25c2a170bc chore(deps): bump all 2024-12-11 22:45:30 +01:00
b21ad636ad refactor: drop postbuild step 2024-12-11 22:45:20 +01:00
4771bf1359 🚀Bumped version to v1.1.1
All checks were successful
ci/woodpecker/tag/release Pipeline was successful
ci/woodpecker/push/build Pipeline was successful
2024-12-11 22:43:36 +01:00
dbe707b062 fix(profile): passed id is a jwt 2024-12-11 22:43:02 +01:00
dee1b7a6ea 🚀Bumped version to v1.1.0
All checks were successful
ci/woodpecker/tag/release Pipeline was successful
ci/woodpecker/push/build Pipeline was successful
2024-12-02 16:50:31 +01:00
4bcbc67436 refactor: drop sub-directory routing 2024-12-02 16:48:15 +01:00
595735ad00 🚀Bumped version to v1.0.1
All checks were successful
ci/woodpecker/tag/release Pipeline was successful
ci/woodpecker/push/build Pipeline was successful
2024-12-02 15:53:04 +01:00
7fcb6a9fc3 fix(container): Add dockeringore 2024-12-02 15:51:25 +01:00
16 changed files with 594 additions and 299 deletions

187
.dockerignore Normal file
View File

@@ -0,0 +1,187 @@
# ---> Node
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
# Runtime data
pids
*.pid
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage
*.lcov
# nyc test coverage
.nyc_output
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# Snowpack dependency directory (https://snowpack.dev/)
web_modules/
# TypeScript cache
*.tsbuildinfo
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variables file
.env
.env.test
# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache
# Next.js build output
.next
out
# Nuxt.js build / generate output
.nuxt
dist
# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public
# vuepress build output
.vuepress/dist
# Serverless directories
.serverless/
# FuseBox cache
.fusebox/
# DynamoDB Local files
.dynamodb/
# TernJS port file
.tern-port
# Stores VSCode versions used for testing VSCode extensions
.vscode-test
# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
# ---> Windows
# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
# Dump file
*.stackdump
# Folder config file
[Dd]esktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp
# Windows shortcuts
*.lnk
# ---> macOS
# General
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
# ---> Vue
# gitignore template for Vue.js projects
#
# Recommended template: Node.gitignore
# TODO: where does this rule come from?
docs/_book
# TODO: where does this rule come from?
test/
/package-lock.json
/yarn.lock
/public/env.js

View File

@@ -2,7 +2,59 @@
All notable changes to this project will be documented in this file. Dates are displayed in UTC. All notable changes to this project will be documented in this file. Dates are displayed in UTC.
#### [1.0.0](https://git.odit.services/lfk/selfservice/compare/0.11.3...1.0.0) #### [1.2.2](https://git.odit.services/lfk/selfservice/compare/1.2.1...1.2.2)
- feat(profile): add cursor pointer [`1d7cd60`](https://git.odit.services/lfk/selfservice/commit/1d7cd601ee027dd7df0405079e208d03078210bb)
#### [1.2.1](https://git.odit.services/lfk/selfservice/compare/1.2.0...1.2.1)
> 16 December 2024
- feat(profile): show total distance [`55abb9e`](https://git.odit.services/lfk/selfservice/commit/55abb9ed22e4c66c05536897ba33b12915eea226)
- refactor(profile): replace styles with tailwindcss [`c34a8a7`](https://git.odit.services/lfk/selfservice/commit/c34a8a7fcc77a0fa27280365ebf2382fbffc1e61)
- 🚀Bumped version to v1.2.1 [`9ddb188`](https://git.odit.services/lfk/selfservice/commit/9ddb188ef659742018f00d786e030f80a0d9bbc5)
- feat(profile): updated tab alignment [`d564131`](https://git.odit.services/lfk/selfservice/commit/d5641312ca0b35a5c5ab9b7b19ed3a40971ac4fd)
#### [1.2.0](https://git.odit.services/lfk/selfservice/compare/1.1.2...1.2.0)
> 16 December 2024
- refacor(documents): Switch to new document-server [`721892c`](https://git.odit.services/lfk/selfservice/commit/721892c315de9c2c1158d0f728dc2ef387a5d8c2)
- 🚀Bumped version to v1.2.0 [`7d2a29c`](https://git.odit.services/lfk/selfservice/commit/7d2a29c0d834fbe783e59308af89bb8fb46a8015)
#### [1.1.2](https://git.odit.services/lfk/selfservice/compare/1.1.1...1.1.2)
> 11 December 2024
- chore(deps): bump all [`25c2a17`](https://git.odit.services/lfk/selfservice/commit/25c2a170bc9cde66498ae3d7f966201f2b28b679)
- 🚀Bumped version to v1.1.2 [`1d55445`](https://git.odit.services/lfk/selfservice/commit/1d55445c1b67ec2e1be73172d8e451f038451f59)
- refactor: drop postbuild step [`b21ad63`](https://git.odit.services/lfk/selfservice/commit/b21ad636ad69886878d5bd0f441f4187e4f22a5c)
- fix(profile): migrate to code128 [`762454a`](https://git.odit.services/lfk/selfservice/commit/762454a08674303881063337ddf86da564b191f1)
#### [1.1.1](https://git.odit.services/lfk/selfservice/compare/1.1.0...1.1.1)
> 11 December 2024
- 🚀Bumped version to v1.1.1 [`4771bf1`](https://git.odit.services/lfk/selfservice/commit/4771bf135986f90f344757083236539b9d590e83)
- fix(profile): passed id is a jwt [`dbe707b`](https://git.odit.services/lfk/selfservice/commit/dbe707b062ced048428b8c1f62a0ab047ab0051b)
#### [1.1.0](https://git.odit.services/lfk/selfservice/compare/1.0.1...1.1.0)
> 2 December 2024
- refactor: drop sub-directory routing [`4bcbc67`](https://git.odit.services/lfk/selfservice/commit/4bcbc67436e6c0b0905e3ef2613894854d659091)
- 🚀Bumped version to v1.1.0 [`dee1b7a`](https://git.odit.services/lfk/selfservice/commit/dee1b7a6eab11689bae8914e74bea7cb364475e2)
#### [1.0.1](https://git.odit.services/lfk/selfservice/compare/1.0.0...1.0.1)
> 2 December 2024
- fix(container): Add dockeringore [`7fcb6a9`](https://git.odit.services/lfk/selfservice/commit/7fcb6a9fc3f98772990790f6385200732f8bce7c)
- 🚀Bumped version to v1.0.1 [`595735a`](https://git.odit.services/lfk/selfservice/commit/595735ad003b849521e6e5f2b24da4880f768dff)
### [1.0.0](https://git.odit.services/lfk/selfservice/compare/0.11.3...1.0.0)
> 2 December 2024
- chore(deps): update all [`4a11fef`](https://git.odit.services/lfk/selfservice/commit/4a11fef0e0ad0940535fd1d6a1a57a829dc2b50d) - chore(deps): update all [`4a11fef`](https://git.odit.services/lfk/selfservice/commit/4a11fef0e0ad0940535fd1d6a1a57a829dc2b50d)
- chore: pnpm v9 [`b85c395`](https://git.odit.services/lfk/selfservice/commit/b85c3958c288293bb98df2326f73dfad1684e3cb) - chore: pnpm v9 [`b85c395`](https://git.odit.services/lfk/selfservice/commit/b85c3958c288293bb98df2326f73dfad1684e3cb)
@@ -15,6 +67,7 @@ All notable changes to this project will be documented in this file. Dates are d
- registration brand font + more translations [`afffde8`](https://git.odit.services/lfk/selfservice/commit/afffde8fa04df88d0a8bff05d0a28550414ce385) - registration brand font + more translations [`afffde8`](https://git.odit.services/lfk/selfservice/commit/afffde8fa04df88d0a8bff05d0a28550414ce385)
- feat: lfk font [`af9a168`](https://git.odit.services/lfk/selfservice/commit/af9a168f587768d8b1af8990729e743481ba687d) - feat: lfk font [`af9a168`](https://git.odit.services/lfk/selfservice/commit/af9a168f587768d8b1af8990729e743481ba687d)
- updated profile page [`4fcc38c`](https://git.odit.services/lfk/selfservice/commit/4fcc38c374553b22f92a734903df1b7a032348fa) - updated profile page [`4fcc38c`](https://git.odit.services/lfk/selfservice/commit/4fcc38c374553b22f92a734903df1b7a032348fa)
- 🚀Bumped version to v1.0.0 [`2285ea5`](https://git.odit.services/lfk/selfservice/commit/2285ea507069cf362baa950e7337aec72a37d4e3)
- i18n [`f296cbc`](https://git.odit.services/lfk/selfservice/commit/f296cbc1a0c9035db6546c85781be71b152264d7) - i18n [`f296cbc`](https://git.odit.services/lfk/selfservice/commit/f296cbc1a0c9035db6546c85781be71b152264d7)
- feat(Footer): ref lfk [`6376dcb`](https://git.odit.services/lfk/selfservice/commit/6376dcb5fe7e3b1e1e639e41bc1b682036d838a0) - feat(Footer): ref lfk [`6376dcb`](https://git.odit.services/lfk/selfservice/commit/6376dcb5fe7e3b1e1e639e41bc1b682036d838a0)
- feat(Home): improve ui [`75b61d9`](https://git.odit.services/lfk/selfservice/commit/75b61d991bd483aaf00871c12c9268fc6e21435b) - feat(Home): improve ui [`75b61d9`](https://git.odit.services/lfk/selfservice/commit/75b61d991bd483aaf00871c12c9268fc6e21435b)

View File

@@ -1,4 +1,4 @@
FROM node:23.3.0-alpine3.20 AS build FROM node:23.4.0-alpine3.20 AS build
# FROM registry.odit.services/hub/library/node:23.3.0-alpine3.20 AS build # FROM registry.odit.services/hub/library/node:23.3.0-alpine3.20 AS build
# ARG NPM_REGISTRY_URL=https://registry.npmjs.org # ARG NPM_REGISTRY_URL=https://registry.npmjs.org
WORKDIR /app WORKDIR /app
@@ -7,7 +7,6 @@ COPY . .
RUN npm i -g pnpm@9 RUN npm i -g pnpm@9
RUN pnpm i --frozen-lockfile RUN pnpm i --frozen-lockfile
RUN pnpm build RUN pnpm build
RUN pnpm postbuild
# final image # final image
FROM registry.odit.services/library/nginx-brotli:3.15 AS final FROM registry.odit.services/library/nginx-brotli:3.15 AS final

View File

@@ -7,7 +7,3 @@ runner selfservice portal
- set the required environment variables - set the required environment variables
- `documentserver_key`: url to the [document server](https://git.odit.services/lfk/document-server) instance - `documentserver_key`: url to the [document server](https://git.odit.services/lfk/document-server) instance
- `baseurl`: url to the main lfk instance - WITH TRAILING SLASH - `baseurl`: url to the main lfk instance - WITH TRAILING SLASH
- see [@lfk/deployment](https://git.odit.services/lfk/deployment) for a complete deployment guide
- `baseurl_selfservice`: location of the selfservice instance - WITH TRAILING SLASH
- e.g. path: `/selfservice/`
- e.g. url: `https://example.com/selfservice/`

View File

@@ -1,6 +0,0 @@
import { existsSync, writeFileSync, readFileSync } from "node:fs";
if (existsSync("./dist/index.html")) {
const content = readFileSync("./dist/index.html", { encoding: "utf8" });
const newcontent = content.replace(`"/env.js"`, `"./env.js"`);
writeFileSync("./dist/index.html", newcontent);
}

View File

@@ -1,15 +1,14 @@
{ {
"name": "@odit/lfk-selfservice", "name": "@odit/lfk-selfservice",
"version": "1.0.0", "version": "1.2.2",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
"build": "vite build", "build": "vite build",
"release": "release-it", "release": "release-it"
"postbuild": "node env_fix.js"
}, },
"dependencies": { "dependencies": {
"@fontsource/athiti": "^5.1.0", "@fontsource/athiti": "5.1.0",
"@tailwindcss/vite": "4.0.0-beta.4", "@tailwindcss/vite": "4.0.0-beta.4",
"bwip-js": "4.5.1", "bwip-js": "4.5.1",
"marked": "15.0.3", "marked": "15.0.3",
@@ -26,8 +25,8 @@
"@vitejs/plugin-vue": "5.2.1", "@vitejs/plugin-vue": "5.2.1",
"autoprefixer": "10.4.20", "autoprefixer": "10.4.20",
"release-it": "17.10.0", "release-it": "17.10.0",
"vite": "6.0.2", "vite": "6.0.3",
"vite-plugin-vue-devtools": "^7.6.7" "vite-plugin-vue-devtools": "7.6.8"
}, },
"release-it": { "release-it": {
"git": { "git": {

427
pnpm-lock.yaml generated
View File

@@ -9,11 +9,11 @@ importers:
.: .:
dependencies: dependencies:
'@fontsource/athiti': '@fontsource/athiti':
specifier: ^5.1.0 specifier: 5.1.0
version: 5.1.0 version: 5.1.0
'@tailwindcss/vite': '@tailwindcss/vite':
specifier: 4.0.0-beta.4 specifier: 4.0.0-beta.4
version: 4.0.0-beta.4(@babel/core@7.26.0)(postcss-load-config@4.0.2(postcss@8.4.49))(postcss@8.4.49)(svelte@5.3.1)(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)) version: 4.0.0-beta.4(@babel/core@7.26.0)(postcss-load-config@4.0.2(postcss@8.4.49))(postcss@8.4.49)(svelte@5.3.1)(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))
bwip-js: bwip-js:
specifier: 4.5.1 specifier: 4.5.1
version: 4.5.1 version: 4.5.1
@@ -47,7 +47,7 @@ importers:
devDependencies: devDependencies:
'@vitejs/plugin-vue': '@vitejs/plugin-vue':
specifier: 5.2.1 specifier: 5.2.1
version: 5.2.1(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13) version: 5.2.1(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13)
autoprefixer: autoprefixer:
specifier: 10.4.20 specifier: 10.4.20
version: 10.4.20(postcss@8.4.49) version: 10.4.20(postcss@8.4.49)
@@ -55,11 +55,11 @@ importers:
specifier: 17.10.0 specifier: 17.10.0
version: 17.10.0 version: 17.10.0
vite: vite:
specifier: 6.0.2 specifier: 6.0.3
version: 6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1) version: 6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)
vite-plugin-vue-devtools: vite-plugin-vue-devtools:
specifier: ^7.6.7 specifier: 7.6.8
version: 7.6.7(rollup@4.28.0)(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13) version: 7.6.8(rollup@4.28.1)(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13)
packages: packages:
@@ -74,16 +74,16 @@ packages:
resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
'@babel/compat-data@7.26.2': '@babel/compat-data@7.26.3':
resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==} resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
'@babel/core@7.26.0': '@babel/core@7.26.0':
resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
'@babel/generator@7.26.2': '@babel/generator@7.26.3':
resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==} resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
'@babel/helper-annotate-as-pure@7.25.9': '@babel/helper-annotate-as-pure@7.25.9':
@@ -153,6 +153,11 @@ packages:
engines: {node: '>=6.0.0'} engines: {node: '>=6.0.0'}
hasBin: true hasBin: true
'@babel/parser@7.26.3':
resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==}
engines: {node: '>=6.0.0'}
hasBin: true
'@babel/plugin-proposal-decorators@7.25.9': '@babel/plugin-proposal-decorators@7.25.9':
resolution: {integrity: sha512-smkNLL/O1ezy9Nhy4CNosc4Va+1wo5w4gzSZeLe6y6dM4mmHfYOCPolXQPHQxonZCF+ZyebxN9vqOolkYrSn5g==} resolution: {integrity: sha512-smkNLL/O1ezy9Nhy4CNosc4Va+1wo5w4gzSZeLe6y6dM4mmHfYOCPolXQPHQxonZCF+ZyebxN9vqOolkYrSn5g==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
@@ -188,8 +193,8 @@ packages:
peerDependencies: peerDependencies:
'@babel/core': ^7.0.0-0 '@babel/core': ^7.0.0-0
'@babel/plugin-transform-typescript@7.25.9': '@babel/plugin-transform-typescript@7.26.3':
resolution: {integrity: sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ==} resolution: {integrity: sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
peerDependencies: peerDependencies:
'@babel/core': ^7.0.0-0 '@babel/core': ^7.0.0-0
@@ -198,14 +203,18 @@ packages:
resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
'@babel/traverse@7.25.9': '@babel/traverse@7.26.4':
resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==} resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
'@babel/types@7.26.0': '@babel/types@7.26.0':
resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==} resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
'@babel/types@7.26.3':
resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==}
engines: {node: '>=6.9.0'}
'@esbuild/aix-ppc64@0.24.0': '@esbuild/aix-ppc64@0.24.0':
resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==} resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==}
engines: {node: '>=18'} engines: {node: '>=18'}
@@ -372,8 +381,8 @@ packages:
resolution: {integrity: sha512-bmsP4L2HqBF6i6uaMqJMcFBONVjKt+siGluRq4Ca4C0q7W2eMaVZr8iCgF9dKbcVXutftkC7D6z2SaSMmLiDyA==} resolution: {integrity: sha512-bmsP4L2HqBF6i6uaMqJMcFBONVjKt+siGluRq4Ca4C0q7W2eMaVZr8iCgF9dKbcVXutftkC7D6z2SaSMmLiDyA==}
engines: {node: '>= 16'} engines: {node: '>= 16'}
'@jridgewell/gen-mapping@0.3.5': '@jridgewell/gen-mapping@0.3.8':
resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==}
engines: {node: '>=6.0.0'} engines: {node: '>=6.0.0'}
'@jridgewell/resolve-uri@3.1.2': '@jridgewell/resolve-uri@3.1.2':
@@ -478,93 +487,98 @@ packages:
rollup: rollup:
optional: true optional: true
'@rollup/rollup-android-arm-eabi@4.28.0': '@rollup/rollup-android-arm-eabi@4.28.1':
resolution: {integrity: sha512-wLJuPLT6grGZsy34g4N1yRfYeouklTgPhH1gWXCYspenKYD0s3cR99ZevOGw5BexMNywkbV3UkjADisozBmpPQ==} resolution: {integrity: sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==}
cpu: [arm] cpu: [arm]
os: [android] os: [android]
'@rollup/rollup-android-arm64@4.28.0': '@rollup/rollup-android-arm64@4.28.1':
resolution: {integrity: sha512-eiNkznlo0dLmVG/6wf+Ifi/v78G4d4QxRhuUl+s8EWZpDewgk7PX3ZyECUXU0Zq/Ca+8nU8cQpNC4Xgn2gFNDA==} resolution: {integrity: sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==}
cpu: [arm64] cpu: [arm64]
os: [android] os: [android]
'@rollup/rollup-darwin-arm64@4.28.0': '@rollup/rollup-darwin-arm64@4.28.1':
resolution: {integrity: sha512-lmKx9yHsppblnLQZOGxdO66gT77bvdBtr/0P+TPOseowE7D9AJoBw8ZDULRasXRWf1Z86/gcOdpBrV6VDUY36Q==} resolution: {integrity: sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==}
cpu: [arm64] cpu: [arm64]
os: [darwin] os: [darwin]
'@rollup/rollup-darwin-x64@4.28.0': '@rollup/rollup-darwin-x64@4.28.1':
resolution: {integrity: sha512-8hxgfReVs7k9Js1uAIhS6zq3I+wKQETInnWQtgzt8JfGx51R1N6DRVy3F4o0lQwumbErRz52YqwjfvuwRxGv1w==} resolution: {integrity: sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==}
cpu: [x64] cpu: [x64]
os: [darwin] os: [darwin]
'@rollup/rollup-freebsd-arm64@4.28.0': '@rollup/rollup-freebsd-arm64@4.28.1':
resolution: {integrity: sha512-lA1zZB3bFx5oxu9fYud4+g1mt+lYXCoch0M0V/xhqLoGatbzVse0wlSQ1UYOWKpuSu3gyN4qEc0Dxf/DII1bhQ==} resolution: {integrity: sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==}
cpu: [arm64] cpu: [arm64]
os: [freebsd] os: [freebsd]
'@rollup/rollup-freebsd-x64@4.28.0': '@rollup/rollup-freebsd-x64@4.28.1':
resolution: {integrity: sha512-aI2plavbUDjCQB/sRbeUZWX9qp12GfYkYSJOrdYTL/C5D53bsE2/nBPuoiJKoWp5SN78v2Vr8ZPnB+/VbQ2pFA==} resolution: {integrity: sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==}
cpu: [x64] cpu: [x64]
os: [freebsd] os: [freebsd]
'@rollup/rollup-linux-arm-gnueabihf@4.28.0': '@rollup/rollup-linux-arm-gnueabihf@4.28.1':
resolution: {integrity: sha512-WXveUPKtfqtaNvpf0iOb0M6xC64GzUX/OowbqfiCSXTdi/jLlOmH0Ba94/OkiY2yTGTwteo4/dsHRfh5bDCZ+w==} resolution: {integrity: sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==}
cpu: [arm] cpu: [arm]
os: [linux] os: [linux]
'@rollup/rollup-linux-arm-musleabihf@4.28.0': '@rollup/rollup-linux-arm-musleabihf@4.28.1':
resolution: {integrity: sha512-yLc3O2NtOQR67lI79zsSc7lk31xjwcaocvdD1twL64PK1yNaIqCeWI9L5B4MFPAVGEVjH5k1oWSGuYX1Wutxpg==} resolution: {integrity: sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==}
cpu: [arm] cpu: [arm]
os: [linux] os: [linux]
'@rollup/rollup-linux-arm64-gnu@4.28.0': '@rollup/rollup-linux-arm64-gnu@4.28.1':
resolution: {integrity: sha512-+P9G9hjEpHucHRXqesY+3X9hD2wh0iNnJXX/QhS/J5vTdG6VhNYMxJ2rJkQOxRUd17u5mbMLHM7yWGZdAASfcg==} resolution: {integrity: sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
'@rollup/rollup-linux-arm64-musl@4.28.0': '@rollup/rollup-linux-arm64-musl@4.28.1':
resolution: {integrity: sha512-1xsm2rCKSTpKzi5/ypT5wfc+4bOGa/9yI/eaOLW0oMs7qpC542APWhl4A37AENGZ6St6GBMWhCCMM6tXgTIplw==} resolution: {integrity: sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
'@rollup/rollup-linux-powerpc64le-gnu@4.28.0': '@rollup/rollup-linux-loongarch64-gnu@4.28.1':
resolution: {integrity: sha512-zgWxMq8neVQeXL+ouSf6S7DoNeo6EPgi1eeqHXVKQxqPy1B2NvTbaOUWPn/7CfMKL7xvhV0/+fq/Z/J69g1WAQ==} resolution: {integrity: sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==}
cpu: [loong64]
os: [linux]
'@rollup/rollup-linux-powerpc64le-gnu@4.28.1':
resolution: {integrity: sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==}
cpu: [ppc64] cpu: [ppc64]
os: [linux] os: [linux]
'@rollup/rollup-linux-riscv64-gnu@4.28.0': '@rollup/rollup-linux-riscv64-gnu@4.28.1':
resolution: {integrity: sha512-VEdVYacLniRxbRJLNtzwGt5vwS0ycYshofI7cWAfj7Vg5asqj+pt+Q6x4n+AONSZW/kVm+5nklde0qs2EUwU2g==} resolution: {integrity: sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==}
cpu: [riscv64] cpu: [riscv64]
os: [linux] os: [linux]
'@rollup/rollup-linux-s390x-gnu@4.28.0': '@rollup/rollup-linux-s390x-gnu@4.28.1':
resolution: {integrity: sha512-LQlP5t2hcDJh8HV8RELD9/xlYtEzJkm/aWGsauvdO2ulfl3QYRjqrKW+mGAIWP5kdNCBheqqqYIGElSRCaXfpw==} resolution: {integrity: sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==}
cpu: [s390x] cpu: [s390x]
os: [linux] os: [linux]
'@rollup/rollup-linux-x64-gnu@4.28.0': '@rollup/rollup-linux-x64-gnu@4.28.1':
resolution: {integrity: sha512-Nl4KIzteVEKE9BdAvYoTkW19pa7LR/RBrT6F1dJCV/3pbjwDcaOq+edkP0LXuJ9kflW/xOK414X78r+K84+msw==} resolution: {integrity: sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
'@rollup/rollup-linux-x64-musl@4.28.0': '@rollup/rollup-linux-x64-musl@4.28.1':
resolution: {integrity: sha512-eKpJr4vBDOi4goT75MvW+0dXcNUqisK4jvibY9vDdlgLx+yekxSm55StsHbxUsRxSTt3JEQvlr3cGDkzcSP8bw==} resolution: {integrity: sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
'@rollup/rollup-win32-arm64-msvc@4.28.0': '@rollup/rollup-win32-arm64-msvc@4.28.1':
resolution: {integrity: sha512-Vi+WR62xWGsE/Oj+mD0FNAPY2MEox3cfyG0zLpotZdehPFXwz6lypkGs5y38Jd/NVSbOD02aVad6q6QYF7i8Bg==} resolution: {integrity: sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==}
cpu: [arm64] cpu: [arm64]
os: [win32] os: [win32]
'@rollup/rollup-win32-ia32-msvc@4.28.0': '@rollup/rollup-win32-ia32-msvc@4.28.1':
resolution: {integrity: sha512-kN/Vpip8emMLn/eOza+4JwqDZBL6MPNpkdaEsgUtW1NYN3DZvZqSQrbKzJcTL6hd8YNmFTn7XGWMwccOcJBL0A==} resolution: {integrity: sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==}
cpu: [ia32] cpu: [ia32]
os: [win32] os: [win32]
'@rollup/rollup-win32-x64-msvc@4.28.0': '@rollup/rollup-win32-x64-msvc@4.28.1':
resolution: {integrity: sha512-Bvno2/aZT6usSa7lRDL2+hMjVAGjuqaymF1ApZm31JXzniR/hvr14jpU+/z4X6Gt5BPlzosscyJZGUvguXIqeQ==} resolution: {integrity: sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==}
cpu: [x64] cpu: [x64]
os: [win32] os: [win32]
@@ -704,16 +718,16 @@ packages:
'@vue/devtools-api@6.6.4': '@vue/devtools-api@6.6.4':
resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
'@vue/devtools-core@7.6.7': '@vue/devtools-core@7.6.8':
resolution: {integrity: sha512-6fW8Q0H1NHDXdEcuV6dylT5U2Yxg3SdMnVCey99Y6S4R2PNgFL2vC+VU9U9rHIiaoEUkeza42S7FfHxV4VI3Jg==} resolution: {integrity: sha512-8X4roysTwzQ94o7IobjVcOd1aZF5iunikrMrHPI2uUdigZCi2kFTQc7ffYiFiTNaLElCpjOhCnM7bo7aK1yU7A==}
peerDependencies: peerDependencies:
vue: ^3.0.0 vue: ^3.0.0
'@vue/devtools-kit@7.6.7': '@vue/devtools-kit@7.6.8':
resolution: {integrity: sha512-V8/jrXY/swHgnblABG9U4QCbE60c6RuPasmv2d9FvVqc5d94t1vDiESuvRmdNJBdWz4/D3q6ffgyAfRVjwHYEw==} resolution: {integrity: sha512-JhJ8M3sPU+v0P2iZBF2DkdmR9L0dnT5RXJabJqX6o8KtFs3tebdvfoXV2Dm3BFuqeECuMJIfF1aCzSt+WQ4wrw==}
'@vue/devtools-shared@7.6.7': '@vue/devtools-shared@7.6.8':
resolution: {integrity: sha512-QggO6SviAsolrePAXZ/sA1dSicSPt4TueZibCvydfhNDieL1lAuyMTgQDGst7TEvMGb4vgYv2I+1sDkO4jWNnw==} resolution: {integrity: sha512-9MBPO5Z3X1nYGFqTJyohl6Gmf/J7UNN1oicHdyzBVZP4jnhZ4c20MgtaHDIzWmHDHCMYVS5bwKxT3jxh7gOOKA==}
'@vue/reactivity@3.5.13': '@vue/reactivity@3.5.13':
resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==} resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==}
@@ -946,6 +960,15 @@ packages:
supports-color: supports-color:
optional: true optional: true
debug@4.4.0:
resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==}
engines: {node: '>=6.0'}
peerDependencies:
supports-color: '*'
peerDependenciesMeta:
supports-color:
optional: true
deep-extend@0.6.0: deep-extend@0.6.0:
resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
engines: {node: '>=4.0.0'} engines: {node: '>=4.0.0'}
@@ -1056,8 +1079,8 @@ packages:
resolution: {integrity: sha512-CTNS0BcKBcoOsawKBlpcKNmK4Kjuyz5jVLhf+PUsHGMqiKMVTa4cN3U7r7bRY8KTpfOGpXMo27fdy0dYVg2pqA==} resolution: {integrity: sha512-CTNS0BcKBcoOsawKBlpcKNmK4Kjuyz5jVLhf+PUsHGMqiKMVTa4cN3U7r7bRY8KTpfOGpXMo27fdy0dYVg2pqA==}
engines: {node: '>=16.17'} engines: {node: '>=16.17'}
execa@9.5.1: execa@9.5.2:
resolution: {integrity: sha512-QY5PPtSonnGwhhHDNI7+3RvY285c7iuJFFB+lU+oEzMY/gEGJ808owqJsrr8Otd1E/x07po1LkUBmdAc5duPAg==} resolution: {integrity: sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q==}
engines: {node: ^18.19.0 || >=20.5.0} engines: {node: ^18.19.0 || >=20.5.0}
external-editor@3.1.0: external-editor@3.1.0:
@@ -1350,8 +1373,8 @@ packages:
jsbn@1.1.0: jsbn@1.1.0:
resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==}
jsesc@3.0.2: jsesc@3.1.0:
resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
engines: {node: '>=6'} engines: {node: '>=6'}
hasBin: true hasBin: true
@@ -1441,8 +1464,8 @@ packages:
resolution: {integrity: sha512-ePLRrbt3fgjXI5VFZOLbvkLD5ZRuxGKm+wJ3ujCqBtL3NanDHPo/5zicR5uEKAPiIjBYF99BM4K4okvMznjkVA==} resolution: {integrity: sha512-ePLRrbt3fgjXI5VFZOLbvkLD5ZRuxGKm+wJ3ujCqBtL3NanDHPo/5zicR5uEKAPiIjBYF99BM4K4okvMznjkVA==}
engines: {node: '>= 12.0.0'} engines: {node: '>= 12.0.0'}
lilconfig@3.1.2: lilconfig@3.1.3:
resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
engines: {node: '>=14'} engines: {node: '>=14'}
lines-and-columns@1.2.4: lines-and-columns@1.2.4:
@@ -1491,6 +1514,9 @@ packages:
magic-string@0.30.14: magic-string@0.30.14:
resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==} resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==}
magic-string@0.30.15:
resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==}
marked@15.0.3: marked@15.0.3:
resolution: {integrity: sha512-Ai0cepvl2NHnTcO9jYDtcOEtVBNVYR31XnEA3BndO7f5As1wzpcOceSUM8FDkNLJNIODcLpDTWay/qQhqbuMvg==} resolution: {integrity: sha512-Ai0cepvl2NHnTcO9jYDtcOEtVBNVYR31XnEA3BndO7f5As1wzpcOceSUM8FDkNLJNIODcLpDTWay/qQhqbuMvg==}
engines: {node: '>= 18'} engines: {node: '>= 18'}
@@ -1783,8 +1809,8 @@ packages:
rfdc@1.4.1: rfdc@1.4.1:
resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
rollup@4.28.0: rollup@4.28.1:
resolution: {integrity: sha512-G9GOrmgWHBma4YfCcX8PjH0qhXSdH8B4HDE2o4/jaxj93S4DPCIDoLcXz99eWMji4hB29UFCEd7B2gwGJDR9cQ==} resolution: {integrity: sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'} engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true hasBin: true
@@ -1914,8 +1940,8 @@ packages:
stubborn-fs@1.2.5: stubborn-fs@1.2.5:
resolution: {integrity: sha512-H2N9c26eXjzL/S/K+i/RHHcFanE74dptvvjM8iwzwbVcWY/zjBbgRqF3K0DY4+OD+uTTASTBvDoxPDaPN02D7g==} resolution: {integrity: sha512-H2N9c26eXjzL/S/K+i/RHHcFanE74dptvvjM8iwzwbVcWY/zjBbgRqF3K0DY4+OD+uTTASTBvDoxPDaPN02D7g==}
superjson@2.2.1: superjson@2.2.2:
resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==} resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==}
engines: {node: '>=16'} engines: {node: '>=16'}
supports-color@7.2.0: supports-color@7.2.0:
@@ -2048,18 +2074,18 @@ packages:
peerDependencies: peerDependencies:
vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
vite-plugin-inspect@0.8.8: vite-plugin-inspect@0.8.9:
resolution: {integrity: sha512-aZlBuXsWUPJFmMK92GIv6lH7LrwG2POu4KJ+aEdcqnu92OAf+rhBnfMDQvxIJPEB7hE2t5EyY/PMgf5aDLT8EA==} resolution: {integrity: sha512-22/8qn+LYonzibb1VeFZmISdVao5kC22jmEKm24vfFE8siEn47EpVcCLYMv6iKOYMJfjSvSJfueOwcFCkUnV3A==}
engines: {node: '>=14'} engines: {node: '>=14'}
peerDependencies: peerDependencies:
'@nuxt/kit': '*' '@nuxt/kit': '*'
vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.1
peerDependenciesMeta: peerDependenciesMeta:
'@nuxt/kit': '@nuxt/kit':
optional: true optional: true
vite-plugin-vue-devtools@7.6.7: vite-plugin-vue-devtools@7.6.8:
resolution: {integrity: sha512-H1ZyjtpWjP5mHA5R15sQeYgAARuh2Myg3TDFXWZK6QOQRy8s3XjTIt319DogVjU/x3rC3L/jJQjIasRU04mWXA==} resolution: {integrity: sha512-32aIps8C1Y7UEoqyWf+ES3J1OozsCYMIqTqd+I5qass+R0Tcf8SaA2bX1/rskAzkcKCteVoBjEENmqwTcMebbw==}
engines: {node: '>=v14.21.3'} engines: {node: '>=v14.21.3'}
peerDependencies: peerDependencies:
vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0 vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
@@ -2069,8 +2095,8 @@ packages:
peerDependencies: peerDependencies:
vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0 vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
vite@6.0.2: vite@6.0.3:
resolution: {integrity: sha512-XdQ+VsY2tJpBsKGs0wf3U/+azx8BBpYRHFAyKm5VeEZNOJZRB63q7Sc8Iup3k0TrN3KO6QgyzFf+opSbfY1y0g==} resolution: {integrity: sha512-Cmuo5P0ENTN6HxLSo6IHsjCLn/81Vgrp81oaiFFMRa8gGDj5xEjIcEpf2ZymZtZR8oU0P2JX5WuUp/rlXcHkAw==}
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
hasBin: true hasBin: true
peerDependencies: peerDependencies:
@@ -2197,7 +2223,7 @@ snapshots:
'@ampproject/remapping@2.3.0': '@ampproject/remapping@2.3.0':
dependencies: dependencies:
'@jridgewell/gen-mapping': 0.3.5 '@jridgewell/gen-mapping': 0.3.8
'@jridgewell/trace-mapping': 0.3.25 '@jridgewell/trace-mapping': 0.3.25
'@antfu/utils@0.7.10': {} '@antfu/utils@0.7.10': {}
@@ -2208,43 +2234,43 @@ snapshots:
js-tokens: 4.0.0 js-tokens: 4.0.0
picocolors: 1.1.1 picocolors: 1.1.1
'@babel/compat-data@7.26.2': {} '@babel/compat-data@7.26.3': {}
'@babel/core@7.26.0': '@babel/core@7.26.0':
dependencies: dependencies:
'@ampproject/remapping': 2.3.0 '@ampproject/remapping': 2.3.0
'@babel/code-frame': 7.26.2 '@babel/code-frame': 7.26.2
'@babel/generator': 7.26.2 '@babel/generator': 7.26.3
'@babel/helper-compilation-targets': 7.25.9 '@babel/helper-compilation-targets': 7.25.9
'@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0)
'@babel/helpers': 7.26.0 '@babel/helpers': 7.26.0
'@babel/parser': 7.26.2 '@babel/parser': 7.26.3
'@babel/template': 7.25.9 '@babel/template': 7.25.9
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
'@babel/types': 7.26.0 '@babel/types': 7.26.3
convert-source-map: 2.0.0 convert-source-map: 2.0.0
debug: 4.3.7 debug: 4.4.0
gensync: 1.0.0-beta.2 gensync: 1.0.0-beta.2
json5: 2.2.3 json5: 2.2.3
semver: 6.3.1 semver: 6.3.1
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@babel/generator@7.26.2': '@babel/generator@7.26.3':
dependencies: dependencies:
'@babel/parser': 7.26.2 '@babel/parser': 7.26.3
'@babel/types': 7.26.0 '@babel/types': 7.26.3
'@jridgewell/gen-mapping': 0.3.5 '@jridgewell/gen-mapping': 0.3.8
'@jridgewell/trace-mapping': 0.3.25 '@jridgewell/trace-mapping': 0.3.25
jsesc: 3.0.2 jsesc: 3.1.0
'@babel/helper-annotate-as-pure@7.25.9': '@babel/helper-annotate-as-pure@7.25.9':
dependencies: dependencies:
'@babel/types': 7.26.0 '@babel/types': 7.26.3
'@babel/helper-compilation-targets@7.25.9': '@babel/helper-compilation-targets@7.25.9':
dependencies: dependencies:
'@babel/compat-data': 7.26.2 '@babel/compat-data': 7.26.3
'@babel/helper-validator-option': 7.25.9 '@babel/helper-validator-option': 7.25.9
browserslist: 4.24.2 browserslist: 4.24.2
lru-cache: 5.1.1 lru-cache: 5.1.1
@@ -2258,22 +2284,22 @@ snapshots:
'@babel/helper-optimise-call-expression': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9
'@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0)
'@babel/helper-skip-transparent-expression-wrappers': 7.25.9 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
semver: 6.3.1 semver: 6.3.1
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@babel/helper-member-expression-to-functions@7.25.9': '@babel/helper-member-expression-to-functions@7.25.9':
dependencies: dependencies:
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
'@babel/types': 7.26.0 '@babel/types': 7.26.3
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@babel/helper-module-imports@7.25.9': '@babel/helper-module-imports@7.25.9':
dependencies: dependencies:
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
'@babel/types': 7.26.0 '@babel/types': 7.26.3
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@@ -2282,13 +2308,13 @@ snapshots:
'@babel/core': 7.26.0 '@babel/core': 7.26.0
'@babel/helper-module-imports': 7.25.9 '@babel/helper-module-imports': 7.25.9
'@babel/helper-validator-identifier': 7.25.9 '@babel/helper-validator-identifier': 7.25.9
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@babel/helper-optimise-call-expression@7.25.9': '@babel/helper-optimise-call-expression@7.25.9':
dependencies: dependencies:
'@babel/types': 7.26.0 '@babel/types': 7.26.3
'@babel/helper-plugin-utils@7.25.9': {} '@babel/helper-plugin-utils@7.25.9': {}
@@ -2297,14 +2323,14 @@ snapshots:
'@babel/core': 7.26.0 '@babel/core': 7.26.0
'@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-member-expression-to-functions': 7.25.9
'@babel/helper-optimise-call-expression': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
'@babel/helper-skip-transparent-expression-wrappers@7.25.9': '@babel/helper-skip-transparent-expression-wrappers@7.25.9':
dependencies: dependencies:
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
'@babel/types': 7.26.0 '@babel/types': 7.26.3
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@@ -2317,12 +2343,16 @@ snapshots:
'@babel/helpers@7.26.0': '@babel/helpers@7.26.0':
dependencies: dependencies:
'@babel/template': 7.25.9 '@babel/template': 7.25.9
'@babel/types': 7.26.0 '@babel/types': 7.26.3
'@babel/parser@7.26.2': '@babel/parser@7.26.2':
dependencies: dependencies:
'@babel/types': 7.26.0 '@babel/types': 7.26.0
'@babel/parser@7.26.3':
dependencies:
'@babel/types': 7.26.3
'@babel/plugin-proposal-decorators@7.25.9(@babel/core@7.26.0)': '@babel/plugin-proposal-decorators@7.25.9(@babel/core@7.26.0)':
dependencies: dependencies:
'@babel/core': 7.26.0 '@babel/core': 7.26.0
@@ -2357,7 +2387,7 @@ snapshots:
'@babel/core': 7.26.0 '@babel/core': 7.26.0
'@babel/helper-plugin-utils': 7.25.9 '@babel/helper-plugin-utils': 7.25.9
'@babel/plugin-transform-typescript@7.25.9(@babel/core@7.26.0)': '@babel/plugin-transform-typescript@7.26.3(@babel/core@7.26.0)':
dependencies: dependencies:
'@babel/core': 7.26.0 '@babel/core': 7.26.0
'@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-annotate-as-pure': 7.25.9
@@ -2371,17 +2401,17 @@ snapshots:
'@babel/template@7.25.9': '@babel/template@7.25.9':
dependencies: dependencies:
'@babel/code-frame': 7.26.2 '@babel/code-frame': 7.26.2
'@babel/parser': 7.26.2 '@babel/parser': 7.26.3
'@babel/types': 7.26.0 '@babel/types': 7.26.3
'@babel/traverse@7.25.9': '@babel/traverse@7.26.4':
dependencies: dependencies:
'@babel/code-frame': 7.26.2 '@babel/code-frame': 7.26.2
'@babel/generator': 7.26.2 '@babel/generator': 7.26.3
'@babel/parser': 7.26.2 '@babel/parser': 7.26.3
'@babel/template': 7.25.9 '@babel/template': 7.25.9
'@babel/types': 7.26.0 '@babel/types': 7.26.3
debug: 4.3.7 debug: 4.4.0
globals: 11.12.0 globals: 11.12.0
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@@ -2391,6 +2421,11 @@ snapshots:
'@babel/helper-string-parser': 7.25.9 '@babel/helper-string-parser': 7.25.9
'@babel/helper-validator-identifier': 7.25.9 '@babel/helper-validator-identifier': 7.25.9
'@babel/types@7.26.3':
dependencies:
'@babel/helper-string-parser': 7.25.9
'@babel/helper-validator-identifier': 7.25.9
'@esbuild/aix-ppc64@0.24.0': '@esbuild/aix-ppc64@0.24.0':
optional: true optional: true
@@ -2481,7 +2516,7 @@ snapshots:
'@intlify/shared@10.0.5': {} '@intlify/shared@10.0.5': {}
'@jridgewell/gen-mapping@0.3.5': '@jridgewell/gen-mapping@0.3.8':
dependencies: dependencies:
'@jridgewell/set-array': 1.2.1 '@jridgewell/set-array': 1.2.1
'@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/sourcemap-codec': 1.5.0
@@ -2587,66 +2622,69 @@ snapshots:
'@polka/url@1.0.0-next.28': {} '@polka/url@1.0.0-next.28': {}
'@rollup/pluginutils@5.1.3(rollup@4.28.0)': '@rollup/pluginutils@5.1.3(rollup@4.28.1)':
dependencies: dependencies:
'@types/estree': 1.0.6 '@types/estree': 1.0.6
estree-walker: 2.0.2 estree-walker: 2.0.2
picomatch: 4.0.2 picomatch: 4.0.2
optionalDependencies: optionalDependencies:
rollup: 4.28.0 rollup: 4.28.1
'@rollup/rollup-android-arm-eabi@4.28.0': '@rollup/rollup-android-arm-eabi@4.28.1':
optional: true optional: true
'@rollup/rollup-android-arm64@4.28.0': '@rollup/rollup-android-arm64@4.28.1':
optional: true optional: true
'@rollup/rollup-darwin-arm64@4.28.0': '@rollup/rollup-darwin-arm64@4.28.1':
optional: true optional: true
'@rollup/rollup-darwin-x64@4.28.0': '@rollup/rollup-darwin-x64@4.28.1':
optional: true optional: true
'@rollup/rollup-freebsd-arm64@4.28.0': '@rollup/rollup-freebsd-arm64@4.28.1':
optional: true optional: true
'@rollup/rollup-freebsd-x64@4.28.0': '@rollup/rollup-freebsd-x64@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-arm-gnueabihf@4.28.0': '@rollup/rollup-linux-arm-gnueabihf@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-arm-musleabihf@4.28.0': '@rollup/rollup-linux-arm-musleabihf@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-arm64-gnu@4.28.0': '@rollup/rollup-linux-arm64-gnu@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-arm64-musl@4.28.0': '@rollup/rollup-linux-arm64-musl@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-powerpc64le-gnu@4.28.0': '@rollup/rollup-linux-loongarch64-gnu@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-riscv64-gnu@4.28.0': '@rollup/rollup-linux-powerpc64le-gnu@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-s390x-gnu@4.28.0': '@rollup/rollup-linux-riscv64-gnu@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-x64-gnu@4.28.0': '@rollup/rollup-linux-s390x-gnu@4.28.1':
optional: true optional: true
'@rollup/rollup-linux-x64-musl@4.28.0': '@rollup/rollup-linux-x64-gnu@4.28.1':
optional: true optional: true
'@rollup/rollup-win32-arm64-msvc@4.28.0': '@rollup/rollup-linux-x64-musl@4.28.1':
optional: true optional: true
'@rollup/rollup-win32-ia32-msvc@4.28.0': '@rollup/rollup-win32-arm64-msvc@4.28.1':
optional: true optional: true
'@rollup/rollup-win32-x64-msvc@4.28.0': '@rollup/rollup-win32-ia32-msvc@4.28.1':
optional: true
'@rollup/rollup-win32-x64-msvc@4.28.1':
optional: true optional: true
'@sec-ant/readable-stream@0.4.1': {} '@sec-ant/readable-stream@0.4.1': {}
@@ -2708,14 +2746,14 @@ snapshots:
'@tailwindcss/oxide-win32-arm64-msvc': 4.0.0-beta.4 '@tailwindcss/oxide-win32-arm64-msvc': 4.0.0-beta.4
'@tailwindcss/oxide-win32-x64-msvc': 4.0.0-beta.4 '@tailwindcss/oxide-win32-x64-msvc': 4.0.0-beta.4
'@tailwindcss/vite@4.0.0-beta.4(@babel/core@7.26.0)(postcss-load-config@4.0.2(postcss@8.4.49))(postcss@8.4.49)(svelte@5.3.1)(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))': '@tailwindcss/vite@4.0.0-beta.4(@babel/core@7.26.0)(postcss-load-config@4.0.2(postcss@8.4.49))(postcss@8.4.49)(svelte@5.3.1)(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))':
dependencies: dependencies:
'@tailwindcss/node': 4.0.0-beta.4 '@tailwindcss/node': 4.0.0-beta.4
'@tailwindcss/oxide': 4.0.0-beta.4 '@tailwindcss/oxide': 4.0.0-beta.4
lightningcss: 1.28.2 lightningcss: 1.28.2
svelte-preprocess: 6.0.3(@babel/core@7.26.0)(postcss-load-config@4.0.2(postcss@8.4.49))(postcss@8.4.49)(svelte@5.3.1) svelte-preprocess: 6.0.3(@babel/core@7.26.0)(postcss-load-config@4.0.2(postcss@8.4.49))(postcss@8.4.49)(svelte@5.3.1)
tailwindcss: 4.0.0-beta.4 tailwindcss: 4.0.0-beta.4
vite: 6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1) vite: 6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)
transitivePeerDependencies: transitivePeerDependencies:
- '@babel/core' - '@babel/core'
- coffeescript - coffeescript
@@ -2736,9 +2774,9 @@ snapshots:
'@types/node@18.11.18': '@types/node@18.11.18':
optional: true optional: true
'@vitejs/plugin-vue@5.2.1(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13)': '@vitejs/plugin-vue@5.2.1(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13)':
dependencies: dependencies:
vite: 6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1) vite: 6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)
vue: 3.5.13 vue: 3.5.13
'@vue/babel-helper-vue-transform-on@1.2.5': {} '@vue/babel-helper-vue-transform-on@1.2.5': {}
@@ -2749,8 +2787,8 @@ snapshots:
'@babel/helper-plugin-utils': 7.25.9 '@babel/helper-plugin-utils': 7.25.9
'@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0)
'@babel/template': 7.25.9 '@babel/template': 7.25.9
'@babel/traverse': 7.25.9 '@babel/traverse': 7.26.4
'@babel/types': 7.26.0 '@babel/types': 7.26.3
'@vue/babel-helper-vue-transform-on': 1.2.5 '@vue/babel-helper-vue-transform-on': 1.2.5
'@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.26.0) '@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.26.0)
html-tags: 3.3.1 html-tags: 3.3.1
@@ -2766,7 +2804,7 @@ snapshots:
'@babel/core': 7.26.0 '@babel/core': 7.26.0
'@babel/helper-module-imports': 7.25.9 '@babel/helper-module-imports': 7.25.9
'@babel/helper-plugin-utils': 7.25.9 '@babel/helper-plugin-utils': 7.25.9
'@babel/parser': 7.26.2 '@babel/parser': 7.26.3
'@vue/compiler-sfc': 3.5.13 '@vue/compiler-sfc': 3.5.13
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@@ -2803,29 +2841,29 @@ snapshots:
'@vue/devtools-api@6.6.4': {} '@vue/devtools-api@6.6.4': {}
'@vue/devtools-core@7.6.7(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13)': '@vue/devtools-core@7.6.8(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13)':
dependencies: dependencies:
'@vue/devtools-kit': 7.6.7 '@vue/devtools-kit': 7.6.8
'@vue/devtools-shared': 7.6.7 '@vue/devtools-shared': 7.6.8
mitt: 3.0.1 mitt: 3.0.1
nanoid: 5.0.9 nanoid: 5.0.9
pathe: 1.1.2 pathe: 1.1.2
vite-hot-client: 0.2.4(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)) vite-hot-client: 0.2.4(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))
vue: 3.5.13 vue: 3.5.13
transitivePeerDependencies: transitivePeerDependencies:
- vite - vite
'@vue/devtools-kit@7.6.7': '@vue/devtools-kit@7.6.8':
dependencies: dependencies:
'@vue/devtools-shared': 7.6.7 '@vue/devtools-shared': 7.6.8
birpc: 0.2.19 birpc: 0.2.19
hookable: 5.5.3 hookable: 5.5.3
mitt: 3.0.1 mitt: 3.0.1
perfect-debounce: 1.0.0 perfect-debounce: 1.0.0
speakingurl: 14.0.1 speakingurl: 14.0.1
superjson: 2.2.1 superjson: 2.2.2
'@vue/devtools-shared@7.6.7': '@vue/devtools-shared@7.6.8':
dependencies: dependencies:
rfdc: 1.4.1 rfdc: 1.4.1
@@ -3046,6 +3084,10 @@ snapshots:
dependencies: dependencies:
ms: 2.1.3 ms: 2.1.3
debug@4.4.0:
dependencies:
ms: 2.1.3
deep-extend@0.6.0: {} deep-extend@0.6.0: {}
default-browser-id@5.0.0: {} default-browser-id@5.0.0: {}
@@ -3174,7 +3216,7 @@ snapshots:
signal-exit: 4.1.0 signal-exit: 4.1.0
strip-final-newline: 3.0.0 strip-final-newline: 3.0.0
execa@9.5.1: execa@9.5.2:
dependencies: dependencies:
'@sindresorhus/merge-streams': 4.0.0 '@sindresorhus/merge-streams': 4.0.0
cross-spawn: 7.0.6 cross-spawn: 7.0.6
@@ -3454,7 +3496,7 @@ snapshots:
jsbn@1.1.0: {} jsbn@1.1.0: {}
jsesc@3.0.2: {} jsesc@3.1.0: {}
json-parse-even-better-errors@2.3.1: {} json-parse-even-better-errors@2.3.1: {}
@@ -3519,7 +3561,7 @@ snapshots:
lightningcss-win32-arm64-msvc: 1.28.2 lightningcss-win32-arm64-msvc: 1.28.2
lightningcss-win32-x64-msvc: 1.28.2 lightningcss-win32-x64-msvc: 1.28.2
lilconfig@3.1.2: lilconfig@3.1.3:
optional: true optional: true
lines-and-columns@1.2.4: {} lines-and-columns@1.2.4: {}
@@ -3560,6 +3602,10 @@ snapshots:
dependencies: dependencies:
'@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/sourcemap-codec': 1.5.0
magic-string@0.30.15:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.0
marked@15.0.3: {} marked@15.0.3: {}
merge-stream@2.0.0: {} merge-stream@2.0.0: {}
@@ -3746,7 +3792,7 @@ snapshots:
postcss-load-config@4.0.2(postcss@8.4.49): postcss-load-config@4.0.2(postcss@8.4.49):
dependencies: dependencies:
lilconfig: 3.1.2 lilconfig: 3.1.3
yaml: 2.6.1 yaml: 2.6.1
optionalDependencies: optionalDependencies:
postcss: 8.4.49 postcss: 8.4.49
@@ -3870,28 +3916,29 @@ snapshots:
rfdc@1.4.1: {} rfdc@1.4.1: {}
rollup@4.28.0: rollup@4.28.1:
dependencies: dependencies:
'@types/estree': 1.0.6 '@types/estree': 1.0.6
optionalDependencies: optionalDependencies:
'@rollup/rollup-android-arm-eabi': 4.28.0 '@rollup/rollup-android-arm-eabi': 4.28.1
'@rollup/rollup-android-arm64': 4.28.0 '@rollup/rollup-android-arm64': 4.28.1
'@rollup/rollup-darwin-arm64': 4.28.0 '@rollup/rollup-darwin-arm64': 4.28.1
'@rollup/rollup-darwin-x64': 4.28.0 '@rollup/rollup-darwin-x64': 4.28.1
'@rollup/rollup-freebsd-arm64': 4.28.0 '@rollup/rollup-freebsd-arm64': 4.28.1
'@rollup/rollup-freebsd-x64': 4.28.0 '@rollup/rollup-freebsd-x64': 4.28.1
'@rollup/rollup-linux-arm-gnueabihf': 4.28.0 '@rollup/rollup-linux-arm-gnueabihf': 4.28.1
'@rollup/rollup-linux-arm-musleabihf': 4.28.0 '@rollup/rollup-linux-arm-musleabihf': 4.28.1
'@rollup/rollup-linux-arm64-gnu': 4.28.0 '@rollup/rollup-linux-arm64-gnu': 4.28.1
'@rollup/rollup-linux-arm64-musl': 4.28.0 '@rollup/rollup-linux-arm64-musl': 4.28.1
'@rollup/rollup-linux-powerpc64le-gnu': 4.28.0 '@rollup/rollup-linux-loongarch64-gnu': 4.28.1
'@rollup/rollup-linux-riscv64-gnu': 4.28.0 '@rollup/rollup-linux-powerpc64le-gnu': 4.28.1
'@rollup/rollup-linux-s390x-gnu': 4.28.0 '@rollup/rollup-linux-riscv64-gnu': 4.28.1
'@rollup/rollup-linux-x64-gnu': 4.28.0 '@rollup/rollup-linux-s390x-gnu': 4.28.1
'@rollup/rollup-linux-x64-musl': 4.28.0 '@rollup/rollup-linux-x64-gnu': 4.28.1
'@rollup/rollup-win32-arm64-msvc': 4.28.0 '@rollup/rollup-linux-x64-musl': 4.28.1
'@rollup/rollup-win32-ia32-msvc': 4.28.0 '@rollup/rollup-win32-arm64-msvc': 4.28.1
'@rollup/rollup-win32-x64-msvc': 4.28.0 '@rollup/rollup-win32-ia32-msvc': 4.28.1
'@rollup/rollup-win32-x64-msvc': 4.28.1
fsevents: 2.3.3 fsevents: 2.3.3
run-applescript@7.0.0: {} run-applescript@7.0.0: {}
@@ -3998,7 +4045,7 @@ snapshots:
stubborn-fs@1.2.5: {} stubborn-fs@1.2.5: {}
superjson@2.2.1: superjson@2.2.2:
dependencies: dependencies:
copy-anything: 3.0.5 copy-anything: 3.0.5
@@ -4029,7 +4076,7 @@ snapshots:
esrap: 1.2.3 esrap: 1.2.3
is-reference: 3.0.3 is-reference: 3.0.3
locate-character: 3.0.0 locate-character: 3.0.0
magic-string: 0.30.14 magic-string: 0.30.15
zimmerframe: 1.1.2 zimmerframe: 1.1.2
svg-tags@1.0.0: {} svg-tags@1.0.0: {}
@@ -4091,62 +4138,62 @@ snapshots:
validator@13.12.0: {} validator@13.12.0: {}
vite-hot-client@0.2.4(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)): vite-hot-client@0.2.4(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)):
dependencies: dependencies:
vite: 6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1) vite: 6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)
vite-plugin-inspect@0.8.8(rollup@4.28.0)(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)): vite-plugin-inspect@0.8.9(rollup@4.28.1)(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)):
dependencies: dependencies:
'@antfu/utils': 0.7.10 '@antfu/utils': 0.7.10
'@rollup/pluginutils': 5.1.3(rollup@4.28.0) '@rollup/pluginutils': 5.1.3(rollup@4.28.1)
debug: 4.3.7 debug: 4.4.0
error-stack-parser-es: 0.1.5 error-stack-parser-es: 0.1.5
fs-extra: 11.2.0 fs-extra: 11.2.0
open: 10.1.0 open: 10.1.0
perfect-debounce: 1.0.0 perfect-debounce: 1.0.0
picocolors: 1.1.1 picocolors: 1.1.1
sirv: 3.0.0 sirv: 3.0.0
vite: 6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1) vite: 6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)
transitivePeerDependencies: transitivePeerDependencies:
- rollup - rollup
- supports-color - supports-color
vite-plugin-vue-devtools@7.6.7(rollup@4.28.0)(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13): vite-plugin-vue-devtools@7.6.8(rollup@4.28.1)(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13):
dependencies: dependencies:
'@vue/devtools-core': 7.6.7(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13) '@vue/devtools-core': 7.6.8(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))(vue@3.5.13)
'@vue/devtools-kit': 7.6.7 '@vue/devtools-kit': 7.6.8
'@vue/devtools-shared': 7.6.7 '@vue/devtools-shared': 7.6.8
execa: 9.5.1 execa: 9.5.2
sirv: 3.0.0 sirv: 3.0.0
vite: 6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1) vite: 6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)
vite-plugin-inspect: 0.8.8(rollup@4.28.0)(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)) vite-plugin-inspect: 0.8.9(rollup@4.28.1)(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))
vite-plugin-vue-inspector: 5.3.1(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)) vite-plugin-vue-inspector: 5.3.1(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1))
transitivePeerDependencies: transitivePeerDependencies:
- '@nuxt/kit' - '@nuxt/kit'
- rollup - rollup
- supports-color - supports-color
- vue - vue
vite-plugin-vue-inspector@5.3.1(vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)): vite-plugin-vue-inspector@5.3.1(vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)):
dependencies: dependencies:
'@babel/core': 7.26.0 '@babel/core': 7.26.0
'@babel/plugin-proposal-decorators': 7.25.9(@babel/core@7.26.0) '@babel/plugin-proposal-decorators': 7.25.9(@babel/core@7.26.0)
'@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.0) '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.0)
'@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.0) '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.0)
'@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-typescript': 7.26.3(@babel/core@7.26.0)
'@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.0) '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.0)
'@vue/compiler-dom': 3.5.13 '@vue/compiler-dom': 3.5.13
kolorist: 1.8.0 kolorist: 1.8.0
magic-string: 0.30.14 magic-string: 0.30.15
vite: 6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1) vite: 6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1)
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
vite@6.0.2(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1): vite@6.0.3(@types/node@18.11.18)(jiti@2.4.1)(lightningcss@1.28.2)(yaml@2.6.1):
dependencies: dependencies:
esbuild: 0.24.0 esbuild: 0.24.0
postcss: 8.4.49 postcss: 8.4.49
rollup: 4.28.0 rollup: 4.28.1
optionalDependencies: optionalDependencies:
'@types/node': 18.11.18 '@types/node': 18.11.18
fsevents: 2.3.3 fsevents: 2.3.3

View File

@@ -3,14 +3,12 @@ const config = {
documentserver_key: '', documentserver_key: '',
// required, with trailing slash // required, with trailing slash
baseurl: '', baseurl: '',
// optional, will fallback to /selfservice/
baseurl_selfservice: '/selfservice/',
// full url (including fqdn) // full url (including fqdn)
baseurl_documentserver: 'http://localhost:4010/documents', baseurl_documentserver: 'http://localhost:3000',
// optional, will fallback to code128 // optional, will fallback to code128
code_format: 'ean13', code_format: 'ean13',
// optional, will fallback to baseurl_selfservice/imprint // optional, will fallback to /imprint
url_imprint: '', url_imprint: '',
// optional, will fallback to baseurl_selfservice/privacy // optional, will fallback to /privacy
url_privacy: '', url_privacy: '',
}; };

View File

@@ -1,29 +0,0 @@
<template>
<section class="container px-4 py-32 mx-auto">
<div class="w-full mx-auto lg:w-1/3">
<svg
xmlns="http://www.w3.org/2000/svg"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="h-20 feather feather-alert-triangle"
viewBox="0 0 24 24"
>
<path
d="M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0zM12 9v4M12 17h.01"
/>
</svg>
<p
class="mt-5 mb-3 text-xl font-bold text-black dark:text-gray-50 md:text-2xl"
>{{ $t('configuration_error') }}</p>
<p class="mb-3 text-base font-medium text-gray-700 dark:text-gray-400">
{{ $t('the_system_is_not_properly_configured_please_contact_the_system_administrator_for_help') }}
<br />
<br />
{{ $t('if_you_are_the_system_administrator_please_refer_to_the_official_product_documentation_readme_for_configuration_guidance') }}
</p>
</div>
</section>
</template>

View File

@@ -19,8 +19,8 @@
export default { export default {
data() { data() {
return { return {
imprint_url: config.url_imprint || config.baseurl_selfservice + "imprint" imprint_url: config.url_imprint || "/imprint"
, privacy_url: config.url_privacy || config.baseurl_selfservice + "privacy" , privacy_url: config.url_privacy || "/privacy"
} }
}, },
} }

View File

@@ -18,6 +18,7 @@
"error-loading-privacy-policy": "Fehler beim Laden der Datenschutzerklärung", "error-loading-privacy-policy": "Fehler beim Laden der Datenschutzerklärung",
"error_loading_imprint": "Fehler beim Laden des Impressums", "error_loading_imprint": "Fehler beim Laden des Impressums",
"error_requesting_the_login_link": "Fehler beim Anfordern des Login-Links...", "error_requesting_the_login_link": "Fehler beim Anfordern des Login-Links...",
"first_lap": "👏 erste Runde",
"i_accept": "Ich habe die ", "i_accept": "Ich habe die ",
"i_accept_end": "gelesen und akzeptiert.", "i_accept_end": "gelesen und akzeptiert.",
"if_you_are_the_system_administrator_please_refer_to_the_official_product_documentation_readme_for_configuration_guidance": "Wenn Sie der Systemadministrator sind, finden Sie Konfigurationsanweisungen in der offiziellen Produktdokumentation / README.", "if_you_are_the_system_administrator_please_refer_to_the_official_product_documentation_readme_for_configuration_guidance": "Wenn Sie der Systemadministrator sind, finden Sie Konfigurationsanweisungen in der offiziellen Produktdokumentation / README.",
@@ -63,6 +64,7 @@
"the_system_is_not_properly_configured_please_contact_the_system_administrator_for_help": "Das System ist nicht richtig konfiguriert. Bitte wenden Sie sich an den Systemadministrator, um Hilfe zu erhalten.", "the_system_is_not_properly_configured_please_contact_the_system_administrator_for_help": "Das System ist nicht richtig konfiguriert. Bitte wenden Sie sich an den Systemadministrator, um Hilfe zu erhalten.",
"this_is_not_a_valid_international_phone_number": "Dies ist keine gültige internationale Telefonnummer", "this_is_not_a_valid_international_phone_number": "Dies ist keine gültige internationale Telefonnummer",
"total": "Gesamt", "total": "Gesamt",
"total_distance": "Gesamt-Distanz",
"urkunde_generiert": "Urkunde generiert!", "urkunde_generiert": "Urkunde generiert!",
"urkunde_konnte_nicht_generiert_werden": "Urkunde konnte nicht generiert werden...", "urkunde_konnte_nicht_generiert_werden": "Urkunde konnte nicht generiert werden...",
"urkunde_wird_generiert": "Urkunde wird generiert...", "urkunde_wird_generiert": "Urkunde wird generiert...",

View File

@@ -18,6 +18,7 @@
"error-loading-privacy-policy": "Error loading Privacy Policy", "error-loading-privacy-policy": "Error loading Privacy Policy",
"error_loading_imprint": "Error loading Imprint", "error_loading_imprint": "Error loading Imprint",
"error_requesting_the_login_link": "Error requesting the login link...", "error_requesting_the_login_link": "Error requesting the login link...",
"first_lap": "👏 first lap",
"i_accept": "I have read and accepted the ", "i_accept": "I have read and accepted the ",
"i_accept_end": "", "i_accept_end": "",
"if_you_are_the_system_administrator_please_refer_to_the_official_product_documentation_readme_for_configuration_guidance": "If you are the system administrator, please refer to the official product documentation/ README for configuration guidance.", "if_you_are_the_system_administrator_please_refer_to_the_official_product_documentation_readme_for_configuration_guidance": "If you are the system administrator, please refer to the official product documentation/ README for configuration guidance.",
@@ -63,6 +64,7 @@
"the_system_is_not_properly_configured_please_contact_the_system_administrator_for_help": "The system is not properly configured. Please contact the system administrator for help.", "the_system_is_not_properly_configured_please_contact_the_system_administrator_for_help": "The system is not properly configured. Please contact the system administrator for help.",
"this_is_not_a_valid_international_phone_number": "This is not a valid international phone number", "this_is_not_a_valid_international_phone_number": "This is not a valid international phone number",
"total": "Total", "total": "Total",
"total_distance": "total distance",
"urkunde_generiert": "created certificate", "urkunde_generiert": "created certificate",
"urkunde_konnte_nicht_generiert_werden": "could not create your certificate...", "urkunde_konnte_nicht_generiert_werden": "could not create your certificate...",
"urkunde_wird_generiert": "creating certificate...", "urkunde_wird_generiert": "creating certificate...",

View File

@@ -1,24 +1,23 @@
// import EnvError from './components/EnvError.vue'; import Home from "./views/Home.vue";
import Home from './views/Home.vue'; import Imprint from "./views/Imprint.vue";
import Imprint from './views/Imprint.vue'; import Privacy from "./views/Privacy.vue";
import Privacy from './views/Privacy.vue'; import Register from "./views/Register.vue";
import Register from './views/Register.vue'; import Profile from "./views/Profile.vue";
import Profile from './views/Profile.vue'; import ProfileNone from "./views/ProfileNone.vue";
import ProfileNone from './views/ProfileNone.vue';
console.log(config); console.log(config);
/** @type {import('vue-router').RouterOptions['routes']} */ /** @type {import('vue-router').RouterOptions['routes']} */
export const routes = [ export const routes = [
{ path: config.baseurl_selfservice + '', component: Home }, { path: "/", component: Home },
{ path: config.baseurl_selfservice + 'imprint', component: Imprint }, { path: "/imprint", component: Imprint },
{ path: config.baseurl_selfservice + 'imprint/', component: Imprint }, { path: "/imprint/", component: Imprint },
{ path: config.baseurl_selfservice + 'privacy', component: Privacy }, { path: "/privacy", component: Privacy },
{ path: config.baseurl_selfservice + 'privacy/', component: Privacy }, { path: "/privacy/", component: Privacy },
{ path: config.baseurl_selfservice + 'register', component: Register }, { path: "/register", component: Register },
{ path: config.baseurl_selfservice + 'register/', component: Register }, { path: "/register/", component: Register },
{ path: config.baseurl_selfservice + 'register/:token', component: Register, props: true }, { path: "/register/:token", component: Register, props: true },
{ path: config.baseurl_selfservice + 'profile', component: Profile }, { path: "/profile", component: Profile },
{ path: config.baseurl_selfservice + 'profile/', component: ProfileNone }, { path: "/profile/", component: ProfileNone },
{ path: config.baseurl_selfservice + 'profile/:token', component: Profile, props: true } { path: "/profile/:token", component: Profile, props: true },
]; ];

View File

@@ -11,8 +11,8 @@
Selfservice Portal</h2> Selfservice Portal</h2>
<p class="px-0 mb-6 text-md lg:px-24 font-medium">{{ $t('main_page_text') }}</p> <p class="px-0 mb-6 text-md lg:px-24 font-medium">{{ $t('main_page_text') }}</p>
<a class="w-full block mx-auto md:w-3/4 px-6 py-3 border border-transparent text-base font-semibold rounded-md text-gray-900 bg-white shadow-sm hover:text-gray-600 focus:outline-none focus:text-gray-600 xl:text-lg xl:py-4" <a class="w-full block mx-auto md:w-3/4 px-6 py-3 border border-transparent text-base font-semibold rounded-md text-gray-900 bg-white shadow-sm hover:text-gray-600 focus:outline-none focus:text-gray-600 xl:text-lg xl:py-4"
href="/selfservice/register/">{{ $t('register_now') }}</a> href="/register/">{{ $t('register_now') }}</a>
<a href="/selfservice/profile/" <a href="/profile/"
class="md:mt-4 mt-2 w-full block mx-auto md:w-3/4 px-6 py-3 text-base font-semibold rounded-md bg-gray-800 shadow-sm hover:bg-gray-700 focus:outline-none focus:bg-gray-700 xl:text-lg xl:py-4 border border-gray-400">{{ class="md:mt-4 mt-2 w-full block mx-auto md:w-3/4 px-6 py-3 text-base font-semibold rounded-md bg-gray-800 shadow-sm hover:bg-gray-700 focus:outline-none focus:bg-gray-700 xl:text-lg xl:py-4 border border-gray-400">{{
$t('view_my_data') }}</a> $t('view_my_data') }}</a>
</div> </div>

View File

@@ -9,6 +9,7 @@
pr-0 pr-0
w-full w-full
md:w-auto md:text-left md:w-auto md:text-left
cursor-pointer
text-center text-black text-center text-black
dark:text-gray-200 dark:text-gray-200
"> ">
@@ -34,12 +35,13 @@
hover:bg-blue-600 hover:shadow-lg hover:bg-blue-600 hover:shadow-lg
w-full w-full
md:w-auto md:w-auto
cursor-pointer
mb-1 mb-1
md:mr-1 md:mr-1
" @click="get_registration"> " @click="get_registration">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
class="feather feather-download" style="display: inline; height: 1rem; vertical-align: sub"> class="inline h-4 align-sub">
<path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" />
<polyline points="7 10 12 15 17 10" /> <polyline points="7 10 12 15 17 10" />
<line x1="12" y1="15" x2="12" y2="3" /> <line x1="12" y1="15" x2="12" y2="3" />
@@ -58,12 +60,13 @@
hover:bg-blue-600 hover:shadow-lg hover:bg-blue-600 hover:shadow-lg
w-full w-full
md:w-auto md:w-auto
cursor-pointer
mb-1 mb-1
md:mr-1 md:mr-1
" @click="get_certificate"> " @click="get_certificate">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
class="feather feather-download" style="display: inline; height: 1rem; vertical-align: sub"> class="inline h-4 align-sub">
<path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" /> <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" />
<polyline points="7 10 12 15 17 10" /> <polyline points="7 10 12 15 17 10" />
<line x1="12" y1="15" x2="12" y2="3" /> <line x1="12" y1="15" x2="12" y2="3" />
@@ -82,13 +85,14 @@
hover:bg-red-700 hover:shadow-lg hover:bg-red-700 hover:shadow-lg
w-full w-full
md:w-auto md:w-auto
cursor-pointer
" @click="() => { " @click="() => {
state.delete_active = true; state.delete_active = true;
} }
"> ">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
class="feather feather-download" style="display: inline; height: 1rem; vertical-align: sub"> class="inline h-4 align-sub">
<path d="M0 0h24v24H0z" /> <path d="M0 0h24v24H0z" />
<path fill="currentColor" <path fill="currentColor"
d="M17 6h5v2h-2v13a1 1 0 01-1 1H5a1 1 0 01-1-1V8H2V6h5V3a1 1 0 011-1h8a1 1 0 011 1v3zm1 2H6v12h12V8zm-5 6l2 2-1 1-2-2-2 2-1-1 2-2-2-2 1-1 2 2 2-2 1 1-2 2zM9 4v2h6V4H9z" /> d="M17 6h5v2h-2v13a1 1 0 01-1 1H5a1 1 0 01-1-1V8H2V6h5V3a1 1 0 011-1h8a1 1 0 011 1v3zm1 2H6v12h12V8zm-5 6l2 2-1 1-2-2-2 2-1-1 2-2-2-2 1-1 2 2 2-2 1 1-2 2zM9 4v2h6V4H9z" />
@@ -109,6 +113,7 @@
md:mb-auto md:mb-auto
w-full w-full
md:w-auto md:w-auto
cursor-pointer
bg-blue-500 bg-blue-500
hover:bg-blue-600 hover:shadow-lg hover:bg-blue-600 hover:shadow-lg
" @click="() => { " @click="() => {
@@ -117,7 +122,7 @@
"> ">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
class="feather feather-download" style="display: inline; height: 1rem; vertical-align: sub"> class="inline h-4 align-sub">
<path fill="none" d="M0 0h24v24H0z" /> <path fill="none" d="M0 0h24v24H0z" />
<path fill="currentColor" d="M12 11l5-5 1 1-5 5 5 5-1 1-5-5-5 5-1-1 5-5-5-5 1-1z" /> <path fill="currentColor" d="M12 11l5-5 1 1-5 5 5 5-1 1-5-5-5 5-1-1 5-5-5-5 1-1z" />
</svg> </svg>
@@ -133,13 +138,14 @@
rounded-md rounded-md
w-full w-full
md:w-auto md:w-auto
cursor-pointer
bg-red-600 bg-red-600
hover:bg-red-700 hover:shadow-lg hover:bg-red-700 hover:shadow-lg
md:ml-1 md:ml-1
" @click="delete_me"> " @click="delete_me">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
class="feather feather-download" style="display: inline; height: 1rem; vertical-align: sub"> class="inline h-4 align-sub">
<path d="M0 0h24v24H0z" /> <path d="M0 0h24v24H0z" />
<path fill="currentColor" <path fill="currentColor"
d="M17 6h5v2h-2v13a1 1 0 01-1 1H5a1 1 0 01-1-1V8H2V6h5V3a1 1 0 011-1h8a1 1 0 011 1v3zm1 2H6v12h12V8zm-5 6l2 2-1 1-2-2-2 2-1-1 2-2-2-2 1-1 2 2 2-2 1 1-2 2zM9 4v2h6V4H9z" /> d="M17 6h5v2h-2v13a1 1 0 01-1 1H5a1 1 0 01-1-1V8H2V6h5V3a1 1 0 011-1h8a1 1 0 011 1v3zm1 2H6v12h12V8zm-5 6l2 2-1 1-2-2-2 2-1-1 2-2-2-2 1-1 2 2 2-2 1 1-2 2zM9 4v2h6V4H9z" />
@@ -153,7 +159,7 @@
<div class="flex flex-wrap"> <div class="flex flex-wrap">
<div class="w-full"> <div class="w-full">
<div class="flex flex-wrap flex-col w-full tabs"> <div class="flex flex-wrap flex-col w-full tabs">
<div class="flex lg:flex-wrap flex-row lg:space-x-2"> <div class="flex lg:flex-wrap flex-row lg:space-x-2 justify-center">
<div class="flex-none"> <div class="flex-none">
<button @click="() => { <button @click="() => {
state.activetab = 'profile'; state.activetab = 'profile';
@@ -161,7 +167,7 @@
" :class="{ " :class="{
'tab-active border-b-2 font-medium border-blue-500': 'tab-active border-b-2 font-medium border-blue-500':
state.activetab === 'profile', state.activetab === 'profile',
}" class="tab tab-underline py-4 px-6 block" type="button"> }" class="tab tab-underline cursor-pointer py-4 px-6 block" type="button">
{{ $t("profile") }} {{ $t("profile") }}
</button> </button>
</div> </div>
@@ -172,7 +178,7 @@
" :class="{ " :class="{
'tab-active border-b-2 font-medium border-blue-500': 'tab-active border-b-2 font-medium border-blue-500':
state.activetab === 'laptimes', state.activetab === 'laptimes',
}" class="tab tab-underline py-4 px-6 block" type="button"> }" class="tab tab-underline cursor-pointer py-4 px-6 block" type="button">
{{ $t("lap_times") }} {{ $t("lap_times") }}
</button> </button>
</div> </div>
@@ -183,7 +189,7 @@
" :class="{ " :class="{
'tab-active border-b-2 font-medium border-blue-500': 'tab-active border-b-2 font-medium border-blue-500':
state.activetab === 'sponsorings', state.activetab === 'sponsorings',
}" class="tab tab-underline py-4 px-6 block" type="button"> }" class="tab tab-underline cursor-pointer py-4 px-6 block" type="button">
{{ $t("sponsoring") }} {{ $t("sponsoring") }}
</button> </button>
</div> </div>
@@ -299,6 +305,11 @@
<div class="py-4 w-full"> <div class="py-4 w-full">
<section class="text-gray-400 dark:bg-gray-900 body-font"> <section class="text-gray-400 dark:bg-gray-900 body-font">
<div class="container mx-auto"> <div class="container mx-auto">
<p class="text-white mb-2">
{{ $t('total_distance') }}: {{ getReadableDistance(state.scans.reduce((accumulator, currentValue) =>
accumulator +
currentValue.distance, 0)) }}
</p>
<div class="lg:w-2/3 w-full mx-auto overflow-auto"> <div class="lg:w-2/3 w-full mx-auto overflow-auto">
<table v-if="state.scans.length > 0" class="table-auto w-full text-left whitespace-no-wrap"> <table v-if="state.scans.length > 0" class="table-auto w-full text-left whitespace-no-wrap">
<thead class=" <thead class="
@@ -332,9 +343,9 @@
<tbody class="text-gray-900 dark:text-gray-50"> <tbody class="text-gray-900 dark:text-gray-50">
<tr v-for="s in state.scans" :key="s.id"> <tr v-for="s in state.scans" :key="s.id">
<td class="px-4 py-3"> <td class="px-4 py-3">
<span v-text="s.distance"></span> <span v-text="s.distance_readable"></span>
</td> </td>
<td class="px-4 py-3" v-text="s.lapTime"></td> <td class="px-4 py-3" v-text="s.lapTime_readable"></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -456,12 +467,12 @@
</table> </table>
<div v-else class=" <div v-else class="
text-center text-center
font-bold font-medium
text-black text-black
dark:text-white dark:text-white
text-2xl text-xl
"> ">
<img src="../assets/empty_laps.svg" style="height: 25rem; margin: 0 auto" :alt="[ <img src="../assets/empty_laps.svg" class="h-56 mx-auto" :alt="[
[$t('no_sponsorings_for_you_were_recorded_yet')], [$t('no_sponsorings_for_you_were_recorded_yet')],
]" /> ]" />
{{ $t("no_sponsorings_for_you_were_recorded_yet") }} {{ $t("no_sponsorings_for_you_were_recorded_yet") }}
@@ -491,7 +502,7 @@ const { t } = useI18n()
function textToBase64Barcode(text) { function textToBase64Barcode(text) {
const canvas = document.createElement("canvas"); const canvas = document.createElement("canvas");
let codeconfig = { let codeconfig = {
bcid: config.code_format || "code39", bcid: config.code_format || "code128",
text: `${text}`, text: `${text}`,
scale: 3, scale: 3,
includetext: false, includetext: false,
@@ -527,7 +538,18 @@ const toast = useToast();
const props = defineProps({ const props = defineProps({
token: String, token: String,
}); });
const accesstoken = atob(props.token); const accesstoken = props.token;
function getReadableDistance(distance) {
const km = Math.floor(distance / 1000)
const m = Math.floor(distance % 1000)
console.log({ km, m });
if (km > 0) {
return `${km},${m} km`
}
return `${m} m`
}
axios axios
.get(`${config.baseurl}api/runners/me/${accesstoken}`) .get(`${config.baseurl}api/runners/me/${accesstoken}`)
.then(({ data }) => { .then(({ data }) => {
@@ -548,17 +570,19 @@ axios
axios axios
.get(`${config.baseurl}api/runners/me/${accesstoken}/scans`) .get(`${config.baseurl}api/runners/me/${accesstoken}/scans`)
.then(({ data }) => { .then(({ data }) => {
let counter = 0
data.map(function (s) { data.map(function (s) {
s.lapTime = if (counter === 0) {
Math.floor(s.lapTime / 60) + s.lapTime_readable = t('first_lap')
"min " + } else {
(Math.floor(s.lapTime % 60) + "").padStart(2, "0") + s.lapTime_readable =
"s"; Math.floor(s.lapTime / 60) +
s.distance = "min " +
Math.floor(s.distance / 1000) + (Math.floor(s.lapTime % 60) + "").padStart(2, "0") +
"km " + "s";
(Math.floor(s.distance % 1000) + "").padStart(3, "0") + }
"m"; s.distance_readable = getReadableDistance(s.distance);
counter++;
return s; return s;
}); });
data.filter((s) => s.valid === true); data.filter((s) => s.valid === true);
@@ -576,7 +600,7 @@ function delete_me() {
.then(() => { .then(() => {
toast.clear(); toast.clear();
toast(t('alle_daten_geloescht')); toast(t('alle_daten_geloescht'));
location.replace(`${config.baseurl_selfservice}`); location.replace(`/`);
}) })
.catch((error) => { .catch((error) => {
toast.clear(); toast.clear();
@@ -589,12 +613,36 @@ function get_certificate() {
(navigator.languages && navigator.languages[0]) || (navigator.languages && navigator.languages[0]) ||
"" ""
).substr(0, 2); ).substr(0, 2);
let url = `${config.baseurl_documentserver}certificates?locale=${browserlocale}&download=true&key=${config.documentserver_key}`; let url = `${config.baseurl_documentserver}/v1/pdfs/certificates?key=${config.documentserver_key}`;
let postdata = Object.assign({}, state.fullobject); let postdata = {
postdata.group = { locale: browserlocale,
name: postdata.group, runners: [
{
first_name: state.firstname,
middle_name: state.middlename,
last_name: state.lastname,
id: state.fullobject.id,
distance: state.fullobject.distance,
group: {
name: state.group,
id: state.fullobject.group.id || 0,
},
distance_donations: state.fullobject.distanceDonations.map((s) => {
return {
id: s.id || 0,
amount: s.amount,
amount_per_distance: s.amountPerDistance,
donor: {
id: s.donor.id || 0,
first_name: s.donor.firstname,
middle_name: s.donor.middlename,
last_name: s.donor.lastname,
},
};
}),
}
]
}; };
postdata = [postdata];
axios axios
.post(url, postdata, { .post(url, postdata, {
responseType: "blob", responseType: "blob",

View File

@@ -48,7 +48,7 @@
</div> </div>
</div> </div>
<div class="mt-2"> <div class="mt-2">
<a href="/selfservice/register/" <a href="/register/"
class="text-white block w-full text-center py-2 px-3 border-2 border-gray-300 rounded-md p-1 bg-blue-800 font-medium hover:border-gray-400 focus:outline-none focus:border-gray-400 sm:text-sm">{{ class="text-white block w-full text-center py-2 px-3 border-2 border-gray-300 rounded-md p-1 bg-blue-800 font-medium hover:border-gray-400 focus:outline-none focus:border-gray-400 sm:text-sm">{{
$t('register_now_small') }}</a> $t('register_now_small') }}</a>
</div> </div>