UNPKG

@shockpkg/ria-packager

Version:

Package for creating Adobe AIR packages

89 lines (68 loc) 1.82 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.SecurityCertificateX509 = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _nodeForge = _interopRequireDefault(require("node-forge")); var _certificate = require("../certificate"); /** * SecurityCertificateX509 constructor. */ class SecurityCertificateX509 extends _certificate.SecurityCertificate { /** * Forge certificate. */ constructor() { super(); (0, _defineProperty2.default)(this, "_forgeCertificate", null); } /** * Reset the internal state. */ reset() { this._forgeCertificate = null; } /** * Read a forge certificate. * * @param certificate Forge certificate. */ readForgeCertificate(certificate) { this.reset(); this._forgeCertificate = certificate; } /** * Encode as PEM string. * * @returns PEM string. */ encodePem() { const forgeCertificate = this._forgeCertificate; if (!forgeCertificate) { throw new Error('Certificate not initialized'); } return _nodeForge.default.pki.certificateToPem(forgeCertificate); } /** * Encode as PEM data. * * @returns The binary PEM data. */ encodePemData() { // Remove all the non-base64 lines, then decode. const base64 = this.encodePem().split(/[\r\n]+/).map(s => s.trim()).filter(s => !s.startsWith('-')).join(''); return Buffer.from(base64, 'base64'); } /** * Encode for certchain data. * * @returns Certchain data. */ encodeCertchain() { return this.encodePemData(); } } exports.SecurityCertificateX509 = SecurityCertificateX509; //# sourceMappingURL=x509.js.map