/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/@expo/devcert@1.2.1/dist/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(t,e,r,i){void 0===i&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);a&&!("get"in a?!e.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){void 0===i&&(i=r),t[i]=e[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),__importStar=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)"default"!==r&&Object.prototype.hasOwnProperty.call(t,r)&&__createBinding(e,t,r);return __setModuleDefault(e,t),e},__importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.uninstall=void 0,exports.certificateFor=certificateFor,exports.hasCertificateFor=hasCertificateFor,exports.configuredDomains=configuredDomains,exports.removeDomain=removeDomain;const fs_1=require("fs"),debug_1=__importDefault(require("debug")),constants_1=require("./constants"),platforms_1=__importDefault(require("./platforms")),utils_1=require("./utils"),certificate_authority_1=__importStar(require("./certificate-authority"));Object.defineProperty(exports,"uninstall",{enumerable:!0,get:function(){return certificate_authority_1.uninstall}});const certificates_1=__importDefault(require("./certificates")),user_interface_1=__importDefault(require("./user-interface")),debug=(0,debug_1.default)("devcert");async function certificateFor(t,e={}){if(constants_1.VALID_IP.test(t))throw new Error("IP addresses are not supported currently");if(!constants_1.VALID_DOMAIN.test(t))throw new Error(`"${t}" is not a valid domain name.`);if(debug(`Certificate requested for ${t}. Skipping certutil install: ${Boolean(e.skipCertutilInstall)}. Skipping hosts file: ${Boolean(e.skipHostsFile)}`),e.ui&&Object.assign(user_interface_1.default,e.ui),!constants_1.isMac&&!constants_1.isLinux&&!constants_1.isWindows)throw new Error(`Platform not supported: "${process.platform}"`);if(!(0,utils_1.commandExists)("openssl"))throw new Error("OpenSSL not found: OpenSSL is required to generate SSL certificates - make sure it is installed and available in your PATH");let r=(0,constants_1.pathForDomain)(t,"private-key.key"),i=(0,constants_1.pathForDomain)(t,"certificate.crt");(0,fs_1.existsSync)(constants_1.rootCAKeyPath)?(e.getCaBuffer||e.getCaPath)&&(debug("Root CA is not readable, but it probably is because an earlier version of devcert locked it. Trying to fix..."),await(0,certificate_authority_1.ensureCACertReadable)(e)):(debug("Root CA is not installed yet, so it must be our first run. Installing root CA ..."),await(0,certificate_authority_1.default)(e)),(0,fs_1.existsSync)((0,constants_1.pathForDomain)(t,"certificate.crt"))||(debug(`Can't find certificate file for ${t}, so it must be the first request for ${t}. Generating and caching ...`),await(0,certificates_1.default)(t)),e.skipHostsFile||await platforms_1.default.addDomainToHostFileIfMissing(t),debug("Returning domain certificate");const a={key:(0,fs_1.readFileSync)(r),cert:(0,fs_1.readFileSync)(i)};return e.getCaBuffer&&(a.ca=(0,fs_1.readFileSync)(constants_1.rootCACertPath)),e.getCaPath&&(a.caPath=constants_1.rootCACertPath),a}function hasCertificateFor(t){return(0,fs_1.existsSync)((0,constants_1.pathForDomain)(t,"certificate.crt"))}function configuredDomains(){return(0,fs_1.readdirSync)(constants_1.domainsDir)}function removeDomain(t){return(0,fs_1.rmSync)((0,constants_1.pathForDomain)(t),{force:!0,recursive:!0})}
//# sourceMappingURL=/sm/ab14912a26a5984ebb4859d0edf6b07430b5abf7f8f5c732dbc141c0aec67ba8.map