@gooddata/sdk-ui-dashboard 11.14.0-alpha.2 → 11.14.0-alpha.4

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 (125) hide show
  1. package/esm/__version.d.ts +1 -1
  2. package/esm/__version.js +1 -1
  3. package/esm/model/store/dashboardStore.d.ts.map +1 -1
  4. package/esm/model/store/dashboardStore.js +4 -1
  5. package/esm/model/store/dashboardStore.js.map +1 -1
  6. package/esm/presentation/alerting/DefaultAlertingDialog/hooks/useEditAlert.d.ts.map +1 -1
  7. package/esm/presentation/alerting/DefaultAlertingDialog/hooks/useEditAlert.js +2 -2
  8. package/esm/presentation/alerting/DefaultAlertingDialog/hooks/useEditAlert.js.map +1 -1
  9. package/esm/presentation/automationFilters/hooks/useValidateExistingAutomationFilters.d.ts +0 -2
  10. package/esm/presentation/automationFilters/hooks/useValidateExistingAutomationFilters.d.ts.map +1 -1
  11. package/esm/presentation/automationFilters/hooks/useValidateExistingAutomationFilters.js +2 -51
  12. package/esm/presentation/automationFilters/hooks/useValidateExistingAutomationFilters.js.map +1 -1
  13. package/esm/presentation/automationFilters/utils.d.ts +1 -1
  14. package/esm/presentation/automationFilters/utils.d.ts.map +1 -1
  15. package/esm/presentation/automationFilters/utils.js +6 -6
  16. package/esm/presentation/automationFilters/utils.js.map +1 -1
  17. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AttributesDropdown.js +1 -1
  18. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AttributesDropdown.js.map +1 -1
  19. package/esm/presentation/localization/bundles/de-DE.json +373 -507
  20. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +351 -485
  21. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  22. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +373 -507
  23. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js.map +1 -1
  24. package/esm/presentation/localization/bundles/en-AU.json +375 -509
  25. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +352 -486
  26. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  27. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +375 -509
  28. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js.map +1 -1
  29. package/esm/presentation/localization/bundles/en-GB.json +357 -491
  30. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +351 -485
  31. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  32. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +357 -491
  33. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js.map +1 -1
  34. package/esm/presentation/localization/bundles/es-419.json +364 -498
  35. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +351 -485
  36. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  37. package/esm/presentation/localization/bundles/es-419.localization-bundle.js +364 -498
  38. package/esm/presentation/localization/bundles/es-419.localization-bundle.js.map +1 -1
  39. package/esm/presentation/localization/bundles/es-ES.json +369 -506
  40. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +351 -488
  41. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  42. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +369 -506
  43. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js.map +1 -1
  44. package/esm/presentation/localization/bundles/fi-FI.json +368 -502
  45. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +351 -485
  46. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  47. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +368 -502
  48. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js.map +1 -1
  49. package/esm/presentation/localization/bundles/fr-CA.json +363 -502
  50. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +351 -490
  51. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  52. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +363 -502
  53. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js.map +1 -1
  54. package/esm/presentation/localization/bundles/fr-FR.json +395 -529
  55. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +351 -485
  56. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  57. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +395 -529
  58. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js.map +1 -1
  59. package/esm/presentation/localization/bundles/it-IT.json +360 -494
  60. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +351 -485
  61. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  62. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +360 -494
  63. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js.map +1 -1
  64. package/esm/presentation/localization/bundles/ja-JP.json +399 -533
  65. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +351 -485
  66. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  67. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +399 -533
  68. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js.map +1 -1
  69. package/esm/presentation/localization/bundles/ko-KR.json +365 -500
  70. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +351 -486
  71. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  72. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +365 -500
  73. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js.map +1 -1
  74. package/esm/presentation/localization/bundles/nl-NL.json +365 -499
  75. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +351 -485
  76. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  77. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +365 -499
  78. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js.map +1 -1
  79. package/esm/presentation/localization/bundles/pl-PL.json +359 -494
  80. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +351 -486
  81. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  82. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +359 -494
  83. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js.map +1 -1
  84. package/esm/presentation/localization/bundles/pt-BR.json +361 -495
  85. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +351 -485
  86. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  87. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +361 -495
  88. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js.map +1 -1
  89. package/esm/presentation/localization/bundles/pt-PT.json +361 -496
  90. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +351 -486
  91. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  92. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +361 -496
  93. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js.map +1 -1
  94. package/esm/presentation/localization/bundles/ru-RU.json +412 -522
  95. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +340 -450
  96. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  97. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +412 -522
  98. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js.map +1 -1
  99. package/esm/presentation/localization/bundles/tr-TR.json +363 -498
  100. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +351 -486
  101. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  102. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +363 -498
  103. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js.map +1 -1
  104. package/esm/presentation/localization/bundles/zh-HK.json +380 -519
  105. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +351 -490
  106. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  107. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +380 -519
  108. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js.map +1 -1
  109. package/esm/presentation/localization/bundles/zh-Hans.json +371 -505
  110. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +351 -485
  111. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  112. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +371 -505
  113. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js.map +1 -1
  114. package/esm/presentation/localization/bundles/zh-Hant.json +384 -518
  115. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +351 -485
  116. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  117. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +384 -518
  118. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js.map +1 -1
  119. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts.map +1 -1
  120. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js +39 -19
  121. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js.map +1 -1
  122. package/esm/presentation/widget/description/DescriptionClickTrigger.d.ts.map +1 -1
  123. package/esm/presentation/widget/description/DescriptionClickTrigger.js +1 -1
  124. package/esm/presentation/widget/description/DescriptionClickTrigger.js.map +1 -1
  125. package/package.json +18 -18
@@ -6,186 +6,312 @@
6
6
  "gs.list.apply": "Apply",
7
7
  "messages.dashboardSaveSuccess": "Great. We saved your dashboard.",
8
8
  "options.menu.save.as": "Save as new",
9
- "options.menu.save.as.tooltip": "Empty dashboard can't be saved.",
9
+ "options.menu.save.as.tooltip": "Empty dashboard cannot be saved.",
10
+ "options.menu.settings": "Settings",
10
11
  "messages.dashboardSaveFailed": "Dashboard save failed. Remove any unavailable visualisations, then try again, or contact your administrator.",
12
+ "messages.dashboard.incompatibleDefaultFilters.title": "<b>Warning</b> Some dashboard filters couldn’t be applied. Check the filters to make sure you’re viewing the right data.",
11
13
  "messages.dashboard.invalidDrills.title": "<b>Some interactions were removed</b>",
14
+ "messages.dashboard.invalidDrills.body.modern": "One or more dashboard/visualisation/metric/attribute has been changed or deleted causing some interactions to be removed from following widgets: <b>{listOfWidgetTitles}</b>",
12
15
  "messages.dashboard.invalidCustomUrlDrills.title": "<b>Some of the drill-into-URL interactions are not working</b>",
13
16
  "messages.dashboard.invalidCustomUrlDrills.body.modern": "Invalid URL parameters in your custom URLs are causing drill-into-URL interactions to fail on these widgets: <b>{listOfWidgetTitles}</b>",
14
17
  "messages.dashboard.expandable.showMore": "Show more",
15
- "messages.dashboard.expandable.showLess": "Show less",
16
- "messages.drill.InteractionConfiguredSuccess": "Interaction configured.",
18
+ "messages.dashboard.expandable.showLess": "Show fewer",
19
+ "messages.drill.InteractionConfiguredSuccess": "Setup sorted.",
17
20
  "messages.drill.InteractionUpdatedSuccess": "Interaction updated.",
18
- "filterBar.showAll": "Show all",
19
- "filterBar.showLess": "Show less",
21
+ "filterBar.label": "Filters",
22
+ "filterBar.showAll": "Display all",
23
+ "filterBar.showLess": "Show fewer",
24
+ "filterBar.unappliedFiltersNotification": "<link>Apply filters</link> to see updated data.",
25
+ "filterBar.invalidFilterSelection": "To apply changes, select valid values for these filters: {names}",
26
+ "filterBar.executionTimestampNotificationMessage": "<bold>Note.</bold> You're viewing up-to-date data, but for any relative date filters the dashboard treats {date} as “today.”",
27
+ "filterBar.executionTimestampNotificationAction": "<link>Reset to today</link>",
28
+ "options.menu.export": "Export",
29
+ "options.menu.export.header.data": "Data",
30
+ "options.menu.export_to_pdf": "Export to PDF",
20
31
  "options.menu.export.PDF": "Snapshot (.pdf)",
32
+ "options.menu.export.dialog.EXCEL": "Export data (.xlsx)",
33
+ "options.menu.export.dialog.widget.EXCEL": "Export formatted data (.xlsx)",
34
+ "options.menu.export.dialog.includeExportInfo": "Include sheet with export information",
35
+ "options.menu.export.EXCEL": "Data (.xlsx)",
36
+ "options.menu.export.presentation.PPTX": "Slide Deck (.pptx)",
37
+ "options.menu.export.presentation.PDF": "Slide Deck (.pdf)",
38
+ "options.menu.export.image.PNG": "Snapshot (.png)",
39
+ "options.menu.export.presentation.unsupported.oldWidget": "Unable to export. Please resave the dashboard or contact your administrator.",
40
+ "options.menu.export.in.progress": "Export is in progress. Please wait until it is completed before attempting to export again.",
21
41
  "options.menu.schedule.email": "Schedule export",
42
+ "options.menu.schedule.email.tooltip": "No destination available. To schedule an export, <a>create destination</a>.",
43
+ "options.menu.schedule.email.edit": "Show schedules",
44
+ "options.menu.schedule.email.edit.noCreatePermissions": "Scheduled exports",
45
+ "options.menu.alert": "Alert",
46
+ "options.menu.alerts.edit": "Show alerts",
47
+ "options.menu.alerts.edit.noCreatePermissions": "Alerts",
48
+ "options.menu.data.too.large": "Export unavailable due to too many data points in the result.",
49
+ "options.menu.unsupported.raw.error": "Export unavailable due to too many data points or error in the result.",
22
50
  "options.menu.delete": "Delete",
51
+ "options.menu.addFilterViews": "Create view",
52
+ "options.menu.listFilterViews": "Show my views",
23
53
  "dialogs.export.cells": "CELLS",
24
54
  "dialogs.export.filters": "VISUALISATION CONTEXT",
25
55
  "dialogs.export.includeFilters": "Include applied filters",
26
56
  "dialogs.export.headline": "Export to XLSX",
57
+ "dialogs.export.mergeHeaders": "Keep attribute cells merged",
58
+ "dialogs.schedule.email.evaluation.mode.shared": "Use the same attachments for all recipients",
59
+ "dialogs.schedule.email.evaluation.mode.tooltip": "Enable to send the same file to all recipients. Disable to send files that reflect each recipient’s data access permissions.",
27
60
  "dialogs.export.submit": "Export",
61
+ "dialogs.schedule.email.accessibilityTitle": "Scheduled e-mails",
28
62
  "dialogs.schedule.email.delete.success": "Success! Your scheduled email has been deleted.",
29
63
  "dialogs.schedule.email.submit.success": "Success! Your dashboard is scheduled for emailing.",
30
64
  "dialogs.schedule.email.submit.error": "Failed to schedule the dashboard. Try again later.",
31
65
  "dialogs.schedule.email.save.success": "Success! Your schedule has been saved.",
32
66
  "dialogs.schedule.email.save.error": "Failed to save the schedule. Try again later.",
67
+ "dialogs.schedule.error.too_long": "Error: Text too long — reduce to {value} characters or fewer.",
68
+ "dialogs.alert.error.too_long": "Error: Text too long — reduce to {value} characters or fewer.",
33
69
  "dialogs.save.as.new.title": "Save dashboard as new",
34
- "dialogs.save.as.new.desc": "Give your new dashboard a new descriptive name, so it's easier to find it later on.",
70
+ "dialogs.save.as.new.desc": "Give your new dashboard a new descriptive name so it's easier to find it later on.",
35
71
  "dialogs.save.as.new.default.title": "Copy of {title}",
36
- "dialogs.save.as.new.alertsAndEmailsMessage": "Alerts and email schedules won't be duplicated.",
72
+ "dialogs.save.as.new.alertsAndEmailsMessage": "Alerts and email schedules will not be duplicated",
37
73
  "dialogs.save.as.new.alertsMessage": "Alerts won't be duplicated",
38
- "dialogs.save.as.new.emailsMessage": "Email schedules will not be duplicated.",
74
+ "dialogs.save.as.new.emailsMessage": "Email schedules will not be duplicated",
39
75
  "cancelConfirmationDialog.headline": "Discard changes?",
40
76
  "cancelConfirmationDialog.message": "All changes will be lost",
41
77
  "cancelConfirmationDialog.submitButtonText": "Discard changes",
78
+ "settingsDashboardDialog.headline": "Dashboard settings",
79
+ "settingsDashboardDialog.section.alert": "Alerts",
80
+ "settingsDashboardDialog.section.alert.inherit": "Use the default evaluation frequency set by your organisation.",
81
+ "settingsDashboardDialog.section.alert.note": "<strong>Note:</strong> Applies to new alerts only — use the API to update existing ones.",
82
+ "settingsDashboardDialog.section.alert.label": "Evaluation Frequency",
42
83
  "deleteDashboardDialog.headline": "Delete dashboard?",
43
84
  "deleteDashboardDialog.submitButtonText": "Delete",
