@perses-dev/prometheus-plugin 0.19.0 → 0.21.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.
- package/dist/cjs/plugins/MatcherEditor.js +1 -0
- package/dist/cjs/plugins/variable.js +35 -13
- package/dist/plugins/MatcherEditor.d.ts.map +1 -1
- package/dist/plugins/MatcherEditor.js +1 -0
- package/dist/plugins/MatcherEditor.js.map +1 -1
- package/dist/plugins/variable.d.ts.map +1 -1
- package/dist/plugins/variable.js +37 -15
- package/dist/plugins/variable.js.map +1 -1
- package/package.json +3 -3
- package/plugin.json +4 -4
|
@@ -59,6 +59,7 @@ function MatcherEditor({ matchers , onChange }) {
|
|
|
59
59
|
/*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Box, {
|
|
60
60
|
children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Button, {
|
|
61
61
|
fullWidth: false,
|
|
62
|
+
color: "secondary",
|
|
62
63
|
variant: "outlined",
|
|
63
64
|
onClick: ()=>{
|
|
64
65
|
const newMatchers = (0, _immer.produce)(matchers, (draft)=>{
|
|
@@ -38,19 +38,41 @@ function StaticListVariableOptionEditor(props) {
|
|
|
38
38
|
})
|
|
39
39
|
});
|
|
40
40
|
};
|
|
41
|
-
return /*#__PURE__*/ (0, _jsxRuntime.
|
|
42
|
-
children:
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
|
|
41
|
+
return /*#__PURE__*/ (0, _jsxRuntime.jsxs)("div", {
|
|
42
|
+
children: [
|
|
43
|
+
/*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Autocomplete, {
|
|
44
|
+
onPaste: (e)=>{
|
|
45
|
+
// Append new values on paste
|
|
46
|
+
const v = e.clipboardData.getData('text/plain');
|
|
47
|
+
if (v) {
|
|
48
|
+
const values = v.split(',');
|
|
49
|
+
onChange(null, value.concat(values));
|
|
50
|
+
e.preventDefault();
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
multiple: true,
|
|
54
|
+
value: value,
|
|
55
|
+
onChange: onChange,
|
|
56
|
+
options: [],
|
|
57
|
+
freeSolo: true,
|
|
58
|
+
clearOnBlur: true,
|
|
59
|
+
renderInput: (params)=>/*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.TextField, {
|
|
60
|
+
...params,
|
|
61
|
+
label: "Values",
|
|
62
|
+
placeholder: "Values"
|
|
63
|
+
})
|
|
64
|
+
}),
|
|
65
|
+
/*#__PURE__*/ (0, _jsxRuntime.jsxs)(_material.Typography, {
|
|
66
|
+
variant: "caption",
|
|
67
|
+
children: [
|
|
68
|
+
"Type new value then press ",
|
|
69
|
+
`"`,
|
|
70
|
+
"Enter",
|
|
71
|
+
`"`,
|
|
72
|
+
" to add."
|
|
73
|
+
]
|
|
74
|
+
})
|
|
75
|
+
]
|
|
54
76
|
});
|
|
55
77
|
}
|
|
56
78
|
const StaticListVariable = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MatcherEditor.d.ts","sourceRoot":"","sources":["../../src/plugins/MatcherEditor.tsx"],"names":[],"mappings":";AAiBA,aAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"MatcherEditor.d.ts","sourceRoot":"","sources":["../../src/plugins/MatcherEditor.tsx"],"names":[],"mappings":";AAiBA,aAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,kBAAkB,eA6CvE"}
|
|
@@ -46,6 +46,7 @@ export function MatcherEditor({ matchers , onChange }) {
|
|
|
46
46
|
/*#__PURE__*/ _jsx(Box, {
|
|
47
47
|
children: /*#__PURE__*/ _jsx(Button, {
|
|
48
48
|
fullWidth: false,
|
|
49
|
+
color: "secondary",
|
|
49
50
|
variant: "outlined",
|
|
50
51
|
onClick: ()=>{
|
|
51
52
|
const newMatchers = produce(matchers, (draft)=>{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/plugins/MatcherEditor.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { Stack, TextField, Button, Box, IconButton } from '@mui/material';\nimport { produce } from 'immer';\nimport TrashIcon from 'mdi-material-ui/TrashCan';\n\ntype MatcherEditorProps = {\n matchers: string[];\n onChange: (matchers: string[]) => void;\n};\n\nexport function MatcherEditor({ matchers, onChange }: MatcherEditorProps) {\n return (\n <Stack spacing={1}>\n {matchers.map((matcher, index) => (\n <Box key={index} display=\"flex\">\n <TextField\n fullWidth\n label=\"Series Selector\"\n value={matcher}\n onChange={(e) => {\n const newMatchers = produce(matchers, (draft) => {\n draft[index] = e.target.value;\n });\n onChange(newMatchers);\n }}\n />\n <IconButton\n onClick={() => {\n const newMatchers = produce(matchers, (draft) => {\n draft.splice(index, 1);\n });\n onChange(newMatchers);\n }}\n >\n <TrashIcon />\n </IconButton>\n </Box>\n ))}\n <Box>\n <Button\n fullWidth={false}\n variant=\"outlined\"\n onClick={() => {\n const newMatchers = produce(matchers, (draft) => {\n draft.push('');\n });\n onChange(newMatchers);\n }}\n >\n Add Series Selector\n </Button>\n </Box>\n </Stack>\n );\n}\n"],"names":["Stack","TextField","Button","Box","IconButton","produce","TrashIcon","MatcherEditor","matchers","onChange","spacing","map","matcher","index","display","fullWidth","label","value","e","newMatchers","draft","target","onClick","splice","variant","push"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC;AAAA,SAASA,KAAK,EAAEC,SAAS,EAAEC,MAAM,EAAEC,GAAG,EAAEC,UAAU,QAAQ,eAAe,CAAC;AAC1E,SAASC,OAAO,QAAQ,OAAO,CAAC;AAChC,OAAOC,SAAS,MAAM,0BAA0B,CAAC;AAOjD,OAAO,SAASC,aAAa,CAAC,EAAEC,QAAQ,CAAA,EAAEC,QAAQ,CAAA,EAAsB,EAAE;IACxE,qBACE,MAACT,KAAK;QAACU,OAAO,EAAE,CAAC;;YACdF,QAAQ,CAACG,GAAG,CAAC,CAACC,OAAO,EAAEC,KAAK,iBAC3B,MAACV,GAAG;oBAAaW,OAAO,EAAC,MAAM;;sCAC7B,KAACb,SAAS;4BACRc,SAAS;4BACTC,KAAK,EAAC,iBAAiB;4BACvBC,KAAK,EAAEL,OAAO;4BACdH,QAAQ,EAAE,CAACS,CAAC,GAAK;gCACf,MAAMC,WAAW,GAAGd,OAAO,CAACG,QAAQ,EAAE,CAACY,KAAK,GAAK;oCAC/CA,KAAK,CAACP,KAAK,CAAC,GAAGK,CAAC,CAACG,MAAM,CAACJ,KAAK,CAAC;gCAChC,CAAC,CAAC,AAAC;gCACHR,QAAQ,CAACU,WAAW,CAAC,CAAC;4BACxB,CAAC;0BACD;sCACF,KAACf,UAAU;4BACTkB,OAAO,EAAE,IAAM;gCACb,MAAMH,WAAW,GAAGd,OAAO,CAACG,QAAQ,EAAE,CAACY,KAAK,GAAK;oCAC/CA,KAAK,CAACG,MAAM,CAACV,KAAK,EAAE,CAAC,CAAC,CAAC;gCACzB,CAAC,CAAC,AAAC;gCACHJ,QAAQ,CAACU,WAAW,CAAC,CAAC;4BACxB,CAAC;sCAED,cAAA,KAACb,SAAS,KAAG;0BACF;;mBArBLO,KAAK,CAsBT,AACP,CAAC;0BACF,KAACV,GAAG;0BACF,cAAA,KAACD,MAAM;oBACLa,SAAS,EAAE,KAAK;oBAChBS,OAAO,EAAC,UAAU;
|
|
1
|
+
{"version":3,"sources":["../../src/plugins/MatcherEditor.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { Stack, TextField, Button, Box, IconButton } from '@mui/material';\nimport { produce } from 'immer';\nimport TrashIcon from 'mdi-material-ui/TrashCan';\n\ntype MatcherEditorProps = {\n matchers: string[];\n onChange: (matchers: string[]) => void;\n};\n\nexport function MatcherEditor({ matchers, onChange }: MatcherEditorProps) {\n return (\n <Stack spacing={1}>\n {matchers.map((matcher, index) => (\n <Box key={index} display=\"flex\">\n <TextField\n fullWidth\n label=\"Series Selector\"\n value={matcher}\n onChange={(e) => {\n const newMatchers = produce(matchers, (draft) => {\n draft[index] = e.target.value;\n });\n onChange(newMatchers);\n }}\n />\n <IconButton\n onClick={() => {\n const newMatchers = produce(matchers, (draft) => {\n draft.splice(index, 1);\n });\n onChange(newMatchers);\n }}\n >\n <TrashIcon />\n </IconButton>\n </Box>\n ))}\n <Box>\n <Button\n fullWidth={false}\n color=\"secondary\"\n variant=\"outlined\"\n onClick={() => {\n const newMatchers = produce(matchers, (draft) => {\n draft.push('');\n });\n onChange(newMatchers);\n }}\n >\n Add Series Selector\n </Button>\n </Box>\n </Stack>\n );\n}\n"],"names":["Stack","TextField","Button","Box","IconButton","produce","TrashIcon","MatcherEditor","matchers","onChange","spacing","map","matcher","index","display","fullWidth","label","value","e","newMatchers","draft","target","onClick","splice","color","variant","push"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC;AAAA,SAASA,KAAK,EAAEC,SAAS,EAAEC,MAAM,EAAEC,GAAG,EAAEC,UAAU,QAAQ,eAAe,CAAC;AAC1E,SAASC,OAAO,QAAQ,OAAO,CAAC;AAChC,OAAOC,SAAS,MAAM,0BAA0B,CAAC;AAOjD,OAAO,SAASC,aAAa,CAAC,EAAEC,QAAQ,CAAA,EAAEC,QAAQ,CAAA,EAAsB,EAAE;IACxE,qBACE,MAACT,KAAK;QAACU,OAAO,EAAE,CAAC;;YACdF,QAAQ,CAACG,GAAG,CAAC,CAACC,OAAO,EAAEC,KAAK,iBAC3B,MAACV,GAAG;oBAAaW,OAAO,EAAC,MAAM;;sCAC7B,KAACb,SAAS;4BACRc,SAAS;4BACTC,KAAK,EAAC,iBAAiB;4BACvBC,KAAK,EAAEL,OAAO;4BACdH,QAAQ,EAAE,CAACS,CAAC,GAAK;gCACf,MAAMC,WAAW,GAAGd,OAAO,CAACG,QAAQ,EAAE,CAACY,KAAK,GAAK;oCAC/CA,KAAK,CAACP,KAAK,CAAC,GAAGK,CAAC,CAACG,MAAM,CAACJ,KAAK,CAAC;gCAChC,CAAC,CAAC,AAAC;gCACHR,QAAQ,CAACU,WAAW,CAAC,CAAC;4BACxB,CAAC;0BACD;sCACF,KAACf,UAAU;4BACTkB,OAAO,EAAE,IAAM;gCACb,MAAMH,WAAW,GAAGd,OAAO,CAACG,QAAQ,EAAE,CAACY,KAAK,GAAK;oCAC/CA,KAAK,CAACG,MAAM,CAACV,KAAK,EAAE,CAAC,CAAC,CAAC;gCACzB,CAAC,CAAC,AAAC;gCACHJ,QAAQ,CAACU,WAAW,CAAC,CAAC;4BACxB,CAAC;sCAED,cAAA,KAACb,SAAS,KAAG;0BACF;;mBArBLO,KAAK,CAsBT,AACP,CAAC;0BACF,KAACV,GAAG;0BACF,cAAA,KAACD,MAAM;oBACLa,SAAS,EAAE,KAAK;oBAChBS,KAAK,EAAC,WAAW;oBACjBC,OAAO,EAAC,UAAU;oBAClBH,OAAO,EAAE,IAAM;wBACb,MAAMH,WAAW,GAAGd,OAAO,CAACG,QAAQ,EAAE,CAACY,KAAK,GAAK;4BAC/CA,KAAK,CAACM,IAAI,CAAC,EAAE,CAAC,CAAC;wBACjB,CAAC,CAAC,AAAC;wBACHjB,QAAQ,CAACU,WAAW,CAAC,CAAC;oBACxB,CAAC;8BACF,qBAED;kBAAS;cACL;;MACA,CACR;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variable.d.ts","sourceRoot":"","sources":["../../src/plugins/variable.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAsB,MAAM,2BAA2B,CAAC;AAG/F,aAAK,gBAAgB,GAAG,MAAM,GAAG,cAAc,CAAC;AAEhD,aAAK,yBAAyB,GAAG;IAC/B,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B,CAAC;
|
|
1
|
+
{"version":3,"file":"variable.d.ts","sourceRoot":"","sources":["../../src/plugins/variable.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAsB,MAAM,2BAA2B,CAAC;AAG/F,aAAK,gBAAgB,GAAG,MAAM,GAAG,cAAc,CAAC;AAEhD,aAAK,yBAAyB,GAAG;IAC/B,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B,CAAC;AA8CF,eAAO,MAAM,kBAAkB,EAAE,cAAc,CAAC,yBAAyB,CAiBxE,CAAC"}
|
package/dist/plugins/variable.js
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11
11
|
// See the License for the specific language governing permissions and
|
|
12
12
|
// limitations under the License.
|
|
13
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
-
import { Autocomplete, TextField } from '@mui/material';
|
|
13
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
import { Autocomplete, TextField, Typography } from '@mui/material';
|
|
15
15
|
function StaticListVariableOptionEditor(props) {
|
|
16
16
|
const value = props.value.values.map((v)=>{
|
|
17
17
|
if (typeof v === 'string') {
|
|
@@ -30,19 +30,41 @@ function StaticListVariableOptionEditor(props) {
|
|
|
30
30
|
})
|
|
31
31
|
});
|
|
32
32
|
};
|
|
33
|
-
return /*#__PURE__*/
|
|
34
|
-
children:
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
|
|
33
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
34
|
+
children: [
|
|
35
|
+
/*#__PURE__*/ _jsx(Autocomplete, {
|
|
36
|
+
onPaste: (e)=>{
|
|
37
|
+
// Append new values on paste
|
|
38
|
+
const v = e.clipboardData.getData('text/plain');
|
|
39
|
+
if (v) {
|
|
40
|
+
const values = v.split(',');
|
|
41
|
+
onChange(null, value.concat(values));
|
|
42
|
+
e.preventDefault();
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
multiple: true,
|
|
46
|
+
value: value,
|
|
47
|
+
onChange: onChange,
|
|
48
|
+
options: [],
|
|
49
|
+
freeSolo: true,
|
|
50
|
+
clearOnBlur: true,
|
|
51
|
+
renderInput: (params)=>/*#__PURE__*/ _jsx(TextField, {
|
|
52
|
+
...params,
|
|
53
|
+
label: "Values",
|
|
54
|
+
placeholder: "Values"
|
|
55
|
+
})
|
|
56
|
+
}),
|
|
57
|
+
/*#__PURE__*/ _jsxs(Typography, {
|
|
58
|
+
variant: "caption",
|
|
59
|
+
children: [
|
|
60
|
+
"Type new value then press ",
|
|
61
|
+
`"`,
|
|
62
|
+
"Enter",
|
|
63
|
+
`"`,
|
|
64
|
+
" to add."
|
|
65
|
+
]
|
|
66
|
+
})
|
|
67
|
+
]
|
|
46
68
|
});
|
|
47
69
|
}
|
|
48
70
|
export const StaticListVariable = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/plugins/variable.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { VariablePlugin, VariableOption, OptionsEditorProps } from '@perses-dev/plugin-system';\nimport { Autocomplete, TextField } from '@mui/material';\n\ntype StaticListOption = string | VariableOption;\n\ntype StaticListVariableOptions = {\n values: StaticListOption[];\n};\n\nfunction StaticListVariableOptionEditor(props: OptionsEditorProps<StaticListVariableOptions>) {\n const value = props.value.values.map((v) => {\n if (typeof v === 'string') {\n return v;\n } else {\n return v.value;\n }\n });\n\n const onChange = (__: unknown, value: string[]) => {\n props.onChange({\n values: value.map((v) => {\n return { value: v, label: v };\n }),\n });\n };\n\n return (\n <div>\n <Autocomplete\n multiple\n value={value}\n onChange={onChange}\n options={[]}\n freeSolo\n renderInput={(params) => <TextField {...params} label=\"Values\" placeholder=\"Values\" />}\n />\n </div>\n );\n}\n\nexport const StaticListVariable: VariablePlugin<StaticListVariableOptions> = {\n getVariableOptions: async (spec) => {\n const values = spec.values?.map((v) => {\n if (typeof v === 'string') {\n return { label: v, value: v };\n }\n return v;\n });\n return {\n data: values,\n };\n },\n dependsOn: () => {\n return { variables: [] };\n },\n OptionsEditorComponent: StaticListVariableOptionEditor,\n createInitialOptions: () => ({ values: [] }),\n};\n"],"names":["Autocomplete","TextField","StaticListVariableOptionEditor","props","value","values","map","v","onChange","__","label","div","multiple","options","freeSolo","renderInput","params","placeholder","StaticListVariable","getVariableOptions","spec","data","dependsOn","variables","OptionsEditorComponent","createInitialOptions"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC;AACA,SAASA,YAAY,EAAEC,SAAS,QAAQ,eAAe,CAAC;
|
|
1
|
+
{"version":3,"sources":["../../src/plugins/variable.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { VariablePlugin, VariableOption, OptionsEditorProps } from '@perses-dev/plugin-system';\nimport { Autocomplete, TextField, Typography } from '@mui/material';\n\ntype StaticListOption = string | VariableOption;\n\ntype StaticListVariableOptions = {\n values: StaticListOption[];\n};\n\nfunction StaticListVariableOptionEditor(props: OptionsEditorProps<StaticListVariableOptions>) {\n const value = props.value.values.map((v) => {\n if (typeof v === 'string') {\n return v;\n } else {\n return v.value;\n }\n });\n\n const onChange = (__: unknown, value: string[]) => {\n props.onChange({\n values: value.map((v) => {\n return { value: v, label: v };\n }),\n });\n };\n\n return (\n <div>\n <Autocomplete\n onPaste={(e) => {\n // Append new values on paste\n const v = e.clipboardData.getData('text/plain');\n if (v) {\n const values = v.split(',');\n onChange(null, value.concat(values));\n e.preventDefault();\n }\n }}\n multiple\n value={value}\n onChange={onChange}\n options={[]}\n freeSolo\n clearOnBlur\n renderInput={(params) => <TextField {...params} label=\"Values\" placeholder=\"Values\" />}\n />\n <Typography variant=\"caption\">\n Type new value then press {`\"`}Enter{`\"`} to add.\n </Typography>\n </div>\n );\n}\n\nexport const StaticListVariable: VariablePlugin<StaticListVariableOptions> = {\n getVariableOptions: async (spec) => {\n const values = spec.values?.map((v) => {\n if (typeof v === 'string') {\n return { label: v, value: v };\n }\n return v;\n });\n return {\n data: values,\n };\n },\n dependsOn: () => {\n return { variables: [] };\n },\n OptionsEditorComponent: StaticListVariableOptionEditor,\n createInitialOptions: () => ({ values: [] }),\n};\n"],"names":["Autocomplete","TextField","Typography","StaticListVariableOptionEditor","props","value","values","map","v","onChange","__","label","div","onPaste","e","clipboardData","getData","split","concat","preventDefault","multiple","options","freeSolo","clearOnBlur","renderInput","params","placeholder","variant","StaticListVariable","getVariableOptions","spec","data","dependsOn","variables","OptionsEditorComponent","createInitialOptions"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@perses-dev/prometheus-plugin",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.21.0",
|
|
4
4
|
"description": "Prometheus plugin for Perses",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://github.com/perses/perses/blob/main/README.md",
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@lezer/highlight": "^1.0.0",
|
|
32
32
|
"@lezer/lr": "^1.2.0",
|
|
33
|
-
"@perses-dev/core": "
|
|
34
|
-
"@perses-dev/plugin-system": "
|
|
33
|
+
"@perses-dev/core": "0.21.0",
|
|
34
|
+
"@perses-dev/plugin-system": "0.21.0",
|
|
35
35
|
"@prometheus-io/lezer-promql": "^0.37.0",
|
|
36
36
|
"date-fns": "^2.28.0",
|
|
37
37
|
"immer": "^9.0.15"
|
package/plugin.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"pluginType": "Variable",
|
|
10
10
|
"kind": "StaticListVariable",
|
|
11
11
|
"display": {
|
|
12
|
-
"name": "Static List
|
|
12
|
+
"name": "[Static] Custom List",
|
|
13
13
|
"description": "Static list variables allow you to define an array of values"
|
|
14
14
|
}
|
|
15
15
|
},
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"pluginType": "Variable",
|
|
18
18
|
"kind": "PrometheusLabelValuesVariable",
|
|
19
19
|
"display": {
|
|
20
|
-
"name": "
|
|
20
|
+
"name": "[Prometheus] Label Values",
|
|
21
21
|
"description": ""
|
|
22
22
|
}
|
|
23
23
|
},
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"pluginType": "Variable",
|
|
26
26
|
"kind": "PrometheusLabelNamesVariable",
|
|
27
27
|
"display": {
|
|
28
|
-
"name": "
|
|
28
|
+
"name": "[Prometheus] Label Names",
|
|
29
29
|
"description": ""
|
|
30
30
|
}
|
|
31
31
|
},
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"pluginType": "Variable",
|
|
34
34
|
"kind": "PrometheusPromQLVariable",
|
|
35
35
|
"display": {
|
|
36
|
-
"name": "
|
|
36
|
+
"name": "[Prometheus] PromQL Result Values",
|
|
37
37
|
"description": ""
|
|
38
38
|
}
|
|
39
39
|
},
|