@grafana/ui
Version:
Grafana Components Library
54 lines (49 loc) • 1.42 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var jsxRuntime = require('react/jsx-runtime');
var lodash = require('lodash');
var React = require('react');
var FilterPill = require('../../components/FilterPill/FilterPill.cjs');
var Stack = require('../../components/Layout/Stack/Stack.cjs');
;
const SeriesConfigEditor = ({ value, onChange }) => {
const onChangeToggle = React.useCallback(
(prop) => {
onChange({ ...value, [prop]: !value[prop] });
},
[value, onChange]
);
return /* @__PURE__ */ jsxRuntime.jsx(Stack.Stack, { gap: 0.5, children: Object.keys(value).map((k) => {
const key = k;
return /* @__PURE__ */ jsxRuntime.jsx(
FilterPill.FilterPill,
{
icon: value[key] ? "eye-slash" : "eye",
onClick: () => onChangeToggle(key),
label: lodash.startCase(key),
selected: value[key]
},
key
);
}) });
};
function addHideFrom(builder) {
builder.addCustomEditor({
id: "hideFrom",
name: "Hide in area",
category: ["Series"],
path: "hideFrom",
defaultValue: {
tooltip: false,
viz: false,
legend: false
},
editor: SeriesConfigEditor,
override: SeriesConfigEditor,
shouldApply: () => true,
hideFromDefaults: true,
process: (value) => value
});
}
exports.addHideFrom = addHideFrom;
//# sourceMappingURL=hideSeries.cjs.map