Bruno Predot

Merge branch 'hotfix/0.3.4'

@@ -26,15 +26,9 @@ defineProps({ @@ -26,15 +26,9 @@ defineProps({
26 :alt="movie.title" 26 :alt="movie.title"
27 :src="`https://image.tmdb.org/t/p/w500${movie.poster_path}`" 27 :src="`https://image.tmdb.org/t/p/w500${movie.poster_path}`"
28 class="absolute inset-0 w-full h-full object-cover" 28 class="absolute inset-0 w-full h-full object-cover"
29 - >  
30 - <div  
31 - v-else  
32 - class="absolute inset-0 w-full h-full bg-gray-700 flex items-center justify-center"  
33 - >  
34 - <FilmIcon  
35 - :size="48"  
36 - class="text-gray-500"  
37 /> 29 />
  30 + <div v-else class="absolute inset-0 w-full h-full bg-gray-700 flex items-center justify-center">
  31 + <FilmIcon :size="48" class="text-gray-500" />
38 </div> 32 </div>
39 <div 33 <div
40 class="absolute top-2 right-2 bg-primary text-white rounded-full w-10 h-10 flex items-center justify-center font-bold" 34 class="absolute top-2 right-2 bg-primary text-white rounded-full w-10 h-10 flex items-center justify-center font-bold"
@@ -35,49 +35,27 @@ watch( @@ -35,49 +35,27 @@ watch(
35 <template> 35 <template>
36 <section> 36 <section>
37 <!-- Liste des commentaires --> 37 <!-- Liste des commentaires -->
38 - <section 38 + <section v-if="comments.length > 0" class="mt-10">
39 - v-if="comments.length > 0"  
40 - class="mt-10"  
41 - >  
42 <h2>Commentaires publiés</h2> 39 <h2>Commentaires publiés</h2>
43 - <div 40 + <div v-for="(comment, index) in comments" :key="index" class="bg-gray-800 rounded-lg p-6 mb-4">
44 - v-for="(comment, index) in comments"  
45 - :key="index"  
46 - class="bg-gray-800 rounded-lg p-6 mb-4"  
47 - >  
48 <div class="flex justify-between items-start mb-2"> 41 <div class="flex justify-between items-start mb-2">
49 <section> 42 <section>
50 - <h4 class="font-bold text-lg"> 43 + <h4 class="font-bold text-lg">Par {{ comment.username }}</h4>
51 - Par {{ comment.username }} 44 + <p class="text-sm text-gray-400">Le {{ useDateFormat(comment.createdAt, "DD-MM-YYYY") }}</p>
52 - </h4>  
53 - <p class="text-sm text-gray-400">  
54 - Le {{ useDateFormat(comment.createdAt, "DD-MM-YYYY") }}  
55 - </p>  
56 </section> 45 </section>
57 <section class="bg-primary text-white rounded-full w-10 h-10 flex items-center justify-center font-bold"> 46 <section class="bg-primary text-white rounded-full w-10 h-10 flex items-center justify-center font-bold">
58 {{ comment.rating }} 47 {{ comment.rating }}
59 </section> 48 </section>
60 </div> 49 </div>
61 - <p 50 + <p :id="`message${index}`" class="text-gray-300">
62 - :id="`message${index}`"  
63 - class="text-gray-300"  
64 - >  
65 {{ comment.message }} 51 {{ comment.message }}
66 </p> 52 </p>
67 </div> 53 </div>
68 </section> 54 </section>
69 <!-- Si aucun commentaire --> 55 <!-- Si aucun commentaire -->
70 - <section 56 + <section v-else class="text-center py-8 bg-gray-800 rounded-lg mt-10">
71 - v-else 57 + <MessageSquareIcon :size="48" class="mx-auto mb-3 text-gray-600" />
72 - class="text-center py-8 bg-gray-800 rounded-lg mt-10" 58 + <p class="text-gray-400">Aucun commentaire pour le moment. Soyez le premier à donner votre avis !</p>
73 - >  
74 - <MessageSquareIcon  
75 - :size="48"  
76 - class="mx-auto mb-3 text-gray-600"  
77 - />  
78 - <p class="text-gray-400">  
79 - Aucun commentaire pour le moment. Soyez le premier à donner votre avis !  
80 - </p>  
81 </section> 59 </section>
82 </section> 60 </section>
83 </template> 61 </template>
@@ -151,9 +151,7 @@ onBeforeUnmount(() => { @@ -151,9 +151,7 @@ onBeforeUnmount(() => {
151 151
152 <template> 152 <template>
153 <section> 153 <section>
154 - <h1 class="text-4xl font-bold mb-8 text-center"> 154 + <h1 class="text-4xl font-bold mb-8 text-center">Découvrez les films populaires</h1>
155 - Découvrez les films populaires  
156 - </h1>  
157 <!-- Barre de recherche --> 155 <!-- Barre de recherche -->
158 <ui-components-search-bar 156 <ui-components-search-bar
159 placeholder="Rechercher un film..." 157 placeholder="Rechercher un film..."
@@ -169,46 +167,24 @@ onBeforeUnmount(() => { @@ -169,46 +167,24 @@ onBeforeUnmount(() => {
169 /> 167 />
170 168
171 <!-- Liste des films --> 169 <!-- Liste des films -->
172 - <div 170 + <div v-else-if="movies.length > 0" class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6">
173 - v-else-if="movies.length > 0" 171 + <div v-for="movie in movies" :key="movie.id">
174 - class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6"  
175 - >  
176 - <div  
177 - v-for="movie in movies"  
178 - :key="movie.id"  
179 - >  
180 <movie-card :movie="movie" /> 172 <movie-card :movie="movie" />
181 </div> 173 </div>
182 </div> 174 </div>
183 175
184 <!-- Message si aucun film trouvé --> 176 <!-- Message si aucun film trouvé -->
185 - <section 177 + <section v-else-if="searchQuery && !movies.length" class="text-center py-12">
186 - v-else-if="searchQuery && !movies.length" 178 + <SearchXIcon :size="64" class="mx-auto mb-4 text-gray-600" />
187 - class="text-center py-12" 179 + <h3 class="text-xl font-bold mb-2">Aucun film trouvé</h3>
188 - > 180 + <p class="text-gray-400">Essayez avec un autre terme de recherche</p>
189 - <SearchXIcon  
190 - :size="64"  
191 - class="mx-auto mb-4 text-gray-600"  
192 - />  
193 - <h3 class="text-xl font-bold mb-2">  
194 - Aucun film trouvé  
195 - </h3>  
196 - <p class="text-gray-400">  
197 - Essayez avec un autre terme de recherche  
198 - </p>  
199 </section> 181 </section>
200 182
201 <!-- Loader pour le chargement de plus de films --> 183 <!-- Loader pour le chargement de plus de films -->
202 - <ui-components-loader 184 + <ui-components-loader :is-initial-loading="isInitialLoading" :is-loading="isLoadingMore" />
203 - :is-initial-loading="isInitialLoading"  
204 - :is-loading="isLoadingMore"  
205 - />  
206 185
207 <!-- Élément observé pour le défilement infini --> 186 <!-- Élément observé pour le défilement infini -->
208 - <div 187 + <div ref="loadMoreTrigger" class="h-10 mt-4" />
209 - ref="loadMoreTrigger"  
210 - class="h-10 mt-4"  
211 - />  
212 </section> 188 </section>
213 </template> 189 </template>
214 190
@@ -17,11 +17,7 @@ defineProps({ @@ -17,11 +17,7 @@ defineProps({
17 <template> 17 <template>
18 <section class="mb-6"> 18 <section class="mb-6">
19 <div class="flex flex-wrap gap-2"> 19 <div class="flex flex-wrap gap-2">
20 - <span 20 + <span v-for="genre in genres" :key="genre.id" class="px-3 py-1 bg-gray-800 rounded-full text-sm">
21 - v-for="genre in genres"  
22 - :key="genre.id"  
23 - class="px-3 py-1 bg-gray-800 rounded-full text-sm"  
24 - >  
25 {{ genre.name }} 21 {{ genre.name }}
26 </span> 22 </span>
27 </div> 23 </div>
@@ -34,9 +34,7 @@ const formatVoteCount = (count: number) => { @@ -34,9 +34,7 @@ const formatVoteCount = (count: number) => {
34 {{ score.toFixed(1) }} 34 {{ score.toFixed(1) }}
35 </section> 35 </section>
36 <section> 36 <section>
37 - <p class="font-semibold"> 37 + <p class="font-semibold">Note TMDB</p>
38 - Note TMDB  
39 - </p>  
40 <div class="text-sm text-gray-400"> 38 <div class="text-sm text-gray-400">
41 {{ formatVoteCount(nbVote) }} 39 {{ formatVoteCount(nbVote) }}
42 </div> 40 </div>
@@ -123,22 +123,13 @@ function handleMessageEvent(event: string) { @@ -123,22 +123,13 @@ function handleMessageEvent(event: string) {
123 } 123 }
124 " 124 "
125 > 125 >
126 - <span 126 + <span v-if="isSubmitting" class="flex items-center justify-center">
127 - v-if="isSubmitting"  
128 - class="flex items-center justify-center"  
129 - >  
130 <span class="w-5 h-5 border-2 border-white border-t-transparent rounded-full animate-spin mr-2" /> 127 <span class="w-5 h-5 border-2 border-white border-t-transparent rounded-full animate-spin mr-2" />
131 Envoi en cours... 128 Envoi en cours...
132 </span> 129 </span>
133 <span v-else>Publier le commentaire</span> 130 <span v-else>Publier le commentaire</span>
134 </v-btn> 131 </v-btn>
135 - <v-btn 132 + <v-btn class="mt-6 mr-4" color="primary" @click="clear"> effacer </v-btn>
136 - class="mt-6 mr-4"  
137 - color="primary"  
138 - @click="clear"  
139 - >  
140 - effacer  
141 - </v-btn>  
142 </VForm> 133 </VForm>
143 </section> 134 </section>
144 </template> 135 </template>
@@ -17,10 +17,7 @@ defineProps({ @@ -17,10 +17,7 @@ defineProps({
17 </script> 17 </script>
18 18
19 <template> 19 <template>
20 - <section 20 + <section v-if="isLoading && !isInitialLoading" class="flex justify-center mt-8">
21 - v-if="isLoading && !isInitialLoading"  
22 - class="flex justify-center mt-8"  
23 - >  
24 <div class="w-10 h-10 border-4 border-primary border-t-transparent rounded-full animate-spin" /> 21 <div class="w-10 h-10 border-4 border-primary border-t-transparent rounded-full animate-spin" />
25 </section> 22 </section>
26 </template> 23 </template>
@@ -20,20 +20,9 @@ defineProps({ @@ -20,20 +20,9 @@ defineProps({
20 <template> 20 <template>
21 <section class="w-full md:w-1/3 lg:w-1/4"> 21 <section class="w-full md:w-1/3 lg:w-1/4">
22 <div class="rounded-lg overflow-hidden shadow-lg bg-gray-800"> 22 <div class="rounded-lg overflow-hidden shadow-lg bg-gray-800">
23 - <v-img 23 + <v-img v-if="src" :alt="title" :src="`https://image.tmdb.org/t/p/w500${src}`" class="w-full h-auto" />
24 - v-if="src" 24 + <div v-else class="aspect-[2/3] bg-gray-700 flex items-center justify-center">
25 - :alt="title" 25 + <FilmIcon :size="64" class="text-gray-500" />
26 - :src="`https://image.tmdb.org/t/p/w500${src}`"  
27 - class="w-full h-auto"  
28 - />  
29 - <div  
30 - v-else  
31 - class="aspect-[2/3] bg-gray-700 flex items-center justify-center"  
32 - >  
33 - <FilmIcon  
34 - :size="64"  
35 - class="text-gray-500"  
36 - />  
37 </div> 26 </div>
38 </div> 27 </div>
39 </section> 28 </section>
@@ -49,7 +49,7 @@ function handleClearSearchEvent() { @@ -49,7 +49,7 @@ function handleClearSearchEvent() {
49 class="w-full px-4 py-3 bg-gray-800 rounded-full text-white placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-primary" 49 class="w-full px-4 py-3 bg-gray-800 rounded-full text-white placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-primary"
50 type="text" 50 type="text"
51 @input="handleSearchEvent" 51 @input="handleSearchEvent"
52 - > 52 + />
53 <button 53 <button
54 v-if="searchQuery" 54 v-if="searchQuery"
55 class="absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-400 hover:text-white" 55 class="absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-400 hover:text-white"
@@ -57,10 +57,7 @@ function handleClearSearchEvent() { @@ -57,10 +57,7 @@ function handleClearSearchEvent() {
57 > 57 >
58 <XIcon :size="20" /> 58 <XIcon :size="20" />
59 </button> 59 </button>
60 - <button 60 + <button v-else class="absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-400">
61 - v-else  
62 - class="absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-400"  
63 - >  
64 <SearchIcon :size="20" /> 61 <SearchIcon :size="20" />
65 </button> 62 </button>
66 </div> 63 </div>
@@ -18,15 +18,8 @@ defineProps({ @@ -18,15 +18,8 @@ defineProps({
18 18
19 <template> 19 <template>
20 <!-- Skeleton loader pendant le chargement initial --> 20 <!-- Skeleton loader pendant le chargement initial -->
21 - <section 21 + <section v-if="isInitialLoading" class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6">
22 - v-if="isInitialLoading" 22 + <div v-for="i in skeletonNumber" :key="i" class="bg-gray-800 rounded-lg overflow-hidden shadow-lg animate-pulse">
23 - class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6"  
24 - >  
25 - <div  
26 - v-for="i in skeletonNumber"  
27 - :key="i"  
28 - class="bg-gray-800 rounded-lg overflow-hidden shadow-lg animate-pulse"  
29 - >  
30 <div class="h-80 bg-gray-700" /> 23 <div class="h-80 bg-gray-700" />
31 <div class="p-4"> 24 <div class="p-4">
32 <div class="h-6 bg-gray-700 rounded mb-3" /> 25 <div class="h-6 bg-gray-700 rounded mb-3" />
@@ -79,16 +79,9 @@ watch( @@ -79,16 +79,9 @@ watch(
79 79
80 <template> 80 <template>
81 <div> 81 <div>
82 - <editor 82 + <editor v-model="content" :api-key="runtimeConfig.public.apiTinyMceSecret" :init="init" />
83 - v-model="content"  
84 - :api-key="runtimeConfig.public.apiTinyMceSecret"  
85 - :init="init"  
86 - />  
87 </div> 83 </div>
88 - <div 84 + <div v-if="errorMessage" class="text-red-500 text-sm mt-1">
89 - v-if="errorMessage"  
90 - class="text-red-500 text-sm mt-1"  
91 - >  
92 {{ errorMessage }} 85 {{ errorMessage }}
93 </div> 86 </div>
94 </template> 87 </template>
@@ -3,10 +3,7 @@ @@ -3,10 +3,7 @@
3 <template> 3 <template>
4 <v-container class="bg-gray-900"> 4 <v-container class="bg-gray-900">
5 <v-row class="bg-gray-900"> 5 <v-row class="bg-gray-900">
6 - <v-col 6 + <v-col cols="12" sm="4">
7 - cols="12"  
8 - sm="4"  
9 - >  
10 <v-skeleton-loader 7 <v-skeleton-loader
11 class="mx-auto border bg-gray-800" 8 class="mx-auto border bg-gray-800"
12 color="#1f2937" 9 color="#1f2937"
@@ -15,10 +12,7 @@ @@ -15,10 +12,7 @@
15 type="paragraph, image" 12 type="paragraph, image"
16 /> 13 />
17 </v-col> 14 </v-col>
18 - <v-col 15 + <v-col cols="12" sm="8">
19 - cols="12"  
20 - sm="8"  
21 - >  
22 <v-skeleton-loader 16 <v-skeleton-loader
23 class="mx-auto mt-10" 17 class="mx-auto mt-10"
24 color="#1f2937" 18 color="#1f2937"
@@ -43,6 +43,7 @@ @@ -43,6 +43,7 @@
43 "jsdom": "^26.1.0", 43 "jsdom": "^26.1.0",
44 "playwright-core": "^1.52.0", 44 "playwright-core": "^1.52.0",
45 "prettier": "^3.5.3", 45 "prettier": "^3.5.3",
  46 + "typescript-eslint": "^8.32.1",
46 "vitest": "^3.1.2" 47 "vitest": "^3.1.2"
47 } 48 }
48 }, 49 },
@@ -72,33 +73,18 @@ @@ -72,33 +73,18 @@
72 } 73 }
73 }, 74 },
74 "node_modules/@antfu/install-pkg": { 75 "node_modules/@antfu/install-pkg": {
75 - "version": "1.0.0", 76 + "version": "1.1.0",
76 - "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-1.0.0.tgz", 77 + "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-1.1.0.tgz",
77 - "integrity": "sha512-xvX6P/lo1B3ej0OsaErAjqgFYzYVcJpamjLAFLYh9vRJngBrMoUG7aVnrGTeqM7yxbyTD5p3F2+0/QUEh8Vzhw==", 78 + "integrity": "sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==",
78 "license": "MIT", 79 "license": "MIT",
79 "dependencies": { 80 "dependencies": {
80 - "package-manager-detector": "^0.2.8", 81 + "package-manager-detector": "^1.3.0",
81 - "tinyexec": "^0.3.2" 82 + "tinyexec": "^1.0.1"
82 }, 83 },
83 "funding": { 84 "funding": {
84 "url": "https://github.com/sponsors/antfu" 85 "url": "https://github.com/sponsors/antfu"
85 } 86 }
86 }, 87 },
87 - "node_modules/@antfu/install-pkg/node_modules/package-manager-detector": {  
88 - "version": "0.2.11",  
89 - "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.11.tgz",  
90 - "integrity": "sha512-BEnLolu+yuz22S56CU1SUKq3XC3PkwD5wv4ikR4MfGvnRVcmzXR9DwSlW2fEamyTPyXHomBJRzgapeuBvRNzJQ==",  
91 - "license": "MIT",  
92 - "dependencies": {  
93 - "quansync": "^0.2.7"  
94 - }  
95 - },  
96 - "node_modules/@antfu/install-pkg/node_modules/tinyexec": {  
97 - "version": "0.3.2",  
98 - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz",  
99 - "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==",  
100 - "license": "MIT"  
101 - },  
102 "node_modules/@antfu/utils": { 88 "node_modules/@antfu/utils": {
103 "version": "8.1.1", 89 "version": "8.1.1",
104 "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.1.tgz", 90 "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.1.tgz",
@@ -1217,9 +1203,9 @@ @@ -1217,9 +1203,9 @@
1217 } 1203 }
1218 }, 1204 },
1219 "node_modules/@eslint-community/eslint-utils": { 1205 "node_modules/@eslint-community/eslint-utils": {
1220 - "version": "4.6.1", 1206 + "version": "4.7.0",
1221 - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.1.tgz", 1207 + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz",
1222 - "integrity": "sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==", 1208 + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==",
1223 "license": "MIT", 1209 "license": "MIT",
1224 "dependencies": { 1210 "dependencies": {
1225 "eslint-visitor-keys": "^3.4.3" 1211 "eslint-visitor-keys": "^3.4.3"
@@ -1244,9 +1230,9 @@ @@ -1244,9 +1230,9 @@
1244 } 1230 }
1245 }, 1231 },
1246 "node_modules/@eslint/compat": { 1232 "node_modules/@eslint/compat": {
1247 - "version": "1.2.8", 1233 + "version": "1.2.9",
1248 - "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.2.8.tgz", 1234 + "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.2.9.tgz",
1249 - "integrity": "sha512-LqCYHdWL/QqKIJuZ/ucMAv8d4luKGs4oCPgpt8mWztQAtPrHfXKQ/XAUc8ljCHAfJCn6SvkpTcGt5Tsh8saowA==", 1235 + "integrity": "sha512-gCdSY54n7k+driCadyMNv8JSPzYLeDVM/ikZRtvtROBpRdFSkS8W9A82MqsaY7lZuwL0wiapgD0NT1xT0hyJsA==",
1250 "license": "Apache-2.0", 1236 "license": "Apache-2.0",
1251 "engines": { 1237 "engines": {
1252 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1238 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1482,9 +1468,9 @@ @@ -1482,9 +1468,9 @@
1482 } 1468 }
1483 }, 1469 },
1484 "node_modules/@eslint/js": { 1470 "node_modules/@eslint/js": {
1485 - "version": "9.25.1", 1471 + "version": "9.26.0",
1486 - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.25.1.tgz", 1472 + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.26.0.tgz",
1487 - "integrity": "sha512-dEIwmjntEx8u3Uvv+kr3PDeeArL8Hw07H9kyYxCjnM9pBjfEhk6uLXSchxxzgiwtRhhzVzqmUSDFBOi1TuZ7qg==", 1473 + "integrity": "sha512-I9XlJawFdSMvWjDt6wksMCrgns5ggLNfFwFvnShsleWruvXM514Qxk8V246efTw+eo9JABvVz+u3q2RiAowKxQ==",
1488 "license": "MIT", 1474 "license": "MIT",
1489 "engines": { 1475 "engines": {
1490 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1476 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3012,9 +2998,9 @@ @@ -3012,9 +2998,9 @@
3012 } 2998 }
3013 }, 2999 },
3014 "node_modules/@nuxt/eslint-config/node_modules/globals": { 3000 "node_modules/@nuxt/eslint-config/node_modules/globals": {
3015 - "version": "16.0.0", 3001 + "version": "16.1.0",
3016 - "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", 3002 + "resolved": "https://registry.npmjs.org/globals/-/globals-16.1.0.tgz",
3017 - "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", 3003 + "integrity": "sha512-aibexHNbb/jiUSObBgpHLj+sIuUmJnYcgXBlrfsiDZ9rt4aF2TFRbyLgZ2iFQuVZ1K5Mx3FVkbKRSgKrbK3K2g==",
3018 "license": "MIT", 3004 "license": "MIT",
3019 "engines": { 3005 "engines": {
3020 "node": ">=18" 3006 "node": ">=18"
@@ -3037,9 +3023,9 @@ @@ -3037,9 +3023,9 @@
3037 } 3023 }
3038 }, 3024 },
3039 "node_modules/@nuxt/eslint-plugin/node_modules/@typescript-eslint/types": { 3025 "node_modules/@nuxt/eslint-plugin/node_modules/@typescript-eslint/types": {
3040 - "version": "8.31.0", 3026 + "version": "8.32.1",
3041 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.31.0.tgz", 3027 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz",
3042 - "integrity": "sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==", 3028 + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==",
3043 "license": "MIT", 3029 "license": "MIT",
3044 "engines": { 3030 "engines": {
3045 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 3031 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3049,6 +3035,80 @@ @@ -3049,6 +3035,80 @@
3049 "url": "https://opencollective.com/typescript-eslint" 3035 "url": "https://opencollective.com/typescript-eslint"
3050 } 3036 }
3051 }, 3037 },
  3038 + "node_modules/@nuxt/eslint/node_modules/@nuxt/kit": {
  3039 + "version": "3.17.3",
  3040 + "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.17.3.tgz",
  3041 + "integrity": "sha512-aw6u6mT3TnM/MmcCRDMv3i9Sbm5/ZMSJgDl+N+WsrWNDIQ2sWmsqdDkjb/HyXF20SNwc2891hRBkaQr3hG2mhA==",
  3042 + "license": "MIT",
  3043 + "dependencies": {
  3044 + "c12": "^3.0.3",
  3045 + "consola": "^3.4.2",
  3046 + "defu": "^6.1.4",
  3047 + "destr": "^2.0.5",
  3048 + "errx": "^0.1.0",
  3049 + "exsolve": "^1.0.5",
  3050 + "ignore": "^7.0.4",
  3051 + "jiti": "^2.4.2",
  3052 + "klona": "^2.0.6",
  3053 + "knitwork": "^1.2.0",
  3054 + "mlly": "^1.7.4",
  3055 + "ohash": "^2.0.11",
  3056 + "pathe": "^2.0.3",
  3057 + "pkg-types": "^2.1.0",
  3058 + "scule": "^1.3.0",
  3059 + "semver": "^7.7.1",
  3060 + "std-env": "^3.9.0",
  3061 + "tinyglobby": "^0.2.13",
  3062 + "ufo": "^1.6.1",
  3063 + "unctx": "^2.4.1",
  3064 + "unimport": "^5.0.1",
  3065 + "untyped": "^2.0.0"
  3066 + },
  3067 + "engines": {
  3068 + "node": ">=18.12.0"
  3069 + }
  3070 + },
  3071 + "node_modules/@nuxt/eslint/node_modules/tinyglobby": {
  3072 + "version": "0.2.13",
  3073 + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz",
  3074 + "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==",
  3075 + "license": "MIT",
  3076 + "dependencies": {
  3077 + "fdir": "^6.4.4",
  3078 + "picomatch": "^4.0.2"
  3079 + },
  3080 + "engines": {
  3081 + "node": ">=12.0.0"
  3082 + },
  3083 + "funding": {
  3084 + "url": "https://github.com/sponsors/SuperchupuDev"
  3085 + }
  3086 + },
  3087 + "node_modules/@nuxt/eslint/node_modules/unimport": {
  3088 + "version": "5.0.1",
  3089 + "resolved": "https://registry.npmjs.org/unimport/-/unimport-5.0.1.tgz",
  3090 + "integrity": "sha512-1YWzPj6wYhtwHE+9LxRlyqP4DiRrhGfJxdtH475im8ktyZXO3jHj/3PZ97zDdvkYoovFdi0K4SKl3a7l92v3sQ==",
  3091 + "license": "MIT",
  3092 + "dependencies": {
  3093 + "acorn": "^8.14.1",
  3094 + "escape-string-regexp": "^5.0.0",
  3095 + "estree-walker": "^3.0.3",
  3096 + "local-pkg": "^1.1.1",
  3097 + "magic-string": "^0.30.17",
  3098 + "mlly": "^1.7.4",
  3099 + "pathe": "^2.0.3",
  3100 + "picomatch": "^4.0.2",
  3101 + "pkg-types": "^2.1.0",
  3102 + "scule": "^1.3.0",
  3103 + "strip-literal": "^3.0.0",
  3104 + "tinyglobby": "^0.2.13",
  3105 + "unplugin": "^2.3.2",
  3106 + "unplugin-utils": "^0.2.4"
  3107 + },
  3108 + "engines": {
  3109 + "node": ">=18.12.0"
  3110 + }
  3111 + },
3052 "node_modules/@nuxt/icon": { 3112 "node_modules/@nuxt/icon": {
3053 "version": "1.12.0", 3113 "version": "1.12.0",
3054 "resolved": "https://registry.npmjs.org/@nuxt/icon/-/icon-1.12.0.tgz", 3114 "resolved": "https://registry.npmjs.org/@nuxt/icon/-/icon-1.12.0.tgz",
@@ -4030,6 +4090,7 @@ @@ -4030,6 +4090,7 @@
4030 "version": "0.2.4", 4090 "version": "0.2.4",
4031 "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.4.tgz", 4091 "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.4.tgz",
4032 "integrity": "sha512-ROFF39F6ZrnzSUEmQQZUar0Jt4xVoP9WnDRdWwF4NNcXs3xBTLgBUDoOwW141y1jP+S8nahIbdxbFC7IShw9Iw==", 4092 "integrity": "sha512-ROFF39F6ZrnzSUEmQQZUar0Jt4xVoP9WnDRdWwF4NNcXs3xBTLgBUDoOwW141y1jP+S8nahIbdxbFC7IShw9Iw==",
  4093 + "dev": true,
4033 "license": "MIT", 4094 "license": "MIT",
4034 "engines": { 4095 "engines": {
4035 "node": "^12.20.0 || ^14.18.0 || >=16.0.0" 4096 "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
@@ -4749,12 +4810,6 @@ @@ -4749,12 +4810,6 @@
4749 "tslib": "^2.4.0" 4810 "tslib": "^2.4.0"
4750 } 4811 }
4751 }, 4812 },
4752 - "node_modules/@types/doctrine": {  
4753 - "version": "0.0.9",  
4754 - "resolved": "https://registry.npmjs.org/@types/doctrine/-/doctrine-0.0.9.tgz",  
4755 - "integrity": "sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==",  
4756 - "license": "MIT"  
4757 - },  
4758 "node_modules/@types/estree": { 4813 "node_modules/@types/estree": {
4759 "version": "1.0.7", 4814 "version": "1.0.7",
4760 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", 4815 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz",
@@ -4876,20 +4931,20 @@ @@ -4876,20 +4931,20 @@
4876 } 4931 }
4877 }, 4932 },
4878 "node_modules/@typescript-eslint/eslint-plugin": { 4933 "node_modules/@typescript-eslint/eslint-plugin": {
4879 - "version": "8.31.0", 4934 + "version": "8.32.1",
4880 - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.31.0.tgz", 4935 + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.32.1.tgz",
4881 - "integrity": "sha512-evaQJZ/J/S4wisevDvC1KFZkPzRetH8kYZbkgcTRyql3mcKsf+ZFDV1BVWUGTCAW5pQHoqn5gK5b8kn7ou9aFQ==", 4936 + "integrity": "sha512-6u6Plg9nP/J1GRpe/vcjjabo6Uc5YQPAMxsgQyGC/I0RuukiG1wIe3+Vtg3IrSCVJDmqK3j8adrtzXSENRtFgg==",
4882 "license": "MIT", 4937 "license": "MIT",
4883 "dependencies": { 4938 "dependencies": {
4884 "@eslint-community/regexpp": "^4.10.0", 4939 "@eslint-community/regexpp": "^4.10.0",
4885 - "@typescript-eslint/scope-manager": "8.31.0", 4940 + "@typescript-eslint/scope-manager": "8.32.1",
4886 - "@typescript-eslint/type-utils": "8.31.0", 4941 + "@typescript-eslint/type-utils": "8.32.1",
4887 - "@typescript-eslint/utils": "8.31.0", 4942 + "@typescript-eslint/utils": "8.32.1",
4888 - "@typescript-eslint/visitor-keys": "8.31.0", 4943 + "@typescript-eslint/visitor-keys": "8.32.1",
4889 "graphemer": "^1.4.0", 4944 "graphemer": "^1.4.0",
4890 - "ignore": "^5.3.1", 4945 + "ignore": "^7.0.0",
4891 "natural-compare": "^1.4.0", 4946 "natural-compare": "^1.4.0",
4892 - "ts-api-utils": "^2.0.1" 4947 + "ts-api-utils": "^2.1.0"
4893 }, 4948 },
4894 "engines": { 4949 "engines": {
4895 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 4950 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -4905,9 +4960,9 @@ @@ -4905,9 +4960,9 @@
4905 } 4960 }
4906 }, 4961 },
4907 "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { 4962 "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": {
4908 - "version": "8.31.0", 4963 + "version": "8.32.1",
4909 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.31.0.tgz", 4964 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz",
4910 - "integrity": "sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==", 4965 + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==",
4911 "license": "MIT", 4966 "license": "MIT",
4912 "engines": { 4967 "engines": {
4913 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 4968 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -4918,12 +4973,12 @@ @@ -4918,12 +4973,12 @@
4918 } 4973 }
4919 }, 4974 },
4920 "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { 4975 "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": {
4921 - "version": "8.31.0", 4976 + "version": "8.32.1",
4922 - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.31.0.tgz", 4977 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz",
4923 - "integrity": "sha512-QcGHmlRHWOl93o64ZUMNewCdwKGU6WItOU52H0djgNmn1EOrhVudrDzXz4OycCRSCPwFCDrE2iIt5vmuUdHxuQ==", 4978 + "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==",
4924 "license": "MIT", 4979 "license": "MIT",
4925 "dependencies": { 4980 "dependencies": {
4926 - "@typescript-eslint/types": "8.31.0", 4981 + "@typescript-eslint/types": "8.32.1",
4927 "eslint-visitor-keys": "^4.2.0" 4982 "eslint-visitor-keys": "^4.2.0"
4928 }, 4983 },
4929 "engines": { 4984 "engines": {
@@ -4946,25 +5001,16 @@ @@ -4946,25 +5001,16 @@
4946 "url": "https://opencollective.com/eslint" 5001 "url": "https://opencollective.com/eslint"
4947 } 5002 }
4948 }, 5003 },
4949 - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": {  
4950 - "version": "5.3.2",  
4951 - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",  
4952 - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",  
4953 - "license": "MIT",  
4954 - "engines": {  
4955 - "node": ">= 4"  
4956 - }  
4957 - },  
4958 "node_modules/@typescript-eslint/parser": { 5004 "node_modules/@typescript-eslint/parser": {
4959 - "version": "8.31.0", 5005 + "version": "8.32.1",
4960 - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.31.0.tgz", 5006 + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.32.1.tgz",
4961 - "integrity": "sha512-67kYYShjBR0jNI5vsf/c3WG4u+zDnCTHTPqVMQguffaWWFs7artgwKmfwdifl+r6XyM5LYLas/dInj2T0SgJyw==", 5007 + "integrity": "sha512-LKMrmwCPoLhM45Z00O1ulb6jwyVr2kr3XJp+G+tSEZcbauNnScewcQwtJqXDhXeYPDEjZ8C1SjXm015CirEmGg==",
4962 "license": "MIT", 5008 "license": "MIT",
4963 "dependencies": { 5009 "dependencies": {
4964 - "@typescript-eslint/scope-manager": "8.31.0", 5010 + "@typescript-eslint/scope-manager": "8.32.1",
4965 - "@typescript-eslint/types": "8.31.0", 5011 + "@typescript-eslint/types": "8.32.1",
4966 - "@typescript-eslint/typescript-estree": "8.31.0", 5012 + "@typescript-eslint/typescript-estree": "8.32.1",
4967 - "@typescript-eslint/visitor-keys": "8.31.0", 5013 + "@typescript-eslint/visitor-keys": "8.32.1",
4968 "debug": "^4.3.4" 5014 "debug": "^4.3.4"
4969 }, 5015 },
4970 "engines": { 5016 "engines": {
@@ -4980,9 +5026,9 @@ @@ -4980,9 +5026,9 @@
4980 } 5026 }
4981 }, 5027 },
4982 "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { 5028 "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": {
4983 - "version": "8.31.0", 5029 + "version": "8.32.1",
4984 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.31.0.tgz", 5030 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz",
4985 - "integrity": "sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==", 5031 + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==",
4986 "license": "MIT", 5032 "license": "MIT",
4987 "engines": { 5033 "engines": {
4988 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5034 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -4993,19 +5039,19 @@ @@ -4993,19 +5039,19 @@
4993 } 5039 }
4994 }, 5040 },
4995 "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { 5041 "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": {
4996 - "version": "8.31.0", 5042 + "version": "8.32.1",
4997 - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.31.0.tgz", 5043 + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz",
4998 - "integrity": "sha512-xLmgn4Yl46xi6aDSZ9KkyfhhtnYI15/CvHbpOy/eR5NWhK/BK8wc709KKwhAR0m4ZKRP7h07bm4BWUYOCuRpQQ==", 5044 + "integrity": "sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg==",
4999 "license": "MIT", 5045 "license": "MIT",
5000 "dependencies": { 5046 "dependencies": {
5001 - "@typescript-eslint/types": "8.31.0", 5047 + "@typescript-eslint/types": "8.32.1",
5002 - "@typescript-eslint/visitor-keys": "8.31.0", 5048 + "@typescript-eslint/visitor-keys": "8.32.1",
5003 "debug": "^4.3.4", 5049 "debug": "^4.3.4",
5004 "fast-glob": "^3.3.2", 5050 "fast-glob": "^3.3.2",
5005 "is-glob": "^4.0.3", 5051 "is-glob": "^4.0.3",
5006 "minimatch": "^9.0.4", 5052 "minimatch": "^9.0.4",
5007 "semver": "^7.6.0", 5053 "semver": "^7.6.0",
5008 - "ts-api-utils": "^2.0.1" 5054 + "ts-api-utils": "^2.1.0"
5009 }, 5055 },
5010 "engines": { 5056 "engines": {
5011 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5057 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5019,12 +5065,12 @@ @@ -5019,12 +5065,12 @@
5019 } 5065 }
5020 }, 5066 },
5021 "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { 5067 "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": {
5022 - "version": "8.31.0", 5068 + "version": "8.32.1",
5023 - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.31.0.tgz", 5069 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz",
5024 - "integrity": "sha512-QcGHmlRHWOl93o64ZUMNewCdwKGU6WItOU52H0djgNmn1EOrhVudrDzXz4OycCRSCPwFCDrE2iIt5vmuUdHxuQ==", 5070 + "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==",
5025 "license": "MIT", 5071 "license": "MIT",
5026 "dependencies": { 5072 "dependencies": {
5027 - "@typescript-eslint/types": "8.31.0", 5073 + "@typescript-eslint/types": "8.32.1",
5028 "eslint-visitor-keys": "^4.2.0" 5074 "eslint-visitor-keys": "^4.2.0"
5029 }, 5075 },
5030 "engines": { 5076 "engines": {
@@ -5048,13 +5094,13 @@ @@ -5048,13 +5094,13 @@
5048 } 5094 }
5049 }, 5095 },
5050 "node_modules/@typescript-eslint/scope-manager": { 5096 "node_modules/@typescript-eslint/scope-manager": {
5051 - "version": "8.31.0", 5097 + "version": "8.32.1",
5052 - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.31.0.tgz", 5098 + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.32.1.tgz",
5053 - "integrity": "sha512-knO8UyF78Nt8O/B64i7TlGXod69ko7z6vJD9uhSlm0qkAbGeRUSudcm0+K/4CrRjrpiHfBCjMWlc08Vav1xwcw==", 5099 + "integrity": "sha512-7IsIaIDeZn7kffk7qXC3o6Z4UblZJKV3UBpkvRNpr5NSyLji7tvTcvmnMNYuYLyh26mN8W723xpo3i4MlD33vA==",
5054 "license": "MIT", 5100 "license": "MIT",
5055 "dependencies": { 5101 "dependencies": {
5056 - "@typescript-eslint/types": "8.31.0", 5102 + "@typescript-eslint/types": "8.32.1",
5057 - "@typescript-eslint/visitor-keys": "8.31.0" 5103 + "@typescript-eslint/visitor-keys": "8.32.1"
5058 }, 5104 },
5059 "engines": { 5105 "engines": {
5060 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5106 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5065,9 +5111,9 @@ @@ -5065,9 +5111,9 @@
5065 } 5111 }
5066 }, 5112 },
5067 "node_modules/@typescript-eslint/scope-manager/node_modules/@typescript-eslint/types": { 5113 "node_modules/@typescript-eslint/scope-manager/node_modules/@typescript-eslint/types": {
5068 - "version": "8.31.0", 5114 + "version": "8.32.1",
5069 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.31.0.tgz", 5115 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz",
5070 - "integrity": "sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==", 5116 + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==",
5071 "license": "MIT", 5117 "license": "MIT",
5072 "engines": { 5118 "engines": {
5073 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5119 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5078,12 +5124,12 @@ @@ -5078,12 +5124,12 @@
5078 } 5124 }
5079 }, 5125 },
5080 "node_modules/@typescript-eslint/scope-manager/node_modules/@typescript-eslint/visitor-keys": { 5126 "node_modules/@typescript-eslint/scope-manager/node_modules/@typescript-eslint/visitor-keys": {
5081 - "version": "8.31.0", 5127 + "version": "8.32.1",
5082 - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.31.0.tgz", 5128 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz",
5083 - "integrity": "sha512-QcGHmlRHWOl93o64ZUMNewCdwKGU6WItOU52H0djgNmn1EOrhVudrDzXz4OycCRSCPwFCDrE2iIt5vmuUdHxuQ==", 5129 + "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==",
5084 "license": "MIT", 5130 "license": "MIT",
5085 "dependencies": { 5131 "dependencies": {
5086 - "@typescript-eslint/types": "8.31.0", 5132 + "@typescript-eslint/types": "8.32.1",
5087 "eslint-visitor-keys": "^4.2.0" 5133 "eslint-visitor-keys": "^4.2.0"
5088 }, 5134 },
5089 "engines": { 5135 "engines": {
@@ -5107,15 +5153,15 @@ @@ -5107,15 +5153,15 @@
5107 } 5153 }
5108 }, 5154 },
5109 "node_modules/@typescript-eslint/type-utils": { 5155 "node_modules/@typescript-eslint/type-utils": {
5110 - "version": "8.31.0", 5156 + "version": "8.32.1",
5111 - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.31.0.tgz", 5157 + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.32.1.tgz",
5112 - "integrity": "sha512-DJ1N1GdjI7IS7uRlzJuEDCgDQix3ZVYVtgeWEyhyn4iaoitpMBX6Ndd488mXSx0xah/cONAkEaYyylDyAeHMHg==", 5158 + "integrity": "sha512-mv9YpQGA8iIsl5KyUPi+FGLm7+bA4fgXaeRcFKRDRwDMu4iwrSHeDPipwueNXhdIIZltwCJv+NkxftECbIZWfA==",
5113 "license": "MIT", 5159 "license": "MIT",
5114 "dependencies": { 5160 "dependencies": {
5115 - "@typescript-eslint/typescript-estree": "8.31.0", 5161 + "@typescript-eslint/typescript-estree": "8.32.1",
5116 - "@typescript-eslint/utils": "8.31.0", 5162 + "@typescript-eslint/utils": "8.32.1",
5117 "debug": "^4.3.4", 5163 "debug": "^4.3.4",
5118 - "ts-api-utils": "^2.0.1" 5164 + "ts-api-utils": "^2.1.0"
5119 }, 5165 },
5120 "engines": { 5166 "engines": {
5121 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5167 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5130,9 +5176,9 @@ @@ -5130,9 +5176,9 @@
5130 } 5176 }
5131 }, 5177 },
5132 "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { 5178 "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": {
5133 - "version": "8.31.0", 5179 + "version": "8.32.1",
5134 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.31.0.tgz", 5180 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz",
5135 - "integrity": "sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==", 5181 + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==",
5136 "license": "MIT", 5182 "license": "MIT",
5137 "engines": { 5183 "engines": {
5138 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5184 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5143,19 +5189,19 @@ @@ -5143,19 +5189,19 @@
5143 } 5189 }
5144 }, 5190 },
5145 "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { 5191 "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": {
5146 - "version": "8.31.0", 5192 + "version": "8.32.1",
5147 - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.31.0.tgz", 5193 + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz",
5148 - "integrity": "sha512-xLmgn4Yl46xi6aDSZ9KkyfhhtnYI15/CvHbpOy/eR5NWhK/BK8wc709KKwhAR0m4ZKRP7h07bm4BWUYOCuRpQQ==", 5194 + "integrity": "sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg==",
5149 "license": "MIT", 5195 "license": "MIT",
5150 "dependencies": { 5196 "dependencies": {
5151 - "@typescript-eslint/types": "8.31.0", 5197 + "@typescript-eslint/types": "8.32.1",
5152 - "@typescript-eslint/visitor-keys": "8.31.0", 5198 + "@typescript-eslint/visitor-keys": "8.32.1",
5153 "debug": "^4.3.4", 5199 "debug": "^4.3.4",
5154 "fast-glob": "^3.3.2", 5200 "fast-glob": "^3.3.2",
5155 "is-glob": "^4.0.3", 5201 "is-glob": "^4.0.3",
5156 "minimatch": "^9.0.4", 5202 "minimatch": "^9.0.4",
5157 "semver": "^7.6.0", 5203 "semver": "^7.6.0",
5158 - "ts-api-utils": "^2.0.1" 5204 + "ts-api-utils": "^2.1.0"
5159 }, 5205 },
5160 "engines": { 5206 "engines": {
5161 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5207 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5169,12 +5215,12 @@ @@ -5169,12 +5215,12 @@
5169 } 5215 }
5170 }, 5216 },
5171 "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { 5217 "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": {
5172 - "version": "8.31.0", 5218 + "version": "8.32.1",
5173 - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.31.0.tgz", 5219 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz",
5174 - "integrity": "sha512-QcGHmlRHWOl93o64ZUMNewCdwKGU6WItOU52H0djgNmn1EOrhVudrDzXz4OycCRSCPwFCDrE2iIt5vmuUdHxuQ==", 5220 + "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==",
5175 "license": "MIT", 5221 "license": "MIT",
5176 "dependencies": { 5222 "dependencies": {
5177 - "@typescript-eslint/types": "8.31.0", 5223 + "@typescript-eslint/types": "8.32.1",
5178 "eslint-visitor-keys": "^4.2.0" 5224 "eslint-visitor-keys": "^4.2.0"
5179 }, 5225 },
5180 "engines": { 5226 "engines": {
@@ -5276,15 +5322,15 @@ @@ -5276,15 +5322,15 @@
5276 } 5322 }
5277 }, 5323 },
5278 "node_modules/@typescript-eslint/utils": { 5324 "node_modules/@typescript-eslint/utils": {
5279 - "version": "8.31.0", 5325 + "version": "8.32.1",
5280 - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.31.0.tgz", 5326 + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.32.1.tgz",
5281 - "integrity": "sha512-qi6uPLt9cjTFxAb1zGNgTob4x9ur7xC6mHQJ8GwEzGMGE9tYniublmJaowOJ9V2jUzxrltTPfdG2nKlWsq0+Ww==", 5327 + "integrity": "sha512-DsSFNIgLSrc89gpq1LJB7Hm1YpuhK086DRDJSNrewcGvYloWW1vZLHBTIvarKZDcAORIy/uWNx8Gad+4oMpkSA==",
5282 "license": "MIT", 5328 "license": "MIT",
5283 "dependencies": { 5329 "dependencies": {
5284 - "@eslint-community/eslint-utils": "^4.4.0", 5330 + "@eslint-community/eslint-utils": "^4.7.0",
5285 - "@typescript-eslint/scope-manager": "8.31.0", 5331 + "@typescript-eslint/scope-manager": "8.32.1",
5286 - "@typescript-eslint/types": "8.31.0", 5332 + "@typescript-eslint/types": "8.32.1",
5287 - "@typescript-eslint/typescript-estree": "8.31.0" 5333 + "@typescript-eslint/typescript-estree": "8.32.1"
5288 }, 5334 },
5289 "engines": { 5335 "engines": {
5290 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5336 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5299,9 +5345,9 @@ @@ -5299,9 +5345,9 @@
5299 } 5345 }
5300 }, 5346 },
5301 "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { 5347 "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": {
5302 - "version": "8.31.0", 5348 + "version": "8.32.1",
5303 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.31.0.tgz", 5349 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz",
5304 - "integrity": "sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==", 5350 + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==",
5305 "license": "MIT", 5351 "license": "MIT",
5306 "engines": { 5352 "engines": {
5307 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5353 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5312,19 +5358,19 @@ @@ -5312,19 +5358,19 @@
5312 } 5358 }
5313 }, 5359 },
5314 "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { 5360 "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": {
5315 - "version": "8.31.0", 5361 + "version": "8.32.1",
5316 - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.31.0.tgz", 5362 + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz",
5317 - "integrity": "sha512-xLmgn4Yl46xi6aDSZ9KkyfhhtnYI15/CvHbpOy/eR5NWhK/BK8wc709KKwhAR0m4ZKRP7h07bm4BWUYOCuRpQQ==", 5363 + "integrity": "sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg==",
5318 "license": "MIT", 5364 "license": "MIT",
5319 "dependencies": { 5365 "dependencies": {
5320 - "@typescript-eslint/types": "8.31.0", 5366 + "@typescript-eslint/types": "8.32.1",
5321 - "@typescript-eslint/visitor-keys": "8.31.0", 5367 + "@typescript-eslint/visitor-keys": "8.32.1",
5322 "debug": "^4.3.4", 5368 "debug": "^4.3.4",
5323 "fast-glob": "^3.3.2", 5369 "fast-glob": "^3.3.2",
5324 "is-glob": "^4.0.3", 5370 "is-glob": "^4.0.3",
5325 "minimatch": "^9.0.4", 5371 "minimatch": "^9.0.4",
5326 "semver": "^7.6.0", 5372 "semver": "^7.6.0",
5327 - "ts-api-utils": "^2.0.1" 5373 + "ts-api-utils": "^2.1.0"
5328 }, 5374 },
5329 "engines": { 5375 "engines": {
5330 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 5376 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5338,12 +5384,12 @@ @@ -5338,12 +5384,12 @@
5338 } 5384 }
5339 }, 5385 },
5340 "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { 5386 "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": {
5341 - "version": "8.31.0", 5387 + "version": "8.32.1",
5342 - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.31.0.tgz", 5388 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz",
5343 - "integrity": "sha512-QcGHmlRHWOl93o64ZUMNewCdwKGU6WItOU52H0djgNmn1EOrhVudrDzXz4OycCRSCPwFCDrE2iIt5vmuUdHxuQ==", 5389 + "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==",
5344 "license": "MIT", 5390 "license": "MIT",
5345 "dependencies": { 5391 "dependencies": {
5346 - "@typescript-eslint/types": "8.31.0", 5392 + "@typescript-eslint/types": "8.32.1",
5347 "eslint-visitor-keys": "^4.2.0" 5393 "eslint-visitor-keys": "^4.2.0"
5348 }, 5394 },
5349 "engines": { 5395 "engines": {
@@ -5400,9 +5446,9 @@ @@ -5400,9 +5446,9 @@
5400 } 5446 }
5401 }, 5447 },
5402 "node_modules/@unrs/resolver-binding-darwin-arm64": { 5448 "node_modules/@unrs/resolver-binding-darwin-arm64": {
5403 - "version": "1.6.4", 5449 + "version": "1.7.2",
5404 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.6.4.tgz", 5450 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.7.2.tgz",
5405 - "integrity": "sha512-ehtknxfSIlAIVFmQ9/yVbW4SzyjWuQpKAtRujNzuR0qS1avz4+BSmM0lVhl4OnU7nJaun/g+AM2FeaUY5KwZsg==", 5451 + "integrity": "sha512-vxtBno4xvowwNmO/ASL0Y45TpHqmNkAaDtz4Jqb+clmcVSSl8XCG/PNFFkGsXXXS6AMjP+ja/TtNCFFa1QwLRg==",
5406 "cpu": [ 5452 "cpu": [
5407 "arm64" 5453 "arm64"
5408 ], 5454 ],
@@ -5413,9 +5459,9 @@ @@ -5413,9 +5459,9 @@
5413 ] 5459 ]
5414 }, 5460 },
5415 "node_modules/@unrs/resolver-binding-darwin-x64": { 5461 "node_modules/@unrs/resolver-binding-darwin-x64": {
5416 - "version": "1.6.4", 5462 + "version": "1.7.2",
5417 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.6.4.tgz", 5463 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.7.2.tgz",
5418 - "integrity": "sha512-CtPj8lqQNVaNjnURq4lCAsanQGN/zO8yFKbL8a7RKH4SU7EMYhOrK8JgW5mbcEDinB4hVuZdgsDCTA3x24CuVQ==", 5464 + "integrity": "sha512-qhVa8ozu92C23Hsmv0BF4+5Dyyd5STT1FolV4whNgbY6mj3kA0qsrGPe35zNR3wAN7eFict3s4Rc2dDTPBTuFQ==",
5419 "cpu": [ 5465 "cpu": [
5420 "x64" 5466 "x64"
5421 ], 5467 ],
@@ -5426,9 +5472,9 @@ @@ -5426,9 +5472,9 @@
5426 ] 5472 ]
5427 }, 5473 },
5428 "node_modules/@unrs/resolver-binding-freebsd-x64": { 5474 "node_modules/@unrs/resolver-binding-freebsd-x64": {
5429 - "version": "1.6.4", 5475 + "version": "1.7.2",
5430 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.6.4.tgz", 5476 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.7.2.tgz",
5431 - "integrity": "sha512-N8UpCG5vis1srGACnJ03WG4N9YfkpzcF7Ooztv9uOE3IG7yjxT4wSVpfbTUof2kOM8TmVhgINoIDQ5wxo+CCxQ==", 5477 + "integrity": "sha512-zKKdm2uMXqLFX6Ac7K5ElnnG5VIXbDlFWzg4WJ8CGUedJryM5A3cTgHuGMw1+P5ziV8CRhnSEgOnurTI4vpHpg==",
5432 "cpu": [ 5478 "cpu": [
5433 "x64" 5479 "x64"
5434 ], 5480 ],
@@ -5439,9 +5485,9 @@ @@ -5439,9 +5485,9 @@
5439 ] 5485 ]
5440 }, 5486 },
5441 "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { 5487 "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": {
5442 - "version": "1.6.4", 5488 + "version": "1.7.2",
5443 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.6.4.tgz", 5489 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.7.2.tgz",
5444 - "integrity": "sha512-Hllz4okH+R2P0YdFivGhrA1gjDLjQrhLmfu37TidpQpcp6tcTK40T9mt7SF8frXuPjd2/YNxXIyowOvswwnfOg==", 5490 + "integrity": "sha512-8N1z1TbPnHH+iDS/42GJ0bMPLiGK+cUqOhNbMKtWJ4oFGzqSJk/zoXFzcQkgtI63qMcUI7wW1tq2usZQSb2jxw==",
5445 "cpu": [ 5491 "cpu": [
5446 "arm" 5492 "arm"
5447 ], 5493 ],
@@ -5452,9 +5498,9 @@ @@ -5452,9 +5498,9 @@
5452 ] 5498 ]
5453 }, 5499 },
5454 "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { 5500 "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": {
5455 - "version": "1.6.4", 5501 + "version": "1.7.2",
5456 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.6.4.tgz", 5502 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.7.2.tgz",
5457 - "integrity": "sha512-Mem13rJYfFvBj4xlkuok0zH5qn8vTm9FEm+FyiZeRK/6AFVPc/y596HihKcHIk7djvJ4BYXs7yIZo2ezabE7IA==", 5503 + "integrity": "sha512-tjYzI9LcAXR9MYd9rO45m1s0B/6bJNuZ6jeOxo1pq1K6OBuRMMmfyvJYval3s9FPPGmrldYA3mi4gWDlWuTFGA==",
5458 "cpu": [ 5504 "cpu": [
5459 "arm" 5505 "arm"
5460 ], 5506 ],
@@ -5465,9 +5511,9 @@ @@ -5465,9 +5511,9 @@
5465 ] 5511 ]
5466 }, 5512 },
5467 "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { 5513 "node_modules/@unrs/resolver-binding-linux-arm64-gnu": {
5468 - "version": "1.6.4", 5514 + "version": "1.7.2",
5469 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.6.4.tgz", 5515 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.7.2.tgz",
5470 - "integrity": "sha512-kgyNRMgN7Z2pF2GJBHGIxhkN9e0rMOZwWORH3RjGHZnjtdrThxyQSMUGjK5MDM6+V3waPL0Kv9Y6pJnYxlvcXA==", 5516 + "integrity": "sha512-jon9M7DKRLGZ9VYSkFMflvNqu9hDtOCEnO2QAryFWgT6o6AXU8du56V7YqnaLKr6rAbZBWYsYpikF226v423QA==",
5471 "cpu": [ 5517 "cpu": [
5472 "arm64" 5518 "arm64"
5473 ], 5519 ],
@@ -5478,9 +5524,9 @@ @@ -5478,9 +5524,9 @@
5478 ] 5524 ]
5479 }, 5525 },
5480 "node_modules/@unrs/resolver-binding-linux-arm64-musl": { 5526 "node_modules/@unrs/resolver-binding-linux-arm64-musl": {
5481 - "version": "1.6.4", 5527 + "version": "1.7.2",
5482 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.6.4.tgz", 5528 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.7.2.tgz",
5483 - "integrity": "sha512-bLlGWp3Z7eiO6sytt5T3NFwiUfvIjYH9wGIVD01lnVOIBxHUjQQo+7Nv+SkZVP+Y7oySlyyrrzn5y9VFn1MLeQ==", 5529 + "integrity": "sha512-c8Cg4/h+kQ63pL43wBNaVMmOjXI/X62wQmru51qjfTvI7kmCy5uHTJvK/9LrF0G8Jdx8r34d019P1DVJmhXQpA==",
5484 "cpu": [ 5530 "cpu": [
5485 "arm64" 5531 "arm64"
5486 ], 5532 ],
@@ -5491,9 +5537,9 @@ @@ -5491,9 +5537,9 @@
5491 ] 5537 ]
5492 }, 5538 },
5493 "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { 5539 "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": {
5494 - "version": "1.6.4", 5540 + "version": "1.7.2",
5495 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.6.4.tgz", 5541 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.7.2.tgz",
5496 - "integrity": "sha512-Qt3g8MRemL9h51MCMh4BtQMNzK2JPo2CG8rVeTw8F2xKuUtLRqTsRGitOCbA6cuogv8EezBNyddKKT+bZ70W3g==", 5542 + "integrity": "sha512-A+lcwRFyrjeJmv3JJvhz5NbcCkLQL6Mk16kHTNm6/aGNc4FwPHPE4DR9DwuCvCnVHvF5IAd9U4VIs/VvVir5lg==",
5497 "cpu": [ 5543 "cpu": [
5498 "ppc64" 5544 "ppc64"
5499 ], 5545 ],
@@ -5504,9 +5550,22 @@ @@ -5504,9 +5550,22 @@
5504 ] 5550 ]
5505 }, 5551 },
5506 "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { 5552 "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": {
5507 - "version": "1.6.4", 5553 + "version": "1.7.2",
5508 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.6.4.tgz", 5554 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.7.2.tgz",
5509 - "integrity": "sha512-MFMn6TCZZkaOt90lTC+OzfGuGTcOyNDDB6gqgmHEiNUAz8sfljbhKIyms8e792J/Dsq0H1LSWcNhtMjnRZtv8g==", 5555 + "integrity": "sha512-hQQ4TJQrSQW8JlPm7tRpXN8OCNP9ez7PajJNjRD1ZTHQAy685OYqPrKjfaMw/8LiHCt8AZ74rfUVHP9vn0N69Q==",
  5556 + "cpu": [
  5557 + "riscv64"
  5558 + ],
  5559 + "license": "MIT",
  5560 + "optional": true,
  5561 + "os": [
  5562 + "linux"
  5563 + ]
  5564 + },
  5565 + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": {
  5566 + "version": "1.7.2",
  5567 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.7.2.tgz",
  5568 + "integrity": "sha512-NoAGbiqrxtY8kVooZ24i70CjLDlUFI7nDj3I9y54U94p+3kPxwd2L692YsdLa+cqQ0VoqMWoehDFp21PKRUoIQ==",
