File size: 852 Bytes
d9494a5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import { LogicFunctionExecutionMode } from 'src/engine/metadata-modules/logic-function/logic-function.entity';
import {
  isLogicFunctionReadyForPrebuiltInstall,
  type LogicFunctionPrebuiltStateFields,
} from 'src/engine/metadata-modules/logic-function/utils/is-logic-function-ready-for-prebuilt-install.util';

export const shouldReinstallLogicFunctionPrebuiltBundle = ({
  existingLogicFunction,
  newLogicFunction,
}: {
  existingLogicFunction: LogicFunctionPrebuiltStateFields;
  newLogicFunction: LogicFunctionPrebuiltStateFields;
}): boolean => {
  if (!isLogicFunctionReadyForPrebuiltInstall(newLogicFunction)) {
    return false;
  }

  if (
    existingLogicFunction.executionMode ===
      LogicFunctionExecutionMode.PREBUILT &&
    existingLogicFunction.checksum === newLogicFunction.checksum
  ) {
    return false;
  }

  return true;
};