mirror of
https://github.com/dbeaver/cloudbeaver.git
synced 2026-09-24 16:04:36 +08:00
33 lines
892 B
TypeScript
33 lines
892 B
TypeScript
/*
|
|
* CloudBeaver - Cloud Database Manager
|
|
* Copyright (C) 2020-2024 DBeaver Corp and others
|
|
*
|
|
* Licensed under the Apache License, Version 2.0.
|
|
* you may not use this file except in compliance with the License.
|
|
*/
|
|
|
|
export enum OperatingSystem {
|
|
windowsOS,
|
|
macOS,
|
|
linuxOS,
|
|
unixOS,
|
|
iOS,
|
|
androidOS,
|
|
}
|
|
|
|
export function getOS(): OperatingSystem {
|
|
const operatingSystemOptions: Array<[string, OperatingSystem]> = [
|
|
['Win', OperatingSystem.windowsOS],
|
|
['like Mac', OperatingSystem.iOS],
|
|
['Mac', OperatingSystem.macOS],
|
|
['Android', OperatingSystem.androidOS],
|
|
['Linux', OperatingSystem.linuxOS],
|
|
['X11', OperatingSystem.unixOS],
|
|
];
|
|
|
|
const userAgent = window.navigator.userAgent;
|
|
const OS =
|
|
operatingSystemOptions.find(([testString]) => userAgent.toLowerCase().includes(testString.toLowerCase()))?.[1] ?? OperatingSystem.windowsOS;
|
|
return OS;
|
|
}
|