37 lines
621 B
JavaScript
37 lines
621 B
JavaScript
export const resolveOpenCodeUpgradeCapability = ({
|
|||
|
|
isExternal,
|
||
|
|
hasManagedProcess,
|
||
|
|
activeBinary,
|
||
|
|
isBundledBinary,
|
||
|
|
}) => {
|
||
|
|
if (isExternal) {
|
||
|
|
return {
|
||
|
|
supported: false,
|
||
|
|
manager: 'external',
|
||
|
|
reason: 'external',
|
||
|
|
};
|
||
|
|
}
|
||
|
|
|
||
|
|
if (!hasManagedProcess || !activeBinary) {
|
||
|
|
return {
|
||
|
|
supported: false,
|
||
|
|
manager: null,
|
||
|
|
reason: 'unavailable',
|
||
|
|
};
|
||
|
|
}
|
||
|
|
|
||
|
|
if (isBundledBinary(activeBinary)) {
|
||
|
|
return {
|
||
|
|
supported: false,
|
||
|
|
manager: 'openchamber',
|
||
|
|
reason: 'bundled',
|
||
|
|
};
|
||
|
|
}
|
||
|
|
|
||
|
|
return {
|
||
|
|
supported: true,
|
||
|
|
manager: 'opencode',
|
||
|
|
reason: null,
|
||
|
|
};
|
||
|
|
};
|