@@ -12,6 +12,7 @@ import {useGlobalStore} from '@/stores/global';
1212import {useTypings } from " @/composables/typings" ;
1313import {useModelStore } from " @/stores/model" ;
1414import {useSyncing } from " @/composables/syncing" ;
15+ import {useUserData } from " @/composables/user-data" ;
1516// import yaml from 'js-yaml';
1617
1718const emit = defineEmits ([' save' , ' create' , ' change' , ' focus' , ' blur' ]);
@@ -23,8 +24,8 @@ const { columns = false, userData } = defineProps<{
2324}>();
2425const { canSaveStructure, yamlException, structureStates } = useStructure ();
2526const modelStore = useModelStore ();
26- const { getTypescriptTypings, getTypescriptDefaultObj, lastStateTimestamp } = useTypings ();
27- const { isFolderSynced, askToSyncFolder, unSyncFolder } = useSyncing ();
27+ const { getTypescriptTypings, getTypescriptDefaultObj } = useTypings ();
28+ const { isFolderSynced, askToSyncFolder, unSyncFolder, lastStateTimestamp } = useSyncing ();
2829const showParsingDelay = ref (false );
2930const progressBarValue = ref (0 );
3031const progressBarCompleted = ref (false );
@@ -108,11 +109,10 @@ const value = computed({
108109 return structure .value .content ;
109110 },
110111 set(value : string ) {
112+ modelStore .setTemporaryContent (value );
111113 if (globalStore .userSettings .data .editorLiveUpdate ) {
112114 emit (' change' , value );
113115 } else {
114- modelStore .setTemporaryContent (value );
115-
116116 clearInterval (parseInterval );
117117 clearInterval (showParseInterval );
118118 clearInterval (parseValueInterval );
@@ -582,7 +582,7 @@ watch(() => globalStore.userSettings.data, () => {
582582 size =" small"
583583 />
584584 <v-tooltip
585- v-if =" isFolderSynced(modelStore.structure)"
585+ v-if =" modelStore.structure.server_url || isFolderSynced(modelStore.structure)"
586586 text =" Save (CTRL+S)"
587587 location =" bottom"
588588 >
@@ -591,7 +591,7 @@ watch(() => globalStore.userSettings.data, () => {
591591 v-if =" structure"
592592 v-bind =" props"
593593 :loading =" structureStates.saving"
594- :disabled =" !canSaveStructure || structureStates.saving || structureStates.saved"
594+ :disabled =" !canSaveStructure || (!modelStore.structure.server_url && !isFolderSynced(modelStore.structure)) || structureStates.saving || structureStates.saved"
595595 :prepend-icon =" !structureStates.saved ? 'mdi-content-save' : 'mdi-check'"
596596 variant =" outlined"
597597 color =" primary"
0 commit comments