Farmbot-Web-App/frontend/account/labs/labs_features_list_ui.tsx

29 lines
904 B
TypeScript

import * as React from "react";
import { fetchLabFeatures, LabsFeature } from "./labs_features_list_data";
import { KeyValShowRow } from "../../controls/key_val_show_row";
import { GetWebAppConfigValue } from "../../config_storage/actions";
interface LabsFeaturesListProps {
onToggle(feature: LabsFeature): void;
getConfigValue: GetWebAppConfigValue;
}
export function LabsFeaturesList(props: LabsFeaturesListProps) {
return <div>
{fetchLabFeatures(props.getConfigValue).map((p, i) => {
const displayValue = p.displayInvert ? !p.value : p.value;
return <KeyValShowRow key={i}
label={p.name}
labelPlaceholder=""
value={p.description}
toggleValue={displayValue ? 1 : 0}
valuePlaceholder=""
onClick={() => {
props.onToggle(p);
p.callback && p.callback();
}}
disabled={false} />;
})}
</div>;
}