feat (auth): implement global authentication middleware

This commit is contained in:
Abizrh
2025-08-10 16:47:07 +07:00
parent 0515f8628f
commit 66db96b9b6
11 changed files with 80 additions and 36 deletions

No files matched your search

+20 -13
View File
@@ -29,9 +29,12 @@ dependencies:
h3:
specifier: ^1.15.4
version: 1.15.4
pinia:
specifier: ^3.0.3
version: 3.0.3([email protected])([email protected])
pinia-plugin-persistedstate:
specifier: ^4.4.1
version: 4.4.1(@pinia/[email protected])
version: 4.4.1(@pinia/[email protected])([email protected])
reka-ui:
specifier: ^2.4.1
version: 2.4.1([email protected])([email protected])
@@ -4323,7 +4326,6 @@ packages:
resolution: {integrity: sha512-lwOnNBH2e7x1fIIbVT7yF5D+YWhqELm55/4ZKf45R9T8r9dE2AIOy8HKjfqzGsoTHFbWbr337O4E0A0QADnjBg==}
dependencies:
'@vue/devtools-kit': 7.7.7
dev: true
/@vue/[email protected]([email protected])([email protected]):
resolution: {integrity: sha512-9z9TLbfC+AjAi1PQyWX+OErjIaJmdFlbDHcD+cAMYKY6Bh5VlsAtCeGyRMrXwIlMEQPukvnWt3gZBLwTAIMKzQ==}
@@ -4351,13 +4353,11 @@ packages:
perfect-debounce: 1.0.0
speakingurl: 14.0.1
superjson: 2.2.2
dev: true
/@vue/[email protected]:
resolution: {integrity: sha512-+udSj47aRl5aKb0memBvcUG9koarqnxNM5yjuREvqwK6T3ap4mn3Zqqc17QrBFTqSMjr3HK1cvStEZpMDpfdyw==}
dependencies:
rfdc: 1.4.1
dev: true
/@vue/[email protected]([email protected]):
resolution: {integrity: sha512-IsGljWbKGU1MZpBPN+BvPAdr55YPkj2nB/TBNGNC32Vy2qLG25DYu/NBN2vNtZqdRbTRjaoYrahLrToim2NanA==}
@@ -4909,7 +4909,6 @@ packages:
/[email protected]:
resolution: {integrity: sha512-VSWO/W6nNQdyP520F1mhf+Lc2f8pjGQOtoHHm7Ze8Go1kX7akpVIrtTa0fn+HB0QJEDVacl6aO08YE0PgXfdnQ==}
dev: true
/[email protected]:
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
@@ -5299,7 +5298,6 @@ packages:
engines: {node: '>=12.13'}
dependencies:
is-what: 4.1.16
dev: true
/[email protected]:
resolution: {integrity: sha512-mFsNh/DIANLqFt5VHZoGirdg7bK5+oTWlhnGu6tgRhzBlnEKWaPX2xrFaLltii/6rmhqFMJqffUgknuRdpYlHw==}
@@ -7342,7 +7340,6 @@ packages:
/[email protected]:
resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
dev: true
/[email protected]:
resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==}
@@ -7621,7 +7618,6 @@ packages:
/[email protected]:
resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==}
engines: {node: '>=12.13'}
dev: true
/[email protected]:
resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
@@ -8558,7 +8554,6 @@ packages:
/[email protected]:
resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
dev: true
/[email protected]:
resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==}
@@ -9369,7 +9364,7 @@ packages:
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
engines: {node: '>=12'}
/[email protected](@pinia/[email protected]):
/[email protected](@pinia/[email protected])([email protected]):
resolution: {integrity: sha512-lmuMPpXla2zJKjxEq34e1E9P9jxkWEhcVwwioCCE0izG45kkTOvQfCzvwhW3i38cvnaWC7T1eRdkd15Re59ldw==}
peerDependencies:
'@nuxt/kit': '>=3.0.0'
@@ -9387,6 +9382,7 @@ packages:
deep-pick-omit: 1.2.1
defu: 6.1.4
destr: 2.0.5
pinia: 3.0.3([email protected])([email protected])
dev: false
/[email protected]([email protected])([email protected]):
@@ -9405,6 +9401,20 @@ packages:
transitivePeerDependencies:
- '@vue/composition-api'
/[email protected]([email protected])([email protected]):
resolution: {integrity: sha512-ttXO/InUULUXkMHpTdp9Fj4hLpD/2AoJdmAbAeW2yu1iy1k+pkFekQXw5VpC0/5p51IOR/jDaDRfRWRnMMsGOA==}
peerDependencies:
typescript: '>=4.4.4'
vue: ^2.7.0 || ^3.5.11
peerDependenciesMeta:
typescript:
optional: true
dependencies:
'@vue/devtools-api': 7.7.7
typescript: 5.9.2
vue: 3.5.18([email protected])
dev: false
/[email protected]:
resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==}
dependencies:
@@ -10151,7 +10161,6 @@ packages:
/[email protected]:
resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
dev: true
/[email protected]:
resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==}
@@ -10489,7 +10498,6 @@ packages:
/[email protected]:
resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
engines: {node: '>=0.10.0'}
dev: true
/[email protected]:
resolution: {integrity: sha512-o3yWv49B/o4QZk5ZcsALc6t0+eCelPc44zZsLtCQnZPDwFpDYSWcDnrv2TtMmMbQ7uKo3J0HTURCqckw23czNQ==}
@@ -10626,7 +10634,6 @@ packages:
engines: {node: '>=16'}
dependencies:
copy-anything: 3.0.5
dev: true
/[email protected]:
resolution: {integrity: sha512-GBuewsPrhJPftT+fqDa9oI/zc5HNsG9nREqwzoSFDOIqf0NggOZbHQj2TE1P1CDJK8ZogFnlZY9hWoUiur7I/A==}