@gooddata/sdk-ui-dashboard 11.65.0-alpha.0 → 11.65.0-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/NOTICE +72077 -4
  2. package/esm/__version.d.ts +1 -1
  3. package/esm/__version.d.ts.map +1 -1
  4. package/esm/__version.js +1 -1
  5. package/esm/assets/type-csv-formatted.svg +1 -1
  6. package/esm/assets/type-csv-raw.svg +1 -1
  7. package/esm/index.d.ts +7 -4
  8. package/esm/index.d.ts.map +1 -1
  9. package/esm/index.js +3 -2
  10. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.d.ts.map +1 -1
  11. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.js +1 -3
  12. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeDisplayFormHandler.d.ts.map +1 -1
  13. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeDisplayFormHandler.js +8 -7
  14. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.d.ts.map +1 -1
  15. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.js +19 -28
  16. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.d.ts.map +1 -1
  17. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.js +4 -5
  18. package/esm/model/commandHandlers/filterContext/attributeFilter/replaceAttributeFilterItemSelectionHandler.d.ts.map +1 -1
  19. package/esm/model/commandHandlers/filterContext/attributeFilter/replaceAttributeFilterItemSelectionHandler.js +14 -15
  20. package/esm/model/commandHandlers/filterContext/attributeFilter/resolveDisplayFormMetadata.d.ts +4 -1
  21. package/esm/model/commandHandlers/filterContext/attributeFilter/resolveDisplayFormMetadata.d.ts.map +1 -1
  22. package/esm/model/commandHandlers/filterContext/attributeFilter/resolveDisplayFormMetadata.js +11 -2
  23. package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.d.ts.map +1 -1
  24. package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.js +23 -45
  25. package/esm/model/commandHandlers/filterContext/common.d.ts +6 -5
  26. package/esm/model/commandHandlers/filterContext/common.d.ts.map +1 -1
  27. package/esm/model/commandHandlers/filterContext/common.js +12 -18
  28. package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.d.ts.map +1 -1
  29. package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.js +30 -36
  30. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterConditionHandler.d.ts.map +1 -1
  31. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterConditionHandler.js +11 -17
  32. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterDimensionalityHandler.d.ts.map +1 -1
  33. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterDimensionalityHandler.js +7 -10
  34. package/esm/model/commandHandlers/filterContext/tabSync/expandActionsForTabSync.d.ts +15 -0
  35. package/esm/model/commandHandlers/filterContext/tabSync/expandActionsForTabSync.d.ts.map +1 -0
  36. package/esm/model/commandHandlers/filterContext/tabSync/expandActionsForTabSync.js +88 -0
  37. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncRules.d.ts +11 -0
  38. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncRules.d.ts.map +1 -0
  39. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncRules.js +335 -0
  40. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncSaga.d.ts +52 -0
  41. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncSaga.d.ts.map +1 -0
  42. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncSaga.js +60 -0
  43. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncScope.d.ts +69 -0
  44. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncScope.d.ts.map +1 -0
  45. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncScope.js +2 -0
  46. package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.d.ts +2 -1
  47. package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.d.ts.map +1 -1
  48. package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.js +41 -10
  49. package/esm/model/commands/parameters.d.ts +11 -1
  50. package/esm/model/commands/parameters.d.ts.map +1 -1
  51. package/esm/model/commands/parameters.js +2 -1
  52. package/esm/model/events/base.d.ts +1 -1
  53. package/esm/model/events/base.d.ts.map +1 -1
  54. package/esm/model/events/index.d.ts +2 -1
  55. package/esm/model/events/index.d.ts.map +1 -1
  56. package/esm/model/events/insightEditor.d.ts +128 -0
  57. package/esm/model/events/insightEditor.d.ts.map +1 -0
  58. package/esm/model/events/insightEditor.js +74 -0
  59. package/esm/model/queryServices/queryAttributeElements.js +1 -0
  60. package/esm/model/react/useInitializeDashboardStore.d.ts.map +1 -1
  61. package/esm/model/react/useInitializeDashboardStore.js +4 -9
  62. package/esm/model/store/config/configReducers.d.ts +4 -8
  63. package/esm/model/store/config/configReducers.d.ts.map +1 -1
  64. package/esm/model/store/config/configReducers.js +6 -12
  65. package/esm/model/store/config/configSelectors.d.ts +24 -0
  66. package/esm/model/store/config/configSelectors.d.ts.map +1 -1
  67. package/esm/model/store/config/configSelectors.js +30 -4
  68. package/esm/model/store/config/index.d.ts +2 -3
  69. package/esm/model/store/config/index.d.ts.map +1 -1
  70. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.d.ts +75 -5
  71. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.d.ts.map +1 -1
  72. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.js +35 -60
  73. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.js +1 -1
  74. package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts +139 -31
  75. package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts.map +1 -1
  76. package/esm/model/store/tabs/filterContext/filterContextReducers.js +314 -529
  77. package/esm/model/store/tabs/filterContext/filterSync.d.ts +35 -13
  78. package/esm/model/store/tabs/filterContext/filterSync.d.ts.map +1 -1
  79. package/esm/model/store/tabs/filterContext/filterSync.js +79 -58
  80. package/esm/model/store/tabs/index.d.ts +10 -12
  81. package/esm/model/store/tabs/index.d.ts.map +1 -1
  82. package/esm/model/store/tabs/layout/layoutReducers.d.ts +1 -0
  83. package/esm/model/store/tabs/layout/layoutReducers.d.ts.map +1 -1
  84. package/esm/model/store/tabs/measureValueFilterConfigs/measureValueFilterConfigsReducers.d.ts.map +1 -1
  85. package/esm/model/store/tabs/parameters/parametersReducers.d.ts +0 -5
  86. package/esm/model/store/tabs/parameters/parametersReducers.d.ts.map +1 -1
  87. package/esm/model/store/tabs/parameters/parametersReducers.js +8 -7
  88. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts +7 -0
  89. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts.map +1 -1
  90. package/esm/model/store/tabs/parameters/parametersSelectors.js +16 -0
  91. package/esm/model/store/tabs/tabsReducers.d.ts +8 -4
  92. package/esm/model/store/tabs/tabsReducers.d.ts.map +1 -1
  93. package/esm/model/store/tabs/tabsReducers.js +15 -18
  94. package/esm/model/store/tabs/tabsState.d.ts +0 -10
  95. package/esm/model/store/tabs/tabsState.d.ts.map +1 -1
  96. package/esm/model/store/tabs/tabsState.js +0 -20
  97. package/esm/model/store/ui/index.d.ts +2 -0
  98. package/esm/model/store/ui/index.d.ts.map +1 -1
  99. package/esm/model/store/ui/uiReducers.d.ts +6 -0
  100. package/esm/model/store/ui/uiReducers.d.ts.map +1 -1
  101. package/esm/model/store/ui/uiReducers.js +8 -0
  102. package/esm/model/store/ui/uiSelectors.d.ts +7 -0
  103. package/esm/model/store/ui/uiSelectors.d.ts.map +1 -1
  104. package/esm/model/store/ui/uiSelectors.js +6 -0
  105. package/esm/model/store/ui/uiState.d.ts +5 -0
  106. package/esm/model/store/ui/uiState.d.ts.map +1 -1
  107. package/esm/model/store/ui/uiState.js +1 -0
  108. package/esm/model/types/attributeFilterTypes.d.ts +5 -0
  109. package/esm/model/types/attributeFilterTypes.d.ts.map +1 -1
  110. package/esm/model/types/attributeFilterTypes.js +1 -1
  111. package/esm/model/types/commonTypes.d.ts +38 -22
  112. package/esm/model/types/commonTypes.d.ts.map +1 -1
  113. package/esm/model/types/insightEditorTypes.d.ts +43 -0
  114. package/esm/model/types/insightEditorTypes.d.ts.map +1 -0
  115. package/esm/model/types/insightEditorTypes.js +2 -0
  116. package/esm/model/utils/attributeFilterMatching.d.ts +10 -0
  117. package/esm/model/utils/attributeFilterMatching.d.ts.map +1 -1
  118. package/esm/model/utils/attributeFilterMatching.js +14 -3
  119. package/esm/model/utils/attributeFilterSelectionTypeCompatibility.d.ts +8 -0
  120. package/esm/model/utils/attributeFilterSelectionTypeCompatibility.d.ts.map +1 -1
  121. package/esm/model/utils/attributeFilterSelectionTypeCompatibility.js +14 -4
  122. package/esm/presentation/automations/alerting/hooks/useAttributeValuesFromExecResults.d.ts +33 -2
  123. package/esm/presentation/automations/alerting/hooks/useAttributeValuesFromExecResults.d.ts.map +1 -1
  124. package/esm/presentation/automations/alerting/hooks/useAttributeValuesFromExecResults.js +29 -13
  125. package/esm/presentation/automations/alerting/state/useAlertSupportedMetrics.d.ts.map +1 -1
  126. package/esm/presentation/automations/alerting/state/useAlertSupportedMetrics.js +3 -2
  127. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts.map +1 -1
  128. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js +3 -3
  129. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts.map +1 -1
  130. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js +5 -4
  131. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/LiveRegionLastSelectContainer.d.ts +9 -0
  132. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/LiveRegionLastSelectContainer.d.ts.map +1 -0
  133. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/LiveRegionLastSelectContainer.js +12 -0
  134. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.d.ts.map +1 -1
  135. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js +3 -3
  136. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.d.ts.map +1 -1
  137. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.js +14 -7
  138. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectionDescription.d.ts +12 -0
  139. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectionDescription.d.ts.map +1 -0
  140. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectionDescription.js +30 -0
  141. package/esm/presentation/automations/scheduledEmail/utils/users.d.ts +1 -0
  142. package/esm/presentation/automations/scheduledEmail/utils/users.d.ts.map +1 -1
  143. package/esm/presentation/automations/scheduledEmail/utils/users.js +3 -0
  144. package/esm/presentation/automations/shared/automationFilters/utils.d.ts +4 -0
  145. package/esm/presentation/automations/shared/automationFilters/utils.d.ts.map +1 -1
  146. package/esm/presentation/automations/shared/automationFilters/utils.js +12 -5
  147. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.d.ts +1 -1
  148. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.d.ts.map +1 -1
  149. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.js +2 -11
  150. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.d.ts.map +1 -1
  151. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.js +10 -1
  152. package/esm/presentation/dashboard/DefaultDashboardContent/DashboardContentLoader.d.ts +5 -0
  153. package/esm/presentation/dashboard/DefaultDashboardContent/DashboardContentLoader.d.ts.map +1 -0
  154. package/esm/presentation/dashboard/DefaultDashboardContent/DashboardContentLoader.js +27 -0
  155. package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.d.ts.map +1 -1
  156. package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.js +7 -2
  157. package/esm/presentation/dashboard/components/DashboardAiComposingOverlay.d.ts +4 -0
  158. package/esm/presentation/dashboard/components/DashboardAiComposingOverlay.d.ts.map +1 -0
  159. package/esm/presentation/dashboard/components/DashboardAiComposingOverlay.js +151 -0
  160. package/esm/presentation/dashboard/components/DashboardInner.d.ts.map +1 -1
  161. package/esm/presentation/dashboard/components/DashboardInner.js +17 -14
  162. package/esm/presentation/dashboard/components/DashboardInteractionComposing.d.ts +8 -0
  163. package/esm/presentation/dashboard/components/DashboardInteractionComposing.d.ts.map +1 -0
  164. package/esm/presentation/dashboard/components/DashboardInteractionComposing.js +23 -0
  165. package/esm/presentation/dashboard/components/DashboardInteractionLock.d.ts +8 -0
  166. package/esm/presentation/dashboard/components/DashboardInteractionLock.d.ts.map +1 -0
  167. package/esm/presentation/dashboard/components/DashboardInteractionLock.js +29 -0
  168. package/esm/presentation/dashboard/components/DashboardScreenSizeContext.d.ts.map +1 -1
  169. package/esm/presentation/dashboard/components/DashboardScreenSizeContext.js +10 -7
  170. package/esm/presentation/dashboard/components/ToastMessages.d.ts.map +1 -1
  171. package/esm/presentation/dashboard/components/ToastMessages.js +6 -3
  172. package/esm/presentation/dashboard/components/useEditModeLayoutNoteMessages.d.ts +6 -0
  173. package/esm/presentation/dashboard/components/useEditModeLayoutNoteMessages.d.ts.map +1 -0
  174. package/esm/presentation/dashboard/components/useEditModeLayoutNoteMessages.js +48 -0
  175. package/esm/presentation/dashboard/hooks/useDashboard.d.ts.map +1 -1
  176. package/esm/presentation/dashboard/hooks/useDashboard.js +3 -2
  177. package/esm/presentation/dashboard/types.d.ts +5 -0
  178. package/esm/presentation/dashboard/types.d.ts.map +1 -1
  179. package/esm/presentation/dragAndDrop/draggableWidget/AddDashboardLayoutWidgetButton.d.ts.map +1 -1
  180. package/esm/presentation/dragAndDrop/draggableWidget/AddDashboardLayoutWidgetButton.js +2 -4
  181. package/esm/presentation/dragAndDrop/draggableWidget/AddRichTextWidgetButton.d.ts.map +1 -1
  182. package/esm/presentation/dragAndDrop/draggableWidget/AddRichTextWidgetButton.js +3 -3
  183. package/esm/presentation/dragAndDrop/draggableWidget/AddVisualizationSwitcherWidgetButton.d.ts.map +1 -1
  184. package/esm/presentation/dragAndDrop/draggableWidget/AddVisualizationSwitcherWidgetButton.js +2 -4
  185. package/esm/presentation/drill/utils/drillDownUtils.d.ts.map +1 -1
  186. package/esm/presentation/drill/utils/drillDownUtils.js +3 -2
  187. package/esm/presentation/export/hooks/useDashboardRelatedFilters.d.ts +8 -1
  188. package/esm/presentation/export/hooks/useDashboardRelatedFilters.d.ts.map +1 -1
  189. package/esm/presentation/export/hooks/useDashboardRelatedFilters.js +21 -5
  190. package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.d.ts.map +1 -1
  191. package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.js +3 -2
  192. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AddAttributeFilterPlaceholder.d.ts.map +1 -1
  193. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AddAttributeFilterPlaceholder.js +3 -2
  194. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltip.d.ts.map +1 -1
  195. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltip.js +4 -1
  196. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltipContent.d.ts +6 -2
  197. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltipContent.d.ts.map +1 -1
  198. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltipContent.js +8 -4
  199. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewDeleteConfirm.d.ts +2 -1
  200. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewDeleteConfirm.d.ts.map +1 -1
  201. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewDeleteConfirm.js +2 -2
  202. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewsList.d.ts.map +1 -1
  203. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewsList.js +11 -5
  204. package/esm/presentation/filterBar/filterBar/hooks/useResetFiltersButton.d.ts.map +1 -1
  205. package/esm/presentation/filterBar/filterBar/hooks/useResetFiltersButton.js +4 -1
  206. package/esm/presentation/insightEditor/InsightEditorContent.d.ts +26 -0
  207. package/esm/presentation/insightEditor/InsightEditorContent.d.ts.map +1 -0
  208. package/esm/presentation/insightEditor/InsightEditorContent.js +158 -0
  209. package/esm/presentation/insightEditor/InsightEditorCreatePanelItem.d.ts +7 -0
  210. package/esm/presentation/insightEditor/InsightEditorCreatePanelItem.d.ts.map +1 -0
  211. package/esm/presentation/insightEditor/InsightEditorCreatePanelItem.js +25 -0
  212. package/esm/presentation/insightEditor/InsightEditorOverlay.d.ts +6 -0
  213. package/esm/presentation/insightEditor/InsightEditorOverlay.d.ts.map +1 -0
  214. package/esm/presentation/insightEditor/InsightEditorOverlay.js +110 -0
  215. package/esm/presentation/insightEditor/InsightEditorPermissionsContext.d.ts +10 -0
  216. package/esm/presentation/insightEditor/InsightEditorPermissionsContext.d.ts.map +1 -0
  217. package/esm/presentation/insightEditor/InsightEditorPermissionsContext.js +18 -0
  218. package/esm/presentation/insightEditor/InsightEditorPlaceholder.d.ts +7 -0
  219. package/esm/presentation/insightEditor/InsightEditorPlaceholder.d.ts.map +1 -0
  220. package/esm/presentation/insightEditor/InsightEditorPlaceholder.js +15 -0
  221. package/esm/presentation/insightEditor/filterContext/attributeFilters.d.ts +4 -0
  222. package/esm/presentation/insightEditor/filterContext/attributeFilters.d.ts.map +1 -0
  223. package/esm/presentation/insightEditor/filterContext/attributeFilters.js +115 -0
  224. package/esm/presentation/insightEditor/filterContext/dateFilters.d.ts +5 -0
  225. package/esm/presentation/insightEditor/filterContext/dateFilters.d.ts.map +1 -0
  226. package/esm/presentation/insightEditor/filterContext/dateFilters.js +117 -0
  227. package/esm/presentation/insightEditor/filterContext/filterIntersection.d.ts +7 -0
  228. package/esm/presentation/insightEditor/filterContext/filterIntersection.d.ts.map +1 -0
  229. package/esm/presentation/insightEditor/filterContext/filterIntersection.js +149 -0
  230. package/esm/presentation/insightEditor/filterContext/insightFilterContext.d.ts +26 -0
  231. package/esm/presentation/insightEditor/filterContext/insightFilterContext.d.ts.map +1 -0
  232. package/esm/presentation/insightEditor/filterContext/insightFilterContext.js +72 -0
  233. package/esm/presentation/insightEditor/filterContext/measureValueFilters.d.ts +20 -0
  234. package/esm/presentation/insightEditor/filterContext/measureValueFilters.d.ts.map +1 -0
  235. package/esm/presentation/insightEditor/filterContext/measureValueFilters.js +76 -0
  236. package/esm/presentation/insightEditor/filterContext/objQualifiers.d.ts +11 -0
  237. package/esm/presentation/insightEditor/filterContext/objQualifiers.d.ts.map +1 -0
  238. package/esm/presentation/insightEditor/filterContext/objQualifiers.js +18 -0
  239. package/esm/presentation/insightEditor/insightEditorEscapeGuard.d.ts +18 -0
  240. package/esm/presentation/insightEditor/insightEditorEscapeGuard.d.ts.map +1 -0
  241. package/esm/presentation/insightEditor/insightEditorEscapeGuard.js +24 -0
  242. package/esm/presentation/insightEditor/insightEditorRoute.d.ts +34 -0
  243. package/esm/presentation/insightEditor/insightEditorRoute.d.ts.map +1 -0
  244. package/esm/presentation/insightEditor/insightEditorRoute.js +48 -0
  245. package/esm/presentation/insightEditor/types.d.ts +7 -0
  246. package/esm/presentation/insightEditor/types.d.ts.map +1 -0
  247. package/esm/presentation/insightEditor/types.js +2 -0
  248. package/esm/presentation/insightEditor/useCanCreateInsightInEditor.d.ts +5 -0
  249. package/esm/presentation/insightEditor/useCanCreateInsightInEditor.d.ts.map +1 -0
  250. package/esm/presentation/insightEditor/useCanCreateInsightInEditor.js +14 -0
  251. package/esm/presentation/insightEditor/useExploreFilterTransfer.d.ts +21 -0
  252. package/esm/presentation/insightEditor/useExploreFilterTransfer.d.ts.map +1 -0
  253. package/esm/presentation/insightEditor/useExploreFilterTransfer.js +193 -0
  254. package/esm/presentation/insightEditor/useInsightEditPermissions.d.ts +17 -0
  255. package/esm/presentation/insightEditor/useInsightEditPermissions.d.ts.map +1 -0
  256. package/esm/presentation/insightEditor/useInsightEditPermissions.js +42 -0
  257. package/esm/presentation/insightEditor/useInsightEditorMenuItems.d.ts +23 -0
  258. package/esm/presentation/insightEditor/useInsightEditorMenuItems.d.ts.map +1 -0
  259. package/esm/presentation/insightEditor/useInsightEditorMenuItems.js +126 -0
  260. package/esm/presentation/insightEditor/useInsightEditorSession.d.ts +19 -0
  261. package/esm/presentation/insightEditor/useInsightEditorSession.d.ts.map +1 -0
  262. package/esm/presentation/insightEditor/useInsightEditorSession.js +141 -0
  263. package/esm/presentation/insightList/InsightList.d.ts.map +1 -1
  264. package/esm/presentation/insightList/InsightList.js +10 -5
  265. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +6 -0
  266. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  267. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +48 -42
  268. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +6 -0
  269. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  270. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +6 -0
  271. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +6 -0
  272. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  273. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +11 -5
  274. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +64 -0
  275. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  276. package/esm/presentation/localization/bundles/en-US.localization-bundle.js +64 -0
  277. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +6 -0
  278. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  279. package/esm/presentation/localization/bundles/es-419.localization-bundle.js +6 -0
  280. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +6 -0
  281. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  282. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +6 -0
  283. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +6 -0
  284. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  285. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +6 -0
  286. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +6 -0
  287. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  288. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +6 -0
  289. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +6 -0
  290. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  291. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +187 -181
  292. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +6 -0
  293. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  294. package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +6 -0
  295. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +6 -0
  296. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  297. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +6 -0
  298. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +6 -0
  299. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  300. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +6 -0
  301. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +6 -0
  302. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  303. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +6 -0
  304. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +6 -0
  305. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  306. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +6 -0
  307. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +6 -0
  308. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  309. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +6 -0
  310. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +6 -0
  311. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  312. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +6 -0
  313. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +6 -0
  314. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  315. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +6 -0
  316. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +6 -0
  317. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  318. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +6 -0
  319. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +6 -0
  320. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  321. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +6 -0
  322. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +6 -0
  323. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  324. package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +6 -0
  325. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +6 -0
  326. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  327. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +6 -0
  328. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +6 -0
  329. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  330. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +6 -0
  331. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +6 -0
  332. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  333. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +6 -0
  334. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +6 -0
  335. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  336. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +6 -0
  337. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +6 -0
  338. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  339. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +6 -0
  340. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +6 -0
  341. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  342. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +7 -1
  343. package/esm/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.d.ts.map +1 -1
  344. package/esm/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.js +2 -4
  345. package/esm/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.d.ts.map +1 -1
  346. package/esm/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.js +3 -2
  347. package/esm/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.d.ts.map +1 -1
  348. package/esm/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.js +3 -2
  349. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.d.ts.map +1 -1
  350. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.js +3 -2
  351. package/esm/presentation/topBar/buttonBar/button/shareButton/DefaultShareButton.d.ts.map +1 -1
  352. package/esm/presentation/topBar/buttonBar/button/shareButton/DefaultShareButton.js +3 -2
  353. package/esm/presentation/topBar/title/EditableTitle.d.ts.map +1 -1
  354. package/esm/presentation/topBar/title/EditableTitle.js +6 -0
  355. package/esm/presentation/widget/insight/DefaultDashboardInsightComponentSetFactory.d.ts +1 -1
  356. package/esm/presentation/widget/insight/DefaultDashboardInsightComponentSetFactory.d.ts.map +1 -1
  357. package/esm/presentation/widget/insight/DefaultDashboardInsightComponentSetFactory.js +13 -1
  358. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/index.d.ts.map +1 -1
  359. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/index.js +10 -1
  360. package/esm/presentation/widget/richText/EditModeDashboardRichText.js +1 -1
  361. package/esm/presentation/widget/visualizationSwitcher/EditModeDashboardVisualizationSwitcher.js +1 -1
  362. package/esm/presentation/widget/visualizationSwitcher/configuration/ToolbarTop.js +2 -2
  363. package/esm/presentation/widget/widget/InsightWidget/useEditableInsightMenu.d.ts.map +1 -1
  364. package/esm/presentation/widget/widget/InsightWidget/useEditableInsightMenu.js +5 -1
  365. package/esm/presentation/widget/widget/InsightWidget/useInsightMenu.d.ts.map +1 -1
  366. package/esm/presentation/widget/widget/InsightWidget/useInsightMenu.js +4 -1
  367. package/esm/sdk-ui-dashboard.d.ts +528 -68
  368. package/package.json +23 -21
  369. package/styles/css/alerting.css +1 -1
  370. package/styles/css/alerting.css.map +1 -1
  371. package/styles/css/attributeFilterConfig.css +3 -3
  372. package/styles/css/automationFilters.css +1 -1
  373. package/styles/css/configurationPanel.css +2 -2
  374. package/styles/css/configurationPanel.css.map +1 -1
  375. package/styles/css/dashboard.css +149 -86
  376. package/styles/css/dashboard.css.map +1 -1
  377. package/styles/css/dashboardContentLoader.css +45 -0
  378. package/styles/css/dashboardContentLoader.css.map +1 -0
  379. package/styles/css/dashboardNestedLayoutToolbar.css.map +1 -1
  380. package/styles/css/dashboardNestedLayoutWidget.css +1 -1
  381. package/styles/css/dashboardSettingsDialog.css +1 -1
  382. package/styles/css/dragAndDrop.css +0 -8
  383. package/styles/css/dragAndDrop.css.map +1 -1
  384. package/styles/css/drillConfigPanel.css +7 -7
  385. package/styles/css/drillConfigPanel.css.map +1 -1
  386. package/styles/css/filterBar.css +4 -4
  387. package/styles/css/filterBar.css.map +1 -1
  388. package/styles/css/grouped-navigation.css +2 -2
  389. package/styles/css/grouped-navigation.css.map +1 -1
  390. package/styles/css/icons.css.map +1 -1
  391. package/styles/css/insightConfiguration.css +1 -1
  392. package/styles/css/insightConfiguration.css.map +1 -1
  393. package/styles/css/insightEditor.css +46 -0
  394. package/styles/css/insightEditor.css.map +1 -0
  395. package/styles/css/kpi.css +2 -2
  396. package/styles/css/kpi.css.map +1 -1
  397. package/styles/css/kpi_alert_dialog.css +2 -2
  398. package/styles/css/layout.css +5 -5
  399. package/styles/css/layout.css.map +1 -1
  400. package/styles/css/main.css +343 -218
  401. package/styles/css/main.css.map +1 -1
  402. package/styles/css/notifications_channels_dialog.css +2 -2
  403. package/styles/css/notifications_channels_dialog.css.map +1 -1
  404. package/styles/css/resizing.css.map +1 -1
  405. package/styles/css/richTextWidget.css.map +1 -1
  406. package/styles/css/saveAsDialog.css.map +1 -1
  407. package/styles/css/sidebar.css +35 -10
  408. package/styles/css/sidebar.css.map +1 -1
  409. package/styles/css/topBar.css.map +1 -1
  410. package/styles/css/visualization.css.map +1 -1
  411. package/styles/css/visualizationSwitcherHeader.css.map +1 -1
  412. package/styles/css/visualizationSwitcherToolbar.css +1 -1
  413. package/styles/css/visualizationSwitcherToolbar.css.map +1 -1
  414. package/styles/css/visualizationSwitcherWidget.css +1 -1
  415. package/styles/css/visualizationSwitcherWidget.css.map +1 -1
  416. package/styles/scss/_variables.scss +3 -2
  417. package/styles/scss/_zIndexes.scss +4 -0
  418. package/styles/scss/attributeFilterConfig.scss +1 -1
  419. package/styles/scss/configurationPanel.scss +1 -1
  420. package/styles/scss/dashboard.scss +113 -94
  421. package/styles/scss/dashboardContentLoader.scss +45 -0
  422. package/styles/scss/dragAndDrop.scss +2 -9
  423. package/styles/scss/drillConfigPanel.scss +3 -3
  424. package/styles/scss/insightEditor.scss +53 -0
  425. package/styles/scss/layout.scss +1 -1
  426. package/styles/scss/main.scss +1 -0
  427. package/styles/scss/sidebar.scss +47 -12
  428. package/esm/presentation/dashboard/components/DashboardSkeleton.d.ts +0 -5
  429. package/esm/presentation/dashboard/components/DashboardSkeleton.d.ts.map +0 -1
  430. package/esm/presentation/dashboard/components/DashboardSkeleton.js +0 -20
