@object-ui/i18n 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/.turbo/turbo-build.log +4 -0
  2. package/LICENSE +21 -0
  3. package/dist/i18n.d.ts +36 -0
  4. package/dist/i18n.js +62 -0
  5. package/dist/index.d.ts +46 -0
  6. package/dist/index.js +50 -0
  7. package/dist/locales/ar.d.ts +112 -0
  8. package/dist/locales/ar.js +112 -0
  9. package/dist/locales/de.d.ts +111 -0
  10. package/dist/locales/de.js +111 -0
  11. package/dist/locales/en.d.ts +112 -0
  12. package/dist/locales/en.js +111 -0
  13. package/dist/locales/es.d.ts +111 -0
  14. package/dist/locales/es.js +111 -0
  15. package/dist/locales/fr.d.ts +111 -0
  16. package/dist/locales/fr.js +111 -0
  17. package/dist/locales/index.d.ts +1094 -0
  18. package/dist/locales/index.js +38 -0
  19. package/dist/locales/ja.d.ts +111 -0
  20. package/dist/locales/ja.js +111 -0
  21. package/dist/locales/ko.d.ts +111 -0
  22. package/dist/locales/ko.js +111 -0
  23. package/dist/locales/pt.d.ts +111 -0
  24. package/dist/locales/pt.js +111 -0
  25. package/dist/locales/ru.d.ts +111 -0
  26. package/dist/locales/ru.js +111 -0
  27. package/dist/locales/zh.d.ts +111 -0
  28. package/dist/locales/zh.js +111 -0
  29. package/dist/provider.d.ts +65 -0
  30. package/dist/provider.js +84 -0
  31. package/dist/utils/formatting.d.ts +45 -0
  32. package/dist/utils/formatting.js +86 -0
  33. package/dist/utils/index.d.ts +1 -0
  34. package/dist/utils/index.js +1 -0
  35. package/package.json +48 -0
  36. package/src/__tests__/i18n.test.ts +228 -0
  37. package/src/i18n.ts +98 -0
  38. package/src/index.ts +63 -0
  39. package/src/locales/ar.ts +113 -0
  40. package/src/locales/de.ts +112 -0
  41. package/src/locales/en.ts +113 -0
  42. package/src/locales/es.ts +112 -0
  43. package/src/locales/fr.ts +112 -0
  44. package/src/locales/index.ts +42 -0
  45. package/src/locales/ja.ts +112 -0
  46. package/src/locales/ko.ts +112 -0
  47. package/src/locales/pt.ts +112 -0
  48. package/src/locales/ru.ts +112 -0
  49. package/src/locales/zh.ts +112 -0
  50. package/src/provider.tsx +125 -0
  51. package/src/utils/formatting.ts +136 -0
  52. package/src/utils/index.ts +10 -0
  53. package/tsconfig.json +12 -0
  54. package/tsconfig.tsbuildinfo +1 -0