5510 "cpu": [ 5569 "cpu": [
5511 "riscv64" 5570 "riscv64"
5512 ], 5571 ],
@@ -5517,9 +5576,9 @@ @@ -5517,9 +5576,9 @@
5517 ] 5576 ]
5518 }, 5577 },
5519 "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { 5578 "node_modules/@unrs/resolver-binding-linux-s390x-gnu": {
5520 - "version": "1.6.4", 5579 + "version": "1.7.2",
5521 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.6.4.tgz", 5580 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.7.2.tgz",
5522 - "integrity": "sha512-RGV8V4VjxH8WhcAqvVuHAv85nbdU87dbcJmarXYuAUPLWC76ptJ32eGY5CM4MmmdU8NA3m4EkiBilSvzSt+BMA==", 5581 + "integrity": "sha512-KaZByo8xuQZbUhhreBTW+yUnOIHUsv04P8lKjQ5otiGoSJ17ISGYArc+4vKdLEpGaLbemGzr4ZeUbYQQsLWFjA==",
5523 "cpu": [ 5582 "cpu": [
5524 "s390x" 5583 "s390x"
5525 ], 5584 ],
@@ -5530,9 +5589,9 @@ @@ -5530,9 +5589,9 @@
5530 ] 5589 ]
5531 }, 5590 },
5532 "node_modules/@unrs/resolver-binding-linux-x64-gnu": { 5591 "node_modules/@unrs/resolver-binding-linux-x64-gnu": {
5533 - "version": "1.6.4", 5592 + "version": "1.7.2",
5534 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.6.4.tgz", 5593 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.7.2.tgz",
5535 - "integrity": "sha512-9SWe0F8kD7+4oD1dLvyHiVXN77PrBKbo46JVuwiCGtv3HnbSgNpjyl/9N4xqsXQScERwRWS6qjjA8fTaedwjRQ==", 5594 + "integrity": "sha512-dEidzJDubxxhUCBJ/SHSMJD/9q7JkyfBMT77Px1npl4xpg9t0POLvnWywSk66BgZS/b2Hy9Y1yFaoMTFJUe9yg==",
5536 "cpu": [ 5595 "cpu": [
5537 "x64" 5596 "x64"
5538 ], 5597 ],
@@ -5543,9 +5602,9 @@ @@ -5543,9 +5602,9 @@
5543 ] 5602 ]
5544 }, 5603 },
5545 "node_modules/@unrs/resolver-binding-linux-x64-musl": { 5604 "node_modules/@unrs/resolver-binding-linux-x64-musl": {
5546 - "version": "1.6.4", 5605 + "version": "1.7.2",
5547 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.6.4.tgz", 5606 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.7.2.tgz",
5548 - "integrity": "sha512-EJP5VyeRTPHqm1CEVoeAcGY7z6fmvAl8MGi06NFxdvczRRwazg0SZre+kzYis/Px4jZY6nZwBXMsHamyY0CELg==", 5607 + "integrity": "sha512-RvP+Ux3wDjmnZDT4XWFfNBRVG0fMsc+yVzNFUqOflnDfZ9OYujv6nkh+GOr+watwrW4wdp6ASfG/e7bkDradsw==",
5549 "cpu": [ 5608 "cpu": [
5550 "x64" 5609 "x64"
5551 ], 5610 ],
@@ -5556,9 +5615,9 @@ @@ -5556,9 +5615,9 @@
5556 ] 5615 ]
5557 }, 5616 },
5558 "node_modules/@unrs/resolver-binding-wasm32-wasi": { 5617 "node_modules/@unrs/resolver-binding-wasm32-wasi": {
5559 - "version": "1.6.4", 5618 + "version": "1.7.2",
5560 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.6.4.tgz", 5619 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.7.2.tgz",
5561 - "integrity": "sha512-/Igzy4K6QTajH0m1PesWaYyor/USENYiX7PQQHHsVvewX9rx2mUwpH0ckOLXKpnLNghm+mzDcEufdgFsZQEK3A==", 5620 + "integrity": "sha512-y797JBmO9IsvXVRCKDXOxjyAE4+CcZpla2GSoBQ33TVb3ILXuFnMrbR/QQZoauBYeOFuu4w3ifWLw52sdHGz6g==",
5562 "cpu": [ 5621 "cpu": [
5563 "wasm32" 5622 "wasm32"
5564 ], 5623 ],
@@ -5572,9 +5631,9 @@ @@ -5572,9 +5631,9 @@
5572 } 5631 }
5573 }, 5632 },
5574 "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { 5633 "node_modules/@unrs/resolver-binding-win32-arm64-msvc": {
5575 - "version": "1.6.4", 5634 + "version": "1.7.2",
5576 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.6.4.tgz", 5635 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.7.2.tgz",
5577 - "integrity": "sha512-MXx3CyX+XbNJm5HXgZrkiL1JbizaRbpEE1GnXYxIOjfBDFqzWl4tge5Fdp+sBtGeGPB42q6ZBnECEa/tzSWa6A==", 5636 + "integrity": "sha512-gtYTh4/VREVSLA+gHrfbWxaMO/00y+34htY7XpioBTy56YN2eBjkPrY1ML1Zys89X3RJDKVaogzwxlM1qU7egg==",
5578 "cpu": [ 5637 "cpu": [
5579 "arm64" 5638 "arm64"
5580 ], 5639 ],
@@ -5585,9 +5644,9 @@ @@ -5585,9 +5644,9 @@
5585 ] 5644 ]
5586 }, 5645 },
5587 "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { 5646 "node_modules/@unrs/resolver-binding-win32-ia32-msvc": {
5588 - "version": "1.6.4", 5647 + "version": "1.7.2",
5589 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.6.4.tgz", 5648 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.7.2.tgz",
5590 - "integrity": "sha512-ZDIZ4HMZI8GNEUfBaM844O0LfguwDBvpu7orTv+9kxPOAW/6Cxyh768f/qlHIl8Xp0AHZOSJKLc1UneMdt9O6w==", 5649 + "integrity": "sha512-Ywv20XHvHTDRQs12jd3MY8X5C8KLjDbg/jyaal/QLKx3fAShhJyD4blEANInsjxW3P7isHx1Blt56iUDDJO3jg==",
5591 "cpu": [ 5650 "cpu": [
5592 "ia32" 5651 "ia32"
5593 ], 5652 ],
@@ -5598,9 +5657,9 @@ @@ -5598,9 +5657,9 @@
5598 ] 5657 ]
5599 }, 5658 },
5600 "node_modules/@unrs/resolver-binding-win32-x64-msvc": { 5659 "node_modules/@unrs/resolver-binding-win32-x64-msvc": {
5601 - "version": "1.6.4", 5660 + "version": "1.7.2",
5602 - "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.6.4.tgz", 5661 + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.7.2.tgz",
5603 - "integrity": "sha512-jZIMKjruJy9ddDIZBLGzyi2rqfRzi3lNQkQTuaQkcpUMSy+HValMS/fvRHZIB0BGw/fdu2uCDfpxB6dNwB1Ung==", 5662 + "integrity": "sha512-friS8NEQfHaDbkThxopGk+LuE5v3iY0StruifjQEt7SLbA46OnfgMO15sOTkbpJkol6RB+1l1TYPXh0sCddpvA==",
5604 "cpu": [ 5663 "cpu": [
5605 "x64" 5664 "x64"
5606 ], 5665 ],
@@ -7716,9 +7775,9 @@ @@ -7716,9 +7775,9 @@
7716 } 7775 }
7717 }, 7776 },
7718 "node_modules/core-js-compat": { 7777 "node_modules/core-js-compat": {
7719 - "version": "3.41.0", 7778 + "version": "3.42.0",
7720 - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.41.0.tgz", 7779 + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.42.0.tgz",
7721 - "integrity": "sha512-RFsU9LySVue9RTwdDVX/T0e2Y6jRYWXERKElIjpuEOEnxaXffI0X7RUwVzfYLfzuLXSNJDYoRYUAmRUcyln20A==", 7780 + "integrity": "sha512-bQasjMfyDGyaeWKBIu33lHh9qlSR0MFE/Nmc6nMjf/iU9b3rSMdAYz1Baxrv4lPdGUsTqZudHA4jIGSJy0SWZQ==",
7722 "license": "MIT", 7781 "license": "MIT",
7723 "dependencies": { 7782 "dependencies": {
7724 "browserslist": "^4.24.4" 7783 "browserslist": "^4.24.4"
@@ -8492,18 +8551,6 @@ @@ -8492,18 +8551,6 @@
8492 "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", 8551 "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
8493 "license": "MIT" 8552 "license": "MIT"
8494 }, 8553 },
8495 - "node_modules/doctrine": {  
8496 - "version": "3.0.0",  
8497 - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",  
8498 - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",  
8499 - "license": "Apache-2.0",  
8500 - "dependencies": {  
8501 - "esutils": "^2.0.2"  
8502 - },  
8503 - "engines": {  
8504 - "node": ">=6.0.0"  
8505 - }  
8506 - },  
8507 "node_modules/dom-serializer": { 8554 "node_modules/dom-serializer": {
8508 "version": "2.0.0", 8555 "version": "2.0.0",
8509 "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", 8556 "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
@@ -9028,16 +9075,14 @@ @@ -9028,16 +9075,14 @@
9028 } 9075 }
9029 }, 9076 },
9030 "node_modules/eslint-plugin-import-x": { 9077 "node_modules/eslint-plugin-import-x": {
9031 - "version": "4.10.6", 9078 + "version": "4.11.1",
9032 - "resolved": "https://registry.npmjs.org/eslint-plugin-import-x/-/eslint-plugin-import-x-4.10.6.tgz", 9079 + "resolved": "https://registry.npmjs.org/eslint-plugin-import-x/-/eslint-plugin-import-x-4.11.1.tgz",
9033 - "integrity": "sha512-sWIaoezWK7kuPA7u29ULsO8WzlYYC8uivaipsazyHiZDykjNsuPtwRsYZIK2luqc5wppwXOop8iFdW7xffo/Xw==", 9080 + "integrity": "sha512-CiqREASJRnhwCB0NujkTdo4jU+cJAnhQrd4aCnWC1o+rYWIWakVbyuzVbnCriUUSLAnn5CoJ2ob36TEgNzejBQ==",
9034 "license": "MIT", 9081 "license": "MIT",
9035 "dependencies": { 9082 "dependencies": {
9036 - "@pkgr/core": "^0.2.4", 9083 + "@typescript-eslint/utils": "^8.31.0",
9037 - "@types/doctrine": "^0.0.9", 9084 + "comment-parser": "^1.4.1",
9038 - "@typescript-eslint/utils": "^8.30.1",  
9039 "debug": "^4.4.0", 9085 "debug": "^4.4.0",
9040 - "doctrine": "^3.0.0",  
9041 "eslint-import-resolver-node": "^0.3.9", 9086 "eslint-import-resolver-node": "^0.3.9",
9042 "get-tsconfig": "^4.10.0", 9087 "get-tsconfig": "^4.10.0",
9043 "is-glob": "^4.0.3", 9088 "is-glob": "^4.0.3",
@@ -9045,7 +9090,7 @@ @@ -9045,7 +9090,7 @@
9045 "semver": "^7.7.1", 9090 "semver": "^7.7.1",
9046 "stable-hash": "^0.0.5", 9091 "stable-hash": "^0.0.5",
9047 "tslib": "^2.8.1", 9092 "tslib": "^2.8.1",
9048 - "unrs-resolver": "^1.6.0" 9093 + "unrs-resolver": "^1.7.0"
9049 }, 9094 },
9050 "engines": { 9095 "engines": {
9051 "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 9096 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -9058,9 +9103,9 @@ @@ -9058,9 +9103,9 @@
9058 } 9103 }
9059 }, 9104 },
9060 "node_modules/eslint-plugin-jsdoc": { 9105 "node_modules/eslint-plugin-jsdoc": {
9061 - "version": "50.6.9", 9106 + "version": "50.6.14",
9062 - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.9.tgz", 9107 + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.14.tgz",
9063 - "integrity": "sha512-7/nHu3FWD4QRG8tCVqcv+BfFtctUtEDWc29oeDXB4bwmDM2/r1ndl14AG/2DUntdqH7qmpvdemJKwb3R97/QEw==", 9108 + "integrity": "sha512-JUudvooQbUx3iB8n/MzXMOV/VtaXq7xL4CeXhYryinr8osck7nV6fE2/xUXTiH3epPXcvq6TE3HQfGQuRHErTQ==",
9064 "license": "BSD-3-Clause", 9109 "license": "BSD-3-Clause",
9065 "dependencies": { 9110 "dependencies": {
9066 "@es-joy/jsdoccomment": "~0.49.0", 9111 "@es-joy/jsdoccomment": "~0.49.0",
@@ -9070,10 +9115,9 @@ @@ -9070,10 +9115,9 @@
9070 "escape-string-regexp": "^4.0.0", 9115 "escape-string-regexp": "^4.0.0",
9071 "espree": "^10.1.0", 9116 "espree": "^10.1.0",
9072 "esquery": "^1.6.0", 9117 "esquery": "^1.6.0",
9073 - "parse-imports": "^2.1.1", 9118 + "parse-imports-exports": "^0.2.4",
9074 "semver": "^7.6.3", 9119 "semver": "^7.6.3",
9075 - "spdx-expression-parse": "^4.0.0", 9120 + "spdx-expression-parse": "^4.0.0"
9076 - "synckit": "^0.9.1"  
9077 }, 9121 },
9078 "engines": { 9122 "engines": {
9079 "node": ">=18" 9123 "node": ">=18"
@@ -9220,9 +9264,9 @@ @@ -9220,9 +9264,9 @@
9220 } 9264 }
9221 }, 9265 },
9222 "node_modules/eslint-plugin-unicorn/node_modules/globals": { 9266 "node_modules/eslint-plugin-unicorn/node_modules/globals": {
9223 - "version": "16.0.0", 9267 + "version": "16.1.0",
9224 - "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", 9268 + "resolved": "https://registry.npmjs.org/globals/-/globals-16.1.0.tgz",
9225 - "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", 9269 + "integrity": "sha512-aibexHNbb/jiUSObBgpHLj+sIuUmJnYcgXBlrfsiDZ9rt4aF2TFRbyLgZ2iFQuVZ1K5Mx3FVkbKRSgKrbK3K2g==",
9226 "license": "MIT", 9270 "license": "MIT",
9227 "engines": { 9271 "engines": {
9228 "node": ">=18" 9272 "node": ">=18"
@@ -9247,9 +9291,9 @@ @@ -9247,9 +9291,9 @@
9247 } 9291 }
9248 }, 9292 },
9249 "node_modules/eslint-plugin-vue": { 9293 "node_modules/eslint-plugin-vue": {
9250 - "version": "10.0.0", 9294 + "version": "10.1.0",
9251 - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-10.0.0.tgz", 9295 + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-10.1.0.tgz",
9252 - "integrity": "sha512-XKckedtajqwmaX6u1VnECmZ6xJt+YvlmMzBPZd+/sI3ub2lpYZyFnsyWo7c3nMOQKJQudeyk1lw/JxdgeKT64w==", 9296 + "integrity": "sha512-/VTiJ1eSfNLw6lvG9ENySbGmcVvz6wZ9nA7ZqXlLBY2RkaF15iViYKxglWiIch12KiLAj0j1iXPYU6W4wTROFA==",
9253 "license": "MIT", 9297 "license": "MIT",
9254 "dependencies": { 9298 "dependencies": {
9255 "@eslint-community/eslint-utils": "^4.4.0", 9299 "@eslint-community/eslint-utils": "^4.4.0",
@@ -9337,6 +9381,15 @@ @@ -9337,6 +9381,15 @@
9337 "url": "https://opencollective.com/eslint" 9381 "url": "https://opencollective.com/eslint"
9338 } 9382 }
9339 }, 9383 },
  9384 + "node_modules/eslint/node_modules/@eslint/js": {
  9385 + "version": "9.25.1",
  9386 + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.25.1.tgz",
  9387 + "integrity": "sha512-dEIwmjntEx8u3Uvv+kr3PDeeArL8Hw07H9kyYxCjnM9pBjfEhk6uLXSchxxzgiwtRhhzVzqmUSDFBOi1TuZ7qg==",
  9388 + "license": "MIT",
  9389 + "engines": {
  9390 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
  9391 + }
  9392 + },
