in src/versionSocketConnection.ts [65:88]
private calcBrowserRevision(data: BrowserVersionCdpResponse): {revision: string, isHeadless: boolean} {
if (data.id !== 0 || !data.result || !data.result.product && !data.result.revision) {
return {revision: '', isHeadless: false};
}
// product in the form [Edg, HeadlessEdg]/#.#.#.#
const productParts = (data.result.product as string).split('/');
const isHeadless = productParts[0].includes('Headless');
const versionNum = productParts[1];
const currentVersion = versionNum.split('.');
const minSupportedVersion = MIN_SUPPORTED_VERSION.split('.');
const currentRevision = data.result.revision || '';
for (let i = 0; i < currentVersion.length; i++) {
// Loop through from Major to minor numbers
if (currentVersion[i] > minSupportedVersion[i]) {
return {revision: currentRevision, isHeadless};
}
if (currentVersion[i] < minSupportedVersion[i]) {
return {revision: '', isHeadless};
}
// Continue to the next number
}
// All numbers matched, return supported revision
return {revision: currentRevision, isHeadless};
}