Browse Source

feat: validate editor zoom settings

Ahmad Kholid 2 years ago
parent
commit
b50699aee3
1 changed files with 6 additions and 2 deletions
  1. 6 2
      src/components/newtab/workflow/WorkflowEditor.vue

+ 6 - 2
src/components/newtab/workflow/WorkflowEditor.vue

@@ -127,6 +127,7 @@ const nodeTypes = blockComponents.keys().reduce((acc, key) => {
   return acc;
 }, {});
 const getPosition = (position) => (Array.isArray(position) ? position : [0, 0]);
+const setMinValue = (num, min) => (num < min ? min : num);
 
 const { t } = useI18n();
 const store = useStore();
@@ -136,8 +137,11 @@ const editor = useVueFlow({
   deleteKeyCode: 'Delete',
   elevateEdgesOnSelect: true,
   defaultZoom: props.data?.zoom ?? 1,
-  minZoom: Math.abs(+store.settings.editor.minZoom || 0.5),
-  maxZoom: Math.abs(+store.settings.editor.maxZoom || 1.2),
+  minZoom: setMinValue(+store.settings.editor.minZoom || 0.5, 0.1),
+  maxZoom: setMinValue(
+    +store.settings.editor.maxZoom || 1.2,
+    +store.settings.editor.minZoom + 0.1
+  ),
   multiSelectionKeyCode: isMac ? 'Meta' : 'Control',
   defaultPosition: getPosition(props.data?.position),
   ...props.options,