44
- "deleteDashboardDialog.alertsAndEmailsMessage": "All alerts and scheduled emails set up for this dashboard will also be deleted.",
45
- "deleteDashboardDialog.alertsMessage": "All alerts set up for this dashboard will also be deleted.",
46
- "deleteDashboardDialog.emailsMessage": "All scheduled emails set up for this dashboard will also be deleted.",
47
- "deleteDashboardDialog.drillMessage": "All drilling into this dashboard from other dashboards will be removed.",
85
+ "deleteDashboardDialog.defaultMessage": "Are you sure you want to delete dashboard {title}?",
86
+ "deleteDashboardDialog.objectsMessage": "Following objects associated with the dashboard {title} will be permanently deleted:",
87
+ "deleteDashboardDialog.alerts": "alerts",
88
+ "deleteDashboardDialog.schedules": "scheduled exports",
89
+ "deleteDashboardDialog.drills": "drilling",
90
+ "deleteWidgetDialog.headline": "Remove widget?",
91
+ "deleteWidgetDialog.objectsMessage": "The following types of objects associated with the widget {title} will no longer function:",
92
+ "deleteWidgetDialog.alerts": "alerts",
93
+ "deleteWidgetDialog.schedules": "scheduled exports",
48
94
  "create.dashboard": "Create Dashboard",
49
95
  "drill_modal_picker.drill-down": "Drill down",
96
+ "drill_modal_picker.drill-to-url": "Drill to URL",
50
97
  "drill_modal_picker.drill-into": "Drill into",
51
98
  "drill_modal_picker.cross-filter": "Cross-filter",
99
+ "drill_modal_picker.key-driver-analysis": "Explain",
52
100
  "drill_modal_picker.more.details": "More details",
101
+ "drill_modal_picker.label": "Select drill action",
53
102
  "drillModal.backToTop": "Back to top",
54
- "filters.allTime.previousPeriod": "prev. period",
55
- "filters.allTime.lastYear": "prev. year",
56
- "filters.minute.previousPeriod": "prev. minute",
57
- "filters.hour.previousPeriod": "prev. hour",
58
- "filters.day.previousPeriod": "prev. {n, plural, one {day} other {#d}}",
59
- "filters.week.previousPeriod": "last {n, plural, one {week} other {#w}}",
60
- "filters.month.previousPeriod": "prev. {n, plural, one {month} other {#m}}",
61
- "filters.quarter.previousPeriod": "prev. {n, plural, one {quarter} other {#q}}",
62
- "filters.year.previousPeriod": "prev. {n, plural, one {year} other {#y}}",
63
103
  "filters.alertMessage.relativePreset": "in {calendarIcon} {range}",
64
104
  "filters.alertMessage.relativePreset.inPeriod": "in period {calendarIcon} {range}",
65
- "filters.config.warning.multipleProjectConfigs": "There's more than one project date filter configuration associated with this project. The first one was used.",
66
105
  "filters.config.warning.multipleWorkspacesConfigs": "There's more than one workspace date filter configuration associated with this workspace. The first one was used.",
67
106
  "filters.config.warning.selectedFilterNotValid": "The default filter option is not valid, using the first option available instead.",
68
107
  "filters.config.warning.allOptionsHidden": "The dashboard date filter configuration was ignored because it would have hidden all the filter options.",
69
- "filters.config.warning.conflictingIdentifiers": "The dashboard date filter configuration was disregarded because it contains date filter options with identical identifiers.",
70
- "filters.config.warning.notAvailable": "The project date filter configuration is either not defined or you don't have the permissions to access it.",
108
+ "filters.config.warning.conflictingIdentifiers": "The dashboard date filter setup was disregarded because it contains date filter options with identical identifiers.",
71
109
  "filters.config.warning.workspace.notAvailable": "The workspace date filter configuration is either not defined or you don't have the permissions to access it.",
72
110
  "filters.configurationPanel.header": "Filters",
73
- "filters.configurationPanel.sectionHeader.interactions": "Interactions",
74
111
  "filters.configurationPanel.crossFiltering.toggle": "Cross-filtering",
75
- "kpi.noData": "No data for current filter settings. Try changing the filters.",
76
- "kpiPop.change": "change",
77
- "dialogs.schedule.email.filters": "Filters ({count})",
78
- "dialogs.schedule.email.filters.not.saved": "Dashboard filters saved in the schedule will not be impacted.",
79
- "dialogs.schedule.email.attachment.filter": "(with currently set filters)",
80
- "dialogs.schedule.email.attachment.label": "Attachment:",
112
+ "filters.configurationPanel.crossFiltering.toggle.tooltip": "Allow users to filter the dashboard by clicking data points in visualisations.",
113
+ "filters.configurationPanel.userFilterReset.toggle": "Reset",
114
+ "filters.configurationPanel.userFilterReset.toggle.tooltip": "Allow users to reset all filters to default.",
115
+ "filters.configurationPanel.userFilterSave.toggle": "Auto-save last state",
116
+ "filters.configurationPanel.userFilterSave.toggle.tooltip": "Allow auto-save of the filters' last state. When users return, their filters will remain as they left them.",
117
+ "filters.configurationPanel.filterViews.toggle": "Saved views",
118
+ "filters.configurationPanel.filterViews.toggle.tooltip": "<p>Allows users to save filter states as personal views they can return to later.</p><p>Only the user who saved the view can access it and set it as their default view.</p>",
119
+ "settingsDashboardDialog.sectionHeaders.dateDataset": "Date range in descriptions",
120
+ "settingsDashboardDialog.sectionHeaders.dateDataset.tooltip": "Date dataset utilised by the Date range filter for metric references in section descriptions.",
121
+ "dateDataset.autoSelect": "Auto-select",
122
+ "dateDataset.notFound": "Not found",
81
123
  "dialogs.schedule.email.attachments.label": "Attachments",
82
- "dialogs.schedule.email.attachment.select": "Select attachments",
83
- "dialogs.schedule.email.attachment.select.disabled.message": "This dashboard does not contain any visualisations.",
84
- "dialogs.schedule.email.attachment.select.dashboard.header": "Dashboard (PDF)",
85
- "dialogs.schedule.email.attachment.select.widgets.header": "Visualisations (CSV, XLSX)",
86
- "dialogs.schedule.email.headline": "Schedule email delivery",
87
- "dialogs.schedule.email.heading": "Schedule export",
124
+ "dialogs.schedule.email.title.placeholder": "Untitled schedule",
125
+ "dialogs.alert.title.placeholder": "Alert name",
126
+ "dialogs.alert.accessibility.label.title": "Alert name",
127
+ "dialogs.schedule.accessibility.label.email.title": "Schedule name",
88
128
  "dialogs.schedule.email.message.label": "Message",
89
- "dialogs.schedule.email.unsubscribed.recipients": "{n, plural, one {1 recipient unsubscribed} other {# recipients unsubscribed}} from this schedule.",
90
- "dialogs.schedule.email.repeats.label": "Repeats:",
91
- "dialogs.schedule.email.repeats.execute.on.dayOfMonth": "on the day {date}",
92
- "dialogs.schedule.email.repeats.execute.on.dayOfWeek": "on the {week, select, 1 {first} 2 {second} 3 {third} 4 {fourth} other {final}} {day}",
93
- "dialogs.schedule.email.repeats.every": "every",
94
- "dialogs.schedule.email.repeats.frequencies.day": "{n, plural, one {day} other {days}}",
95
- "dialogs.schedule.email.repeats.frequencies.month": "{n, plural, one {month} other {months}}",
96
- "dialogs.schedule.email.repeats.frequencies.week": "{n, plural, one {week} other {weeks}}",
97
- "dialogs.schedule.email.repeats.types.custom": "Custom",
98
- "dialogs.schedule.email.repeats.types.daily": "Daily",
99
- "dialogs.schedule.email.repeats.types.monthly": "Monthly on the {week, select, 1 {first} 2 {second} 3 {third} 4 {fourth} other {last}} {day}",
100
- "dialogs.schedule.email.repeats.types.weekly": "Weekly on {day}",
129
+ "dialogs.schedule.email.max.recipients": "Error: Too many recipients you can add up to {maxRecipients}.",
130
+ "dialogs.schedule.email.min.recipients": "Error: Required field — select a recipient to continue.",
131
+ "dialogs.schedule.email.usersLoad.error": "Error: Unable to load users — try again later.",
132
+ "dialogs.schedule.email.user.missing.email": "Error: The following recipients have invalid email addresses fix them to continue: {recipients}.",
133
+ "dialogs.schedule.email.user.missing.email.tooltip": "Error: This recipient has an invalid email address.",
134
+ "dialogs.schedule.email.user.invalid.external": "Error: The following recipients don’t have the required access — remove them to continue: {recipients}.",
135
+ "dialogs.schedule.email.user.invalid.external.tooltip": "Error: This recipient does not have the required access.",
136
+ "dialogs.schedule.email.user.invalid.onlyYou": "Error: Only you can be a recipient — remove others to continue.",
137
+ "dialogs.schedule.email.user.used.external": "The email “{email}” does not belong to this workspace. The recipient may receive sensitive data.",
138
+ "dialogs.schedule.email.user.remove": "Remove {name}",
139
+ "dialogs.schedule.email.userAndEmail.remove": "Remove {name} ({email})",
140
+ "dialogs.schedule.email.user.warning.external": "Warning: External recipient — “{email}” will receive the same dashboard view as you.",
141
+ "dialogs.schedule.email.user.unknown": "This is an unknown user and cannot be added as a recipient.",
142
+ "dialogs.schedule.email.user.noMatch": "No matching users or groups.",
143
+ "dialogs.schedule.email.user.notMe": "This user is not permitted. Only you can be the recipient.",
144
+ "dialogs.schedule.email.user.guest": "(guest)",
145
+ "dialogs.schedule.email.recipients.note": "Note: All recipients marked as “(guest)” will receive the same dashboard view as you.",
101
146
  "dialogs.schedule.email.subject.label": "Subject",
102
- "dialogs.schedule.email.time.label": "First occurrence:",
103
- "dialogs.schedule.email.to.label": "To",
147
+ "dialogs.schedule.email.recipients.label": "Recipients",
148
+ "dialogs.schedule.email.filters": "Filters ({count})",
149
+ "dialogs.schedule.email.tabs.general": "General",
150
+ "dialogs.schedule.email.tabs.filters": "Filters",
151
+ "dialogs.schedule.email.destination": "Destination",
152
+ "dialogs.schedule.email.destination.missing": "No destination available.",
153
+ "dialogs.schedule.email.destination.help": "Create destination",
104
154
  "dialogs.schedule.email.message.placeholder": "Hello, Your scheduled email is ready. You can download the dashboard in attachments",
105
- "dialogs.schedule.email.submit": "Schedule",
155
+ "dialogs.schedule.email.create": "Create",
156
+ "dialogs.schedule.email.closeLabel": "Close dialogue",
157
+ "dialogs.schedule.email.backLabel": "Back to the previous step.",
158
+ "dialogs.alert.backLabel": "Back to the previous step.",
159
+ "dialogs.alert.closeLabel": "Close dialogue",
160
+ "dialogs.schedule.email.footer.title": "How to schedule export?",
161
+ "dialogs.schedule.email.footer.title.short": "Help",
106
162
  "dialogs.schedule.email.save": "Save",
107
- "dialogs.schedule.email.format.options": "Format options",
108
- "dialogs.schedule.email.insight.format": "Visualisation format:",
109
- "dialogs.schedule.email.show.filters": "Show what filters are applied",
163
+ "dialogs.schedule.email.save.executionTimestampMode": "To create or edit scheduled exports, reset the dashboard date to today.",
164
+ "dialogs.alert.save.executionTimestampMode": "To create or edit alerts, reset the dashboard date to today.",
165
+ "dialogs.schedule.email.widgetError": "Error: Schedule can't be sent — the source widget was deleted. Delete the schedule or contact your administrator",
166
+ "dialogs.schedule.email.destinationWarning": "The selected destination only supports sending the export to yourself.",
167
+ "dialogs.automation.filters.showAll": "Display all",
168
+ "dialogs.automation.filters.showAll.ariaDescription": "Use to display all filters.",
169
+ "dialogs.automation.filters.showLess": "Show fewer",
170
+ "dialogs.automation.filters.showLess.ariaDescription": "Use to display fewer filters.",
171
+ "dialogs.automation.filters.add": "Add filter",
172
+ "dialogs.automation.filters.addDisabled": "Add filter disabled — all filters have been added.",
173
+ "dialogs.automation.filters.title": "Add filter",
174
+ "dialogs.automation.filters.noFilters": "No more filters available",
175
+ "dialogs.automation.filters.useFiltersMessage": "Always use these filters for future exports",
176
+ "dialogs.automation.filters.searchAriaLabel": "Search filters",
177
+ "dialogs.automation.filters.deleteAriaLabel": "Remove filter",
178
+ "dialogs.automation.filters.deleteTooltip": "Remove filter",
179
+ "dialogs.automation.filters.lockedTooltip": "This filter is locked and cannot be removed.",
180
+ "dialogs.automation.filters.useFiltersMessage.tooltip": "Select this option to retain these filters for every export. If not selected, the export will apply the most recent default filters from the dashboard.",
181
+ "dialogs.automation.filters.activeFilters": "Note: These filters will always be used for future exports.",
182
+ "dialogs.automation.filters.missing": "<b>Warning:</b> Some filters couldn’t be applied — they’re no longer available on the dashboard.",
183
+ "dialogs.automation.filters.tab.label": "TAB",
184
+ "dialogs.automation.filters.tab.untitled": "Tab",
185
+ "dialogs.schedule.email.tabs.info": "All tabs in the dashboard are included — a separate file is created for each tab and export format",
186
+ "dialogs.automation.attachments.add": "Add attachments",
187
+ "dialogs.automation.applyCurrentFilters.confirm.title": "Edit with current filters",
188
+ "dialogs.automation.applyCurrentFilters.confirm.submit": "Edit",
189
+ "dialogs.automation.applyCurrentFilters.alert.confirm": "<b>Warning</b>: Some filters used when this alert was created are no longer available or valid. Editing will apply the current dashboard filters",
190
+ "dialogs.automation.applyCurrentFilters.schedule.confirm": "<b>Warning</b>: Some filters used when this schedule was created are no longer available or valid. Editing will apply the current dashboard filters",
191
+ "dialogs.automation.filters.schedule.ariaLabel": "Information about the option: Always apply these filters for future exports",
110
192
  "dialogs.schedule.management.title": "Scheduled exports",
