Press n or j to go to the next uncovered block, b, p or k for the previous block.
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 | 1x 1x 1x 1x 1x 18x 18x 18x 14x 14x 1x 1x 1x 1x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 1x 1x 2x 2x 2x 1x 4x 1x 18x 18x 1x 1x 2x 2x 2x 2x 2x 2x 2x 2x 1x 6x 6x 1x | import Drive from './classes/drive'; import {Darwin} from './platforms/darwin'; import {Linux} from './platforms/linux'; import {Windows} from './platforms/windows'; import {Utils} from './utils/utils'; /** * Get disk info according current platform. * * @author Cristiam Mercado * @return {Promise<Drive[]>} Promise resolves array of disks and their info. */ export function getDiskInfo(): Promise<Drive[]> { return new Promise((resolve, reject) => { try { const platform = Utils.detectPlatform(); let drivesInfo: Drive[]; switch (platform) { case 'aix': // IBM AIX platform reject(new Error(`Platform not supported: ${platform}`)); break; case 'android': // Android platform reject(new Error(`Platform not supported: ${platform}`)); break; case 'darwin': // Darwin platfrom(MacOS, IOS etc) drivesInfo = Darwin.run(); resolve(drivesInfo); break; case 'freebsd': // FreeBSD Platform drivesInfo = Darwin.run(); resolve(drivesInfo); break; case 'linux': // Linux Platform drivesInfo = Linux.run(); resolve(drivesInfo); break; case 'openbsd': // OpenBSD platform drivesInfo = Darwin.run(); resolve(drivesInfo); break; case 'sunos': // SunOS platform reject(new Error(`Platform not supported: ${platform}`)); break; case 'win32': // windows platform drivesInfo = Windows.run(); resolve(drivesInfo); break; default: // unknown platform reject(new Error(`Platform not recognized: ${platform}`)); } } catch (e) { reject(e); } }) } /** * Get disk info according current platform in an syncronous way. * * @author Cristiam Mercado * @return {Drive[]} Array of disks and their info. * @throws {Error} Current platform must be win32, linux or darwin. */ export function getDiskInfoSync(): Drive[] { const platform = Utils.detectPlatform(); let drivesInfo: Drive[]; switch (platform) { case 'aix': // IBM AIX platform throw new Error("Platform not supported: " + platform); case 'android': // Android platform throw new Error("Platform not supported: " + platform); case 'darwin': // Darwin platfrom(MacOS, IOS etc) drivesInfo = Darwin.run(); return drivesInfo; case 'freebsd': // FreeBSD Platform drivesInfo = Darwin.run(); return drivesInfo; case 'linux': // Linux Platform drivesInfo = Linux.run(); return drivesInfo; case 'openbsd': // OpenBSD platform drivesInfo = Darwin.run(); return drivesInfo; case 'sunos': // SunOS platform throw new Error("Platform not supported: " + platform); case 'win32': // windows platform drivesInfo = Windows.run(); return drivesInfo; default: // unknown platform throw new Error("Platform not recognized: " + platform); } } |