@@ -4,7 +4,7 @@ export const fr_FR = {
4
4
  "dashboard.contractExpired.trial.title": "Votre essai est terminé.",
5
5
  "dashboard.contractExpired.trial.description": "Contactez-nous si vous souhaitez continuer à utiliser GoodData Cloud.",
6
6
  "dashboard.contractExpired.nonTrial.title": "Votre accès est bloqué.",
7
- "dashboard.contractExpired.nonTrial.description": "Contactez l'administrateur du compte pour récupérer l'accès.",
7
+ "dashboard.contractExpired.nonTrial.description": "Contactez l’administrateur du compte pour récupérer l’accès.",
8
8
  "dashboard.contractExpired.buttonTitle": "Contactez-nous",
9
9
  "loading": "Chargement en cours…",
10
10
  "untitled": "Sans titre",
@@ -18,21 +18,22 @@ export const fr_FR = {
18
18
  "options.menu.save.as": "Enregistrer sous un nouveau nom",
19
19
  "options.menu.save.as.tooltip": "Un tableau de bord vide ne peut pas être enregistré.",
20
20
  "options.menu.settings": "Paramètres",
21
- "messages.dashboardSaveFailed": "L'enregistrement du tableau de bord a échoué. Supprimez les visualisations non disponibles, puis réessayez, ou contactez votre administrateur.",
21
+ "messages.dashboardSaveFailed": "L’enregistrement du tableau de bord a échoué. Supprimez les visualisations non disponibles, puis réessayez, ou contactez votre administrateur.",
22
22
  "insightNotSavedDialog.headline": "Enregistrer le tableau de bord",
23
23
  "insightNotSavedDialog.message": "Les objets suivants seront enregistrés avec le tableau de bord.",
24
24
  "insightNotSavedDialog.visualisations": "Visualisations ({count})",
25
25
  "insightNotSavedDialog.cancel": "Annuler",
26
26
  "insightNotSavedDialog.saveAll": "Tout enregistrer",
27
- "messages.dashboard.incompatibleDefaultFilters.title": "<b>Avertissement</b> Certains filtres du tableau de bord n'ont pas pu être appliqués. Vérifiez les filtres pour vous assurer que vous consultez les bonnes données.",
27
+ "messages.dashboard.incompatibleDefaultFilters.title": "<b>Avertissement</b> Certains filtres du tableau de bord n’ont pas pu être appliqués. Vérifiez les filtres pour vous assurer que vous consultez les bonnes données.",
28
28
  "messages.dashboard.invalidDrills.title": "<b>Certaines interactions ont été supprimées.</b>",
29
29
  "messages.dashboard.invalidDrills.body.modern": "Un ou plusieurs tableaux de bord/visualisations/métriques/attributs ont été modifiés ou supprimés, ce qui a entraîné la suppression de certaines interactions dans les widgets suivants : <b>{listOfWidgetTitles}</b>",
30
30
  "messages.dashboard.sanitizedDrills.title": "<b>Certains paramètres d’interaction ont été mis à jour</b>",
31
31
  "messages.dashboard.sanitizedDrills.body.modern": "Certains paramètres de filtre d’exploration enregistrés ne correspondent plus au tableau de bord ou à la visualisation actuels et ont été supprimés de ces éléments : <b>{listOfWidgetTitles}</b>",
32
- "messages.dashboard.invalidCustomUrlDrills.title": "<b>Certaines interactions d'URL d'exploration ne fonctionnent pas</b>",
32
+ "messages.dashboard.invalidCustomUrlDrills.title": "<b>Certaines interactions d’URL d’exploration ne fonctionnent pas</b>",
33
33
  "messages.dashboard.invalidCustomUrlDrills.body.modern": "Certains paramètres d'URL non valides dans vos URL personnalisées entraînent une erreur dans les interactions des URL d'exploration sur les widgets suivants : <b>{listOfWidgetTitles}</b>",
34
34
  "messages.dashboard.expandable.showMore": "Montrer plus",
35
35
  "messages.dashboard.expandable.showLess": "Montrer moins",
36
+ "messages.dashboard.editModeDesktopLayout.note": "<b>Remarque :</b> Votre écran est plus étroit que la mise en page du mode d’édition. Pour voir l’intégralité du tableau de bord, faites défiler horizontalement. Le mode d’affichage s’adapte à tous les écrans.",
36
37
  "messages.drill.InteractionConfiguredSuccess": "Interaction configurée",
37
38
  "messages.drill.InteractionUpdatedSuccess": "Interaction modifiée",
38
39
  "filterBar.label": "Filtres",
@@ -44,10 +45,10 @@ export const fr_FR = {
44
45
  "filterBar.filterListAutoExpanded": "La liste de filtres a été automatiquement développée",
45
46
  "filterBar.filterListAutoCollapsed": "La liste de filtres a été automatiquement réduite",
46
47
  "filterBar.unappliedFiltersNotification": "<link>Appliquez les filtres</link> pour voir les données mises à jour.",
47
- "filterBar.invalidFilterSelection": "Pour appliquer les modifications, sélectionnez des valeurs valides pour ces filtres: {names}",
48
+ "filterBar.invalidFilterSelection": "Pour appliquer les modifications, sélectionnez des valeurs valides pour ces filtres : {names}",
48
49
  "filterBar.applyFilters": "Appliquer tous les filtres",
49
50
  "geochart.alternateView.tablist.label": "Tableaux de couches",
50
- "filterBar.executionTimestampNotificationMessage": "<bold>Remarque.</bold> Vous visualisez des données actualisées, mais pour tout filtre de date relative, le tableau de bord considère {date} comme étant \"aujourd'hui\".",
51
+ "filterBar.executionTimestampNotificationMessage": "<bold>Remarque.</bold> Vous visualisez des données actualisées, mais pour tout filtre de date relative, le tableau de bord considère {date} comme étant « aujourd’hui ».",
51
52
  "filterBar.executionTimestampNotificationAction": "<link>Remise à zéro aujourd'hui</link>",
52
53
  "options.menu.export": "Exporter",
53
54
  "options.menu.export.header.data": "Données",
@@ -58,20 +59,20 @@ export const fr_FR = {
58
59
  "options.menu.export.PDF": "Aperçu (.pdf)",
59
60
  "options.menu.export.dialog.EXCEL": "Exporter des données (.xlsx)",
60
61
  "options.menu.export.dialog.widget.EXCEL": "Exporter des données formatées (.xlsx)",
61
- "options.menu.export.dialog.includeExportInfo": "Inclure une feuille avec des informations sur l'exportation",
62
+ "options.menu.export.dialog.includeExportInfo": "Inclure une feuille avec des informations sur l’exportation",
62
63
  "options.menu.export.EXCEL": "Données (.xlsx)",
63
64
  "options.menu.export.partialResults.exportDisabled": "Impossible d’exporter, car la visualisation dépasse les limites de résultat.",
64
65
  "options.menu.export.partialResults.warning.dashboard": "Certaines visualisations dépassent les limites de résultat et ne seront pas incluses dans l’export XLSX.",
65
66
  "options.menu.export.presentation.PPTX": "Diaporama (.pptx)",
66
67
  "options.menu.export.presentation.PDF": "Diaporama (.pdf)",
67
68
  "options.menu.export.image.PNG": "Instantané (.png)",
68
- "options.menu.export.presentation.unsupported.oldWidget": "Impossible d'exporter. Veuillez réenregistrer le tableau de bord ou contacter votre administrateur.",
69
- "options.menu.export.in.progress": "L'exportation est en cours. Attendez qu'elle soit terminée avant de procéder à une nouvelle exportation.",
70
- "options.menu.schedule.email": "Programmer l'exportation",
69
+ "options.menu.export.presentation.unsupported.oldWidget": "Impossible d’exporter. Veuillez réenregistrer le tableau de bord ou contacter votre administrateur.",
70
+ "options.menu.export.in.progress": "L’exportation est en cours. Attendez qu’elle soit terminée avant de procéder à une nouvelle exportation.",
71
+ "options.menu.schedule.email": "Programmer l’exportation",
71
72
  "options.menu.schedule.email.edit.noCreatePermissions": "Exportations programmées",
72
73
  "options.menu.alert": "Alerte",
73
74
  "options.menu.alerts.edit.noCreatePermissions": "Alertes",
74
- "options.menu.data.too.large": "L'exportation n'est pas disponible en raison d'un trop grand nombre de points de données dans le résultat.",
75
+ "options.menu.data.too.large": "L’exportation n’est pas disponible en raison d’un trop grand nombre de points de données dans le résultat.",
75
76
  "options.menu.unsupported.raw.error": "Exportation indisponible en raison d'un trop grand nombre de points de données ou d'une erreur dans le résultat",
76
77
  "options.menu.density": "Densité du contenu",
77
78
  "options.menu.changeTimezone": "Modifier le fuseau horaire",
@@ -89,9 +90,9 @@ export const fr_FR = {
89
90
  "dialogs.export.filters": "CONTEXTE DE VISUALISATION",
90
91
  "dialogs.export.includeFilters": "Inclure les filtres appliqués",
91
92
  "dialogs.export.headline": "Exporter au format XLSX",
92
- "dialogs.export.mergeHeaders": "Garder les cellules d'attributs fusionnées",
93
+ "dialogs.export.mergeHeaders": "Garder les cellules d’attributs fusionnées",
93
94
  "dialogs.schedule.email.evaluation.mode.shared": "Utiliser les mêmes pièces jointes pour tous les destinataires",
94
- "dialogs.schedule.email.evaluation.mode.tooltip": "Activer pour envoyer le même fichier à tous les destinataires. Désactiver pour envoyer des fichiers qui reflètent les droits d'accès aux données de chaque destinataire.",
95
+ "dialogs.schedule.email.evaluation.mode.tooltip": "Activer pour envoyer le même fichier à tous les destinataires. Désactiver pour envoyer des fichiers qui reflètent les droits d’accès aux données de chaque destinataire.",
95
96
  "dialogs.export.submit": "Exporter",
96
97
  "dialogs.export.pdf.pageSize": "Taille de la page",
97
98
  "dialogs.export.pdf.pageSize.option.a3": "A3",
@@ -100,15 +101,15 @@ export const fr_FR = {
100
101
  "dialogs.export.pdf.pageOrientation": "Orientation",
101
102
  "dialogs.export.pdf.pageOrientation.option.portrait": "Portrait",
102
103
  "dialogs.export.pdf.pageOrientation.option.landscape": "Paysage",
103
- "dialogs.export.pdf.includePageExportInfo": "Inclure les informations d'exportation de la page",
104
+ "dialogs.export.pdf.includePageExportInfo": "Inclure les informations d’exportation de la page",
104
105
  "dialogs.schedule.email.accessibilityTitle": "Courriels programmés",
105
106
  "dialogs.schedule.email.delete.success": "Votre e-mail programmé a bien été supprimé.",
106
107
  "dialogs.schedule.email.submit.success": "Le tableau de bord est programmé pour envoyer des e-mails.",
107
108
  "dialogs.schedule.email.submit.error": "Échec de la programmation du tableau de bord. Réessayez plus tard.",
108
109
  "dialogs.schedule.email.save.success": "Bravo ! Votre programme a été enregistré.",
109
110
  "dialogs.schedule.email.save.error": "L'enregistrement du programme a échoué. Veuillez réessayer.",
110
- "dialogs.schedule.error.too_long": "Erreur : Texte trop long - réduire à {value} caractères ou moins.",
111
- "dialogs.alert.error.too_long": "Erreur : Texte trop long - réduire à {value} caractères ou moins.",
111
+ "dialogs.schedule.error.too_long": "Erreur : Texte trop long — réduire à {value} caractères ou moins.",
112
+ "dialogs.alert.error.too_long": "Erreur : Texte trop long — réduire à {value} caractères ou moins.",
112
113
  "dialogs.save.as.new.title": "Enregistrer en tant que nouveau tableau de bord",
113
114
  "dialogs.save.as.new.desc": "Donnez au nouveau tableau de bord un nom descriptif pour le retrouver facilement.",
114
115
  "dialogs.save.as.new.default.title": "Copie de {title}",
@@ -120,9 +121,9 @@ export const fr_FR = {
120
121
  "cancelConfirmationDialog.submitButtonText": "Ignorer les modifications",
121
122
  "settingsDashboardDialog.headline": "Paramètres du tableau de bord",
122
123
  "settingsDashboardDialog.section.alert": "Alertes",
123
- "settingsDashboardDialog.section.alert.inherit": "Utilisez la fréquence d'évaluation par défaut définie par votre organisation.",
124
- "settingsDashboardDialog.section.alert.note": "<strong>Remarque :</strong> S'applique uniquement aux nouvelles alertes - utilisez l'API pour mettre à jour les alertes existantes.",
125
- "settingsDashboardDialog.section.alert.label": "Fréquence d'évaluation",
124
+ "settingsDashboardDialog.section.alert.inherit": "Utilisez la fréquence d’évaluation par défaut définie par votre organisation.",
125
+ "settingsDashboardDialog.section.alert.note": "<strong>Remarque :</strong> S'applique uniquement aux nouvelles alertes — utilisez l'API pour mettre à jour les alertes existantes.",
126
+ "settingsDashboardDialog.section.alert.label": "Fréquence d’évaluation",
126
127
  "settingsDashboardDialog.section.timezone": "Fuseau horaire",
127
128
  "settingsDashboardDialog.section.timezone.defaultTimezone": "Fuseau horaire du tableau de bord",
128
129
  "settingsDashboardDialog.section.timezone.defaultTimezone.tooltip": "Fuseau horaire utilisé pour les filtres de date et les valeurs de date sur ce tableau de bord.",
@@ -164,25 +165,25 @@ export const fr_FR = {
164
165
  "drill_modal_picker.cross-filter": "Filtres croisés",
165
166
  "drill_modal_picker.key-driver-analysis": "Expliquer",
166
167
  "drill_modal_picker.more.details": "Plus de détails",
167
- "drill_modal_picker.drill_to_url.disabled.missing_attributes": "Erreur : analyse descendante indisponible. Sélectionnez un élément qui inclut : {attributes}.",
168
+ "drill_modal_picker.drill_to_url.disabled.missing_attributes": "Erreur : analyse descendante indisponible. Sélectionnez un élément qui inclut : {attributes}.",
168
169
  "drill_modal_picker.label": "Choisir l'action de forage",
169
170
  "drillModal.backToTop": "Haut de page",
170
171
  "filters.alertMessage.relativePreset": "dans {calendarIcon} {range}",
171
172
  "filters.alertMessage.relativePreset.inPeriod": "de la période de {calendarIcon} {range}",
172
- "filters.config.warning.multipleWorkspacesConfigs": "Il y a plus d'une configuration de filtre de date d'espace de travail associée à cet espace de travail. La première a été utilisée.",
173
- "filters.config.warning.selectedFilterNotValid": "L'option de filtre par défaut n'est pas valide, la première option disponible est utilisée à la place.",
173
+ "filters.config.warning.multipleWorkspacesConfigs": "Il y a plus d’une configuration de filtre de date d’espace de travail associée à cet espace de travail. La première a été utilisée.",
174
+ "filters.config.warning.selectedFilterNotValid": "L’option de filtre par défaut n’est pas valide, la première option disponible est utilisée à la place.",
174
175
  "filters.config.warning.allOptionsHidden": "La configuration de filtre de date de tableau de bord a été ignorée car elle aurait masqué toutes les options de filtre.",
175
176
  "filters.config.warning.conflictingIdentifiers": "La configuration de filtre de date de tableau de bord a été ignorée, car elle contient des options de filtre de date avec des identifiants identiques.",
176
- "filters.config.warning.workspace.notAvailable": "La configuration de filtre de date d'espace de travail n'est pas définie ou vous n'avez pas les autorisations nécessaires pour y accéder.",
177
+ "filters.config.warning.workspace.notAvailable": "La configuration de filtre de date d’espace de travail n’est pas définie ou vous n’avez pas les autorisations nécessaires pour y accéder.",
177
178
  "filters.configurationPanel.header": "Filtres",
178
179
  "filters.configurationPanel.crossFiltering.toggle": "Filtres croisés",
179
180
  "filters.configurationPanel.crossFiltering.toggle.tooltip": "Permettre aux utilisateurs de filtrer le tableau de bord en cliquant sur les points de données dans les visualisations.",
180
181
  "filters.configurationPanel.userFilterReset.toggle": "Réinitialiser",
181
182
  "filters.configurationPanel.userFilterReset.toggle.tooltip": "Permettre aux utilisateurs de réinitialiser tous les filtres par défaut.",
182
183
  "filters.configurationPanel.userFilterSave.toggle": "Sauvegarde automatique du dernier état",
183
- "filters.configurationPanel.userFilterSave.toggle.tooltip": "Autoriser la sauvegarde automatique du dernier état des filtres. Lorsque les utilisateurs reviennent, leurs filtres restent tels qu'ils les ont laissés.",
184
+ "filters.configurationPanel.userFilterSave.toggle.tooltip": "Autoriser la sauvegarde automatique du dernier état des filtres. Lorsque les utilisateurs reviennent, leurs filtres restent tels qu’ils les ont laissés.",
184
185
  "filters.configurationPanel.filterViews.toggle": "Vues sauvegardées",
185
- "filters.configurationPanel.filterViews.toggle.tooltip": "<p>Permet aux utilisateurs de sauvegarder l'état des filtres en tant que vue personnelle à laquelle ils peuvent revenir ultérieurement.</p><p>Seul l'utilisateur qui a sauvegardé la vue peut y accéder et la définir comme vue par défaut.</p>",
186
+ "filters.configurationPanel.filterViews.toggle.tooltip": "<p>Permet aux utilisateurs de sauvegarder l’état des filtres en tant que vue personnelle à laquelle ils peuvent revenir ultérieurement.</p><p>Seul l’utilisateur qui a sauvegardé la vue peut y accéder et la définir comme vue par défaut.</p>",
186
187
  "filters.configurationPanel.persistentFiltersAcrossTabs.toggle": "Filtres persistants dans les onglets",
187
188
  "filters.configurationPanel.persistentFiltersAcrossTabs.toggle.tooltip": "Autorisez les filtres persistants dans les onglets. Lorsque cette option est activée, les filtres seront persistants dans les onglets.",
188
189
  "settingsDashboardDialog.sectionHeaders.dateDataset": "Fourchette de dates dans les descriptions",
@@ -191,58 +192,62 @@ export const fr_FR = {
191
192
  "dateDataset.notFound": "Non trouvé",
192
193
  "dialogs.schedule.email.attachments.label": "Pièces jointes",
193
194
  "dialogs.schedule.email.title.placeholder": "Programme sans titre",
194
- "dialogs.alert.title.placeholder": "Nom de l'alerte",
195
+ "dialogs.alert.title.placeholder": "Nom de l’alerte",
195
196
  "dialogs.automation.icon.ariaLabel.sourceVisualization": "Visualisation source",
196
197
  "dialogs.automation.icon.ariaLabel.sourceDashboard": "Tableau de bord source",
197
- "dialogs.alert.accessibility.label.title": "Nom de l'alerte",
198
+ "dialogs.alert.accessibility.label.title": "Nom de l’alerte",
198
199
  "dialogs.schedule.accessibility.label.email.title": "Nom de l'horaire",
199
200
  "dialogs.schedule.email.message.label": "Message",
200
- "dialogs.schedule.email.max.recipients": "Erreur : Trop de destinataires - vous pouvez ajouter jusqu'à {maxRecipients}.",
201
- "dialogs.schedule.email.min.recipients": "Erreur : Champ obligatoire - sélectionnez un destinataire pour continuer.",
202
- "dialogs.schedule.email.usersLoad.error": "Erreur : Impossible de charger les utilisateurs - réessayez plus tard.",
203
- "dialogs.schedule.email.user.missing.email": "Erreur : Les destinataires suivants ont des adresses électroniques non valides - corrigez-les pour continuer : {recipients}.",
201
+ "dialogs.schedule.email.max.recipients": "Erreur : Trop de destinataires — vous pouvez ajouter jusqu'à {maxRecipients}.",
202
+ "dialogs.schedule.email.min.recipients": "Erreur : Champ obligatoire — sélectionnez un destinataire pour continuer.",
203
+ "dialogs.schedule.email.usersLoad.error": "Erreur : Impossible de charger les utilisateurs — réessayez plus tard.",
204
+ "dialogs.schedule.email.user.missing.email": "Erreur : Les destinataires suivants ont des adresses électroniques non valides — corrigez-les pour continuer : {recipients}.",
204
205
  "dialogs.schedule.email.user.missing.email.tooltip": "Erreur : L'adresse électronique de ce destinataire n'est pas valide.",
205
- "dialogs.schedule.email.user.invalid.external": "Erreur : Les destinataires suivants n'ont pas l'accès requis - supprimez-les pour continuer : {recipients}.",
206
+ "dialogs.schedule.email.user.invalid.external": "Erreur : Les destinataires suivants n'ont pas l'accès requis — supprimez-les pour continuer : {recipients}.",
206
207
  "dialogs.schedule.email.user.invalid.external.tooltip": "Erreur : Ce destinataire n'a pas l'accès requis.",
207
- "dialogs.schedule.email.user.invalid.onlyYou": "Erreur : Vous seul pouvez être destinataire - supprimez les autres pour continuer.",
208
+ "dialogs.schedule.email.user.invalid.onlyYou": "Erreur : Vous seul pouvez être destinataire — supprimez les autres pour continuer.",
208
209
  "dialogs.schedule.email.user.used.external": "L'email “{email}” n'appartient pas à cet espace de travail. Le destinataire peut recevoir des données sensibles.",
209
210
  "dialogs.schedule.email.user.remove": "Retirer {name}",
210
211
  "dialogs.schedule.email.userAndEmail.remove": "Supprimer {name} ({email})",
211
- "dialogs.schedule.email.user.warning.external": "Attention : Le destinataire externe - \"{email}\" recevra la même vue du tableau de bord que vous.",
212
- "dialogs.schedule.email.user.unknown": "Il s'agit d'un utilisateur inconnu qui ne peut pas être ajouté comme destinataire.",
212
+ "dialogs.schedule.email.user.warning.external": "Attention : Le destinataire externe — \"{email}\" recevra la même vue du tableau de bord que vous.",
213
+ "dialogs.schedule.email.user.unknown": "Il s’agit d’un utilisateur inconnu qui ne peut pas être ajouté comme destinataire.",
213
214
  "dialogs.schedule.email.user.noMatch": "Aucun utilisateur ou groupe trouvé.",
214
- "dialogs.schedule.email.user.notMe": "Cet utilisateur n'est pas autorisé. Le destinataire ne peut être que vous.",
215
+ "dialogs.schedule.email.user.notMe": "Cet utilisateur n’est pas autorisé. Le destinataire ne peut être que vous.",
215
216
  "dialogs.schedule.email.user.guest": "(invité)",
216
217
  "dialogs.schedule.email.recipients.note": "Note : Tous les destinataires marqués comme \"(invité)\" recevront la même vue du tableau de bord que vous.",
217
218
  "dialogs.schedule.email.subject.label": "Sujet",
218
219
  "dialogs.schedule.email.recipients.label": "Destinataires",
220
+ "dialogs.schedule.email.recipients.selected.none": "Aucun destinataire n’est sélectionné.",
221
+ "dialogs.schedule.email.recipients.selected.few": "{count, plural, one {# destinataire sélectionné} other {# destinataires sélectionnés}} : {names}.",
222
+ "dialogs.schedule.email.recipients.selected.many": "{count, plural, one {# destinataire sélectionné} other {# destinataires sélectionnés}}.",
223
+ "dialogs.schedule.email.recipients.navigationHint": "Utilisez les touches fléchées gauche et droite pour passer d’un destinataire à l’autre.",
219
224
  "dialogs.schedule.email.filters": "Filtres ({count})",
220
225
  "dialogs.schedule.email.tabs.general": "Général",
221
226
  "dialogs.schedule.email.tabs.filters": "Filtres",
222
227
  "dialogs.schedule.email.destination": "Destination",
223
- "dialogs.schedule.email.destination.missing": "Aucune destination n'est disponible.",
228
+ "dialogs.schedule.email.destination.missing": "Aucune destination n’est disponible.",
224
229
  "dialogs.schedule.email.destination.help": "Créer une destination",
225
230
  "dialogs.schedule.email.message.placeholder": "Bonjour, Votre email programmé est prêt. Vous pouvez télécharger le tableau de bord en pièces jointes.",
226
231
  "dialogs.schedule.email.create": "Créer",
227
232
  "dialogs.schedule.email.closeLabel": "Fermer le dialogue",
228
- "dialogs.schedule.email.backLabel": "Retour à l'étape précédente",
229
- "dialogs.alert.backLabel": "Retour à l'étape précédente",
233
+ "dialogs.schedule.email.backLabel": "Retour à l’étape précédente",
234
+ "dialogs.alert.backLabel": "Retour à l’étape précédente",
230
235
  "dialogs.alert.closeLabel": "Fermer le dialogue",
231
236
  "dialogs.schedule.email.footer.title": "Comment programmer l'exportation ?",
232
237
  "dialogs.schedule.email.footer.title.short": "Aide",
233
238
  "dialogs.schedule.email.save": "Enregistrer",
234
- "dialogs.schedule.email.save.executionTimestampMode": "Pour créer ou modifier des exportations planifiées, réinitialisez la date du tableau de bord à aujourd'hui.",
235
- "dialogs.alert.save.executionTimestampMode": "Pour créer ou modifier des alertes, réinitialisez la date du tableau de bord à aujourd'hui.",
236
- "dialogs.schedule.email.widgetError": "Erreur : La programmation ne peut pas être envoyée - le widget source a été supprimé. Supprimez l'horaire ou contactez votre administrateur.",
239
+ "dialogs.schedule.email.save.executionTimestampMode": "Pour créer ou modifier des exportations planifiées, réinitialisez la date du tableau de bord à aujourd’hui.",
240
+ "dialogs.alert.save.executionTimestampMode": "Pour créer ou modifier des alertes, réinitialisez la date du tableau de bord à aujourd’hui.",
241
+ "dialogs.schedule.email.widgetError": "Erreur : La programmation ne peut pas être envoyée — le widget source a été supprimé. Supprimez l'horaire ou contactez votre administrateur.",
237
242
  "dialogs.schedule.email.destinationWarning": "La destination sélectionnée ne permet d'envoyer l'exportation qu'à soi-même.",
238
243
  "dialogs.automation.filters.showAll": "Afficher tout",
239
- "dialogs.automation.filters.showAll.ariaDescription": "Permet d'afficher tous les filtres.",
244
+ "dialogs.automation.filters.showAll.ariaDescription": "Permet d’afficher tous les filtres.",
240
245
  "dialogs.automation.filters.showLess": "Montrer moins",
241
246
  "dialogs.automation.filters.showLess.ariaDescription": "Utiliser pour afficher moins de filtres.",
242
247
  "dialogs.automation.filters.add": "Ajouter un filtre",
243
- "dialogs.automation.filters.addDisabled": "Ajouter un filtre désactivé - tous les filtres ont été ajoutés.",
248
+ "dialogs.automation.filters.addDisabled": "Ajouter un filtre désactivé — tous les filtres ont été ajoutés.",
244
249
  "dialogs.automation.filters.title": "Ajouter un filtre",
245
- "dialogs.automation.filters.noFilters": "Il n'y a plus de filtres disponibles",
250
+ "dialogs.automation.filters.noFilters": "Il n’y a plus de filtres disponibles",
246
251
  "dialogs.automation.filters.useFiltersMessage": "Utilisez toujours ces filtres pour les exportations futures",
247
252
  "dialogs.automation.filters.searchAriaLabel": "Filtres de recherche",
248
253
  "dialogs.automation.filters.deleteAriaLabel": "Supprimer le filtre",
@@ -253,23 +258,23 @@ export const fr_FR = {
253
258
  "automationParameters.announcement.added": "Paramètre {title} ajouté.",
254
259
  "automationParameters.announcement.removed": "Paramètre {title} retiré.",
255
260
  "automationParameters.announcement.changed": "Paramètre {title} modifié en {value}.",
256
- "dialogs.automation.filters.useFiltersMessage.tooltip": "Cochez cette case pour conserver ces filtres à chaque exportation. Si la case n'est pas cochée, l'exportation utilisera les derniers filtres par défaut du tableau de bord.",
261
+ "dialogs.automation.filters.useFiltersMessage.tooltip": "Cochez cette case pour conserver ces filtres à chaque exportation. Si la case n’est pas cochée, l’exportation utilisera les derniers filtres par défaut du tableau de bord.",
257
262
  "dialogs.automation.filters.useFiltersMessage.parameters.tooltip": "Cochez pour conserver ces valeurs de filtre et de paramètre pour chaque exportation. Si cette option n’est pas cochée, les exportations utilisent les dernières valeurs par défaut du tableau de bord.",
258
- "dialogs.automation.filters.activeFilters": "Remarque : ces filtres seront toujours utilisés pour les exportations futures.",
263
+ "dialogs.automation.filters.activeFilters": "Remarque : ces filtres seront toujours utilisés pour les exportations futures.",
259
264
  "dialogs.schedule.email.timezone": "Fuseau horaire",
260
265
  "dialogs.automation.timezone.default": "Par défaut",
261
266
  "dialogs.automation.timezone.default.tooltip": "Suit le fuseau horaire défini pour le tableau de bord ou, si le tableau de bord n’en possède pas, pour votre organisation, espace de travail ou compte utilisateur. Il est mis à jour automatiquement si ce paramètre change.",
262
- "dialogs.automation.timezone.select.searchPlaceholder": "Recherche ...",
267
+ "dialogs.automation.timezone.select.searchPlaceholder": "Recherche…",
263
268
  "dialogs.automation.timezone.select.noMatch": "Aucun fuseau horaire correspondant.",
264
- "dialogs.automation.timezone.now": "Maintenant : {time}",
265
- "dialogs.automation.timezone.defaultNow": "{timezone}, Maintenant : {time}",
269
+ "dialogs.automation.timezone.now": "Maintenant : {time}",
270
+ "dialogs.automation.timezone.defaultNow": "{timezone}, Maintenant : {time}",
266
271
  "dialogs.automation.timezone.usage": "Utilisé pour calculer les dates dans les données exportées.",
267
- "dialogs.automation.filters.missing": "<b>Attention :</b> Certains filtres n'ont pas pu être appliqués - ils ne sont plus disponibles dans le tableau de bord.",
272
+ "dialogs.automation.filters.missing": "<b>Attention :</b> Certains filtres n'ont pas pu être appliqués — ils ne sont plus disponibles dans le tableau de bord.",
268
273
  "dialogs.automation.filters.tab.label": "TAB",
269
274
  "dialogs.automation.filters.tab.untitled": "Onglet",
270
- "dialogs.schedule.email.tabs.info": "Tous les onglets du tableau de bord sont inclus - un fichier distinct est créé pour chaque onglet et chaque format d'exportation.",
275
+ "dialogs.schedule.email.tabs.info": "Tous les onglets du tableau de bord sont inclus — un fichier distinct est créé pour chaque onglet et chaque format d'exportation.",
271
276
  "dialogs.automation.attachments.add": "Ajouter des pièces jointes",
272
- "dialogs.automation.applyCurrentFilters.confirm.title": "Modifier avec les filtres actuels ?",
277
+ "dialogs.automation.applyCurrentFilters.confirm.title": "Modifier avec les filtres actuels ?",
273
278
  "dialogs.automation.applyCurrentFilters.confirm.submit": "Modifier",
274
279
  "dialogs.automation.applyCurrentFilters.alert.confirm": "<b>Avertissement</b>: Certains filtres utilisés lors de la création de cette alerte ne sont plus disponibles ou valides. La modification appliquera les filtres du tableau de bord actuel.",
275
280
  "dialogs.automation.applyCurrentFilters.schedule.confirm": "<b>Avertissement</b>: Certains filtres utilisés lors de la création de cette programmation ne sont plus disponibles ou valides. La modification appliquera les filtres du tableau de bord actuel.",
@@ -277,21 +282,21 @@ export const fr_FR = {
277
282
  "dialogs.automation.applyCurrentFilters.schedule.filtersAndTimezone.confirm": "<b>Avertissement</b> : Certains filtres et le fuseau horaire utilisés lors de la création de cette programmation ne sont plus disponibles ou valides. La modification appliquera les filtres et le fuseau horaire actuels du tableau de bord.",
278
283
  "dialogs.automation.filters.schedule.ariaLabel": "Informations sur l'option : Utilisez toujours ces filtres pour les exportations futures.",
279
284
  "dialogs.schedule.management.title": "Exportations programmées",
280
- "dialogs.schedule.management.delete.dialog": "Supprimer la planification ?",
285
+ "dialogs.schedule.management.delete.dialog": "Supprimer la planification ?",
281
286
  "dialogs.schedule.management.delete.dialog.confirm": "<b>La planification</b> sera supprimée de façon définitive.",
282
287
  "dialogs.schedule.management.list.title": "Vos exportations programmées",
283
288
  "dialogs.schedule.management.create": "Créer",
284
289
  "dialogs.schedule.management.create.new": "Créer nouveau",
285
- "dialogs.schedule.management.create.tooManyMessage": "Votre organisation a atteint la limite des exportations programmées. Contactez votre administrateur pour en créer d'autres.",
290
+ "dialogs.schedule.management.create.tooManyMessage": "Votre organisation a atteint la limite des exportations programmées. Contactez votre administrateur pour en créer d’autres.",
286
291
  "dialogs.schedule.management.noSchedules": "Il n'y a pas d'exportations programmées.{br}Créer un nouveau.",
287
292
  "dialogs.schedule.management.attachments.xlsx.settings": "Options XLSX",
288
293
  "dialogs.schedule.management.attachments.csv.settings": "Options CSV",
289
- "dialogs.schedule.management.attachments.cells.merged": "Garder les cellules d'attributs fusionnées",
290
- "dialogs.schedule.management.attachments.exportInfo": "Inclure une feuille avec des informations sur l'exportation",
294
+ "dialogs.schedule.management.attachments.cells.merged": "Garder les cellules d’attributs fusionnées",
295
+ "dialogs.schedule.management.attachments.exportInfo": "Inclure une feuille avec des informations sur l’exportation",
291
296
  "dialogs.export.csv.delimiter": "Délimiteur CSV",
292
- "dialogs.export.csv.headline": "Paramètres d'exportation (.csv)",
297
+ "dialogs.export.csv.headline": "Paramètres d’exportation (.csv)",
293
298
  "dialogs.export.csv.submit.disabledTooltip": "Saisissez un délimiteur valide d’un seul caractère pour exporter.",
294
- "dialogs.export.pdf.headline": "Paramètres d'exportation (.pdf)",
299
+ "dialogs.export.pdf.headline": "Paramètres d’exportation (.pdf)",
295
300
  "dialogs.schedule.management.attachments.delete": "Supprimer {format} la pièce jointe ",
296
301
  "dialogs.schedule.management.attachments.removed": "Pièce jointe {format} supprimée.",
297
302
  "dialogs.schedule.management.attachments.message": "<strong>Note</strong> : Le filtrage croisé ne sera pas appliqué dans l'exportation programmée.",
@@ -306,26 +311,27 @@ export const fr_FR = {
306
311
  "scheduledEmail.attachmentFormat.dashboard.pdf": "Aperçu (.pdf)",
307
312
  "scheduledEmail.attachmentFormat.dashboard.formattedXLSX": "Données (.xlsx)",
308
313
  "scheduledEmail.attachmentFormat.dashboard.pdfSlides": "Diaporama (.pdf)",
309
- "scheduledEmail.attachments.warning.noAttachmentsSelected": "<strong>Avertissement</strong> : Les exportations programmées nécessitent au moins une pièce jointe - sélectionnez une option pour continuer.",
310
- "scheduledEmail.attachments.error.noAttachmentsSelected": "Erreur : Aucune pièce jointe sélectionnée - sélectionnez au moins une pièce jointe pour planifier une exportation.",
314
+ "scheduledEmail.attachments.noVisibleAttachments": "Aucune pièce jointe à afficher.",
315
+ "scheduledEmail.attachments.warning.noAttachmentsSelected": "<strong>Avertissement</strong> : Les exportations programmées nécessitent au moins une pièce jointe — sélectionnez une option pour continuer.",
316
+ "scheduledEmail.attachments.error.noAttachmentsSelected": "Erreur : Aucune pièce jointe sélectionnée — sélectionnez au moins une pièce jointe pour planifier une exportation.",
311
317
  "dialogs.schedule.management.load.error": "Le chargement a échoué. Veuillez réessayer plus tard.",
312
318
  "dialogs.schedule.management.delete.error": "La suppression de la planification a échoué. Veuillez réessayer plus tard.",
313
319
  "dialogs.alerting.management.title": "Alertes",
314
320
  "dialogs.alerting.management.load.error": "Le chargement a échoué. Veuillez réessayer plus tard.",
315
- "dialogs.alerting.create.error": "La création de l'alerte a échoué. Réessayez plus tard.",
316
- "dialogs.alerting.create.success": "L'alerte a été créée avec succès.",
317
- "dialogs.alerting.update.error": "Échec de la mise à jour de l'alerte. Réessayez plus tard.",
318
- "dialogs.alerting.update.success": "L'alerte a été mise à jour avec succès.",
319
- "dialogs.alerting.management.delete.error": "Échec de la suppression de l'alerte. Réessayez plus tard.",
321
+ "dialogs.alerting.create.error": "La création de l’alerte a échoué. Réessayez plus tard.",
322
+ "dialogs.alerting.create.success": "L’alerte a été créée avec succès.",
323
+ "dialogs.alerting.update.error": "Échec de la mise à jour de l’alerte. Réessayez plus tard.",
324
+ "dialogs.alerting.update.success": "L’alerte a été mise à jour avec succès.",
325
+ "dialogs.alerting.management.delete.error": "Échec de la suppression de l’alerte. Réessayez plus tard.",
320
326
  "dialogs.alerting.management.create": "Créer",
321
327
  "dialogs.alerting.management.create.new": "Créer nouveau",
322
328
  "dialogs.alerting.footer.title": "Comment créer une alerte ?",
323
329
  "dialogs.alerting.footer.title.short": "Aide",
324
330
  "dialogs.alerting.management.list.title": "Vos alertes",
325
- "dialogs.alerting.management.noAlerts": "Il n'y a pas d'alerte.",
331
+ "dialogs.alerting.management.noAlerts": "Il n’y a pas d’alerte.",
326
332
  "dialogs.alerting.title.placeholder": "Alerte sans titre",
327
- "dialogs.alerting.management.delete.dialog": "Supprimer l'alerte ?",
328
- "dialogs.alerting.management.delete.dialog.confirm": "<b>L'alerte</b> sera définitivement supprimée, ainsi que toutes ses notifications.",
333
+ "dialogs.alerting.management.delete.dialog": "Supprimer l’alerte ?",
334
+ "dialogs.alerting.management.delete.dialog.confirm": "<b>L’alerte</b> sera définitivement supprimée, ainsi que toutes ses notifications.",
329
335
  "dialogs.alerting.delete.success": "Succès ! Votre alerte a été supprimée.",
330
336
  "dialogs.alerting.create.noMeasure.tooltip": "La création d'une alerte nécessite un indicateur. Utilisez un widget avec au moins une métrique.",
331
337
  "alerting.alert.menu.delete": "Supprimer",
@@ -341,7 +347,7 @@ export const fr_FR = {
341
347
  "gs.date.today": "Aujourd’hui",
342
348
  "gs.date.tomorrow": "Demain",
343
349
  "gs.date.yesterday": "Hier",
344
- "messages.exportResultError": "Échec de l'exportation des données. Réessayez plus tard.",
350
+ "messages.exportResultError": "Échec de l’exportation des données. Réessayez plus tard.",
345
351
  "messages.exportResultError.tooManyRows": "L'exportation a échoué. Trop de lignes ({actual}). La limite est fixée à {limit}.",
346
352
  "messages.exportResultError.timeout": "L’exportation a expiré. Limitez l’exportation (moins de lignes ou de colonnes) et réessayez.",
347
353
  "messages.exportResultRestrictedError": "Vous ne pouvez pas exporter cette visualisation car elle contient des données restreintes.",
@@ -353,20 +359,20 @@ export const fr_FR = {
353
359
  "messages.sharingDialogError.general": "Le chargement des paramètres de partage a échoué. Veuillez réessayer ultérieurement.",
354
360
  "messages.settingsDialogError.general": "Échec du chargement des paramètres du tableau de bord. Essayez à nouveau plus tard.",
355
361
  "visualization.dataTooLarge.headline": "Trop de points de données à afficher",
356
- "visualization.dataTooLarge.text": "Essayez d'appliquer un ou plusieurs filtres à votre tableau de bord.",
362
+ "visualization.dataTooLarge.text": "Essayez d’appliquer un ou plusieurs filtres à votre tableau de bord.",
357
363
  "visualization.empty.headline": "Aucune donnée pour votre sélection de filtre",
358
364
  "visualization.error.headline": "Désolé, nous ne pouvons pas afficher cette visualisation.",
359
365
  "visualization.error.text": "Contactez votre administrateur.",
360
366
  "visualization.ErrorMessageResultCacheMissing": "La visualisation a besoin d'être rafraîchie",
361
367
  "visualization.ErrorDescriptionResultCacheMissing": "Les données sous-jacentes ont changé ou ont expiré. Actualiser la page.",
362
- "visualization.warning.export.too_small": "Pas assez d'espace pour la visualisation",
368
+ "visualization.warning.export.too_small": "Pas assez d’espace pour la visualisation",
363
369
  "options.menu.unsupported.error": "La visualisation ne peut pas être exportée pour le moment. Essayez d'appliquer d'autres filtres ou d'utiliser d'autres mesures ou attributs.",
364
370
  "options.menu.unsupported.loading": "La visualisation ne peut pas être exportée pour le moment.",
365
371
  "options.menu.unsupported.incompatibleWidget": "Impossible de planifier l'exportation sur un widget personnalisé.",
366
372
  "options.menu.unsupported.schedulingForInsightNotEnabled": "Vous ne pouvez pas programmer d'exportation pour ce widget.",
367
373
  "options.menu.unsupported.alertingForInsightNotEnabled": "Vous ne pouvez pas créer d'alerte pour ce widget.",
368
- "options.menu.unsupported.oldWidget": "Impossible de planifier l'exportation. Veuillez réenregistrer le tableau de bord ou contacter votre administrateur.",
369
- "options.menu.unsupported.oldWidgetExport": "Impossible d'exporter. Veuillez réenregistrer le tableau de bord ou contacter votre administrateur.",
374
+ "options.menu.unsupported.oldWidget": "Impossible de planifier l’exportation. Veuillez réenregistrer le tableau de bord ou contacter votre administrateur.",
375
+ "options.menu.unsupported.oldWidgetExport": "Impossible d’exporter. Veuillez réenregistrer le tableau de bord ou contacter votre administrateur.",
370
376
  "options.menu.unsupported.alertingOldWidget": "Impossible de créer une alerte. Veuillez réenregistrer le tableau de bord ou contacter votre administrateur.",
371
377
  "export.defaultTitle": "Visualisation sans titre",
372
378
  "partial_data_warning.title": "Résultats partiels uniquement.",
@@ -374,13 +380,13 @@ export const fr_FR = {
374
380
  "partial_data_warning.hide_details": "Masquer les détails",
375
381
  "partial_data_warning.close": "Ignorer l’avertissement de données partielles",
376
382
  "partial_data_warning.export_raw": "Exporter le résultat complet en tant que Raw (.csv)",
377
- "export_unsupported.disabled": "L'exportation n'est pas prise en charge.",
383
+ "export_unsupported.disabled": "L’exportation n’est pas prise en charge.",
378
384
  "widget.options.description": "Description",
379
385
  "widget.options.menu.exportToCSV": "Exporter au format CSV",
380
386
  "widget.options.menu.exportToXLSX": "Exporter au format XLSX",
381
387
  "widget.options.menu.alert": "Alerte",
382
388
  "widget.options.menu.alerts": "Alertes",
383
- "widget.options.menu.scheduleExport": "Programmer l'exportation",
389
+ "widget.options.menu.scheduleExport": "Programmer l’exportation",
384
390
  "widget.options.menu.scheduleExport.edit": "Afficher les horaires",
385
391
  "widget.options.menu.XLSX": "Formaté (.xlsx)",
386
392
  "widget.options.menu.exportToCSV.formatted": "Formaté (.csv)",
@@ -398,18 +404,18 @@ export const fr_FR = {
398
404
  "share.button.tooltip": "Partager le tableau de bord",
399
405
  "dashboard.error.empty.heading": "Ce tableau de bord est vide",
400
406
  "dashboard.error.empty.text": "Toutes les visualisations ont été supprimées.",
401
- "dashboard.shareDialog.underLenientControl.label": "D'autres utilisateurs peuvent accéder à ce tableau de bord s'ils l'explorent",
407
+ "dashboard.shareDialog.underLenientControl.label": "D’autres utilisateurs peuvent accéder à ce tableau de bord s’ils l’explorent",
402
408
  "dashboard.shareDialog.lock.label": "Seuls les administrateurs peuvent modifier ce tableau de bord",
403
409
  "header.lockStatus.tooltip": "<b>Ce tableau de bord est verrouillé.</b> Seuls les administrateurs peuvent modifier ce tableau de bord.",
404
410
  "header.shareStatus.private.text": "Privé",
405
411
  "header.shareStatus.private.strict.tooltip": "Vous seul pouvez visualiser et modifier ce tableau de bord.",
406
- "header.shareStatus.private.not.strict.tooltip": "Le créateur du tableau de bord peut modifier celui-ci. Les autres utilisateurs avec des rôles adéquats peuvent modifier le tableau de bord lorsqu'ils l'explorent.",
407
- "topBar.timezoneIndicator.label": "Fuseau horaire : ",
412
+ "header.shareStatus.private.not.strict.tooltip": "Le créateur du tableau de bord peut modifier celui-ci. Les autres utilisateurs avec des rôles adéquats peuvent modifier le tableau de bord lorsqu’ils l’explorent.",
413
+ "topBar.timezoneIndicator.label": "Fuseau horaire : ",
408
414
  "topBar.timezoneIndicator.tooltip": "Fuseau horaire",
409
- "dashboard.shareDialog.removeAccessGranteeTooltip": "Retirer l'accès à ce tableau de bord.",
415
+ "dashboard.shareDialog.removeAccessGranteeTooltip": "Retirer l’accès à ce tableau de bord.",
410
416
  "dashboardMeasureValueFilter.section.from_dashboard": "Du tableau de bord",
411
417
  "dashboardMeasureValueFilter.section.all_other": "Tous les autres",
412
- "dashboard.shareDialog.removeAccessCreatorTooltip": "L'utilisateur qui a créé ce tableau de bord. Les créateurs ne peuvent pas être retirés.",
418
+ "dashboard.shareDialog.removeAccessCreatorTooltip": "L’utilisateur qui a créé ce tableau de bord. Les créateurs ne peuvent pas être retirés.",
413
419
  "attributesDropdown.placeholder": "Rechercher…",
414
420
  "attributesDropdown.parameters.section.from_dashboard": "Du tableau de bord",
415
421
  "attributesDropdown.parameters.section.ungrouped": "Non groupés",
@@ -421,46 +427,46 @@ export const fr_FR = {
421
427
  "attributesDropdown.title.reset": "Réinitialiser",
422
428
  "attributesDropdown.selectionMode": "Sélection",
423
429
  "attributesDropdown.selectionMode.multi": "Valeurs multiples",
424
- "attributesDropdown.selectionMode.multi.tooltip": "Sélectionnez plus d'une valeur. Certaines conditions (contient, commence par, se termine par) ne prennent en charge qu'une seule valeur.",
430
+ "attributesDropdown.selectionMode.multi.tooltip": "Sélectionnez plus d’une valeur. Certaines conditions (contient, commence par, se termine par) ne prennent en charge qu’une seule valeur.",
425
431
  "attributesDropdown.selectionMode.single": "Valeur unique",
426
- "attributesDropdown.selectionMode.disabled.tooltip": "La sélection d'une seule valeur n'est pas autorisée si un ou plusieurs filtres sont sélectionnés dans Filtrer par. Pour utiliser la sélection de valeur unique, désactivez tous les filtres dans Filtrer par.",
432
+ "attributesDropdown.selectionMode.disabled.tooltip": "La sélection d’une seule valeur n’est pas autorisée si un ou plusieurs filtres sont sélectionnés dans Filtrer par. Pour utiliser la sélection de valeur unique, désactivez tous les filtres dans Filtrer par.",
427
433
  "attributesDropdown.selectionType.as": "comme",
428
434
  "attributesDropdown.selectionType.listOrText": "Liste ou texte",
429
435
  "attributesDropdown.selectionType.list": "Liste",
430
436
  "attributesDropdown.selectionType.text": "Texte",
431
- "attributesDropdown.selectionType.listOrText.tooltip": "Autorisez les utilisateurs à basculer entre la sélection dans une liste et la sélection de texte.\n\nDans la sélection dans une liste, les utilisateurs choisissent des valeurs dans une liste d'options.\n\nDans la sélection de texte, les utilisateurs ajoutent des valeurs sous forme de texte.",
432
- "attributesDropdown.selectionType.list.tooltip": "Choisissez des valeurs dans une liste d'options.",
437
+ "attributesDropdown.selectionType.listOrText.tooltip": "Autorisez les utilisateurs à basculer entre la sélection dans une liste et la sélection de texte.\n\nDans la sélection dans une liste, les utilisateurs choisissent des valeurs dans une liste d’options.\n\nDans la sélection de texte, les utilisateurs ajoutent des valeurs sous forme de texte.",
438
+ "attributesDropdown.selectionType.list.tooltip": "Choisissez des valeurs dans une liste d’options.",
433
439
  "attributesDropdown.selectionType.text.tooltip": "Ajoutez des valeurs sous forme de texte.",
434
440
  "attributesDropdown.selectionType.singleDisabled.tooltip": "Disponible uniquement pour la sélection de plusieurs valeurs.",
435
- "attributesDropdown.parentFilter.disabled.tooltip": "Le filtrage par d'autres Filtres est désactivé pour la sélection d'une seule valeur. Pour configurer Filtrer par, sélectionnez la sélection de plusieurs valeurs.",
436
- "attributesDropdown.noConnectionMessage": "<strong>{childTitle}</strong> ne peut pas être filtré par <strong>{parentTitle}</strong>. Il n'existe aucune connexion entre les attributs du filtre dans le modèle de données.",
441
+ "attributesDropdown.parentFilter.disabled.tooltip": "Le filtrage par d’autres Filtres est désactivé pour la sélection d’une seule valeur. Pour configurer Filtrer par, sélectionnez la sélection de plusieurs valeurs.",
442
+ "attributesDropdown.noConnectionMessage": "<strong>{childTitle}</strong> ne peut pas être filtré par <strong>{parentTitle}</strong>. Il n’existe aucune connexion entre les attributs du filtre dans le modèle de données.",
437
443
  "attributesDropdown.details.dataset": "Ensemble de données",
438
444
  "attributesDropdown.details.values": "Valeurs",
439
445
  "attributesDropdown.details.definedAs": "Défini comme",
440
446
  "attributesDropdown.details.shortening_decoration": "…et {count} de plus",
441
447
  "layout.header.characters.left": "{currentCharactersCount}/{maximumCharactersCount} caractères restant",
442
- "layout.header.add.title.placeholder": "Ajouter un titre ici...",
443
- "layout.header.add.description.placeholder": "Ajouter une description ici...",
444
- "controlButtons.options.tooltip": "Plus d'actions",
445
- "controlButtons.options.back": "Retour à l'étape précédente",
448
+ "layout.header.add.title.placeholder": "Ajouter un titre ici…",
449
+ "layout.header.add.description.placeholder": "Ajouter une description ici…",
450
+ "controlButtons.options.tooltip": "Plus d’actions",
451
+ "controlButtons.options.back": "Retour à l’étape précédente",
446
452
  "controlButtons.options.closeMenu": "Fermer le menu",
447
453
  "controlButtons.edit.value": "Modifier",
448
454
  "controlButtons.edit.tooltip": "Éditer le tableau de bord",
449
- "controlButtons.edit.executionTimestampMode.tooltip": "Pour modifier le tableau de bord, réinitialisez la date à aujourd'hui.",
455
+ "controlButtons.edit.executionTimestampMode.tooltip": "Pour modifier le tableau de bord, réinitialisez la date à aujourd’hui.",
450
456
  "controlButtons.setting.value": "Paramètres",
451
457
  "controlButtons.setting.title": "Tous les paramètres liés à ce tableau de bord. Vous pouvez modifier la description du tableau de bord, le filtrage croisé, les filtres enregistrés autorisés et la fréquence d’évaluation des alertes.",
452
458
  "controlButtons.saveAndPublish.value": "Enregistrer et publier",
453
459
  "controlButtons.save.value": "Enregistrer",
454
460
  "controlButtons.saveAndPublish.title": "Toutes les modifications seront immédiatement visibles pour tous les utilisateurs qui ont accès à ce tableau de bord.",
455
461
  "controlButtons.saveAsPrivate.title": "Toutes les modifications vont être enregistrées.",
456
- "controlButtons.saveAndPublish.disable.empty.title": "Impossible d'enregistrer un tableau de bord vide",
457
- "controlButtons.saveAndPublish.disable.noChanges.title": "Il n'y a aucun changement à enregistrer",
462
+ "controlButtons.saveAndPublish.disable.empty.title": "Impossible d’enregistrer un tableau de bord vide",
463
+ "controlButtons.saveAndPublish.disable.noChanges.title": "Il n’y a aucun changement à enregistrer",
458
464
  "controlButtons.saving.value": "Enregistrement en cours…",
459
465
  "gs.visualizationsList.tabs.all": "tout",
460
466
  "gs.visualizationsList.tabs.my": "créées par moi",
461
467
  "visualizationsList.noInsights": "Cet espace de travail ne contient aucune visualisation.",
462
468
  "visualizationsList.create": "Créer une visualisation",
463
- "visualizationsList.noUserInsights": "Aucune visualisation n'a été créée.",
469
+ "visualizationsList.noUserInsights": "Aucune visualisation n’a été créée.",
464
470
  "visualizationsList.noVisualizationsFound": "Aucune visualisation trouvée.",
465
471
  "deleteInsightDialog.headline": "Supprimer la visualisation ?",
466
472
  "deleteInsightDialog.description": "La visualisation <strong>{title}</strong> sera définitivement supprimée.",
@@ -481,9 +487,9 @@ export const fr_FR = {
481
487
  "save.as.new": "Enregistrer sous un nouveau nom",
482
488
  "addPanel.deleteItem": "Déposer pour supprimer",
483
489
  "addPanel.newItem": "Nouvel élément",
484
- "addPanel.attributeFilter": "Filtre d'attribut",
490
+ "addPanel.attributeFilter": "Filtre d’attribut",
485
491
  "addPanel.filter": "Filtrer",
486
- "addPanel.attributeFilter.tooltip.no_attributes": "Le filtre d'attribut nécessite un attribut.",
492
+ "addPanel.attributeFilter.tooltip.no_attributes": "Le filtre d’attribut nécessite un attribut.",
487
493
  "addPanel.attributeFilter.tooltip.no_items": "Le filtre nécessite un attribut ou un ensemble de données de date.",
488
494
  "addPanel.attributeFilter.tooltip.no_attributes.link": "En savoir plus",
489
495
  "addPanel.savedVisualizations": "Visualisations enregistrées",
@@ -492,9 +498,9 @@ export const fr_FR = {
492
498
  "addPanel.richTextWidget": "Élément de texte enrichi",
493
499
  "addPanel.dashboardFilter": "Filtre de tableau de bord",
494
500
  "addPanel.visualizationSwitcher": "Commutateur de visualisation",
495
- "addPanel.visualizationSwitcher.tooltip": "Combinez plusieurs visualisations en un seul élément avec un menu déroulant de navigation pour passer de l'une à l'autre.",
501
+ "addPanel.visualizationSwitcher.tooltip": "Combinez plusieurs visualisations en un seul élément avec un menu déroulant de navigation pour passer de l’une à l’autre.",
496
502
  "addPanel.dashboardLayout": "Conteneur à colonnes",
497
- "addPanel.dashboardLayout.tooltip": "Créez un groupe vertical de widgets placés dans une seule colonne à l'intérieur de votre section. Idéal pour empiler plusieurs éléments.",
503
+ "addPanel.dashboardLayout.tooltip": "Créez un groupe vertical de widgets placés dans une seule colonne à l’intérieur de votre section. Idéal pour empiler plusieurs éléments.",
498
504
  "addPanel.dashboardLayout.tooltip.learnMore": "En savoir plus",
499
505
  "sidebar.collapse": "Réduire le panneau",
500
506
  "sidebar.expand": "Développer le panneau",
@@ -504,15 +510,15 @@ export const fr_FR = {
504
510
  "visualizationsList.dragToAdd": "Faire glisser pour ajouter",
505
511
  "visualizationsList.savedVisualizations": "Visualisations enregistrées",
506
512
  "configurationPanel.drillConfig.selectDashboard": "Choisir un tableau de bord…",
507
- "configurationPanel.drillConfig.targetTab": "vers l'onglet",
513
+ "configurationPanel.drillConfig.targetTab": "vers l’onglet",
508
514
  "configurationPanel.drillConfig.drillIntoDashboard.searchPlaceholder": "Rechercher dans tous les tableaux de bord…",
509
515
  "configurationPanel.drillConfig.forbiddenDashboard": "(Non partagé avec vous)",
510
- "configurationPanel.drillConfig.forbiddenDashboard.tooltip": "Le tableau de bord n'est pas partagé avec vous, mais d'autres utilisateurs y ont accès.",
511
- "configurationPanel.drillConfig.notSharedDashboard.tooltip": "Le tableau de bord n'est pas partagé avec vous, mais tous les utilisateurs peuvent y accéder s'ils l'explorent.",
516
+ "configurationPanel.drillConfig.forbiddenDashboard.tooltip": "Le tableau de bord n’est pas partagé avec vous, mais d’autres utilisateurs y ont accès.",
517
+ "configurationPanel.drillConfig.notSharedDashboard.tooltip": "Le tableau de bord n’est pas partagé avec vous, mais tous les utilisateurs peuvent y accéder s’ils l’explorent.",
512
518
  "configurationPanel.remove.form.dashboard": "Retirer du tableau de bord",
513
519
  "filterBar.filter.drop": "déposer pour ajouter",
514
520
  "filterBar.filter.addFilterPlaceholder": "Faites glisser {icon} ici",
515
- "filterBar.filter.dropzone.tooltip": "Faites glisser le filtre d'attribut ici.",
521
+ "filterBar.filter.dropzone.tooltip": "Faites glisser le filtre d’attribut ici.",
516
522
  "filterBar.filter.dropzone.tooltip.generic": "Faites glisser le filtre ici.",
517
523
  "configurationPanel.title": "Configuration",
518
524
  "configurationPanel.filterBy": "Filtrer par",
@@ -524,39 +530,39 @@ export const fr_FR = {
524
530
  "configurationPanel.vizCantBeFilteredByMeasureValueFilter": "Le filtre ne peut pas être appliqué à cette visualisation.",
525
531
  "configurationPanel.mvfBlockedByRankingFilter": "Ce filtre ne peut pas être appliqué, car la visualisation utilise un filtre de valeurs Top/Bottom. Supprimez le filtre de valeurs Top/Bottom pour appliquer ce filtre.",
526
532
  "configurationPanel.mvfMissingMeasure": "La métrique utilisée dans ce filtre n’existe plus dans l’espace de travail.",
527
- "filters.mvf.missingMetric.tooltip": "Erreur : La métrique utilisée dans ce filtre n’existe plus dans l’espace de travail.",
533
+ "filters.mvf.missingMetric.tooltip": "Erreur : La métrique utilisée dans ce filtre n’existe plus dans l’espace de travail.",
528
534
  "configurationPanel.kpiCantBeFilteredByDate": "Le KPI ne peut pas être filtré par date. Décochez la case.",
529
- "configurationPanel.unrelatedVizDateInfo": "\"{dateDataSet}\" ne peut plus être appliqué à la visualisation. Sélectionnez une autre dimension ou modifiez la visualisation.",
530
- "configurationPanel.unrelatedKpiDateInfo": "\"{dateDataSet}\" ne peut plus être appliqué au KPI. Sélectionnez une autre dimension ou modifiez le KPI.",
535
+ "configurationPanel.unrelatedVizDateInfo": "« {dateDataSet} » ne peut plus être appliqué à la visualisation. Sélectionnez une autre dimension ou modifiez la visualisation.",
536
+ "configurationPanel.unrelatedKpiDateInfo": "« {dateDataSet} » ne peut plus être appliqué au KPI. Sélectionnez une autre dimension ou modifiez le KPI.",
531
537
  "configurationPanel.interactions": "Interactions",
532
- "configurationPanel.drillConfig.interactions": "Interactions d'exploration",
538
+ "configurationPanel.drillConfig.interactions": "Interactions d’exploration",
533
539
  "configurationPanel.drillConfig.addInteraction": "Ajouter une interaction",
534
540
  "configurationPanel.drillConfig.clickHint": "Lorsque je clique sur",
535
541
  "configurationPanel.drillConfig.measureValue": "Valeur de métrique",
536
- "configurationPanel.drillConfig.attributeValue": "Valeur d'attribut",
542
+ "configurationPanel.drillConfig.attributeValue": "Valeur d’attribut",
537
543
  "configurationPanel.drillConfig.selectTarget": "Je veux",
538
544
  "configurationPanel.drillConfig.clickHintItem": "Lorsque je clique sur <addon>(valeur de)</addon>",
539
545
  "configurationPanel.drillConfig.drillIntoDashboard": "Explorer le tableau de bord",
540
546
  "configurationPanel.drillConfig.drillIntoInsight": "Explorer la visualisation",
541
547
  "configurationPanel.drillConfig.drillDown": "Exploration descendante",
542
- "configurationPanel.drillConfig.disableDrillDownTooltip": "L'exploration descendante est désactivée dans la configuration de cette visualisation.",
548
+ "configurationPanel.drillConfig.disableDrillDownTooltip": "L’exploration descendante est désactivée dans la configuration de cette visualisation.",
543
549
  "configurationPanel.drillConfig.computedAttributeDrillDownTooltip": "Explorer en détail n’est pas disponible pour les attributs calculés.",
544
550
  "configurationPanel.drillConfig.drillIntoUrl": "Explorer l’URL",
545
- "configurationPanel.drillConfig.drillIntoUrl.invalidCustomUrl": "Paramètres d'URL non valides",
551
+ "configurationPanel.drillConfig.drillIntoUrl.invalidCustomUrl": "Paramètres d’URL non valides",
546
552
  "configurationPanel.drillConfig.select": "Choisir une action…",
547
- "configurationPanel.drillConfig.drillIntoDashboard.dateFilterWarning": "La valeur de l'attribut de date de la visualisation ne sera pas transférée pour filtrer le tableau de bord cible.",
553
+ "configurationPanel.drillConfig.drillIntoDashboard.dateFilterWarning": "La valeur de l’attribut de date de la visualisation ne sera pas transférée pour filtrer le tableau de bord cible.",
548
554
  "configurationPanel.drillConfig.filterSelection.button.withCount": "Utilisation de {count, plural, one {# filtre} other {# filtres}}",
549
555
  "configurationPanel.drillConfig.filterSelection.subview.title": "Filtres",
550
- "configurationPanel.drillConfig.filterSelection.subview.tooltip": "Les filtres sélectionnés sont transmis à la destination d'exploration.",
556
+ "configurationPanel.drillConfig.filterSelection.subview.tooltip": "Les filtres sélectionnés sont transmis à la destination d’exploration.",
551
557
  "configurationPanel.drillConfig.filterSelection.section.drilledDataPoint": "Point de données exploré",
552
558
  "configurationPanel.drillConfig.filterSelection.section.visualization": "Visualisation",
553
559
  "configurationPanel.drillConfig.filterSelection.section.dashboard": "Tableau de bord",
554
560
  "configurationPanel.drillConfig.filterSelection.section.metric": "Métrique",
555
- "configurationPanel.drillConfig.filterSelection.drillDownInsightFilter.tooltip": "Les filtres de visualisation s'appliquent toujours lors de l'exploration en détail.",
556
- "configurationPanel.drillConfig.filterSelection.drillDownDashboardFilter.tooltip": "Les filtres de tableau de bord s'appliquent toujours lors de l'exploration en détail.",
557
- "configurationPanel.drillConfig.filterSelection.rankingFilter.tooltip": "Les filtres Haut/Bas ne peuvent pas être transmis à la destination d'exploration.",
561
+ "configurationPanel.drillConfig.filterSelection.drillDownInsightFilter.tooltip": "Les filtres de visualisation s’appliquent toujours lors de l’exploration en détail.",
562
+ "configurationPanel.drillConfig.filterSelection.drillDownDashboardFilter.tooltip": "Les filtres de tableau de bord s’appliquent toujours lors de l’exploration en détail.",
563
+ "configurationPanel.drillConfig.filterSelection.rankingFilter.tooltip": "Les filtres Haut/Bas ne peuvent pas être transmis à la destination d’exploration.",
558
564
  "configurationPanel.drillConfig.filterSelection.drillToDashboardDateIntersection.tooltip": "La date ne peut pas être transmise au tableau de bord cible.",
559
- "configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": "Impossible d'activer. Ajoutez d'abord ce filtre au tableau de bord cible.",
565
+ "configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": "Impossible d’activer. Ajoutez d’abord ce filtre au tableau de bord cible.",
560
566
  "configurationPanel.drillConfig.filterSelection.drillToDashboardFilterNotCompatible.tooltip": "Ne peut pas être activé. Le filtre correspondant sur le tableau de bord cible ne prend pas en charge ce type de filtre.",
561
567
  "configurationPanel.drillConfig.filterSelection.drillToDashboardMetricFilter.tooltip": "Les filtres de métrique ne peuvent pas être transmis au tableau de bord cible.",
562
568
  "configurationPanel.drillConfig.filterSelection.drillToDashboardDuplicateMetricFilter.tooltip": "Un autre filtre pour cette métrique est déjà transmis.",
@@ -576,24 +582,24 @@ export const fr_FR = {
576
582
  "configurationPanel.visualprops.includeMetricsHelp": "Afficher la section listant les métriques de la visualisation et leur description.",
577
583
  "configurationPanel.visualprops.descriptionPlaceholder": "Ajouter une description…",
578
584
  "configurationPanel.drillIntoUrl.defaultButtonValue": "Sélectionner une URL",
579
- "configurationPanel.drillIntoUrl.attributeUrlSectionTitle": "Hyperlien dans le libellé de l'attribut",
585
+ "configurationPanel.drillIntoUrl.attributeUrlSectionTitle": "Hyperlien dans le libellé de l’attribut",
580
586
  "configurationPanel.drillIntoUrl.customUrlSectionTitle": "URL personnalisée",
581
587
  "configurationPanel.drillIntoUrl.editor.addUrlTitle": "Ajouter une URL personnalisée",
582
588
  "configurationPanel.drillIntoUrl.editor.editUrlTitle": "Modifier une URL personnalisée",
583
589
  "configurationPanel.drillIntoUrl.editor.textAreaLabel": "URL",
584
590
  "configurationPanel.drillIntoUrl.editor.parametersPanelLabel": "Espaces réservés",
585
- "configurationPanel.drillIntoUrl.editor.parametersPanelTooltip": "Les espaces réservés sont remplacés par des valeurs dynamiques lors de l'exploration.",
591
+ "configurationPanel.drillIntoUrl.editor.parametersPanelTooltip": "Les espaces réservés sont remplacés par des valeurs dynamiques lors de l’exploration.",
586
592
  "configurationPanel.drillIntoUrl.editor.addParameterButtonLabel": "Ajouter",
587
593
  "configurationPanel.drillIntoUrl.editor.parameterDetailType": "Type",
588
594
  "configurationPanel.drillIntoUrl.editor.parameterDetailLabel": "Libellé",
589
595
  "configurationPanel.drillIntoUrl.editor.parameterDetailValues": "{numberOfValues, plural, one {Valeur} other {Valeurs}}",
590
- "configurationPanel.drillIntoUrl.editor.parameterDetailMoreValues": "...et {count} de plus",
596
+ "configurationPanel.drillIntoUrl.editor.parameterDetailMoreValues": "…et {count} de plus",
591
597
  "configurationPanel.drillIntoUrl.editor.insightIdParameterLabel": "ID de la visualisation",
592
598
  "configurationPanel.drillIntoUrl.editor.clientIdParameterLabel": "ID du client",
593
599
  "configurationPanel.drillIntoUrl.editor.dataProductIdParameterLabel": "ID du produit de données",
594
600
  "configurationPanel.drillIntoUrl.editor.projectIdParameterLabel": "ID du projet",
595
- "configurationPanel.drillIntoUrl.editor.workspaceIdParameterLabel": "ID de l'espace de travail",
596
- "configurationPanel.drillIntoUrl.editor.widgetIdParameterLabel": "ID de l'élément",
601
+ "configurationPanel.drillIntoUrl.editor.workspaceIdParameterLabel": "ID de l’espace de travail",
602
+ "configurationPanel.drillIntoUrl.editor.widgetIdParameterLabel": "ID de l’élément",
597
603
  "configurationPanel.drillIntoUrl.editor.dashboardIdParameterLabel": "ID du tableau de bord",
598
604
  "configurationPanel.drillIntoUrl.editor.identifierTypeLabel": "Identificateur",
599
605
  "configurationPanel.drillIntoUrl.editor.insightParametersSectionLabel": "Visualisation",
@@ -601,18 +607,18 @@ export const fr_FR = {
601
607
  "configurationPanel.drillIntoUrl.editor.dashboardParametersSectionLabel": "Tableau de bord",
602
608
  "configurationPanel.drillIntoUrl.editor.applyButtonLabel": "Appliquer",
603
609
  "configurationPanel.drillIntoUrl.editor.cancelButtonLabel": "Annuler",
604
- "configurationPanel.drillIntoUrl.editor.textAreaPlaceholder": "Saisissez l'URL et ajoutez des espaces réservés à partir du panneau de droite.",
610
+ "configurationPanel.drillIntoUrl.editor.textAreaPlaceholder": "Saisissez l’URL et ajoutez des espaces réservés à partir du panneau de droite.",
605
611
  "configurationPanel.drillIntoUrl.editor.helpButtonLabel": "Comment créer des URL personnalisées ?",
606
612
  "configurationPanel.drillIntoUrl.editor.invalidAttributeDisplayForms": "Espaces réservés non valides : {invalidParameters}",
607
613
  "configurationPanel.drillIntoUrl.customUrlAddButtonLabel": "Ajouter une URL personnalisée",
608
614
  "configurationPanel.drillIntoUrl.customUrlEditButtonLabel": "Modifier une URL personnalisée",
609
- "configurationPanel.drillIntoUrl.editor.defaultDisplayFormTypeLabel": "Valeur du libellé de l'attribut",
610
- "configurationPanel.drillIntoUrl.editor.geoDisplayFormTypeLabel": "Valeur géographique de l'attribut",
611
- "configurationPanel.drillIntoUrl.editor.urlDisplayFormTypeLabel": "Valeur de l'URL de l'attribut",
612
- "configurationPanel.drillIntoUrl.editor.imageDisplayFormTypeLabel": "Valeur de l'image de l'attribut",
615
+ "configurationPanel.drillIntoUrl.editor.defaultDisplayFormTypeLabel": "Valeur du libellé de l’attribut",
616
+ "configurationPanel.drillIntoUrl.editor.geoDisplayFormTypeLabel": "Valeur géographique de l’attribut",
617
+ "configurationPanel.drillIntoUrl.editor.urlDisplayFormTypeLabel": "Valeur de l’URL de l’attribut",
618
+ "configurationPanel.drillIntoUrl.editor.imageDisplayFormTypeLabel": "Valeur de l’image de l’attribut",
613
619
  "configurationPanel.zoomInsight": "Visualisation zoomable",
614
620
  "configurationPanel.zoomInsight.help": "Activez pour zoomer sur la visualisation afin de présenter une vue détaillée. Maintenez la touche Maj pour déplacer la zone zoomée.",
615
- "configurationPanel.zoomInsight.notice": "Le zoom n'est pas appliqué aux tableaux de bord exportés",
621
+ "configurationPanel.zoomInsight.notice": "Le zoom n’est pas appliqué aux tableaux de bord exportés",
616
622
  "configurationPanel.drillConfig.selectInsight": "Choisir une visualisation…",
617
623
  "attributesDropdown.noChanges": "Aucun changement à appliquer",
618
624
  "gs.date.date-dataset.recommended": "Recommandé",
@@ -623,11 +629,11 @@ export const fr_FR = {
623
629
  "gs.date.date-dataset.unrelated.show": "Afficher",
624
630
  "gs.date.date-dataset.unrelated.hide": "Masquer",
625
631
  "gs.date.date-dataset.duplicityWarning": "Un autre filtre utilise le même ensemble de données de date. Désactivez ce filtre ou définissez une autre date.",
626
- "layout.widget.width.min": "L'élément est à la largeur minimale",
627
- "layout.widget.width.max": "L'élément est à la largeur maximale",
628
- "layout.widget.height.min": "L'élément est à la hauteur minimale",
629
- "layout.widget.height.max": "L'élément est à la hauteur maximale",
630
- "dropzone.new.row.desc": "Déposer l'élément pour créer une{nbsp}<b>nouvelle section</b>",
632
+ "layout.widget.width.min": "L’élément est à la largeur minimale",
633
+ "layout.widget.width.max": "L’élément est à la largeur maximale",
634
+ "layout.widget.height.min": "L’élément est à la hauteur minimale",
635
+ "layout.widget.height.max": "L’élément est à la hauteur maximale",
636
+ "dropzone.new.row.desc": "Déposer l’élément pour créer une{nbsp}<b>nouvelle section</b>",
631
637
  "dropzone.widget.desc": "Déposer <b>ici</b>",
632
638
  "dropzone.widget.last.in.row.desc": "Déposer dans la <b>section existante</b>",
633
639
  "dropzone.widget.last.in.container.row.desc": "Déposer dans le <b>conteneur existant</b>",
@@ -636,9 +642,9 @@ export const fr_FR = {
636
642
  "deleteKpiConfirmationDialog.submitButtonText": "Supprimer",
637
643
  "newDashboard.title": "Glissez ici la visualisation",
638
644
  "newDashboard.dropInsight": "Déposer la visualisation",
639
- "attributesDropdown.filterConfiguredMessage": "<strong>{parentTitle}</strong> est déjà filtré par le filtre <strong>{childTitle}</strong>, directement ou via d'autres filtres.",
645
+ "attributesDropdown.filterConfiguredMessage": "<strong>{parentTitle}</strong> est déjà filtré par le filtre <strong>{childTitle}</strong>, directement ou via d’autres filtres.",
640
646
  "attributesDropdown.attributeNameWithData": "avec les données de",
641
- "filter.visibilityMode.tooltip.hidden": "Ce filtre est masqué. Il n'est accessible qu'en mode Édition.",
647
+ "filter.visibilityMode.tooltip.hidden": "Ce filtre est masqué. Il n’est accessible qu’en mode Édition.",
642
648
  "filter.visibilityMode.tooltip.readonly.editMode": "Ce filtre est verrouillé. Il peut uniquement être modifié en mode Édition.",
643
649
  "filter.visibilityMode.tooltip.readonly.viewMode": "Ce filtre est verrouillé.",
644
650
  "filter.resetButton.tooltip": "Rétablir tous les paramètres par défaut",
@@ -659,7 +665,7 @@ export const fr_FR = {
659
665
  "filter.dependency.icon.aria.label": "Filtre lié — les valeurs disponibles dépendent de la sélection d’un autre filtre.",
660
666
  "configurationPanel.drillConfig.alreadyUsedTooltip": "Cette <strong>hiérarchie</strong> est déjà utilisée pour <strong>la même</strong> exploration descendante.",
661
667
  "configurationPanel.respectCrossFiltering": "Respecter le filtrage croisé",
662
- "configurationPanel.respectCrossFiltering.tooltip": "Désactivez cette option pour ignorer le filtrage croisé provenant d'autres visualisations.",
668
+ "configurationPanel.respectCrossFiltering.tooltip": "Désactivez cette option pour ignorer le filtrage croisé provenant d’autres visualisations.",
663
669
  "richText.formattingOptions": "Options de mise en forme",
664
670
  "richText.summaryDashboard.generating.reload": "Nous générons actuellement le résumé du tableau de bord. Veuillez recharger la page pour voir si la génération est terminée.",
665
671
  "richText.summaryDashboard.generating.shortly": "Nous générons actuellement le résumé du tableau de bord. Il sera disponible sous peu.",
@@ -678,7 +684,7 @@ export const fr_FR = {
678
684
  "visualizationSwitcherToolbar.visualizationsList.tooltip": "Visualisations",
679
685
  "visualizationSwitcherToolbar.visualizationsList.prev": "Précédent",
680
686
  "visualizationSwitcherToolbar.visualizationsList.next": "Suivant",
681
- "visualizationSwitcherToolbar.visualizationsList.empty": "Il n'y a pas de visualisation dans le sélecteur, ajoutez-en une pour continuer.",
687
+ "visualizationSwitcherToolbar.visualizationsList.empty": "Il n’y a pas de visualisation dans le sélecteur, ajoutez-en une pour continuer.",
682
688
  "visualizationSwitcherToolbar.visualizationsList.add": "Ajouter une visualisation",
683
689
  "visualizationSwitcherToolbar.remove": "Supprimer le sélecteur",
684
690
  "visualizationSwitcher.configurationPanel.remove.from.switcher": "Retirer du sélecteur",
@@ -695,7 +701,7 @@ export const fr_FR = {
695
701
  "nestedLayoutToolbar.direction.column.tooltip": "Sens de la mise en page : colonne",
696
702
  "nestedLayoutToolbar.direction.column.disabledTooltip": "La direction ne peut pas être changée en verticale si le conteneur contient des conteneurs imbriqués avec une direction horizontale.",
697
703
  "nestedLayout.tab.title": "Conteneur",
698
- "nestedLayout.emptyDropZone.message": "<b>Faites glisser ici</b>{br}pour l'ajouter au conteneur",
704
+ "nestedLayout.emptyDropZone.message": "<b>Faites glisser ici</b>{br}pour l’ajouter au conteneur",
699
705
  "nestedLayout.emptyDropZone.active.message": "<b>Déposer ici</b>{br}pour ajouter au conteneur",
700
706
  "attributesDropdown.valuesLimiting.title": "Filtrer les valeurs par",
701
707
  "attributesDropdown.valuesLimiting.empty": "Limitez les options du menu de filtrage en appliquant un filtre de tableau de bord ou en ajoutant une métrique.",
@@ -706,14 +712,14 @@ export const fr_FR = {
706
712
  "attributesDropdown.valuesLimiting.searchPlaceholder": "Rechercher…",
707
713
  "attributesDropdown.valuesLimiting.sumFact": "Somme de {fact}",
708
714
  "attributesDropdown.valuesLimiting.countAttribute": "Nombre de {attribute}",
709
- "attributesDropdown.valuesLimiting.metricsEmpty": "Il n'y a plus d'éléments à ajouter.",
715
+ "attributesDropdown.valuesLimiting.metricsEmpty": "Il n’y a plus d’éléments à ajouter.",
710
716
  "attributesDropdown.valuesLimiting.unknownItem": "Élément inconnu",
711
- "attributesDropdown.valuesLimiting.searchNoMatch": "Aucun élément correspondant n'a été trouvé.",
717
+ "attributesDropdown.valuesLimiting.searchNoMatch": "Aucun élément correspondant n’a été trouvé.",
712
718
  "attributesDropdown.valuesLimiting.filtersEmpty": "Plus de filtre de tableau de bord à ajouter.",
713
719
  "attributesDropdown.valuesLimiting.addFilters.title": "Filtre de tableau de bord",
714
720
  "attributesDropdown.valuesLimiting.addFilters.description": "Utilisez un filtre de tableau de bord existant pour masquer les valeurs non pertinentes.",
715
721
  "attributesDropdown.valuesLimiting.addLimitingItem.title": "Métrique",
716
- "attributesDropdown.valuesLimiting.addLimitingItem.description": "Utilisez une métrique pour masquer les valeurs non pertinentes. Seules les valeurs dont les résultats ne sont pas nuls pour cette métrique s'affichent. <a>En savoir plus</a>",
722
+ "attributesDropdown.valuesLimiting.addLimitingItem.description": "Utilisez une métrique pour masquer les valeurs non pertinentes. Seules les valeurs dont les résultats ne sont pas nuls pour cette métrique s’affichent. <a>En savoir plus</a>",
717
723
  "attributesDropdown.valuesLimiting.commonDateFilterTitle": "{dateFilterTitle} en tant que {dataSetTitle}",
718
724
  "attributesDropdown.valuesLimiting.addDateTitle": "Choix de la date",
719
725
  "attributesDropdown.valuesLimiting.disableDateFilter": "Filtre non disponible : le filtre <strong>{dateFilterTitle}</strong> utilise déjà cet ensemble de données Date.",
@@ -726,24 +732,24 @@ export const fr_FR = {
726
732
  "filters.filterViews.dropdown.unsetAsDefault": "Ne plus définir comme valeur par défaut",
727
733
  "filters.filterViews.dropdown.unsetAsDefault.ariaLabel": "Ne plus définir {name} comme valeur par défaut",
728
734
  "filters.filterViews.dropdown.isDefault": "(par défaut)",
729
- "filters.filterViews.dropdown.tooltip": "<p>Les vues sont des ensembles de filtres sauvegardés qui vous permettent de revenir rapidement à un état de filtre spécifique.</p><p>Si vous définissez une vue par défaut, elle s'appliquera automatiquement chaque fois que vous ouvrirez le tableau de bord.</p>",
735
+ "filters.filterViews.dropdown.tooltip": "<p>Les vues sont des ensembles de filtres sauvegardés qui vous permettent de revenir rapidement à un état de filtre spécifique.</p><p>Si vous définissez une vue par défaut, elle s’appliquera automatiquement chaque fois que vous ouvrirez le tableau de bord.</p>",
730
736
  "filters.filterViews.dropdown.newButton": "Créer une vue",
731
- "filters.filterViews.dropdown.emptyList": "Vous n'avez enregistré aucune vue pour ce tableau de bord.",
737
+ "filters.filterViews.dropdown.emptyList": "Vous n’avez enregistré aucune vue pour ce tableau de bord.",
732
738
  "filters.filterViews.toast.viewSaved": "Super ! Votre vue est enregistrée.",
733
739
  "filters.filterViews.toast.viewDeleted": "Super ! Nous avons supprimé votre vue.",
734
740
  "filters.filterViews.toast.viewApplied": "Super ! Votre vue est appliquée.",
735
741
  "filters.filterViews.toast.viewSetAsDefault": "Super ! Votre vue est définie par défaut.",
736
- "filters.filterViews.toast.viewUnsetAsDefault": "Super ! Votre vue n'est plus définie par défaut.",
737
- "filters.filterViews.toast.viewNotSaved": "Échec ! Votre vue n'a pas été enregistrée. Veuillez réessayer.",
738
- "filters.filterViews.toast.viewNotDeleted": "Échec ! Votre vue n'a pas été supprimée. Veuillez réessayer.",
739
- "filters.filterViews.toast.viewNotSetAsDefault": "Échec ! Votre vue n'a pas été définie par défaut. Veuillez réessayer.",
742
+ "filters.filterViews.toast.viewUnsetAsDefault": "Super ! Votre vue n’est plus définie par défaut.",
743
+ "filters.filterViews.toast.viewNotSaved": "Échec ! Votre vue n’a pas été enregistrée. Veuillez réessayer.",
744
+ "filters.filterViews.toast.viewNotDeleted": "Échec ! Votre vue n’a pas été supprimée. Veuillez réessayer.",
745
+ "filters.filterViews.toast.viewNotSetAsDefault": "Échec ! Votre vue n’a pas été définie par défaut. Veuillez réessayer.",
740
746
  "filters.filterViews.toast.viewNotUnsetAsDefault": "Échec ! Votre vue est toujours définie par défaut. Veuillez réessayer.",
741
- "filters.filterViews.toast.viewNotApplied": "Échec ! Votre vue n'a pas été appliquée. Veuillez réessayer.",
742
- "parameter.toast.reset": "<b>Avertissement :</b> Le paramètre \"{name}\" est hors plage ; la valeur par défaut est donc appliquée jusqu’à ce que vous définissiez une valeur valide.",
743
- "parameter.toast.removed": "<b>Avertissement :</b> Le paramètre \"{name}\" a été supprimé car il n’existe plus.",
744
- "parameter.toast.incompatible": "<b>Avertissement :</b> Le paramètre \"{name}\" n’est plus compatible et a été ignoré.",
745
- "parameter_filter.button.resetWarning.tooltip": "La valeur d’origine est hors plage ; la valeur par défaut est donc appliquée jusqu’à ce que vous définissiez une valeur valide.",
746
- "filters.filterViews.list.ariaLabel.withActions": "Liste des vues enregistrées. Utilisez la flèche droite pour passer à l'action \"Définir par défaut\", puis à l'action \"Supprimer\".",
747
+ "filters.filterViews.toast.viewNotApplied": "Échec ! Votre vue n’a pas été appliquée. Veuillez réessayer.",
748
+ "parameter.toast.reset": "<b>Avertissement :</b> Le paramètre « {name} » est hors plage ; la valeur par défaut est donc appliquée jusqu’à ce que vous définissiez une valeur valide.",
749
+ "parameter.toast.removed": "<b>Avertissement :</b> Le paramètre « {name} » a été supprimé car il n’existe plus.",
750
+ "parameter.toast.incompatible": "<b>Avertissement :</b> Le paramètre « {name} » n’est plus compatible et a été ignoré.",
751
+ "parameter_filter.button.resetWarning.tooltip": "La valeur d’origine est hors plage ; la valeur par défaut est donc appliquée jusqu’à ce que vous définissiez une valeur valide.",
752
+ "filters.filterViews.list.ariaLabel.withActions": "Liste des vues enregistrées. Utilisez la flèche droite pour passer à l’action « Définir par défaut », puis à l’action « Supprimer ».",
747
753
  "filters.filterViews.list.ariaLabel.noActions": "Liste des vues sauvegardées",
748
754
  "filters.filterViews.add.title": "Créer une vue",
749
755
  "filters.filterViews.add.nameLabel": "Nom",
@@ -775,14 +781,14 @@ export const fr_FR = {
775
781
  "insightAlert.config.differenceOperator.header": "DIFFÉRENCE #",
776
782
  "insightAlert.config.differenceOperator.header.info": "Différence{spacer}Calcule la différence nette entre les valeurs de métriques primaires (période actuelle) et secondaires (période précédente).{spacer}FORMULE{spacer}Primaire - Secondaire",
777
783
  "insightAlert.config.aiOperator.header": "AI",
778
- "insightAlert.config.aiOperator.header.info": "Tous les opérateurs d'IA sont basés sur les fonctions d'IA.",
784
+ "insightAlert.config.aiOperator.header.info": "Tous les opérateurs d’IA sont basés sur les fonctions d’IA.",
779
785
  "insightAlert.config.anomalyDetection": "Présente une anomalie",
780
786
  "insightAlert.config.sensitivity": "Sensibilité",
781
787
  "insightAlert.config.sensitivity.low": "Faible",
782
788
  "insightAlert.config.sensitivity.medium": "Moyen",
783
789
  "insightAlert.config.sensitivity.high": "Élevé",
784
790
  "insightAlert.config.granularity": "Grouper par",
785
- "insightAlert.config.granularity.tooltip": "Définissez le mode d'agrégation des données avant de vérifier les anomalies.",
791
+ "insightAlert.config.granularity.tooltip": "Définissez le mode d’agrégation des données avant de vérifier les anomalies.",
786
792
  "insightAlert.config.granularity.hour": "Heures",
787
793
  "insightAlert.config.granularity.day": "Jours",
788
794
  "insightAlert.config.interval.day": "Jour",
@@ -801,10 +807,10 @@ export const fr_FR = {
801
807
  "insightAlert.config.differenceOperator.decreasesBy": "Diminue de",
802
808
  "insightAlert.config.differenceOperator.changesBy": "Change de",
803
809
  "insightAlert.config.alerts": "Alertes",
804
- "insightAlert.config.alerts.empty": "Il n'y a pas d'alertes pour cette visualisation.",
810
+ "insightAlert.config.alerts.empty": "Il n’y a pas d’alertes pour cette visualisation.",
805
811
  "insightAlert.config.noAlertMeasures": "Alertes",
806
812
  "insightAlert.config.noAlertMeasures.title": "Aucune métrique disponible pour les alertes.",
807
- "insightAlert.config.noAlertMeasures.description": "Veuillez ajouter une métrique pour activer l'alerte.",
813
+ "insightAlert.config.noAlertMeasures.description": "Veuillez ajouter une métrique pour activer l’alerte.",
808
814
  "insightAlert.config.trigger": "Déclencheur",
809
815
  "insightAlert.config.interval": "Intervalle de déclenchement",
810
816
  "insightAlert.config.interval.tooltip": "Déclencher au maximum une fois par intervalle choisi (par exemple, une fois par jour ou par semaine)",
@@ -820,31 +826,31 @@ export const fr_FR = {
820
826
  "insightAlert.config.warning.destination": "La destination sélectionnée ne permet d’envoyer l’alerte qu’à vous-même.",
821
827
  "insightAlert.config.compare_with_sp": "même période année précédente",
822
828
  "insightAlert.config.compare_with_pp": "période précédente",
823
- "insightAlert.config.compare_with_sp_granularity": "même {period} que l'année précédente",
829
+ "insightAlert.config.compare_with_sp_granularity": "même {period} que l’année précédente",
824
830
  "insightAlert.config.compare_with_pp_granularity": "{period} précédent(e)",
825
831
  "insightAlert.config.addAlert": "Ajouter une alerte",
826
832
  "insightAlert.config.triggerMode.always": "À chaque fois",
827
833
  "insightAlert.config.triggerMode.once": "Une fois, puis mettre en pause",
828
834
  "insightAlert.config.triggerMode.oncePerInterval": "Une fois par intervalle",
829
- "insightAlert.config.delete.success": "Succès. L'alerte a été supprimée.",
830
- "insightAlert.config.resume.success": "Succès. L'alerte a été réactivée.",
831
- "insightAlert.config.pause.success": "Succès. L'alerte a été mise en pause.",
832
- "insightAlert.config.update.success": "Succès. L'alerte a été mise à jour.",
833
- "insightAlert.config.add.success": "Succès. L'alerte a été ajoutée.",
834
- "insightAlert.config.delete.title": "Supprimer l'alerte ?",
835
- "insightAlert.config.delete.message": "L'alerte pour <b>{title}</b> sera définitivement supprimée, ainsi que toutes ses notifications.",
836
- "insightAlert.noDestination.tooltip": "Aucune destination n'est disponible. <a>Créer une destination</a> pour configurer une alerte.",
837
- "insightAlert.maxAlertsReached": "Votre organisation a atteint la limite des alertes. Contactez votre administrateur pour en créer d'autres.",
838
- "insightAlert.executionTimestampMode": "Pour créer ou modifier des alertes, réinitialisez la date du tableau de bord à aujourd'hui.",
835
+ "insightAlert.config.delete.success": "Succès. L’alerte a été supprimée.",
836
+ "insightAlert.config.resume.success": "Succès. L’alerte a été réactivée.",
837
+ "insightAlert.config.pause.success": "Succès. L’alerte a été mise en pause.",
838
+ "insightAlert.config.update.success": "Succès. L’alerte a été mise à jour.",
839
+ "insightAlert.config.add.success": "Succès. L’alerte a été ajoutée.",
840
+ "insightAlert.config.delete.title": "Supprimer l’alerte ?",
841
+ "insightAlert.config.delete.message": "L’alerte pour <b>{title}</b> sera définitivement supprimée, ainsi que toutes ses notifications.",
842
+ "insightAlert.noDestination.tooltip": "Aucune destination n’est disponible. <a>Créer une destination</a> pour configurer une alerte.",
843
+ "insightAlert.maxAlertsReached": "Votre organisation a atteint la limite des alertes. Contactez votre administrateur pour en créer d’autres.",
844
+ "insightAlert.executionTimestampMode": "Pour créer ou modifier des alertes, réinitialisez la date du tableau de bord à aujourd’hui.",
839
845
  "insightAlert.config.loading.error": "Échec du chargement des informations nécessaires. Réessayez plus tard.",
840
- "insightAlert.config.save.error": "L'enregistrement de l'alerte a échoué. Réessayez plus tard.",
841
- "insightAlert.config.delete.error": "Échec de la suppression de l'alerte. Réessayez plus tard.",
842
- "insightAlert.config.invalidWidget": "Erreur : l'alerte ne peut pas être entièrement modifiée — l'élément source a été supprimé. Supprimez l'alerte ou contactez votre administrateur.",
843
- "insightAlert.config.unusedWidget": "L'alerte ne peut pas être entièrement modifiée — l'élément source n'est pas disponible.",
846
+ "insightAlert.config.save.error": "L’enregistrement de l’alerte a échoué. Réessayez plus tard.",
847
+ "insightAlert.config.delete.error": "Échec de la suppression de l’alerte. Réessayez plus tard.",
848
+ "insightAlert.config.invalidWidget": "Erreur : l’alerte ne peut pas être entièrement modifiée — l’élément source a été supprimé. Supprimez l’alerte ou contactez votre administrateur.",
849
+ "insightAlert.config.unusedWidget": "L’alerte ne peut pas être entièrement modifiée — l’élément source n’est pas disponible.",
844
850
  "insightAlert.config.missingThreshold": "Erreur : champ obligatoire — entrez une valeur seuil pour continuer.",
845
851
  "insightAlert.config.selectMetric": "Sélectionner une métrique",
846
852
  "insightAlert.config.selectAttribute": "Tout",
847
- "alert.accessibility.destination.label": "Sélectionner le mode d'envoi de l'alerte",
853
+ "alert.accessibility.destination.label": "Sélectionner le mode d’envoi de l’alerte",
848
854
  "granularity.year": "année",
849
855
  "granularity.week": "semaine",
850
856
  "granularity.quarter": "trimestre",
@@ -858,7 +864,7 @@ export const fr_FR = {
858
864
  "controlButtons.asTable": "Afficher sous forme de tableau",
859
865
  "controlButtons.asOriginal": "Afficher la visualisation originale",
860
866
  "controlButtons.announcement.switchedToTable": "Visualisation en vue tableau",
861
- "controlButtons.announcement.switchedToOriginal": "La visualisation revient à la vue d'origine",
867
+ "controlButtons.announcement.switchedToOriginal": "La visualisation revient à la vue d’origine",
862
868
  "automationFilters.announcement.filterAdded": "Filtre {title} ajouté.",
863
869
  "automationFilters.announcement.filterRemoved": "Filtre {title} retiré.",
864
870
  "automationFilters.announcement.restrictedFiltersRemoved": "{count, plural, one {Filtre restreint supprimé.} other {Filtres restreints supprimés.}}",
@@ -879,7 +885,7 @@ export const fr_FR = {
879
885
  "kdaDialog.floatingStatus.error.opener": "Afficher les détails",
880
886
  "kdaDialog.floatingStatus.expand": "Développer dans une boîte de dialogue",
881
887
  "kdaDialog.floatingStatus.minimize": "Réduire",
882
- "kdaDialog.replaceConfirmation.headline": "Remplacer l’analyse des facteurs clés ?",
888
+ "kdaDialog.replaceConfirmation.headline": "Remplacer l’analyse des facteurs clés ?",
883
889
  "kdaDialog.replaceConfirmation.message": "Une analyse des facteurs clés est déjà en cours ou affichée. Lancer une nouvelle analyse supprimera les résultats actuels.",
884
890
  "kdaDialog.replaceConfirmation.stay": "Rester",
885
891
  "kdaDialog.replaceConfirmation.runAnyway": "Exécuter quand même",
@@ -889,15 +895,15 @@ export const fr_FR = {
889
895
  "kdaDialog.dialog.bars.date.title": "Plage de dates : {title}",
890
896
  "kdaDialog.dialog.bars.date.splitter": "vs",
891
897
  "kdaDialog.dialog.keyDrives.title": "Facteurs clés",
892
- "kdaDialog.dialog.keyDrives.tooltip": "Liste des principaux facteurs, classés par ordre d'impact",
898
+ "kdaDialog.dialog.keyDrives.tooltip": "Liste des principaux facteurs, classés par ordre d’impact",
893
899
  "kdaDialog.dialog.keyDrives.button.trendUp": "Augmentation",
894
900
  "kdaDialog.dialog.keyDrives.button.trendDown": "Diminution",
895
901
  "kdaDialog.dialog.keyDrives.button.trendAll": "Tout",
896
902
  "kdaDialog.dialog.keyDrives.drivers": "{count} {count, plural, one {pilote} other {pilotes}}",
897
903
  "kdaDialog.dialog.keyDrives.overview.summary.home": "Accueil",
898
- "kdaDialog.dialog.keyDrives.overview.summary.home.tooltip": "Accéder au résumé de l'analyse",
899
- "kdaDialog.dialog.keyDrives.overview.summary.breadcrumb.label": "Navigation de l'analyse des facteurs clés",
900
- "kdaDialog.dialog.keyDrives.overview.summary.title": "Résumé de l'analyse",
904
+ "kdaDialog.dialog.keyDrives.overview.summary.home.tooltip": "Accéder au résumé de l’analyse",
905
+ "kdaDialog.dialog.keyDrives.overview.summary.breadcrumb.label": "Navigation de l’analyse des facteurs clés",
906
+ "kdaDialog.dialog.keyDrives.overview.summary.title": "Résumé de l’analyse",
901
907
  "kdaDialog.dialog.keyDrives.overview.summary.drivers.description": "Testé {combinations} variantes avec <button>{attributes} attributs</button>",
902
908
  "kdaDialog.dialog.keyDrives.overview.summary.drivers.popupLabel": "Modifier la sélection d’attributs",
903
909
  "kdaDialog.dialog.keyDrives.overview.summary.drivers.countLabel": "{count, plural, one {# facteur} other {# facteurs}}",
@@ -908,7 +914,7 @@ export const fr_FR = {
908
914
  "kdaDialog.dialog.keyDrives.overview.detail.table.attribute": "Attribut",
909
915
  "kdaDialog.dialog.keyDrives.overview.detail.table.driver": "Facteur le plus important",
910
916
  "kdaDialog.dialog.keyDrives.overview.detail.table.drivers": "Nombre de facteurs",
911
- "kdaDialog.dialog.bars.attribute.deleteLabel": "Supprimer le filtre d'attribut",
917
+ "kdaDialog.dialog.bars.attribute.deleteLabel": "Supprimer le filtre d’attribut",
912
918
  "kdaDialog.dialog.bars.date.period.title": "Comparaison des périodes",
913
919
  "kdaDialog.dialog.bars.date.period.samePeriodPreviousYear": "Même période année précédente",
914
920
  "kdaDialog.dialog.bars.date.period.previousPeriod": "Période précédente",
@@ -925,11 +931,11 @@ export const fr_FR = {
925
931
  "drill.kda.drop": "Diminuer {where} {title}",
926
932
  "drill.kda.increase": "Augmenter {where} {title}",
927
933
  "drill.kda.no_change": "Stable {where} {title}",
928
- "drill.kda.year_to_year": "Variation d'une année sur l'autre",
934
+ "drill.kda.year_to_year": "Variation d’une année sur l’autre",
929
935
  "dashboard.tabs.default.label": "Onglet sans titre",
930
936
  "dashboard.tabs.move.left": "Déplacer vers la gauche",
931
937
  "dashboard.tabs.move.right": "Déplacer à droite",
932
- "dashboard.tabs.delete.disabled-tooltip": "Vous ne pouvez pas supprimer le dernier onglet. La navigation dans les onglets ne sera pas visible en mode affichage lorsqu'il ne reste qu'un seul onglet.",
938
+ "dashboard.tabs.delete.disabled-tooltip": "Vous ne pouvez pas supprimer le dernier onglet. La navigation dans les onglets ne sera pas visible en mode affichage lorsqu’il ne reste qu’un seul onglet.",
933
939
  "dashboard.tabs.add-button-tooltip": "Ajouter un nouvel onglet",
934
940
  "dashboard.tabs.rename": "Renommer",
935
941
  "dashboard.tabs.accessibility.label": "Onglets du tableau de bord",