111
193
  "dialogs.schedule.management.delete": "Delete the schedule.",
112
194
  "dialogs.schedule.management.delete.dialog": "Delete schedule?",
113
195
  "dialogs.schedule.management.delete.dialog.confirm": "<b>The schedule</b> will be permanently deleted.",
196
+ "dialogs.schedule.management.list.title": "Your scheduled exports",
197
+ "dialogs.schedule.management.create": "Create",
198
+ "dialogs.schedule.management.create.new": "Create new",
199
+ "dialogs.schedule.management.create.tooManyMessage": "Your organisation has reached the limit of scheduled exports. Contact your administrator to create more.",
114
200
  "dialogs.schedule.management.noSchedules": "There are no scheduled exports.{br}Create new.",
115
- "dialogs.schedule.management.noSchedules.byUser": "You have not scheduled any exports yet.{br}Add one now.",
116
- "dialogs.schedule.management.addSchedule": "Add schedule",
117
- "dialogs.schedule.management.recipients": "{n, plural, one {# recipient} other {# recipients}}",
118
- "dialogs.schedule.management.recipients.onlyYou": "Only you",
119
- "dialogs.schedule.management.attachments.dashboard": "Dashboard",
120
- "dialogs.schedule.management.attachments.widgets": "{n, plural, one {# visualisation} other {# visualisations}}",
121
- "dialogs.schedule.management.attachments.mixed": "Dashboard and {n, plural, one {# visualisation} other {# visualisations}}",
201
+ "dialogs.schedule.management.attachments.attachment": "Attach as a {format} file.",
202
+ "dialogs.schedule.management.attachments.xlsx.settings": "XLSX options",
203
+ "dialogs.schedule.management.attachments.cells.merged": "Keep attribute cells merged",
204
+ "dialogs.schedule.management.attachments.exportInfo": "Include sheet with export information",
205
+ "dialogs.schedule.management.attachments.delete": "Delete {format} attachment",
206
+ "dialogs.schedule.management.attachments.removed": "{format} attachment removed.",
207
+ "dialogs.schedule.management.attachments.filters.title": "Dashboard filters",
208
+ "dialogs.schedule.management.attachments.filters.using": "using",
209
+ "dialogs.schedule.management.attachments.filters.default": "default dashboard filters",
210
+ "dialogs.schedule.management.attachments.filters.edited": "edited dashboard filters",
211
+ "dialogs.schedule.management.attachments.filters.item.default": "Use default filters",
212
+ "dialogs.schedule.management.attachments.filters.item.edited": "Use edited filters",
213
+ "dialogs.schedule.management.attachments.filters.item.tooltip": "Default state of dashboard filters will be used in the scheduled export, even if the default values change in the future.",
214
+ "dialogs.schedule.management.attachments.filters.item.tooltip.disabled": "To schedule an export with default filters, create a new scheduled export.",
215
+ "dialogs.schedule.management.attachments.message": "<strong>Note</strong>. Cross-filtering will not be applied in the scheduled export.",
216
+ "scheduledEmail.attachmentFormat.widget.png": "Snapshot (.png)",
217
+ "scheduledEmail.attachmentFormat.widget.pptx": "Single Slide (.pptx)",
218
+ "scheduledEmail.attachmentFormat.widget.pdf": "Single Slide (.pdf)",
219
+ "scheduledEmail.attachmentFormat.widget.pdfTabular": "Formatted data (.pdf)",
220
+ "scheduledEmail.attachmentFormat.widget.formattedXLSX": "Formatted data (.xlsx)",
221
+ "scheduledEmail.attachmentFormat.widget.formattedCSV": "Formatted data (.csv)",
222
+ "scheduledEmail.attachmentFormat.widget.rawCSV": "Raw data (.csv file)",
223
+ "scheduledEmail.attachmentFormat.dashboard.pptx": "Slide Deck (.pptx)",
224
+ "scheduledEmail.attachmentFormat.dashboard.pdf": "Snapshot (.pdf)",
225
+ "scheduledEmail.attachmentFormat.dashboard.formattedXLSX": "Data (.xlsx)",
226
+ "scheduledEmail.attachmentFormat.dashboard.pdfSlides": "Slide Deck (.pdf)",
227
+ "scheduledEmail.attachments.warning.noAttachmentsSelected": "<strong>Warning:</strong> Scheduled exports require at least one attachment — please select an option to proceed",
228
+ "scheduledEmail.attachments.error.noAttachmentsSelected": "Error: No attachments selected — please select at least one attachment to schedule an export.",
122
229
  "dialogs.schedule.management.load.error": "Failed to load. Try again later.",
123
230
  "dialogs.schedule.management.delete.error": "Failed to delete schedule. Try again later.",
124
- "dialogs.schedule.management.tab.all": "all",
125
- "dialogs.schedule.management.tab.user": "created by me",
126
- "options.menu.schedule.email.recipient.invalid": "This is not a valid e-mail address",
127
- "options.menu.schedule.email.recipient.warning.existed": "You have already added this recipient.",
128
- "options.menu.schedule.email.recipient.warning.belong.workspace": "This email address does not belong to this workspace. The recipient may receive sensitive data.",
129
- "options.menu.schedule.email.recipient.external.not.allowed": "This email address does not belong to this workspace. Only the author of the schedule can add this email address.",
231
+ "dialogs.alerting.management.title": "Alerts",
232
+ "dialogs.alerting.management.load.error": "Failed to load. Try again later.",
233
+ "dialogs.alerting.create.error": "Failed to create alert. Try again later.",
234
+ "dialogs.alerting.create.success": "Alert created successfully.",
235
+ "dialogs.alerting.update.error": "Failed to update alert. Try again later.",
236
+ "dialogs.alerting.update.success": "Alert updated successfully.",
237
+ "dialogs.alerting.management.delete.error": "Failed to delete alert. Try again later.",
238
+ "dialogs.alerting.management.pause.error": "Failed to pause alert. Try again later.",
239
+ "dialogs.alerting.management.pause.success": "Your alert has been paused.",
240
+ "dialogs.alerting.management.activate.error": "Failed to un-pause alert. Try again later.",
241
+ "dialogs.alerting.management.activate.success": "Your alert has been un-paused.",
242
+ "dialogs.alerting.management.create": "Create",
243
+ "dialogs.alerting.management.create.new": "Create new",
244
+ "dialogs.alerting.footer.title": "How to create an alert?",
245
+ "dialogs.alerting.footer.title.short": "Help",
246
+ "dialogs.alerting.management.list.title": "Your alerts",
247
+ "dialogs.alerting.management.noAlerts": "There are no alerts.",
248
+ "dialogs.alerting.title.placeholder": "Untitled alert",
249
+ "dialogs.alerting.management.delete.dialog": "Delete alert?",
250
+ "dialogs.alerting.management.delete.dialog.confirm": "<b>The alert</b> will be permanently deleted, along with all its notifications.",
251
+ "dialogs.alerting.delete.success": "Success! Your alert was deleted.",
252
+ "dialogs.alerting.create.noMeasure.tooltip": "Creating an alert requires a metric. Use a widget with at least one metric",
253
+ "alerting.alert.menu.delete": "Delete",
254
+ "alerting.alert.menu.pause": "Pause",
255
+ "alerting.alert.menu.resume": "Unpause",
256
+ "alerting.alert.menu.edit": "Edit",
130
257
  "delete": "Delete",
131
258
  "close": "Close",
132
259
  "cancel": "Cancel",
260
+ "save": "Save",
261
+ "create": "Create",
262
+ "apply": "Apply",
133
263
  "gs.date.today": "Today",
134
264
  "gs.date.tomorrow": "Tomorrow",
135
265
  "gs.date.yesterday": "Yesterday",
136
- "kpi.alertBox.title": "Set an alert on KPI change",
137
- "kpi.alertBox.example": "e.g.",
138
- "kpi.alertBox.unverifiedEmail": "Sorry, you can't set an alert. Make sure your email is verified. If that doesn't help, ask your administrator to update your permissions.",
139
- "kpi.alertBox.disabledInReadOnly": "Alerting is disabled in the read-only mode",
140
- "kpi.error.view": "KPI cannot be displayed. Contact your administrator to fix the KPI definition.",
141
- "kpiAlertDialog.delete": "Delete",
142
- "kpiAlertDialog.deleting": "Deleting…",
143
- "kpiAlertDialog.emailMe": "Email me",
144
- "kpiAlertDialog.emailMeWhen": "{emailMe} when this KPI is",
145
- "kpiAlertDialog.emailInfo": "Email will be sent to {userEmail}",
146
- "kpiAlertDialog.invalidNumber": "<strong>This number is not valid.</strong>{br}Double-check it and try again.",
147
- "kpiAlertDialog.filtersDiffer": "KPI is now filtered differently than when the alert was established.",
148
- "kpiAlertDialog.filtersApply": "Apply alert filters to dashboard",
149
- "kpiAlertDialog.savingFailed": "Saving alert failed. Please try again.",
150
- "kpiAlertDialog.deleteingFailed": "Failed to delete alert. Please try again.",
151
- "kpiAlertDialog.brokenAlert": "Broken alert",
152
- "kpiAlertDialog.brokenAlertAppeal": "To see the correct KPI value, update the filters in this alert. You can also remove the alert.",
153
- "kpiAlertDialog.removedFilters": "Filters removed from dashboard",
154
- "kpiAlertDialog.ignoredFilters": "Filters ignored for this kpi",
155
- "kpiAlertDialog.updateTitle": "Update",
156
- "kpiAlertDialog.updateBrokenTitle": "Update filters",
157
- "kpiAlertDialog.updatingTitle": "Updating…",
158
- "kpiAlertDialog.updateBrokenFailed": "Updating filters failed. Please try again.",
159
- "kpiAlertDialog.setTitle": "Set alert",
160
- "kpiAlertDialog.settingTitle": "Setting…",
161
- "kpiAlertDialog.threshold.above": "above",
162
- "kpiAlertDialog.threshold.below": "below",
163
- "kpiAlertDialog.withAttributeFilters": "{numFilters} more {numFilters, select, 1 {filter} other {filters}} applied",
164
266
  "messages.exportResultError": "Failed to export the data. Try again later.",
267
+ "messages.exportResultError.tooManyRows": "Export failed. Too many rows ({actual}). Limit is {limit}.",
165
268
  "messages.exportResultRestrictedError": "You cannot export this visualisation because it contains restricted data.",
166
269
  "messages.exportResultStart": "Export in progress",
167
270
  "messages.exportResultSuccess": "Export successful.",
168
271
  "messages.sharingChangedSuccess": "Sharing updated.",
169
272
  "messages.sharingChangedError.general": "Failed to update the sharing settings. Try again later.",
273
+ "messages.shareLinkCopied": "Link copied",
170
274
  "messages.sharingDialogError.general": "Failed to load the sharing settings. Try again later.",
275
+ "messages.settingsDialogError.general": "Failed to load the dashboard settings. Please try again later.",
171
276
  "visualization.dataTooLarge.headline": "Too many data points to display",
172
277
  "visualization.dataTooLarge.text": "Try applying one or more filters to your dashboard.",
173
278
  "visualization.execute_protected_report.headline": "You are not authorised to see this report",
174
279
  "visualization.execute_protected_report.text": "Contact your administrator.",
175
- "visualization.alert_not_supported": "Alerts are not supported for the static date period",
176
280
  "visualization.empty.headline": "No data for your filter selection",
177
- "visualization.error.headline": "Sorry, we can't display this visualisation.",
281
+ "visualization.error.headline": "Sorry, we cannot display this visualisation",
178
282
  "visualization.error.text": "Contact your administrator.",
179
- "options.button.bubble": "Export visualisation data",
180
- "options.menu.export.CSV": "CSV",
181
- "options.menu.export.XLSX": "XLSX",
283
+ "visualization.ErrorMessageResultCacheMissing": "Visualisation needs refresh",
284
+ "visualization.ErrorDescriptionResultCacheMissing": "The underlying data has changed or expired. Please refresh the page.",
285
+ "visualization.warning.export.too_small": "Not enough space for visualisation",
286
+ "options.menu.unsupported.error": "The visualisation can't be exported at the moment. Try applying different filters, or using different metrics or attributes.",
182
287
  "options.menu.unsupported.loading": "The visualisation cannot be exported at the moment.",
