@grafana/scenes 6.27.3--canary.1189.16466706909.0 → 6.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/esm/components/VizPanel/VizPanelMenu.js +0 -1
  3. package/dist/esm/components/VizPanel/VizPanelMenu.js.map +1 -1
  4. package/dist/esm/locales/cs-CZ/grafana-scenes.json.js +151 -0
  5. package/dist/esm/locales/cs-CZ/grafana-scenes.json.js.map +1 -0
  6. package/dist/esm/locales/de-DE/grafana-scenes.json.js +151 -0
  7. package/dist/esm/locales/de-DE/grafana-scenes.json.js.map +1 -0
  8. package/dist/esm/locales/en-US/grafana-scenes.json.js +1 -0
  9. package/dist/esm/locales/en-US/grafana-scenes.json.js.map +1 -1
  10. package/dist/esm/locales/es-ES/grafana-scenes.json.js +151 -0
  11. package/dist/esm/locales/es-ES/grafana-scenes.json.js.map +1 -0
  12. package/dist/esm/locales/fr-FR/grafana-scenes.json.js +151 -0
  13. package/dist/esm/locales/fr-FR/grafana-scenes.json.js.map +1 -0
  14. package/dist/esm/locales/hu-HU/grafana-scenes.json.js +151 -0
  15. package/dist/esm/locales/hu-HU/grafana-scenes.json.js.map +1 -0
  16. package/dist/esm/locales/id-ID/grafana-scenes.json.js +151 -0
  17. package/dist/esm/locales/id-ID/grafana-scenes.json.js.map +1 -0
  18. package/dist/esm/locales/it-IT/grafana-scenes.json.js +151 -0
  19. package/dist/esm/locales/it-IT/grafana-scenes.json.js.map +1 -0
  20. package/dist/esm/locales/ja-JP/grafana-scenes.json.js +151 -0
  21. package/dist/esm/locales/ja-JP/grafana-scenes.json.js.map +1 -0
  22. package/dist/esm/locales/ko-KR/grafana-scenes.json.js +151 -0
  23. package/dist/esm/locales/ko-KR/grafana-scenes.json.js.map +1 -0
  24. package/dist/esm/locales/nl-NL/grafana-scenes.json.js +151 -0
  25. package/dist/esm/locales/nl-NL/grafana-scenes.json.js.map +1 -0
  26. package/dist/esm/locales/pl-PL/grafana-scenes.json.js +151 -0
  27. package/dist/esm/locales/pl-PL/grafana-scenes.json.js.map +1 -0
  28. package/dist/esm/locales/pt-BR/grafana-scenes.json.js +151 -0
  29. package/dist/esm/locales/pt-BR/grafana-scenes.json.js.map +1 -0
  30. package/dist/esm/locales/pt-PT/grafana-scenes.json.js +151 -0
  31. package/dist/esm/locales/pt-PT/grafana-scenes.json.js.map +1 -0
  32. package/dist/esm/locales/ru-RU/grafana-scenes.json.js +151 -0
  33. package/dist/esm/locales/ru-RU/grafana-scenes.json.js.map +1 -0
  34. package/dist/esm/locales/sv-SE/grafana-scenes.json.js +151 -0
  35. package/dist/esm/locales/sv-SE/grafana-scenes.json.js.map +1 -0
  36. package/dist/esm/locales/tr-TR/grafana-scenes.json.js +151 -0
  37. package/dist/esm/locales/tr-TR/grafana-scenes.json.js.map +1 -0
  38. package/dist/esm/locales/zh-Hans/grafana-scenes.json.js +151 -0
  39. package/dist/esm/locales/zh-Hans/grafana-scenes.json.js.map +1 -0
  40. package/dist/esm/locales/zh-Hant/grafana-scenes.json.js +151 -0
  41. package/dist/esm/locales/zh-Hant/grafana-scenes.json.js.map +1 -0
  42. package/dist/esm/utils/loadResources.js +18 -0
  43. package/dist/esm/utils/loadResources.js.map +1 -1
  44. package/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +11 -2
  45. package/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js.map +1 -1
  46. package/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +1 -1
  47. package/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js.map +1 -1
  48. package/dist/esm/variables/adhoc/AdHocFiltersVariable.js +42 -24
  49. package/dist/esm/variables/adhoc/AdHocFiltersVariable.js.map +1 -1
  50. package/dist/grafana-scenes-B0JDDOYY.js +153 -0
  51. package/dist/{grafana-scenes-DCHONTnD.js.map → grafana-scenes-B0JDDOYY.js.map} +1 -1
  52. package/dist/grafana-scenes-B3ypGD5T.js +153 -0
  53. package/dist/grafana-scenes-B3ypGD5T.js.map +1 -0
  54. package/dist/grafana-scenes-BGCbMCFm.js +153 -0
  55. package/dist/grafana-scenes-BGCbMCFm.js.map +1 -0
  56. package/dist/grafana-scenes-Br6NPcwR.js +153 -0
  57. package/dist/grafana-scenes-Br6NPcwR.js.map +1 -0
  58. package/dist/grafana-scenes-CBRfJ-2H.js +153 -0
  59. package/dist/grafana-scenes-CBRfJ-2H.js.map +1 -0
  60. package/dist/grafana-scenes-COr0P0oM.js +153 -0
  61. package/dist/grafana-scenes-COr0P0oM.js.map +1 -0
  62. package/dist/grafana-scenes-CY85TD5F.js +153 -0
  63. package/dist/grafana-scenes-CY85TD5F.js.map +1 -0
  64. package/dist/grafana-scenes-CeVkPanY.js +153 -0
  65. package/dist/grafana-scenes-CeVkPanY.js.map +1 -0
  66. package/dist/grafana-scenes-CgIzGE5F.js +153 -0
  67. package/dist/grafana-scenes-CgIzGE5F.js.map +1 -0
  68. package/dist/grafana-scenes-CqRf9pRc.js +153 -0
  69. package/dist/grafana-scenes-CqRf9pRc.js.map +1 -0
  70. package/dist/grafana-scenes-Cub9Gl0n.js +153 -0
  71. package/dist/grafana-scenes-Cub9Gl0n.js.map +1 -0
  72. package/dist/grafana-scenes-D5qs_fc9.js +153 -0
  73. package/dist/grafana-scenes-D5qs_fc9.js.map +1 -0
  74. package/dist/grafana-scenes-DObtL2WT.js +153 -0
  75. package/dist/grafana-scenes-DObtL2WT.js.map +1 -0
  76. package/dist/grafana-scenes-DXM1LI4B.js +153 -0
  77. package/dist/grafana-scenes-DXM1LI4B.js.map +1 -0
  78. package/dist/grafana-scenes-DlUSL8jI.js +153 -0
  79. package/dist/grafana-scenes-DlUSL8jI.js.map +1 -0
  80. package/dist/grafana-scenes-Dy2CLUY9.js +153 -0
  81. package/dist/grafana-scenes-Dy2CLUY9.js.map +1 -0
  82. package/dist/grafana-scenes-YMli37Xh.js +153 -0
  83. package/dist/grafana-scenes-YMli37Xh.js.map +1 -0
  84. package/dist/grafana-scenes-n10eQkNF.js +153 -0
  85. package/dist/grafana-scenes-n10eQkNF.js.map +1 -0
  86. package/dist/{grafana-scenes-DCHONTnD.js → grafana-scenes-uBsCv-Bu.js} +2 -1
  87. package/dist/grafana-scenes-uBsCv-Bu.js.map +1 -0
  88. package/dist/index.d.ts +2 -1
  89. package/dist/index.js +73 -29
  90. package/dist/index.js.map +1 -1
  91. package/package.json +2 -2