@@ -0,0 +1,112 @@
1
+ /**
2
+ * English (en) - Default language pack for Object UI
3
+ */
4
+ declare const en: {
5
+ readonly common: {
6
+ readonly loading: "Loading...";
7
+ readonly save: "Save";
8
+ readonly cancel: "Cancel";
9
+ readonly delete: "Delete";
10
+ readonly edit: "Edit";
11
+ readonly create: "Create";
12
+ readonly search: "Search";
13
+ readonly filter: "Filter";
14
+ readonly reset: "Reset";
15
+ readonly confirm: "Confirm";
16
+ readonly close: "Close";
17
+ readonly back: "Back";
18
+ readonly next: "Next";
19
+ readonly previous: "Previous";
20
+ readonly submit: "Submit";
21
+ readonly refresh: "Refresh";
22
+ readonly export: "Export";
23
+ readonly import: "Import";
24
+ readonly yes: "Yes";
25
+ readonly no: "No";
26
+ readonly ok: "OK";
27
+ readonly actions: "Actions";
28
+ readonly more: "More";
29
+ readonly selectAll: "Select All";
30
+ readonly clearAll: "Clear All";
31
+ readonly noData: "No data";
32
+ readonly noResults: "No results found";
33
+ readonly required: "Required";
34
+ readonly optional: "Optional";
35
+ };
36
+ readonly validation: {
37
+ readonly required: "{{field}} is required";
38
+ readonly minLength: "{{field}} must be at least {{min}} characters";
39
+ readonly maxLength: "{{field}} must be at most {{max}} characters";
40
+ readonly min: "{{field}} must be at least {{min}}";
41
+ readonly max: "{{field}} must be at most {{max}}";
42
+ readonly email: "Please enter a valid email address";
43
+ readonly url: "Please enter a valid URL";
44
+ readonly pattern: "{{field}} format is invalid";
45
+ readonly unique: "{{field}} must be unique";
46
+ readonly type: "{{field}} must be a valid {{type}}";
47
+ };
48
+ readonly form: {
49
+ readonly addItem: "Add item";
50
+ readonly removeItem: "Remove item";
51
+ readonly fieldRequired: "This field is required";
52
+ readonly invalidFormat: "Invalid format";
53
+ readonly saveSuccess: "Saved successfully";
54
+ readonly saveError: "Failed to save";
55
+ readonly unsavedChanges: "You have unsaved changes. Are you sure you want to leave?";
56
+ readonly stepOf: "Step {{current}} of {{total}}";
57
+ };
58
+ readonly table: {
59
+ readonly rowsPerPage: "Rows per page";
60
+ readonly showing: "Showing {{from}} to {{to}} of {{total}}";
61
+ readonly noRows: "No rows to display";
62
+ readonly sortAsc: "Sort ascending";
63
+ readonly sortDesc: "Sort descending";
64
+ readonly filterColumn: "Filter {{column}}";
65
+ readonly columns: "Columns";
66
+ readonly exportCSV: "Export CSV";
67
+ readonly exportExcel: "Export Excel";
68
+ readonly selectRow: "Select row";
69
+ readonly selectAllRows: "Select all rows";
70
+ readonly expandRow: "Expand row";
71
+ readonly collapseRow: "Collapse row";
72
+ };
73
+ readonly calendar: {
74
+ readonly today: "Today";
75
+ readonly month: "Month";
76
+ readonly week: "Week";
77
+ readonly day: "Day";
78
+ readonly agenda: "Agenda";
79
+ readonly allDay: "All Day";
80
+ readonly noEvents: "No events";
81
+ readonly newEvent: "New event";
82
+ };
83
+ readonly kanban: {
84
+ readonly addCard: "Add card";
85
+ readonly addColumn: "Add column";
86
+ readonly moveCard: "Move card";
87
+ readonly deleteCard: "Delete card";
88
+ readonly deleteColumn: "Delete column";
89
+ };
90
+ readonly chart: {
91
+ readonly noData: "No chart data available";
92
+ readonly loading: "Loading chart...";
93
+ };
94
+ readonly dashboard: {
95
+ readonly addWidget: "Add widget";
96
+ readonly removeWidget: "Remove widget";
97
+ readonly editLayout: "Edit layout";
98
+ readonly saveLayout: "Save layout";
99
+ readonly resetLayout: "Reset layout";
100
+ };
101
+ readonly errors: {
102
+ readonly networkError: "Network error. Please check your connection.";
103
+ readonly serverError: "Server error. Please try again later.";
104
+ readonly notFound: "Resource not found.";
105
+ readonly unauthorized: "You are not authorized to perform this action.";
106
+ readonly forbidden: "Access denied.";
107
+ readonly timeout: "Request timed out. Please try again.";
108
+ readonly unknown: "An unexpected error occurred.";
109
+ };
110
+ };
111
+ export default en;
112
+ export type TranslationKeys = typeof en;
@@ -0,0 +1,111 @@
1
+ /**
2
+ * English (en) - Default language pack for Object UI
3
+ */
4
+ const en = {
5
+ common: {
6
+ loading: 'Loading...',
7
+ save: 'Save',
8
+ cancel: 'Cancel',
9
+ delete: 'Delete',
10
+ edit: 'Edit',
11
+ create: 'Create',
12
+ search: 'Search',
13
+ filter: 'Filter',
14
+ reset: 'Reset',
15
+ confirm: 'Confirm',
16
+ close: 'Close',
17
+ back: 'Back',
18
+ next: 'Next',
19
+ previous: 'Previous',
20
+ submit: 'Submit',
21
+ refresh: 'Refresh',
22
+ export: 'Export',
23
+ import: 'Import',
24
+ yes: 'Yes',
25
+ no: 'No',
26
+ ok: 'OK',
27
+ actions: 'Actions',
28
+ more: 'More',
29
+ selectAll: 'Select All',
30
+ clearAll: 'Clear All',
31
+ noData: 'No data',
32
+ noResults: 'No results found',
33
+ required: 'Required',
34
+ optional: 'Optional',
35
+ },
36
+ validation: {
37
+ required: '{{field}} is required',
38
+ minLength: '{{field}} must be at least {{min}} characters',
39
+ maxLength: '{{field}} must be at most {{max}} characters',
40
+ min: '{{field}} must be at least {{min}}',
41
+ max: '{{field}} must be at most {{max}}',
42
+ email: 'Please enter a valid email address',
43
+ url: 'Please enter a valid URL',
44
+ pattern: '{{field}} format is invalid',
45
+ unique: '{{field}} must be unique',
46
+ type: '{{field}} must be a valid {{type}}',
47
+ },
48
+ form: {
49
+ addItem: 'Add item',
50
+ removeItem: 'Remove item',
51
+ fieldRequired: 'This field is required',
52
+ invalidFormat: 'Invalid format',
53
+ saveSuccess: 'Saved successfully',
54
+ saveError: 'Failed to save',
55
+ unsavedChanges: 'You have unsaved changes. Are you sure you want to leave?',
56
+ stepOf: 'Step {{current}} of {{total}}',
57
+ },
58
+ table: {
59
+ rowsPerPage: 'Rows per page',
60
+ showing: 'Showing {{from}} to {{to}} of {{total}}',
61
+ noRows: 'No rows to display',
62
+ sortAsc: 'Sort ascending',
63
+ sortDesc: 'Sort descending',
64
+ filterColumn: 'Filter {{column}}',
65
+ columns: 'Columns',
66
+ exportCSV: 'Export CSV',
67
+ exportExcel: 'Export Excel',
68
+ selectRow: 'Select row',
69
+ selectAllRows: 'Select all rows',
70
+ expandRow: 'Expand row',
71
+ collapseRow: 'Collapse row',
72
+ },
73
+ calendar: {
74
+ today: 'Today',
75
+ month: 'Month',
76
+ week: 'Week',
77
+ day: 'Day',
78
+ agenda: 'Agenda',
79
+ allDay: 'All Day',
80
+ noEvents: 'No events',
81
+ newEvent: 'New event',
82
+ },
83
+ kanban: {
84
+ addCard: 'Add card',
85
+ addColumn: 'Add column',
86
+ moveCard: 'Move card',
87
+ deleteCard: 'Delete card',
88
+ deleteColumn: 'Delete column',
89
+ },
90
+ chart: {
91
+ noData: 'No chart data available',
92
+ loading: 'Loading chart...',
93
+ },
94
+ dashboard: {
95
+ addWidget: 'Add widget',
96
+ removeWidget: 'Remove widget',
97
+ editLayout: 'Edit layout',
98
+ saveLayout: 'Save layout',
99
+ resetLayout: 'Reset layout',
100
+ },
101
+ errors: {
102
+ networkError: 'Network error. Please check your connection.',
103
+ serverError: 'Server error. Please try again later.',
104
+ notFound: 'Resource not found.',
105
+ unauthorized: 'You are not authorized to perform this action.',
106
+ forbidden: 'Access denied.',
107
+ timeout: 'Request timed out. Please try again.',
108
+ unknown: 'An unexpected error occurred.',
109
+ },
110
+ };
111
+ export default en;
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Español (es) - Spanish language pack for Object UI
3
+ */
4
+ declare const es: {
5
+ readonly common: {
6
+ readonly loading: "Cargando...";
7
+ readonly save: "Guardar";
8
+ readonly cancel: "Cancelar";
9
+ readonly delete: "Eliminar";
10
+ readonly edit: "Editar";
11
+ readonly create: "Crear";
12
+ readonly search: "Buscar";
13
+ readonly filter: "Filtrar";
14
+ readonly reset: "Restablecer";
15
+ readonly confirm: "Confirmar";
16
+ readonly close: "Cerrar";
17
+ readonly back: "Atrás";
18
+ readonly next: "Siguiente";
19
+ readonly previous: "Anterior";
20
+ readonly submit: "Enviar";
21
+ readonly refresh: "Actualizar";
22
+ readonly export: "Exportar";
23
+ readonly import: "Importar";
24
+ readonly yes: "Sí";
25
+ readonly no: "No";
26
+ readonly ok: "Aceptar";
27
+ readonly actions: "Acciones";
28
+ readonly more: "Más";
29
+ readonly selectAll: "Seleccionar todo";
30
+ readonly clearAll: "Borrar todo";
31
+ readonly noData: "Sin datos";
32
+ readonly noResults: "No se encontraron resultados";
33
+ readonly required: "Obligatorio";
34
+ readonly optional: "Opcional";
35
+ };
36
+ readonly validation: {
37
+ readonly required: "{{field}} es obligatorio";
38
+ readonly minLength: "{{field}} debe tener al menos {{min}} caracteres";
39
+ readonly maxLength: "{{field}} debe tener como máximo {{max}} caracteres";
40
+ readonly min: "{{field}} debe ser al menos {{min}}";
41
+ readonly max: "{{field}} debe ser como máximo {{max}}";
42
+ readonly email: "Por favor, introduzca un correo electrónico válido";
43
+ readonly url: "Por favor, introduzca una URL válida";
44
+ readonly pattern: "El formato de {{field}} no es válido";
45
+ readonly unique: "{{field}} debe ser único";
46
+ readonly type: "{{field}} debe ser un {{type}} válido";
47
+ };
48
+ readonly form: {
49
+ readonly addItem: "Añadir elemento";
50
+ readonly removeItem: "Eliminar elemento";
51
+ readonly fieldRequired: "Este campo es obligatorio";
52
+ readonly invalidFormat: "Formato no válido";
53
+ readonly saveSuccess: "Guardado correctamente";
54
+ readonly saveError: "Error al guardar";
55
+ readonly unsavedChanges: "Tiene cambios sin guardar. ¿Está seguro de que desea salir?";
56
+ readonly stepOf: "Paso {{current}} de {{total}}";
57
+ };
58
+ readonly table: {
59
+ readonly rowsPerPage: "Filas por página";
60
+ readonly showing: "Mostrando {{from}} a {{to}} de {{total}}";
61
+ readonly noRows: "No hay filas para mostrar";
62
+ readonly sortAsc: "Ordenar ascendente";
63
+ readonly sortDesc: "Ordenar descendente";
64
+ readonly filterColumn: "Filtrar {{column}}";
65
+ readonly columns: "Columnas";
66
+ readonly exportCSV: "Exportar CSV";
67
+ readonly exportExcel: "Exportar Excel";
68
+ readonly selectRow: "Seleccionar fila";
69
+ readonly selectAllRows: "Seleccionar todas las filas";
70
+ readonly expandRow: "Expandir fila";
71
+ readonly collapseRow: "Contraer fila";
72
+ };
73
+ readonly calendar: {
74
+ readonly today: "Hoy";
75
+ readonly month: "Mes";
76
+ readonly week: "Semana";
77
+ readonly day: "Día";
78
+ readonly agenda: "Agenda";
79
+ readonly allDay: "Todo el día";
80
+ readonly noEvents: "Sin eventos";
81
+ readonly newEvent: "Nuevo evento";
82
+ };
83
+ readonly kanban: {
84
+ readonly addCard: "Añadir tarjeta";
85
+ readonly addColumn: "Añadir columna";
86
+ readonly moveCard: "Mover tarjeta";
87
+ readonly deleteCard: "Eliminar tarjeta";
88
+ readonly deleteColumn: "Eliminar columna";
89
+ };
90
+ readonly chart: {
91
+ readonly noData: "No hay datos de gráfico disponibles";
92
+ readonly loading: "Cargando gráfico...";
93
+ };
94
+ readonly dashboard: {
95
+ readonly addWidget: "Añadir widget";
96
+ readonly removeWidget: "Eliminar widget";
97
+ readonly editLayout: "Editar diseño";
98
+ readonly saveLayout: "Guardar diseño";
99
+ readonly resetLayout: "Restablecer diseño";
100
+ };
101
+ readonly errors: {
102
+ readonly networkError: "Error de red. Por favor, compruebe su conexión.";
103
+ readonly serverError: "Error del servidor. Por favor, inténtelo de nuevo más tarde.";
104
+ readonly notFound: "Recurso no encontrado.";
105
+ readonly unauthorized: "No está autorizado para realizar esta acción.";
106
+ readonly forbidden: "Acceso denegado.";
107
+ readonly timeout: "Tiempo de espera agotado. Por favor, inténtelo de nuevo.";
108
+ readonly unknown: "Ha ocurrido un error inesperado.";
109
+ };
110
+ };
111
+ export default es;
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Español (es) - Spanish language pack for Object UI
3
+ */
4
+ const es = {
5
+ common: {
6
+ loading: 'Cargando...',
7
+ save: 'Guardar',
8
+ cancel: 'Cancelar',
9
+ delete: 'Eliminar',
10
+ edit: 'Editar',
11
+ create: 'Crear',
12
+ search: 'Buscar',
13
+ filter: 'Filtrar',
14
+ reset: 'Restablecer',
15
+ confirm: 'Confirmar',
16
+ close: 'Cerrar',
17
+ back: 'Atrás',
18
+ next: 'Siguiente',
19
+ previous: 'Anterior',
20
+ submit: 'Enviar',
21
+ refresh: 'Actualizar',
22
+ export: 'Exportar',
23
+ import: 'Importar',
24
+ yes: 'Sí',
25
+ no: 'No',
26
+ ok: 'Aceptar',
27
+ actions: 'Acciones',
28
+ more: 'Más',
29
+ selectAll: 'Seleccionar todo',
30
+ clearAll: 'Borrar todo',
31
+ noData: 'Sin datos',
32
+ noResults: 'No se encontraron resultados',
33
+ required: 'Obligatorio',
34
+ optional: 'Opcional',
35
+ },
36
+ validation: {
37
+ required: '{{field}} es obligatorio',
38
+ minLength: '{{field}} debe tener al menos {{min}} caracteres',
39
+ maxLength: '{{field}} debe tener como máximo {{max}} caracteres',
40
+ min: '{{field}} debe ser al menos {{min}}',
41
+ max: '{{field}} debe ser como máximo {{max}}',
42
+ email: 'Por favor, introduzca un correo electrónico válido',
43
+ url: 'Por favor, introduzca una URL válida',
44
+ pattern: 'El formato de {{field}} no es válido',
45
+ unique: '{{field}} debe ser único',
46
+ type: '{{field}} debe ser un {{type}} válido',
47
+ },
48
+ form: {
49
+ addItem: 'Añadir elemento',
50
+ removeItem: 'Eliminar elemento',
51
+ fieldRequired: 'Este campo es obligatorio',
52
+ invalidFormat: 'Formato no válido',
53
+ saveSuccess: 'Guardado correctamente',
54
+ saveError: 'Error al guardar',
55
+ unsavedChanges: 'Tiene cambios sin guardar. ¿Está seguro de que desea salir?',
56
+ stepOf: 'Paso {{current}} de {{total}}',
57
+ },
58
+ table: {
59
+ rowsPerPage: 'Filas por página',
60
+ showing: 'Mostrando {{from}} a {{to}} de {{total}}',
61
+ noRows: 'No hay filas para mostrar',
62
+ sortAsc: 'Ordenar ascendente',
63
+ sortDesc: 'Ordenar descendente',
64
+ filterColumn: 'Filtrar {{column}}',
65
+ columns: 'Columnas',
66
+ exportCSV: 'Exportar CSV',
67
+ exportExcel: 'Exportar Excel',
68
+ selectRow: 'Seleccionar fila',
69
+ selectAllRows: 'Seleccionar todas las filas',
70
+ expandRow: 'Expandir fila',
71
+ collapseRow: 'Contraer fila',
72
+ },
73
+ calendar: {
74
+ today: 'Hoy',
75
+ month: 'Mes',
76
+ week: 'Semana',
77
+ day: 'Día',
78
+ agenda: 'Agenda',
79
+ allDay: 'Todo el día',
80
+ noEvents: 'Sin eventos',
81
+ newEvent: 'Nuevo evento',
82
+ },
83
+ kanban: {
84
+ addCard: 'Añadir tarjeta',
85
+ addColumn: 'Añadir columna',
86
+ moveCard: 'Mover tarjeta',
87
+ deleteCard: 'Eliminar tarjeta',
88
+ deleteColumn: 'Eliminar columna',
89
+ },
90
+ chart: {
91
+ noData: 'No hay datos de gráfico disponibles',
92
+ loading: 'Cargando gráfico...',
93
+ },
94
+ dashboard: {
95
+ addWidget: 'Añadir widget',
96
+ removeWidget: 'Eliminar widget',
97
+ editLayout: 'Editar diseño',
98
+ saveLayout: 'Guardar diseño',
99
+ resetLayout: 'Restablecer diseño',
100
+ },
101
+ errors: {
102
+ networkError: 'Error de red. Por favor, compruebe su conexión.',
103
+ serverError: 'Error del servidor. Por favor, inténtelo de nuevo más tarde.',
104
+ notFound: 'Recurso no encontrado.',
105
+ unauthorized: 'No está autorizado para realizar esta acción.',
106
+ forbidden: 'Acceso denegado.',
107
+ timeout: 'Tiempo de espera agotado. Por favor, inténtelo de nuevo.',
108
+ unknown: 'Ha ocurrido un error inesperado.',
109
+ },
110
+ };
111
+ export default es;
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Français (fr) - French language pack for Object UI
3
+ */
4
+ declare const fr: {
5
+ readonly common: {
6
+ readonly loading: "Chargement...";
7
+ readonly save: "Enregistrer";
8
+ readonly cancel: "Annuler";
9
+ readonly delete: "Supprimer";
10
+ readonly edit: "Modifier";
11
+ readonly create: "Créer";
12
+ readonly search: "Rechercher";
13
+ readonly filter: "Filtrer";
14
+ readonly reset: "Réinitialiser";
15
+ readonly confirm: "Confirmer";
16
+ readonly close: "Fermer";
17
+ readonly back: "Retour";
18
+ readonly next: "Suivant";
19
+ readonly previous: "Précédent";
20
+ readonly submit: "Soumettre";
21
+ readonly refresh: "Actualiser";
22
+ readonly export: "Exporter";
23
+ readonly import: "Importer";
24
+ readonly yes: "Oui";
25
+ readonly no: "Non";
26
+ readonly ok: "OK";
27
+ readonly actions: "Actions";
28
+ readonly more: "Plus";
29
+ readonly selectAll: "Tout sélectionner";
30
+ readonly clearAll: "Tout effacer";
31
+ readonly noData: "Aucune donnée";
32
+ readonly noResults: "Aucun résultat trouvé";
33
+ readonly required: "Obligatoire";
34
+ readonly optional: "Facultatif";
35
+ };
36
+ readonly validation: {
37
+ readonly required: "{{field}} est obligatoire";
38
+ readonly minLength: "{{field}} doit contenir au moins {{min}} caractères";
39
+ readonly maxLength: "{{field}} doit contenir au plus {{max}} caractères";
40
+ readonly min: "{{field}} doit être au moins {{min}}";
41
+ readonly max: "{{field}} doit être au plus {{max}}";
42
+ readonly email: "Veuillez saisir une adresse e-mail valide";
43
+ readonly url: "Veuillez saisir une URL valide";
44
+ readonly pattern: "Le format de {{field}} est invalide";
45
+ readonly unique: "{{field}} doit être unique";
46
+ readonly type: "{{field}} doit être un {{type}} valide";
47
+ };
48
+ readonly form: {
49
+ readonly addItem: "Ajouter un élément";
50
+ readonly removeItem: "Supprimer un élément";
51
+ readonly fieldRequired: "Ce champ est obligatoire";
52
+ readonly invalidFormat: "Format invalide";
53
+ readonly saveSuccess: "Enregistré avec succès";
54
+ readonly saveError: "Échec de l'enregistrement";
55
+ readonly unsavedChanges: "Vous avez des modifications non enregistrées. Voulez-vous vraiment quitter ?";
56
+ readonly stepOf: "Étape {{current}} sur {{total}}";
57
+ };
58
+ readonly table: {
59
+ readonly rowsPerPage: "Lignes par page";
60
+ readonly showing: "Affichage de {{from}} à {{to}} sur {{total}}";
61
+ readonly noRows: "Aucune ligne à afficher";
62
+ readonly sortAsc: "Tri croissant";
63
+ readonly sortDesc: "Tri décroissant";
64
+ readonly filterColumn: "Filtrer {{column}}";
65
+ readonly columns: "Colonnes";
66
+ readonly exportCSV: "Exporter en CSV";
67
+ readonly exportExcel: "Exporter en Excel";
68
+ readonly selectRow: "Sélectionner la ligne";
69
+ readonly selectAllRows: "Sélectionner toutes les lignes";
70
+ readonly expandRow: "Développer la ligne";
71
+ readonly collapseRow: "Réduire la ligne";
72
+ };
73
+ readonly calendar: {
74
+ readonly today: "Aujourd'hui";
75
+ readonly month: "Mois";
76
+ readonly week: "Semaine";
77
+ readonly day: "Jour";
78
+ readonly agenda: "Agenda";
79
+ readonly allDay: "Toute la journée";
80
+ readonly noEvents: "Aucun événement";
81
+ readonly newEvent: "Nouvel événement";
82
+ };
83
+ readonly kanban: {
84
+ readonly addCard: "Ajouter une carte";
85
+ readonly addColumn: "Ajouter une colonne";
86
+ readonly moveCard: "Déplacer la carte";
87
+ readonly deleteCard: "Supprimer la carte";
88
+ readonly deleteColumn: "Supprimer la colonne";
89
+ };
90
+ readonly chart: {
91
+ readonly noData: "Aucune donnée de graphique disponible";
92
+ readonly loading: "Chargement du graphique...";
93
+ };
94
+ readonly dashboard: {
95
+ readonly addWidget: "Ajouter un widget";
96
+ readonly removeWidget: "Supprimer un widget";
97
+ readonly editLayout: "Modifier la mise en page";
98
+ readonly saveLayout: "Enregistrer la mise en page";
99
+ readonly resetLayout: "Réinitialiser la mise en page";
100
+ };
101
+ readonly errors: {
102
+ readonly networkError: "Erreur réseau. Veuillez vérifier votre connexion.";
103
+ readonly serverError: "Erreur serveur. Veuillez réessayer plus tard.";
104
+ readonly notFound: "Ressource introuvable.";
105
+ readonly unauthorized: "Vous n'êtes pas autorisé à effectuer cette action.";
106
+ readonly forbidden: "Accès refusé.";
107
+ readonly timeout: "Délai d'attente dépassé. Veuillez réessayer.";
108
+ readonly unknown: "Une erreur inattendue s'est produite.";
109
+ };
110
+ };
111
+ export default fr;
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Français (fr) - French language pack for Object UI
3
+ */
4
+ const fr = {
5
+ common: {
6
+ loading: 'Chargement...',
7
+ save: 'Enregistrer',
8
+ cancel: 'Annuler',
9
+ delete: 'Supprimer',
10
+ edit: 'Modifier',
11
+ create: 'Créer',
12
+ search: 'Rechercher',
13
+ filter: 'Filtrer',
14
+ reset: 'Réinitialiser',
15
+ confirm: 'Confirmer',
16
+ close: 'Fermer',
17
+ back: 'Retour',
18
+ next: 'Suivant',
19
+ previous: 'Précédent',
20
+ submit: 'Soumettre',
21
+ refresh: 'Actualiser',
22
+ export: 'Exporter',
23
+ import: 'Importer',
24
+ yes: 'Oui',
25
+ no: 'Non',
26
+ ok: 'OK',
27
+ actions: 'Actions',
28
+ more: 'Plus',
29
+ selectAll: 'Tout sélectionner',
30
+ clearAll: 'Tout effacer',
31
+ noData: 'Aucune donnée',
32
+ noResults: 'Aucun résultat trouvé',
33
+ required: 'Obligatoire',
34
+ optional: 'Facultatif',
35
+ },
36
+ validation: {
37
+ required: '{{field}} est obligatoire',
38
+ minLength: '{{field}} doit contenir au moins {{min}} caractères',
39
+ maxLength: '{{field}} doit contenir au plus {{max}} caractères',
40
+ min: '{{field}} doit être au moins {{min}}',
41
+ max: '{{field}} doit être au plus {{max}}',
42
+ email: 'Veuillez saisir une adresse e-mail valide',
43
+ url: 'Veuillez saisir une URL valide',
44
+ pattern: 'Le format de {{field}} est invalide',
45
+ unique: '{{field}} doit être unique',
46
+ type: '{{field}} doit être un {{type}} valide',
47
+ },
48
+ form: {
49
+ addItem: 'Ajouter un élément',
50
+ removeItem: 'Supprimer un élément',
51
+ fieldRequired: 'Ce champ est obligatoire',
52
+ invalidFormat: 'Format invalide',
53
+ saveSuccess: 'Enregistré avec succès',
54
+ saveError: 'Échec de l\'enregistrement',
55
+ unsavedChanges: 'Vous avez des modifications non enregistrées. Voulez-vous vraiment quitter ?',
56
+ stepOf: 'Étape {{current}} sur {{total}}',
57
+ },
58
+ table: {
59
+ rowsPerPage: 'Lignes par page',
60
+ showing: 'Affichage de {{from}} à {{to}} sur {{total}}',
61
+ noRows: 'Aucune ligne à afficher',
62
+ sortAsc: 'Tri croissant',
63
+ sortDesc: 'Tri décroissant',
64
+ filterColumn: 'Filtrer {{column}}',
65
+ columns: 'Colonnes',
66
+ exportCSV: 'Exporter en CSV',
67
+ exportExcel: 'Exporter en Excel',
68
+ selectRow: 'Sélectionner la ligne',
69
+ selectAllRows: 'Sélectionner toutes les lignes',
70
+ expandRow: 'Développer la ligne',
71
+ collapseRow: 'Réduire la ligne',
72
+ },
73
+ calendar: {
74
+ today: 'Aujourd\'hui',
75
+ month: 'Mois',
76
+ week: 'Semaine',
77
+ day: 'Jour',
78
+ agenda: 'Agenda',
79
+ allDay: 'Toute la journée',
80
+ noEvents: 'Aucun événement',
81
+ newEvent: 'Nouvel événement',
82
+ },
83
+ kanban: {
84
+ addCard: 'Ajouter une carte',
85
+ addColumn: 'Ajouter une colonne',
86
+ moveCard: 'Déplacer la carte',
87
+ deleteCard: 'Supprimer la carte',
88
+ deleteColumn: 'Supprimer la colonne',
89
+ },
90
+ chart: {
91
+ noData: 'Aucune donnée de graphique disponible',
92
+ loading: 'Chargement du graphique...',
93
+ },
94
+ dashboard: {
95
+ addWidget: 'Ajouter un widget',
96
+ removeWidget: 'Supprimer un widget',
97
+ editLayout: 'Modifier la mise en page',
98
+ saveLayout: 'Enregistrer la mise en page',
99
+ resetLayout: 'Réinitialiser la mise en page',
100
+ },
101
+ errors: {
102
+ networkError: 'Erreur réseau. Veuillez vérifier votre connexion.',
103
+ serverError: 'Erreur serveur. Veuillez réessayer plus tard.',
104
+ notFound: 'Ressource introuvable.',
105
+ unauthorized: 'Vous n\'êtes pas autorisé à effectuer cette action.',
106
+ forbidden: 'Accès refusé.',
107
+ timeout: 'Délai d\'attente dépassé. Veuillez réessayer.',
108
+ unknown: 'Une erreur inattendue s\'est produite.',
109
+ },
110
+ };
111
+ export default fr;