288
+ "options.menu.unsupported.incompatibleWidget": "Unable to schedule the export on custom widget.",
289
+ "options.menu.unsupported.schedulingForInsightNotEnabled": "You cannot schedule an export for this widget.",
290
+ "options.menu.unsupported.alertingForInsightNotEnabled": "You cannot create an alert for this widget.",
291
+ "options.menu.unsupported.oldWidget": "Unable to schedule the export. Please resave the dashboard or contact your administrator.",
292
+ "options.menu.unsupported.oldWidgetExport": "Unable to export. Please resave the dashboard or contact your administrator.",
293
+ "options.menu.unsupported.alertingOldWidget": "Unable to create an alert. Please resave the dashboard or contact your administrator.",
183
294
  "export.defaultTitle": "Untitled visualisation",
184
295
  "export_unsupported.disabled": "Export is not supported",
296
+ "widget.options.description": "Description",
185
297
  "widget.options.menu.exportToCSV": "Export to CSV",
186
298
  "widget.options.menu.exportToXLSX": "Export to XLSX",
299
+ "widget.options.menu.alert": "Alert",
300
+ "widget.options.menu.alerts": "Alerts",
187
301
  "widget.options.menu.scheduleExport": "Schedule export",
302
+ "widget.options.menu.scheduleExport.edit": "Show schedules",
303
+ "widget.options.menu.XLSX": "Formatted (.xlsx)",
304
+ "widget.options.menu.exportToCSV.formatted": "Formatted (.csv)",
305
+ "widget.options.menu.exportToCSV.raw": "Raw (.csv)",
306
+ "widget.options.menu.exportToPDF.formatted": "Formatted (.pdf)",
307
+ "widget.error.missing_insight.message": "No visualisation available",
308
+ "widget.error.missing_insight.description": "This visualisation has been removed or is no longer accessible. Please contact your administrator or remove it from the dashboard.",
309
+ "widget.drill.dialog.exportToXLSX": "Formatted (.xlsx)",
310
+ "widget.drill.dialog.exportToPDF": "Formatted (.pdf)",
311
+ "widget.drill.dialog.exportToCSV.formatted": "Formatted (.csv)",
312
+ "widget.drill.dialog.exportToCSV.raw": "Raw (.csv)",
188
313
  "share.button.text": "Share",
314
+ "share.button.tooltip": "Share dashboard",
189
315
  "dashboard.error.empty.heading": "This dashboard is empty",
190
316
  "dashboard.error.empty.text": "All visualisations were removed.",
191
317
  "dashboard.shareDialog.underLenientControl.label": "Other users can access this dashboard if they drill down to it",
@@ -216,8 +342,14 @@
216
342
  "layout.header.characters.left": "{currentCharactersCount} / {maximumCharactersCount} characters left",
217
343
  "layout.header.add.title.placeholder": "Add Title here...",
218
344
  "layout.header.add.description.placeholder": "Add Description here...",
219
- "error": "Error",
345
+ "controlButtons.options.tooltip": "More actions",
346
+ "controlButtons.options.back": "Back to the previous step.",
347
+ "controlButtons.options.closeMenu": "Close menu",
220
348
  "controlButtons.edit.value": "Edit",
349
+ "controlButtons.edit.tooltip": "Edit dashboard",
350
+ "controlButtons.edit.executionTimestampMode.tooltip": "To edit the dashboard, reset the date to today.",
351
+ "controlButtons.setting.value": "Settings",
352
+ "controlButtons.setting.title": "All settings related to this dashboard. You can change the dashboard description, cross-filtering, saved filters allowed, and alerts evaluation frequency.",
221
353
  "controlButtons.saveAndPublish.value": "Save & Publish",
222
354
  "controlButtons.save.value": "Save",
223
355
  "controlButtons.saveAndPublish.title": "All changes will be immediately visible to everyone who can access this dashboard.",
@@ -242,10 +374,15 @@
242
374
  "addPanel.attributeFilter.tooltip.no_attributes.link": "Learn more",
243
375
  "addPanel.kpi": "Key Performance Indicator",
244
376
  "addPanel.richText": "Rich Text",
245
- "addPanel.kpi.tooltip.no_measures.link": "Learn more",
377
+ "addPanel.visualizationSwitcher": "Visualisation switcher",
378
+ "addPanel.visualizationSwitcher.tooltip": "Combine multiple visualizations into a single element with a navigation dropdown for switching between them.",
379
+ "addPanel.dashboardLayout": "Column container",
380
+ "addPanel.dashboardLayout.tooltip": "Create a vertical group of widgets arranged in a single column within your section. Ideal for stacking multiple items.",
381
+ "addPanel.dashboardLayout.tooltip.learnMore": "Learn more",
246
382
  "visualizationsList.dragToAdd": "Drag to add",
247
383
  "visualizationsList.savedVisualizations": "Saved visualisations",
248
384
  "configurationPanel.drillConfig.selectDashboard": "Choose dashboard…",
385
+ "configurationPanel.drillConfig.targetTab": "to tab",
249
386
  "configurationPanel.drillConfig.drillIntoDashboard.searchPlaceholder": "Search all dashboards…",
250
387
  "configurationPanel.drillConfig.forbiddenDashboard": "(Not shared with you)",
251
388
  "configurationPanel.drillConfig.forbiddenDashboard.tooltip": "Dashboard is not shared with you, but other users have access to this dashboard.",
@@ -256,33 +393,19 @@
256
393
  "filterBar.filter.dropzone.tooltip": "Drag the attribute filter here.",
257
394
  "filterBar.filter.dropzone.tooltip.generic": "Drag the filter here.",
258
395
  "configurationPanel.title": "Configuration",
259
- "configurationPanel.comparison": "Comparison",
260
- "configurationPanel.compareWith": "Compare to",
261
- "configurationPanel.increasingNumberIs": "Increasing number is",
262
- "configurationPanel.comparisonTypeItems.previousPeriod": "Previous period",
263
- "configurationPanel.comparisonTypeItems.samePeriodInPreviousYear": "Same period in previous year",
264
- "configurationPanel.comparisonTypeItems.noComparison": "No comparison",
265
- "configurationPanel.comparisonDirectionItems.green": "Green",
266
- "configurationPanel.comparisonDirectionItems.red": "Red",
267
- "configurationPanel.selectComparisonPlaceholder": "Select comparison…",
268
- "configurationPanel.selectComparisonDirectionPlaceholder": "Select positive/negative",
269
396
  "configurationPanel.filterBy": "Filter by",
270
- "configurationPanel.date": "Date",
271
397
  "configurationPanel.dateAs": "as",
272
398
  "configurationPanel.vizCantBeFilteredByAttribute": "The visualisation cannot be filtered by {attributeName}. Unselect the check box.",
273
- "configurationPanel.kpiCantBeFilteredByAttribute": "The kpi can't be filtered by {attributeName}. Untick the check box.",
399
+ "configurationPanel.kpiCantBeFilteredByAttribute": "The kpi cannot be filtered by {attributeName}. Unselect the check box.",
274
400
  "configurationPanel.vizCantBeFilteredByDate": "The visualization cannot be filtered by Date. Unselect the check box.",
275
- "configurationPanel.kpiCantBeFilteredByDate": "The kpi cannot be filtered by Date. Unselect the check box.",
401
+ "configurationPanel.kpiCantBeFilteredByDate": "The kpi can't be filtered by Date. Unselect the check box.",
276
402
  "configurationPanel.unrelatedVizDateInfo": "\"{dateDataSet}\" can no longer be applied to the visualisation. Select a different dimension or edit the visualisation.",
277
- "configurationPanel.unrelatedKpiDateInfo": "\"{dateDataSet}\" can no longer be applied to the kpi. Select a different dimension or edit the kpi.",
278
- "configurationPanel.breakAlertWarning": "Users have set up {numAlerts} {numAlerts, select, 1 {alert} other {alerts}}\nfor this KPI. Modifying the KPI will affect {numAlerts, select, 1 {this alert} other {these alerts}}.",
279
- "configurationPanel.drillIntoDashboard": "Drill into dashboard",
280
- "configurationPanel.noLinkableDashboards": "No dashboard to link to",
281
- "configurationPanel.selectDashboard": "Select a dashboard",
403
+ "configurationPanel.unrelatedKpiDateInfo": "\"{dateDataSet}\" can no longer be applied to the KPI. Select a different dimension or edit the KPI.",
282
404
  "configurationPanel.interactions": "Interactions",
283
405
  "configurationPanel.drillConfig.interactions": "Drill interactions",
284
406
  "configurationPanel.drillConfig.addInteraction": "Add interaction",
285
407
  "configurationPanel.drillConfig.clickHint": "When I click on",
408
+ "configurationPanel.drillConfig.measureValue": "Value of metric",
286
409
  "configurationPanel.drillConfig.attributeValue": "Value of attribute",
287
410
  "configurationPanel.drillConfig.selectTarget": "I want to",
288
411
  "configurationPanel.drillConfig.clickHintItem": "When I click on <addon>(value of)</addon>",
@@ -294,16 +417,21 @@
294
417
  "configurationPanel.drillConfig.drillIntoUrl.invalidCustomUrl": "Invalid URL parameters",
295
418
  "configurationPanel.drillConfig.select": "Select action…",
296
419
  "configurationPanel.drillConfig.drillIntoDashboard.dateFilterWarning": "The date attribute value from the visualisation will not be transferred to filter the target dashboard.",
297
- "configurationPanel.unlistedDashboardTab": "Unlisted dashboard",
420
+ "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.label": "Pass as filter:",
421
+ "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.title": "Pass as filters",
422
+ "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.tooltip": "Disable the attribute or date to exclude its value from being passed as a filter to the drill destination.",
423
+ "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.all": "All",
424
+ "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.none": "None",
298
425
  "configurationPanel.visualprops.sectionTitle": "Title",
299
426
  "configurationPanel.visualprops.hideTitle": "Hide title",
300
427
  "configurationPanel.visualprops.sectionDescription": "Description",
301
428
  "configurationPanel.visualprops.inheritDescription": "Inherit",
302
- "configurationPanel.visualprops.inheritDescriptionHelp": "Inherit the description from the visualisation.",
429
+ "configurationPanel.visualprops.inheritDescriptionHelp": "Inherit the description from the visualization.",
303
430
  "configurationPanel.visualprops.customDescription": "Custom",
304
431
  "configurationPanel.visualprops.customDescriptionHelp": "Add a custom description for this instance of the visualisation.",
305
- "configurationPanel.visualprops.customKpiDescriptionHelp": "Add a custom description.",
306
432
  "configurationPanel.visualprops.noneDescription": "None",
433
+ "configurationPanel.visualprops.includeMetrics": "Include metric descriptions",
434
+ "configurationPanel.visualprops.includeMetricsHelp": "Display section with list of visualisation's metrics and their description.",
307
435
  "configurationPanel.visualprops.descriptionPlaceholder": "Add description…",
308
436
  "configurationPanel.drillIntoUrl.defaultButtonValue": "Select URL",
309
437
  "configurationPanel.drillIntoUrl.attributeUrlSectionTitle": "Hyperlink in attribute label",
@@ -344,12 +472,13 @@
344
472
  "configurationPanel.zoomInsight.help": "Enable to zoom the visualisation to display a detailed view. Hold the shift key to pan the zoomed area.",
345
473
  "configurationPanel.zoomInsight.notice": "Zoom won't be applied to exported dashboards.",
346
474
  "configurationPanel.drillConfig.selectInsight": "Choose visualisation…",
475
+ "attributesDropdown.noChanges": "No changes to apply",
347
476
  "gs.date.date-dataset.recommended": "Recommended",
348
477
  "gs.date.date-dataset.other": "Other",
349
478
  "gs.date.date-dataset.related": "Related",
350
479
  "gs.date.date-dataset.unrelated": "Unrelated",
351
480
  "gs.date.date-dataset.unrelated_hidden": "{count} unrelated {count, plural, one {date} other {dates}} {isShow, select, true {visible} other {hidden}}.",
352
- "gs.date.date-dataset.unrelated.show": "Display",
481
+ "gs.date.date-dataset.unrelated.show": "Show",
353
482
  "gs.date.date-dataset.unrelated.hide": "Hide",
354
483
  "gs.date.date-dataset.duplicityWarning": "Another filter is utilising the same date dataset. Disable this filter or set a different date.",
355
484
  "layout.widget.width.min": "Widget is at the minimal width.",
@@ -362,18 +491,24 @@
362
491
  "dropzone.new.row.desc": "Drop to create a{nbsp}<b>new section</b>",
363
492
  "dropzone.widget.desc": "Drop <b>here</b>",
364
493
  "dropzone.widget.last.in.row.desc": "Drop to the <b>existing section</b>",
494
+ "dropzone.widget.last.in.container.row.desc": "Drop to the <b>existing container</b>",
365
495
  "deleteKpiConfirmationDialog.headline": "Delete KPI",
366
496
  "deleteKpiConfirmationDialog.message": "All alerts set up for this KPI will also be deleted.",
367
497
  "deleteKpiConfirmationDialog.submitButtonText": "Delete",
368
498
  "newDashboard.title": "Drag visualisation here",
369
499
  "newDashboard.dropInsight": "Drop visualisation",
370
500
  "attributesDropdown.filterConfiguredMessage": "<strong>{parentTitle}</strong> is already filtered by <strong>{childTitle}</strong> filter directly or through other filters.",