9340 "node_modules/eslint/node_modules/brace-expansion": { 9393 "node_modules/eslint/node_modules/brace-expansion": {
9341 "version": "1.1.11", 9394 "version": "1.1.11",
9342 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 9395 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -10701,9 +10754,9 @@ @@ -10701,9 +10754,9 @@
10701 "license": "BSD-3-Clause" 10754 "license": "BSD-3-Clause"
10702 }, 10755 },
10703 "node_modules/ignore": { 10756 "node_modules/ignore": {
10704 - "version": "7.0.3", 10757 + "version": "7.0.4",
10705 - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz", 10758 + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz",
10706 - "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==", 10759 + "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==",
10707 "license": "MIT", 10760 "license": "MIT",
10708 "engines": { 10761 "engines": {
10709 "node": ">= 4" 10762 "node": ">= 4"
@@ -12900,9 +12953,9 @@ @@ -12900,9 +12953,9 @@
12900 "optional": true 12953 "optional": true
12901 }, 12954 },
12902 "node_modules/napi-postinstall": { 12955 "node_modules/napi-postinstall": {
12903 - "version": "0.1.5", 12956 + "version": "0.2.4",
12904 - "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.1.5.tgz", 12957 + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.2.4.tgz",
12905 - "integrity": "sha512-HI5bHONOUYqV+FJvueOSgjRxHTLB25a3xIv59ugAxFe7xRNbW96hyYbMbsKzl+QvFV9mN/SrtHwiU+vYhMwA7Q==", 12958 + "integrity": "sha512-ZEzHJwBhZ8qQSbknHqYcdtQVr8zUgGyM/q6h6qAyhtyVMNrSgDhrC4disf03dYW0e+czXyLnZINnCTEkWy0eJg==",
12906 "license": "MIT", 12959 "license": "MIT",
12907 "bin": { 12960 "bin": {
12908 "napi-postinstall": "lib/cli.js" 12961 "napi-postinstall": "lib/cli.js"
@@ -13734,9 +13787,9 @@ @@ -13734,9 +13787,9 @@
13734 "license": "BlueOak-1.0.0" 13787 "license": "BlueOak-1.0.0"
13735 }, 13788 },
13736 "node_modules/package-manager-detector": { 13789 "node_modules/package-manager-detector": {
13737 - "version": "1.2.0", 13790 + "version": "1.3.0",
13738 - "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-1.2.0.tgz", 13791 + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-1.3.0.tgz",
13739 - "integrity": "sha512-PutJepsOtsqVfUsxCzgTTpyXmiAgvKptIgY4th5eq5UXXFhj5PxfQ9hnGkypMeovpAvVshFRItoFHYO18TCOqA==", 13792 + "integrity": "sha512-ZsEbbZORsyHuO00lY1kV3/t72yp6Ysay6Pd17ZAlNGuGwmWDLCJxFpRs0IzfXfj1o4icJOkUEioexFHzyPurSQ==",
13740 "license": "MIT" 13793 "license": "MIT"
13741 }, 13794 },
13742 "node_modules/parent-module": { 13795 "node_modules/parent-module": {
@@ -13751,17 +13804,13 @@ @@ -13751,17 +13804,13 @@
13751 "node": ">=6" 13804 "node": ">=6"
13752 } 13805 }
13753 }, 13806 },
13754 - "node_modules/parse-imports": { 13807 + "node_modules/parse-imports-exports": {
13755 - "version": "2.2.1", 13808 + "version": "0.2.4",
13756 - "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.2.1.tgz", 13809 + "resolved": "https://registry.npmjs.org/parse-imports-exports/-/parse-imports-exports-0.2.4.tgz",
13757 - "integrity": "sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==", 13810 + "integrity": "sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==",
13758 - "license": "Apache-2.0 AND MIT", 13811 + "license": "MIT",
13759 "dependencies": { 13812 "dependencies": {
13760 - "es-module-lexer": "^1.5.3", 13813 + "parse-statements": "1.0.11"
13761 - "slashes": "^3.0.12"  
13762 - },  
13763 - "engines": {  
13764 - "node": ">= 18"  
13765 } 13814 }
13766 }, 13815 },
13767 "node_modules/parse-json": { 13816 "node_modules/parse-json": {
@@ -13790,6 +13839,12 @@ @@ -13790,6 +13839,12 @@
13790 "protocols": "^2.0.0" 13839 "protocols": "^2.0.0"
13791 } 13840 }
13792 }, 13841 },
  13842 + "node_modules/parse-statements": {
  13843 + "version": "1.0.11",
  13844 + "resolved": "https://registry.npmjs.org/parse-statements/-/parse-statements-1.0.11.tgz",
  13845 + "integrity": "sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==",
  13846 + "license": "MIT"
  13847 + },
