/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/certssl@1.2.12/dist/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.removeDomain=exports.configuredDomains=exports.hasCertificateFor=exports.certificateFor=exports.uninstall=void 0;const tslib_1=require("tslib"),fs_1=require("fs"),debug_1=tslib_1.__importDefault(require("debug")),command_exists_1=require("command-exists"),rimraf_1=tslib_1.__importDefault(require("rimraf")),constants_1=require("./constants"),platforms_1=tslib_1.__importDefault(require("./platforms")),certificate_authority_1=tslib_1.__importStar(require("./certificate-authority"));Object.defineProperty(exports,"uninstall",{enumerable:!0,get:function(){return certificate_authority_1.uninstall}});const certificates_1=tslib_1.__importDefault(require("./certificates")),user_interface_1=tslib_1.__importDefault(require("./user-interface")),is_valid_domain_1=tslib_1.__importDefault(require("is-valid-domain")),debug=debug_1.default("devcert");function certificateFor(t,e={}){return tslib_1.__awaiter(this,void 0,void 0,(function*(){const i=Array.isArray(t)?t:[t];i.forEach((t=>{if("localhost"!==t&&!is_valid_domain_1.default(t,{subdomain:!0,wildcard:!1,allowUnicode:!0,topLevel:!1}))throw new Error(`"${t}" is not a valid domain name.`)}));const r=constants_1.getStableDomainPath(i);if(debug(`Certificate requested for ${i}. 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(!command_exists_1.sync("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 a=constants_1.pathForDomain(r,"private-key.key"),o=constants_1.pathForDomain(r,"certificate.crt");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..."),yield certificate_authority_1.ensureCACertReadable(e)):(debug("Root CA is not installed yet, so it must be our first run. Installing root CA ..."),yield certificate_authority_1.default(e)),fs_1.existsSync(constants_1.pathForDomain(r,"certificate.crt"))||(debug(`Can't find certificate file for ${i}, so it must be the first request for ${i}. Generating and caching ...`),yield certificates_1.default(i)),e.skipHostsFile||i.forEach((t=>tslib_1.__awaiter(this,void 0,void 0,(function*(){yield platforms_1.default.addDomainToHostFileIfMissing(t)})))),debug("Returning domain certificate");const s={key:fs_1.readFileSync(a),cert:fs_1.readFileSync(o)};return e.getCaBuffer&&(s.ca=fs_1.readFileSync(constants_1.rootCACertPath)),e.getCaPath&&(s.caPath=constants_1.rootCACertPath),s}))}function hasCertificateFor(t){const e=Array.isArray(t)?t:[t],i=constants_1.getStableDomainPath(e);return fs_1.existsSync(constants_1.pathForDomain(i,"certificate.crt"))}function configuredDomains(){return fs_1.readdirSync(constants_1.domainsDir)}function removeDomain(t){const e=Array.isArray(t)?t:[t],i=constants_1.getStableDomainPath(e);return rimraf_1.default.sync(constants_1.pathForDomain(i))}exports.certificateFor=certificateFor,exports.hasCertificateFor=hasCertificateFor,exports.configuredDomains=configuredDomains,exports.removeDomain=removeDomain;
//# sourceMappingURL=/sm/92f798853780a88407683bdc4f2aa24bf4200ffa395d24c0bf98d9b7ceb8184e.map