Bruno Predot

Merge tag '0.5.1' into develop

0.5.1
0.5.1:
- Mise à jour de dépendances.
- Personnalisation d'une règle concernant les v-slot dans le fichier eslint.config.mjs.
- Configuration d'un proxy pour tmdb via nitro dans le fichier nuxt.config.
- Adaptation des routes pour les requêtes vers tmdb dans le composable useTMDB, afin de déclencher le proxy et modification de l'interceptor onRequest du plugin oFetch afin de supprimer l'hydratation de la baseUrl et ne conserver que l'ajout de la config du header Authorization avec le déclencheur de resquest /tmdb.
0.5.0:
- Mise en place du plugin oFetch pour personnaliser la gestion des requêtes.
- Ajout interface/response/TMDB.
... ...
... ... @@ -11,7 +11,7 @@ export function useTMDB() {
* @param page
*/
const fetchPopularMovies = async (page: number) => {
const { data, status, error, execute } = await useFetch(`/movie/popular`, {
const { data, status, error, execute } = await useFetch(`/tmdb/movie/popular`, {
params: { ...paramsBase, page },
});
if (unref(status) === "idle") await execute();
... ... @@ -25,7 +25,7 @@ export function useTMDB() {
* @param page
*/
const searchMovies = async (query: string, page: number) => {
const { data, status, error, execute } = await useFetch(`/search/movie`, {
const { data, status, error, execute } = await useFetch(`/tmdb/search/movie`, {
params: { ...paramsBase, page, query: encodeURIComponent(query) },
});
if (unref(status) === "idle") await execute();
... ... @@ -38,7 +38,7 @@ export function useTMDB() {
* @param id
*/
const fetchMovieDetails = async (id: number | string) => {
const { data, status, error, execute } = await useFetch(`/movie/${id}`, {
const { data, status, error, execute } = await useFetch(`/tmdb/movie/${id}`, {
params: { ...paramsBase },
});
if (unref(status) === "idle") await execute();
... ... @@ -50,7 +50,7 @@ export function useTMDB() {
* Fetch movie credits
*/
const fetchMovieCredits = async (id: number | string) => {
const { data, status, error, execute } = await useFetch(`/movie/${id}/credits`, {
const { data, status, error, execute } = await useFetch(`/tmdb/movie/${id}/credits`, {
params: { ...paramsBase },
});
if (unref(status) === "idle") await execute();
... ...
... ... @@ -28,6 +28,7 @@ export default antfu({
rules: {
"antfu/if-newline": 0,
"antfu/curly": 0,
"vue/valid-v-slot": 0,
},
// Enable stylistic formatting rules.
... ...
... ... @@ -55,6 +55,16 @@ export default defineNuxtConfig({
"@vueuse/nuxt",
"vuetify-nuxt-module",
],
nitro: {
devProxy: {
"/tmdb/": {
target: process.env.NUXT_ENV_TMDB_URL,
changeOrigin: true,
},
},
},
// Persisted state config.
piniaPluginPersistedstate: {
storage: "localStorage",
... ...
This diff is collapsed. Click to expand it.
{
"name": "nuxt-app",
"version": "0.5.0",
"version": "0.5.1",
"private": true,
"type": "module",
"scripts": {
... ... @@ -24,7 +24,7 @@
"@tinymce/tinymce-vue": "^5.1.1",
"@types/vuelidate": "^0.7.22",
"@unhead/vue": "^2.0.8",
"@vitejs/plugin-vue": "^5.2.3",
"@vitejs/plugin-vue": "^5.2.4",
"@vuelidate/core": "^2.0.3",
"@vuelidate/validators": "^2.0.4",
"@vueuse/core": "^13.2.0",
... ... @@ -34,21 +34,21 @@
"nuxt": "^3.16.2",
"pinia": "^2.3.1",
"pinia-plugin-persistedstate": "^4.2.0",
"vue": "^3.5.13",
"vue": "^3.5.14",
"vue-router": "^4.5.0",
"vuetify-nuxt-module": "^0.18.6"
},
"devDependencies": {
"@antfu/eslint-config": "^4.13.0",
"@nuxt/test-utils": "^3.17.2",
"@nuxt/test-utils": "^3.19.0",
"@nuxtjs/tailwindcss": "^6.13.2",
"@typescript-eslint/parser": "^8.32.1",
"@vue/test-utils": "^2.4.6",
"happy-dom": "^17.4.4",
"happy-dom": "^17.4.7",
"jsdom": "^26.1.0",
"playwright-core": "^1.52.0",
"typescript-eslint": "^8.32.1",
"vitest": "^3.1.2",
"vitest": "^3.1.4",
"vue-eslint-parser": "^10.1.3"
}
}
... ...
... ... @@ -16,11 +16,11 @@ export default defineNuxtPlugin(async (_nuxtApp) => {
* Request interceptor.
*/
onRequest({ request, options }) {
if (typeof request === "string" && request.includes("movie")) {
if (typeof request === "string" && request.includes("/tmdb")) {
/** empty */
// Set the baseURL to the TMDB API URL.
// Base url example : https://nom-de-domaine/something.
options.baseURL = runtimeConfig.public.apiTMDBUrl;
// options.baseURL = runtimeConfig.public.apiTMDBUrl;
// Set the request headers
// note that this relies on ofetch >= 1.4.0 - you may need to refresh your lockfile.
... ...