371
- "attributesDropdown.attributeNameWithData": "with data of",
501
+ "attributesDropdown.attributeNameWithData": "with the data of",
372
502
  "filter.visibilityMode.tooltip.hidden": "This filter is hidden. It can only be accessed via the Edit Mode.",
373
503
  "filter.visibilityMode.tooltip.readonly.editMode": "This filter is locked. It can only be changed via the Edit Mode.",
374
504
  "filter.visibilityMode.tooltip.readonly.viewMode": "This filter is locked.",
375
505
  "filter.resetButton.tooltip": "Reset all filters",
506
+ "filter.resetButton.success": "Success: Filters reset to default values.",
507
+ "filter.resetButton.ariaLabel": "Reset filters to default settings",
508
+ "filter.crossFilterResetButton.tooltip": "Reset cross filters",
376
509
  "dateFilterDropdown.save": "Save",
510
+ "dateFilterDropdown.configuration": "Configuration",
511
+ "dateFilterDropdown.title": "Date range",
377
512
  "filter.configuration.mode.title": "Mode",
378
513
  "filter.configuration.mode.interactive.title": "Interactive",
379
514
  "filter.configuration.mode.interactive.tooltip": "Dashboard users can see and change the filter.",
@@ -383,24 +518,50 @@
383
518
  "filter.configuration.mode.hidden.tooltip": "Dashboard users cannot see the filter but it is applied.",
384
519
  "filter.dependency.icon.tooltip": "Values for <strong>{filterTitle}</strong> are filtered by selection in another filter.",
385
520
  "configurationPanel.drillConfig.alreadyUsedTooltip": "This <strong>hierarchy</strong> is already used for <strong>the same</strong> drilling down.",
521
+ "configurationPanel.respectCrossFiltering": "Respect cross-filtering",
522
+ "configurationPanel.respectCrossFiltering.tooltip": "Disable this option to ignore cross-filtering from other visualisations.",
386
523
  "richText.formattingOptions": "Formatting options",
387
524
  "richText.deleteDialog.header": "Delete rich text?",
388
525
  "richText.deleteDialog.message": "The rich text and all of its content will be permanently deleted.",
389
526
  "richText.emptyContent": "No rich text content",
390
- "attributesDropdown.valuesLimiting.title": "Filter values by",
391
- "attributesDropdown.valuesLimiting.empty": "Limit the filter menu options by applying a dashboard filter or adding a metric.",
392
- "attributesDropdown.valuesLimiting.addLink": "Add",
393
- "attributesDropdown.valuesLimiting.addMetricTitle": "Select metric",
394
- "attributesDropdown.valuesLimiting.addFilterTitle": "Select dashboard filter",
395
- "attributesDropdown.valuesLimiting.addItemTitle": "Add",
396
- "attributesDropdown.valuesLimiting.searchPlaceholder": "Search…",
397
- "attributesDropdown.valuesLimiting.sumFact": "Sum of {fact}",
398
- "attributesDropdown.valuesLimiting.countAttribute": "Count of {attribute}",
399
- "attributesDropdown.valuesLimiting.metricsEmpty": "No more items to add.",
400
- "attributesDropdown.valuesLimiting.unknownItem": "Unknown item",
401
- "attributesDropdown.valuesLimiting.searchNoMatch": "No matching item was found.",
402
- "attributesDropdown.valuesLimiting.filtersEmpty": "No more dashboard filters to add.",
403
- "attributesDropdown.valuesLimiting.addFilters.title": "Dashboard filter",
527
+ "visualizationSwitcher.emptyContent": "No visualisation in switcher",
528
+ "visualizationSwitcherToolbar.visualizationsList.header": "Visualisations",
529
+ "visualizationSwitcherToolbar.visualizationsList.tooltip": "Visualisations",
530
+ "visualizationSwitcherToolbar.visualizationsList.prev": "Previous",
531
+ "visualizationSwitcherToolbar.visualizationsList.next": "Next",
532
+ "visualizationSwitcherToolbar.visualizationsList.empty": "No visualization in switcher, add one to continue.",
533
+ "visualizationSwitcherToolbar.visualizationsList.add": "Add visualisation",
534
+ "visualizationSwitcherToolbar.remove": "Remove switcher",
535
+ "visualizationSwitcher.configurationPanel.remove.from.switcher": "Remove from switcher",
536
+ "visualizationSwitcher.list.menu.move.up": "Move up",
537
+ "visualizationSwitcher.list.menu.move.down": "Move down",
538
+ "visualizationSwitcher.list.menu.remove": "Remove",
539
+ "nestedLayoutToolbar.hideHeader": "Hide title and description.",
540
+ "nestedLayoutToolbar.showHeader": "Show title and description.",
541
+ "nestedLayoutToolbar.remove": "Remove from dashboard.",
542
+ "nestedLayoutToolbar.direction.title": "Layout orientation",
543
+ "nestedLayoutToolbar.direction.row": "Wrapped Row",
544
+ "nestedLayoutToolbar.direction.row.tooltip": "Layout direction: Wrapped Row",
545
+ "nestedLayoutToolbar.direction.column": "Column",
546
+ "nestedLayoutToolbar.direction.column.tooltip": "Layout direction: Column",
547
+ "nestedLayoutToolbar.direction.column.disabledTooltip": "Direction cannot be changed to a vertical if the container contains nested containers with a horizontal direction",
548
+ "nestedLayout.tab.title": "Container",
549
+ "nestedLayout.emptyDropZone.message": "<b>Drag here</b>{br}to add to the container",
550
+ "nestedLayout.emptyDropZone.active.message": "<b>DROP here</b>{br}to add to the container",
551
+ "attributesDropdown.valuesLimiting.title": "Filter values by",
552
+ "attributesDropdown.valuesLimiting.empty": "Limit the filter menu options by applying a dashboard filter or adding a metric.",
553
+ "attributesDropdown.valuesLimiting.addLink": "Add",
554
+ "attributesDropdown.valuesLimiting.addMetricTitle": "Choose metric",
555
+ "attributesDropdown.valuesLimiting.addFilterTitle": "Select dashboard filter",
556
+ "attributesDropdown.valuesLimiting.addItemTitle": "Add",
557
+ "attributesDropdown.valuesLimiting.searchPlaceholder": "Search…",
558
+ "attributesDropdown.valuesLimiting.sumFact": "Sum of {fact}",
559
+ "attributesDropdown.valuesLimiting.countAttribute": "Count of {attribute}",
560
+ "attributesDropdown.valuesLimiting.metricsEmpty": "No more items to add.",
561
+ "attributesDropdown.valuesLimiting.unknownItem": "Unknown item",
562
+ "attributesDropdown.valuesLimiting.searchNoMatch": "No matching item was found.",
563
+ "attributesDropdown.valuesLimiting.filtersEmpty": "No more dashboard filters to add.",
564
+ "attributesDropdown.valuesLimiting.addFilters.title": "Dashboard filter",
404
565
  "attributesDropdown.valuesLimiting.addFilters.description": "Use an existing dashboard filter to hide irrelevant values.",
405
566
  "attributesDropdown.valuesLimiting.addLimitingItem.title": "Metric",
406
567
  "attributesDropdown.valuesLimiting.addLimitingItem.description": "Use a metric to hide irrelevant values. Only values with non-null results for the metric are displayed. <a>Learn more</a>",
@@ -408,88 +569,13 @@
408
569
  "attributesDropdown.valuesLimiting.addDateTitle": "Choose date",
409
570
  "attributesDropdown.valuesLimiting.disableDateFilter": "Filter not available: The <strong>{dateFilterTitle}</strong> filter is already using this date dataset.",
410
571
  "attributesDropdown.valuesLimiting.disableDataSet": "Date dataset not available: The <strong>{dateFilterTitle}</strong> filter is already using this date dataset.",
411
- "widget.options.description": "Description",
412
- "widget.options.menu": "Options",
413
- "share.button.tooltip": "Share dashboard",
414
- "controlButtons.options.tooltip": "More actions",
415
- "controlButtons.edit.tooltip": "Edit dashboard",
416
- "options.menu.schedule.email.tooltip": "No destination available. To schedule an export, <a>create destination</a>.",
417
- "filters.configurationPanel.crossFiltering.toggle.tooltip": "Allow users to filter the dashboard by clicking data points in visualisations.",
418
- "filters.configurationPanel.userFilterReset.toggle": "Reset",
419
- "filters.configurationPanel.userFilterReset.toggle.tooltip": "Allow users to reset all filters to default.",
420
- "filters.configurationPanel.userFilterSave.toggle": "Auto-save last state",
421
- "filters.configurationPanel.userFilterSave.toggle.tooltip": "Allow auto-save of the filters' last state. When users return, their filters will remain as they left them.",
422
- "dialogs.schedule.email.title.placeholder": "Untitled schedule",
423
- "dialogs.schedule.email.max.recipients": "Error: Too many recipients — you can add up to {maxRecipients}.",
424
- "dialogs.schedule.email.repeats.types.cron": "Cron expression",
425
- "dialogs.schedule.email.destination": "Destination",
426
- "dialogs.schedule.email.destination.missing": "No destination available.",
427
- "dialogs.schedule.email.destination.help": "Create destination",
428
- "dialogs.schedule.email.create": "Create",
429
- "dialogs.schedule.email.footer.title": "How to schedule export?",
430
- "dialogs.schedule.management.list.title": "Your scheduled exports",
431
- "dialogs.schedule.management.create": "Create",
432
- "dialogs.schedule.management.create.tooManyMessage": "Your organisation has reached the limit of scheduled exports. Contact your administrator to create more.",
433
- "filter.crossFilterResetButton.tooltip": "Reset cross filters",
434
- "options.menu.schedule.email.edit": "Show schedules",
435
- "dialogs.schedule.email.footer.title.short": "Help",
436
- "dialogs.schedule.management.attachments.xlsx.settings": "XLSX options",
437
- "dialogs.schedule.management.attachments.cells.merged": "Keep attribute cells merged",
438
- "dialogs.schedule.management.attachments.filters.title": "Dashboard filters",
439
- "dialogs.schedule.management.attachments.filters.using": "using",
440
- "dialogs.schedule.management.attachments.filters.default": "default dashboard filters",
441
- "dialogs.schedule.management.attachments.filters.edited": "edited dashboard filters",
442
- "dialogs.schedule.management.attachments.filters.item.default": "Use default filters",
443
- "dialogs.schedule.management.attachments.filters.item.edited": "Use edited filters",
444
- "dialogs.schedule.management.attachments.filters.item.tooltip": "Default state of dashboard filters will be used in the scheduled export, even if the default values change in the future.",
445
- "dialogs.schedule.management.attachments.filters.item.tooltip.disabled": "To schedule an export with default filters, create a new scheduled export.",
446
- "dialogs.schedule.management.attachments.message": "<strong>Note</strong>. Cross-filtering will not be applied in the scheduled export.",
447
- "save": "Save",
448
- "widget.options.menu.scheduleExport.edit": "Show schedules",
449
- "dateFilterDropdown.configuration": "Configuration",
450
- "dateFilterDropdown.title": "Date range",
451
- "options.menu.alerts.edit": "Show alerts",
452
- "options.menu.addFilterViews": "Create view",
453
- "options.menu.listFilterViews": "Show my views",
454
- "dialogs.export.mergeHeaders": "Keep attribute cells merged",
455
- "filters.configurationPanel.filterViews.toggle": "Saved views",
456
- "filters.configurationPanel.filterViews.toggle.tooltip": "<p>Allows users to save filter states as personal views they can return to later.</p><p>Only the user who saved the view can access it and set it as their default view.</p>",
457
- "dialogs.alerting.management.title": "Alerts",
458
- "dialogs.alerting.management.load.error": "Failed to load. Try again later.",
459
- "dialogs.alerting.management.delete.error": "Failed to delete alert. Try again later.",
460
- "dialogs.alerting.management.pause.error": "Failed to pause alert. Try again later.",
461
- "dialogs.alerting.management.pause.success": "Your alert has been paused.",
462
- "dialogs.alerting.management.activate.error": "Failed to un-pause alert. Try again later.",
463
- "dialogs.alerting.management.activate.success": "Your alert has been un-paused.",
464
- "dialogs.alerting.footer.title": "How to create an alert?",
465
- "dialogs.alerting.footer.title.short": "Help",
466
- "dialogs.alerting.management.list.title": "Your alerts",
467
- "dialogs.alerting.management.noAlerts": "There are no alerts.",
468
- "dialogs.alerting.title.placeholder": "Untitled alert",
469
- "dialogs.alerting.management.delete.dialog": "Delete alert?",
470
- "dialogs.alerting.management.delete.dialog.confirm": "<b>The alert</b> will be permanently deleted, along with all its notifications.",
471
- "dialogs.alerting.delete.success": "Success! Your alert was deleted.",
472
- "alerting.comparisonOperator.greaterThan": "greater than",
473
- "alerting.comparisonOperator.greaterThanOrEquals": "greater than or equal to",
474
- "alerting.comparisonOperator.lessThan": "less than",
475
- "alerting.comparisonOperator.lessThanOrEquals": "less than or equal to",
476
- "alerting.alert.menu.delete": "Delete",
477
- "alerting.alert.menu.pause": "Pause",
478
- "alerting.alert.menu.resume": "Unpause",
479
- "alerting.alert.menu.edit": "Edit",
480
- "create": "Create",
481
- "kpiAlertDialog.brokenAlertDefaultDateLabel": "Date",
482
- "widget.options.menu.alerts": "Alerts",
483
- "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.label": "Pass as filter:",
484
- "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.title": "Pass as filters",
485
- "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.tooltip": "Disable the attribute or date to exclude its value from being passed as a filter to the drill destination.",
486
- "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.all": "All",
487
- "configurationPanel.drillConfig.drillIntersectionIgnoredAttributes.dropdown.none": "None",
488
572
  "filters.filterViews.dropdown.buttonEmpty": "My views",