13793 "node_modules/parse-url": { 13848 "node_modules/parse-url": {
13794 "version": "9.2.0", 13849 "version": "9.2.0",
13795 "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-9.2.0.tgz", 13850 "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-9.2.0.tgz",
@@ -16139,12 +16194,6 @@ @@ -16139,12 +16194,6 @@
16139 "url": "https://github.com/sponsors/sindresorhus" 16194 "url": "https://github.com/sponsors/sindresorhus"
16140 } 16195 }
16141 }, 16196 },
16142 - "node_modules/slashes": {  
16143 - "version": "3.0.12",  
16144 - "resolved": "https://registry.npmjs.org/slashes/-/slashes-3.0.12.tgz",  
16145 - "integrity": "sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==",  
16146 - "license": "ISC"  
16147 - },  
16148 "node_modules/smob": { 16197 "node_modules/smob": {
16149 "version": "1.5.0", 16198 "version": "1.5.0",
16150 "resolved": "https://registry.npmjs.org/smob/-/smob-1.5.0.tgz", 16199 "resolved": "https://registry.npmjs.org/smob/-/smob-1.5.0.tgz",
@@ -16622,34 +16671,6 @@ @@ -16622,34 +16671,6 @@
16622 "dev": true, 16671 "dev": true,
16623 "license": "MIT" 16672 "license": "MIT"
16624 }, 16673 },
16625 - "node_modules/synckit": {  
16626 - "version": "0.9.2",  
16627 - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz",  
16628 - "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==",  
16629 - "license": "MIT",  
16630 - "dependencies": {  
16631 - "@pkgr/core": "^0.1.0",  
16632 - "tslib": "^2.6.2"  
16633 - },  
16634 - "engines": {  
16635 - "node": "^14.18.0 || >=16.0.0"  
16636 - },  
16637 - "funding": {  
16638 - "url": "https://opencollective.com/unts"  
16639 - }  
16640 - },  
16641 - "node_modules/synckit/node_modules/@pkgr/core": {  
16642 - "version": "0.1.2",  
16643 - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz",  
16644 - "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==",  
16645 - "license": "MIT",  
16646 - "engines": {  
16647 - "node": "^12.20.0 || ^14.18.0 || >=16.0.0"  
16648 - },  
16649 - "funding": {  
16650 - "url": "https://opencollective.com/unts"  
16651 - }  
16652 - },  
16653 "node_modules/system-architecture": { 16674 "node_modules/system-architecture": {
16654 "version": "0.1.0", 16675 "version": "0.1.0",
16655 "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz", 16676 "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz",
@@ -17352,6 +17373,29 @@ @@ -17352,6 +17373,29 @@
17352 "node": ">=14.17" 17373 "node": ">=14.17"
17353 } 17374 }
17354 }, 17375 },
  17376 + "node_modules/typescript-eslint": {
  17377 + "version": "8.32.1",
  17378 + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.32.1.tgz",
  17379 + "integrity": "sha512-D7el+eaDHAmXvrZBy1zpzSNIRqnCOrkwTgZxTu3MUqRWk8k0q9m9Ho4+vPf7iHtgUfrK/o8IZaEApsxPlHTFCg==",
  17380 + "dev": true,
  17381 + "license": "MIT",
  17382 + "dependencies": {
  17383 + "@typescript-eslint/eslint-plugin": "8.32.1",
  17384 + "@typescript-eslint/parser": "8.32.1",
  17385 + "@typescript-eslint/utils": "8.32.1"
  17386 + },
  17387 + "engines": {
  17388 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
  17389 + },
  17390 + "funding": {
  17391 + "type": "opencollective",
  17392 + "url": "https://opencollective.com/typescript-eslint"
  17393 + },
  17394 + "peerDependencies": {
  17395 + "eslint": "^8.57.0 || ^9.0.0",
  17396 + "typescript": ">=4.8.4 <5.9.0"
  17397 + }
  17398 + },
