import React, { useState } from "react"; import PropTypes from "prop-types"; import { FormattedMessage } from "react-intl"; import DraftSettingSa from "../DraftSettingSa"; import DraftSettingMargin from "../DraftSettingMargin"; import DraftSettingComplete from "../DraftSettingComplete"; import DraftSettingPaperless from "../DraftSettingPaperless"; import DraftSettingUnits from "../DraftSettingUnits"; import DraftSettingLanguage from "../DraftSettingLanguage"; import DraftSettingOnly from "../DraftSettingOnly"; import DownIcon from "@material-ui/icons/KeyboardArrowDown"; const DraftSettings = props => { const [expanded, setExpanded] = useState([]); const toggleGroup = group => { let shown = expanded.slice(0); let index = shown.indexOf(group); if (index === -1) shown.push(group); else shown.splice(index, 1); setExpanded(shown); }; let noyes = [ , ]; let units = { metric: , imperial: }; const addProps = setting => { const labels = { sa: { none: , dflt: , custom: }, only: { dflt: , custom: }, paperless: noyes, complete: noyes }; let childProps = { triggerAction: props.triggerAction, updateValue: props.updateValue, units: props.units, key: setting, name: setting, labels: labels[setting] }; childProps.title = ( ); childProps.desc = ( ); if (setting === "only") { childProps.dflt = "dflt"; childProps.customDflt = []; childProps.parts = {}; for (let part of props.info.parts) childProps.parts[part] = ; } return childProps; }; let groups = { preferences: [ , , ], advanced: [ , , , ] }; return (
    {Object.keys(groups).map(group => { let open = true; if (expanded.indexOf(group) === -1) open = false; let children = null; if (open) children = groups[group].map(component => component); return (
  • toggleGroup(group)}>

  • {children}
    ); })}
); }; DraftSettings.propTypes = { info: PropTypes.object.isRequired, gist: PropTypes.object.isRequired }; DraftSettings.defaultProps = {}; export default DraftSettings;