489
573
  "filters.filterViews.dropdown.button": "My views ({count})",
490
574
  "filters.filterViews.dropdown.title": "My saved views",
491
575
  "filters.filterViews.dropdown.setAsDefault": "Set as default",
576
+ "filters.filterViews.dropdown.setAsDefault.ariaLabel": "Set {name} as default",
492
577
  "filters.filterViews.dropdown.unsetAsDefault": "Unset as default",
578
+ "filters.filterViews.dropdown.unsetAsDefault.ariaLabel": "Remove {name} as default",
493
579
  "filters.filterViews.dropdown.isDefault": "(default)",
494
580
  "filters.filterViews.dropdown.tooltip": "<p>Views are saved sets of filters that let you quickly return to a specific filter state.</p><p>If you set a view as the default, it will apply automatically every time you open the dashboard.</p>",
495
581
  "filters.filterViews.dropdown.newButton": "Create view",
@@ -504,11 +590,14 @@
504
590
  "filters.filterViews.toast.viewNotSetAsDefault": "Failure! Your view was not set as default. Please try again.",
505
591
  "filters.filterViews.toast.viewNotUnsetAsDefault": "Failure! Your view is still set as default. Please try again.",
506
592
  "filters.filterViews.toast.viewNotApplied": "Failure! Your view was not applied. Please try again.",
593
+ "filters.filterViews.list.ariaLabel.withActions": "List of saved views. Use the right arrow key to navigate to the ‘Set as default’ action, then to the ‘delete’ action.",
594
+ "filters.filterViews.list.ariaLabel.noActions": "List of saved views",
507
595
  "filters.filterViews.add.title": "Create view",
508
596
  "filters.filterViews.add.nameLabel": "Name",
509
597
  "filters.filterViews.add.namePlaceholder": "Untitled view",
510
598
  "filters.filterViews.add.setAsDefaultLabel": "Set as default",
511
599
  "filters.filterViews.add.deleteTooltip": "Delete",
600
+ "filters.filterViews.add.deleteTooltip.ariaLabel": "Delete {name}",
512
601
  "filters.filterViews.add.hint": "All current dashboard filters will be included.",
513
602
  "filters.filterViews.add.saveButton": "Save",
514
603
  "filters.filterViews.add.cancelButton": "Cancel",
@@ -516,6 +605,7 @@
516
605
  "filters.filterViews.delete.body": "Your view <b>{view}</b> will be permanently deleted.",
517
606
  "filters.filterViews.delete.deleteButton": "Delete",
518
607
  "filters.filterViews.delete.cancelButton": "Cancel",
608
+ "filters.filterViews.tooltip.ariaLabel": "Information about Saved Views",
519
609
  "insightAlert.config.action.edit": "Edit",
520
610
  "insightAlert.config.action.pause": "Pause",
521
611
  "insightAlert.config.action.resume": "Unpause",
@@ -524,13 +614,61 @@
524
614
  "insightAlert.config.comparisonOperator.lessThanOrEquals": "Is less than or equal to",
525
615
  "insightAlert.config.comparisonOperator.greaterThan": "Is greater than",
526
616
  "insightAlert.config.comparisonOperator.greaterThanOrEquals": "Is greater than or equal to",
617
+ "insightAlert.config.changeOperator.header": "CHANGE %",
618
+ "insightAlert.config.changeOperator.header.info": "Change{spacer}Calculates the relative change between primary (current time period) and secondary (previous time period) metric values.{spacer}FORMULA{spacer}(Primary - Secondary) / Secondary",
619
+ "insightAlert.config.differenceOperator.header": "DIFFERENCE #",
620
+ "insightAlert.config.differenceOperator.header.info": "Difference{spacer}Calculates the net difference between primary (current time period) and secondary (previous time period) metric values.{spacer}FORMULA{spacer}Primary - Secondary",
621
+ "insightAlert.config.aiOperator.header": "AI",
622
+ "insightAlert.config.aiOperator.header.info": "All AI operators are based on the AI functions",
623
+ "insightAlert.config.anomalyDetection": "Contains an anomaly",
624
+ "insightAlert.config.sensitivity": "Sensitivity",
625
+ "insightAlert.config.sensitivity.low": "Low",
626
+ "insightAlert.config.sensitivity.medium": "Medium",
627
+ "insightAlert.config.sensitivity.high": "High",
628
+ "insightAlert.config.granularity": "Group by",
629
+ "insightAlert.config.granularity.tooltip": "Set how the data is aggregated before checking for anomalies",
630
+ "insightAlert.config.granularity.hour": "Hours",
631
+ "insightAlert.config.granularity.day": "Days",
632
+ "insightAlert.config.granularity.week": "Weeks",
633
+ "insightAlert.config.granularity.month": "Months",
634
+ "insightAlert.config.granularity.quarter": "Quarters",
635
+ "insightAlert.config.granularity.year": "Years",
636
+ "insightAlert.config.changeOperator.increasesBy": "Increases by",
637
+ "insightAlert.config.changeOperator.decreasesBy": "Decreases by",
638
+ "insightAlert.config.changeOperator.changesBy": "Changes by",
639
+ "insightAlert.config.differenceOperator.increasesBy": "Increases by",
640
+ "insightAlert.config.differenceOperator.decreasesBy": "Decreases by",
641
+ "insightAlert.config.differenceOperator.changesBy": "Changes by",
527
642
  "insightAlert.config.alerts": "Alerts",
643
+ "insightAlert.config.alerts.empty": "There are no alerts for this visualisation.",
644
+ "insightAlert.config.noAlertMeasures": "Alerts",
645
+ "insightAlert.config.noAlertMeasures.title": "No metrics available for alerting.",
646
+ "insightAlert.config.noAlertMeasures.description": "Please add a metric to enable alerting.",
528
647
  "insightAlert.config.createAlert": "Create alert",
529
648
  "insightAlert.config.editAlert": "Edit alert",
530
649
  "insightAlert.config.title": "Configuration",
531
650
  "insightAlert.config.trigger": "Trigger",
651
+ "insightAlert.config.metric": "Metric",
532
652
  "insightAlert.config.trigger.tooltip": "How often to trigger the alert when the condition is met.",
653
+ "insightAlert.config.action": "Action",
654
+ "insightAlert.config.name": "Name",
655
+ "insightAlert.config.accessibility.title": "Custom name of the alert",
533
656
  "insightAlert.config.when": "When",
657
+ "insightAlert.config.for": "For",
658
+ "insightAlert.config.condition": "Condition",
659
+ "insightAlert.config.threshold": "Threshold",
660
+ "insightAlert.config.comparison": "Comparison",
661
+ "insightAlert.config.recipients": "Recipients",
662
+ "insightAlert.config.do": "Do",
663
+ "insightAlert.config.warning.destination": "The selected destination only supports sending the alert to yourself.",
664
+ "insightAlert.config.filters": "using {n} {n, plural, one {filter} other {filters}}",
665
+ "insightAlert.config.and": "and",
666
+ "insightAlert.config.for.filter": "for {granularity}",
667
+ "insightAlert.config.filters.info": "Alerts respect the dashboard filters as set at the time of their creation.{spacer}To modify the time period used for comparison, adjust the date filter.",
668
+ "insightAlert.config.compare_with_sp": "same period previous year",
669
+ "insightAlert.config.compare_with_pp": "previous period",
670
+ "insightAlert.config.compare_with_sp_granularity": "same {period} previous year",
671
+ "insightAlert.config.compare_with_pp_granularity": "previous {period}",
534
672
  "insightAlert.config.addAlert": "Add alert",
535
673
  "insightAlert.config.triggerMode.always": "Every time",
536
674
  "insightAlert.config.triggerMode.once": "Once, then pause",
@@ -543,79 +681,17 @@
543
681
  "insightAlert.config.delete.message": "The alert for <b>{title}</b> will be permanently deleted, along with all its notifications.",
544
682
  "insightAlert.noDestination.tooltip": "No destination available. <a>Create a destination</a> to set up an alert.",
545
683
  "insightAlert.maxAlertsReached": "Your organisation has reached the limit of alerts. Contact your administrator to create more.",
684
+ "insightAlert.executionTimestampMode": "To create or edit alerts, reset the dashboard date to today.",
546
685
  "insightAlert.config.loading.error": "Failed to load necessary information. Try again later.",
547
686
  "insightAlert.config.save.error": "Failed to save alert. Try again later.",
548
687
  "insightAlert.config.delete.error": "Failed to delete alert. Try again later.",
549
688
  "insightAlert.config.invalid": "This alert configuration is incorrect. Please update it or contact your administrator.",
550
- "insightAlert.config.selectMetric": "Select a metric",
551
- "deleteDashboardDialog.defaultMessage": "Are you sure you want to delete dashboard {title}?",
552
- "deleteDashboardDialog.objectsMessage": "Following objects associated with the dashboard {title} will be permanently deleted:",
553
- "deleteDashboardDialog.alerts": "alerts",
554
- "deleteDashboardDialog.schedules": "scheduled exports",
555
- "deleteDashboardDialog.drills": "drilling",
556
- "deleteWidgetDialog.headline": "Remove widget?",
557
- "deleteWidgetDialog.objectsMessage": "The following types of objects associated with the widget {title} will no longer function:",
558
- "deleteWidgetDialog.alerts": "alerts",
559
- "deleteWidgetDialog.schedules": "scheduled exports",
560
- "dialogs.schedule.email.widgetError": "Error: Schedule can't be sent — the source widget was deleted. Delete the schedule or contact your administrator",
561
- "addPanel.visualizationSwitcher": "Visualisation switcher",
562
- "addPanel.visualizationSwitcher.tooltip": "Combine multiple visualizations into a single element with a navigation dropdown for switching between them.",
563
- "visualizationSwitcher.emptyContent": "No visualisation in switcher",
564
689
  "insightAlert.config.invalidWidget": "Error: Alert can't be sent — the source widget was deleted. Delete the alert or contact your administrator",
565
- "options.menu.schedule.email.edit.noCreatePermissions": "Scheduled exports",
566
- "options.menu.alerts.edit.noCreatePermissions": "Alerts",
567
- "dialogs.schedule.email.min.recipients": "Error: Required field — select a recipient to continue.",
568
- "dialogs.schedule.email.destinationWarning": "The selected destination only supports sending the export to yourself.",
569
- "options.menu.unsupported.incompatibleWidget": "Unable to schedule the export on custom widget.",
570
- "options.menu.unsupported.oldWidget": "Unable to schedule the export. Please resave the dashboard or contact your administrator.",
571
- "options.menu.unsupported.alertingOldWidget": "Unable to create an alert. Please resave the dashboard or contact your administrator.",
572
- "configurationPanel.respectCrossFiltering": "Respect cross-filtering",
573
- "configurationPanel.respectCrossFiltering.tooltip": "Disable this option to ignore cross-filtering from other visualisations.",
574
- "visualizationSwitcherToolbar.visualizationsList.header": "Visualisations",
575
- "visualizationSwitcherToolbar.visualizationsList.tooltip": "Visualisations",
576
- "visualizationSwitcherToolbar.visualizationsList.prev": "Previous",
577
- "visualizationSwitcherToolbar.visualizationsList.next": "Next",
578
- "visualizationSwitcherToolbar.visualizationsList.empty": "No visualization in switcher, add one to continue.",
579
- "visualizationSwitcherToolbar.visualizationsList.add": "Add visualisation",
580
- "visualizationSwitcherToolbar.remove": "Remove switcher",
581
- "insightAlert.config.changeOperator.header": "CHANGE %",
582
- "insightAlert.config.changeOperator.header.info": "Change{spacer}Calculates the relative change between primary (current time period) and secondary (previous time period) metric values.{spacer}FORMULA{spacer}(Primary - Secondary) / Secondary",
583
- "insightAlert.config.differenceOperator.header": "DIFFERENCE #",
584
- "insightAlert.config.differenceOperator.header.info": "Difference{spacer}Calculates the net difference between primary (current time period) and secondary (previous time period) metric values.{spacer}FORMULA{spacer}Primary - Secondary",
585
- "insightAlert.config.changeOperator.increasesBy": "Increases by",
586
- "insightAlert.config.changeOperator.decreasesBy": "Decreases by",
587
- "insightAlert.config.changeOperator.changesBy": "Changes by",
588
- "insightAlert.config.differenceOperator.increasesBy": "Increases by",
589
- "insightAlert.config.differenceOperator.decreasesBy": "Decreases by",
590
- "insightAlert.config.differenceOperator.changesBy": "Changes by",
591
- "insightAlert.config.alerts.empty": "There are no alerts for this visualisation.",
592
- "insightAlert.config.noAlertMeasures": "Alerts",
593
- "insightAlert.config.noAlertMeasures.title": "No metrics available for alerting.",
594
- "insightAlert.config.noAlertMeasures.description": "Please add a metric to enable alerting.",
595
- "insightAlert.config.filters": "using {n} {n, plural, one {filter} other {filters}}",
596
- "insightAlert.config.filters.info": "Alerts respect the dashboard filters as set at the time of their creation.{spacer}To modify the time period used for comparison, adjust the date filter.",
597
- "insightAlert.config.compare_with": "compared to",
598
- "insightAlert.config.compare_with_sp": "same period previous year",
599
- "insightAlert.config.compare_with_pp": "previous period",
600
- "widget.error.missing_insight.message": "No visualisation available",
601
- "widget.error.missing_insight.description": "This visualisation has been removed or is no longer accessible. Please contact your administrator or remove it from the dashboard.",
602
- "visualizationSwitcher.configurationPanel.remove.from.switcher": "Remove from switcher",
603
- "visualizationSwitcher.list.menu.move.up": "Move up",
604
- "visualizationSwitcher.list.menu.move.down": "Move down",
605
- "visualizationSwitcher.list.menu.remove": "Remove",
606
- "dialogs.schedule.email.user.missing.email": "Error: The following recipients have invalid email addresses — fix them to continue: {recipients}.",
607
- "insightAlert.config.for": "For",
608
- "insightAlert.config.warning.destination": "The selected destination only supports sending the alert to yourself.",
690
+ "insightAlert.config.missingThreshold": "Error: Required field — please enter a threshold value to continue.",
691
+ "insightAlert.config.selectMetric": "Select a metric",
609
692
  "insightAlert.config.selectAttribute": "All",