17355 "node_modules/ufo": { 17399 "node_modules/ufo": {
17356 "version": "1.6.1", 17400 "version": "1.6.1",
17357 "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", 17401 "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz",
@@ -17569,34 +17613,35 @@ @@ -17569,34 +17613,35 @@
17569 } 17613 }
17570 }, 17614 },
17571 "node_modules/unrs-resolver": { 17615 "node_modules/unrs-resolver": {
17572 - "version": "1.6.4", 17616 + "version": "1.7.2",
17573 - "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.6.4.tgz", 17617 + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.7.2.tgz",
17574 - "integrity": "sha512-Fb6KH4pQK0XjR5PdRW8BEzsQmbYjkeRHF3IIIZtOVXVFM6Nh+Gb2fQh23Ba7qaYloDp+Aa8/JeNqyImJ8xHlkQ==", 17618 + "integrity": "sha512-BBKpaylOW8KbHsu378Zky/dGh4ckT/4NW/0SHRABdqRLcQJ2dAOjDo9g97p04sWflm0kqPqpUatxReNV/dqI5A==",
17575 "hasInstallScript": true, 17619 "hasInstallScript": true,
17576 "license": "MIT", 17620 "license": "MIT",
17577 "dependencies": { 17621 "dependencies": {
17578 - "napi-postinstall": "^0.1.5" 17622 + "napi-postinstall": "^0.2.2"
17579 }, 17623 },
17580 "funding": { 17624 "funding": {
17581 "url": "https://github.com/sponsors/JounQin" 17625 "url": "https://github.com/sponsors/JounQin"
17582 }, 17626 },
17583 "optionalDependencies": { 17627 "optionalDependencies": {
17584 - "@unrs/resolver-binding-darwin-arm64": "1.6.4", 17628 + "@unrs/resolver-binding-darwin-arm64": "1.7.2",
17585 - "@unrs/resolver-binding-darwin-x64": "1.6.4", 17629 + "@unrs/resolver-binding-darwin-x64": "1.7.2",
17586 - "@unrs/resolver-binding-freebsd-x64": "1.6.4", 17630 + "@unrs/resolver-binding-freebsd-x64": "1.7.2",
17587 - "@unrs/resolver-binding-linux-arm-gnueabihf": "1.6.4", 17631 + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.7.2",
17588 - "@unrs/resolver-binding-linux-arm-musleabihf": "1.6.4", 17632 + "@unrs/resolver-binding-linux-arm-musleabihf": "1.7.2",
17589 - "@unrs/resolver-binding-linux-arm64-gnu": "1.6.4", 17633 + "@unrs/resolver-binding-linux-arm64-gnu": "1.7.2",
17590 - "@unrs/resolver-binding-linux-arm64-musl": "1.6.4", 17634 + "@unrs/resolver-binding-linux-arm64-musl": "1.7.2",
17591 - "@unrs/resolver-binding-linux-ppc64-gnu": "1.6.4", 17635 + "@unrs/resolver-binding-linux-ppc64-gnu": "1.7.2",
17592 - "@unrs/resolver-binding-linux-riscv64-gnu": "1.6.4", 17636 + "@unrs/resolver-binding-linux-riscv64-gnu": "1.7.2",
17593 - "@unrs/resolver-binding-linux-s390x-gnu": "1.6.4", 17637 + "@unrs/resolver-binding-linux-riscv64-musl": "1.7.2",
17594 - "@unrs/resolver-binding-linux-x64-gnu": "1.6.4", 17638 + "@unrs/resolver-binding-linux-s390x-gnu": "1.7.2",
17595 - "@unrs/resolver-binding-linux-x64-musl": "1.6.4", 17639 + "@unrs/resolver-binding-linux-x64-gnu": "1.7.2",
17596 - "@unrs/resolver-binding-wasm32-wasi": "1.6.4", 17640 + "@unrs/resolver-binding-linux-x64-musl": "1.7.2",
17597 - "@unrs/resolver-binding-win32-arm64-msvc": "1.6.4", 17641 + "@unrs/resolver-binding-wasm32-wasi": "1.7.2",
17598 - "@unrs/resolver-binding-win32-ia32-msvc": "1.6.4", 17642 + "@unrs/resolver-binding-win32-arm64-msvc": "1.7.2",
17599 - "@unrs/resolver-binding-win32-x64-msvc": "1.6.4" 17643 + "@unrs/resolver-binding-win32-ia32-msvc": "1.7.2",
  17644 + "@unrs/resolver-binding-win32-x64-msvc": "1.7.2"
17600 } 17645 }
17601 }, 17646 },
17602 "node_modules/unstorage": { 17647 "node_modules/unstorage": {
@@ -51,6 +51,7 @@ @@ -51,6 +51,7 @@
51 "jsdom": "^26.1.0", 51 "jsdom": "^26.1.0",
52 "playwright-core": "^1.52.0", 52 "playwright-core": "^1.52.0",
53 "prettier": "^3.5.3", 53 "prettier": "^3.5.3",
  54 + "typescript-eslint": "^8.32.1",
54 "vitest": "^3.1.2" 55 "vitest": "^3.1.2"
55 } 56 }
56 } 57 }
@@ -153,16 +153,9 @@ onMounted(() => { @@ -153,16 +153,9 @@ onMounted(() => {
153 <ui-components-skeleton-movie-detail-loader v-if="isLoading" /> 153 <ui-components-skeleton-movie-detail-loader v-if="isLoading" />
154 154
155 <!-- Contenu du film --> 155 <!-- Contenu du film -->
156 - <div 156 + <div v-else-if="movie" class="relative">
157 - v-else-if="movie"  
158 - class="relative"  
159 - >  
160 <!-- Backdrop image --> 157 <!-- Backdrop image -->
161 - <ui-components-backdrop-image 158 + <ui-components-backdrop-image v-if="movie.backdrop_path" :src="movie.backdrop_path" :title="movie.title" />
162 - v-if="movie.backdrop_path"  
163 - :src="movie.backdrop_path"  
164 - :title="movie.title"  
165 - />  
166 159
167 <!-- Contenu principal --> 160 <!-- Contenu principal -->
168 <div class="container mx-auto px-4 py-8 relative z-10 pt-20"> 161 <div class="container mx-auto px-4 py-8 relative z-10 pt-20">
@@ -170,64 +163,41 @@ onMounted(() => { @@ -170,64 +163,41 @@ onMounted(() => {
170 class="flex items-center text-gray-400 hover:text-white mb-8 transition-colors" 163 class="flex items-center text-gray-400 hover:text-white mb-8 transition-colors"
171 @click="navigateTo('/')" 164 @click="navigateTo('/')"
172 > 165 >
173 - <ArrowLeftIcon 166 + <ArrowLeftIcon :size="20" class="mr-2" />
174 - :size="20"  
175 - class="mr-2"  
176 - />  
177 Retour 167 Retour
178 </button> 168 </button>
179 169
180 <div class="flex flex-col md:flex-row gap-8"> 170 <div class="flex flex-col md:flex-row gap-8">
181 <!-- Poster --> 171 <!-- Poster -->
182 - <ui-components-poster 172 + <ui-components-poster v-if="movie.poster_path" :src="movie.poster_path" :title="movie.title" />
183 - v-if="movie.poster_path"  
184 - :src="movie.poster_path"  
185 - :title="movie.title"  
186 - />  
187 173
188 <!-- Informations du film --> 174 <!-- Informations du film -->
189 <section class="w-full md:w-2/3 lg:w-3/4"> 175 <section class="w-full md:w-2/3 lg:w-3/4">
190 <h1 class="text-3xl md:text-4xl font-bold mb-2"> 176 <h1 class="text-3xl md:text-4xl font-bold mb-2">
191 {{ movie.title }} 177 {{ movie.title }}
192 </h1> 178 </h1>
193 - <p 179 + <p v-if="movie.release_date" class="text-gray-400 mb-4">
194 - v-if="movie.release_date"  
195 - class="text-gray-400 mb-4"  
196 - >  
197 {{ useDateFormat(movie.release_date, "DD-MM-YYYY") }} • {{ formatRuntime(movie.runtime) }} 180 {{ useDateFormat(movie.release_date, "DD-MM-YYYY") }} • {{ formatRuntime(movie.runtime) }}
198 </p> 181 </p>
199 182
200 <!-- Note et votes --> 183 <!-- Note et votes -->
201 - <details-score-and-vote 184 + <details-score-and-vote :nb-vote="movie.vote_count" :score="movie.vote_average" />
202 - :nb-vote="movie.vote_count"  
203 - :score="movie.vote_average"  
204 - />  
205 185
206 <!-- Genres --> 186 <!-- Genres -->
207 <details-movie-gender :genres="movie.genres" /> 187 <details-movie-gender :genres="movie.genres" />
208 188
209 <!-- Synopsis --> 189 <!-- Synopsis -->
210 <div class="mb-6"> 190 <div class="mb-6">
211 - <h2 class="text-xl font-bold mb-2"> 191 + <h2 class="text-xl font-bold mb-2">Synopsis</h2>
212 - Synopsis  
213 - </h2>  
214 <p class="text-gray-300"> 192 <p class="text-gray-300">
215 {{ movie.overview || "Aucun synopsis disponible." }} 193 {{ movie.overview || "Aucun synopsis disponible." }}
216 </p> 194 </p>
217 </div> 195 </div>
218 196
219 <!-- Réalisateur et têtes d'affiche --> 197 <!-- Réalisateur et têtes d'affiche -->
220 - <div 198 + <div v-if="movie.credit" class="mb-6">
221 - v-if="movie.credit" 199 + <h2 class="text-xl font-bold mb-2">Équipe</h2>
222 - class="mb-6" 200 + <div v-if="director" class="mb-2">
223 - >  
224 - <h2 class="text-xl font-bold mb-2">  
225 - Équipe  
226 - </h2>  
227 - <div  
228 - v-if="director"  
229 - class="mb-2"  
230 - >  
231 <span class="font-semibold">Réalisateur:</span> {{ director.name }} 201 <span class="font-semibold">Réalisateur:</span> {{ director.name }}
232 </div> 202 </div>
233 <div v-if="movie.credit.cast.length > 0"> 203 <div v-if="movie.credit.cast.length > 0">
@@ -242,9 +212,7 @@ onMounted(() => { @@ -242,9 +212,7 @@ onMounted(() => {
242 </div> 212 </div>
243 </div> 213 </div>
244 <!-- Comments form. --> 214 <!-- Comments form. -->
245 - <h3 class="text-xl font-bold mt-8 mb-4"> 215 + <h3 class="text-xl font-bold mt-8 mb-4">Ajouter un commentaire</h3>
246 - Ajouter un commentaire  
247 - </h3>  
248 <form-movie-comment-form @event:submit="handleSubmitEvent" /> 216 <form-movie-comment-form @event:submit="handleSubmitEvent" />
249 217
250 <!-- Liste des commentaires --> 218 <!-- Liste des commentaires -->
@@ -255,20 +223,10 @@ onMounted(() => { @@ -255,20 +223,10 @@ onMounted(() => {
255 </div> 223 </div>
256 224
257 <!-- Erreur --> 225 <!-- Erreur -->
258 - <section 226 + <section v-else class="container mx-auto px-4 py-16 text-center">
259 - v-else 227 + <AlertTriangleIcon :size="64" class="mx-auto mb-4 text-red-500" />
260 - class="container mx-auto px-4 py-16 text-center" 228 + <h2 class="text-2xl font-bold mb-2">Film non trouvé</h2>
261 - > 229 + <p class="text-gray-400 mb-6">Nous n'avons pas pu trouver le film que vous cherchez.</p>
262 - <AlertTriangleIcon  
263 - :size="64"  
264 - class="mx-auto mb-4 text-red-500"  
265 - />  
266 - <h2 class="text-2xl font-bold mb-2">  
267 - Film non trouvé  
268 - </h2>  
269 - <p class="text-gray-400 mb-6">  
270 - Nous n'avons pas pu trouver le film que vous cherchez.  
271 - </p>  
272 <button 230 <button
273 class="px-6 py-2 bg-primary text-white font-bold rounded-md hover:bg-primary-dark transition-colors" 231 class="px-6 py-2 bg-primary text-white font-bold rounded-md hover:bg-primary-dark transition-colors"
274 @click="navigateTo('/')" 232 @click="navigateTo('/')"