@@ -0,0 +1,153 @@
1
+ 'use strict';
2
+
3
+ var grafanaScenes = {
4
+ "grafana-scenes": {
5
+ components: {
6
+ "adhoc-filter-pill": {
7
+ "edit-filter-with-key": "Editar filtro con la clave {{keyLabel}}",
8
+ "managed-filter": "Filtro gestionado de {{origin}}",
9
+ "remove-filter-with-key": "Eliminar filtro con la clave {{keyLabel}}"
10
+ },
11
+ "adhoc-filters-combobox": {
12
+ "remove-filter-value": "Eliminar valor del filtro: {{itemLabel}}",
13
+ "use-custom-value": "Usar valor personalizado: {{itemLabel}}"
14
+ },
15
+ "fallback-page": {
16
+ content: "Si ha llegado hasta aquí mediante un enlace, es posible que haya un error en esta aplicación.",
17
+ subTitle: "La URL no coincide con ninguna página",
18
+ title: "No se ha encontrado"
19
+ },
20
+ "nested-scene-renderer": {
21
+ "collapse-button-label": "Contraer escena",
22
+ "expand-button-label": "Expandir escena",
23
+ "remove-button-label": "Eliminar escena"
24
+ },
25
+ "scene-debugger": {
26
+ "object-details": "Detalles del objeto",
27
+ "scene-graph": "Gráfico de la escena",
28
+ "title-scene-debugger": "Depurador de escenas"
29
+ },
30
+ "scene-grid-row": {
31
+ "collapse-row": "Contraer fila",
32
+ "expand-row": "Expandir fila"
33
+ },
34
+ "scene-time-range-compare-renderer": {
35
+ "button-label": "Comparación",
36
+ "button-tooltip": "Habilitar comparación de intervalos de tiempo"
37
+ },
38
+ splitter: {
39
+ "aria-label-pane-resize-widget": "Widget de cambio de tamaño del panel"
40
+ },
41
+ "viz-panel": {
42
+ title: {
43
+ title: "Título"
44
+ }
45
+ },
46
+ "viz-panel-explore-button": {
47
+ explore: "Explorar"
48
+ },
49
+ "viz-panel-renderer": {
50
+ "loading-plugin-panel": "Cargando panel de plugins...",
51
+ "panel-plugin-has-no-panel-component": "El plugin del panel no tiene ningún componente de panel"
52
+ },
53
+ "viz-panel-series-limit": {
54
+ "content-rendering-series-single-panel-impact-performance": "Representar demasiadas series en un solo panel puede afectar al rendimiento y dificultar la lectura de los datos.",
55
+ "warning-message": "Mostrando solo {{seriesLimit}} serie(s)"
56
+ }
57
+ },
58
+ utils: {
59
+ "controls-label": {
60
+ "tooltip-remove": "Eliminar"
61
+ },
62
+ "loading-indicator": {
63
+ "content-cancel-query": "Cancelar consulta"
64
+ }
65
+ },
66
+ variables: {
67
+ "ad-hoc-combobox": {
68
+ "aria-label-edit-filter-operator": "Editar operador de filtro"
69
+ },
70
+ "ad-hoc-filter-builder": {
71
+ "aria-label-add-filter": "Añadir filtro",
72
+ "title-add-filter": "Añadir filtro"
73
+ },
74
+ "ad-hoc-filter-renderer": {
75
+ "aria-label-remove-filter": "Eliminar filtro",
76
+ "key-select": {
77
+ "placeholder-select-label": "Seleccionar etiqueta"
78
+ },
79
+ "label-select-label": "Seleccionar etiqueta",
80
+ "title-remove-filter": "Eliminar filtro",
81
+ "value-select": {
82
+ "placeholder-select-value": "Seleccionar valor"
83
+ }
84
+ },
85
+ "data-source-variable": {
86
+ label: {
87
+ "default": "predeterminada"
88
+ }
89
+ },
90
+ "default-group-by-custom-indicator-container": {
91
+ "aria-label-clear": "borrar",
92
+ tooltip: "Aplicado de forma predeterminada en este dashboard. Si se edita, se transfiere a otros dashboards.",
93
+ "tooltip-restore-groupby-set-by-this-dashboard": "Restaura la función groupby definida por este dashboard."
94
+ },
95
+ "format-registry": {
96
+ formats: {
97
+ description: {
98
+ "commaseparated-values": "Valores separados por comas",
99
+ "double-quoted-values": "Valores entre comillas dobles",
100
+ "format-date-in-different-ways": "Dar formato a la fecha de diferentes maneras",
101
+ "format-multivalued-variables-using-syntax-example": "Dar formato a las variables de múltiples valores con la sintaxis glob, por ejemplo, {value1,value2}",
102
+ "html-escaping-of-values": "Escape HTML de valores",
103
+ "json-stringify-value": "Valor de JSON stringify",
104
+ "keep-value-as-is": "Mantener el valor tal cual",
105
+ "multiple-values-are-formatted-like-variablevalue": "Los valores múltiples tienen el formato variable=valor",
106
+ "single-quoted-values": "Valores entre comillas simples",
107
+ "useful-escaping-values-taking-syntax-characters": "Útil para valores de escape URL, utilizando caracteres de sintaxis URI",
108
+ "useful-for-url-escaping-values": "Útil para valores de escape URL",
109
+ "values-are-separated-by-character": "Los valores están separados por el carácter |"
110
+ }
111
+ }
112
+ },
113
+ "group-by-variable-renderer": {
114
+ "aria-label-group-by-selector": "Agrupar por selector",
115
+ "placeholder-group-by-label": "Agrupar por etiqueta"
116
+ },
117
+ "interval-variable": {
118
+ "placeholder-select-value": "Seleccionar valor"
119
+ },
120
+ "loading-options-placeholder": {
121
+ "loading-options": "Cargando opciones..."
122
+ },
123
+ "multi-value-apply-button": {
124
+ apply: "Aplicar"
125
+ },
126
+ "no-options-placeholder": {
127
+ "no-options-found": "No se han encontrado opciones"
128
+ },
129
+ "options-error-placeholder": {
130
+ "error-occurred-fetching-labels-click-retry": "Se ha producido un error al recuperar las etiquetas. Haga clic para volver a intentarlo"
131
+ },
132
+ "test-object-with-variable-dependency": {
133
+ title: {
134
+ hello: "Hola"
135
+ }
136
+ },
137
+ "test-variable": {
138
+ text: {
139
+ text: "Texto"
140
+ }
141
+ },
142
+ "variable-value-input": {
143
+ "placeholder-enter-value": "Introducir valor"
144
+ },
145
+ "variable-value-select": {
146
+ "placeholder-select-value": "Seleccionar valor"
147
+ }
148
+ }
149
+ }
150
+ };
151
+
152
+ exports.default = grafanaScenes;
153
+ //# sourceMappingURL=grafana-scenes-YMli37Xh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grafana-scenes-YMli37Xh.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,153 @@
1
+ 'use strict';
2
+
3
+ var grafanaScenes = {
4
+ "grafana-scenes": {
5
+ components: {
6
+ "adhoc-filter-pill": {
7
+ "edit-filter-with-key": "Filter mit Schlüssel {{keyLabel}} bearbeiten",
8
+ "managed-filter": "{{origin}} verwalteter Filter",
9
+ "remove-filter-with-key": "Filter mit Schlüssel {{keyLabel}} entfernen"
10
+ },
11
+ "adhoc-filters-combobox": {
12
+ "remove-filter-value": "Filterwert entfernen – {{itemLabel}}",
13
+ "use-custom-value": "Benutzerdefinierten Wert verwenden: {{itemLabel}}"
14
+ },
15
+ "fallback-page": {
16
+ content: "Wenn Sie über einen Link hierher gekommen sind, enthält diese Anwendung möglicherweise einen Fehler.",
17
+ subTitle: "Die URL stimmt mit keiner Seite überein",
18
+ title: "Nicht gefunden"
19
+ },
20
+ "nested-scene-renderer": {
21
+ "collapse-button-label": "Szene ausblenden",
22
+ "expand-button-label": "Szene einblenden",
23
+ "remove-button-label": "Szene entfernen"
24
+ },
25
+ "scene-debugger": {
26
+ "object-details": "Objektdetails",
27
+ "scene-graph": "Szenengraph",
28
+ "title-scene-debugger": "Szenen-Debugger"
29
+ },
30
+ "scene-grid-row": {
31
+ "collapse-row": "Zeile ausblenden",
32
+ "expand-row": "Zeile einblenden"
33
+ },
34
+ "scene-time-range-compare-renderer": {
35
+ "button-label": "Vergleich",
36
+ "button-tooltip": "Zeitrahmenvergleich aktivieren"
37
+ },
38
+ splitter: {
39
+ "aria-label-pane-resize-widget": "Widget zur Größenänderung des Bereichs"
40
+ },
41
+ "viz-panel": {
42
+ title: {
43
+ title: "Titel"
44
+ }
45
+ },
46
+ "viz-panel-explore-button": {
47
+ explore: "Entdecken"
48
+ },
49
+ "viz-panel-renderer": {
50
+ "loading-plugin-panel": "Plugin-Panel wird geladen …",
51
+ "panel-plugin-has-no-panel-component": "Das Panel-Plugin hat keine Panel-Komponente"
52
+ },
53
+ "viz-panel-series-limit": {
54
+ "content-rendering-series-single-panel-impact-performance": "Das Rendern von zu vielen Reihen in einem einzigen Panel kann die Leistung beeinträchtigen und das Lesen der Daten erschweren.",
55
+ "warning-message": "Es werden nur {{seriesLimit}} Reihen angezeigt"
56
+ }
57
+ },
58
+ utils: {
59
+ "controls-label": {
60
+ "tooltip-remove": "Entfernen"
61
+ },
62
+ "loading-indicator": {
63
+ "content-cancel-query": "Abfrage abbrechen"
64
+ }
65
+ },
66
+ variables: {
67
+ "ad-hoc-combobox": {
68
+ "aria-label-edit-filter-operator": "Filteroperator bearbeiten"
69
+ },
70
+ "ad-hoc-filter-builder": {
71
+ "aria-label-add-filter": "Filter hinzufügen",
72
+ "title-add-filter": "Filter hinzufügen"
73
+ },
74
+ "ad-hoc-filter-renderer": {
75
+ "aria-label-remove-filter": "Filter entfernen",
76
+ "key-select": {
77
+ "placeholder-select-label": "Label auswählen"
78
+ },
79
+ "label-select-label": "Label auswählen",
80
+ "title-remove-filter": "Filter entfernen",
81
+ "value-select": {
82
+ "placeholder-select-value": "Wert auswählen"
83
+ }
84
+ },
85
+ "data-source-variable": {
86
+ label: {
87
+ "default": "Standard"
88
+ }
89
+ },
90
+ "default-group-by-custom-indicator-container": {
91
+ "aria-label-clear": "löschen",
92
+ tooltip: "Wird in diesem Dashboard standardmäßig angewendet. Wenn es bearbeitet wird, wird es auf andere Dashboards übertragen.",
93
+ "tooltip-restore-groupby-set-by-this-dashboard": "Die Einstellung „Gruppieren nach“ von diesem Dashboard wiederherstellen."
94
+ },
95
+ "format-registry": {
96
+ formats: {
97
+ description: {
98
+ "commaseparated-values": "Kommagetrennte Werte",
99
+ "double-quoted-values": "Doppelt angegebene Werte",
100
+ "format-date-in-different-ways": "Datum auf verschiedene Arten formatieren",
101
+ "format-multivalued-variables-using-syntax-example": "Formatieren Sie mehrwertige Variablen mit der glob-Syntax, Beispiel {value1,value2}",
102
+ "html-escaping-of-values": "HTML-Escaping von Werten",
103
+ "json-stringify-value": "JSON-Stringify-Wert",
104
+ "keep-value-as-is": "Wert unverändert lassen",
105
+ "multiple-values-are-formatted-like-variablevalue": "Mehrere Werte werden als variable=value formatiert",
106
+ "single-quoted-values": "Einfach angegebene Werte",
107
+ "useful-escaping-values-taking-syntax-characters": "Nützlich für URL-Escaping-Werte, die URI-Syntaxzeichen nutzen",
108
+ "useful-for-url-escaping-values": "Nützlich für URL-Escaping-Werte",
109
+ "values-are-separated-by-character": "Werte werden durch das Zeichen | getrennt"
110
+ }
111
+ }
112
+ },
113
+ "group-by-variable-renderer": {
114
+ "aria-label-group-by-selector": "Nach Selektor gruppieren",
115
+ "placeholder-group-by-label": "Nach Label gruppieren"
116
+ },
117
+ "interval-variable": {
118
+ "placeholder-select-value": "Wert auswählen"
119
+ },
120
+ "loading-options-placeholder": {
121
+ "loading-options": "Optionen werden geladen …"
122
+ },
123
+ "multi-value-apply-button": {
124
+ apply: "Anwenden"
125
+ },
126
+ "no-options-placeholder": {
127
+ "no-options-found": "Keine Optionen gefunden"
128
+ },
129
+ "options-error-placeholder": {
130
+ "error-occurred-fetching-labels-click-retry": "Beim Abrufen der Label ist ein Fehler aufgetreten. Klicken Sie zum Wiederholen"
131
+ },
132
+ "test-object-with-variable-dependency": {
133
+ title: {
134
+ hello: "Hallo"
135
+ }
136
+ },
137
+ "test-variable": {
138
+ text: {
139
+ text: "Text"
140
+ }
141
+ },
142
+ "variable-value-input": {
143
+ "placeholder-enter-value": "Wert eingeben"
144
+ },
145
+ "variable-value-select": {
146
+ "placeholder-select-value": "Wert auswählen"
147
+ }
148
+ }
149
+ }
150
+ };
151
+
152
+ exports.default = grafanaScenes;
153
+ //# sourceMappingURL=grafana-scenes-n10eQkNF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grafana-scenes-n10eQkNF.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,6 +6,7 @@ var grafanaScenes = {
6
6
  "adhoc-filter-pill": {
7
7
  "edit-filter-with-key": "Edit filter with key {{keyLabel}}",
8
8
  "managed-filter": "{{origin}} managed filter",
9
+ "non-applicable": "Filter is not applicable",
9
10
  "remove-filter-with-key": "Remove filter with key {{keyLabel}}"
10
11
  },
