diff --git a/packages/components/src/DraftConfigurator/DraftSettingSa/index.js b/packages/components/src/DraftConfigurator/DraftSettingSa/index.js
index 12f1632ff09..33ec31fc870 100644
--- a/packages/components/src/DraftConfigurator/DraftSettingSa/index.js
+++ b/packages/components/src/DraftConfigurator/DraftSettingSa/index.js
@@ -102,7 +102,7 @@ const DraftSettingSa = (props) => {
)
return (
-
+
-
+
{data.settings.advanced && (
-
+
{Object.keys(groups).map((group) => {
let open = true
if (expanded.indexOf(group) === -1) open = false
diff --git a/packages/components/src/DraftConfigurator/OptionGroup/index.js b/packages/components/src/DraftConfigurator/OptionGroup/index.js
index 500b37b9384..eb87fbdb82f 100644
--- a/packages/components/src/DraftConfigurator/OptionGroup/index.js
+++ b/packages/components/src/DraftConfigurator/OptionGroup/index.js
@@ -10,6 +10,7 @@ import optionDefault from '@freesewing/utils/optionDefault'
import { FormattedMessage } from 'react-intl'
import { injectIntl } from 'react-intl'
import RightIcon from '@material-ui/icons/KeyboardArrowRight'
+import OptionSubGroup from '../OptionSubGroup'
const OptionGroup = (props) => {
const renderOption = (name, sub = false) => {
@@ -74,13 +75,11 @@ const OptionGroup = (props) => {
let children = []
for (let option of name[subGroup]) children.push(renderOption(option, true))
output.push(
- -
-
-
-
-
-
-
+ }
+ children={children}
+ key={subGroup}
+ />
)
}
} else output.push(renderOption(name))
diff --git a/packages/components/src/DraftConfigurator/OptionSubGroup.js b/packages/components/src/DraftConfigurator/OptionSubGroup.js
new file mode 100644
index 00000000000..c95f4100b56
--- /dev/null
+++ b/packages/components/src/DraftConfigurator/OptionSubGroup.js
@@ -0,0 +1,18 @@
+import React, { useState } from 'react'
+import RightIcon from '@material-ui/icons/KeyboardArrowRight'
+
+const OptionSubGroup = ({ title, children }) => {
+ const [open, setOpen] = useState(false)
+
+ return (
+ -
+ setOpen(!open)}>
+
+ {title}
+
+ {open && }
+
+ )
+}
+
+export default OptionSubGroup
diff --git a/packages/components/src/DraftConfigurator/PatternOptionBool/index.js b/packages/components/src/DraftConfigurator/PatternOptionBool/index.js
index 1cf1facc273..d31bf3e0538 100644
--- a/packages/components/src/DraftConfigurator/PatternOptionBool/index.js
+++ b/packages/components/src/DraftConfigurator/PatternOptionBool/index.js
@@ -35,7 +35,7 @@ const PatternOptionBool = (props) => {
/>
)
return (
- -
+
-
{
/>
)
return (
-
-
+
-
+
-
+
-
{
let children = null
if (expanded.indexOf(group) !== -1)
children = (
-
+
{
}
}
- return
+ return
}
export default PatternOptions
diff --git a/packages/components/src/DraftConfigurator/index.js b/packages/components/src/DraftConfigurator/index.js
index 1d8eb43fd5d..8aeb8a3e6af 100644
--- a/packages/components/src/DraftConfigurator/index.js
+++ b/packages/components/src/DraftConfigurator/index.js
@@ -2,6 +2,8 @@ import React from 'react'
import { FormattedMessage } from 'react-intl'
import PatternOptions from './PatternOptions'
import DraftSettings from './DraftSettings'
+import TuneIcon from '@material-ui/icons/Tune'
+import WrenchIcon from '@material-ui/icons/Build'
const DraftConfigurator = ({
noDocs = false,
@@ -21,9 +23,10 @@ const DraftConfigurator = ({
raiseEvent
}
return (
-