@grafana/scenes 2.2.1 → 2.2.2

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ # v2.2.2 (Wed Jan 31 2024)
2
+
3
+ #### 🐛 Bug Fix
4
+
5
+ - AdHocFiltersVariable: The `create()` factory supports `applyMode` as parameter [#553](https://github.com/grafana/scenes/pull/553) ([@ivanortegaalba](https://github.com/ivanortegaalba))
6
+
7
+ #### Authors: 1
8
+
9
+ - Ivan Ortega Alba ([@ivanortegaalba](https://github.com/ivanortegaalba))
10
+
11
+ ---
12
+
1
13
  # v2.2.1 (Tue Jan 30 2024)
2
14
 
3
15
  #### 🐛 Bug Fix
@@ -31,9 +31,9 @@ const _AdHocFiltersVariable = class extends SceneObjectBase {
31
31
  type: "adhoc",
32
32
  hide: VariableHide.hideLabel,
33
33
  name: (_a = state.name) != null ? _a : "Filters",
34
- set: new AdHocFilterSet(__spreadProps(__spreadValues({}, state), {
34
+ set: new AdHocFilterSet(__spreadValues({
35
35
  applyMode: "manual"
36
- }))
36
+ }, state))
37
37
  });
38
38
  }
39
39
  constructor(state) {
@@ -1 +1 @@
1
- {"version":3,"file":"AdHocFiltersVariable.js","sources":["../../../../src/variables/adhoc/AdHocFiltersVariable.tsx"],"sourcesContent":["import React from 'react';\nimport { AdHocVariableFilter } from '@grafana/data';\nimport { SceneObjectBase } from '../../core/SceneObjectBase';\nimport { SceneVariable, SceneVariableState, SceneVariableValueChangedEvent, VariableValue } from '../types';\nimport { AdHocFilterSet, AdHocFilterSetState } from './AdHocFiltersSet';\nimport { SceneComponentProps } from '../../core/types';\nimport { VariableHide } from '@grafana/schema';\nimport { renderPrometheusLabelFilters } from '../utils';\n\nexport interface AdHocFiltersVariableState extends SceneVariableState {\n /**\n * Important that you set applyFiltersTo: 'manual' when you create the set.\n */\n set: AdHocFilterSet;\n /**\n * This is the expression that the filters resulted in. Defaults to\n * Prometheus / Loki compatible label fitler expression\n */\n filterExpression?: string;\n}\n\nexport type AdHocFiltersVariableCreateHelperArgs = Pick<\n AdHocFilterSetState,\n | 'name'\n | 'filters'\n | 'baseFilters'\n | 'datasource'\n | 'tagKeyRegexFilter'\n | 'getTagKeysProvider'\n | 'getTagValuesProvider'\n | 'name'\n | 'layout'\n>;\n\nexport class AdHocFiltersVariable\n extends SceneObjectBase<AdHocFiltersVariableState>\n implements SceneVariable<AdHocFiltersVariableState>\n{\n /** Helper factory function that makes sure AdHocFilterSet is created correctly */\n public static create(state: AdHocFiltersVariableCreateHelperArgs): AdHocFiltersVariable {\n return new AdHocFiltersVariable({\n type: 'adhoc',\n hide: VariableHide.hideLabel,\n name: state.name ?? 'Filters',\n set: new AdHocFilterSet({\n ...state,\n // Main reason for this helper factory functyion\n applyMode: 'manual',\n }),\n });\n }\n\n public constructor(state: AdHocFiltersVariableState) {\n super({\n ...state,\n filterExpression: state.filterExpression ?? renderPrometheusLabelFilters(state.set.state.filters),\n });\n\n // Subscribe to filter changes and up the variable value (filterExpression)\n this.addActivationHandler(() => {\n this._subs.add(\n this.state.set.subscribeToState((newState, prevState) => {\n if (newState.filters !== prevState.filters) {\n this._updateFilterExpression(newState.filters, true);\n }\n })\n );\n\n this._updateFilterExpression(this.state.set.state.filters, false);\n });\n }\n\n public getValue(): VariableValue | undefined {\n return this.state.filterExpression;\n }\n\n private _updateFilterExpression(filters: AdHocVariableFilter[], publishEvent: boolean) {\n let expr = renderPrometheusLabelFilters(filters);\n\n if (expr === this.state.filterExpression) {\n return;\n }\n\n this.setState({ filterExpression: expr });\n\n if (publishEvent) {\n this.publishEvent(new SceneVariableValueChangedEvent(this), true);\n }\n }\n\n // Same UI as the standalone AdHocFilterSet\n public static Component = ({ model }: SceneComponentProps<AdHocFiltersVariable>) => {\n return <model.state.set.Component model={model.state.set} />;\n };\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAkCO,MAAM,qBAAA,GAAN,cACG,eAEV,CAAA;AAAA,EAEE,OAAc,OAAO,KAAmE,EAAA;AAvC1F,IAAA,IAAA,EAAA,CAAA;AAwCI,IAAA,OAAO,IAAI,qBAAqB,CAAA;AAAA,MAC9B,IAAM,EAAA,OAAA;AAAA,MACN,MAAM,YAAa,CAAA,SAAA;AAAA,MACnB,IAAA,EAAA,CAAM,EAAM,GAAA,KAAA,CAAA,IAAA,KAAN,IAAc,GAAA,EAAA,GAAA,SAAA;AAAA,MACpB,GAAK,EAAA,IAAI,cAAe,CAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EACnB,KADmB,CAAA,EAAA;AAAA,QAGtB,SAAW,EAAA,QAAA;AAAA,OACZ,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAAA,GACH;AAAA,EAEO,YAAY,KAAkC,EAAA;AApDvD,IAAA,IAAA,EAAA,CAAA;AAqDI,IAAA,KAAA,CAAM,iCACD,KADC,CAAA,EAAA;AAAA,MAEJ,gBAAA,EAAA,CAAkB,WAAM,gBAAN,KAAA,IAAA,GAAA,EAAA,GAA0B,6BAA6B,KAAM,CAAA,GAAA,CAAI,MAAM,OAAO,CAAA;AAAA,KACjG,CAAA,CAAA,CAAA;AAGD,IAAA,IAAA,CAAK,qBAAqB,MAAM;AAC9B,MAAA,IAAA,CAAK,KAAM,CAAA,GAAA;AAAA,QACT,KAAK,KAAM,CAAA,GAAA,CAAI,gBAAiB,CAAA,CAAC,UAAU,SAAc,KAAA;AACvD,UAAI,IAAA,QAAA,CAAS,OAAY,KAAA,SAAA,CAAU,OAAS,EAAA;AAC1C,YAAK,IAAA,CAAA,uBAAA,CAAwB,QAAS,CAAA,OAAA,EAAS,IAAI,CAAA,CAAA;AAAA,WACrD;AAAA,SACD,CAAA;AAAA,OACH,CAAA;AAEA,MAAA,IAAA,CAAK,wBAAwB,IAAK,CAAA,KAAA,CAAM,GAAI,CAAA,KAAA,CAAM,SAAS,KAAK,CAAA,CAAA;AAAA,KACjE,CAAA,CAAA;AAAA,GACH;AAAA,EAEO,QAAsC,GAAA;AAC3C,IAAA,OAAO,KAAK,KAAM,CAAA,gBAAA,CAAA;AAAA,GACpB;AAAA,EAEQ,uBAAA,CAAwB,SAAgC,YAAuB,EAAA;AACrF,IAAI,IAAA,IAAA,GAAO,6BAA6B,OAAO,CAAA,CAAA;AAE/C,IAAI,IAAA,IAAA,KAAS,IAAK,CAAA,KAAA,CAAM,gBAAkB,EAAA;AACxC,MAAA,OAAA;AAAA,KACF;AAEA,IAAA,IAAA,CAAK,QAAS,CAAA,EAAE,gBAAkB,EAAA,IAAA,EAAM,CAAA,CAAA;AAExC,IAAA,IAAI,YAAc,EAAA;AAChB,MAAA,IAAA,CAAK,YAAa,CAAA,IAAI,8BAA+B,CAAA,IAAI,GAAG,IAAI,CAAA,CAAA;AAAA,KAClE;AAAA,GACF;AAMF,CAAA,CAAA;AA5DO,IAAM,oBAAN,GAAA,sBAAA;AAAM,oBAAA,CAyDG,SAAY,GAAA,CAAC,EAAE,KAAA,EAAuD,KAAA;AAClF,EAAA,uBAAQ,KAAA,CAAA,aAAA,CAAA,KAAA,CAAM,KAAM,CAAA,GAAA,CAAI,SAAhB,EAAA;AAAA,IAA0B,KAAA,EAAO,MAAM,KAAM,CAAA,GAAA;AAAA,GAAK,CAAA,CAAA;AAC5D,CAAA;;;;"}
1
+ {"version":3,"file":"AdHocFiltersVariable.js","sources":["../../../../src/variables/adhoc/AdHocFiltersVariable.tsx"],"sourcesContent":["import React from 'react';\nimport { AdHocVariableFilter } from '@grafana/data';\nimport { SceneObjectBase } from '../../core/SceneObjectBase';\nimport { SceneVariable, SceneVariableState, SceneVariableValueChangedEvent, VariableValue } from '../types';\nimport { AdHocFilterSet, AdHocFilterSetState } from './AdHocFiltersSet';\nimport { SceneComponentProps } from '../../core/types';\nimport { VariableHide } from '@grafana/schema';\nimport { renderPrometheusLabelFilters } from '../utils';\n\nexport interface AdHocFiltersVariableState extends SceneVariableState {\n /**\n * Important that you set applyFiltersTo: 'manual' when you create the set.\n */\n set: AdHocFilterSet;\n /**\n * This is the expression that the filters resulted in. Defaults to\n * Prometheus / Loki compatible label fitler expression\n */\n filterExpression?: string;\n}\n\nexport type AdHocFiltersVariableCreateHelperArgs = Pick<\n AdHocFilterSetState,\n | 'name'\n | 'filters'\n | 'baseFilters'\n | 'datasource'\n | 'tagKeyRegexFilter'\n | 'getTagKeysProvider'\n | 'getTagValuesProvider'\n | 'name'\n | 'layout'\n | 'applyMode'\n>;\n\nexport class AdHocFiltersVariable\n extends SceneObjectBase<AdHocFiltersVariableState>\n implements SceneVariable<AdHocFiltersVariableState>\n{\n /** Helper factory function that makes sure AdHocFilterSet is created correctly */\n public static create(state: AdHocFiltersVariableCreateHelperArgs): AdHocFiltersVariable {\n return new AdHocFiltersVariable({\n type: 'adhoc',\n hide: VariableHide.hideLabel,\n name: state.name ?? 'Filters',\n set: new AdHocFilterSet({\n // The applyMode defaults to 'manual' when used through the variable as it is the most frecuent use case\n applyMode: 'manual',\n ...state,\n }),\n });\n }\n\n public constructor(state: AdHocFiltersVariableState) {\n super({\n ...state,\n filterExpression: state.filterExpression ?? renderPrometheusLabelFilters(state.set.state.filters),\n });\n\n // Subscribe to filter changes and up the variable value (filterExpression)\n this.addActivationHandler(() => {\n this._subs.add(\n this.state.set.subscribeToState((newState, prevState) => {\n if (newState.filters !== prevState.filters) {\n this._updateFilterExpression(newState.filters, true);\n }\n })\n );\n\n this._updateFilterExpression(this.state.set.state.filters, false);\n });\n }\n\n public getValue(): VariableValue | undefined {\n return this.state.filterExpression;\n }\n\n private _updateFilterExpression(filters: AdHocVariableFilter[], publishEvent: boolean) {\n let expr = renderPrometheusLabelFilters(filters);\n\n if (expr === this.state.filterExpression) {\n return;\n }\n\n this.setState({ filterExpression: expr });\n\n if (publishEvent) {\n this.publishEvent(new SceneVariableValueChangedEvent(this), true);\n }\n }\n\n // Same UI as the standalone AdHocFilterSet\n public static Component = ({ model }: SceneComponentProps<AdHocFiltersVariable>) => {\n return <model.state.set.Component model={model.state.set} />;\n };\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAmCO,MAAM,qBAAA,GAAN,cACG,eAEV,CAAA;AAAA,EAEE,OAAc,OAAO,KAAmE,EAAA;AAxC1F,IAAA,IAAA,EAAA,CAAA;AAyCI,IAAA,OAAO,IAAI,qBAAqB,CAAA;AAAA,MAC9B,IAAM,EAAA,OAAA;AAAA,MACN,MAAM,YAAa,CAAA,SAAA;AAAA,MACnB,IAAA,EAAA,CAAM,EAAM,GAAA,KAAA,CAAA,IAAA,KAAN,IAAc,GAAA,EAAA,GAAA,SAAA;AAAA,MACpB,GAAA,EAAK,IAAI,cAAe,CAAA,cAAA,CAAA;AAAA,QAEtB,SAAW,EAAA,QAAA;AAAA,OAAA,EACR,KACJ,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAAA,GACH;AAAA,EAEO,YAAY,KAAkC,EAAA;AArDvD,IAAA,IAAA,EAAA,CAAA;AAsDI,IAAA,KAAA,CAAM,iCACD,KADC,CAAA,EAAA;AAAA,MAEJ,gBAAA,EAAA,CAAkB,WAAM,gBAAN,KAAA,IAAA,GAAA,EAAA,GAA0B,6BAA6B,KAAM,CAAA,GAAA,CAAI,MAAM,OAAO,CAAA;AAAA,KACjG,CAAA,CAAA,CAAA;AAGD,IAAA,IAAA,CAAK,qBAAqB,MAAM;AAC9B,MAAA,IAAA,CAAK,KAAM,CAAA,GAAA;AAAA,QACT,KAAK,KAAM,CAAA,GAAA,CAAI,gBAAiB,CAAA,CAAC,UAAU,SAAc,KAAA;AACvD,UAAI,IAAA,QAAA,CAAS,OAAY,KAAA,SAAA,CAAU,OAAS,EAAA;AAC1C,YAAK,IAAA,CAAA,uBAAA,CAAwB,QAAS,CAAA,OAAA,EAAS,IAAI,CAAA,CAAA;AAAA,WACrD;AAAA,SACD,CAAA;AAAA,OACH,CAAA;AAEA,MAAA,IAAA,CAAK,wBAAwB,IAAK,CAAA,KAAA,CAAM,GAAI,CAAA,KAAA,CAAM,SAAS,KAAK,CAAA,CAAA;AAAA,KACjE,CAAA,CAAA;AAAA,GACH;AAAA,EAEO,QAAsC,GAAA;AAC3C,IAAA,OAAO,KAAK,KAAM,CAAA,gBAAA,CAAA;AAAA,GACpB;AAAA,EAEQ,uBAAA,CAAwB,SAAgC,YAAuB,EAAA;AACrF,IAAI,IAAA,IAAA,GAAO,6BAA6B,OAAO,CAAA,CAAA;AAE/C,IAAI,IAAA,IAAA,KAAS,IAAK,CAAA,KAAA,CAAM,gBAAkB,EAAA;AACxC,MAAA,OAAA;AAAA,KACF;AAEA,IAAA,IAAA,CAAK,QAAS,CAAA,EAAE,gBAAkB,EAAA,IAAA,EAAM,CAAA,CAAA;AAExC,IAAA,IAAI,YAAc,EAAA;AAChB,MAAA,IAAA,CAAK,YAAa,CAAA,IAAI,8BAA+B,CAAA,IAAI,GAAG,IAAI,CAAA,CAAA;AAAA,KAClE;AAAA,GACF;AAMF,CAAA,CAAA;AA5DO,IAAM,oBAAN,GAAA,sBAAA;AAAM,oBAAA,CAyDG,SAAY,GAAA,CAAC,EAAE,KAAA,EAAuD,KAAA;AAClF,EAAA,uBAAQ,KAAA,CAAA,aAAA,CAAA,KAAA,CAAM,KAAM,CAAA,GAAA,CAAI,SAAhB,EAAA;AAAA,IAA0B,KAAA,EAAO,MAAM,KAAM,CAAA,GAAA;AAAA,GAAK,CAAA,CAAA;AAC5D,CAAA;;;;"}
package/dist/index.d.ts CHANGED
@@ -542,7 +542,7 @@ interface AdHocFiltersVariableState extends SceneVariableState {
542
542
  */
543
543
  filterExpression?: string;
544
544
  }
545
- type AdHocFiltersVariableCreateHelperArgs = Pick<AdHocFilterSetState, 'name' | 'filters' | 'baseFilters' | 'datasource' | 'tagKeyRegexFilter' | 'getTagKeysProvider' | 'getTagValuesProvider' | 'name' | 'layout'>;
545
+ type AdHocFiltersVariableCreateHelperArgs = Pick<AdHocFilterSetState, 'name' | 'filters' | 'baseFilters' | 'datasource' | 'tagKeyRegexFilter' | 'getTagKeysProvider' | 'getTagValuesProvider' | 'name' | 'layout' | 'applyMode'>;
546
546
  declare class AdHocFiltersVariable extends SceneObjectBase<AdHocFiltersVariableState> implements SceneVariable<AdHocFiltersVariableState> {
547
547
  /** Helper factory function that makes sure AdHocFilterSet is created correctly */
548
548
  static create(state: AdHocFiltersVariableCreateHelperArgs): AdHocFiltersVariable;
package/dist/index.js CHANGED
@@ -5980,9 +5980,9 @@ const _AdHocFiltersVariable = class extends SceneObjectBase {
5980
5980
  type: "adhoc",
5981
5981
  hide: schema.VariableHide.hideLabel,
5982
5982
  name: (_a = state.name) != null ? _a : "Filters",
5983
- set: new AdHocFilterSet(__spreadProps$9(__spreadValues$d({}, state), {
5983
+ set: new AdHocFilterSet(__spreadValues$d({
5984
5984
  applyMode: "manual"
5985
- }))
5985
+ }, state))
5986
5986
  });
5987
5987
  }
5988
5988
  constructor(state) {