11
12
  "adhoc-filters-combobox": {
@@ -150,4 +151,4 @@ var grafanaScenes = {
150
151
  };
151
152
 
152
153
  exports.default = grafanaScenes;
153
- //# sourceMappingURL=grafana-scenes-DCHONTnD.js.map
154
+ //# sourceMappingURL=grafana-scenes-uBsCv-Bu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grafana-scenes-uBsCv-Bu.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.d.ts CHANGED
@@ -858,6 +858,7 @@ interface AdHocFilterWithLabels<M extends Record<string, any> = {}> extends AdHo
858
858
  readOnly?: boolean;
859
859
  restorable?: boolean;
860
860
  nonApplicable?: boolean;
861
+ nonApplicableReason?: string;
861
862
  }
862
863
  type AdHocControlsLayout = ControlsLayout | 'combobox';
863
864
  type FilterOrigin = 'dashboard' | 'scope' | string;
@@ -988,7 +989,7 @@ declare class AdHocFiltersVariable extends SceneObjectBase<AdHocFiltersVariableS
988
989
  _removeFilter(filter: AdHocFilterWithLabels): void;
989
990
  _removeLastFilter(): void;
990
991
  _handleComboboxBackspace(filter: AdHocFilterWithLabels): void;
991
- _verifyNonApplicableFilters(): Promise<never[] | undefined>;
992
+ _setStateWithFiltersApplicabilityCheck(update: Partial<AdHocFiltersVariableState>): Promise<void>;
992
993
  /**
993
994
  * Get possible keys given current filters. Do not call from plugins directly
994
995
  */