610
- "addPanel.dashboardLayout": "Column container",
611
- "addPanel.dashboardLayout.tooltip": "Create a vertical group of widgets arranged in a single column within your section. Ideal for stacking multiple items.",
612
- "nestedLayoutToolbar.remove": "Remove from dashboard.",
613
- "nestedLayout.tab.title": "Container",
614
- "nestedLayout.emptyDropZone.message": "<b>Drag here</b>{br}to add to the container",
615
- "insightAlert.config.and": "and",
616
- "insightAlert.config.for.filter": "for {granularity}",
617
- "insightAlert.config.compare_with_sp_granularity": "same {period} previous year",
618
- "insightAlert.config.compare_with_pp_granularity": "previous {period}",
693
+ "insightAlert.config.accessbility.input": "Condition value",
694
+ "alert.accessibility.destination.label": "Select how to send the alert",
619
695
  "granularity.this_keyword": "This",
620
696
  "granularity.year": "year",
621
697
  "granularity.week": "week",
@@ -624,188 +700,26 @@
624
700
  "granularity.date": "day",
625
701
  "granularity.hour": "hour",
626
702
  "granularity.minute": "minute",
627
- "options.menu.unsupported.schedulingForInsightNotEnabled": "You cannot schedule an export for this widget.",
628
- "options.menu.unsupported.alertingForInsightNotEnabled": "You cannot create an alert for this widget.",
629
- "nestedLayoutToolbar.hideHeader": "Hide title and description.",
630
- "nestedLayoutToolbar.showHeader": "Show title and description.",
631
- "dialogs.schedule.email.user.invalid.external": "Error: The following recipients don’t have the required access — remove them to continue: {recipients}.",
632
- "dialogs.schedule.email.user.used.external": "The email “{email}” does not belong to this workspace. The recipient may receive sensitive data.",
633
- "dialogs.schedule.email.user.warning.external": "Warning: External recipient — “{email}” will receive the same dashboard view as you.",
634
- "dialogs.schedule.email.user.guest": "(guest)",
635
- "dialogs.schedule.email.user.unknown": "This is an unknown user and cannot be added as a recipient.",
636
- "dialogs.schedule.email.user.notMe": "This user is not permitted. Only you can be the recipient.",
637
- "dropzone.widget.last.in.container.row.desc": "Drop to the <b>existing container</b>",
638
- "nestedLayout.emptyDropZone.active.message": "<b>DROP here</b>{br}to add to the container",
639
- "insightAlert.config.accessbility.input": "Condition value",
640
- "insightAlert.config.accessbility.dropdown": "Condition type",
641
- "alert.accessibility.destination.label": "Select how to send the alert",
642
- "insightAlert.config.action": "Action",
643
- "insightAlert.config.name": "Name",
644
- "insightAlert.config.accessibility.title": "Custom name of the alert",
645
- "options.menu.export": "Export",
646
- "options.menu.export.header.data": "Data",
647
- "options.menu.export_to_pdf": "Export to PDF",
648
- "options.menu.export.EXCEL": "Data (.xlsx)",
649
- "options.menu.export.presentation.PPTX": "Slide Deck (.pptx)",
650
- "options.menu.export.presentation.PDF": "Slide Deck (.pdf)",
651
- "options.menu.export.in.progress": "Export is in progress. Please wait until it is completed before attempting to export again.",
652
- "dialogs.schedule.accessibility.label.email.title": "Schedule name",
653
703
  "widget.options.menu.export": "Export",
654
- "options.menu.export.presentation.unsupported.oldWidget": "Unable to export. Please resave the dashboard or contact your administrator.",
655
- "apply": "Apply",
656
- "options.menu.settings": "Settings",
657
- "messages.dashboard.incompatibleDefaultFilters.title": "<b>Warning</b> Some dashboard filters couldn’t be applied. Check the filters to make sure you’re viewing the right data.",
658
- "filterBar.unappliedFiltersNotification": "<link>Apply filters</link> to see updated data.",
659
- "filterBar.executionTimestampNotificationMessage": "<bold>Note.</bold> You're viewing up-to-date data, but for any relative date filters the dashboard treats {date} as “today.”",
660
- "filterBar.executionTimestampNotificationAction": "<link>Reset to today</link>",
661
- "settingsDashboardDialog.headline": "Dashboard settings",
662
- "settingsDashboardDialog.section.alert": "Alerts",
663
- "settingsDashboardDialog.section.alert.inherit": "Use the default evaluation frequency set by your organisation.",
664
- "settingsDashboardDialog.section.alert.note": "<strong>Note:</strong> Applies to new alerts only — use the API to update existing ones.",
665
- "settingsDashboardDialog.section.alert.label": "Evaluation Frequency",
666
- "dialogs.schedule.email.user.remove": "Remove {name}",
667
- "dialogs.schedule.email.closeLabel": "Close dialogue",
668
- "dialogs.schedule.email.backLabel": "Back to the previous step.",
669
- "dialogs.schedule.email.save.executionTimestampMode": "To create or edit scheduled exports, reset the dashboard date to today.",
670
- "dialogs.schedule.management.attachments.attachment": "Attach as a {format} file.",
671
- "messages.settingsDialogError.general": "Failed to load the dashboard settings. Please try again later.",
672
- "widget.options.menu.XLSX": "Formatted (.xlsx)",
673
- "widget.options.menu.exportToCSV.formatted": "Formatted (.csv)",
674
- "widget.options.menu.exportToCSV.raw": "Raw (.csv)",
675
- "widget.drill.dialog.exportToXLSX": "Formatted (.xlsx)",
676
- "widget.drill.dialog.exportToCSV.formatted": "Formatted (.csv)",
677
- "widget.drill.dialog.exportToCSV.raw": "Raw (.csv)",
678
- "controlButtons.edit.executionTimestampMode.tooltip": "To edit the dashboard, reset the date to today.",
679
- "controlButtons.setting.value": "Settings",
680
- "controlButtons.setting.title": "All settings related to this dashboard. You can change the dashboard description, cross-filtering, saved filters allowed, and alerts evaluation frequency.",
681
- "insightAlert.executionTimestampMode": "To create or edit alerts, reset the dashboard date to today.",
682
- "dialogs.schedule.email.accessibilityTitle": "Scheduled e-mails",
683
- "dialogs.schedule.error.too_long": "Error: Text too long — reduce to {value} characters or fewer.",
684
- "dialogs.schedule.email.filters.showAll": "Show all",
685
- "dialogs.schedule.email.filters.showLess": "Show less",
686
- "dialogs.schedule.email.filters.add": "Add filter",
687
- "dialogs.schedule.email.filters.title": "Add filters",
688
- "dialogs.schedule.email.filters.noFilters": "No more filters available",
689
- "dialogs.schedule.email.filters.attachment": "Use filters in automation",
690
- "dialogs.schedule.email.filters.useFiltersMessage": "Always use these filters for future exports",
691
- "dialogs.schedule.email.filters.useFiltersMessage.tooltip": "Tick to retain these filters for each export. If unticked, the export will utilise the most recent default filters from the dashboard. <a>Learn more</a>",
692
- "dialogs.schedule.email.filters.activeFilters": "Note: These filters will always be used for future exports.",
693
- "dialogs.schedule.email.filters.missing": "<b>Warning:</b> Some filters couldn’t be applied — they’re no longer available on the dashboard.",
694
- "visualization.warning.export.too_small": "Not enough space for visualisation",
695
- "dialogs.alert.error.too_long": "Error: Text too long — reduce to {value} characters or fewer.",
696
- "dialogs.alert.title.placeholder": "Alert name",
697
- "dialogs.alert.accessibility.label.title": "Alert name",
698
- "dialogs.schedule.email.usersLoad.error": "Error: Unable to load users — try again later.",
699
- "dialogs.schedule.email.user.missing.email.tooltip": "Error: This recipient has an invalid email address.",
700
- "dialogs.schedule.email.user.invalid.external.tooltip": "Error: This recipient does not have the required access.",
701
- "dialogs.schedule.email.user.invalid.onlyYou": "Error: Only you can be a recipient — remove others to continue.",
702
- "dialogs.schedule.email.user.noMatch": "No matching users or groups.",
703
- "dialogs.schedule.email.recipients.note": "Note: All recipients marked as “(guest)” will receive the same dashboard view as you.",
704
- "dialogs.alert.backLabel": "Back to the previous step.",
705
- "dialogs.alert.closeLabel": "Close dialogue",
706
- "dialogs.alert.save.executionTimestampMode": "To create or edit alerts, reset the dashboard date to today.",
707
- "dialogs.automation.filters.showAll": "Show all",
708
- "dialogs.automation.filters.showLess": "Show less",
709
- "dialogs.automation.filters.add": "Add filter",
710
- "dialogs.automation.filters.title": "Add filter",
711
- "dialogs.automation.filters.noFilters": "No more filters available",
712
- "dialogs.automation.filters.attachment": "Use filters in automation",
713
- "dialogs.automation.filters.useFiltersMessage": "Always use these filters for future exports",
714
- "dialogs.automation.filters.useFiltersMessage.tooltip": "Select this option to retain these filters for every export. If not selected, the export will apply the most recent default filters from the dashboard.",
715
- "dialogs.automation.filters.activeFilters": "Note: These filters will always be used for future exports.",
716
- "dialogs.automation.filters.missing": "<b>Warning:</b> Some filters couldn’t be applied — they’re no longer available on the dashboard.",
717
- "dialogs.alerting.create.error": "Failed to create alert. Try again later.",
718
- "dialogs.alerting.create.success": "Alert created successfully.",
719
- "dialogs.alerting.update.error": "Failed to update alert. Try again later.",
720
- "dialogs.alerting.update.success": "Alert updated successfully.",
721
- "controlButtons.options.back": "Back to the previous step.",
722
- "controlButtons.options.close": "Close",
723
- "insightAlert.config.condition": "Condition",
724
- "insightAlert.config.threshold": "Threshold",
725
- "insightAlert.config.comparison": "Comparison",
726
- "insightAlert.config.recipients": "Recipients",
727
- "insightAlert.config.do": "Do",
728
- "options.menu.data.too.large": "Export unavailable due to too many data points in the result.",
729
- "options.menu.unsupported.raw.error": "Export unavailable due to too many data points or error in the result.",
730
- "drill_modal_picker.label": "Select drill action",
731
- "dialogs.schedule.email.recipients.label": "Recipients",
732
- "controlButtons.options.closeMenu": "Close menu",
733
704
  "menu.close": "Close menu",
734
- "options.menu.export.dialog.EXCEL": "Export data (.xlsx)",
735
- "options.menu.export.dialog.widget.EXCEL": "Export formatted data (.xlsx)",
736
- "options.menu.export.dialog.includeExportInfo": "Include sheet with export information",
737
- "options.menu.export.image.PNG": "Snapshot (.png)",
738
- "dialogs.automation.filters.showAll.ariaLabel": "Expand to display all applied filters",
739
- "dialogs.automation.filters.showLess.ariaLabel": "Collapse to display fewer applied filters",
740
- "dialogs.automation.applyCurrentFilters.confirm.title": "Edit with current filters",
741
- "dialogs.automation.applyCurrentFilters.confirm.submit": "Edit",
742
- "dialogs.automation.applyCurrentFilters.alert.confirm": "<b>Warning</b>: Some filters used when this alert was created are no longer available or valid. Editing will apply the current dashboard filters",
743
- "dialogs.automation.applyCurrentFilters.schedule.confirm": "<b>Warning</b>: Some filters used when this schedule was created are no longer available or valid. Editing will apply the current dashboard filters",
744
- "options.menu.unsupported.xlsxOldWidget": "Unable to export. Please resave the dashboard or contact your administrator.",
745
- "filterBar.label": "Filters",
746
- "controlButtons.asTable": "Show as table",
705
+ "controlButtons.asTable": "Display as table",
747
706
  "controlButtons.asOriginal": "Show original visualisation",
