@grafana/scenes 0.0.14 → 0.0.15
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/dist/esm/components/SceneApp/utils.js.map +1 -1
- package/dist/esm/components/SceneRefreshPicker.js +102 -0
- package/dist/esm/components/SceneRefreshPicker.js.map +1 -0
- package/dist/esm/components/SceneTimePicker.js +3 -9
- package/dist/esm/components/SceneTimePicker.js.map +1 -1
- package/dist/esm/components/VizPanel/VizPanel.js +3 -0
- package/dist/esm/components/VizPanel/VizPanel.js.map +1 -1
- package/dist/esm/components/VizPanel/VizPanelRenderer.js +19 -10
- package/dist/esm/components/VizPanel/VizPanelRenderer.js.map +1 -1
- package/dist/esm/components/layout/SceneGridRow.js +9 -6
- package/dist/esm/components/layout/SceneGridRow.js.map +1 -1
- package/dist/esm/core/SceneComponentWrapper.js +2 -2
- package/dist/esm/core/SceneComponentWrapper.js.map +1 -1
- package/dist/esm/core/SceneObjectBase.js +0 -1
- package/dist/esm/core/SceneObjectBase.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/variables/components/VariableValueInput.js +31 -0
- package/dist/esm/variables/components/VariableValueInput.js.map +1 -0
- package/dist/esm/variables/variants/TextBoxVariable.js +61 -0
- package/dist/esm/variables/variants/TextBoxVariable.js.map +1 -0
- package/dist/index.d.ts +43 -4
- package/dist/index.js +391 -210
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SceneObjectBase } from '../../core/SceneObjectBase.js';
|
|
3
|
+
import { SceneObjectUrlSyncConfig } from '../../services/SceneObjectUrlSyncConfig.js';
|
|
4
|
+
import { VariableValueInput } from '../components/VariableValueInput.js';
|
|
5
|
+
import { SceneVariableValueChangedEvent } from '../types.js';
|
|
6
|
+
|
|
7
|
+
var __defProp = Object.defineProperty;
|
|
8
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
9
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
12
|
+
var __spreadValues = (a, b) => {
|
|
13
|
+
for (var prop in b || (b = {}))
|
|
14
|
+
if (__hasOwnProp.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
if (__getOwnPropSymbols)
|
|
17
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
+
if (__propIsEnum.call(b, prop))
|
|
19
|
+
__defNormalProp(a, prop, b[prop]);
|
|
20
|
+
}
|
|
21
|
+
return a;
|
|
22
|
+
};
|
|
23
|
+
class TextBoxVariable extends SceneObjectBase {
|
|
24
|
+
constructor(initialState) {
|
|
25
|
+
super(__spreadValues({
|
|
26
|
+
type: "textbox",
|
|
27
|
+
value: "",
|
|
28
|
+
name: ""
|
|
29
|
+
}, initialState));
|
|
30
|
+
this._urlSync = new SceneObjectUrlSyncConfig(this, { keys: [this.getKey()] });
|
|
31
|
+
}
|
|
32
|
+
getValue() {
|
|
33
|
+
return this.state.value;
|
|
34
|
+
}
|
|
35
|
+
setValue(newValue) {
|
|
36
|
+
this.setState({ value: newValue });
|
|
37
|
+
this.publishEvent(new SceneVariableValueChangedEvent(this), true);
|
|
38
|
+
}
|
|
39
|
+
getKey() {
|
|
40
|
+
return `var-${this.state.name}`;
|
|
41
|
+
}
|
|
42
|
+
getUrlState(state) {
|
|
43
|
+
return { [this.getKey()]: state.value };
|
|
44
|
+
}
|
|
45
|
+
updateFromUrl(values) {
|
|
46
|
+
const update = {};
|
|
47
|
+
const val = values[this.getKey()];
|
|
48
|
+
if (typeof val === "string") {
|
|
49
|
+
update.value = val;
|
|
50
|
+
}
|
|
51
|
+
this.setState(update);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
TextBoxVariable.Component = ({ model }) => {
|
|
55
|
+
return /* @__PURE__ */ React.createElement(VariableValueInput, {
|
|
56
|
+
model
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export { TextBoxVariable };
|
|
61
|
+
//# sourceMappingURL=TextBoxVariable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextBoxVariable.js","sources":["../../../../src/variables/variants/TextBoxVariable.tsx"],"sourcesContent":["import React from 'react';\nimport { SceneObjectBase } from '../../core/SceneObjectBase';\nimport { SceneComponentProps, SceneObjectUrlSyncHandler, SceneObjectUrlValues } from '../../core/types';\nimport { SceneObjectUrlSyncConfig } from '../../services/SceneObjectUrlSyncConfig';\nimport { VariableValueInput } from '../components/VariableValueInput';\nimport { SceneVariable, SceneVariableState, SceneVariableValueChangedEvent, VariableValue } from '../types';\n\nexport interface TextBoxVariableState extends SceneVariableState {\n value: string;\n}\n\nexport class TextBoxVariable\n extends SceneObjectBase<TextBoxVariableState>\n implements SceneVariable<TextBoxVariableState>\n{\n protected _urlSync: SceneObjectUrlSyncHandler<TextBoxVariableState>;\n\n public constructor(initialState: Partial<TextBoxVariableState>) {\n super({\n type: 'textbox',\n value: '',\n name: '',\n ...initialState,\n });\n\n this._urlSync = new SceneObjectUrlSyncConfig(this, { keys: [this.getKey()]})\n }\n\n public getValue(): VariableValue {\n return this.state.value;\n }\n\n public setValue(newValue: string) {\n this.setState({ value: newValue });\n this.publishEvent(new SceneVariableValueChangedEvent(this), true);\n }\n\n private getKey(): string {\n return `var-${this.state.name}`;\n }\n\n public getUrlState(state: TextBoxVariableState) {\n return { [this.getKey()]: state.value }; \n }\n\n public updateFromUrl(values: SceneObjectUrlValues) {\n const update: Partial<TextBoxVariableState> = {};\n const val = values[this.getKey()];\n if (typeof val === 'string') {\n update.value = val;\n }\n \n this.setState(update);\n }\n\n public static Component = ({ model }: SceneComponentProps<TextBoxVariable>) => {\n return <VariableValueInput model={model} />;\n };\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAWO,MAAM,wBACH,eAEV,CAAA;AAAA,EAGS,YAAY,YAA6C,EAAA;AAC9D,IAAM,KAAA,CAAA,cAAA,CAAA;AAAA,MACJ,IAAM,EAAA,SAAA;AAAA,MACN,KAAO,EAAA,EAAA;AAAA,MACP,IAAM,EAAA,EAAA;AAAA,KAAA,EACH,YACJ,CAAA,CAAA,CAAA;AAED,IAAK,IAAA,CAAA,QAAA,GAAW,IAAI,wBAAA,CAAyB,IAAM,EAAA,EAAE,IAAM,EAAA,CAAC,IAAK,CAAA,MAAA,EAAQ,CAAA,EAAE,CAAA,CAAA;AAAA,GAC7E;AAAA,EAEO,QAA0B,GAAA;AAC/B,IAAA,OAAO,KAAK,KAAM,CAAA,KAAA,CAAA;AAAA,GACpB;AAAA,EAEO,SAAS,QAAkB,EAAA;AAChC,IAAA,IAAA,CAAK,QAAS,CAAA,EAAE,KAAO,EAAA,QAAA,EAAU,CAAA,CAAA;AACjC,IAAA,IAAA,CAAK,YAAa,CAAA,IAAI,8BAA+B,CAAA,IAAI,GAAG,IAAI,CAAA,CAAA;AAAA,GAClE;AAAA,EAEQ,MAAiB,GAAA;AACvB,IAAO,OAAA,CAAA,IAAA,EAAO,KAAK,KAAM,CAAA,IAAA,CAAA,CAAA,CAAA;AAAA,GAC3B;AAAA,EAEO,YAAY,KAA6B,EAAA;AAC9C,IAAA,OAAO,EAAE,CAAC,IAAA,CAAK,MAAO,EAAA,GAAI,MAAM,KAAM,EAAA,CAAA;AAAA,GACxC;AAAA,EAEO,cAAc,MAA8B,EAAA;AACjD,IAAA,MAAM,SAAwC,EAAC,CAAA;AAC/C,IAAM,MAAA,GAAA,GAAM,MAAO,CAAA,IAAA,CAAK,MAAO,EAAA,CAAA,CAAA;AAC/B,IAAI,IAAA,OAAO,QAAQ,QAAU,EAAA;AAC3B,MAAA,MAAA,CAAO,KAAQ,GAAA,GAAA,CAAA;AAAA,KACjB;AAEA,IAAA,IAAA,CAAK,SAAS,MAAM,CAAA,CAAA;AAAA,GACtB;AAKF,CAAA;AA/Ca,eAAA,CA4CG,SAAY,GAAA,CAAC,EAAE,KAAA,EAAkD,KAAA;AAC7E,EAAA,uBAAQ,KAAA,CAAA,aAAA,CAAA,kBAAA,EAAA;AAAA,IAAmB,KAAA;AAAA,GAAc,CAAA,CAAA;AAC3C,CAAA;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { CSSProperties } from 'react';
|
|
2
2
|
import { Observable, Observer, Subscription, Unsubscribable } from 'rxjs';
|
|
3
|
-
import { BusEventWithPayload, PanelData, BusEvent, BusEventType, BusEventHandler, TimeZone, TimeRange, ScopedVars, DataTransformerConfig, DataSourceRef, DataQuery, Registry, RegistryItem, VariableRefresh, VariableSort, FieldConfigSource, PanelPlugin, AbsoluteTimeRange, DataFrame } from '@grafana/data';
|
|
3
|
+
import { BusEventWithPayload, PanelData, BusEvent, BusEventType, BusEventHandler, TimeZone, TimeRange, ScopedVars, DataTransformerConfig, DataSourceRef, DataQuery, Registry, RegistryItem, VariableRefresh, VariableSort, FieldConfigSource, PanelPlugin, AbsoluteTimeRange, InterpolateFunction, DataFrame } from '@grafana/data';
|
|
4
4
|
import { VariableType, VariableHide, VariableModel } from '@grafana/schema';
|
|
5
5
|
import { IconName } from '@grafana/ui';
|
|
6
6
|
import ReactGridLayout from 'react-grid-layout';
|
|
@@ -252,8 +252,6 @@ declare abstract class SceneObjectBase<TState extends SceneObjectState = SceneOb
|
|
|
252
252
|
private _subject;
|
|
253
253
|
private _state;
|
|
254
254
|
private _events;
|
|
255
|
-
/** Incremented in SceneComponentWrapper, useful for tests and rendering optimizations */
|
|
256
|
-
protected _renderCount: number;
|
|
257
255
|
protected _parent?: SceneObject;
|
|
258
256
|
protected _subs: Subscription;
|
|
259
257
|
protected _variableDependency: SceneVariableDependencyConfigLike | undefined;
|
|
@@ -634,6 +632,22 @@ declare class TestVariable extends MultiValueVariable<TestVariableState> {
|
|
|
634
632
|
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) => JSX.Element;
|
|
635
633
|
}
|
|
636
634
|
|
|
635
|
+
interface TextBoxVariableState extends SceneVariableState {
|
|
636
|
+
value: string;
|
|
637
|
+
}
|
|
638
|
+
declare class TextBoxVariable extends SceneObjectBase<TextBoxVariableState> implements SceneVariable<TextBoxVariableState> {
|
|
639
|
+
protected _urlSync: SceneObjectUrlSyncHandler<TextBoxVariableState>;
|
|
640
|
+
constructor(initialState: Partial<TextBoxVariableState>);
|
|
641
|
+
getValue(): VariableValue;
|
|
642
|
+
setValue(newValue: string): void;
|
|
643
|
+
private getKey;
|
|
644
|
+
getUrlState(state: TextBoxVariableState): {
|
|
645
|
+
[x: string]: string;
|
|
646
|
+
};
|
|
647
|
+
updateFromUrl(values: SceneObjectUrlValues): void;
|
|
648
|
+
static Component: ({ model }: SceneComponentProps<TextBoxVariable>) => JSX.Element;
|
|
649
|
+
}
|
|
650
|
+
|
|
637
651
|
declare class UrlSyncManager {
|
|
638
652
|
private sceneRoot;
|
|
639
653
|
private locationListenerUnsub;
|
|
@@ -687,6 +701,8 @@ interface VizPanelState<TOptions = {}, TFieldConfig = {}> extends SceneLayoutChi
|
|
|
687
701
|
options: DeepPartial<TOptions>;
|
|
688
702
|
fieldConfig: FieldConfigSource<DeepPartial<TFieldConfig>>;
|
|
689
703
|
pluginVersion?: string;
|
|
704
|
+
displayMode?: 'default' | 'transparent';
|
|
705
|
+
hoverHeader?: boolean;
|
|
690
706
|
pluginLoadError?: string;
|
|
691
707
|
}
|
|
692
708
|
declare class VizPanel<TOptions = {}, TFieldConfig = {}> extends SceneObjectBase<VizPanelState<TOptions, TFieldConfig>> {
|
|
@@ -701,6 +717,7 @@ declare class VizPanel<TOptions = {}, TFieldConfig = {}> extends SceneObjectBase
|
|
|
701
717
|
onChangeTimeRange: (timeRange: AbsoluteTimeRange) => void;
|
|
702
718
|
onOptionsChange: (options: TOptions) => void;
|
|
703
719
|
onFieldConfigChange: (fieldConfig: FieldConfigSource<TFieldConfig>) => void;
|
|
720
|
+
interpolate: InterpolateFunction;
|
|
704
721
|
}
|
|
705
722
|
|
|
706
723
|
interface NestedSceneState extends SceneLayoutChildState {
|
|
@@ -759,6 +776,28 @@ declare class SceneTimePicker extends SceneObjectBase<SceneTimePickerState> {
|
|
|
759
776
|
}
|
|
760
777
|
declare function SceneTimePickerRenderer({ model }: SceneComponentProps<SceneTimePicker>): JSX.Element | null;
|
|
761
778
|
|
|
779
|
+
interface SceneRefreshPickerState extends SceneObjectStatePlain {
|
|
780
|
+
refresh: string;
|
|
781
|
+
intervals?: string[];
|
|
782
|
+
isOnCanvas?: boolean;
|
|
783
|
+
}
|
|
784
|
+
declare class SceneRefreshPicker extends SceneObjectBase<SceneRefreshPickerState> {
|
|
785
|
+
static Component: typeof SceneRefreshPickerRenderer;
|
|
786
|
+
protected _urlSync: SceneObjectUrlSyncConfig<SceneObjectState>;
|
|
787
|
+
private _intervalTimer;
|
|
788
|
+
constructor(state: Partial<SceneRefreshPickerState>);
|
|
789
|
+
activate(): void;
|
|
790
|
+
deactivate(): void;
|
|
791
|
+
onRefresh: () => void;
|
|
792
|
+
onIntervalChanged: (interval: string) => void;
|
|
793
|
+
getUrlState(): {
|
|
794
|
+
refresh: string;
|
|
795
|
+
};
|
|
796
|
+
updateFromUrl(values: SceneObjectUrlValues): void;
|
|
797
|
+
private setupIntervalTimer;
|
|
798
|
+
}
|
|
799
|
+
declare function SceneRefreshPickerRenderer({ model }: SceneComponentProps<SceneRefreshPicker>): JSX.Element;
|
|
800
|
+
|
|
762
801
|
interface RepeatOptions extends SceneObjectStatePlain {
|
|
763
802
|
body: SceneObject<SceneLayoutState>;
|
|
764
803
|
getLayoutChild(data: PanelData, frame: DataFrame, frameIndex: number): SceneLayoutChild;
|
|
@@ -875,4 +914,4 @@ interface SceneAppDrilldownView {
|
|
|
875
914
|
getPage: (routeMatch: SceneRouteMatch<any>, parent: SceneAppPage) => SceneAppPage;
|
|
876
915
|
}
|
|
877
916
|
|
|
878
|
-
export { ConstantVariable, CustomFormatterFn, CustomVariable, DataSourceVariable, DeepPartial, EmbeddedScene, EmbeddedSceneState, FormatRegistryID, FormatVariable, NestedScene, QueryRunnerState, QueryVariable, SceneApp, SceneAppPage, SceneByFrameRepeater, SceneCanvasText, SceneComponent, SceneComponentProps, SceneControlsSpacer, SceneDataNode, SceneDataState, SceneDataTransformer, SceneEditor, SceneEditorState, SceneFlexLayout, SceneGridLayout, SceneGridRow, SceneLayout, SceneLayoutChild, SceneLayoutChildOptions, SceneLayoutChildState, SceneLayoutState, SceneObject, SceneObjectBase, SceneObjectRef, SceneObjectState, SceneObjectStateChangedEvent, SceneObjectStateChangedPayload, SceneObjectStatePlain, SceneObjectUrlSyncConfig, SceneObjectUrlSyncHandler, SceneObjectUrlValue, SceneObjectUrlValues, SceneObjectWithUrlSync, SceneQueryRunner, SceneRouteMatch, SceneTimePicker, SceneTimeRange, SceneTimeRangeLike, SceneTimeRangeState, SceneToolbarButton, SceneToolbarInput, SceneVariable, SceneVariableDependencyConfigLike, SceneVariableSet, SceneVariableSetState, SceneVariableState, SceneVariableValueChangedEvent, SceneVariables, TestVariable, UrlSyncManager, ValidateAndUpdateResult, VariableDependencyConfig, VariableValue, VariableValueCustom, VariableValueOption, VariableValueSelectors, VariableValueSingle, VizPanel, VizPanelState, formatRegistry, isSceneObject, sceneGraph };
|
|
917
|
+
export { ConstantVariable, CustomFormatterFn, CustomVariable, DataSourceVariable, DeepPartial, EmbeddedScene, EmbeddedSceneState, FormatRegistryID, FormatVariable, NestedScene, QueryRunnerState, QueryVariable, SceneApp, SceneAppPage, SceneByFrameRepeater, SceneCanvasText, SceneComponent, SceneComponentProps, SceneControlsSpacer, SceneDataNode, SceneDataState, SceneDataTransformer, SceneEditor, SceneEditorState, SceneFlexLayout, SceneGridLayout, SceneGridRow, SceneLayout, SceneLayoutChild, SceneLayoutChildOptions, SceneLayoutChildState, SceneLayoutState, SceneObject, SceneObjectBase, SceneObjectRef, SceneObjectState, SceneObjectStateChangedEvent, SceneObjectStateChangedPayload, SceneObjectStatePlain, SceneObjectUrlSyncConfig, SceneObjectUrlSyncHandler, SceneObjectUrlValue, SceneObjectUrlValues, SceneObjectWithUrlSync, SceneQueryRunner, SceneRefreshPicker, SceneRouteMatch, SceneTimePicker, SceneTimeRange, SceneTimeRangeLike, SceneTimeRangeState, SceneToolbarButton, SceneToolbarInput, SceneVariable, SceneVariableDependencyConfigLike, SceneVariableSet, SceneVariableSetState, SceneVariableState, SceneVariableValueChangedEvent, SceneVariables, TestVariable, TextBoxVariable, UrlSyncManager, ValidateAndUpdateResult, VariableDependencyConfig, VariableValue, VariableValueCustom, VariableValueOption, VariableValueSelectors, VariableValueSingle, VizPanel, VizPanelState, formatRegistry, isSceneObject, sceneGraph };
|