From 6ffca5392f469fd9006e68de0dfb62b30c91ec0d Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Thu, 12 May 2022 17:06:36 -0400 Subject: [PATCH 01/16] add French translations --- superset-frontend/src/dashboard/components/SliceAdder.jsx | 3 ++- .../src/dashboard/components/dnd/AddSliceDragPreview.jsx | 3 ++- superset/translations/fr/LC_MESSAGES/messages.json | 4 ++++ superset/translations/fr/LC_MESSAGES/messages.po | 8 ++++---- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/superset-frontend/src/dashboard/components/SliceAdder.jsx b/superset-frontend/src/dashboard/components/SliceAdder.jsx index 8c2fc920e9b20..d4d9a9fa5aa21 100644 --- a/superset-frontend/src/dashboard/components/SliceAdder.jsx +++ b/superset-frontend/src/dashboard/components/SliceAdder.jsx @@ -35,6 +35,7 @@ import { } from 'src/dashboard/util/constants'; import { slicePropShape } from 'src/dashboard/util/propShapes'; import { FILTER_BOX_MIGRATION_STATES } from 'src/explore/constants'; +import moment from 'moment'; import AddSliceCard from './AddSliceCard'; import AddSliceDragPreview from './dnd/AddSliceDragPreview'; import DragDroppable from './dnd/DragDroppable'; @@ -221,7 +222,7 @@ class SliceAdder extends React.Component { innerRef={dragSourceRef} style={style} sliceName={cellData.slice_name} - lastModified={cellData.changed_on_humanized} + lastModified={moment.utc(cellData.changed_on).fromNow()} visType={cellData.viz_type} datasourceUrl={cellData.datasource_url} datasourceName={cellData.datasource_name} diff --git a/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx b/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx index 404561e750ee1..c61c6a2e350c5 100644 --- a/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx +++ b/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx @@ -20,6 +20,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { DragLayer } from 'react-dnd'; +import moment from 'moment'; import AddSliceCard from '../AddSliceCard'; import { slicePropShape } from '../../util/propShapes'; import { @@ -72,7 +73,7 @@ function AddSliceDragPreview({ dragItem, slices, isDragging, currentOffset }) { transform: `translate(${currentOffset.x}px, ${currentOffset.y}px)`, }} sliceName={slice.slice_name} - lastModified={slice.changed_on_humanized} + lastModified={moment.utc(slice.changed_on).fromNow()} visType={slice.viz_type} datasourceUrl={slice.datasource_url} datasourceName={slice.datasource_name} diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index 1652dc82f9617..78ca9dbd2436d 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -506,6 +506,7 @@ "Fetch Values From": ["Récupérer les valeurs des prédicats"], "Changed By": ["Modifié par"], "Modified": ["Modifié"], + "Edit the dashboard": ["Modifier le tableau de bord"], "Refreshed metadata from cluster [{}]": [ "Métadonnées du cluster [{}] rafraîchies" ], @@ -847,6 +848,9 @@ "Veuillez corriger une erreur de syntaxe dans la requête près de \"%(syntax_error)s\". Puis essayez de relancer la requête." ], "Original value": ["Valeur d'origine"], + "Duration in ms (66000 => 1m 6s)": ["Durée en ms (66000 => 1m 6s)"], + "Duration in ms (1.40008 => 1ms 400µs 80ns)": ["Durée en ms (1.40008 => 1ms 400µs 80ns)"], + "Adaptive formatting": ["Formatage adapté"], "Second": ["Seconde"], "5 second": ["5 secondes"], "30 second": ["30 secondes"], diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index a54668777c51f..165fb1b6d2c99 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -676,7 +676,7 @@ msgstr "Intervalle de temps courant" #: superset-frontend/packages/superset-ui-chart-controls/src/utils/D3Formatting.ts:49 #, fuzzy msgid "Adaptive formatting" -msgstr "Format Datetime" +msgstr "Formatage adapté" #: superset-frontend/src/components/ReportModal/index.tsx:267 #: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitlePane.tsx:133 @@ -4241,7 +4241,7 @@ msgstr "Filtre de date" #: superset-frontend/plugins/plugin-chart-pivot-table/src/plugin/controlPanel.tsx:216 #, fuzzy msgid "Date format" -msgstr "Format Datetime" +msgstr "Format Date" #: superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx:235 msgid "Date/Time" @@ -5023,11 +5023,11 @@ msgstr "" #: superset-frontend/packages/superset-ui-chart-controls/src/utils/D3Formatting.ts:41 msgid "Duration in ms (1.40008 => 1ms 400µs 80ns)" -msgstr "" +msgstr "Durée en ms (1.40008 => 1ms 400µs 80ns)" #: superset-frontend/packages/superset-ui-chart-controls/src/utils/D3Formatting.ts:40 msgid "Duration in ms (66000 => 1m 6s)" -msgstr "" +msgstr "Durée en ms (66000 => 1m 6s)" #: superset-frontend/src/views/CRUD/data/query/QueryList.tsx:205 #, python-format From 21c1c03c4d5c5e9f147547b492e5a0f4516c9e84 Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Thu, 12 May 2022 17:08:51 -0400 Subject: [PATCH 02/16] adding French translation --- .../src/dashboard/components/SliceAdder.jsx | 2 +- .../DateFilterControl/DateFilterLabel.tsx | 4 +- .../components/CustomFrame.tsx | 10 + .../src/views/CRUD/chart/ChartCard.tsx | 3 +- .../views/CRUD/dashboard/DashboardCard.tsx | 6 +- .../src/views/CRUD/welcome/SavedQueries.tsx | 4 +- .../src/views/CRUD/welcome/Welcome.tsx | 2 +- superset/models/sql_lab.py | 5 + superset/queries/saved_queries/api.py | 1 + .../translations/fr/LC_MESSAGES/messages.json | 100 +++++- .../translations/fr/LC_MESSAGES/messages.po | 293 +++++++++++++++--- superset/translations/messages.pot | 10 + 12 files changed, 391 insertions(+), 49 deletions(-) diff --git a/superset-frontend/src/dashboard/components/SliceAdder.jsx b/superset-frontend/src/dashboard/components/SliceAdder.jsx index d4d9a9fa5aa21..1a660e3e3b6d6 100644 --- a/superset-frontend/src/dashboard/components/SliceAdder.jsx +++ b/superset-frontend/src/dashboard/components/SliceAdder.jsx @@ -254,7 +254,7 @@ class SliceAdder extends React.Component { value={this.state.sortBy} onChange={this.handleSelect} options={Object.entries(KEYS_TO_SORT).map(([key, label]) => ({ - label: t('Sort by %s', label), + label: t('Sort by %s', t(label)), value: key, }))} placeholder={t('Sort by')} diff --git a/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx b/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx index 853c859196baa..2ea1e910ca574 100644 --- a/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx +++ b/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx @@ -314,7 +314,7 @@ export default function DateFilterLabel(props: DateFilterControlProps) {
{t('Actual time range')}
- {validTimeRange &&
{evalResponse}
} + {validTimeRange &&
{t(evalResponse)}
} {!validTimeRange && ( @@ -373,7 +373,7 @@ export default function DateFilterLabel(props: DateFilterControlProps) { > diff --git a/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx b/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx index 48637f36e33f7..c457ccfc3c909 100644 --- a/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx +++ b/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx @@ -41,9 +41,16 @@ import { CustomRangeKey, FrameComponentProps, } from 'src/explore/components/controls/DateFilterControl/types'; +import { bootstrapData } from 'src/preamble'; +import localeFR from 'antd/es/date-picker/locale/fr_FR'; +import localeEN from 'antd/es/date-picker/locale/en_US'; export function CustomFrame(props: FrameComponentProps) { const { customRange, matchedFlag } = customTimeRangeDecode(props.value); + let locale = localeEN; + if (bootstrapData.common.locale === 'fr') { + locale = localeFR; + } if (!matchedFlag) { props.onChange(customTimeRangeEncode(customRange)); } @@ -132,6 +139,7 @@ export function CustomFrame(props: FrameComponentProps) { onChange('sinceDatetime', datetime.format(MOMENT_FORMAT)) } allowClear={false} + locale={locale} /> )} @@ -184,6 +192,7 @@ export function CustomFrame(props: FrameComponentProps) { onChange('untilDatetime', datetime.format(MOMENT_FORMAT)) } allowClear={false} + locale={locale} /> )} @@ -241,6 +250,7 @@ export function CustomFrame(props: FrameComponentProps) { } allowClear={false} className="control-anchor-to-datetime" + locale={locale} /> )} diff --git a/superset-frontend/src/views/CRUD/chart/ChartCard.tsx b/superset-frontend/src/views/CRUD/chart/ChartCard.tsx index 07f9dbf3bfbd8..1e37ce5cd61c2 100644 --- a/superset-frontend/src/views/CRUD/chart/ChartCard.tsx +++ b/superset-frontend/src/views/CRUD/chart/ChartCard.tsx @@ -29,6 +29,7 @@ import { AntdDropdown } from 'src/components'; import { Menu } from 'src/components/Menu'; import FaveStar from 'src/components/FaveStar'; import FacePile from 'src/components/FacePile'; +import moment from 'moment'; import { handleChartDelete, CardStyles } from '../utils'; interface ChartCardProps { @@ -153,7 +154,7 @@ export default function ChartCard({ url={bulkSelectEnabled ? undefined : chart.url} imgURL={chart.thumbnail_url || ''} imgFallbackURL="/static/assets/images/chart-card-fallback.svg" - description={t('Modified %s', chart.changed_on_delta_humanized)} + description={t('Modified %s', moment(chart.changed_on_utc).fromNow())} coverLeft={} coverRight={ diff --git a/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx b/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx index 2da9f45515336..0159902b90a5b 100644 --- a/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx +++ b/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx @@ -30,6 +30,7 @@ import Label from 'src/components/Label'; import FacePile from 'src/components/FacePile'; import FaveStar from 'src/components/FaveStar'; import { Dashboard } from 'src/views/CRUD/types'; +import moment from 'moment'; interface DashboardCardProps { isChart?: boolean; @@ -162,7 +163,10 @@ function DashboardCard({ linkComponent={Link} imgURL={dashboard.thumbnail_url} imgFallbackURL="/static/assets/images/dashboard-card-fallback.svg" - description={t('Modified %s', dashboard.changed_on_delta_humanized)} + description={t( + 'Modified %s', + moment(dashboard.changed_on_utc).fromNow(), + )} coverLeft={} actions={ diff --git a/superset-frontend/src/views/CRUD/welcome/Welcome.tsx b/superset-frontend/src/views/CRUD/welcome/Welcome.tsx index 2d564bc66fe9f..e0f04ca1d4f79 100644 --- a/superset-frontend/src/views/CRUD/welcome/Welcome.tsx +++ b/superset-frontend/src/views/CRUD/welcome/Welcome.tsx @@ -279,7 +279,7 @@ function Welcome({ user, addDangerToast }: WelcomeProps) { return ( -

Home

+

{t('Home')}

{isFeatureEnabled(FeatureFlag.THUMBNAILS) ? (
diff --git a/superset/models/sql_lab.py b/superset/models/sql_lab.py index 04d5fc9a94359..38c152071ba9a 100644 --- a/superset/models/sql_lab.py +++ b/superset/models/sql_lab.py @@ -16,6 +16,7 @@ # under the License. """A collection of ORM sqlalchemy models for SQL Lab""" import re +import pytz from datetime import datetime from typing import Any, Dict, List @@ -230,6 +231,10 @@ def pop_tab_link(self) -> Markup: def user_email(self) -> str: return self.user.email + @property + def last_run(self) -> str: + return self.changed_on.astimezone(pytz.utc).strftime("%Y-%m-%dT%H:%M:%S.%f%z") + @property def sqlalchemy_uri(self) -> URL: return self.database.sqlalchemy_uri diff --git a/superset/queries/saved_queries/api.py b/superset/queries/saved_queries/api.py index 04df2345c1c2f..8455ca679ccaa 100644 --- a/superset/queries/saved_queries/api.py +++ b/superset/queries/saved_queries/api.py @@ -110,6 +110,7 @@ class SavedQueryRestApi(BaseSupersetModelRestApi): "sql_tables", "rows", "last_run_delta_humanized", + "last_run", "extra", ] add_columns = ["db_id", "description", "label", "schema", "sql"] diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index 78ca9dbd2436d..f0aad563c96c9 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -437,6 +437,7 @@ "Add Druid Column": ["Ajouter une colonne Druid"], "Edit Druid Column": ["Éditer une colonne Druid"], "Column": ["Colonne"], + "column": ["colonne"], "Type": ["Type"], "Datasource": ["Source de données"], "Groupable": ["Groupable"], @@ -951,7 +952,9 @@ "Annotation Layers": ["Couches d'annotations"], "Manage": ["Gestion"], "Dashboards": ["Tableaux de bord"], + "dashboards": ["tableaux de bord"], "Charts": ["Graphiques"], + "charts": ["graphiques"], "Plugins": ["Plugins"], "CSS Templates": ["Templates CSS"], "Row Level Security": ["Sécurité de niveau ligne"], @@ -1290,6 +1293,7 @@ "Add Annotation Layer": ["Ajouter une couche d'annotation"], "Edit Annotation Layer": ["Editer la couche d'annotation"], "Name": ["Nom"], + "name": ["nom"], "Table [%{table}s] could not be found, please double check your database connection, schema, and table name, error: {}": [ "La table [%{table}s] n'a pu être trouvée, vérifiez à nouveau votre la connexion à votre base de données, le schéma et le nom de la table, error: {}" ], @@ -1936,6 +1940,9 @@ "Run a query to display results here": [ "Lancer la requête pour afficher les résultats ici" ], + "Run a query to display results": [ + "Lancer une requête pour afficher les résultats" + ], "Preview: `%s`": ["Prévisualisation : `%s`"], "Results": ["Résultats"], "Query history": ["Historiques des requêtes"], @@ -2949,7 +2956,17 @@ "User must select a value for this filter": [ "L'utilisateur doit sélectionner une valeur pour ce filtre" ], - "Filter configuration": ["Configuration du filtre"], + "Filter Configuration": ["Configuration du filtre"], + "Filter Settings": ["Paramètres du filtre"], + "Inverse selection": ["Inverser la selection"], + "Dynamically search all filter values": ["Charge dynamiquement les valeurs du filtre"], + "Filter value is required": ["La valeur du filtre est requise"], + "Default value must be set when \"Filter value is required\" is checked": ["La valeur par defaut doit être initialisé si \"La valeur du filtre est requise\" est selectionné"], + "User must select a value before applying the filter": ["L'utilisateur doit selectionner une valeur avant d'appliquer le filtre"], + "When using this option, default value can’t be set": ["Quand l'option est utilisée, une valeur par defaut doit être indiquée"], + "Exclude selected values": ["Exclus les valeurs selectionnées"], + "Can select multiple values": ["Peut selectionner plusieurs valeurs"], + "Select first filter value by default": ["Selectionne la première valeur du filtre par défaut"], "Custom SQL ad-hoc filters are not available for the native Druid connector": [ "Les filtres ad-hoc pour le SQL personnalisé ne sont par disponibles pour le connecteur Druid natif" ], @@ -2984,7 +3001,6 @@ "Simple ad-hoc metrics are not enabled for this dataset": [ "Les métriques ad-hoc simples ne sont pas disponibles pour ce dataset" ], - "column": ["colonne"], "aggregate": ["agrégat"], "Custom SQL ad-hoc metrics are not available for the native Druid connector": [ "Les métriques ad-hoc pour le SQL personnalisé ne sont pas disponibles pour le connecteur Druid natif" @@ -3269,7 +3285,7 @@ "Etes-vous sûr de vouloir supprimer les couches sélectionnées ?" ], "Are you sure you want to delete": ["Etes-vous sûr de vouloir supprimer"], - "Modified %s": ["%s modifié"], + "Modified %s": ["Modifié %s"], "The passwords for the databases below are needed in order to import them together with the charts. Please note that the \"Secure Extra\" and \"Certificate\" sections of the database configuration are not present in export files, and should be added manually after the import if they are needed.": [ "Les mots de passe pour les bases de données ci-dessous sont nécessaires pour les importer en même temps que les graphiques. Notez que les sections \"Securité Supplémentaire\" et \"Certificat\" de la configuration de la base de données ne sont pas présents dans les fichiers d'export et doivent être ajoutés manuellement après l'import si nécessaire." ], @@ -3293,6 +3309,7 @@ "Une erreur s'est produite durant la récupération du graphique créé par les valeurs : %s" ], "Viz type": ["Type"], + "viz type": ["type de visualisation"], "Alphabetical": ["Alphabétique"], "Recently modified": ["Dernière modification"], "Least recently modified": ["Dernière modification"], @@ -3621,6 +3638,7 @@ "Edited": ["Édité"], "Created": ["Créé le"], "Viewed": ["Consultés"], + "Viewed %s": ["Consultés %s"], "Mine": ["Personnel"], "Recently viewed charts, dashboards, and saved queries will appear here": [ "Les graphiques, tableaux de bord et requêtes sauvegardées qui ont été récemment consultés apparaîtront ici" @@ -3644,7 +3662,7 @@ "${tableName}": ["${tableName}"], "query": ["requête"], "Share": ["Partage de requête"], - "Ran %s": ["A exécuté %s"], + "Ran %s": ["A été exécuté %s"], "There was an issue fetching your recent activity: %s": [ "Une erreur s'est produite lors de la récupération de votre activité récente : %s" ], @@ -3658,6 +3676,8 @@ "Une erreur s'est produite lors de la récupération de vos requêtes sauvegardées : %s" ], "Recents": ["Récents"], + "recents": ["récents"], + "recent": ["date"], "Select start and end date": [ "Selectionner la date de début et la date de fin" ], @@ -3721,7 +3741,77 @@ "Percentages": ["Pourcentages"], "Tabular": ["Tabulaire"], "Text": ["Zone de texte"], - "Trend": ["Tendance"] + "Trend": ["Tendance"], + "View All »": ["Tout voir »"], + "Add/Edit Filters": ["Ajouter/Modifier les filtres"], + "Add filters and dividers": ["Ajouter des filtres et diviseurs"], + "Add and edit filters": ["Ajouter et modifier les filtres"], + "Last": ["Dernier"], + "last day": ["hier"], + "last week": ["la semaine derniere"], + "last month": ["le mois dernier"], + "last quarter": ["le trimestre dernier"], + "last year": ["l'année dernière"], + "previous calendar week": ["calendrier de la semaine dernière"], + "previous calendar month": ["calendrier du mois dernier"], + "previous calendar year": ["calendrier de l'année dernière"], + "Days %s": ["Jours %s"], + "Before": ["Avant"], + "After": ["Après"], + "Custom": ["Personnalisée"], + "Seconds %s": ["Secondes %s"], + "Minutes %s": ["Minutes %s"], + "Hours %s": ["Heures %s"], + "Weeks %s": ["Semaines %s"], + "Months %s": ["Mois %s"], + "Quarters %s": ["Trimestres %s"], + "Years %s": ["Année %s"], + "Certified": ["Certifié"], + "Relative Date/Time": ["Date/Heure Relative"], + "Specific Date/Time": ["Date/Heure Spécifique"], + "Now": ["Maintenant"], + "Midnight": ["Minuit"], + "Apply filters": ["Appliquer les filtres"], + "Single Value": ["Valeur Unique"], + "Single value": ["Valeur unique"], + "Copy permalink to clipboard": ["Copier le lien dans le presse-papiers"], + "Share permalink by email": ["Partager le lien par mail"], + "Connect database": ["Connexion à la base de données"], + "Upload CSV to database": ["Importer des fichiers CSV vers la base de données"], + "Upload columnar file to database": ["Importer des colonnes vers la base de données"], + "Upload Excel file to database": ["Importer des fichiers Excel vers la base de données"], + "No %(tableName)s yet": ["Il n'y a pas encore de %(tableName)s"], + "saved queries": ["requête sauvegardée"], + "See all %(tableName)s": ["Explorer - %(tableName)s"], + "Sort by %s": ["Trier par %s"], + "Filters out of scope (%d)": ["Filtres hors du champ d'application (%d)"], + "There are no charts added to this dashboard": ["Il n'y a pas de graphiques ajouté dans ce tableau de bord"], + "Go to the edit mode to configure the dashboard and add charts": ["Allez dans l'edition pour configurer le tableau de bord et ajouter des graphiques"], + "No filters are currently added": ["Aucun filtre ajouté"], + "Drag and drop components and charts to the dashboard": ["Glissez/Déposez des composants et des graphiques sur le tableau de bord"], + "You can create new charts or use existing ones from the panel on the right": ["Vous pouvez créer de nouveaux graphiques ou utililser ceux existants à partir du panneau de droite"], + "You can create a new chart or use existing ones from the panel on the right": ["Vous pouvez créer un nouveau graphique ou utililser ceux existants à partir du panneau de droite"], + "Enable 'Allow data upload' in any database's settings": ["Activez l'option 'Autoriser le chargement de données' dans les paramètres de la base de données"], + "There are no components added to this tab": ["Il n'y a pas de composant à ajouter dans cet onglet"], + "You can add the components in the edit mode": ["Vous pouvez ajouter les composants via mode edition"], + "You can add the components in the": ["Vous pouvez ajouter les composants via le"], + "edit mode": ["mode edition"], + "Time Column": ["Colonne de temps"], + "Time Grain": ["Granularité"], + "Pivot Options": ["Options de pivot"], + "Aggregation function": ["Fonction d'agrégation"], + "Aggregate function to apply when pivoting and computing the total rows and columns": ["Fonction d'agrégation à appliquer lors du pivotement et du calcul du total des lignes et des colonnes"], + "Combine Metrics": ["Combiner les métriques"], + "Show totals": ["Afficher les totaux"], + "Transpose Pivot": ["Pivot de transposition"], + "Update chart": ["Mettre à jour"], + "Display total row/column": ["Affiche le total ligne/colonne"], + "Swap Groups and Columns": ["Permuter les groupes et les colonnes"], + "Samples": ["Exemples"], + "Number format": ["Format D3"], + "Date format": ["Format Date"], + "Display metrics side by side within each column, as opposed to each column being displayed side by side for each metric.": ["Affichez les indicateurs côte à côte dans chaque colonne, au lieu d'afficher chaque colonne côte à côte pour chaque indicateur."], + "Click the button above to add a filter to the dashboard": ["Cliquez sur le bouton ci-dessus pour ajouter un filtre au tableau de bord"] } } } diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index 165fb1b6d2c99..84bda6feb1419 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -928,7 +928,7 @@ msgstr "" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:84 #, fuzzy msgid "After" -msgstr "date" +msgstr "Après" #: superset-frontend/packages/superset-ui-chart-controls/src/constants.ts:45 #, fuzzy @@ -2035,7 +2035,7 @@ msgstr "Faites attention." #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:76 #, fuzzy msgid "Before" -msgstr "Forcer à rafraîchir" +msgstr "Avant" #: superset-frontend/plugins/legacy-preset-chart-big-number/src/BigNumberTotal/index.ts:38 #: superset/viz.py:1254 @@ -2500,7 +2500,7 @@ msgstr "Détails de certification" #: superset-frontend/src/views/CRUD/dashboard/DashboardList.tsx:504 #, fuzzy msgid "Certified" -msgstr "Certifié par" +msgstr "Certifié" #: superset-frontend/src/components/Datasource/DatasourceEditor.jsx:259 msgid "Certified By" @@ -3750,7 +3750,7 @@ msgstr "Actif" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:33 #, fuzzy msgid "Custom" -msgstr "Personnaliser" +msgstr "Personnalisée" #: superset/views/dynamic_plugins.py:59 msgid "Custom Plugin" @@ -4270,7 +4270,7 @@ msgstr "Jour" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:66 #, fuzzy, python-format msgid "Days %s" -msgstr "A exécuté %s" +msgstr "Jours %s" #: superset/connectors/sqla/models.py:1593 msgid "Db engine did not return all queried columns" @@ -4794,6 +4794,10 @@ msgstr "Distibution - histogramme" msgid "Divider" msgstr "Diviseur" +#: superset-frontend/src/components/ListView/Filters/Select.tsx:77 +msgid "Filter" +msgstr "Filtre" + #: superset-frontend/plugins/legacy-preset-chart-nvd3/src/Pie/controlPanel.ts:86 #: superset-frontend/plugins/plugin-chart-echarts/src/Pie/controlPanel.tsx:211 msgid "Do you want a donut or a pie?" @@ -6035,7 +6039,7 @@ msgstr "Configuration et portée des filtres" #: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/FilterControls.tsx:159 #, python-format msgid "Filters out of scope (%d)" -msgstr "" +msgstr "Filtres hors du champ d'application (%d)" #: superset/connectors/sqla/views.py:348 msgid "" @@ -6340,6 +6344,7 @@ msgid "Histogram" msgstr "Histogramme" #: superset/initialization/__init__.py:222 +#: superset-frontend/src/views/CRUD/welcome/Welcome.tsx:278 msgid "Home" msgstr "Accueil" @@ -6371,7 +6376,7 @@ msgstr "Heure" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:65 #, fuzzy, python-format msgid "Hours %s" -msgstr "heure" +msgstr "Heures %s" #: superset-frontend/src/components/Datasource/DatasourceEditor.jsx:779 msgid "Hours offset" @@ -7706,7 +7711,7 @@ msgstr "" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:93 msgid "Midnight" -msgstr "" +msgstr "Minuit" #: superset-frontend/plugins/plugin-chart-echarts/src/Gauge/controlPanel.tsx:88 #: superset-frontend/src/explore/components/controls/BoundsControl.jsx:112 @@ -7783,7 +7788,7 @@ msgstr "Minute" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:64 #, fuzzy, python-format msgid "Minutes %s" -msgstr "minute" +msgstr "Minutes %s" #: superset-frontend/src/views/CRUD/data/database/DatabaseModal/index.tsx:93 #, fuzzy @@ -7839,7 +7844,7 @@ msgstr "Mois" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:68 #, fuzzy, python-format msgid "Months %s" -msgstr "mois" +msgstr "Mois %s" #: superset-frontend/src/explore/components/controls/DatasourceControl/index.jsx:238 msgid "More dataset related options" @@ -8080,7 +8085,7 @@ msgstr "Non" #: superset-frontend/src/views/CRUD/welcome/EmptyState.tsx:74 #, python-format msgid "No %(tableName)s yet" -msgstr "" +msgstr "Il n'y a pas encore de %(tableName)s" #: superset-frontend/src/views/CRUD/alert/AlertList.tsx:376 #, python-format @@ -8154,6 +8159,7 @@ msgstr "Aucun tableau de bord favori pour le moment, cliquer sur les étoiles !" #: superset-frontend/packages/superset-ui-chart-controls/src/shared-controls/index.tsx:313 #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:35 #: superset-frontend/src/explore/controls.jsx:342 +#: superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx:320 msgid "No filter" msgstr "Pas de filtre" @@ -8279,7 +8285,7 @@ msgstr "Novembre" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:92 #, fuzzy msgid "Now" -msgstr "Ligne" +msgstr "Maintenant" #: superset/datasets/filters.py:26 msgid "Null or Empty" @@ -9435,7 +9441,7 @@ msgstr "Trimestre" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:69 #, fuzzy, python-format msgid "Quarters %s" -msgstr "Trimestre" +msgstr "Trimestres %s" #: superset-frontend/plugins/legacy-plugin-chart-calendar/src/controlPanel.ts:32 #: superset-frontend/plugins/legacy-plugin-chart-chord/src/controlPanel.ts:26 @@ -9591,7 +9597,7 @@ msgstr "Spatial" #: superset-frontend/src/views/CRUD/welcome/SavedQueries.tsx:318 #, python-format msgid "Ran %s" -msgstr "A exécuté %s" +msgstr "A été exécuté %s" #: superset-frontend/plugins/legacy-plugin-chart-country-map/src/index.js:35 #: superset-frontend/plugins/legacy-plugin-chart-histogram/src/index.js:38 @@ -9810,7 +9816,7 @@ msgstr "" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:91 #, fuzzy msgid "Relative Date/Time" -msgstr "Quantité relative" +msgstr "Date/Heure Relative" #: superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx:157 #: superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx:210 @@ -10260,6 +10266,14 @@ msgstr "Exécuter" msgid "Run a query to display results here" msgstr "Lancer la requête pour afficher les résultats ici" +#: superset-frontend/src/explore/components/DataTablesPane/index.tsx:182 +msgid "Run a query to display results" +msgstr "Lancer une requête pour afficher les résultats" + +#: superset-frontend/src/explore/components/DataTablesPane/index.tsx:181 +msgid "Run a query to display samples" +msgstr "Lancer une requête pour afficher les exemples" + #: superset-frontend/src/explore/components/ExploreAdditionalActionsMenu/index.jsx:101 msgid "Run in SQL Lab" msgstr "Exécuter dans SQL Lab" @@ -10677,7 +10691,7 @@ msgstr "" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:63 #, fuzzy, python-format msgid "Seconds %s" -msgstr "30 secondes" +msgstr "%s secondes" #: superset/views/database/mixins.py:197 msgid "Secure Extra" @@ -10701,7 +10715,7 @@ msgstr "Securité et accès" #: superset-frontend/src/views/CRUD/welcome/EmptyState.tsx:157 #, fuzzy, python-format msgid "See all %(tableName)s" -msgstr "Explorer - %(table)s" +msgstr "Explorer - %(tableName)s" #: superset-frontend/src/components/ErrorMessage/ErrorAlert.tsx:155 msgid "See less" @@ -11328,12 +11342,12 @@ msgstr "Filtres par métrique" #: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx:1234 #, fuzzy msgid "Single Value" -msgstr "Valeur droite" +msgstr "Valeur Unique" #: superset-frontend/src/filters/components/Range/controlPanel.ts:65 #, fuzzy msgid "Single value" -msgstr "Valeur droite" +msgstr "Valeur unique" #: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx:1251 msgid "Single value type" @@ -11507,7 +11521,22 @@ msgstr "Trier par" #: superset-frontend/src/dashboard/components/SliceAdder.jsx:256 #, fuzzy, python-format msgid "Sort by %s" -msgstr "Trier par" +msgstr "Trier par %s" + +#: superset-frontend/src/dashboard/components/SliceAdder.jsx:66 +#, fuzzy, python-format +msgid "viz type" +msgstr "type de visualisation" + +#: superset-frontend/src/dashboard/components/SliceAdder.jsx:65 +#, fuzzy, python-format +msgid "name" +msgstr "nom" + +#: superset-frontend/src/dashboard/components/SliceAdder.jsx:66 +#, fuzzy, python-format +msgid "recent" +msgstr "date" #: superset-frontend/plugins/legacy-plugin-chart-chord/src/controlPanel.ts:39 #: superset-frontend/plugins/legacy-plugin-chart-force-directed/src/controlPanel.ts:38 @@ -11588,7 +11617,7 @@ msgstr "Spatial" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:90 #, fuzzy msgid "Specific Date/Time" -msgstr "Retour au datetime spécifique." +msgstr "Date/Heure Spécifique" #: superset/views/database/forms.py:127 superset/views/database/forms.py:286 #: superset/views/database/forms.py:414 @@ -14357,7 +14386,7 @@ msgstr "" #: superset-frontend/src/views/CRUD/welcome/DashboardTable.tsx:219 #: superset-frontend/src/views/CRUD/welcome/SavedQueries.tsx:296 msgid "View All »" -msgstr "" +msgstr "Tout voir »" #: superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx:287 msgid "View chart in Explore" @@ -14395,7 +14424,7 @@ msgstr "Consultés" #: superset-frontend/src/views/CRUD/welcome/ActivityTable.tsx:124 #, fuzzy, python-format msgid "Viewed %s" -msgstr "Consultés" +msgstr "Consultés %s" #: superset-frontend/plugins/legacy-plugin-chart-map-box/src/controlPanel.ts:268 #, fuzzy @@ -14646,7 +14675,7 @@ msgstr "Semaine terminant le dimanche" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:67 #, fuzzy, python-format msgid "Weeks %s" -msgstr "semaine" +msgstr "Semaines %s" #: superset-frontend/src/components/ErrorMessage/TimeoutErrorMessage.tsx:52 #, python-format @@ -15201,7 +15230,7 @@ msgstr "Année" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:70 #, fuzzy, python-format msgid "Years %s" -msgstr "année" +msgstr "Année %s" #: superset-frontend/src/views/CRUD/chart/ChartList.tsx:443 #: superset-frontend/src/views/CRUD/chart/ChartList.tsx:537 @@ -15624,7 +15653,7 @@ msgstr "graphique" #: superset-frontend/src/views/CRUD/welcome/EmptyState.tsx:26 #, fuzzy msgid "charts" -msgstr "graphique" +msgstr "graphiques" #: superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopoverSqlTabContent/index.jsx:101 msgid "choose WHERE or HAVING..." @@ -15666,7 +15695,7 @@ msgstr "tableau de bord" #: superset-frontend/src/views/CRUD/welcome/EmptyState.tsx:27 #, fuzzy msgid "dashboards" -msgstr "tableau de bord" +msgstr "tableaux de bord" #: superset-frontend/src/views/CRUD/data/database/DatabaseList.tsx:89 #: superset-frontend/src/views/CRUD/data/database/DatabaseList.tsx:471 @@ -15879,27 +15908,27 @@ msgstr "Label" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:39 #, fuzzy msgid "last day" -msgstr "Samedi" +msgstr "hier" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:41 #, fuzzy msgid "last month" -msgstr "mois" +msgstr "le mois dernier" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:42 #, fuzzy msgid "last quarter" -msgstr "Trimestre" +msgstr "le trimestre dernier" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:40 #, fuzzy msgid "last week" -msgstr "semaine" +msgstr "la semaine derniere" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:43 #, fuzzy msgid "last year" -msgstr "Cluster" +msgstr "l'année dernière" #: superset-frontend/src/SqlLab/components/TableElement/index.tsx:120 msgid "latest partition:" @@ -15991,15 +16020,15 @@ msgstr "" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:53 msgid "previous calendar month" -msgstr "" +msgstr "calendrier du mois dernier" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:50 msgid "previous calendar week" -msgstr "" +msgstr "calendrier de la semaine dernière" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:56 msgid "previous calendar year" -msgstr "" +msgstr "calendrier de l'année dernière" #: superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx:153 msgid "published" @@ -16020,7 +16049,7 @@ msgstr "reboot" #: superset-frontend/src/views/CRUD/welcome/EmptyState.tsx:28 #, fuzzy msgid "recents" -msgstr "Récents" +msgstr "récents" #: superset-frontend/src/explore/components/controls/ConditionalFormattingControl/FormattingPopoverContent.tsx:43 msgid "red" @@ -16055,7 +16084,7 @@ msgstr "lignes récupérées" #: superset-frontend/src/views/CRUD/welcome/EmptyState.tsx:29 #, fuzzy msgid "saved queries" -msgstr "Requêtes sauvegardées" +msgstr "requêtes sauvegardées" #: superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx:124 msgid "search.num_records" @@ -16117,3 +16146,193 @@ msgstr "année" #: superset-frontend/src/explore/components/controls/ConditionalFormattingControl/FormattingPopoverContent.tsx:42 msgid "yellow" msgstr "jaune" + +#: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/Header/index.tsx:104 +msgid "Add/Edit Filters" +msgstr "Ajouter/Editer les filtres" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FilterTitlePane.tsx:109 +msgid "Add and edit filters" +msgstr "Ajouter et modifier les filtres" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigModal.tsx:500 +msgid "Add filters and dividers" +msgstr "Ajouter un filtre ou un diviseur" + +#: superset-frontend/src/views/components/MenuRight.tsx:105 +msgid "Connect database" +msgstr "Connexion à la base de données" + +#: superset-frontend/src/views/components/MenuRight.tsx:105 +msgid "No %s yet" +msgstr "Aucune %s" + +#: superset-frontend/src/dashboard/components/DashboardBuilder/DashboardBuilder.tsx:394 +msgid "There are no charts added to this dashboard" +msgstr "Il n'y a pas de graphiques ajouté dans ce tableau de bord" + +#: superset-frontend/src/dashboard/components/DashboardBuilder/DashboardBuilder.tsx:398 +msgid "Go to the edit mode to configure the dashboard and add charts" +msgstr "Allez dans l'edition pour configurer le tableau de bord et ajouter des graphiques" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx:276 +msgid "Filter Settings" +msgstr "Paramètres des filtres" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx:276 +msgid "Filter Configuration" +msgstr "Configuration du filtre" + +#: superset-frontend/src/filters/components/Select/controlPanel.ts:104 +msgid "Select first filter value by default" +msgstr "Selectionne la première valeur du filtre par défaut" + +#: superset-frontend/src/filters/components/GroupBy/controlPanel.ts:59 +#: superset-frontend/src/filters/components/Select/controlPanel.ts:77 +msgid "Can select multiple values" +msgstr "Peut selectionner plusieurs valeurs" + +#: superset-frontend/src/filters/components/Select/controlPanel.ts:136 +msgid "Dynamically search all filter values" +msgstr "Charge dynamiquement les valeurs du filtre" + +#: superset-frontend/src/filters/components/GroupBy/controlPanel.ts:72 +#: superset-frontend/src/filters/components/Range/controlPanel.ts:55 +#: superset-frontend/src/filters/components/Select/controlPanel.ts:90 +#: superset-frontend/src/filters/components/Time/controlPanel.ts:53 +#: superset-frontend/src/filters/components/TimeColumn/controlPanel.ts:33 +#: superset-frontend/src/filters/components/TimeGrain/controlPanel.ts:33 +msgid "Filter value is required" +msgstr "La valeur du filtre est requise" + +#: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/index.tsx:388 +#: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/index.tsx:428 +msgid "No filters are currently added" +msgstr "Aucun filtre ajouté" + +#: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/index.tsx:392 +#: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/index.tsx:432 +msgid "Click the button above to add a filter to the dashboard" +msgstr "Pour ajouter un filtre, cliquez sur le bouton au dessus" + +#: superset-frontend/src/dashboard/components/DashboardGrid.jsx:155 +msgid "Drag and drop components and charts to the dashboard" +msgstr "Glissez/Déposez des composants et des graphiques sur le tableau de bord" + +#: superset-frontend/src/dashboard/components/DashboardGrid.jsx:155 +msgid "You can create a new chart or use existing ones from the panel on the right" +msgstr "Vous pouvez créer un nouveau graphique ou utililser ceux existants à partir du panneau de droite" + +#: superset-frontend/src/dashboard/components/DashboardGrid.jsx:156 +msgid "You can create new charts or use existing ones from the panel on the right" +msgstr "Vous pouvez créer de nouveaux graphiques ou utililser ceux existants à partir du panneau de droite" + +#: superset-frontend/src/views/components/MenuRight.tsx:127 +msgid "Upload Excel file to database" +msgstr "Importer des fichiers Excel vers la base de données" + +#: superset-frontend/src/views/components/MenuRight.tsx:121 +msgid "Upload columnar file to database" +msgstr "Importer des colonnes vers la base de données" + +#: superset-frontend/src/views/components/MenuRight.tsx:115 +msgid "Upload CSV to database" +msgstr "Importer des fichiers CSV vers la base de données" + +#: superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx:319 +#: superset-frontend/src/dashboard/components/Header/HeaderActionsDropdown/index.jsx:269 +msgid "Share permalink by email" +msgstr "Partager le lien par mail" + +#: superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx:318 +#: superset-frontend/src/dashboard/components/Header/HeaderActionsDropdown/index.jsx:268 +msgid "Copy permalink to clipboard" +msgstr "Copier le lien dans le presse-papiers" + +#: superset-frontend/src/views/components/MenuRight.tsx:222 +#: superset-frontend/src/views/components/SubMenu.tsx:289 +msgid "Enable 'Allow data upload' in any database's settings" +msgstr "Activez l'option 'Autoriser le chargement de données' dans les paramètres de la base de données" + +#: superset-frontend/src/dashboard/components/DashboardGrid.jsx:195 +#: superset-frontend/src/dashboard/components/gridComponents/Tab.jsx:179 +msgid "There are no components added to this tab" +msgstr "Il n'y a pas de composant à ajouter dans cet onglet" + +#: superset-frontend/src/dashboard/components/DashboardGrid.jsx:200 +msgid "You can add the components in the edit mode" +msgstr "Vous pouvez ajouter les composants via mode edition" + +#: superset-frontend/src/dashboard/components/gridComponents/Tab.jsx:184 +msgid "You can add the components in the" +msgstr "Vous pouvez ajouter les composants via le" + +#: superset-frontend/src/dashboard/components/gridComponents/Tab.jsx:190 +msgid "edit mode" +msgstr "mode edition" + +#: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/ActionButtons/index.tsx:111 +msgid "Apply filters" +msgstr "Appliquer les filtres" + +#: superset-frontend/src/filters/components/Select/controlPanel.ts:110 +msgid "When using this option, default value can’t be set" +msgstr "Quand l'option est utilisée, une valeur par defaut doit être indiquée" + +#: superset-frontend/src/dashboard/components/DashboardGrid.jsx:199 +msgid "Edit the dashboard" +msgstr "Modifier le tableau de bord" + + +#: superset-frontend/packages/superset-ui-chart-controls/src/shared-controls/dndControls.tsx:161 +msgid "Time Column" +msgstr "Colonne de temps" + + +#: superset-frontend/packages/superset-ui-chart-controls/src/shared-controls/dndControls.tsx:199 +msgid "Time Grain" +msgstr "Granularité" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:46 +msgid "Pivot Options" +msgstr "Options de pivot" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:86 +msgid "Combine Metrics" +msgstr "Combiner les métriques" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:53 +msgid "Aggregation function" +msgstr "Fonction d'agrégation" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:101 +msgid "Transpose Pivot" +msgstr "Pivot de transposition" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:77 +msgid "Show totals" +msgstr "Afficher les totaux" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:77 +msgid "Swap Groups and Columns" +msgstr "Permuter les groupes et les colonnes" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:77 +msgid "Display metrics side by side within each column, as opposed to each column being displayed side by side for each metric." +msgstr "Affichez les indicateurs côte à côte dans chaque colonne, au lieu d'afficher chaque colonne côte à côte pour chaque indicateur." + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:77 +msgid "Display total row/column" +msgstr "Affiche le total ligne/colonne" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:77 +msgid "Aggregate function to apply when pivoting and computing the total rows and columns" +msgstr "Fonction d'agrégation à appliquer lors du pivotement et du calcul du total des lignes et des colonnes" + +#: superset-frontend/plugins/legacy-plugin-chart-pivot-table/src/controlPanel.ts:77 +msgid "update chart" +msgstr "Mettre à jour" + +#: superset-frontend/src/explore/components/DataTablesPane/index.tsx:500 +msgid "Samples" +msgstr "Exemples" diff --git a/superset/translations/messages.pot b/superset/translations/messages.pot index 53f2e0506df02..eff8b25e891bb 100644 --- a/superset/translations/messages.pot +++ b/superset/translations/messages.pot @@ -5907,6 +5907,7 @@ msgid "Histogram" msgstr "" #: superset/initialization/__init__.py:222 +#: superset-frontend/src/views/CRUD/welcome/Welcome.tsx:278 msgid "Home" msgstr "" @@ -7605,6 +7606,7 @@ msgstr "" #: superset-frontend/packages/superset-ui-chart-controls/src/shared-controls/index.tsx:313 #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:35 #: superset-frontend/src/explore/controls.jsx:342 +#: superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx:320 msgid "No filter" msgstr "" @@ -14919,3 +14921,11 @@ msgstr "" #: superset-frontend/src/explore/components/controls/ConditionalFormattingControl/FormattingPopoverContent.tsx:42 msgid "yellow" msgstr "" + +#: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/Header/index.tsx:104 +msgid "Add/Edit Filters" +msgstr "" + +#: superset-frontend/src/views/components/MenuRight.tsx:105 +msgid "Connect database" +msgstr "" From d92bf95bdd58b3b8408252334968c3ce5686582f Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Fri, 13 May 2022 14:36:52 -0400 Subject: [PATCH 03/16] add French translations remove translation for datePicker --- .../components/CustomFrame.tsx | 10 ----- superset/db_engine_specs/base.py | 40 +++++++++---------- .../translations/fr/LC_MESSAGES/messages.json | 4 ++ .../translations/fr/LC_MESSAGES/messages.po | 18 ++++++++- 4 files changed, 41 insertions(+), 31 deletions(-) diff --git a/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx b/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx index c457ccfc3c909..48637f36e33f7 100644 --- a/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx +++ b/superset-frontend/src/explore/components/controls/DateFilterControl/components/CustomFrame.tsx @@ -41,16 +41,9 @@ import { CustomRangeKey, FrameComponentProps, } from 'src/explore/components/controls/DateFilterControl/types'; -import { bootstrapData } from 'src/preamble'; -import localeFR from 'antd/es/date-picker/locale/fr_FR'; -import localeEN from 'antd/es/date-picker/locale/en_US'; export function CustomFrame(props: FrameComponentProps) { const { customRange, matchedFlag } = customTimeRangeDecode(props.value); - let locale = localeEN; - if (bootstrapData.common.locale === 'fr') { - locale = localeFR; - } if (!matchedFlag) { props.onChange(customTimeRangeEncode(customRange)); } @@ -139,7 +132,6 @@ export function CustomFrame(props: FrameComponentProps) { onChange('sinceDatetime', datetime.format(MOMENT_FORMAT)) } allowClear={false} - locale={locale} /> )} @@ -192,7 +184,6 @@ export function CustomFrame(props: FrameComponentProps) { onChange('untilDatetime', datetime.format(MOMENT_FORMAT)) } allowClear={false} - locale={locale} /> )} @@ -250,7 +241,6 @@ export function CustomFrame(props: FrameComponentProps) { } allowClear={false} className="control-anchor-to-datetime" - locale={locale} /> )} diff --git a/superset/db_engine_specs/base.py b/superset/db_engine_specs/base.py index 1393fcdac5915..17d6db86164a2 100644 --- a/superset/db_engine_specs/base.py +++ b/superset/db_engine_specs/base.py @@ -94,26 +94,26 @@ class TimeGrain(NamedTuple): builtin_time_grains: Dict[Optional[str], str] = { - None: __("Original value"), - "PT1S": __("Second"), - "PT5S": __("5 second"), - "PT30S": __("30 second"), - "PT1M": __("Minute"), - "PT5M": __("5 minute"), - "PT10M": __("10 minute"), - "PT15M": __("15 minute"), - "PT30M": __("30 minute"), - "PT1H": __("Hour"), - "PT6H": __("6 hour"), - "P1D": __("Day"), - "P1W": __("Week"), - "P1M": __("Month"), - "P3M": __("Quarter"), - "P1Y": __("Year"), - "1969-12-28T00:00:00Z/P1W": __("Week starting Sunday"), - "1969-12-29T00:00:00Z/P1W": __("Week starting Monday"), - "P1W/1970-01-03T00:00:00Z": __("Week ending Saturday"), - "P1W/1970-01-04T00:00:00Z": __("Week_ending Sunday"), + None: _("Original value"), + "PT1S": _("Second"), + "PT5S": _("5 second"), + "PT30S": _("30 second"), + "PT1M": _("Minute"), + "PT5M": _("5 minute"), + "PT10M": _("10 minute"), + "PT15M": _("15 minute"), + "PT30M": _("30 minute"), + "PT1H": _("Hour"), + "PT6H": _("6 hour"), + "P1D": _("Day"), + "P1W": _("Week"), + "P1M": _("Month"), + "P3M": _("Quarter"), + "P1Y": _("Year"), + "1969-12-28T00:00:00Z/P1W": _("Week starting Sunday"), + "1969-12-29T00:00:00Z/P1W": _("Week starting Monday"), + "P1W/1970-01-03T00:00:00Z": _("Week ending Saturday"), + "P1W/1970-01-04T00:00:00Z": _("Week_ending Sunday"), } diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index f0aad563c96c9..35574577057e6 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -3810,6 +3810,10 @@ "Samples": ["Exemples"], "Number format": ["Format D3"], "Date format": ["Format Date"], + "Values dependent on": ["Valeurs dépendent de"], + "No results were returned for this query": ["Aucun résultat avec ces paramètres"], + "Values selected in other filters will affect the filter options to only show relevant values": ["Les valeurs sélectionnées dans d'autres filtres affecteront les options de filtrage afin de n'afficher que les valeurs pertinentes"], + "Values are dependent on other filters": ["Les valeurs dépendent d'autres filtres"], "Display metrics side by side within each column, as opposed to each column being displayed side by side for each metric.": ["Affichez les indicateurs côte à côte dans chaque colonne, au lieu d'afficher chaque colonne côte à côte pour chaque indicateur."], "Click the button above to add a filter to the dashboard": ["Cliquez sur le bouton ci-dessus pour ajouter un filtre au tableau de bord"] } diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index 84bda6feb1419..bc22a4abde0ab 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -11351,7 +11351,7 @@ msgstr "Valeur unique" #: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx:1251 msgid "Single value type" -msgstr "" +msgstr "Type de valeur unique" #: superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx:261 msgid "Size of edge symbols" @@ -16336,3 +16336,19 @@ msgstr "Mettre à jour" #: superset-frontend/src/explore/components/DataTablesPane/index.tsx:500 msgid "Samples" msgstr "Exemples" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/DependencyList.tsx:193 +msgid "Values are dependent on other filters" +msgstr "Les valeurs dépendent d'autres filtres" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/DependencyList.tsx:197 +msgid "Values selected in other filters will affect the filter options to only show relevant values" +msgstr "Les valeurs sélectionnées dans d'autres filtres affecteront les options de filtrage afin de n'afficher que les valeurs pertinentes" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/DependencyList.tsx:197 +msgid "Values dependent on" +msgstr "Valeurs dépendent de" + +#: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/DependencyList.tsx:197 +msgid "No results were returned for this query" +msgstr "Aucun résultat avec ces paramètres" From eb43b7adcad6b23db1abc7e7bbfb9ca89f4c3a1e Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Mon, 16 May 2022 10:08:57 -0400 Subject: [PATCH 04/16] remove some change that will be in an other PR --- .../src/views/CRUD/welcome/Welcome.tsx | 2 +- superset/db_engine_specs/base.py | 40 +++++++++---------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/superset-frontend/src/views/CRUD/welcome/Welcome.tsx b/superset-frontend/src/views/CRUD/welcome/Welcome.tsx index e0f04ca1d4f79..2d564bc66fe9f 100644 --- a/superset-frontend/src/views/CRUD/welcome/Welcome.tsx +++ b/superset-frontend/src/views/CRUD/welcome/Welcome.tsx @@ -279,7 +279,7 @@ function Welcome({ user, addDangerToast }: WelcomeProps) { return ( -

{t('Home')}

+

Home

{isFeatureEnabled(FeatureFlag.THUMBNAILS) ? (
diff --git a/superset/db_engine_specs/base.py b/superset/db_engine_specs/base.py index 17d6db86164a2..1393fcdac5915 100644 --- a/superset/db_engine_specs/base.py +++ b/superset/db_engine_specs/base.py @@ -94,26 +94,26 @@ class TimeGrain(NamedTuple): builtin_time_grains: Dict[Optional[str], str] = { - None: _("Original value"), - "PT1S": _("Second"), - "PT5S": _("5 second"), - "PT30S": _("30 second"), - "PT1M": _("Minute"), - "PT5M": _("5 minute"), - "PT10M": _("10 minute"), - "PT15M": _("15 minute"), - "PT30M": _("30 minute"), - "PT1H": _("Hour"), - "PT6H": _("6 hour"), - "P1D": _("Day"), - "P1W": _("Week"), - "P1M": _("Month"), - "P3M": _("Quarter"), - "P1Y": _("Year"), - "1969-12-28T00:00:00Z/P1W": _("Week starting Sunday"), - "1969-12-29T00:00:00Z/P1W": _("Week starting Monday"), - "P1W/1970-01-03T00:00:00Z": _("Week ending Saturday"), - "P1W/1970-01-04T00:00:00Z": _("Week_ending Sunday"), + None: __("Original value"), + "PT1S": __("Second"), + "PT5S": __("5 second"), + "PT30S": __("30 second"), + "PT1M": __("Minute"), + "PT5M": __("5 minute"), + "PT10M": __("10 minute"), + "PT15M": __("15 minute"), + "PT30M": __("30 minute"), + "PT1H": __("Hour"), + "PT6H": __("6 hour"), + "P1D": __("Day"), + "P1W": __("Week"), + "P1M": __("Month"), + "P3M": __("Quarter"), + "P1Y": __("Year"), + "1969-12-28T00:00:00Z/P1W": __("Week starting Sunday"), + "1969-12-29T00:00:00Z/P1W": __("Week starting Monday"), + "P1W/1970-01-03T00:00:00Z": __("Week ending Saturday"), + "P1W/1970-01-04T00:00:00Z": __("Week_ending Sunday"), } From fb9c84db534affed61e58122ba84fd268e3bc983 Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Mon, 16 May 2022 10:24:34 -0400 Subject: [PATCH 05/16] remove some change that will be in "translating varaibles" PR --- superset-frontend/src/dashboard/components/SliceAdder.jsx | 2 +- .../components/controls/DateFilterControl/DateFilterLabel.tsx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/superset-frontend/src/dashboard/components/SliceAdder.jsx b/superset-frontend/src/dashboard/components/SliceAdder.jsx index 1a660e3e3b6d6..d4d9a9fa5aa21 100644 --- a/superset-frontend/src/dashboard/components/SliceAdder.jsx +++ b/superset-frontend/src/dashboard/components/SliceAdder.jsx @@ -254,7 +254,7 @@ class SliceAdder extends React.Component { value={this.state.sortBy} onChange={this.handleSelect} options={Object.entries(KEYS_TO_SORT).map(([key, label]) => ({ - label: t('Sort by %s', t(label)), + label: t('Sort by %s', label), value: key, }))} placeholder={t('Sort by')} diff --git a/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx b/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx index 2ea1e910ca574..853c859196baa 100644 --- a/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx +++ b/superset-frontend/src/explore/components/controls/DateFilterControl/DateFilterLabel.tsx @@ -314,7 +314,7 @@ export default function DateFilterLabel(props: DateFilterControlProps) {
{t('Actual time range')}
- {validTimeRange &&
{t(evalResponse)}
} + {validTimeRange &&
{evalResponse}
} {!validTimeRange && ( @@ -373,7 +373,7 @@ export default function DateFilterLabel(props: DateFilterControlProps) { > From 5e741ff0f99ac05c2af4fddba32333a175098cdd Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Mon, 16 May 2022 10:50:07 -0400 Subject: [PATCH 06/16] remove some change that will be in "translate-changed_on_delta_humanized" PR --- superset-frontend/src/dashboard/components/SliceAdder.jsx | 3 +-- .../src/dashboard/components/dnd/AddSliceDragPreview.jsx | 3 +-- superset-frontend/src/views/CRUD/chart/ChartCard.tsx | 3 +-- .../src/views/CRUD/dashboard/DashboardCard.tsx | 6 +----- superset-frontend/src/views/CRUD/welcome/SavedQueries.tsx | 4 +--- superset/models/sql_lab.py | 5 ----- superset/queries/saved_queries/api.py | 1 - 7 files changed, 5 insertions(+), 20 deletions(-) diff --git a/superset-frontend/src/dashboard/components/SliceAdder.jsx b/superset-frontend/src/dashboard/components/SliceAdder.jsx index d4d9a9fa5aa21..8c2fc920e9b20 100644 --- a/superset-frontend/src/dashboard/components/SliceAdder.jsx +++ b/superset-frontend/src/dashboard/components/SliceAdder.jsx @@ -35,7 +35,6 @@ import { } from 'src/dashboard/util/constants'; import { slicePropShape } from 'src/dashboard/util/propShapes'; import { FILTER_BOX_MIGRATION_STATES } from 'src/explore/constants'; -import moment from 'moment'; import AddSliceCard from './AddSliceCard'; import AddSliceDragPreview from './dnd/AddSliceDragPreview'; import DragDroppable from './dnd/DragDroppable'; @@ -222,7 +221,7 @@ class SliceAdder extends React.Component { innerRef={dragSourceRef} style={style} sliceName={cellData.slice_name} - lastModified={moment.utc(cellData.changed_on).fromNow()} + lastModified={cellData.changed_on_humanized} visType={cellData.viz_type} datasourceUrl={cellData.datasource_url} datasourceName={cellData.datasource_name} diff --git a/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx b/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx index c61c6a2e350c5..404561e750ee1 100644 --- a/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx +++ b/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx @@ -20,7 +20,6 @@ import React from 'react'; import PropTypes from 'prop-types'; import { DragLayer } from 'react-dnd'; -import moment from 'moment'; import AddSliceCard from '../AddSliceCard'; import { slicePropShape } from '../../util/propShapes'; import { @@ -73,7 +72,7 @@ function AddSliceDragPreview({ dragItem, slices, isDragging, currentOffset }) { transform: `translate(${currentOffset.x}px, ${currentOffset.y}px)`, }} sliceName={slice.slice_name} - lastModified={moment.utc(slice.changed_on).fromNow()} + lastModified={slice.changed_on_humanized} visType={slice.viz_type} datasourceUrl={slice.datasource_url} datasourceName={slice.datasource_name} diff --git a/superset-frontend/src/views/CRUD/chart/ChartCard.tsx b/superset-frontend/src/views/CRUD/chart/ChartCard.tsx index 1e37ce5cd61c2..07f9dbf3bfbd8 100644 --- a/superset-frontend/src/views/CRUD/chart/ChartCard.tsx +++ b/superset-frontend/src/views/CRUD/chart/ChartCard.tsx @@ -29,7 +29,6 @@ import { AntdDropdown } from 'src/components'; import { Menu } from 'src/components/Menu'; import FaveStar from 'src/components/FaveStar'; import FacePile from 'src/components/FacePile'; -import moment from 'moment'; import { handleChartDelete, CardStyles } from '../utils'; interface ChartCardProps { @@ -154,7 +153,7 @@ export default function ChartCard({ url={bulkSelectEnabled ? undefined : chart.url} imgURL={chart.thumbnail_url || ''} imgFallbackURL="/static/assets/images/chart-card-fallback.svg" - description={t('Modified %s', moment(chart.changed_on_utc).fromNow())} + description={t('Modified %s', chart.changed_on_delta_humanized)} coverLeft={} coverRight={ diff --git a/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx b/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx index 0159902b90a5b..2da9f45515336 100644 --- a/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx +++ b/superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx @@ -30,7 +30,6 @@ import Label from 'src/components/Label'; import FacePile from 'src/components/FacePile'; import FaveStar from 'src/components/FaveStar'; import { Dashboard } from 'src/views/CRUD/types'; -import moment from 'moment'; interface DashboardCardProps { isChart?: boolean; @@ -163,10 +162,7 @@ function DashboardCard({ linkComponent={Link} imgURL={dashboard.thumbnail_url} imgFallbackURL="/static/assets/images/dashboard-card-fallback.svg" - description={t( - 'Modified %s', - moment(dashboard.changed_on_utc).fromNow(), - )} + description={t('Modified %s', dashboard.changed_on_delta_humanized)} coverLeft={} actions={ diff --git a/superset/models/sql_lab.py b/superset/models/sql_lab.py index 38c152071ba9a..04d5fc9a94359 100644 --- a/superset/models/sql_lab.py +++ b/superset/models/sql_lab.py @@ -16,7 +16,6 @@ # under the License. """A collection of ORM sqlalchemy models for SQL Lab""" import re -import pytz from datetime import datetime from typing import Any, Dict, List @@ -231,10 +230,6 @@ def pop_tab_link(self) -> Markup: def user_email(self) -> str: return self.user.email - @property - def last_run(self) -> str: - return self.changed_on.astimezone(pytz.utc).strftime("%Y-%m-%dT%H:%M:%S.%f%z") - @property def sqlalchemy_uri(self) -> URL: return self.database.sqlalchemy_uri diff --git a/superset/queries/saved_queries/api.py b/superset/queries/saved_queries/api.py index 8455ca679ccaa..04df2345c1c2f 100644 --- a/superset/queries/saved_queries/api.py +++ b/superset/queries/saved_queries/api.py @@ -110,7 +110,6 @@ class SavedQueryRestApi(BaseSupersetModelRestApi): "sql_tables", "rows", "last_run_delta_humanized", - "last_run", "extra", ] add_columns = ["db_id", "description", "label", "schema", "sql"] From 6032030e41e7a819faf7a554caefbd21d2855acd Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Mon, 20 Jun 2022 11:36:35 -0400 Subject: [PATCH 07/16] fix: add french translation --- superset/translations/fr/LC_MESSAGES/messages.json | 4 +++- superset/translations/fr/LC_MESSAGES/messages.po | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index 35574577057e6..8021b5524a307 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -164,6 +164,7 @@ "Quand vous utilisez 'Grouper par' vous êtes limité à une seule métrique" ], "Pivot Table": ["Table pivot"], + "Pivot Table v2": ["Table pivot v2"], "Please choose at least one 'Group by' field ": [ "Merci de choisir au moins un champ dans 'Grouper par' " ], @@ -3815,7 +3816,8 @@ "Values selected in other filters will affect the filter options to only show relevant values": ["Les valeurs sélectionnées dans d'autres filtres affecteront les options de filtrage afin de n'afficher que les valeurs pertinentes"], "Values are dependent on other filters": ["Les valeurs dépendent d'autres filtres"], "Display metrics side by side within each column, as opposed to each column being displayed side by side for each metric.": ["Affichez les indicateurs côte à côte dans chaque colonne, au lieu d'afficher chaque colonne côte à côte pour chaque indicateur."], - "Click the button above to add a filter to the dashboard": ["Cliquez sur le bouton ci-dessus pour ajouter un filtre au tableau de bord"] + "Click the button above to add a filter to the dashboard": ["Cliquez sur le bouton ci-dessus pour ajouter un filtre au tableau de bord"], + "Totals": ["Totaux"] } } } diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index bc22a4abde0ab..22da83f9c1b80 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -13764,7 +13764,7 @@ msgstr "" #: superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx:439 msgid "Totals" -msgstr "" +msgstr "Totaux" #: superset-frontend/src/SqlLab/components/ResultSet/index.tsx:820 msgid "Track job" From 6eb0613caf5902f5f77629f9578d766153ad040a Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Tue, 12 Jul 2022 16:41:57 -0400 Subject: [PATCH 08/16] fix : add translation --- .../src/react-pivottable/TableRenderers.jsx | 9 +- .../plugin-chart-table/src/TableChart.tsx | 2 +- .../translations/fr/LC_MESSAGES/messages.json | 138 +++++++++++++----- .../translations/fr/LC_MESSAGES/messages.po | 28 +++- 4 files changed, 129 insertions(+), 48 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx b/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx index fe0c2fb0d522c..18a5947665945 100644 --- a/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx +++ b/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx @@ -18,6 +18,7 @@ */ import React from 'react'; +import { t } from '@superset-ui/core'; import PropTypes from 'prop-types'; import { PivotData, flatKey } from './utilities'; import { Styles } from './Styles'; @@ -462,7 +463,7 @@ export class TableRenderer extends React.Component { true, )} > - Subtotal + {t(`Subtotal`)} , ); } @@ -486,7 +487,7 @@ export class TableRenderer extends React.Component { true, )} > - {`Total (${this.props.aggregatorName})`} + {t(`Total (${this.props.aggregatorName})`)} ) : null; @@ -549,7 +550,7 @@ export class TableRenderer extends React.Component { )} > {colAttrs.length === 0 - ? `Total (${this.props.aggregatorName})` + ? t(`Total (${this.props.aggregatorName})`) : null} @@ -761,7 +762,7 @@ export class TableRenderer extends React.Component { true, )} > - {`Total (${this.props.aggregatorName})`} + {t(`Total (${this.props.aggregatorName})`)} ); diff --git a/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx b/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx index 85c200689e10d..13b67cf5e581c 100644 --- a/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx +++ b/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx @@ -412,7 +412,7 @@ export default function TableChart( }, Header: ({ column: col, onClick, style }) => ( 1m 6s)": ["Durée en ms (66000 => 1m 6s)"], - "Duration in ms (1.40008 => 1ms 400µs 80ns)": ["Durée en ms (1.40008 => 1ms 400µs 80ns)"], + "Duration in ms (1.40008 => 1ms 400µs 80ns)": [ + "Durée en ms (1.40008 => 1ms 400µs 80ns)" + ], "Adaptive formatting": ["Formatage adapté"], "Second": ["Seconde"], "5 second": ["5 secondes"], @@ -1864,7 +1866,7 @@ "Une erreur s'est produite durant la sauvegarde du jeu de données" ], "Download to CSV": ["Télécharger en CSV"], - "Copy to Clipboard": ["Copier vers le presse-papier"], + "Copy to Clipboard": ["Copier vers le presse-papiers"], "Filter results": ["Filtrer les résultats"], "The number of results displayed is limited to %(rows)d by the configuration DISPLAY_MAX_ROWS. ": [ "Le nombre de résultats affichés est limité à %(rows)d par la configuration DISPLAY_MAX_ROWS. " @@ -2253,7 +2255,7 @@ "Erreur au chargement de ces résultats. Les requêtes s'interrompent au bout de %s secondes." ], "Timeout error": ["Erreur de timeout"], - "Click to favorite/unfavorite": ["Cliquez pour favori ou non"], + "Click to favorite/unfavorite": ["Ajouter/Retirer des favoris"], "Cell content": ["Contenu de cellule"], "The import was successful": ["Importé avec succès"], "OVERWRITE": ["ECRASE"], @@ -2414,7 +2416,7 @@ "Copy dashboard URL": ["Copier l'URL du tableau de bord"], "Share dashboard by email": ["Partager le tableau de bord par e-mail"], "Refresh dashboard": ["Rafraichir le tableau de bord"], - "Set auto-refresh interval": ["Définir l'interval d'auto-refresh"], + "Set auto-refresh interval": ["Définir l'intervalle de rafraichissement automatique"], "Set filter mapping": ["Définir le mappage de filtre"], "Edit dashboard properties": [ "Modifier les propriétés de ce tableau de bord" @@ -2514,7 +2516,7 @@ "Filter Sets (${filterSetFilterValues.length})": [ "Filtres définis (${filterSetFilterValues.length})" ], - "Select parent filters": ["Selectionnee les filtres parents"], + "Select parent filters": ["Sélectionnée les filtres parents"], "Check configuration": ["Vérifier la configuration"], "Cannot load filter": ["Impossible de charger le filtre"], "Editing filter set:": ["Modifier l'ensemble de filtre :"], @@ -2553,7 +2555,7 @@ "Value is required": ["Une valeur est obligatoire"], "Configuration": ["Configuration"], "Scoping": ["Portée"], - "Select filter": ["Selectionner un filtre"], + "Select filter": ["Sélectionner un filtre"], "Value": ["Valeur"], "Range filter": ["Filtre d'intervalle"], "Numerical range": ["Interval numérique"], @@ -2874,7 +2876,7 @@ "Configure Advanced Time Range ": [ "Configurer Intervalle de temps avancé " ], - "START (INCLUSIVE)": ["DEBUT (INCLUSIVE)"], + "START (INCLUSIVE)": ["DÉBUT (INCLUSIVE)"], "Start date included in time range": [ "Date de début incluse de l'intervalle de temps" ], @@ -2889,7 +2891,7 @@ "Configurer intervalle de temps : Dernier ..." ], "Configure custom time range": [ - "Configurer un intervalle de temps personnalisée" + "Configurer un intervalle de temps personnalisé" ], "Relative quantity": ["Quantité relative"], "Relative period": ["Période relative"], @@ -2960,14 +2962,24 @@ "Filter Configuration": ["Configuration du filtre"], "Filter Settings": ["Paramètres du filtre"], "Inverse selection": ["Inverser la selection"], - "Dynamically search all filter values": ["Charge dynamiquement les valeurs du filtre"], + "Dynamically search all filter values": [ + "Charge dynamiquement les valeurs du filtre" + ], "Filter value is required": ["La valeur du filtre est requise"], - "Default value must be set when \"Filter value is required\" is checked": ["La valeur par defaut doit être initialisé si \"La valeur du filtre est requise\" est selectionné"], - "User must select a value before applying the filter": ["L'utilisateur doit selectionner une valeur avant d'appliquer le filtre"], - "When using this option, default value can’t be set": ["Quand l'option est utilisée, une valeur par defaut doit être indiquée"], + "Default value must be set when \"Filter value is required\" is checked": [ + "La valeur par defaut doit être initialisé si \"La valeur du filtre est requise\" est selectionné" + ], + "User must select a value before applying the filter": [ + "L'utilisateur doit selectionner une valeur avant d'appliquer le filtre" + ], + "When using this option, default value can’t be set": [ + "Quand l'option est utilisée, une valeur par defaut doit être indiquée" + ], "Exclude selected values": ["Exclus les valeurs selectionnées"], "Can select multiple values": ["Peut selectionner plusieurs valeurs"], - "Select first filter value by default": ["Selectionne la première valeur du filtre par défaut"], + "Select first filter value by default": [ + "Selectionne la première valeur du filtre par défaut" + ], "Custom SQL ad-hoc filters are not available for the native Druid connector": [ "Les filtres ad-hoc pour le SQL personnalisé ne sont par disponibles pour le connecteur Druid natif" ], @@ -3160,7 +3172,7 @@ "An error occurred while fetching created by values: %s": [ "Une erreur s'est produite en récupérant les valeurs créées : %s" ], - "Status": ["Status"], + "Status": ["Statut"], "${AlertState.success}": ["${AlertState.success}"], "${AlertState.working}": ["${AlertState.working}"], "${AlertState.error}": ["${AlertState.error}"], @@ -3636,10 +3648,10 @@ "Query name": ["Nom de la requête"], "[Untitled]": ["[Sans titre]"], "Unknown": ["Erreur inconnue"], - "Edited": ["Édité"], - "Created": ["Créé le"], + "Edited": ["Édités"], + "Created": ["Créés le"], "Viewed": ["Consultés"], - "Viewed %s": ["Consultés %s"], + "Viewed %s": ["Consulté %s"], "Mine": ["Personnel"], "Recently viewed charts, dashboards, and saved queries will appear here": [ "Les graphiques, tableaux de bord et requêtes sauvegardées qui ont été récemment consultés apparaîtront ici" @@ -3753,9 +3765,9 @@ "last month": ["le mois dernier"], "last quarter": ["le trimestre dernier"], "last year": ["l'année dernière"], - "previous calendar week": ["calendrier de la semaine dernière"], - "previous calendar month": ["calendrier du mois dernier"], - "previous calendar year": ["calendrier de l'année dernière"], + "previous calendar week": ["semaine calendaire précédente"], + "previous calendar month": ["mois calendaire précédent"], + "previous calendar year": ["année calendaire précédente"], "Days %s": ["Jours %s"], "Before": ["Avant"], "After": ["Après"], @@ -3778,30 +3790,56 @@ "Copy permalink to clipboard": ["Copier le lien dans le presse-papiers"], "Share permalink by email": ["Partager le lien par mail"], "Connect database": ["Connexion à la base de données"], - "Upload CSV to database": ["Importer des fichiers CSV vers la base de données"], - "Upload columnar file to database": ["Importer des colonnes vers la base de données"], - "Upload Excel file to database": ["Importer des fichiers Excel vers la base de données"], + "Upload CSV to database": [ + "Importer des fichiers CSV vers la base de données" + ], + "Upload columnar file to database": [ + "Importer des colonnes vers la base de données" + ], + "Upload Excel file to database": [ + "Importer des fichiers Excel vers la base de données" + ], "No %(tableName)s yet": ["Il n'y a pas encore de %(tableName)s"], "saved queries": ["requête sauvegardée"], "See all %(tableName)s": ["Explorer - %(tableName)s"], "Sort by %s": ["Trier par %s"], - "Filters out of scope (%d)": ["Filtres hors du champ d'application (%d)"], - "There are no charts added to this dashboard": ["Il n'y a pas de graphiques ajouté dans ce tableau de bord"], - "Go to the edit mode to configure the dashboard and add charts": ["Allez dans l'edition pour configurer le tableau de bord et ajouter des graphiques"], + "Filters out of scope (%d)": ["Filtres hors du périmètre (%d)"], + "There are no charts added to this dashboard": [ + "Il n'y a pas de graphiques ajouté dans ce tableau de bord" + ], + "Go to the edit mode to configure the dashboard and add charts": [ + "Allez dans l'edition pour configurer le tableau de bord et ajouter des graphiques" + ], "No filters are currently added": ["Aucun filtre ajouté"], - "Drag and drop components and charts to the dashboard": ["Glissez/Déposez des composants et des graphiques sur le tableau de bord"], - "You can create new charts or use existing ones from the panel on the right": ["Vous pouvez créer de nouveaux graphiques ou utililser ceux existants à partir du panneau de droite"], - "You can create a new chart or use existing ones from the panel on the right": ["Vous pouvez créer un nouveau graphique ou utililser ceux existants à partir du panneau de droite"], - "Enable 'Allow data upload' in any database's settings": ["Activez l'option 'Autoriser le chargement de données' dans les paramètres de la base de données"], - "There are no components added to this tab": ["Il n'y a pas de composant à ajouter dans cet onglet"], - "You can add the components in the edit mode": ["Vous pouvez ajouter les composants via mode edition"], - "You can add the components in the": ["Vous pouvez ajouter les composants via le"], + "Drag and drop components and charts to the dashboard": [ + "Glissez/Déposez des composants et des graphiques sur le tableau de bord" + ], + "You can create new charts or use existing ones from the panel on the right": [ + "Vous pouvez créer de nouveaux graphiques ou utililser ceux existants à partir du panneau de droite" + ], + "You can create a new chart or use existing ones from the panel on the right": [ + "Vous pouvez créer un nouveau graphique ou utililser ceux existants à partir du panneau de droite" + ], + "Enable 'Allow data upload' in any database's settings": [ + "Activez l'option 'Autoriser le chargement de données' dans les paramètres de la base de données" + ], + "There are no components added to this tab": [ + "Il n'y a pas de composant à ajouter dans cet onglet" + ], + "You can add the components in the edit mode": [ + "Vous pouvez ajouter les composants via mode edition" + ], + "You can add the components in the": [ + "Vous pouvez ajouter les composants via le" + ], "edit mode": ["mode edition"], "Time Column": ["Colonne de temps"], "Time Grain": ["Granularité"], "Pivot Options": ["Options de pivot"], "Aggregation function": ["Fonction d'agrégation"], - "Aggregate function to apply when pivoting and computing the total rows and columns": ["Fonction d'agrégation à appliquer lors du pivotement et du calcul du total des lignes et des colonnes"], + "Aggregate function to apply when pivoting and computing the total rows and columns": [ + "Fonction d'agrégation à appliquer lors du pivotement et du calcul du total des lignes et des colonnes" + ], "Combine Metrics": ["Combiner les métriques"], "Show totals": ["Afficher les totaux"], "Transpose Pivot": ["Pivot de transposition"], @@ -3812,12 +3850,32 @@ "Number format": ["Format D3"], "Date format": ["Format Date"], "Values dependent on": ["Valeurs dépendent de"], - "No results were returned for this query": ["Aucun résultat avec ces paramètres"], - "Values selected in other filters will affect the filter options to only show relevant values": ["Les valeurs sélectionnées dans d'autres filtres affecteront les options de filtrage afin de n'afficher que les valeurs pertinentes"], - "Values are dependent on other filters": ["Les valeurs dépendent d'autres filtres"], - "Display metrics side by side within each column, as opposed to each column being displayed side by side for each metric.": ["Affichez les indicateurs côte à côte dans chaque colonne, au lieu d'afficher chaque colonne côte à côte pour chaque indicateur."], - "Click the button above to add a filter to the dashboard": ["Cliquez sur le bouton ci-dessus pour ajouter un filtre au tableau de bord"], - "Totals": ["Totaux"] + "No results were returned for this query": [ + "Aucun résultat avec ces paramètres" + ], + "Values selected in other filters will affect the filter options to only show relevant values": [ + "Les valeurs sélectionnées dans d'autres filtres affecteront les options de filtrage afin de n'afficher que les valeurs pertinentes" + ], + "Values are dependent on other filters": [ + "Les valeurs dépendent d'autres filtres" + ], + "Display metrics side by side within each column, as opposed to each column being displayed side by side for each metric.": [ + "Affichez les indicateurs côte à côte dans chaque colonne, au lieu d'afficher chaque colonne côte à côte pour chaque indicateur." + ], + "Click the button above to add a filter to the dashboard": [ + "Cliquez sur le bouton ci-dessus pour ajouter un filtre au tableau de bord" + ], + "Totals": ["Totaux"], + "Total (Sum)": ["Total (Somme)"], + "Subtotal": ["Sous-Total"], + "Reset my password": ["Réinitialiser mon mot de passe"], + "Data refreshed": ["Données rafraîchies"], + "Toggle SortBy": ["Trier de A à Z"], + "User info": ["Information utilisateur"], + "Shift + Click to sort by multiple columns": ["Maintenir Shift + Clic pour trier plusieurs colonnes"], + "Filter only displays values relevant to selections made in other filters.": ["Le filtre n'affiche que les valeurs pertinentes après les sélections effectuées dans d'autres filtres."], + "No data after filtering or data is NULL for the latest time record": ["Pas de données après filtrage ou données manquantes pour la période sélectionnée"], + "metrics": ["test"] } } } diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index 22da83f9c1b80..ca87f72a64fd1 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -6039,7 +6039,7 @@ msgstr "Configuration et portée des filtres" #: superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/FilterControls.tsx:159 #, python-format msgid "Filters out of scope (%d)" -msgstr "Filtres hors du champ d'application (%d)" +msgstr "Filtres hors du périmètre (%d)" #: superset/connectors/sqla/views.py:348 msgid "" @@ -8138,7 +8138,7 @@ msgstr "Pas de données" #: superset-frontend/plugins/legacy-preset-chart-big-number/src/BigNumber/BigNumber.tsx:219 msgid "No data after filtering or data is NULL for the latest time record" -msgstr "" +msgstr "Pas de données après filtrage ou données manquantes pour la période sélectionnée" #: superset/dashboards/commands/importers/v0.py:321 msgid "No data in file" @@ -11727,7 +11727,7 @@ msgstr "" #: superset-frontend/src/views/CRUD/dashboard/DashboardList.tsx:302 #: superset-frontend/src/views/CRUD/dashboard/DashboardList.tsx:492 msgid "Status" -msgstr "Status" +msgstr "Statut" #: superset-frontend/plugins/plugin-chart-echarts/src/Timeseries/Step/controlPanel.tsx:112 #, fuzzy @@ -16352,3 +16352,25 @@ msgstr "Valeurs dépendent de" #: superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/DependencyList.tsx:197 msgid "No results were returned for this query" msgstr "Aucun résultat avec ces paramètres" + +#: superset-frontend/src/dashboard/components/Header/HeaderActionsDropdown/index.jsx:154 +#: superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx:164 +msgid "Data refreshed" +msgstr "Données rafraîchies" + +#: superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx:415 +msgid "Shift + Click to sort by multiple columns" +msgstr "Maintenir Shift + Clic pour trier plusieurs colonnes" + +#: #: flask_appbuilder/security/views.py:211 +msgid "User info" +msgstr "Informations utilisateurs" + +#: flask_appbuilder/security/views.py:250 +msgid "Reset my password" +msgstr "Réinitialiser mon mot de passe" + +#: superset-frontend/src/dashboard/components/nativeFilters/FilterCard/DependenciesRow.tsx:85 +msgid "Filter only displays values relevant to selections made in other filters." +msgstr "Le filtre n'affiche que les valeurs pertinentes après les sélections effectuées dans d'autres filtres." + From 7da2812aaff86e2de2e489f05d1cf8cc6b4a539e Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Wed, 13 Jul 2022 09:24:22 -0400 Subject: [PATCH 09/16] fix : correction translation --- superset/translations/fr/LC_MESSAGES/messages.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index d016f9b04338a..e4be20c904bfd 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -1846,7 +1846,7 @@ "Query search string": ["Chaîne de recherche"], "[From]-": ["[Depuis]-"], "[To]-": ["[à]-"], - "Filter by status": ["Filtrer par status"], + "Filter by status": ["Filtrer par statut"], "Success": ["Succès"], "Failed": ["Echec"], "Running": ["En cours"], @@ -3308,7 +3308,7 @@ "There was an issue deleting the selected charts: %s": [ "Il y a eu un problème lors de la suppression des graphiques sélectionnés : %s" ], - "Modified by": ["Modifié"], + "Modified by": ["Modifié par"], "Favorite": ["Favoris"], "Any": ["Tous"], "Yes": ["Oui"], From 338e336a2f1edfd5494b3fd55fb82a512ae13ced Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Wed, 13 Jul 2022 12:08:25 -0400 Subject: [PATCH 10/16] fix : correction translation --- superset/translations/fr/LC_MESSAGES/messages.json | 3 ++- superset/translations/fr/LC_MESSAGES/messages.po | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index e4be20c904bfd..9ff8716da1eec 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -3875,7 +3875,8 @@ "Shift + Click to sort by multiple columns": ["Maintenir Shift + Clic pour trier plusieurs colonnes"], "Filter only displays values relevant to selections made in other filters.": ["Le filtre n'affiche que les valeurs pertinentes après les sélections effectuées dans d'autres filtres."], "No data after filtering or data is NULL for the latest time record": ["Pas de données après filtrage ou données manquantes pour la période sélectionnée"], - "metrics": ["test"] + "Scope": ["Périmètre"], + "Dependent on": ["Dépend de"] } } } diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index ca87f72a64fd1..b88e7e20d9e3b 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -16374,3 +16374,11 @@ msgstr "Réinitialiser mon mot de passe" msgid "Filter only displays values relevant to selections made in other filters." msgstr "Le filtre n'affiche que les valeurs pertinentes après les sélections effectuées dans d'autres filtres." +#: superset-frontend/src/dashboard/components/nativeFilters/FilterCard/TypeRow.tsx:68 +msgid "Scope" +msgstr "Périmètre" + +#: superset-frontend/src/dashboard/components/nativeFilters/FilterCard/DependenciesRow.tsx:86 +msgid "Dependent on" +msgstr "Dépend de" + From ba099e49365125a6ec6eb651aaf26065d2a08ece Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Thu, 14 Jul 2022 09:21:47 -0400 Subject: [PATCH 11/16] fix : remove correction put in other PR --- .../src/react-pivottable/TableRenderers.jsx | 9 ++++----- .../plugins/plugin-chart-table/src/TableChart.tsx | 2 +- superset/translations/fr/LC_MESSAGES/messages.json | 7 ------- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx b/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx index 18a5947665945..ca6a54c23f3c6 100644 --- a/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx +++ b/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx @@ -18,7 +18,6 @@ */ import React from 'react'; -import { t } from '@superset-ui/core'; import PropTypes from 'prop-types'; import { PivotData, flatKey } from './utilities'; import { Styles } from './Styles'; @@ -463,7 +462,7 @@ export class TableRenderer extends React.Component { true, )} > - {t(`Subtotal`)} + {`Subtotal`} , ); } @@ -487,7 +486,7 @@ export class TableRenderer extends React.Component { true, )} > - {t(`Total (${this.props.aggregatorName})`)} + {`Total (${this.props.aggregatorName})`} ) : null; @@ -550,7 +549,7 @@ export class TableRenderer extends React.Component { )} > {colAttrs.length === 0 - ? t(`Total (${this.props.aggregatorName})`) + ? `Total (${this.props.aggregatorName})` : null} @@ -762,7 +761,7 @@ export class TableRenderer extends React.Component { true, )} > - {t(`Total (${this.props.aggregatorName})`)} + {`Total (${this.props.aggregatorName})`} ); diff --git a/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx b/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx index 13b67cf5e581c..313f2426abb40 100644 --- a/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx +++ b/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx @@ -412,7 +412,7 @@ export default function TableChart( }, Header: ({ column: col, onClick, style }) => ( Date: Thu, 14 Jul 2022 09:27:26 -0400 Subject: [PATCH 12/16] fix : prettier on json file --- superset/translations/fr/LC_MESSAGES/messages.json | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index e5e92efe46c5a..da74e88af9d30 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -2416,7 +2416,9 @@ "Copy dashboard URL": ["Copier l'URL du tableau de bord"], "Share dashboard by email": ["Partager le tableau de bord par e-mail"], "Refresh dashboard": ["Rafraichir le tableau de bord"], - "Set auto-refresh interval": ["Définir l'intervalle de rafraichissement automatique"], + "Set auto-refresh interval": [ + "Définir l'intervalle de rafraichissement automatique" + ], "Set filter mapping": ["Définir le mappage de filtre"], "Edit dashboard properties": [ "Modifier les propriétés de ce tableau de bord" @@ -3866,8 +3868,12 @@ "Cliquez sur le bouton ci-dessus pour ajouter un filtre au tableau de bord" ], "Totals": ["Totaux"], - "Filter only displays values relevant to selections made in other filters.": ["Le filtre n'affiche que les valeurs pertinentes après les sélections effectuées dans d'autres filtres."], - "No data after filtering or data is NULL for the latest time record": ["Pas de données après filtrage ou données manquantes pour la période sélectionnée"], + "Filter only displays values relevant to selections made in other filters.": [ + "Le filtre n'affiche que les valeurs pertinentes après les sélections effectuées dans d'autres filtres." + ], + "No data after filtering or data is NULL for the latest time record": [ + "Pas de données après filtrage ou données manquantes pour la période sélectionnée" + ], "Scope": ["Périmètre"], "Dependent on": ["Dépend de"] } From 1d270f4ab8ff44f43c76950800bb8d9e160fad5e Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Thu, 14 Jul 2022 09:35:45 -0400 Subject: [PATCH 13/16] fix --- .../src/react-pivottable/TableRenderers.jsx | 2 +- superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx b/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx index ca6a54c23f3c6..fe0c2fb0d522c 100644 --- a/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx +++ b/superset-frontend/plugins/plugin-chart-pivot-table/src/react-pivottable/TableRenderers.jsx @@ -462,7 +462,7 @@ export class TableRenderer extends React.Component { true, )} > - {`Subtotal`} + Subtotal , ); } diff --git a/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx b/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx index 313f2426abb40..85c200689e10d 100644 --- a/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx +++ b/superset-frontend/plugins/plugin-chart-table/src/TableChart.tsx @@ -412,7 +412,7 @@ export default function TableChart( }, Header: ({ column: col, onClick, style }) => ( Date: Thu, 14 Jul 2022 11:18:09 -0400 Subject: [PATCH 14/16] fix --- superset/translations/fr/LC_MESSAGES/messages.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index b88e7e20d9e3b..93b571485941f 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -5938,7 +5938,7 @@ msgstr "Filtrer par base de données" #: superset-frontend/src/SqlLab/components/QuerySearch/index.tsx:240 msgid "Filter by status" -msgstr "Filtrer par status" +msgstr "Filtrer par statut" #: superset-frontend/src/SqlLab/components/QuerySearch/index.tsx:195 msgid "Filter by user" @@ -16020,15 +16020,15 @@ msgstr "" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:53 msgid "previous calendar month" -msgstr "calendrier du mois dernier" +msgstr "mois calendaire précédent" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:50 msgid "previous calendar week" -msgstr "calendrier de la semaine dernière" +msgstr "semaine calendaire précédente" #: superset-frontend/src/explore/components/controls/DateFilterControl/utils/constants.ts:56 msgid "previous calendar year" -msgstr "calendrier de l'année dernière" +msgstr "année calendaire précédente" #: superset-frontend/src/views/CRUD/dashboard/DashboardCard.tsx:153 msgid "published" From 1c459c9d5b1ce76b51116c3667210191473fa852 Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Thu, 11 Aug 2022 09:47:51 -0400 Subject: [PATCH 15/16] Add new translation --- superset/translations/fr/LC_MESSAGES/messages.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/superset/translations/fr/LC_MESSAGES/messages.json b/superset/translations/fr/LC_MESSAGES/messages.json index da74e88af9d30..15d854502ea05 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.json +++ b/superset/translations/fr/LC_MESSAGES/messages.json @@ -3875,7 +3875,8 @@ "Pas de données après filtrage ou données manquantes pour la période sélectionnée" ], "Scope": ["Périmètre"], - "Dependent on": ["Dépend de"] + "Dependent on": ["Dépend de"], + "No matching records found": ["Aucun résultat trouvé"] } } } From 3d41d90673c0aca654eb41f1b50f35b620a321b7 Mon Sep 17 00:00:00 2001 From: "aurelie.ehanno" Date: Thu, 11 Aug 2022 14:51:17 -0400 Subject: [PATCH 16/16] fix --- superset/translations/fr/LC_MESSAGES/messages.po | 1 - 1 file changed, 1 deletion(-) diff --git a/superset/translations/fr/LC_MESSAGES/messages.po b/superset/translations/fr/LC_MESSAGES/messages.po index 93b571485941f..f3024d1604bb6 100644 --- a/superset/translations/fr/LC_MESSAGES/messages.po +++ b/superset/translations/fr/LC_MESSAGES/messages.po @@ -16381,4 +16381,3 @@ msgstr "Périmètre" #: superset-frontend/src/dashboard/components/nativeFilters/FilterCard/DependenciesRow.tsx:86 msgid "Dependent on" msgstr "Dépend de" -