748
- "messages.shareLinkCopied": "Link copied",
749
- "addPanel.dashboardLayout.tooltip.learnMore": "Learn more",
750
- "nestedLayoutToolbar.direction.title": "Layout orientation",
751
- "nestedLayoutToolbar.direction.row": "Wrapped Row",
752
- "nestedLayoutToolbar.direction.row.tooltip": "Layout direction: Wrapped Row",
753
- "nestedLayoutToolbar.direction.column": "Column",
754
- "nestedLayoutToolbar.direction.column.tooltip": "Layout direction: Column",
755
- "nestedLayoutToolbar.direction.column.disabledTooltip": "Direction cannot be changed to a vertical if the container contains nested containers with a horizontal direction",
756
- "dialogs.schedule.management.attachments.exportInfo": "Include sheet with export information",
757
- "dialogs.schedule.management.attachments.title": "Attachments",
758
- "scheduledEmail.attachmentFormat.widget.png": "Snapshot (.png)",
759
- "scheduledEmail.attachmentFormat.widget.pptx": "Single Slide (.pptx)",
760
- "scheduledEmail.attachmentFormat.widget.pdf": "Single Slide (.pdf)",
761
- "scheduledEmail.attachmentFormat.widget.formattedXLSX": "Formatted data (.xlsx)",
762
- "scheduledEmail.attachmentFormat.widget.formattedCSV": "Formatted data (.csv)",
763
- "scheduledEmail.attachmentFormat.widget.rawCSV": "Raw data (.csv file)",
764
- "scheduledEmail.attachmentFormat.dashboard.pptx": "Slide Deck (.pptx)",
765
- "scheduledEmail.attachmentFormat.dashboard.pdf": "Snapshot (.pdf)",
766
- "scheduledEmail.attachmentFormat.dashboard.formattedXLSX": "Data (.xlsx)",
767
- "scheduledEmail.attachmentFormat.dashboard.pdfSlides": "Slide Deck (.pdf)",
768
- "scheduledEmail.attachments.warning.noAttachmentsSelected": "<strong>Warning:</strong> Scheduled exports require at least one attachment — please select an option to proceed",
769
- "scheduledEmail.attachments.error.noAttachmentsSelected": "Error: No attachments selected — please select at least one attachment to schedule an export.",
770
- "filterBar.invalidFilterSelection": "To apply changes, select valid values for these filters: {names}",
771
- "dialogs.automation.filters.schedule.ariaLabel": "Information about the option: Always apply these filters for future exports",
772
- "dialogs.schedule.management.attachments.delete": "Delete {format} attachment",
773
- "filter.resetButton.ariaLabel": "Reset filters to default settings",
774
- "filters.filterViews.tooltip.ariaLabel": "Information about Saved Views",
775
- "widget.options.menu.exportToPDF.formatted": "Formatted (.pdf)",
776
- "options.menu.alert": "Alert",
777
- "dialogs.schedule.email.evaluation.mode.shared": "Use the same attachments for all recipients",
778
- "dialogs.schedule.email.evaluation.mode.tooltip": "Enable to send the same file to all recipients. Disable to send files that reflect each recipient’s data access permissions.",
779
- "dialogs.alerting.management.create": "Create",
780
- "widget.options.menu.alert": "Alert",
781
- "filter.resetButton.success": "Success: Filters reset to default values.",
782
707
  "controlButtons.announcement.switchedToTable": "Visualisation switched to table view",
783
708
  "controlButtons.announcement.switchedToOriginal": "Visualisation reverted to original view",
784
- "dashboard.crossFilter.success": "Success: {count, plural, one {# filter} other {# filters}} applied from the chart.",
785
- "messages.exportResultError.tooManyRows": "Export failed. Too many rows ({actual}). Limit is {limit}.",
786
- "filters.filterViews.dropdown.setAsDefault.ariaLabel": "Set {name} as default",
787
- "filters.filterViews.dropdown.unsetAsDefault.ariaLabel": "Remove {name} as default",
788
- "filters.filterViews.list.ariaLabel.withActions": "List of saved views. Use the right arrow key to navigate to the ‘Set as default’ action, then to the ‘delete’ action.",
789
- "filters.filterViews.list.ariaLabel.noActions": "List of saved views",
790
- "filters.filterViews.add.deleteTooltip.ariaLabel": "Delete {name}",
791
- "widget.drill.dialog.exportToPDF": "Formatted (.pdf)",
792
- "dialogs.automation.filters.showAll.ariaDescription": "Use to display all filters.",
793
- "dialogs.automation.filters.showLess.ariaDescription": "Use to display fewer filters.",
794
- "dialogs.automation.filters.addDisabled": "Add filter disabled — all filters have been added.",
795
- "dialogs.automation.filters.searchAriaLabel": "Search filters",
796
- "dialogs.automation.filters.deleteAriaLabel": "Remove filter",
797
- "dialogs.automation.filters.deleteTooltip": "Remove filter",
798
- "dialogs.automation.filters.lockedTooltip": "This filter is locked and cannot be removed.",
799
- "options.menu.unsupported.oldWidgetExport": "Unable to export. Please resave the dashboard or contact your administrator.",
800
- "insightAlert.config.missingThreshold": "Error: Required field — please enter a threshold value to continue.",
801
709
  "automationFilters.announcement.filterAdded": "Filter {title} added.",
802
710
  "automationFilters.announcement.filterRemoved": "Filter {title} removed.",
803
711
  "automationFilters.announcement.filterChanged": "Filter {title} updated.",
712
+ "dashboard.crossFilter.success": "Success: {count, plural, one {# filter} other {# filters}} applied from the chart.",
713
+ "kdaDialog.dialog.filters.title": "Filters",
714
+ "kdaDialog.dialog.filters.noFilters": "No filters",
715
+ "kdaDialog.dialog.filters.add.tooltip": "Add filter",
716
+ "kdaDialog.dialog.filters.search": "Search",
804
717
  "kdaDialog.dialog.title": "Key driver analysis for {metric}",
805
718
  "kdaDialog.dialog.closeLabel": "Close",
806
719
  "kdaDialog.dialog.bars.metric.title": "Metric",
807
720
  "kdaDialog.dialog.bars.filters.title": "Filters",
808
721
  "kdaDialog.dialog.bars.date.title": "Date range: {title}",
722
+ "kdaDialog.dialog.bars.date.splitter": "vs",
809
723
  "kdaDialog.dialog.keyDrives.title": "Key drivers",
810
724
  "kdaDialog.dialog.keyDrives.tooltip": "List of key drivers sorted by impact",
811
725
  "kdaDialog.dialog.keyDrives.button.trendUp": "Increasing ({count})",
@@ -813,6 +727,7 @@
813
727
  "kdaDialog.dialog.keyDrives.overview.summary.title": "Analysis summary",
814
728
  "kdaDialog.dialog.keyDrives.overview.summary.drivers.description": "Tested {combinations} variants with <button>{attributes} attributes</button>",
815
729
  "kdaDialog.dialog.keyDrives.overview.summary.drivers.attributes": "Attributes",
730
+ "kdaDialog.dialog.keyDrives.overview.diff.title": "Difference",
816
731
  "kdaDialog.dialog.keyDrives.overview.detail.tip": "Click on column to view key drivers for given {category}",
817
732
  "kdaDialog.dialog.keyDrives.overview.detail.title": "Change in {title} by {category}",
818
733
  "kdaDialog.dialog.keyDrives.overview.detail.table.attribute": "Attribute",
@@ -823,71 +738,22 @@
823
738
  "kdaDialog.dialog.bars.date.period.samePeriodPreviousYear": "Same period previous year",
824
739
  "kdaDialog.dialog.bars.date.period.previousPeriod": "Previous period",
825
740
  "kdaDialog.dialog.keyDrives.empty_up": "No increasing drivers",
826
- "kdaDialog.dialog.keyDrives.empty_down": "No decreasing factors",
827
- "dialogs.automation.attachments.add": "Add attachments",
741
+ "kdaDialog.dialog.keyDrives.empty_down": "No decreasing drivers",
742
+ "kdaDialog.dialog.keyDrives.empty": "No key drivers",
743
+ "kdaDialog.dialog.keyDriver.chart.std": "Modify Significance Threshold",
828
744
  "menu.back": "Return to the parent menu",
829
- "drill_modal_picker.key-driver-analysis": "Explain",
830
- "kdaDialog.dialog.bars.date.splitter": "vs",
831
745
  "drill.kda.from": "from",
832
746
  "drill.kda.in": "in",
833
- "drill.kda.drop": "Remove {where} {title}",
747
+ "drill.kda.drop": "Drop {where} {title}",
834
748
  "drill.kda.increase": "Increase {where} {title}",
835
749
  "drill.kda.no_change": "Outdated {where} {title}",
836
750
  "drill.kda.year_to_year": "Year on year change",
837
- "dialogs.schedule.email.userAndEmail.remove": "Remove {name} ({email})",
838
- "kdaDialog.dialog.keyDrives.overview.diff.title": "Difference",
839
- "kdaDialog.dialog.keyDrives.empty": "No key drivers",
840
- "kdaDialog.dialog.keyDriver.chart.std": "Modify Significance Threshold",
841
- "kdaDialog.dialog.filters.title": "Filters",
842
- "kdaDialog.dialog.filters.noFilters": "No filters",
843
- "kdaDialog.dialog.filters.add.tooltip": "Add filter",
844
- "kdaDialog.dialog.filters.search": "Search",
845
- "settingsDashboardDialog.sectionHeaders.dateDataset": "Date range in descriptions",
846
- "settingsDashboardDialog.sectionHeaders.dateDataset.tooltip": "Date dataset utilised by the Date range filter for metric references in section descriptions.",
847
- "dateDataset.autoSelect": "Auto-select",
848
- "dateDataset.notFound": "Not found",
849
- "dialogs.schedule.email.tabs.general": "General",
850
- "dialogs.schedule.email.tabs.filters": "Filters",
851
751
  "dashboard.tabs.default.label": "Untitled tab",
852
- "dashboard.tabs.accessibility.label": "Dashboard tabs",
853
- "messages.dashboard.invalidDrills.body.modern": "One or more dashboard/visualisation/metric/attribute has been changed or deleted causing some interactions to be removed from following widgets: <b>{listOfWidgetTitles}</b>",
854
- "dialogs.alert.tabs.general": "General",
855
- "dialogs.alert.tabs.filters": "Filters",
856
- "dialogs.schedule.management.create.new": "Create new",
857
- "scheduledEmail.attachmentFormat.widget.pdfTabular": "Formatted data (.pdf)",
858
- "dialogs.alerting.management.create.new": "Create new",
859
- "dialogs.alerting.create.noMeasure.tooltip": "Creating an alert requires a metric. Use a widget with at least one metric",
860
- "options.menu.unsupported.error": "The visualisation can't be exported at the moment. Try applying different filters, or using different metrics or attributes.",
861
- "configurationPanel.drillConfig.targetTab": "to tab",
862
- "configurationPanel.drillConfig.measureValue": "Value of metric",
863
- "configurationPanel.visualprops.includeMetrics": "Include metric descriptions",
864
- "configurationPanel.visualprops.includeMetricsHelp": "Display section with list of visualisation's metrics and their description.",
865
- "insightAlert.config.aiOperator.header": "AI",
866
- "insightAlert.config.aiOperator.header.info": "All AI operators are based on the AI functions",
867
- "insightAlert.config.anomalyDetection": "Anomaly detection",
868
- "insightAlert.config.sensitivity": "Sensitivity",
869
- "insightAlert.config.sensitivity.low": "Low",
870
- "insightAlert.config.sensitivity.medium": "Medium",
871
- "insightAlert.config.sensitivity.high": "High",
872
- "insightAlert.config.granularity": "Aggregate by",
873
- "insightAlert.config.granularity.minute": "Minutes",
874
- "insightAlert.config.granularity.hour": "Hours",
875
- "insightAlert.config.granularity.day": "Days",
876
- "insightAlert.config.granularity.week": "Weeks",
877
- "insightAlert.config.granularity.month": "Months",
878
- "insightAlert.config.granularity.quarter": "Quarters",
879
- "insightAlert.config.granularity.year": "Years",
880
752
  "dashboard.tabs.move.left": "Move left",
881
753
  "dashboard.tabs.move.right": "Move right",
882
754
  "dashboard.tabs.delete.disabled-tooltip": "You cannot delete the last tab. Tab navigation will not be visible in view mode when only one tab remains.",
755
+ "dashboard.tabs.add-button-tooltip": "Add new tab",
883
756
  "dashboard.tabs.rename": "Rename",
884
- "dashboard.tabs.accessibility.add-button-label": "Add new tab",
885
- "dialogs.automation.filters.tab.label": "TAB",
886
- "dialogs.automation.filters.tab.untitled": "Tab",
887
- "dialogs.schedule.email.tabs.info": "All tabs in the dashboard are included — a separate file is created for each tab and export format",
888
- "visualization.ErrorMessageResultCacheMissing": "Visualisation needs refresh",
889
- "visualization.ErrorDescriptionResultCacheMissing": "The underlying data has changed or expired. Please refresh the page.",
890
- "insightAlert.config.granularity.tooltip": "Set how the data is aggregated before checking for anomalies",
891
- "insightAlert.config.metric": "Metric",
892
- "dashboard.tabs.add-button-tooltip": "Add new tab"
757
+ "dashboard.tabs.accessibility.label": "Dashboard tabs",
758
+ "dashboard.tabs.accessibility.add-button-label": "Add new tab"
893
759
  }