@@ -437,13 +437,15 @@ export const fetchFlow = (endpoints: Endpoints, uuid: string, forceSave = false)
437437
438438 if ( endpoints . copyNodeEnabled ) {
439439 axios
440- . get ( endpoints . copyNodeEnabled as string )
440+ . get ( endpoints . copyNodeEnabled )
441441 . then ( ( response : any ) => {
442442 dispatch ( mergeEditorState ( { copyNodeEnabled : ! ! response . data ?. is_enabled } ) ) ;
443443 } )
444444 . catch ( ( ) => {
445445 dispatch ( mergeEditorState ( { copyNodeEnabled : false } ) ) ;
446446 } ) ;
447+ } else {
448+ dispatch ( mergeEditorState ( { copyNodeEnabled : false } ) ) ;
447449 }
448450
449451 getFlowDetails ( assetStore . revisions )
@@ -1257,7 +1259,8 @@ export const copyNode = (nodeUUID: string) => (
12571259 const primary = nodes [ nodeUUID ] ;
12581260 if ( ! primary ) return ;
12591261
1260- let sourceLocalization = extractLocalizationForNode ( definition . localization , primary ) ;
1262+ const localization = definition ?. localization || { } ;
1263+ let sourceLocalization = extractLocalizationForNode ( localization , primary ) ;
12611264
12621265 const payload : ClipboardPayload = {
12631266 primary,
@@ -1276,7 +1279,7 @@ export const copyNode = (nodeUUID: string) => (
12761279 } ;
12771280 sourceLocalization = mergeLocalizations (
12781281 sourceLocalization ,
1279- extractLocalizationForNode ( definition . localization , paired )
1282+ extractLocalizationForNode ( localization , paired )
12801283 ) ;
12811284 payload . sourceLocalization = sourceLocalization ;
12821285 }
@@ -1322,16 +1325,15 @@ export const pasteNode = (position: FlowPosition) => (
13221325 flowContext : { nodes, assetStore, definition }
13231326 } = getState ( ) ;
13241327
1328+ const localization = definition ?. localization || { } ;
1329+
13251330 const cloned = cloneNodeWithNewUUIDs ( primary ) ;
13261331 cloned . node = resolveResultNames ( cloned . node , nodes ) ;
13271332 cloned . ui = { ...cloned . ui , position } ;
13281333
13291334 const primaryUUIDMap = buildUUIDMap ( primary , cloned ) ;
1330- const remappedPrimary = remapLocalization (
1331- sourceLocalization || definition . localization ,
1332- primaryUUIDMap
1333- ) ;
1334- let updatedLocalization = mergeLocalizations ( definition . localization , remappedPrimary ) ;
1335+ const remappedPrimary = remapLocalization ( sourceLocalization || localization , primaryUUIDMap ) ;
1336+ let updatedLocalization = mergeLocalizations ( localization , remappedPrimary ) ;
13351337
13361338 let updatedNodes = nodes ;
13371339
@@ -1351,7 +1353,7 @@ export const pasteNode = (position: FlowPosition) => (
13511353 clonedPaired . inboundConnections = { [ cloned . node . exits [ 0 ] . uuid ] : cloned . node . uuid } ;
13521354
13531355 const remappedPaired = remapLocalization (
1354- sourceLocalization || definition . localization ,
1356+ sourceLocalization || localization ,
13551357 buildUUIDMap ( paired , clonedPaired )
13561358 ) ;
13571359 updatedLocalization = mergeLocalizations ( updatedLocalization , remappedPaired ) ;
@@ -1371,7 +1373,7 @@ export const pasteNode = (position: FlowPosition) => (
13711373 dispatch ( updateAssets ( mutators . addFlowResult ( assetStore , cloned . node ) ) ) ;
13721374 }
13731375
1374- if ( updatedLocalization !== definition . localization ) {
1376+ if ( updatedLocalization !== localization ) {
13751377 dispatch ( updateDefinition ( { ...definition , localization : updatedLocalization } ) ) ;
13761378 }
13771379
0 commit comments