package/dist/index.js CHANGED
@@ -5197,7 +5197,7 @@ const getStyles$c = (theme) => ({
5197
5197
  color: theme.colors.text.primary,
5198
5198
  boxShadow: theme.shadows.z2,
5199
5199
  overflowY: "auto",
5200
- zIndex: theme.zIndex.dropdown
5200
+ zIndex: theme.zIndex.portal
5201
5201
  }),
5202
5202
  inputStyle: css.css({
5203
5203
  paddingBlock: 0,
@@ -5233,7 +5233,7 @@ const getStyles$c = (theme) => ({
5233
5233
 
5234
5234
  const LABEL_MAX_VISIBLE_LENGTH = 20;
5235
5235
  function AdHocFilterPill({ filter, model, readOnly, focusOnWipInputRef }) {
5236
- var _a, _b, _c;
5236
+ var _a, _b, _c, _d;
5237
5237
  const styles = ui.useStyles2(getStyles$b);
5238
5238
  const [viewMode, setViewMode] = React.useState(true);
5239
5239
  const [shouldFocusOnPillWrapper, setShouldFocusOnPillWrapper] = React.useState(false);
@@ -5288,6 +5288,7 @@ function AdHocFilterPill({ filter, model, readOnly, focusOnWipInputRef }) {
5288
5288
  };
5289
5289
  }
5290
5290
  };
5291
+ const cleanFilter = !filter.restorable && !filter.readOnly && !filter.nonApplicable;
5291
5292
  if (viewMode) {
5292
5293
  const pillTextContent = `${keyLabel} ${filter.operator} ${valueLabel}`;
5293
5294
  const pillText = /* @__PURE__ */ React__default.default.createElement("span", { className: css.cx(styles.pillText, filter.nonApplicable && styles.strikethrough) }, pillTextContent);
@@ -5369,7 +5370,7 @@ function AdHocFilterPill({ filter, model, readOnly, focusOnWipInputRef }) {
5369
5370
  },
5370
5371
  /* @__PURE__ */ React__default.default.createElement(ui.Icon, { name: "lock", size: "md", className: styles.readOnlyPillIcon })
5371
5372
  ),
5372
- filter.origin && !filter.restorable && !filter.readOnly && /* @__PURE__ */ React__default.default.createElement(ui.Tooltip, { content: getOriginFilterTooltips(filter.origin).info, placement: "bottom" }, /* @__PURE__ */ React__default.default.createElement(ui.Icon, { name: "info-circle", size: "md", className: styles.infoPillIcon })),
5373
+ filter.origin && cleanFilter && /* @__PURE__ */ React__default.default.createElement(ui.Tooltip, { content: getOriginFilterTooltips(filter.origin).info, placement: "bottom" }, /* @__PURE__ */ React__default.default.createElement(ui.Icon, { name: "info-circle", size: "md", className: styles.infoPillIcon })),
5373
5374
  filter.origin && filter.restorable && !filter.readOnly && /* @__PURE__ */ React__default.default.createElement(
5374
5375
  ui.IconButton,
5375
5376
  {
@@ -5389,6 +5390,14 @@ function AdHocFilterPill({ filter, model, readOnly, focusOnWipInputRef }) {
5389
5390
  className: isMatchAllFilter(filter) ? styles.matchAllPillIcon : styles.pillIcon,
5390
5391
  tooltip: getOriginFilterTooltips(filter.origin).restore
5391
5392
  }
5393
+ ),
5394
+ filter.nonApplicable && /* @__PURE__ */ React__default.default.createElement(
5395
+ ui.Tooltip,
5396
+ {
5397
+ content: (_d = filter.nonApplicableReason) != null ? _d : i18n.t("grafana-scenes.components.adhoc-filter-pill.non-applicable", "Filter is not applicable"),
5398
+ placement: "bottom"
5399
+ },
5400
+ /* @__PURE__ */ React__default.default.createElement(ui.Icon, { name: "info-circle", size: "md", className: styles.infoPillIcon })
5392
5401
  )
5393
5402
  );
5394
5403
  }
@@ -5699,7 +5708,10 @@ class AdHocFiltersVariable extends SceneObjectBase {
5699
5708
  });
5700
5709
  this._urlSync = new AdHocFiltersVariableUrlSyncHandler(this);
5701
5710
  this._activationHandler = () => {
5702
- this._verifyNonApplicableFilters();
5711
+ this._setStateWithFiltersApplicabilityCheck({
5712
+ filters: this.state.filters,
5713
+ originFilters: this.state.originFilters
5714
+ });
5703
5715
  return () => {
5704
5716
  var _a;
5705
5717
  (_a = this.state.originFilters) == null ? void 0 : _a.forEach((filter) => {
@@ -5763,7 +5775,10 @@ class AdHocFiltersVariable extends SceneObjectBase {
5763
5775
  ...editedScopeFilters.filter((filter) => scopeFilterKeys.includes(filter.key)),
5764
5776
  ...scopeFilters.filter((filter) => !editedScopeFilterKeys.includes(filter.key))
5765
5777
  ];
5766
- this.setState({ originFilters: [...finalFilters, ...remainingFilters] });
5778
+ this._setStateWithFiltersApplicabilityCheck({
5779
+ filters: this.state.filters,
5780
+ originFilters: [...finalFilters, ...remainingFilters]
5781
+ });
5767
5782
  this._prevScopes = scopes;
5768
5783
  }
5769
5784
  setState(update) {
@@ -5844,7 +5859,11 @@ class AdHocFiltersVariable extends SceneObjectBase {
5844
5859
  }
5845
5860
  if (filter === _wip) {
5846
5861
  if ("value" in update && update["value"] !== "") {
5847
- this.setState({ filters: [...filters, { ..._wip, ...update }], _wip: void 0 });
5862
+ this._setStateWithFiltersApplicabilityCheck({
5863
+ filters: [...filters, { ..._wip, ...update }],
5864
+ originFilters: this.state.originFilters,
5865
+ _wip: void 0
5866
+ });
5848
5867
  } else {
5849
5868
  this.setState({ _wip: { ...filter, ...update } });
5850
5869
  }
@@ -5871,7 +5890,10 @@ class AdHocFiltersVariable extends SceneObjectBase {
5871
5890
  this.setState({ _wip: void 0 });
5872
5891
  return;
5873
5892
  }
5874
- this.setState({ filters: this.state.filters.filter((f) => f !== filter) });
5893
+ this._setStateWithFiltersApplicabilityCheck({
5894
+ filters: this.state.filters.filter((f) => f !== filter),
5895
+ originFilters: this.state.originFilters
5896
+ });
5875
5897
  }
5876
5898
  _removeLastFilter() {
5877
5899
  const filterToRemove = this.state.filters.at(-1);
@@ -5927,46 +5949,51 @@ class AdHocFiltersVariable extends SceneObjectBase {
5927
5949
  });
5928
5950
  }
5929
5951
  }
5930
- async _verifyNonApplicableFilters() {
5931
- var _a, _b, _c;
5932
- const filters = [...this.state.filters, ...(_a = this.state.originFilters) != null ? _a : []];
5952
+ async _setStateWithFiltersApplicabilityCheck(update) {
5953
+ var _a, _b;
5933
5954
  const ds = await this._dataSourceSrv.get(this.state.datasource, this._scopedVars);
5934
- if (!ds || !ds.getApplicableFilters) {
5935
- return [];
5955
+ if (!ds || !ds.getFiltersApplicability) {
5956
+ this.setState(update);
5957
+ return;
5958
+ }
5959
+ if (!update.filters) {
5960
+ return;
5936
5961
  }
5937
5962
  const timeRange = sceneGraph.getTimeRange(this).state.value;
5938
5963
  const queries = this.state.useQueriesAsFilterForOptions ? getQueriesForVariables(this) : void 0;
5939
- const response = await ds.getApplicableFilters({
5940
- filters,
5964
+ const response = await ds.getFiltersApplicability({
5965
+ filters: [...update.filters, ...(_a = update.originFilters) != null ? _a : []],
5941
5966
  queries,
5942
5967
  timeRange,
5943
5968
  scopes: sceneGraph.getScopes(this),
5944
5969
  ...getEnrichedFiltersRequest(this)
5945
5970
  });
5946
- const update = {
5947
- filters: [...this.state.filters],
5948
- originFilters: [...(_b = this.state.originFilters) != null ? _b : []]
5949
- };
5971
+ const responseMap = /* @__PURE__ */ new Map();
5972
+ response.forEach((filter) => {
5973
+ responseMap.set(`${filter.key}${filter.origin ? `-${filter.origin}` : ""}`, filter);
5974
+ });
5950
5975
  update.filters.forEach((f) => {
5951
- const isApplicable = response.includes(f.key);
5952
- if (!isApplicable) {
5953
- f.nonApplicable = true;
5976
+ const filter = responseMap.get(f.key);
5977
+ if (filter) {
5978
+ f.nonApplicable = !filter.applicable;
5979
+ f.nonApplicableReason = filter.reason;
5954
5980
  }
5955
5981
  });
5956
- (_c = update.originFilters) == null ? void 0 : _c.forEach((f) => {
5957
- const isApplicable = response.includes(f.key);
5958
- if (!isApplicable) {
5982
+ (_b = update.originFilters) == null ? void 0 : _b.forEach((f) => {
5983
+ const filter = responseMap.get(`${f.key}-${f.origin}`);
5984
+ if (filter) {
5959
5985
  if (!f.matchAllFilter) {
5960
- f.nonApplicable = true;
5986
+ f.nonApplicable = !filter.applicable;
5987
+ f.nonApplicableReason = filter.reason;
5961
5988
  }
5962
5989
  const originalValue = this._originalValues.get(`${f.key}-${f.origin}`);
5963
5990
  if (originalValue) {
5964
- originalValue.nonApplicable = true;
5991
+ originalValue.nonApplicable = !filter.applicable;
5992
+ originalValue.nonApplicableReason = filter == null ? void 0 : filter.reason;
5965
5993
  }
5966
5994
  }
5967
5995
  });
5968
5996
  this.setState(update);
5969
- return;
5970
5997
  }
5971
5998
  /**
5972
5999
  * Get possible keys given current filters. Do not call from plugins directly
@@ -10928,7 +10955,6 @@ function VizPanelMenuRenderer({ model }) {
10928
10955
  ui.Menu.Item,
10929
10956
  {
10930
10957
  key: item.text,
10931
- role: "menuitem",
10932
10958
  label: item.text,
10933
10959
  icon: item.iconClassName,
10934
10960
  childItems: item.subMenu ? renderItems(item.subMenu) : void 0,
@@ -14420,7 +14446,25 @@ const VizConfigBuilders = {
14420
14446
 
14421
14447
  function __variableDynamicImportRuntime0__(path) {
14422
14448
  switch (path) {
14423
- case '../locales/en-US/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-DCHONTnD.js'); });
14449
+ case '../locales/cs-CZ/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-CY85TD5F.js'); });
14450
+ case '../locales/de-DE/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-n10eQkNF.js'); });
14451
+ case '../locales/en-US/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-uBsCv-Bu.js'); });
14452
+ case '../locales/es-ES/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-YMli37Xh.js'); });
14453
+ case '../locales/fr-FR/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-DXM1LI4B.js'); });
14454
+ case '../locales/hu-HU/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-DlUSL8jI.js'); });
14455
+ case '../locales/id-ID/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-D5qs_fc9.js'); });
14456
+ case '../locales/it-IT/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-Dy2CLUY9.js'); });
14457
+ case '../locales/ja-JP/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-CBRfJ-2H.js'); });
14458
+ case '../locales/ko-KR/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-CgIzGE5F.js'); });
14459
+ case '../locales/nl-NL/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-Br6NPcwR.js'); });
14460
+ case '../locales/pl-PL/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-B3ypGD5T.js'); });
14461
+ case '../locales/pt-BR/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-COr0P0oM.js'); });
14462
+ case '../locales/pt-PT/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-Cub9Gl0n.js'); });
14463
+ case '../locales/ru-RU/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-BGCbMCFm.js'); });
14464
+ case '../locales/sv-SE/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-CqRf9pRc.js'); });
14465
+ case '../locales/tr-TR/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-CeVkPanY.js'); });
14466
+ case '../locales/zh-Hans/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-DObtL2WT.js'); });
14467
+ case '../locales/zh-Hant/grafana-scenes.json': return Promise.resolve().then(function () { return require('./grafana-scenes-B0JDDOYY.js'); });
14424
14468
  default: return new Promise(function(resolve, reject) {
14425
14469
  (typeof queueMicrotask === 'function' ? queueMicrotask : setTimeout)(
14426
14470
  reject.bind(null, new Error("Unknown variable dynamic import: " + path))