diff --git a/packages/freesewing.shared/components/workbench/inputs/design-option-count.js b/packages/freesewing.shared/components/workbench/inputs/design-option-count.js index bd4a8e4d9e7..d69c2693307 100644 --- a/packages/freesewing.shared/components/workbench/inputs/design-option-count.js +++ b/packages/freesewing.shared/components/workbench/inputs/design-option-count.js @@ -1,7 +1,6 @@ import { useState } from 'react' import ClearIcon from 'shared/components/icons/clear.js' import EditIcon from 'shared/components/icons/edit.js' -import { formatMm, round } from 'shared/utils.js' const EditCount = props => (
diff --git a/packages/freesewing.shared/components/workbench/inputs/design-option-list.js b/packages/freesewing.shared/components/workbench/inputs/design-option-list.js new file mode 100644 index 00000000000..62f7b67fba0 --- /dev/null +++ b/packages/freesewing.shared/components/workbench/inputs/design-option-list.js @@ -0,0 +1,65 @@ +import { useState } from 'react' +import ClearIcon from 'shared/components/icons/clear.js' + +const DesignOptionList = props => { + const { dflt, list } = props.pattern.config.options[props.option] + const val = (typeof props.gist?.options?.[props.option] === 'undefined') + ? dflt + : props.gist.options[props.option] + + const [value, setValue] = useState(val) + + const handleChange = (newVal) => { + console.log('setting', newVal) + if (newVal === dflt) reset() + else { + setValue(newVal) + props.updateGist(['options', props.option], newVal) + } + } + const reset = () => { + setValue(dflt) + props.unsetGist(['options', props.option]) + } + + return ( +
+
+
+ {list.map(choice => ( + + ))} +
+ +
+
+ ) +} + +export default DesignOptionList diff --git a/packages/freesewing.shared/components/workbench/menu/design-options/option.js b/packages/freesewing.shared/components/workbench/menu/design-options/option.js index e0d749e6bd4..ade512da799 100644 --- a/packages/freesewing.shared/components/workbench/menu/design-options/option.js +++ b/packages/freesewing.shared/components/workbench/menu/design-options/option.js @@ -44,19 +44,24 @@ const values = { const current = props.gist?.options?.[props.option] return (dflt==current || typeof current === 'undefined') ? {dflt} - : {current} - }, - deg: props => { - return

No val yet

+ : {current} }, list: props => { - return

No val yet

+ const dflt = props.pattern.config.options[props.option].dflt + const current = props.gist?.options?.[props.option] + const prefix = `options.${props.pattern.config.name}.${props.option}.options.` + return (dflt==current || typeof current === 'undefined') + ? {props.app.t(prefix+dflt)} + : {props.app.t(prefix+current)} + }, + deg: props => { + return

No deg val yet

}, mm: props => { - return

No val yet

+ return

No mm val yet

}, constant: props => { - return

No val yet

+ return

No constant val yet

}, }