admina
Version:
Detect root/admin/sudo and execute commands as it if available
57 lines • 3.54 kB
JavaScript
import { default as isAdminWindowsOrig } from "./is-admin.mjs";
import { isRoot } from "./root.mjs";
/**
* Check if the process is running as administrator on Windows.
*
* @example
*
* ```js
* import { isAdminWindows } from "admina"
*
* console.log(await isAdminWindows())
* //=> false
* ```
*
* @returns Whether the process is running as administrator.
*/
export const isAdminWindows = isAdminWindowsOrig;
/**
* Detect if the process has root privilege on Posix.
*
* @example
*
* ```js
* import { isAdminPosix } from "admina"
*
* console.log(isAdminPosix())
* //=> false
* ```
*
* @returns Whether the process is running as root.
*/
export const isAdminPosix = isRoot;
/**
* Detect if the code is running as admin/root
*
* On Windows, it checks for admin access, and on Posix, it checks for root access
*
* @example
*
* ```js
* import { isAdmin } from "admina"
*
* console.log(isAdmin())
* //=> false
* ```
*
* @returns Whether the process is running as root or admin.
*/
export function isAdmin() {
if (process.platform === "win32") {
return isAdminWindows();
}
else {
return isRoot();
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4ubWpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FkbWluLm10cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxJQUFJLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUVuQzs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGtCQUFrQixDQUFBO0FBRWhEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFBO0FBRWxDOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BQU0sVUFBVSxPQUFPO0lBQ3JCLElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUNqQyxPQUFPLGNBQWMsRUFBRSxDQUFBO0lBQ3pCLENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxNQUFNLEVBQUUsQ0FBQTtJQUNqQixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmF1bHQgYXMgaXNBZG1pbldpbmRvd3NPcmlnIH0gZnJvbSBcIi4vaXMtYWRtaW4ubWpzXCJcbmltcG9ydCB7IGlzUm9vdCB9IGZyb20gXCIuL3Jvb3QubWpzXCJcblxuLyoqXG4gKiBDaGVjayBpZiB0aGUgcHJvY2VzcyBpcyBydW5uaW5nIGFzIGFkbWluaXN0cmF0b3Igb24gV2luZG93cy5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIGBgYGpzXG4gKiBpbXBvcnQgeyBpc0FkbWluV2luZG93cyB9IGZyb20gXCJhZG1pbmFcIlxuICpcbiAqIGNvbnNvbGUubG9nKGF3YWl0IGlzQWRtaW5XaW5kb3dzKCkpXG4gKiAvLz0+IGZhbHNlXG4gKiBgYGBcbiAqXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBwcm9jZXNzIGlzIHJ1bm5pbmcgYXMgYWRtaW5pc3RyYXRvci5cbiAqL1xuZXhwb3J0IGNvbnN0IGlzQWRtaW5XaW5kb3dzID0gaXNBZG1pbldpbmRvd3NPcmlnXG5cbi8qKlxuICogRGV0ZWN0IGlmIHRoZSBwcm9jZXNzIGhhcyByb290IHByaXZpbGVnZSBvbiBQb3NpeC5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIGBgYGpzXG4gKiBpbXBvcnQgeyBpc0FkbWluUG9zaXggfSBmcm9tIFwiYWRtaW5hXCJcbiAqXG4gKiBjb25zb2xlLmxvZyhpc0FkbWluUG9zaXgoKSlcbiAqIC8vPT4gZmFsc2VcbiAqIGBgYFxuICpcbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIHByb2Nlc3MgaXMgcnVubmluZyBhcyByb290LlxuICovXG5leHBvcnQgY29uc3QgaXNBZG1pblBvc2l4ID0gaXNSb290XG5cbi8qKlxuICogRGV0ZWN0IGlmIHRoZSBjb2RlIGlzIHJ1bm5pbmcgYXMgYWRtaW4vcm9vdFxuICpcbiAqIE9uIFdpbmRvd3MsIGl0IGNoZWNrcyBmb3IgYWRtaW4gYWNjZXNzLCBhbmQgb24gUG9zaXgsIGl0IGNoZWNrcyBmb3Igcm9vdCBhY2Nlc3NcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIGBgYGpzXG4gKiBpbXBvcnQgeyBpc0FkbWluIH0gZnJvbSBcImFkbWluYVwiXG4gKlxuICogY29uc29sZS5sb2coaXNBZG1pbigpKVxuICogLy89PiBmYWxzZVxuICogYGBgXG4gKlxuICogQHJldHVybnMgV2hldGhlciB0aGUgcHJvY2VzcyBpcyBydW5uaW5nIGFzIHJvb3Qgb3IgYWRtaW4uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0FkbWluKCkge1xuICBpZiAocHJvY2Vzcy5wbGF0Zm9ybSA9PT0gXCJ3aW4zMlwiKSB7XG4gICAgcmV0dXJuIGlzQWRtaW5XaW5kb3dzKClcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gaXNSb290KClcbiAgfVxufVxuIl19