diff --git a/components/Footer.tsx b/components/Footer.tsx
index 9606ac9..c4451db 100644
--- a/components/Footer.tsx
+++ b/components/Footer.tsx
@@ -20,11 +20,11 @@ const Footer = () => {
-
Naviguation
+
Navigation
{siteConfig.nav.map((link) => (
- {link.title}
+ {link.title}
))}
diff --git a/config/pages.ts b/config/pages.ts
index cf462c4..680d1a5 100644
--- a/config/pages.ts
+++ b/config/pages.ts
@@ -1,10 +1,10 @@
export const about = [
{
- header: "A Propos",
+ header: "À Propos",
text: "Bienvenue sur Xassida.sn, une application open source qui offre une expérience immersive en rassemblant les Xassidas au format numérique. Notre projet a pour vocation de faciliter l'accès aux Xassidas en proposant des versions textuelles avec une transcription automatique de qualité supérieure, ainsi que la possibilité de les télécharger au format PDF. Un lecteur audio y est intégré, pour permettre une immersion totale dans la poésie des Xassidas.",
},
{
- header: "Qu'est ce que le xassida",
+ header: "Qu'est ce que le xassida?",
text: "Le Xassida est un genre poétique; Il s'agit d'une forme de poésie islamique qui combine dévotion religieuse, enseignements moraux et imagerie vive pour transmettre une profonde signification spirituelle",
},
{
@@ -12,7 +12,7 @@ export const about = [
text: "Nous serions ravis d'avoir de vos nouvelles ! Si vous avez des questions, des commentaires ou des suggestions, veuillez contacter nous contacter xassida.sn@gmail.com.",
},
{
- header: "Rejoigne la communauté",
+ header: "Rejoignez la communauté",
text: "",
links: [
{
diff --git a/config/site.ts b/config/site.ts
index c9a084c..c46be6b 100644
--- a/config/site.ts
+++ b/config/site.ts
@@ -4,15 +4,15 @@ export type SiteConfig = typeof siteConfig
export const siteConfig = {
name: "Xassida.sn",
- description: "Lire et écouter les xassidas des differents confréries",
+ description: "Lire et écouter les xassidas des différentes confréries",
nav: [
{
- title: "Acceuil",
+ title: "Accueil",
href: "/",
icon: CustomIcon({ name: "Home", size: 16, className: "text-vert" }),
},
{
- title: "A Propos",
+ title: "À Propos",
href: "/about",
icon: CustomIcon({ name: "Info", size: 18, className: "text-vert" }),
},
@@ -22,7 +22,7 @@ export const siteConfig = {
icon: CustomIcon({ name: "LogIn", size: 18, className: "text-vert" }),
},
{
- title: "Dashboard",
+ title: "Tableau de bord",
href: "/dashboard",
icon: CustomIcon({ name: "Settings2", size: 18, className: "text-vert" }),
},
diff --git a/package-lock.json b/package-lock.json
index a61d5bb..1e7af26 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,7 +13,7 @@
"@radix-ui/react-alert-dialog": "^1.0.4",
"@radix-ui/react-avatar": "^1.0.3",
"@radix-ui/react-checkbox": "^1.0.4",
- "@radix-ui/react-dialog": "^1.0.4",
+ "@radix-ui/react-dialog": "^1.0.5",
"@radix-ui/react-dropdown-menu": "^2.0.5",
"@radix-ui/react-label": "^2.0.2",
"@radix-ui/react-popover": "^1.0.6",
@@ -26,7 +26,8 @@
"@radix-ui/react-toast": "^1.1.4",
"@radix-ui/react-tooltip": "^1.0.6",
"@supabase/auth-helpers-nextjs": "^0.8.7",
- "@supabase/supabase-js": "^2.39.3",
+ "@supabase/auth-helpers-react": "^0.4.2",
+ "@supabase/supabase-js": "^2.39.7",
"@tanstack/react-virtual": "^3.0.0-beta.54",
"class-variance-authority": "^0.4.0",
"clipboard-copy": "^4.0.1",
@@ -48,8 +49,9 @@
"tailwind-merge": "^1.12.0",
"tailwind-scrollbar-hide": "^1.1.7",
"tailwindcss-animate": "^1.0.5",
+ "vaul": "^0.9.0",
"zod": "^3.22.1",
- "zustand": "^4.3.9"
+ "zustand": "^4.5.2"
},
"devDependencies": {
"@ianvs/prettier-plugin-sort-imports": "^3.7.2",
@@ -2517,6 +2519,42 @@
}
}
},
+ "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-dialog": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.4.tgz",
+ "integrity": "sha512-hJtRy/jPULGQZceSAP2Re6/4NpKo8im6V8P2hUqZsdFiSL8l35kYsw3qbRI6Ay5mQd2+wlLqje770eq+RJ3yZg==",
+ "dependencies": {
+ "@babel/runtime": "^7.13.10",
+ "@radix-ui/primitive": "1.0.1",
+ "@radix-ui/react-compose-refs": "1.0.1",
+ "@radix-ui/react-context": "1.0.1",
+ "@radix-ui/react-dismissable-layer": "1.0.4",
+ "@radix-ui/react-focus-guards": "1.0.1",
+ "@radix-ui/react-focus-scope": "1.0.3",
+ "@radix-ui/react-id": "1.0.1",
+ "@radix-ui/react-portal": "1.0.3",
+ "@radix-ui/react-presence": "1.0.1",
+ "@radix-ui/react-primitive": "1.0.3",
+ "@radix-ui/react-slot": "1.0.2",
+ "@radix-ui/react-use-controllable-state": "1.0.1",
+ "aria-hidden": "^1.1.1",
+ "react-remove-scroll": "2.5.5"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0",
+ "react-dom": "^16.8 || ^17.0 || ^18.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
"node_modules/@radix-ui/react-arrow": {
"version": "1.0.3",
"license": "MIT",
@@ -2652,18 +2690,19 @@
}
},
"node_modules/@radix-ui/react-dialog": {
- "version": "1.0.4",
- "license": "MIT",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.5.tgz",
+ "integrity": "sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q==",
"dependencies": {
"@babel/runtime": "^7.13.10",
"@radix-ui/primitive": "1.0.1",
"@radix-ui/react-compose-refs": "1.0.1",
"@radix-ui/react-context": "1.0.1",
- "@radix-ui/react-dismissable-layer": "1.0.4",
+ "@radix-ui/react-dismissable-layer": "1.0.5",
"@radix-ui/react-focus-guards": "1.0.1",
- "@radix-ui/react-focus-scope": "1.0.3",
+ "@radix-ui/react-focus-scope": "1.0.4",
"@radix-ui/react-id": "1.0.1",
- "@radix-ui/react-portal": "1.0.3",
+ "@radix-ui/react-portal": "1.0.4",
"@radix-ui/react-presence": "1.0.1",
"@radix-ui/react-primitive": "1.0.3",
"@radix-ui/react-slot": "1.0.2",
@@ -2686,6 +2725,81 @@
}
}
},
+ "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-dismissable-layer": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz",
+ "integrity": "sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==",
+ "dependencies": {
+ "@babel/runtime": "^7.13.10",
+ "@radix-ui/primitive": "1.0.1",
+ "@radix-ui/react-compose-refs": "1.0.1",
+ "@radix-ui/react-primitive": "1.0.3",
+ "@radix-ui/react-use-callback-ref": "1.0.1",
+ "@radix-ui/react-use-escape-keydown": "1.0.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0",
+ "react-dom": "^16.8 || ^17.0 || ^18.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.4.tgz",
+ "integrity": "sha512-sL04Mgvf+FmyvZeYfNu1EPAaaxD+aw7cYeIB9L9Fvq8+urhltTRaEo5ysKOpHuKPclsZcSUMKlN05x4u+CINpA==",
+ "dependencies": {
+ "@babel/runtime": "^7.13.10",
+ "@radix-ui/react-compose-refs": "1.0.1",
+ "@radix-ui/react-primitive": "1.0.3",
+ "@radix-ui/react-use-callback-ref": "1.0.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0",
+ "react-dom": "^16.8 || ^17.0 || ^18.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-portal": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.4.tgz",
+ "integrity": "sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==",
+ "dependencies": {
+ "@babel/runtime": "^7.13.10",
+ "@radix-ui/react-primitive": "1.0.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0",
+ "react-dom": "^16.8 || ^17.0 || ^18.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
"node_modules/@radix-ui/react-direction": {
"version": "1.0.1",
"license": "MIT",
@@ -3515,6 +3629,14 @@
"@supabase/supabase-js": "^2.19.0"
}
},
+ "node_modules/@supabase/auth-helpers-react": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/@supabase/auth-helpers-react/-/auth-helpers-react-0.4.2.tgz",
+ "integrity": "sha512-zRj1leYMKJVYQeHFvZiUzlmHM+ATWFR/V7Q9F0yXSWEnMcNHL0CKnIBqhkjtSQ2trE+YaoCvFEHjxISppxIZXQ==",
+ "peerDependencies": {
+ "@supabase/supabase-js": "^2.19.0"
+ }
+ },
"node_modules/@supabase/auth-helpers-shared": {
"version": "0.6.3",
"resolved": "https://registry.npmjs.org/@supabase/auth-helpers-shared/-/auth-helpers-shared-0.6.3.tgz",
@@ -3600,16 +3722,16 @@
}
},
"node_modules/@supabase/supabase-js": {
- "version": "2.39.3",
- "resolved": "https://registry.npmjs.org/@supabase/supabase-js/-/supabase-js-2.39.3.tgz",
- "integrity": "sha512-NoltJSaJNKDJNutO5sJPAAi5RIWrn1z2XH+ig1+cHDojT6BTN7TvZPNa3Kq3gFQWfO5H1N9El/bCTZJ3iFW2kQ==",
+ "version": "2.39.7",
+ "resolved": "https://registry.npmjs.org/@supabase/supabase-js/-/supabase-js-2.39.7.tgz",
+ "integrity": "sha512-1vxsX10Uhc2b+Dv9pRjBjHfqmw2N2h1PyTg9LEfICR3x2xwE24By1MGCjDZuzDKH5OeHCsf4it6K8KRluAAEXA==",
"dependencies": {
- "@supabase/functions-js": "^2.1.5",
- "@supabase/gotrue-js": "^2.60.0",
- "@supabase/node-fetch": "^2.6.14",
- "@supabase/postgrest-js": "^1.9.0",
- "@supabase/realtime-js": "^2.9.3",
- "@supabase/storage-js": "^2.5.4"
+ "@supabase/functions-js": "2.1.5",
+ "@supabase/gotrue-js": "2.62.2",
+ "@supabase/node-fetch": "2.6.15",
+ "@supabase/postgrest-js": "1.9.2",
+ "@supabase/realtime-js": "2.9.3",
+ "@supabase/storage-js": "2.5.5"
}
},
"node_modules/@surma/rollup-plugin-off-main-thread": {
@@ -10365,6 +10487,18 @@
"license": "MIT",
"peer": true
},
+ "node_modules/vaul": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/vaul/-/vaul-0.9.0.tgz",
+ "integrity": "sha512-bZSySGbAHiTXmZychprnX/dE0EsSige88xtyyL3/MCRbrFotRPQZo7UdydGXZWw+CKbNOw5Ow8gwAo93/nB/Cg==",
+ "dependencies": {
+ "@radix-ui/react-dialog": "^1.0.4"
+ },
+ "peerDependencies": {
+ "react": "^16.8 || ^17.0 || ^18.0",
+ "react-dom": "^16.8 || ^17.0 || ^18.0"
+ }
+ },
"node_modules/vfile": {
"version": "5.3.7",
"license": "MIT",
@@ -10852,8 +10986,9 @@
}
},
"node_modules/zustand": {
- "version": "4.3.9",
- "license": "MIT",
+ "version": "4.5.2",
+ "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.5.2.tgz",
+ "integrity": "sha512-2cN1tPkDVkwCy5ickKrI7vijSjPksFRfqS6237NzT0vqSsztTNnQdHw9mmN7uBdk3gceVXU0a+21jFzFzAc9+g==",
"dependencies": {
"use-sync-external-store": "1.2.0"
},
@@ -10861,10 +10996,14 @@
"node": ">=12.7.0"
},
"peerDependencies": {
- "immer": ">=9.0",
+ "@types/react": ">=16.8",
+ "immer": ">=9.0.6",
"react": ">=16.8"
},
"peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
"immer": {
"optional": true
},