diff --git a/sites/shared/components/workbench/menus/core-settings/config.mjs b/sites/shared/components/workbench/menus/core-settings/config.mjs index cacf18a0ace..170ad3a5131 100644 --- a/sites/shared/components/workbench/menus/core-settings/config.mjs +++ b/sites/shared/components/workbench/menus/core-settings/config.mjs @@ -11,6 +11,7 @@ import { MarginIcon, ExpandIcon, } from 'shared/components/icons.mjs' +import { freeSewingConfig as config } from 'shared/config/freesewing.config.mjs' export const defaultSamm = (units, inMm = true) => { const dflt = units === 'imperial' ? 0.5 : 1 @@ -24,7 +25,7 @@ export const loadSettingsConfig = ({ parts = [], }) => ({ sabool: { - control: 2, // Show when control > 1 + control: config.coreSettingsControl.sa, list: [0, 1], choiceTitles: { 0: 'saNo', @@ -39,7 +40,7 @@ export const loadSettingsConfig = ({ }, samm: sabool ? { - control: 2, // Show when control > 1 + control: config.coreSettingsControl.sa, min: 0, max: units === 'imperial' ? 2 : 2.5, dflt: defaultSamm(units), @@ -47,7 +48,7 @@ export const loadSettingsConfig = ({ } : false, paperless: { - control: 2, // Show when control > 1 + control: config.coreSettingsControl.paperless, list: [0, 1], choiceTitles: { 0: 'paperlessNo', @@ -61,7 +62,7 @@ export const loadSettingsConfig = ({ icon: PaperlessIcon, }, locale: { - control: 3, // Show when control > 2 + control: config.coreSettingsControl.locale, list: ['de', 'en', 'es', 'fr', 'nl'], dflt: language, choiceTitles: { @@ -81,7 +82,7 @@ export const loadSettingsConfig = ({ icon: I18nIcon, }, units: { - control: 1, // Show when control > 2 + control: config.coreSettingsControl.units, list: ['metric', 'imperial'], dflt: 'metric', choiceTitles: { @@ -95,7 +96,7 @@ export const loadSettingsConfig = ({ icon: UnitsIcon, }, complete: { - control: 4, // Show when control > 3 + control: config.coreSettingsControl.complete, list: [1, 0], dflt: 1, choiceTitles: { @@ -109,7 +110,7 @@ export const loadSettingsConfig = ({ icon: DetailIcon, }, expand: { - control: 4, // Show when control > 3 + control: config.coreSettingsControl.expand, list: [1, 0], dflt: 1, choiceTitles: { @@ -123,14 +124,14 @@ export const loadSettingsConfig = ({ icon: ExpandIcon, }, only: { - control: 4, // Show when control > 3 + control: config.coreSettingsControl.only, dflt: false, list: parts, parts, icon: IncludeIcon, }, scale: { - control: 4, // Show when control > 3 + control: config.coreSettingsControl.scale, min: 0.1, max: 5, dflt: 1, @@ -138,7 +139,7 @@ export const loadSettingsConfig = ({ icon: ScaleIcon, }, margin: { - control: 4, // Show when control > 3 + control: config.coreSettingsControl.margin, min: 0, max: 2.5, dflt: measurementAsMm(units === 'imperial' ? 0.125 : 0.2, units), diff --git a/sites/shared/components/workbench/views/draft/header.mjs b/sites/shared/components/workbench/views/draft/header.mjs index 379a0398918..b0d2b4cfe78 100644 --- a/sites/shared/components/workbench/views/draft/header.mjs +++ b/sites/shared/components/workbench/views/draft/header.mjs @@ -1,6 +1,7 @@ // __SDEFILE__ - This file is a dependency for the stand-alone environment // Dependencies import { capitalize, shortDate } from 'shared/utils.mjs' +import { controlLevels } from 'shared/config/freesewing.config.mjs' // Hooks import { useContext, useMemo } from 'react' import { useMobileAction } from 'shared/context/mobile-menubar-context.mjs' @@ -145,52 +146,62 @@ export const DraftHeader = ({ {headerZoomButtons}
- update.toggleSa()} - title={t('core-settings:sabool.t')} - /> - update.settings(['paperless'], !settings.paperless)} - title={t('core-settings:paperless.t')} - /> - - update.settings( - ['complete'], - typeof settings.complete === 'undefined' ? 0 : settings.complete ? 0 : 1 - ) - } - title={t('core-settings:complete.t')} - /> - - update.settings( - ['expand'], - typeof settings.expand === 'undefined' ? 1 : settings.expand ? 0 : 1 - ) - } - title={t('core-settings:expand.t')} - /> - - } - dflt={settings.units !== 'imperial'} - onClick={() => - update.settings(['units'], settings.units === 'imperial' ? 'metric' : 'imperial') - } - title={t('core-settings:units.t')} - /> + {control < controlLevels.core.sa ? null : ( + update.toggleSa()} + title={t('core-settings:sabool.t')} + /> + )} + {control < controlLevels.core.paperless ? null : ( + update.settings(['paperless'], !settings.paperless)} + title={t('core-settings:paperless.t')} + /> + )} + {control < controlLevels.core.complete ? null : ( + + update.settings( + ['complete'], + typeof settings.complete === 'undefined' ? 0 : settings.complete ? 0 : 1 + ) + } + title={t('core-settings:complete.t')} + /> + )} + {control < controlLevels.core.expand ? null : ( + + update.settings( + ['expand'], + typeof settings.expand === 'undefined' ? 1 : settings.expand ? 0 : 1 + ) + } + title={t('core-settings:expand.t')} + /> + )} + {control < controlLevels.core.units ? null : ( + + } + dflt={settings.units !== 'imperial'} + onClick={() => + update.settings(['units'], settings.units === 'imperial' ? 'metric' : 'imperial') + } + title={t('core-settings:units.t')} + /> + )}