@peculiar/certificates-viewer 4.2.2 → 4.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/components/attribute-certificate-viewer.js +1 -1
  2. package/components/attribute-certificate-viewer.js.map +1 -1
  3. package/components/certificate-viewer.js +2 -2
  4. package/components/certificate-viewer.js.map +1 -1
  5. package/components/crl-viewer.js +2 -2
  6. package/components/crl-viewer.js.map +1 -1
  7. package/components/download.js +84 -18
  8. package/components/download.js.map +1 -1
  9. package/components/peculiar-certificate-decoder.js +12 -69
  10. package/components/peculiar-certificate-decoder.js.map +1 -1
  11. package/components/pkcs10_certificate_request.js +1 -1
  12. package/components/pkcs10_certificate_request.js.map +1 -1
  13. package/dist/cjs/{certification_request-815ec558.js → certification_request-ad267278.js} +84 -23
  14. package/dist/cjs/certification_request-ad267278.js.map +1 -0
  15. package/dist/cjs/index.cjs.js +2 -2
  16. package/dist/cjs/{miscellaneous-9a573276.js → miscellaneous-67439e59.js} +2 -2
  17. package/dist/cjs/{miscellaneous-9a573276.js.map → miscellaneous-67439e59.js.map} +1 -1
  18. package/dist/cjs/peculiar-attribute-certificate-viewer_3.cjs.entry.js +4 -4
  19. package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js +15 -72
  20. package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js.map +1 -1
  21. package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js +3 -3
  22. package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js +2 -2
  23. package/dist/cjs/{pkcs10_certificate_request-0ebc0023.js → pkcs10_certificate_request-64898c88.js} +3 -3
  24. package/dist/cjs/pkcs10_certificate_request-64898c88.js.map +1 -0
  25. package/dist/cjs/{x509_certificate-9914b149.js → x509_certificate-4b0894c2.js} +3 -3
  26. package/dist/cjs/x509_certificate-4b0894c2.js.map +1 -0
  27. package/dist/cjs/{x509_crl-86b6e71d.js → x509_crl-fc8d41a1.js} +5 -5
  28. package/dist/cjs/x509_crl-fc8d41a1.js.map +1 -0
  29. package/dist/collection/components/certificate-decoder/certificate-decoder.js +12 -69
  30. package/dist/collection/components/certificate-decoder/certificate-decoder.js.map +1 -1
  31. package/dist/collection/constants/oids.js +3 -0
  32. package/dist/collection/constants/oids.js.map +1 -1
  33. package/dist/collection/crypto/pkcs10_certificate_request.js +1 -1
  34. package/dist/collection/crypto/pkcs10_certificate_request.js.map +1 -1
  35. package/dist/collection/crypto/x509_attribute_certificate.js +1 -1
  36. package/dist/collection/crypto/x509_attribute_certificate.js.map +1 -1
  37. package/dist/collection/crypto/x509_certificate.js +1 -1
  38. package/dist/collection/crypto/x509_certificate.js.map +1 -1
  39. package/dist/collection/crypto/x509_crl.js +1 -1
  40. package/dist/collection/crypto/x509_crl.js.map +1 -1
  41. package/dist/collection/utils/download.js +8 -8
  42. package/dist/collection/utils/download.js.map +1 -1
  43. package/dist/collection/utils/validator.js +0 -8
  44. package/dist/collection/utils/validator.js.map +1 -1
  45. package/dist/esm/{certification_request-08b4deb8.js → certification_request-a4699dcf.js} +85 -19
  46. package/dist/esm/certification_request-a4699dcf.js.map +1 -0
  47. package/dist/esm/index.js +2 -2
  48. package/dist/esm/{miscellaneous-d4bbc6f2.js → miscellaneous-ba1fd2bd.js} +2 -2
  49. package/dist/esm/{miscellaneous-d4bbc6f2.js.map → miscellaneous-ba1fd2bd.js.map} +1 -1
  50. package/dist/esm/peculiar-attribute-certificate-viewer_3.entry.js +4 -4
  51. package/dist/esm/peculiar-certificate-decoder.entry.js +15 -72
  52. package/dist/esm/peculiar-certificate-decoder.entry.js.map +1 -1
  53. package/dist/esm/peculiar-certificate-viewer.entry.js +3 -3
  54. package/dist/esm/peculiar-certificates-viewer.entry.js +2 -2
  55. package/dist/esm/{pkcs10_certificate_request-3763c2af.js → pkcs10_certificate_request-785a4794.js} +3 -3
  56. package/dist/esm/pkcs10_certificate_request-785a4794.js.map +1 -0
  57. package/dist/esm/{x509_certificate-47b4c5ee.js → x509_certificate-05a23c0e.js} +3 -3
  58. package/dist/esm/x509_certificate-05a23c0e.js.map +1 -0
  59. package/dist/esm/{x509_crl-ba76d3ed.js → x509_crl-26081461.js} +5 -5
  60. package/dist/esm/x509_crl-26081461.js.map +1 -0
  61. package/dist/esm-es5/{certification_request-08b4deb8.js → certification_request-a4699dcf.js} +6 -6
  62. package/dist/esm-es5/certification_request-a4699dcf.js.map +1 -0
  63. package/dist/esm-es5/index.js +1 -1
  64. package/dist/esm-es5/{miscellaneous-d4bbc6f2.js → miscellaneous-ba1fd2bd.js} +2 -2
  65. package/dist/esm-es5/peculiar-attribute-certificate-viewer_3.entry.js +1 -1
  66. package/dist/esm-es5/peculiar-certificate-decoder.entry.js +2 -2
  67. package/dist/esm-es5/peculiar-certificate-decoder.entry.js.map +1 -1
  68. package/dist/esm-es5/peculiar-certificate-viewer.entry.js +1 -1
  69. package/dist/esm-es5/peculiar-certificates-viewer.entry.js +1 -1
  70. package/dist/esm-es5/{pkcs10_certificate_request-3763c2af.js → pkcs10_certificate_request-785a4794.js} +3 -3
  71. package/dist/esm-es5/{pkcs10_certificate_request-3763c2af.js.map → pkcs10_certificate_request-785a4794.js.map} +1 -1
  72. package/dist/esm-es5/{x509_certificate-47b4c5ee.js → x509_certificate-05a23c0e.js} +3 -3
  73. package/dist/{peculiar/p-1818204e.system.js.map → esm-es5/x509_certificate-05a23c0e.js.map} +1 -1
  74. package/dist/esm-es5/{x509_crl-ba76d3ed.js → x509_crl-26081461.js} +4 -4
  75. package/dist/esm-es5/x509_crl-26081461.js.map +1 -0
  76. package/dist/peculiar/index.esm.js +1 -1
  77. package/dist/peculiar/{p-8db3e1fd.system.entry.js → p-1566ad92.system.entry.js} +2 -2
  78. package/dist/peculiar/{p-c10bfa6a.system.js → p-2bc2abea.system.js} +2 -2
  79. package/dist/peculiar/{p-6acca6ea.js → p-32807e5e.js} +12 -12
  80. package/dist/peculiar/p-32807e5e.js.map +1 -0
  81. package/dist/peculiar/{p-84e3e94a.entry.js → p-5d1d4a96.entry.js} +7 -7
  82. package/dist/peculiar/{p-f8efbe93.entry.js → p-67e82386.entry.js} +2 -2
  83. package/dist/peculiar/{p-b0c963b1.js → p-6e2ad7eb.js} +13 -13
  84. package/dist/peculiar/{p-4ee5140c.system.js → p-7ddd9a82.system.js} +3 -3
  85. package/dist/peculiar/{p-4ee5140c.system.js.map → p-7ddd9a82.system.js.map} +1 -1
  86. package/dist/peculiar/p-8393399a.system.js +1 -1
  87. package/dist/peculiar/{p-0f3787cf.system.entry.js → p-9263e7ee.system.entry.js} +2 -2
  88. package/dist/peculiar/{p-1818204e.system.js → p-98e3a016.system.js} +3 -3
  89. package/dist/{esm-es5/x509_certificate-47b4c5ee.js.map → peculiar/p-98e3a016.system.js.map} +1 -1
  90. package/dist/peculiar/p-9ad547d2.system.entry.js +5 -0
  91. package/dist/peculiar/p-9ad547d2.system.entry.js.map +1 -0
  92. package/dist/peculiar/{p-28b4d316.system.js → p-a1a48332.system.js} +2 -2
  93. package/dist/peculiar/{p-31d5da39.js → p-ab5a4988.js} +3 -3
  94. package/dist/peculiar/{p-31d5da39.js.map → p-ab5a4988.js.map} +1 -1
  95. package/dist/peculiar/{p-30e18f2d.system.js → p-ae44c2b0.system.js} +4 -4
  96. package/dist/peculiar/p-ae44c2b0.system.js.map +1 -0
  97. package/dist/peculiar/{p-9c8dc738.entry.js → p-bafd67f3.entry.js} +2 -2
  98. package/dist/peculiar/p-cd1b1876.entry.js +5 -0
  99. package/dist/peculiar/p-cd1b1876.entry.js.map +1 -0
  100. package/dist/peculiar/{p-82e4faf0.js → p-d5ba4fc2.js} +4 -4
  101. package/dist/peculiar/p-d5ba4fc2.js.map +1 -0
  102. package/dist/peculiar/p-e37e4df2.system.js +135 -0
  103. package/dist/peculiar/p-e37e4df2.system.js.map +1 -0
  104. package/dist/peculiar/{p-78a6b479.js → p-f8c91ee4.js} +4 -4
  105. package/dist/peculiar/{p-78a6b479.js.map → p-f8c91ee4.js.map} +1 -1
  106. package/dist/peculiar/{p-364df80d.system.entry.js → p-f9c07207.system.entry.js} +3 -3
  107. package/dist/peculiar/peculiar.esm.js +1 -1
  108. package/dist/types/components/certificate-decoder/certificate-decoder.d.ts +1 -1
  109. package/dist/types/constants/oids.d.ts +3 -0
  110. package/dist/types/utils/download.d.ts +4 -4
  111. package/dist/types/utils/validator.d.ts +0 -4
  112. package/hydrate/index.js +98 -89
  113. package/package.json +22 -22
  114. package/dist/cjs/certification_request-815ec558.js.map +0 -1
  115. package/dist/cjs/pkcs10_certificate_request-0ebc0023.js.map +0 -1
  116. package/dist/cjs/x509_certificate-9914b149.js.map +0 -1
  117. package/dist/cjs/x509_crl-86b6e71d.js.map +0 -1
  118. package/dist/esm/certification_request-08b4deb8.js.map +0 -1
  119. package/dist/esm/pkcs10_certificate_request-3763c2af.js.map +0 -1
  120. package/dist/esm/x509_certificate-47b4c5ee.js.map +0 -1
  121. package/dist/esm/x509_crl-ba76d3ed.js.map +0 -1
  122. package/dist/esm-es5/certification_request-08b4deb8.js.map +0 -1
  123. package/dist/esm-es5/x509_crl-ba76d3ed.js.map +0 -1
  124. package/dist/peculiar/p-30e18f2d.system.js.map +0 -1
  125. package/dist/peculiar/p-6acca6ea.js.map +0 -1
  126. package/dist/peculiar/p-82005297.system.entry.js +0 -5
  127. package/dist/peculiar/p-82005297.system.entry.js.map +0 -1
  128. package/dist/peculiar/p-82e4faf0.js.map +0 -1
  129. package/dist/peculiar/p-c3fce3f5.entry.js +0 -5
  130. package/dist/peculiar/p-c3fce3f5.entry.js.map +0 -1
  131. package/dist/peculiar/p-df2c8826.system.js +0 -135
  132. package/dist/peculiar/p-df2c8826.system.js.map +0 -1
  133. /package/dist/esm-es5/{miscellaneous-d4bbc6f2.js.map → miscellaneous-ba1fd2bd.js.map} +0 -0
  134. /package/dist/peculiar/{p-8db3e1fd.system.entry.js.map → p-1566ad92.system.entry.js.map} +0 -0
  135. /package/dist/peculiar/{p-c10bfa6a.system.js.map → p-2bc2abea.system.js.map} +0 -0
  136. /package/dist/peculiar/{p-84e3e94a.entry.js.map → p-5d1d4a96.entry.js.map} +0 -0
  137. /package/dist/peculiar/{p-f8efbe93.entry.js.map → p-67e82386.entry.js.map} +0 -0
  138. /package/dist/peculiar/{p-b0c963b1.js.map → p-6e2ad7eb.js.map} +0 -0
  139. /package/dist/peculiar/{p-0f3787cf.system.entry.js.map → p-9263e7ee.system.entry.js.map} +0 -0
  140. /package/dist/peculiar/{p-28b4d316.system.js.map → p-a1a48332.system.js.map} +0 -0
  141. /package/dist/peculiar/{p-9c8dc738.entry.js.map → p-bafd67f3.entry.js.map} +0 -0
  142. /package/dist/peculiar/{p-364df80d.system.entry.js.map → p-f9c07207.system.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
3
3
  */
4
- export{D as Download,d as downloadFromBuffer}from"./certification_request-08b4deb8.js";export{r as readAsArrayBuffer,a as readAsBinaryString,b as readAsDataUrl,c as readAsText}from"./read_file-bb0b1450.js";export{P as Pkcs10CertificateRequest}from"./pkcs10_certificate_request-3763c2af.js";export{B as Button,T as Typography}from"./button-a2fabf9a.js";export{L as Link}from"./link-7e4e9060.js";export{C as CrossIcon,D as DetailsIcon,L as LinkIcon}from"./cross-1377606f.js";export{D as DownloadIcon}from"./download-14dc1047.js";export{A as ActionsIcon}from"./actions-aebcbc9d.js";export{A as ArrowBottomIcon,a as ArrowTopIcon}from"./arrow_top-aee1ee02.js";import"./index-ae188432.js";
4
+ export{D as Download,d as downloadFromBuffer}from"./certification_request-a4699dcf.js";export{r as readAsArrayBuffer,a as readAsBinaryString,b as readAsDataUrl,c as readAsText}from"./read_file-bb0b1450.js";export{P as Pkcs10CertificateRequest}from"./pkcs10_certificate_request-785a4794.js";export{B as Button,T as Typography}from"./button-a2fabf9a.js";export{L as Link}from"./link-7e4e9060.js";export{C as CrossIcon,D as DetailsIcon,L as LinkIcon}from"./cross-1377606f.js";export{D as DownloadIcon}from"./download-14dc1047.js";export{A as ActionsIcon}from"./actions-aebcbc9d.js";export{A as ArrowBottomIcon,a as ArrowTopIcon}from"./arrow_top-aee1ee02.js";import"./index-ae188432.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  var __extends=this&&this.__extends||function(){var e=function(n,a){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var a in n)if(Object.prototype.hasOwnProperty.call(n,a))e[a]=n[a]};return e(n,a)};return function(n,a){if(typeof a!=="function"&&a!==null)throw new TypeError("Class extends value "+String(a)+" is not a constructor or null");e(n,a);function t(){this.constructor=n}n.prototype=a===null?Object.create(a):(t.prototype=a.prototype,new t)}}();
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{h}from"./index-ae188432.js";import{a4 as OIDs,a2 as l10n,a3 as dateShort,C as Convert_1,a5 as Name,a9 as OtherName,b as AsnParser,aa as DisplayText,ab as UserNotice,ac as BufferSourceConverter_1,ad as EDIPartyName,ae as __decorate,af as AsnProp,ag as AsnPropTypes,ah as AsnType,ai as AsnTypeTypes,aj as AsnArray,ak as id_qcs_pkixQCSyntax_v2,al as SemanticsInformation,am as AsnIntegerArrayBufferConverter,an as AttestationApplicationId,ao as RootOfTrust,ap as IntegerSet,aq as KeyUsage,ar as BasicConstraints,as as ExtendedKeyUsage,at as SubjectKeyIdentifier,au as AuthorityKeyIdentifier,av as CRLDistributionPoints,aw as AuthorityInfoAccessSyntax,ax as SubjectInfoAccessSyntax,ay as SubjectAlternativeName,az as CertificatePolicies,aA as CertificateTransparency,aB as NameConstraints,aC as CertificateTemplate,aD as EnrollCertTypeChoice,aE as CaVersion,aF as QCStatements,aG as NetscapeComment,aH as NetscapeCertType,aI as LeiRole,aJ as LeiChoice,aK as Timestamp,aL as ArchiveRevInfo,a6 as CRLReason,aM as SubjectDirectoryAttributes,aN as PrivateKeyUsagePeriod,aO as EntrustVersionInfo,aP as BiometricSyntax,aQ as LogotypeExtn,aR as TNAuthorizationList,aS as PolicyConstraints,aT as PolicyMappings,aU as CRLNumber,aV as IssuingDistributionPoint,aW as NonStandardKeyDescription,aX as CabforganizationIdentifier}from"./certification_request-08b4deb8.js";import{L as Link}from"./link-7e4e9060.js";import{T as Typography,B as Button}from"./button-a2fabf9a.js";import{D as DownloadIcon}from"./download-14dc1047.js";
4
+ */import{h}from"./index-ae188432.js";import{$ as OIDs,Z as l10n,_ as dateShort,C as Convert_1,a0 as Name,a4 as OtherName,b as AsnParser,a5 as DisplayText,a6 as UserNotice,a7 as BufferSourceConverter_1,a8 as EDIPartyName,a9 as __decorate,aa as AsnProp,ab as AsnPropTypes,ac as AsnType,ad as AsnTypeTypes,ae as AsnArray,af as id_qcs_pkixQCSyntax_v2,ag as SemanticsInformation,ah as AsnIntegerArrayBufferConverter,ai as AttestationApplicationId,aj as RootOfTrust,ak as IntegerSet,al as KeyUsage,am as BasicConstraints,an as ExtendedKeyUsage,ao as SubjectKeyIdentifier,ap as AuthorityKeyIdentifier,aq as CRLDistributionPoints,ar as AuthorityInfoAccessSyntax,as as SubjectInfoAccessSyntax,at as SubjectAlternativeName,au as CertificatePolicies,av as CertificateTransparency,aw as NameConstraints,ax as CertificateTemplate,ay as EnrollCertTypeChoice,az as CaVersion,aA as QCStatements,aB as NetscapeComment,aC as NetscapeCertType,aD as LeiRole,aE as LeiChoice,aF as Timestamp,aG as ArchiveRevInfo,a1 as CRLReason,aH as SubjectDirectoryAttributes,aI as PrivateKeyUsagePeriod,aJ as EntrustVersionInfo,aK as BiometricSyntax,aL as LogotypeExtn,aM as TNAuthorizationList,aN as PolicyConstraints,aO as PolicyMappings,aP as CRLNumber,aQ as IssuingDistributionPoint,aR as NonStandardKeyDescription,aS as CabforganizationIdentifier}from"./certification_request-a4699dcf.js";import{L as Link}from"./link-7e4e9060.js";import{T as Typography,B as Button}from"./button-a2fabf9a.js";import{D as DownloadIcon}from"./download-14dc1047.js";
5
5
  /**
6
6
  * @license
7
7
  * Copyright (c) Peculiar Ventures, LLC.
@@ -366,4 +366,4 @@ var __extends=this&&this.__extends||function(){var e=function(n,a){e=Object.setP
366
366
  * This source code is licensed under the MIT license found in the
367
367
  * LICENSE file in the root directory of this source tree.
368
368
  */var Miscellaneous=function(e){var n=e.certificate;return[h(RowTitle,{value:l10n.getString("miscellaneous")}),h("tr",null,h("td",null,h(Button,{onClick:function(){return n.downloadAsPEM()},startIcon:h(DownloadIcon,null)},l10n.getString("download.pem")))),h("tr",null,h("td",null,h(Button,{onClick:function(){return n.downloadAsDER()},startIcon:h(DownloadIcon,null)},l10n.getString("download.der"))))]};export{BasicInformation as B,Extensions as E,GeneralNamePart as G,IssuerName as I,Miscellaneous as M,PublicKey as P,RowValue as R,Signature as S,TableRowTable as T,RowTitle as a,Thumbprints as b,camelCaseToWords as c,getLEILink as d,getDNSNameLink as e,getIPAddressLink as f,getStringByOID as g,SubjectName as h};
369
- //# sourceMappingURL=miscellaneous-d4bbc6f2.js.map
369
+ //# sourceMappingURL=miscellaneous-ba1fd2bd.js.map
@@ -1,7 +1,7 @@
1
1
  var __awaiter=this&&this.__awaiter||function(t,e,r,a){function i(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,o){function n(t){try{c(a.next(t))}catch(t){o(t)}}function s(t){try{c(a["throw"](t))}catch(t){o(t)}}function c(t){t.done?r(t.value):i(t.value).then(n,s)}c((a=a.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},a,i,o,n;return n={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(n[Symbol.iterator]=function(){return this}),n;function s(t){return function(e){return c([t,e])}}function c(s){if(a)throw new TypeError("Generator is already executing.");while(n&&(n=0,s[0]&&(r=0)),r)try{if(a=1,i&&(o=s[0]&2?i["return"]:s[0]?i["throw"]||((o=i["return"])&&o.call(i),0):i.next)&&!(o=o.call(i,s[1])).done)return o;if(i=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:r.label++;return{value:s[1],done:false};case 5:r.label++;i=s[1];s=[0];continue;case 7:s=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){r=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){r.label=s[1];break}if(s[0]===6&&r.label<o[1]){r.label=o[1];o=s;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(s);break}if(o[2])r.ops.pop();r.trys.pop();continue}s=e.call(t,r)}catch(t){s=[6,t];i=0}finally{a=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{h,r as registerInstance,H as Host}from"./index-ae188432.js";import{a4 as OIDs,a2 as l10n,a5 as Name,n as ActivityDescription,W as WebGDPR,I as InsuranceValue,T as TypeRelationship,V as ValuationRanking,U as UnstructuredName,s as ChallengePassword,C as Convert_1,a3 as dateShort,a6 as CRLReason,a7 as InvalidityDate,a8 as CertificateIssuer}from"./certification_request-08b4deb8.js";import{X as X509AttributeCertificate,a as X509Crl}from"./x509_crl-ba76d3ed.js";import{g as getStringByOID,R as RowValue,c as camelCaseToWords,T as TableRowTable,G as GeneralNamePart,a as RowTitle,B as BasicInformation,S as Signature,b as Thumbprints,d as getLEILink,e as getDNSNameLink,f as getIPAddressLink,E as Extensions,M as Miscellaneous,I as IssuerName,h as SubjectName,P as PublicKey}from"./miscellaneous-d4bbc6f2.js";import{T as Typography}from"./button-a2fabf9a.js";import{P as Pkcs10CertificateRequest}from"./pkcs10_certificate_request-3763c2af.js";import"./link-7e4e9060.js";import"./download-14dc1047.js";
4
+ */import{h,r as registerInstance,H as Host}from"./index-ae188432.js";import{$ as OIDs,Z as l10n,a0 as Name,n as ActivityDescription,W as WebGDPR,I as InsuranceValue,T as TypeRelationship,V as ValuationRanking,U as UnstructuredName,s as ChallengePassword,C as Convert_1,_ as dateShort,a1 as CRLReason,a2 as InvalidityDate,a3 as CertificateIssuer}from"./certification_request-a4699dcf.js";import{X as X509AttributeCertificate,a as X509Crl}from"./x509_crl-26081461.js";import{g as getStringByOID,R as RowValue,c as camelCaseToWords,T as TableRowTable,G as GeneralNamePart,a as RowTitle,B as BasicInformation,S as Signature,b as Thumbprints,d as getLEILink,e as getDNSNameLink,f as getIPAddressLink,E as Extensions,M as Miscellaneous,I as IssuerName,h as SubjectName,P as PublicKey}from"./miscellaneous-ba1fd2bd.js";import{T as Typography}from"./button-a2fabf9a.js";import{P as Pkcs10CertificateRequest}from"./pkcs10_certificate_request-785a4794.js";import"./link-7e4e9060.js";import"./download-14dc1047.js";
5
5
  /**
6
6
  * @license
7
7
  * Copyright (c) Peculiar Ventures, LLC.
@@ -1,5 +1,5 @@
1
- var __awaiter=this&&this.__awaiter||function(t,e,r,a){function o(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,i){function c(t){try{n(a.next(t))}catch(t){i(t)}}function s(t){try{n(a["throw"](t))}catch(t){i(t)}}function n(t){t.done?r(t.value):o(t.value).then(c,s)}n((a=a.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},a,o,i,c;return c={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function s(t){return function(e){return n([t,e])}}function n(s){if(a)throw new TypeError("Generator is already executing.");while(c&&(c=0,s[0]&&(r=0)),r)try{if(a=1,o&&(i=s[0]&2?o["return"]:s[0]?o["throw"]||((i=o["return"])&&i.call(o),0):o.next)&&!(i=i.call(o,s[1])).done)return i;if(o=0,i)s=[s[0]&2,i.value];switch(s[0]){case 0:case 1:i=s;break;case 4:r.label++;return{value:s[1],done:false};case 5:r.label++;o=s[1];s=[0];continue;case 7:s=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){r=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]<i[3])){r.label=s[1];break}if(s[0]===6&&r.label<i[1]){r.label=i[1];i=s;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(s);break}if(i[2])r.ops.pop();r.trys.pop();continue}s=e.call(t,r)}catch(t){s=[6,t];o=0}finally{a=i=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};
1
+ var __awaiter=this&&this.__awaiter||function(t,e,r,a){function o(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,c){function i(t){try{s(a.next(t))}catch(t){c(t)}}function n(t){try{s(a["throw"](t))}catch(t){c(t)}}function s(t){t.done?r(t.value):o(t.value).then(i,n)}s((a=a.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var r={label:0,sent:function(){if(c[0]&1)throw c[1];return c[1]},trys:[],ops:[]},a,o,c,i;return i={next:n(0),throw:n(1),return:n(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function n(t){return function(e){return s([t,e])}}function s(n){if(a)throw new TypeError("Generator is already executing.");while(i&&(i=0,n[0]&&(r=0)),r)try{if(a=1,o&&(c=n[0]&2?o["return"]:n[0]?o["throw"]||((c=o["return"])&&c.call(o),0):o.next)&&!(c=c.call(o,n[1])).done)return c;if(o=0,c)n=[n[0]&2,c.value];switch(n[0]){case 0:case 1:c=n;break;case 4:r.label++;return{value:n[1],done:false};case 5:r.label++;o=n[1];n=[0];continue;case 7:n=r.ops.pop();r.trys.pop();continue;default:if(!(c=r.trys,c=c.length>0&&c[c.length-1])&&(n[0]===6||n[0]===2)){r=0;continue}if(n[0]===3&&(!c||n[1]>c[0]&&n[1]<c[3])){r.label=n[1];break}if(n[0]===6&&r.label<c[1]){r.label=c[1];c=n;break}if(c&&r.label<c[2]){r.label=c[2];r.ops.push(n);break}if(c[2])r.ops.pop();r.trys.pop();continue}n=e.call(t,r)}catch(t){n=[6,t];o=0}finally{a=c=0}if(n[0]&5)throw n[1];return{value:n[0]?n[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{r as registerInstance,c as createEvent,h,H as Host}from"./index-ae188432.js";import{K as isPem,L as isX509Pem,M as isPkcs10Pem,O as isX509AttributePem,P as isX509CRLPem}from"./certification_request-08b4deb8.js";import{a as readAsBinaryString}from"./read_file-bb0b1450.js";import{X as X509Certificate}from"./x509_certificate-47b4c5ee.js";import{X as X509AttributeCertificate,a as X509Crl}from"./x509_crl-ba76d3ed.js";import{P as Pkcs10CertificateRequest}from"./pkcs10_certificate_request-3763c2af.js";import{T as Typography,B as Button}from"./button-a2fabf9a.js";var certificateDecoderCss="*{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;-webkit-text-size-adjust:none;-webkit-tap-highlight-color:transparent;font-family:var(--pv-font-family, inherit)}.t-h1{font-weight:var(--pv-text-h1-weight);font-size:var(--pv-text-h1-size);line-height:var(--pv-text-h1-height);letter-spacing:var(--pv-text-h1-spacing)}.t-h2{font-weight:var(--pv-text-h2-weight);font-size:var(--pv-text-h2-size);line-height:var(--pv-text-h2-height);letter-spacing:var(--pv-text-h2-spacing)}.t-h3{font-weight:var(--pv-text-h3-weight);font-size:var(--pv-text-h3-size);line-height:var(--pv-text-h3-height);letter-spacing:var(--pv-text-h3-spacing)}.t-h4{font-weight:var(--pv-text-h4-weight);font-size:var(--pv-text-h4-size);line-height:var(--pv-text-h4-height);letter-spacing:var(--pv-text-h4-spacing)}.t-h5{font-weight:var(--pv-text-h5-weight);font-size:var(--pv-text-h5-size);line-height:var(--pv-text-h5-height);letter-spacing:var(--pv-text-h5-spacing)}.t-s1{font-weight:var(--pv-text-s1-weight);font-size:var(--pv-text-s1-size);line-height:var(--pv-text-s1-height);letter-spacing:var(--pv-text-s1-spacing)}.t-s2{font-weight:var(--pv-text-s2-weight);font-size:var(--pv-text-s2-size);line-height:var(--pv-text-s2-height);letter-spacing:var(--pv-text-s2-spacing)}.t-b1{font-weight:var(--pv-text-b1-weight);font-size:var(--pv-text-b1-size);line-height:var(--pv-text-b1-height);letter-spacing:var(--pv-text-b1-spacing)}.t-b2{font-weight:var(--pv-text-b2-weight);font-size:var(--pv-text-b2-size);line-height:var(--pv-text-b2-height);letter-spacing:var(--pv-text-b2-spacing)}.t-b3{font-weight:var(--pv-text-b3-weight);font-size:var(--pv-text-b3-size);line-height:var(--pv-text-b3-height);letter-spacing:var(--pv-text-b3-spacing)}.t-btn1{font-weight:var(--pv-text-btn1-weight);font-size:var(--pv-text-btn1-size);line-height:var(--pv-text-btn1-height);letter-spacing:var(--pv-text-btn1-spacing)}.t-btn2{font-weight:var(--pv-text-btn2-weight);font-size:var(--pv-text-btn2-size);line-height:var(--pv-text-btn2-height);letter-spacing:var(--pv-text-btn2-spacing)}.t-c1{font-weight:var(--pv-text-c1-weight);font-size:var(--pv-text-c1-size);line-height:var(--pv-text-c1-height);letter-spacing:var(--pv-text-c1-spacing)}.t-c2{font-weight:var(--pv-text-c2-weight);font-size:var(--pv-text-c2-size);line-height:var(--pv-text-c2-height);letter-spacing:var(--pv-text-c2-spacing)}.c-primary-tint-5{--pv-color-base:var(--pv-color-primary-tint-5)}.c-primary-tint-4{--pv-color-base:var(--pv-color-primary-tint-4)}.c-primary-tint-3{--pv-color-base:var(--pv-color-primary-tint-3)}.c-primary-tint-2{--pv-color-base:var(--pv-color-primary-tint-2)}.c-primary-tint-1{--pv-color-base:var(--pv-color-primary-tint-1)}.c-primary{--pv-color-base:var(--pv-color-primary)}.c-primary-shade-1{--pv-color-base:var(--pv-color-primary-shade-1)}.c-primary-shade-2{--pv-color-base:var(--pv-color-primary-shade-2)}.c-primary-shade-3{--pv-color-base:var(--pv-color-primary-shade-3)}.c-primary-shade-4{--pv-color-base:var(--pv-color-primary-shade-4)}.c-primary-shade-5{--pv-color-base:var(--pv-color-primary-shade-5)}.c-primary-contrast{--pv-color-base:var(--pv-color-primary-contrast)}.c-secondary-tint-5{--pv-color-base:var(--pv-color-secondary-tint-5)}.c-secondary-tint-4{--pv-color-base:var(--pv-color-secondary-tint-4)}.c-secondary-tint-3{--pv-color-base:var(--pv-color-secondary-tint-3)}.c-secondary-tint-2{--pv-color-base:var(--pv-color-secondary-tint-2)}.c-secondary-tint-1{--pv-color-base:var(--pv-color-secondary-tint-1)}.c-secondary{--pv-color-base:var(--pv-color-secondary)}.c-secondary-shade-1{--pv-color-base:var(--pv-color-secondary-shade-1)}.c-secondary-shade-2{--pv-color-base:var(--pv-color-secondary-shade-2)}.c-secondary-shade-3{--pv-color-base:var(--pv-color-secondary-shade-3)}.c-secondary-shade-4{--pv-color-base:var(--pv-color-secondary-shade-4)}.c-secondary-shade-5{--pv-color-base:var(--pv-color-secondary-shade-5)}.c-secondary-contrast{--pv-color-base:var(--pv-color-secondary-contrast)}.c-wrong-tint-5{--pv-color-base:var(--pv-color-wrong-tint-5)}.c-wrong-tint-4{--pv-color-base:var(--pv-color-wrong-tint-4)}.c-wrong-tint-3{--pv-color-base:var(--pv-color-wrong-tint-3)}.c-wrong-tint-2{--pv-color-base:var(--pv-color-wrong-tint-2)}.c-wrong-tint-1{--pv-color-base:var(--pv-color-wrong-tint-1)}.c-wrong{--pv-color-base:var(--pv-color-wrong)}.c-wrong-shade-1{--pv-color-base:var(--pv-color-wrong-shade-1)}.c-wrong-shade-2{--pv-color-base:var(--pv-color-wrong-shade-2)}.c-wrong-shade-3{--pv-color-base:var(--pv-color-wrong-shade-3)}.c-wrong-shade-4{--pv-color-base:var(--pv-color-wrong-shade-4)}.c-wrong-shade-5{--pv-color-base:var(--pv-color-wrong-shade-5)}.c-wrong-contrast{--pv-color-base:var(--pv-color-wrong-contrast)}.c-attention-tint-5{--pv-color-base:var(--pv-color-attention-tint-5)}.c-attention-tint-4{--pv-color-base:var(--pv-color-attention-tint-4)}.c-attention-tint-3{--pv-color-base:var(--pv-color-attention-tint-3)}.c-attention-tint-2{--pv-color-base:var(--pv-color-attention-tint-2)}.c-attention-tint-1{--pv-color-base:var(--pv-color-attention-tint-1)}.c-attention{--pv-color-base:var(--pv-color-attention)}.c-attention-shade-1{--pv-color-base:var(--pv-color-attention-shade-1)}.c-attention-shade-2{--pv-color-base:var(--pv-color-attention-shade-2)}.c-attention-shade-3{--pv-color-base:var(--pv-color-attention-shade-3)}.c-attention-shade-4{--pv-color-base:var(--pv-color-attention-shade-4)}.c-attention-shade-5{--pv-color-base:var(--pv-color-attention-shade-5)}.c-success-tint-5{--pv-color-base:var(--pv-color-success-tint-5)}.c-success-tint-4{--pv-color-base:var(--pv-color-success-tint-4)}.c-success-tint-3{--pv-color-base:var(--pv-color-success-tint-3)}.c-success-tint-2{--pv-color-base:var(--pv-color-success-tint-2)}.c-success-tint-1{--pv-color-base:var(--pv-color-success-tint-1)}.c-success{--pv-color-base:var(--pv-color-success)}.c-success-shade-1{--pv-color-base:var(--pv-color-success-shade-1)}.c-success-shade-2{--pv-color-base:var(--pv-color-success-shade-2)}.c-success-shade-3{--pv-color-base:var(--pv-color-success-shade-3)}.c-success-shade-4{--pv-color-base:var(--pv-color-success-shade-4)}.c-success-shade-5{--pv-color-base:var(--pv-color-success-shade-5)}.c-black{--pv-color-base:var(--pv-color-black)}.c-gray-10{--pv-color-base:var(--pv-color-gray-10)}.c-gray-9{--pv-color-base:var(--pv-color-gray-9)}.c-gray-8{--pv-color-base:var(--pv-color-gray-8)}.c-gray-7{--pv-color-base:var(--pv-color-gray-7)}.c-gray-6{--pv-color-base:var(--pv-color-gray-6)}.c-gray-5{--pv-color-base:var(--pv-color-gray-5)}.c-gray-4{--pv-color-base:var(--pv-color-gray-4)}.c-gray-3{--pv-color-base:var(--pv-color-gray-3)}.c-gray-2{--pv-color-base:var(--pv-color-gray-2)}.c-gray-1{--pv-color-base:var(--pv-color-gray-1)}.c-white{--pv-color-base:var(--pv-color-white)}.c-extra-1{--pv-color-base:var(--pv-color-extra-1)}.c-extra-2{--pv-color-base:var(--pv-color-extra-2)}.typography{color:var(--pv-color-base)}.button{display:-ms-inline-flexbox;display:inline-flex;cursor:pointer;background:transparent;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;text-decoration:none;outline:none;font-family:inherit;border-radius:4px;height:var(--pv-size-base-6);min-width:var(--pv-size-base-6);padding:0 var(--pv-size-base-2);-webkit-transition:background-color 200ms ease 0s;transition:background-color 200ms ease 0s;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:var(--pv-size-base-2);font-size:0}.button.m_no_padding{padding:0}.button:hover{background-color:var(--pv-color-gray-3)}.button:focus{background-color:var(--pv-color-gray-4)}.button:active{background-color:var(--pv-color-gray-5)}:host{display:block;width:100%}.textarea{min-height:300px;width:100%;border-radius:4px;border:1px solid var(--pv-color-gray-5);padding:14px;font-family:monospace;resize:vertical}.viewer{margin-top:var(--pv-size-base-12)}.controls{margin-top:var(--pv-size-base-2);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:var(--pv-size-base-2)}.control_row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:var(--pv-size-base)}";var PeculiarCertificateDecoderStyle0=certificateDecoderCss;var CertificateDecoder=function(){function t(t){var e=this;registerInstance(this,t);this.successParse=createEvent(this,"successParse",7);this.clearCertificate=createEvent(this,"clearCertificate",7);this.handleClickDecode=function(){var t=e.inputPaste.value;if(t){e.decode(t)}};this.handleClickClear=function(){e.clearValue()};this.handleChangeInputFile=function(t){return __awaiter(e,void 0,void 0,(function(){var e,r;return __generator(this,(function(a){switch(a.label){case 0:e=t.target;if(!e.files)return[3,2];return[4,readAsBinaryString(e.files[0])];case 1:r=a.sent();if(typeof r.value==="string"){this.decode(r.value)}e.value="";a.label=2;case 2:return[2]}}))}))};this.handleChangeExample=function(t){if(t.target.value){e.decode(t.target.value)}else{e.clearValue()}};this.handleDropFile=function(t){return __awaiter(e,void 0,void 0,(function(){var e,r;return __generator(this,(function(a){switch(a.label){case 0:t.stopPropagation();t.preventDefault();e=t.dataTransfer;if(!e.files)return[3,2];return[4,readAsBinaryString(e.files[0])];case 1:r=a.sent();if(typeof r.value==="string"){this.decode(r.value)}a.label=2;case 2:return[2]}}))}))};this.certificateExamples=undefined;this.defaultCertificate=undefined;this.certificateDecoded=undefined}t.prototype.componentDidLoad=function(){var t=this;if(this.defaultCertificate){setTimeout((function(){return t.decode(t.defaultCertificate)}),100)}};t.prototype.clearValue=function(){this.inputPaste.value="";this.certificateDecoded=null;this.clearCertificate.emit()};t.prototype.setValue=function(t){this.certificateDecoded=t;this.inputPaste.value=t.toString("pem");this.successParse.emit(t.toString("base64"))};t.prototype.decode=function(t){var e=isPem(t);var r=isX509Pem(t);var a=isPkcs10Pem(t);var o=isX509AttributePem(t);var i=isX509CRLPem(t);var c;var s;if(e&&!(r||o||a||i)){this.clearValue();alert("Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.");return}try{if(r){c=new X509Certificate(t)}if(o){c=new X509AttributeCertificate(t)}if(a){c=new Pkcs10CertificateRequest(t)}if(i){c=new X509Crl(t)}}catch(t){s=t}if(!c){try{c=new X509Certificate(t)}catch(t){s=t}}if(!c){try{c=new X509AttributeCertificate(t)}catch(t){s=t}}if(!c){try{c=new Pkcs10CertificateRequest(t)}catch(t){s=t}}if(!c){try{c=new X509Crl(t)}catch(t){s=t}}if(!c){this.clearValue();console.log(s);alert("Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.")}else{this.setValue(c)}};t.prototype.render=function(){var t=this;var e;return h(Host,{key:"7e7738b6552c8bcecc62850e7cffd915b94dc144"},h("textarea",{key:"fce9e435a476f015ac9fcafba23cb6cd338734b9",placeholder:"Certificate DER or PEM",class:"textarea t-b2 c-black",ref:function(e){t.inputPaste=e},onDrop:this.handleDropFile}),h("div",{key:"5fbb94920b5226a81ca57c9ebf489f081684f282",class:"controls"},h("div",{key:"828ff9a65a035dafa43b8bca8f7746682b86afac",class:"control_row"},h(Typography,{key:"80b75774669e2f54dda2fbdbd87cb5a6932f43fc",variant:"b3",color:"secondary-tint-2"},"Drag or load file:"),h("input",{key:"fb281f25973807c84fda36dd52c99c1fe6c62398",type:"file",accept:"application/pkix-cert,application/x-x509-ca-cert,application/x-x509-user-cert,application/pkcs10,application/pkix-crl,.csr,.req,.crl",onChange:this.handleChangeInputFile,value:""})),((e=this.certificateExamples)===null||e===void 0?void 0:e.length)&&h("div",{class:"control_row"},h(Typography,{variant:"b3",color:"secondary-tint-2"},"Load examples:"),h("select",{onChange:this.handleChangeExample},h("option",{value:""},"None"),this.certificateExamples.map((function(t){return h("option",{value:t.value},t.title)})))),h("div",{key:"a975c8f848d0c2dd2dd1e74d558051a3a28c99e7",class:"control_row"},h(Button,{key:"4979abadf98b879c32751d5454d00bb4323a306b",onClick:this.handleClickDecode},"Decode"),h(Button,{key:"2f1118d241db412e56a00bf449acbc24853efff9",onClick:this.handleClickClear},"Clear"))),this.certificateDecoded instanceof X509Certificate&&h("peculiar-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof X509AttributeCertificate&&h("peculiar-attribute-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof Pkcs10CertificateRequest&&h("peculiar-csr-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof X509Crl&&h("peculiar-crl-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}))};return t}();CertificateDecoder.style=PeculiarCertificateDecoderStyle0;export{CertificateDecoder as peculiar_certificate_decoder};
4
+ */import{r as registerInstance,c as createEvent,h,H as Host}from"./index-ae188432.js";import{a as readAsBinaryString}from"./read_file-bb0b1450.js";import"./certification_request-a4699dcf.js";import{X as X509Certificate}from"./x509_certificate-05a23c0e.js";import{X as X509AttributeCertificate,a as X509Crl}from"./x509_crl-26081461.js";import{P as Pkcs10CertificateRequest}from"./pkcs10_certificate_request-785a4794.js";import{T as Typography,B as Button}from"./button-a2fabf9a.js";var certificateDecoderCss="*{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;-webkit-text-size-adjust:none;-webkit-tap-highlight-color:transparent;font-family:var(--pv-font-family, inherit)}.t-h1{font-weight:var(--pv-text-h1-weight);font-size:var(--pv-text-h1-size);line-height:var(--pv-text-h1-height);letter-spacing:var(--pv-text-h1-spacing)}.t-h2{font-weight:var(--pv-text-h2-weight);font-size:var(--pv-text-h2-size);line-height:var(--pv-text-h2-height);letter-spacing:var(--pv-text-h2-spacing)}.t-h3{font-weight:var(--pv-text-h3-weight);font-size:var(--pv-text-h3-size);line-height:var(--pv-text-h3-height);letter-spacing:var(--pv-text-h3-spacing)}.t-h4{font-weight:var(--pv-text-h4-weight);font-size:var(--pv-text-h4-size);line-height:var(--pv-text-h4-height);letter-spacing:var(--pv-text-h4-spacing)}.t-h5{font-weight:var(--pv-text-h5-weight);font-size:var(--pv-text-h5-size);line-height:var(--pv-text-h5-height);letter-spacing:var(--pv-text-h5-spacing)}.t-s1{font-weight:var(--pv-text-s1-weight);font-size:var(--pv-text-s1-size);line-height:var(--pv-text-s1-height);letter-spacing:var(--pv-text-s1-spacing)}.t-s2{font-weight:var(--pv-text-s2-weight);font-size:var(--pv-text-s2-size);line-height:var(--pv-text-s2-height);letter-spacing:var(--pv-text-s2-spacing)}.t-b1{font-weight:var(--pv-text-b1-weight);font-size:var(--pv-text-b1-size);line-height:var(--pv-text-b1-height);letter-spacing:var(--pv-text-b1-spacing)}.t-b2{font-weight:var(--pv-text-b2-weight);font-size:var(--pv-text-b2-size);line-height:var(--pv-text-b2-height);letter-spacing:var(--pv-text-b2-spacing)}.t-b3{font-weight:var(--pv-text-b3-weight);font-size:var(--pv-text-b3-size);line-height:var(--pv-text-b3-height);letter-spacing:var(--pv-text-b3-spacing)}.t-btn1{font-weight:var(--pv-text-btn1-weight);font-size:var(--pv-text-btn1-size);line-height:var(--pv-text-btn1-height);letter-spacing:var(--pv-text-btn1-spacing)}.t-btn2{font-weight:var(--pv-text-btn2-weight);font-size:var(--pv-text-btn2-size);line-height:var(--pv-text-btn2-height);letter-spacing:var(--pv-text-btn2-spacing)}.t-c1{font-weight:var(--pv-text-c1-weight);font-size:var(--pv-text-c1-size);line-height:var(--pv-text-c1-height);letter-spacing:var(--pv-text-c1-spacing)}.t-c2{font-weight:var(--pv-text-c2-weight);font-size:var(--pv-text-c2-size);line-height:var(--pv-text-c2-height);letter-spacing:var(--pv-text-c2-spacing)}.c-primary-tint-5{--pv-color-base:var(--pv-color-primary-tint-5)}.c-primary-tint-4{--pv-color-base:var(--pv-color-primary-tint-4)}.c-primary-tint-3{--pv-color-base:var(--pv-color-primary-tint-3)}.c-primary-tint-2{--pv-color-base:var(--pv-color-primary-tint-2)}.c-primary-tint-1{--pv-color-base:var(--pv-color-primary-tint-1)}.c-primary{--pv-color-base:var(--pv-color-primary)}.c-primary-shade-1{--pv-color-base:var(--pv-color-primary-shade-1)}.c-primary-shade-2{--pv-color-base:var(--pv-color-primary-shade-2)}.c-primary-shade-3{--pv-color-base:var(--pv-color-primary-shade-3)}.c-primary-shade-4{--pv-color-base:var(--pv-color-primary-shade-4)}.c-primary-shade-5{--pv-color-base:var(--pv-color-primary-shade-5)}.c-primary-contrast{--pv-color-base:var(--pv-color-primary-contrast)}.c-secondary-tint-5{--pv-color-base:var(--pv-color-secondary-tint-5)}.c-secondary-tint-4{--pv-color-base:var(--pv-color-secondary-tint-4)}.c-secondary-tint-3{--pv-color-base:var(--pv-color-secondary-tint-3)}.c-secondary-tint-2{--pv-color-base:var(--pv-color-secondary-tint-2)}.c-secondary-tint-1{--pv-color-base:var(--pv-color-secondary-tint-1)}.c-secondary{--pv-color-base:var(--pv-color-secondary)}.c-secondary-shade-1{--pv-color-base:var(--pv-color-secondary-shade-1)}.c-secondary-shade-2{--pv-color-base:var(--pv-color-secondary-shade-2)}.c-secondary-shade-3{--pv-color-base:var(--pv-color-secondary-shade-3)}.c-secondary-shade-4{--pv-color-base:var(--pv-color-secondary-shade-4)}.c-secondary-shade-5{--pv-color-base:var(--pv-color-secondary-shade-5)}.c-secondary-contrast{--pv-color-base:var(--pv-color-secondary-contrast)}.c-wrong-tint-5{--pv-color-base:var(--pv-color-wrong-tint-5)}.c-wrong-tint-4{--pv-color-base:var(--pv-color-wrong-tint-4)}.c-wrong-tint-3{--pv-color-base:var(--pv-color-wrong-tint-3)}.c-wrong-tint-2{--pv-color-base:var(--pv-color-wrong-tint-2)}.c-wrong-tint-1{--pv-color-base:var(--pv-color-wrong-tint-1)}.c-wrong{--pv-color-base:var(--pv-color-wrong)}.c-wrong-shade-1{--pv-color-base:var(--pv-color-wrong-shade-1)}.c-wrong-shade-2{--pv-color-base:var(--pv-color-wrong-shade-2)}.c-wrong-shade-3{--pv-color-base:var(--pv-color-wrong-shade-3)}.c-wrong-shade-4{--pv-color-base:var(--pv-color-wrong-shade-4)}.c-wrong-shade-5{--pv-color-base:var(--pv-color-wrong-shade-5)}.c-wrong-contrast{--pv-color-base:var(--pv-color-wrong-contrast)}.c-attention-tint-5{--pv-color-base:var(--pv-color-attention-tint-5)}.c-attention-tint-4{--pv-color-base:var(--pv-color-attention-tint-4)}.c-attention-tint-3{--pv-color-base:var(--pv-color-attention-tint-3)}.c-attention-tint-2{--pv-color-base:var(--pv-color-attention-tint-2)}.c-attention-tint-1{--pv-color-base:var(--pv-color-attention-tint-1)}.c-attention{--pv-color-base:var(--pv-color-attention)}.c-attention-shade-1{--pv-color-base:var(--pv-color-attention-shade-1)}.c-attention-shade-2{--pv-color-base:var(--pv-color-attention-shade-2)}.c-attention-shade-3{--pv-color-base:var(--pv-color-attention-shade-3)}.c-attention-shade-4{--pv-color-base:var(--pv-color-attention-shade-4)}.c-attention-shade-5{--pv-color-base:var(--pv-color-attention-shade-5)}.c-success-tint-5{--pv-color-base:var(--pv-color-success-tint-5)}.c-success-tint-4{--pv-color-base:var(--pv-color-success-tint-4)}.c-success-tint-3{--pv-color-base:var(--pv-color-success-tint-3)}.c-success-tint-2{--pv-color-base:var(--pv-color-success-tint-2)}.c-success-tint-1{--pv-color-base:var(--pv-color-success-tint-1)}.c-success{--pv-color-base:var(--pv-color-success)}.c-success-shade-1{--pv-color-base:var(--pv-color-success-shade-1)}.c-success-shade-2{--pv-color-base:var(--pv-color-success-shade-2)}.c-success-shade-3{--pv-color-base:var(--pv-color-success-shade-3)}.c-success-shade-4{--pv-color-base:var(--pv-color-success-shade-4)}.c-success-shade-5{--pv-color-base:var(--pv-color-success-shade-5)}.c-black{--pv-color-base:var(--pv-color-black)}.c-gray-10{--pv-color-base:var(--pv-color-gray-10)}.c-gray-9{--pv-color-base:var(--pv-color-gray-9)}.c-gray-8{--pv-color-base:var(--pv-color-gray-8)}.c-gray-7{--pv-color-base:var(--pv-color-gray-7)}.c-gray-6{--pv-color-base:var(--pv-color-gray-6)}.c-gray-5{--pv-color-base:var(--pv-color-gray-5)}.c-gray-4{--pv-color-base:var(--pv-color-gray-4)}.c-gray-3{--pv-color-base:var(--pv-color-gray-3)}.c-gray-2{--pv-color-base:var(--pv-color-gray-2)}.c-gray-1{--pv-color-base:var(--pv-color-gray-1)}.c-white{--pv-color-base:var(--pv-color-white)}.c-extra-1{--pv-color-base:var(--pv-color-extra-1)}.c-extra-2{--pv-color-base:var(--pv-color-extra-2)}.typography{color:var(--pv-color-base)}.button{display:-ms-inline-flexbox;display:inline-flex;cursor:pointer;background:transparent;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;text-decoration:none;outline:none;font-family:inherit;border-radius:4px;height:var(--pv-size-base-6);min-width:var(--pv-size-base-6);padding:0 var(--pv-size-base-2);-webkit-transition:background-color 200ms ease 0s;transition:background-color 200ms ease 0s;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:var(--pv-size-base-2);font-size:0}.button.m_no_padding{padding:0}.button:hover{background-color:var(--pv-color-gray-3)}.button:focus{background-color:var(--pv-color-gray-4)}.button:active{background-color:var(--pv-color-gray-5)}:host{display:block;width:100%}.textarea{min-height:300px;width:100%;border-radius:4px;border:1px solid var(--pv-color-gray-5);padding:14px;font-family:monospace;resize:vertical}.viewer{margin-top:var(--pv-size-base-12)}.controls{margin-top:var(--pv-size-base-2);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:var(--pv-size-base-2)}.control_row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:var(--pv-size-base)}";var PeculiarCertificateDecoderStyle0=certificateDecoderCss;var CertificateDecoder=function(){function t(t){var e=this;registerInstance(this,t);this.successParse=createEvent(this,"successParse",7);this.clearCertificate=createEvent(this,"clearCertificate",7);this.handleClickDecode=function(){var t=e.inputPaste.value;if(t){e.decode(t)}};this.handleClickClear=function(){e.clearValue()};this.handleChangeInputFile=function(t){return __awaiter(e,void 0,void 0,(function(){var e,r;return __generator(this,(function(a){switch(a.label){case 0:e=t.target;if(!e.files)return[3,2];return[4,readAsBinaryString(e.files[0])];case 1:r=a.sent();if(typeof r.value==="string"){this.decode(r.value)}e.value="";a.label=2;case 2:return[2]}}))}))};this.handleChangeExample=function(t){if(t.target.value){e.decode(t.target.value)}else{e.clearValue()}};this.handleDropFile=function(t){return __awaiter(e,void 0,void 0,(function(){var e,r;return __generator(this,(function(a){switch(a.label){case 0:t.stopPropagation();t.preventDefault();e=t.dataTransfer;if(!e.files)return[3,2];return[4,readAsBinaryString(e.files[0])];case 1:r=a.sent();if(typeof r.value==="string"){this.decode(r.value)}a.label=2;case 2:return[2]}}))}))};this.certificateExamples=undefined;this.defaultCertificate=undefined;this.certificateDecoded=undefined}t.prototype.componentDidLoad=function(){var t=this;if(this.defaultCertificate){setTimeout((function(){return t.decode(t.defaultCertificate)}),100)}};t.prototype.clearValue=function(){this.inputPaste.value="";this.certificateDecoded=null;this.clearCertificate.emit()};t.prototype.setValue=function(t){this.certificateDecoded=t;this.inputPaste.value=t.toString("pem");this.successParse.emit(t.toString("base64"))};t.prototype.decode=function(t){var e=this;new Promise((function(e){e(new X509Certificate(t))})).catch((function(){return new X509AttributeCertificate(t)})).catch((function(){return new Pkcs10CertificateRequest(t)})).catch((function(){return new X509Crl(t)})).then((function(t){return e.setValue(t)})).catch((function(t){e.clearValue();console.log(t);alert("Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.")}))};t.prototype.render=function(){var t=this;var e;return h(Host,{key:"7c3bfca68882e39705e9640f76754cce2e5d6c6a"},h("textarea",{key:"4d24f4b914f7f118efde2144e7597e0767d59ce8",placeholder:"Certificate DER or PEM",class:"textarea t-b2 c-black",ref:function(e){t.inputPaste=e},onDrop:this.handleDropFile}),h("div",{key:"06ba6e2b5658225a585ec9711e6f3f945ef3a840",class:"controls"},h("div",{key:"df2e115ea04d4eae7985f6ee57bfe47354f50240",class:"control_row"},h(Typography,{key:"05c30b2956055455cdb1f52b40995752dd0d7da4",variant:"b3",color:"secondary-tint-2"},"Drag or load file:"),h("input",{key:"cca59d7c59d9917e728f9795bcfbd546d4cf75b8",type:"file",accept:"application/pkix-cert,application/x-x509-ca-cert,application/x-x509-user-cert,application/pkcs10,application/pkix-crl,.csr,.req,.crl",onChange:this.handleChangeInputFile,value:""})),((e=this.certificateExamples)===null||e===void 0?void 0:e.length)&&h("div",{class:"control_row"},h(Typography,{variant:"b3",color:"secondary-tint-2"},"Load examples:"),h("select",{onChange:this.handleChangeExample},h("option",{value:""},"None"),this.certificateExamples.map((function(t){return h("option",{value:t.value},t.title)})))),h("div",{key:"6d1f010e03d7836459214e5c0abe1af7fbbe2a10",class:"control_row"},h(Button,{key:"4038db36b62ff11f592f380f5c98bebb0014585e",onClick:this.handleClickDecode},"Decode"),h(Button,{key:"fb7c30e61b10194b5f02a2cefa06191904f5ce46",onClick:this.handleClickClear},"Clear"))),this.certificateDecoded instanceof X509Certificate&&h("peculiar-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof X509AttributeCertificate&&h("peculiar-attribute-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof Pkcs10CertificateRequest&&h("peculiar-csr-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof X509Crl&&h("peculiar-crl-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}))};return t}();CertificateDecoder.style=PeculiarCertificateDecoderStyle0;export{CertificateDecoder as peculiar_certificate_decoder};
5
5
  //# sourceMappingURL=peculiar-certificate-decoder.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["certificateDecoderCss","PeculiarCertificateDecoderStyle0","CertificateDecoder","this","handleClickDecode","value","_this","inputPaste","decode","handleClickClear","clearValue","handleChangeInputFile","event","__awaiter","element","target","files","readAsBinaryString","file","_b","sent","handleChangeExample","handleDropFile","stopPropagation","preventDefault","dataTransfer","class_1","prototype","componentDidLoad","defaultCertificate","setTimeout","certificateDecoded","clearCertificate","emit","setValue","toString","successParse","certificate","isPem","validator.isPem","isX509Pem","validator.isX509Pem","isPkcs10Pem","validator.isPkcs10Pem","isX509AttributePem","validator.isX509AttributePem","isX509CRLPem","validator.isX509CRLPem","decoded","decodeError","alert","X509Certificate","X509AttributeCertificate","Pkcs10CertificateRequest","X509Crl","error","console","log","render","h","Host","key","placeholder","class","ref","el","onDrop","Typography","variant","color","type","accept","onChange","_a","certificateExamples","length","map","example","title","Button","onClick","download"],"sources":["src/components/certificate-decoder/certificate-decoder.scss?tag=peculiar-certificate-decoder&encapsulation=shadow","src/components/certificate-decoder/certificate-decoder.tsx"],"sourcesContent":["@import '../../css/base.scss';\n\n:host {\n display: block;\n width: 100%;\n}\n\n.textarea {\n min-height: 300px;\n width: 100%;\n border-radius: 4px;\n border: 1px solid var(--pv-color-gray-5);;\n padding: 14px;\n font-family: monospace;\n resize: vertical;\n}\n\n.viewer {\n margin-top: var(--pv-size-base-12);\n}\n\n.controls {\n margin-top: var(--pv-size-base-2);\n display: flex;\n flex-direction: column;\n gap: var(--pv-size-base-2);\n}\n\n.control_row {\n display: flex;\n align-items: center;\n gap: var(--pv-size-base);\n}\n","/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Host,\n h,\n State,\n Prop,\n Event,\n EventEmitter,\n} from '@stencil/core';\n\nimport { validator, readAsBinaryString } from '../../utils';\nimport {\n X509Certificate,\n X509AttributeCertificate,\n Pkcs10CertificateRequest,\n X509Crl,\n} from '../../crypto';\nimport { Button } from '../button';\nimport { Typography } from '../typography';\n\n@Component({\n tag: 'peculiar-certificate-decoder',\n styleUrl: 'certificate-decoder.scss',\n shadow: true,\n})\nexport class CertificateDecoder {\n private inputPaste?: HTMLTextAreaElement;\n\n /**\n * The example certificate value for decode and show details. Use PEM or DER.\n */\n @Prop() certificateExamples?: {\n title: string;\n value: string;\n }[];\n\n /**\n * The default certificate value for decode and show details. Use PEM or DER.\n */\n @Prop() defaultCertificate?: string;\n\n @State() certificateDecoded: X509Certificate\n | X509AttributeCertificate\n | Pkcs10CertificateRequest\n | X509Crl;\n\n /**\n * Emitted when the certificate has been successfully parsed.\n */\n @Event() successParse!: EventEmitter<string>;\n\n /**\n * Emitted when the certificate has been removed.\n */\n @Event() clearCertificate!: EventEmitter<void>;\n\n componentDidLoad() {\n if (this.defaultCertificate) {\n /**\n * Prevent Stencil warning about re-render\n */\n setTimeout(() => this.decode(this.defaultCertificate), 100);\n }\n }\n\n private handleClickDecode = () => {\n const { value } = this.inputPaste;\n\n if (value) {\n this.decode(value);\n }\n };\n\n private handleClickClear = () => {\n this.clearValue();\n };\n\n private handleChangeInputFile = async (event: any) => {\n const element = event.target;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n\n element.value = '';\n }\n };\n\n private handleChangeExample = (event: any) => {\n if (event.target.value) {\n this.decode(event.target.value);\n } else {\n this.clearValue();\n }\n };\n\n private handleDropFile = async (event: any) => {\n event.stopPropagation();\n event.preventDefault();\n\n const element = event.dataTransfer;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n }\n };\n\n clearValue() {\n this.inputPaste.value = '';\n this.certificateDecoded = null;\n this.clearCertificate.emit();\n }\n\n setValue(value: X509Certificate | X509AttributeCertificate | Pkcs10CertificateRequest | X509Crl) {\n this.certificateDecoded = value;\n this.inputPaste.value = value.toString('pem');\n this.successParse.emit(value.toString('base64'));\n }\n\n decode(certificate: string) {\n const isPem = validator.isPem(certificate);\n const isX509Pem = validator.isX509Pem(certificate);\n const isPkcs10Pem = validator.isPkcs10Pem(certificate);\n const isX509AttributePem = validator.isX509AttributePem(certificate);\n const isX509CRLPem = validator.isX509CRLPem(certificate);\n let decoded: X509Certificate | X509AttributeCertificate | Pkcs10CertificateRequest | X509Crl;\n let decodeError: Error;\n\n if (isPem && !(isX509Pem || isX509AttributePem || isPkcs10Pem || isX509CRLPem)) {\n this.clearValue();\n\n alert('Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');\n\n return;\n }\n\n try {\n if (isX509Pem) {\n decoded = new X509Certificate(certificate);\n }\n\n if (isX509AttributePem) {\n decoded = new X509AttributeCertificate(certificate);\n }\n\n if (isPkcs10Pem) {\n decoded = new Pkcs10CertificateRequest(certificate);\n }\n\n if (isX509CRLPem) {\n decoded = new X509Crl(certificate);\n }\n } catch (error) {\n decodeError = error;\n }\n\n if (!decoded) {\n try {\n decoded = new X509Certificate(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new X509AttributeCertificate(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new Pkcs10CertificateRequest(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new X509Crl(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n this.clearValue();\n\n console.log(decodeError);\n alert('Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');\n } else {\n this.setValue(decoded);\n }\n }\n\n render() {\n return (\n <Host>\n <textarea\n placeholder=\"Certificate DER or PEM\"\n class=\"textarea t-b2 c-black\"\n ref={(el) => { this.inputPaste = el; }}\n onDrop={this.handleDropFile}\n />\n <div class=\"controls\">\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Drag or load file:\n </Typography>\n <input\n type=\"file\"\n accept=\"application/pkix-cert,application/x-x509-ca-cert,application/x-x509-user-cert,application/pkcs10,application/pkix-crl,.csr,.req,.crl\"\n onChange={this.handleChangeInputFile}\n value=\"\"\n />\n </div>\n {this.certificateExamples?.length && (\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Load examples:\n </Typography>\n <select onChange={this.handleChangeExample}>\n <option value=\"\">None</option>\n {this.certificateExamples.map((example) => (\n <option value={example.value}>\n {example.title}\n </option>\n ))}\n </select>\n </div>\n )}\n <div class=\"control_row\">\n <Button\n onClick={this.handleClickDecode}\n >\n Decode\n </Button>\n <Button\n onClick={this.handleClickClear}\n >\n Clear\n </Button>\n </div>\n </div>\n {this.certificateDecoded instanceof X509Certificate && (\n <peculiar-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof X509AttributeCertificate && (\n <peculiar-attribute-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof Pkcs10CertificateRequest && (\n <peculiar-csr-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof X509Crl && (\n <peculiar-crl-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["certificateDecoderCss","PeculiarCertificateDecoderStyle0","CertificateDecoder","this","handleClickDecode","value","_this","inputPaste","decode","handleClickClear","clearValue","handleChangeInputFile","event","__awaiter","element","target","files","readAsBinaryString","file","_b","sent","handleChangeExample","handleDropFile","stopPropagation","preventDefault","dataTransfer","class_1","prototype","componentDidLoad","defaultCertificate","setTimeout","certificateDecoded","clearCertificate","emit","setValue","toString","successParse","certificate","Promise","resolve","X509Certificate","catch","X509AttributeCertificate","Pkcs10CertificateRequest","X509Crl","then","res","err","console","log","alert","render","h","Host","key","placeholder","class","ref","el","onDrop","Typography","variant","color","type","accept","onChange","_a","certificateExamples","length","map","example","title","Button","onClick","download"],"sources":["src/components/certificate-decoder/certificate-decoder.scss?tag=peculiar-certificate-decoder&encapsulation=shadow","src/components/certificate-decoder/certificate-decoder.tsx"],"sourcesContent":["@import '../../css/base.scss';\n\n:host {\n display: block;\n width: 100%;\n}\n\n.textarea {\n min-height: 300px;\n width: 100%;\n border-radius: 4px;\n border: 1px solid var(--pv-color-gray-5);;\n padding: 14px;\n font-family: monospace;\n resize: vertical;\n}\n\n.viewer {\n margin-top: var(--pv-size-base-12);\n}\n\n.controls {\n margin-top: var(--pv-size-base-2);\n display: flex;\n flex-direction: column;\n gap: var(--pv-size-base-2);\n}\n\n.control_row {\n display: flex;\n align-items: center;\n gap: var(--pv-size-base);\n}\n","/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Host,\n h,\n State,\n Prop,\n Event,\n EventEmitter,\n} from '@stencil/core';\n\nimport { readAsBinaryString } from '../../utils';\nimport {\n X509Certificate,\n X509AttributeCertificate,\n Pkcs10CertificateRequest,\n X509Crl,\n} from '../../crypto';\nimport { Button } from '../button';\nimport { Typography } from '../typography';\n\n@Component({\n tag: 'peculiar-certificate-decoder',\n styleUrl: 'certificate-decoder.scss',\n shadow: true,\n})\nexport class CertificateDecoder {\n private inputPaste?: HTMLTextAreaElement;\n\n /**\n * The example certificate value for decode and show details. Use PEM or DER.\n */\n @Prop() certificateExamples?: {\n title: string;\n value: string;\n }[];\n\n /**\n * The default certificate value for decode and show details. Use PEM or DER.\n */\n @Prop() defaultCertificate?: string;\n\n @State() certificateDecoded: X509Certificate\n | X509AttributeCertificate\n | Pkcs10CertificateRequest\n | X509Crl;\n\n /**\n * Emitted when the certificate has been successfully parsed.\n */\n @Event() successParse!: EventEmitter<string>;\n\n /**\n * Emitted when the certificate has been removed.\n */\n @Event() clearCertificate!: EventEmitter<void>;\n\n componentDidLoad() {\n if (this.defaultCertificate) {\n /**\n * Prevent Stencil warning about re-render\n */\n setTimeout(() => this.decode(this.defaultCertificate), 100);\n }\n }\n\n private handleClickDecode = () => {\n const { value } = this.inputPaste;\n\n if (value) {\n this.decode(value);\n }\n };\n\n private handleClickClear = () => {\n this.clearValue();\n };\n\n private handleChangeInputFile = async (event: any) => {\n const element = event.target;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n\n element.value = '';\n }\n };\n\n private handleChangeExample = (event: any) => {\n if (event.target.value) {\n this.decode(event.target.value);\n } else {\n this.clearValue();\n }\n };\n\n private handleDropFile = async (event: any) => {\n event.stopPropagation();\n event.preventDefault();\n\n const element = event.dataTransfer;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n }\n };\n\n clearValue() {\n this.inputPaste.value = '';\n this.certificateDecoded = null;\n this.clearCertificate.emit();\n }\n\n setValue(value: typeof this.certificateDecoded) {\n this.certificateDecoded = value;\n this.inputPaste.value = value.toString('pem');\n this.successParse.emit(value.toString('base64'));\n }\n\n decode(certificate: string) {\n new Promise((resolve) => {\n resolve(new X509Certificate(certificate));\n })\n .catch(() => new X509AttributeCertificate(certificate))\n .catch(() => new Pkcs10CertificateRequest(certificate))\n .catch(() => new X509Crl(certificate))\n .then((res: typeof this.certificateDecoded) => this.setValue(res))\n .catch((err) => {\n this.clearValue();\n\n console.log(err);\n alert('Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');\n });\n }\n\n render() {\n return (\n <Host>\n <textarea\n placeholder=\"Certificate DER or PEM\"\n class=\"textarea t-b2 c-black\"\n ref={(el) => { this.inputPaste = el; }}\n onDrop={this.handleDropFile}\n />\n <div class=\"controls\">\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Drag or load file:\n </Typography>\n <input\n type=\"file\"\n accept=\"application/pkix-cert,application/x-x509-ca-cert,application/x-x509-user-cert,application/pkcs10,application/pkix-crl,.csr,.req,.crl\"\n onChange={this.handleChangeInputFile}\n value=\"\"\n />\n </div>\n {this.certificateExamples?.length && (\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Load examples:\n </Typography>\n <select onChange={this.handleChangeExample}>\n <option value=\"\">None</option>\n {this.certificateExamples.map((example) => (\n <option value={example.value}>\n {example.title}\n </option>\n ))}\n </select>\n </div>\n )}\n <div class=\"control_row\">\n <Button\n onClick={this.handleClickDecode}\n >\n Decode\n </Button>\n <Button\n onClick={this.handleClickClear}\n >\n Clear\n </Button>\n </div>\n </div>\n {this.certificateDecoded instanceof X509Certificate && (\n <peculiar-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof X509AttributeCertificate && (\n <peculiar-attribute-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof Pkcs10CertificateRequest && (\n <peculiar-csr-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof X509Crl && (\n <peculiar-crl-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  var __awaiter=this&&this.__awaiter||function(t,e,r,a){function i(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,o){function s(t){try{c(a.next(t))}catch(t){o(t)}}function n(t){try{c(a["throw"](t))}catch(t){o(t)}}function c(t){t.done?r(t.value):i(t.value).then(s,n)}c((a=a.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},a,i,o,s;return s={next:n(0),throw:n(1),return:n(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function n(t){return function(e){return c([t,e])}}function c(n){if(a)throw new TypeError("Generator is already executing.");while(s&&(s=0,n[0]&&(r=0)),r)try{if(a=1,i&&(o=n[0]&2?i["return"]:n[0]?i["throw"]||((o=i["return"])&&o.call(i),0):i.next)&&!(o=o.call(i,n[1])).done)return o;if(i=0,o)n=[n[0]&2,o.value];switch(n[0]){case 0:case 1:o=n;break;case 4:r.label++;return{value:n[1],done:false};case 5:r.label++;i=n[1];n=[0];continue;case 7:n=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(n[0]===6||n[0]===2)){r=0;continue}if(n[0]===3&&(!o||n[1]>o[0]&&n[1]<o[3])){r.label=n[1];break}if(n[0]===6&&r.label<o[1]){r.label=o[1];o=n;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(n);break}if(o[2])r.ops.pop();r.trys.pop();continue}n=e.call(t,r)}catch(t){n=[6,t];i=0}finally{a=o=0}if(n[0]&5)throw n[1];return{value:n[0]?n[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{r as registerInstance,h,H as Host}from"./index-ae188432.js";import{X as X509Certificate}from"./x509_certificate-47b4c5ee.js";import"./certification_request-08b4deb8.js";import{B as BasicInformation,h as SubjectName,I as IssuerName,P as PublicKey,S as Signature,b as Thumbprints,E as Extensions,d as getLEILink,e as getDNSNameLink,f as getIPAddressLink,M as Miscellaneous}from"./miscellaneous-d4bbc6f2.js";import{T as Typography}from"./button-a2fabf9a.js";import"./link-7e4e9060.js";import"./download-14dc1047.js";var certificateViewerCss="*{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;-webkit-text-size-adjust:none;-webkit-tap-highlight-color:transparent;font-family:var(--pv-font-family, inherit)}.t-h1{font-weight:var(--pv-text-h1-weight);font-size:var(--pv-text-h1-size);line-height:var(--pv-text-h1-height);letter-spacing:var(--pv-text-h1-spacing)}.t-h2{font-weight:var(--pv-text-h2-weight);font-size:var(--pv-text-h2-size);line-height:var(--pv-text-h2-height);letter-spacing:var(--pv-text-h2-spacing)}.t-h3{font-weight:var(--pv-text-h3-weight);font-size:var(--pv-text-h3-size);line-height:var(--pv-text-h3-height);letter-spacing:var(--pv-text-h3-spacing)}.t-h4{font-weight:var(--pv-text-h4-weight);font-size:var(--pv-text-h4-size);line-height:var(--pv-text-h4-height);letter-spacing:var(--pv-text-h4-spacing)}.t-h5{font-weight:var(--pv-text-h5-weight);font-size:var(--pv-text-h5-size);line-height:var(--pv-text-h5-height);letter-spacing:var(--pv-text-h5-spacing)}.t-s1{font-weight:var(--pv-text-s1-weight);font-size:var(--pv-text-s1-size);line-height:var(--pv-text-s1-height);letter-spacing:var(--pv-text-s1-spacing)}.t-s2{font-weight:var(--pv-text-s2-weight);font-size:var(--pv-text-s2-size);line-height:var(--pv-text-s2-height);letter-spacing:var(--pv-text-s2-spacing)}.t-b1{font-weight:var(--pv-text-b1-weight);font-size:var(--pv-text-b1-size);line-height:var(--pv-text-b1-height);letter-spacing:var(--pv-text-b1-spacing)}.t-b2{font-weight:var(--pv-text-b2-weight);font-size:var(--pv-text-b2-size);line-height:var(--pv-text-b2-height);letter-spacing:var(--pv-text-b2-spacing)}.t-b3{font-weight:var(--pv-text-b3-weight);font-size:var(--pv-text-b3-size);line-height:var(--pv-text-b3-height);letter-spacing:var(--pv-text-b3-spacing)}.t-btn1{font-weight:var(--pv-text-btn1-weight);font-size:var(--pv-text-btn1-size);line-height:var(--pv-text-btn1-height);letter-spacing:var(--pv-text-btn1-spacing)}.t-btn2{font-weight:var(--pv-text-btn2-weight);font-size:var(--pv-text-btn2-size);line-height:var(--pv-text-btn2-height);letter-spacing:var(--pv-text-btn2-spacing)}.t-c1{font-weight:var(--pv-text-c1-weight);font-size:var(--pv-text-c1-size);line-height:var(--pv-text-c1-height);letter-spacing:var(--pv-text-c1-spacing)}.t-c2{font-weight:var(--pv-text-c2-weight);font-size:var(--pv-text-c2-size);line-height:var(--pv-text-c2-height);letter-spacing:var(--pv-text-c2-spacing)}.c-primary-tint-5{--pv-color-base:var(--pv-color-primary-tint-5)}.c-primary-tint-4{--pv-color-base:var(--pv-color-primary-tint-4)}.c-primary-tint-3{--pv-color-base:var(--pv-color-primary-tint-3)}.c-primary-tint-2{--pv-color-base:var(--pv-color-primary-tint-2)}.c-primary-tint-1{--pv-color-base:var(--pv-color-primary-tint-1)}.c-primary{--pv-color-base:var(--pv-color-primary)}.c-primary-shade-1{--pv-color-base:var(--pv-color-primary-shade-1)}.c-primary-shade-2{--pv-color-base:var(--pv-color-primary-shade-2)}.c-primary-shade-3{--pv-color-base:var(--pv-color-primary-shade-3)}.c-primary-shade-4{--pv-color-base:var(--pv-color-primary-shade-4)}.c-primary-shade-5{--pv-color-base:var(--pv-color-primary-shade-5)}.c-primary-contrast{--pv-color-base:var(--pv-color-primary-contrast)}.c-secondary-tint-5{--pv-color-base:var(--pv-color-secondary-tint-5)}.c-secondary-tint-4{--pv-color-base:var(--pv-color-secondary-tint-4)}.c-secondary-tint-3{--pv-color-base:var(--pv-color-secondary-tint-3)}.c-secondary-tint-2{--pv-color-base:var(--pv-color-secondary-tint-2)}.c-secondary-tint-1{--pv-color-base:var(--pv-color-secondary-tint-1)}.c-secondary{--pv-color-base:var(--pv-color-secondary)}.c-secondary-shade-1{--pv-color-base:var(--pv-color-secondary-shade-1)}.c-secondary-shade-2{--pv-color-base:var(--pv-color-secondary-shade-2)}.c-secondary-shade-3{--pv-color-base:var(--pv-color-secondary-shade-3)}.c-secondary-shade-4{--pv-color-base:var(--pv-color-secondary-shade-4)}.c-secondary-shade-5{--pv-color-base:var(--pv-color-secondary-shade-5)}.c-secondary-contrast{--pv-color-base:var(--pv-color-secondary-contrast)}.c-wrong-tint-5{--pv-color-base:var(--pv-color-wrong-tint-5)}.c-wrong-tint-4{--pv-color-base:var(--pv-color-wrong-tint-4)}.c-wrong-tint-3{--pv-color-base:var(--pv-color-wrong-tint-3)}.c-wrong-tint-2{--pv-color-base:var(--pv-color-wrong-tint-2)}.c-wrong-tint-1{--pv-color-base:var(--pv-color-wrong-tint-1)}.c-wrong{--pv-color-base:var(--pv-color-wrong)}.c-wrong-shade-1{--pv-color-base:var(--pv-color-wrong-shade-1)}.c-wrong-shade-2{--pv-color-base:var(--pv-color-wrong-shade-2)}.c-wrong-shade-3{--pv-color-base:var(--pv-color-wrong-shade-3)}.c-wrong-shade-4{--pv-color-base:var(--pv-color-wrong-shade-4)}.c-wrong-shade-5{--pv-color-base:var(--pv-color-wrong-shade-5)}.c-wrong-contrast{--pv-color-base:var(--pv-color-wrong-contrast)}.c-attention-tint-5{--pv-color-base:var(--pv-color-attention-tint-5)}.c-attention-tint-4{--pv-color-base:var(--pv-color-attention-tint-4)}.c-attention-tint-3{--pv-color-base:var(--pv-color-attention-tint-3)}.c-attention-tint-2{--pv-color-base:var(--pv-color-attention-tint-2)}.c-attention-tint-1{--pv-color-base:var(--pv-color-attention-tint-1)}.c-attention{--pv-color-base:var(--pv-color-attention)}.c-attention-shade-1{--pv-color-base:var(--pv-color-attention-shade-1)}.c-attention-shade-2{--pv-color-base:var(--pv-color-attention-shade-2)}.c-attention-shade-3{--pv-color-base:var(--pv-color-attention-shade-3)}.c-attention-shade-4{--pv-color-base:var(--pv-color-attention-shade-4)}.c-attention-shade-5{--pv-color-base:var(--pv-color-attention-shade-5)}.c-success-tint-5{--pv-color-base:var(--pv-color-success-tint-5)}.c-success-tint-4{--pv-color-base:var(--pv-color-success-tint-4)}.c-success-tint-3{--pv-color-base:var(--pv-color-success-tint-3)}.c-success-tint-2{--pv-color-base:var(--pv-color-success-tint-2)}.c-success-tint-1{--pv-color-base:var(--pv-color-success-tint-1)}.c-success{--pv-color-base:var(--pv-color-success)}.c-success-shade-1{--pv-color-base:var(--pv-color-success-shade-1)}.c-success-shade-2{--pv-color-base:var(--pv-color-success-shade-2)}.c-success-shade-3{--pv-color-base:var(--pv-color-success-shade-3)}.c-success-shade-4{--pv-color-base:var(--pv-color-success-shade-4)}.c-success-shade-5{--pv-color-base:var(--pv-color-success-shade-5)}.c-black{--pv-color-base:var(--pv-color-black)}.c-gray-10{--pv-color-base:var(--pv-color-gray-10)}.c-gray-9{--pv-color-base:var(--pv-color-gray-9)}.c-gray-8{--pv-color-base:var(--pv-color-gray-8)}.c-gray-7{--pv-color-base:var(--pv-color-gray-7)}.c-gray-6{--pv-color-base:var(--pv-color-gray-6)}.c-gray-5{--pv-color-base:var(--pv-color-gray-5)}.c-gray-4{--pv-color-base:var(--pv-color-gray-4)}.c-gray-3{--pv-color-base:var(--pv-color-gray-3)}.c-gray-2{--pv-color-base:var(--pv-color-gray-2)}.c-gray-1{--pv-color-base:var(--pv-color-gray-1)}.c-white{--pv-color-base:var(--pv-color-white)}.c-extra-1{--pv-color-base:var(--pv-color-extra-1)}.c-extra-2{--pv-color-base:var(--pv-color-extra-2)}.typography{color:var(--pv-color-base)}.button{display:-ms-inline-flexbox;display:inline-flex;cursor:pointer;background:transparent;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;text-decoration:none;outline:none;font-family:inherit;border-radius:4px;height:var(--pv-size-base-6);min-width:var(--pv-size-base-6);padding:0 var(--pv-size-base-2);-webkit-transition:background-color 200ms ease 0s;transition:background-color 200ms ease 0s;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:var(--pv-size-base-2);font-size:0}.button.m_no_padding{padding:0}.button:hover{background-color:var(--pv-color-gray-3)}.button:focus{background-color:var(--pv-color-gray-4)}.button:active{background-color:var(--pv-color-gray-5)}:host{display:block;width:100%;position:relative;min-width:280px;min-height:300px;word-wrap:break-word;word-break:break-word}th,td{border:none}table{width:100%;border-spacing:0;border-collapse:collapse}table td{padding:var(--pv-size-base-2) var(--pv-size-base-4);vertical-align:top}table td:first-child{width:220px}table td:last-child{width:calc(100% - 220px)}table td.monospace{max-width:0}table td.divider{padding:var(--pv-size-base-2) 0}table td.divider span{height:1px;display:block;background-color:var(--pv-color-gray-4)}table .title td{padding-top:var(--pv-size-base-6);padding-bottom:var(--pv-size-base-2)}table table{border-left:1px solid var(--pv-color-gray-5)}.status_wrapper{min-height:inherit;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}:host([data-mobile-screen-view=true]) table,:host([data-mobile-screen-view=true]) tr,:host([data-mobile-screen-view=true]) td{display:block}:host([data-mobile-screen-view=true]) table tr{padding:var(--pv-size-base-2) 0}:host([data-mobile-screen-view=true]) table tr.title{padding-top:var(--pv-size-base-6)}:host([data-mobile-screen-view=true]) table tr.title td{padding:0 var(--pv-size-base-4)}:host([data-mobile-screen-view=true]) table td{padding:0 var(--pv-size-base-4);width:100% !important;max-width:100% !important}:host([data-mobile-screen-view=true]) table td.divider{padding:0}";var PeculiarCertificateViewerStyle0=certificateViewerCss;var CertificateViewer=function(){function t(t){var e=this;registerInstance(this,t);this.getAuthKeyIdParentLink=function(t){var r;return(r=e.authKeyIdParentLink)===null||r===void 0?void 0:r.replace("{{authKeyId}}",t)};this.getAuthKeyIdSiblingsLink=function(t){var r;return(r=e.authKeyIdSiblingsLink)===null||r===void 0?void 0:r.replace("{{authKeyId}}",t)};this.getSubjectKeyIdChildrenLink=function(t){var r;return(r=e.subjectKeyIdChildrenLink)===null||r===void 0?void 0:r.replace("{{subjectKeyId}}",t)};this.getSubjectKeyIdSiblingsLink=function(t){var r;return(r=e.subjectKeyIdSiblingsLink)===null||r===void 0?void 0:r.replace("{{subjectKeyId}}",t)};this.certificate=undefined;this.download=undefined;this.authKeyIdParentLink=undefined;this.authKeyIdSiblingsLink=undefined;this.subjectKeyIdChildrenLink=undefined;this.subjectKeyIdSiblingsLink=undefined;this.issuerDnLink=undefined;this.mobileMediaQueryString="(max-width: 900px)";this.mobileScreenView=false;this.isDecodeInProcess=true}t.prototype.handleMediaQueryChange=function(t){this.mobileScreenView=t.matches};t.prototype.componentWillLoad=function(){this.decodeCertificate(this.certificate);{this.mobileMediaQuery=window.matchMedia(this.mobileMediaQueryString);this.mobileMediaQuery.addEventListener("change",this.handleMediaQueryChange.bind(this));this.mobileScreenView=this.mobileMediaQuery.matches}};t.prototype.disconnectedCallback=function(){this.mobileMediaQuery.removeEventListener("change",this.handleMediaQueryChange.bind(this))};t.prototype.decodeCertificate=function(t){return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(r){switch(r.label){case 0:this.isDecodeInProcess=true;r.label=1;case 1:r.trys.push([1,4,,5]);if(t instanceof X509Certificate){this.certificateDecoded=t}else if(typeof t==="string"){this.certificateDecoded=new X509Certificate(t)}else{return[2]}this.certificateDecoded.parseExtensions();return[4,this.certificateDecoded.getThumbprint("SHA-1")];case 2:r.sent();return[4,this.certificateDecoded.getThumbprint("SHA-256")];case 3:r.sent();return[3,5];case 4:e=r.sent();this.certificateDecodeError=e;console.error("Error certificate parse:",e);return[3,5];case 5:this.isDecodeInProcess=false;return[2]}}))}))};t.prototype.watchCertificateAndDecode=function(t,e){if(typeof t==="string"&&typeof e==="string"){if(t!==e){this.decodeCertificate(t)}return}if(t instanceof X509Certificate&&e instanceof X509Certificate){if(t.serialNumber!==e.serialNumber){this.decodeCertificate(t)}}};t.prototype.getIssuerDnLink=function(){return this.issuerDnLink};t.prototype.renderErrorState=function(){return h("div",{class:"status_wrapper"},h(Typography,null,"There was an error decoding this certificate."))};t.prototype.renderEmptyState=function(){return h("div",{class:"status_wrapper"},h(Typography,null,"There is no certificate available."))};t.prototype.render=function(){if(this.certificateDecodeError){return this.renderErrorState()}if(!this.certificateDecoded){return this.renderEmptyState()}return h(Host,{"data-mobile-screen-view":String(this.mobileScreenView)},h("table",null,h(BasicInformation,Object.assign({},this.certificateDecoded)),h(SubjectName,{name:this.certificateDecoded.subject}),h(IssuerName,{name:this.certificateDecoded.issuer,issuerDnLink:this.getIssuerDnLink()}),h(PublicKey,{publicKey:this.certificateDecoded.publicKey}),h(Signature,{signature:this.certificateDecoded.signature}),h(Thumbprints,{thumbprints:this.certificateDecoded.thumbprints}),h(Extensions,{extensions:this.certificateDecoded.extensions,getLEILink:getLEILink,getDNSNameLink:getDNSNameLink,getIPAddressLink:getIPAddressLink,getAuthKeyIdParentLink:this.getAuthKeyIdParentLink,getAuthKeyIdSiblingsLink:this.getAuthKeyIdSiblingsLink,getSubjectKeyIdChildrenLink:this.getSubjectKeyIdChildrenLink,getSubjectKeyIdSiblingsLink:this.getSubjectKeyIdSiblingsLink}),this.download&&h(Miscellaneous,{certificate:this.certificateDecoded})))};Object.defineProperty(t,"watchers",{get:function(){return{certificate:["watchCertificateAndDecode"]}},enumerable:false,configurable:true});return t}();CertificateViewer.style=PeculiarCertificateViewerStyle0;export{CertificateViewer as peculiar_certificate_viewer};
4
+ */import{r as registerInstance,h,H as Host}from"./index-ae188432.js";import{X as X509Certificate}from"./x509_certificate-05a23c0e.js";import"./certification_request-a4699dcf.js";import{B as BasicInformation,h as SubjectName,I as IssuerName,P as PublicKey,S as Signature,b as Thumbprints,E as Extensions,d as getLEILink,e as getDNSNameLink,f as getIPAddressLink,M as Miscellaneous}from"./miscellaneous-ba1fd2bd.js";import{T as Typography}from"./button-a2fabf9a.js";import"./link-7e4e9060.js";import"./download-14dc1047.js";var certificateViewerCss="*{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;-webkit-text-size-adjust:none;-webkit-tap-highlight-color:transparent;font-family:var(--pv-font-family, inherit)}.t-h1{font-weight:var(--pv-text-h1-weight);font-size:var(--pv-text-h1-size);line-height:var(--pv-text-h1-height);letter-spacing:var(--pv-text-h1-spacing)}.t-h2{font-weight:var(--pv-text-h2-weight);font-size:var(--pv-text-h2-size);line-height:var(--pv-text-h2-height);letter-spacing:var(--pv-text-h2-spacing)}.t-h3{font-weight:var(--pv-text-h3-weight);font-size:var(--pv-text-h3-size);line-height:var(--pv-text-h3-height);letter-spacing:var(--pv-text-h3-spacing)}.t-h4{font-weight:var(--pv-text-h4-weight);font-size:var(--pv-text-h4-size);line-height:var(--pv-text-h4-height);letter-spacing:var(--pv-text-h4-spacing)}.t-h5{font-weight:var(--pv-text-h5-weight);font-size:var(--pv-text-h5-size);line-height:var(--pv-text-h5-height);letter-spacing:var(--pv-text-h5-spacing)}.t-s1{font-weight:var(--pv-text-s1-weight);font-size:var(--pv-text-s1-size);line-height:var(--pv-text-s1-height);letter-spacing:var(--pv-text-s1-spacing)}.t-s2{font-weight:var(--pv-text-s2-weight);font-size:var(--pv-text-s2-size);line-height:var(--pv-text-s2-height);letter-spacing:var(--pv-text-s2-spacing)}.t-b1{font-weight:var(--pv-text-b1-weight);font-size:var(--pv-text-b1-size);line-height:var(--pv-text-b1-height);letter-spacing:var(--pv-text-b1-spacing)}.t-b2{font-weight:var(--pv-text-b2-weight);font-size:var(--pv-text-b2-size);line-height:var(--pv-text-b2-height);letter-spacing:var(--pv-text-b2-spacing)}.t-b3{font-weight:var(--pv-text-b3-weight);font-size:var(--pv-text-b3-size);line-height:var(--pv-text-b3-height);letter-spacing:var(--pv-text-b3-spacing)}.t-btn1{font-weight:var(--pv-text-btn1-weight);font-size:var(--pv-text-btn1-size);line-height:var(--pv-text-btn1-height);letter-spacing:var(--pv-text-btn1-spacing)}.t-btn2{font-weight:var(--pv-text-btn2-weight);font-size:var(--pv-text-btn2-size);line-height:var(--pv-text-btn2-height);letter-spacing:var(--pv-text-btn2-spacing)}.t-c1{font-weight:var(--pv-text-c1-weight);font-size:var(--pv-text-c1-size);line-height:var(--pv-text-c1-height);letter-spacing:var(--pv-text-c1-spacing)}.t-c2{font-weight:var(--pv-text-c2-weight);font-size:var(--pv-text-c2-size);line-height:var(--pv-text-c2-height);letter-spacing:var(--pv-text-c2-spacing)}.c-primary-tint-5{--pv-color-base:var(--pv-color-primary-tint-5)}.c-primary-tint-4{--pv-color-base:var(--pv-color-primary-tint-4)}.c-primary-tint-3{--pv-color-base:var(--pv-color-primary-tint-3)}.c-primary-tint-2{--pv-color-base:var(--pv-color-primary-tint-2)}.c-primary-tint-1{--pv-color-base:var(--pv-color-primary-tint-1)}.c-primary{--pv-color-base:var(--pv-color-primary)}.c-primary-shade-1{--pv-color-base:var(--pv-color-primary-shade-1)}.c-primary-shade-2{--pv-color-base:var(--pv-color-primary-shade-2)}.c-primary-shade-3{--pv-color-base:var(--pv-color-primary-shade-3)}.c-primary-shade-4{--pv-color-base:var(--pv-color-primary-shade-4)}.c-primary-shade-5{--pv-color-base:var(--pv-color-primary-shade-5)}.c-primary-contrast{--pv-color-base:var(--pv-color-primary-contrast)}.c-secondary-tint-5{--pv-color-base:var(--pv-color-secondary-tint-5)}.c-secondary-tint-4{--pv-color-base:var(--pv-color-secondary-tint-4)}.c-secondary-tint-3{--pv-color-base:var(--pv-color-secondary-tint-3)}.c-secondary-tint-2{--pv-color-base:var(--pv-color-secondary-tint-2)}.c-secondary-tint-1{--pv-color-base:var(--pv-color-secondary-tint-1)}.c-secondary{--pv-color-base:var(--pv-color-secondary)}.c-secondary-shade-1{--pv-color-base:var(--pv-color-secondary-shade-1)}.c-secondary-shade-2{--pv-color-base:var(--pv-color-secondary-shade-2)}.c-secondary-shade-3{--pv-color-base:var(--pv-color-secondary-shade-3)}.c-secondary-shade-4{--pv-color-base:var(--pv-color-secondary-shade-4)}.c-secondary-shade-5{--pv-color-base:var(--pv-color-secondary-shade-5)}.c-secondary-contrast{--pv-color-base:var(--pv-color-secondary-contrast)}.c-wrong-tint-5{--pv-color-base:var(--pv-color-wrong-tint-5)}.c-wrong-tint-4{--pv-color-base:var(--pv-color-wrong-tint-4)}.c-wrong-tint-3{--pv-color-base:var(--pv-color-wrong-tint-3)}.c-wrong-tint-2{--pv-color-base:var(--pv-color-wrong-tint-2)}.c-wrong-tint-1{--pv-color-base:var(--pv-color-wrong-tint-1)}.c-wrong{--pv-color-base:var(--pv-color-wrong)}.c-wrong-shade-1{--pv-color-base:var(--pv-color-wrong-shade-1)}.c-wrong-shade-2{--pv-color-base:var(--pv-color-wrong-shade-2)}.c-wrong-shade-3{--pv-color-base:var(--pv-color-wrong-shade-3)}.c-wrong-shade-4{--pv-color-base:var(--pv-color-wrong-shade-4)}.c-wrong-shade-5{--pv-color-base:var(--pv-color-wrong-shade-5)}.c-wrong-contrast{--pv-color-base:var(--pv-color-wrong-contrast)}.c-attention-tint-5{--pv-color-base:var(--pv-color-attention-tint-5)}.c-attention-tint-4{--pv-color-base:var(--pv-color-attention-tint-4)}.c-attention-tint-3{--pv-color-base:var(--pv-color-attention-tint-3)}.c-attention-tint-2{--pv-color-base:var(--pv-color-attention-tint-2)}.c-attention-tint-1{--pv-color-base:var(--pv-color-attention-tint-1)}.c-attention{--pv-color-base:var(--pv-color-attention)}.c-attention-shade-1{--pv-color-base:var(--pv-color-attention-shade-1)}.c-attention-shade-2{--pv-color-base:var(--pv-color-attention-shade-2)}.c-attention-shade-3{--pv-color-base:var(--pv-color-attention-shade-3)}.c-attention-shade-4{--pv-color-base:var(--pv-color-attention-shade-4)}.c-attention-shade-5{--pv-color-base:var(--pv-color-attention-shade-5)}.c-success-tint-5{--pv-color-base:var(--pv-color-success-tint-5)}.c-success-tint-4{--pv-color-base:var(--pv-color-success-tint-4)}.c-success-tint-3{--pv-color-base:var(--pv-color-success-tint-3)}.c-success-tint-2{--pv-color-base:var(--pv-color-success-tint-2)}.c-success-tint-1{--pv-color-base:var(--pv-color-success-tint-1)}.c-success{--pv-color-base:var(--pv-color-success)}.c-success-shade-1{--pv-color-base:var(--pv-color-success-shade-1)}.c-success-shade-2{--pv-color-base:var(--pv-color-success-shade-2)}.c-success-shade-3{--pv-color-base:var(--pv-color-success-shade-3)}.c-success-shade-4{--pv-color-base:var(--pv-color-success-shade-4)}.c-success-shade-5{--pv-color-base:var(--pv-color-success-shade-5)}.c-black{--pv-color-base:var(--pv-color-black)}.c-gray-10{--pv-color-base:var(--pv-color-gray-10)}.c-gray-9{--pv-color-base:var(--pv-color-gray-9)}.c-gray-8{--pv-color-base:var(--pv-color-gray-8)}.c-gray-7{--pv-color-base:var(--pv-color-gray-7)}.c-gray-6{--pv-color-base:var(--pv-color-gray-6)}.c-gray-5{--pv-color-base:var(--pv-color-gray-5)}.c-gray-4{--pv-color-base:var(--pv-color-gray-4)}.c-gray-3{--pv-color-base:var(--pv-color-gray-3)}.c-gray-2{--pv-color-base:var(--pv-color-gray-2)}.c-gray-1{--pv-color-base:var(--pv-color-gray-1)}.c-white{--pv-color-base:var(--pv-color-white)}.c-extra-1{--pv-color-base:var(--pv-color-extra-1)}.c-extra-2{--pv-color-base:var(--pv-color-extra-2)}.typography{color:var(--pv-color-base)}.button{display:-ms-inline-flexbox;display:inline-flex;cursor:pointer;background:transparent;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;text-decoration:none;outline:none;font-family:inherit;border-radius:4px;height:var(--pv-size-base-6);min-width:var(--pv-size-base-6);padding:0 var(--pv-size-base-2);-webkit-transition:background-color 200ms ease 0s;transition:background-color 200ms ease 0s;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:var(--pv-size-base-2);font-size:0}.button.m_no_padding{padding:0}.button:hover{background-color:var(--pv-color-gray-3)}.button:focus{background-color:var(--pv-color-gray-4)}.button:active{background-color:var(--pv-color-gray-5)}:host{display:block;width:100%;position:relative;min-width:280px;min-height:300px;word-wrap:break-word;word-break:break-word}th,td{border:none}table{width:100%;border-spacing:0;border-collapse:collapse}table td{padding:var(--pv-size-base-2) var(--pv-size-base-4);vertical-align:top}table td:first-child{width:220px}table td:last-child{width:calc(100% - 220px)}table td.monospace{max-width:0}table td.divider{padding:var(--pv-size-base-2) 0}table td.divider span{height:1px;display:block;background-color:var(--pv-color-gray-4)}table .title td{padding-top:var(--pv-size-base-6);padding-bottom:var(--pv-size-base-2)}table table{border-left:1px solid var(--pv-color-gray-5)}.status_wrapper{min-height:inherit;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}:host([data-mobile-screen-view=true]) table,:host([data-mobile-screen-view=true]) tr,:host([data-mobile-screen-view=true]) td{display:block}:host([data-mobile-screen-view=true]) table tr{padding:var(--pv-size-base-2) 0}:host([data-mobile-screen-view=true]) table tr.title{padding-top:var(--pv-size-base-6)}:host([data-mobile-screen-view=true]) table tr.title td{padding:0 var(--pv-size-base-4)}:host([data-mobile-screen-view=true]) table td{padding:0 var(--pv-size-base-4);width:100% !important;max-width:100% !important}:host([data-mobile-screen-view=true]) table td.divider{padding:0}";var PeculiarCertificateViewerStyle0=certificateViewerCss;var CertificateViewer=function(){function t(t){var e=this;registerInstance(this,t);this.getAuthKeyIdParentLink=function(t){var r;return(r=e.authKeyIdParentLink)===null||r===void 0?void 0:r.replace("{{authKeyId}}",t)};this.getAuthKeyIdSiblingsLink=function(t){var r;return(r=e.authKeyIdSiblingsLink)===null||r===void 0?void 0:r.replace("{{authKeyId}}",t)};this.getSubjectKeyIdChildrenLink=function(t){var r;return(r=e.subjectKeyIdChildrenLink)===null||r===void 0?void 0:r.replace("{{subjectKeyId}}",t)};this.getSubjectKeyIdSiblingsLink=function(t){var r;return(r=e.subjectKeyIdSiblingsLink)===null||r===void 0?void 0:r.replace("{{subjectKeyId}}",t)};this.certificate=undefined;this.download=undefined;this.authKeyIdParentLink=undefined;this.authKeyIdSiblingsLink=undefined;this.subjectKeyIdChildrenLink=undefined;this.subjectKeyIdSiblingsLink=undefined;this.issuerDnLink=undefined;this.mobileMediaQueryString="(max-width: 900px)";this.mobileScreenView=false;this.isDecodeInProcess=true}t.prototype.handleMediaQueryChange=function(t){this.mobileScreenView=t.matches};t.prototype.componentWillLoad=function(){this.decodeCertificate(this.certificate);{this.mobileMediaQuery=window.matchMedia(this.mobileMediaQueryString);this.mobileMediaQuery.addEventListener("change",this.handleMediaQueryChange.bind(this));this.mobileScreenView=this.mobileMediaQuery.matches}};t.prototype.disconnectedCallback=function(){this.mobileMediaQuery.removeEventListener("change",this.handleMediaQueryChange.bind(this))};t.prototype.decodeCertificate=function(t){return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(r){switch(r.label){case 0:this.isDecodeInProcess=true;r.label=1;case 1:r.trys.push([1,4,,5]);if(t instanceof X509Certificate){this.certificateDecoded=t}else if(typeof t==="string"){this.certificateDecoded=new X509Certificate(t)}else{return[2]}this.certificateDecoded.parseExtensions();return[4,this.certificateDecoded.getThumbprint("SHA-1")];case 2:r.sent();return[4,this.certificateDecoded.getThumbprint("SHA-256")];case 3:r.sent();return[3,5];case 4:e=r.sent();this.certificateDecodeError=e;console.error("Error certificate parse:",e);return[3,5];case 5:this.isDecodeInProcess=false;return[2]}}))}))};t.prototype.watchCertificateAndDecode=function(t,e){if(typeof t==="string"&&typeof e==="string"){if(t!==e){this.decodeCertificate(t)}return}if(t instanceof X509Certificate&&e instanceof X509Certificate){if(t.serialNumber!==e.serialNumber){this.decodeCertificate(t)}}};t.prototype.getIssuerDnLink=function(){return this.issuerDnLink};t.prototype.renderErrorState=function(){return h("div",{class:"status_wrapper"},h(Typography,null,"There was an error decoding this certificate."))};t.prototype.renderEmptyState=function(){return h("div",{class:"status_wrapper"},h(Typography,null,"There is no certificate available."))};t.prototype.render=function(){if(this.certificateDecodeError){return this.renderErrorState()}if(!this.certificateDecoded){return this.renderEmptyState()}return h(Host,{"data-mobile-screen-view":String(this.mobileScreenView)},h("table",null,h(BasicInformation,Object.assign({},this.certificateDecoded)),h(SubjectName,{name:this.certificateDecoded.subject}),h(IssuerName,{name:this.certificateDecoded.issuer,issuerDnLink:this.getIssuerDnLink()}),h(PublicKey,{publicKey:this.certificateDecoded.publicKey}),h(Signature,{signature:this.certificateDecoded.signature}),h(Thumbprints,{thumbprints:this.certificateDecoded.thumbprints}),h(Extensions,{extensions:this.certificateDecoded.extensions,getLEILink:getLEILink,getDNSNameLink:getDNSNameLink,getIPAddressLink:getIPAddressLink,getAuthKeyIdParentLink:this.getAuthKeyIdParentLink,getAuthKeyIdSiblingsLink:this.getAuthKeyIdSiblingsLink,getSubjectKeyIdChildrenLink:this.getSubjectKeyIdChildrenLink,getSubjectKeyIdSiblingsLink:this.getSubjectKeyIdSiblingsLink}),this.download&&h(Miscellaneous,{certificate:this.certificateDecoded})))};Object.defineProperty(t,"watchers",{get:function(){return{certificate:["watchCertificateAndDecode"]}},enumerable:false,configurable:true});return t}();CertificateViewer.style=PeculiarCertificateViewerStyle0;export{CertificateViewer as peculiar_certificate_viewer};
5
5
  //# sourceMappingURL=peculiar-certificate-viewer.entry.js.map
@@ -1,7 +1,7 @@
1
1
  var __awaiter=this&&this.__awaiter||function(t,e,r,a){function o(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,i){function n(t){try{c(a.next(t))}catch(t){i(t)}}function s(t){try{c(a["throw"](t))}catch(t){i(t)}}function c(t){t.done?r(t.value):o(t.value).then(n,s)}c((a=a.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},a,o,i,n;return n={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(n[Symbol.iterator]=function(){return this}),n;function s(t){return function(e){return c([t,e])}}function c(s){if(a)throw new TypeError("Generator is already executing.");while(n&&(n=0,s[0]&&(r=0)),r)try{if(a=1,o&&(i=s[0]&2?o["return"]:s[0]?o["throw"]||((i=o["return"])&&i.call(o),0):o.next)&&!(i=i.call(o,s[1])).done)return i;if(o=0,i)s=[s[0]&2,i.value];switch(s[0]){case 0:case 1:i=s;break;case 4:r.label++;return{value:s[1],done:false};case 5:r.label++;o=s[1];s=[0];continue;case 7:s=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){r=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]<i[3])){r.label=s[1];break}if(s[0]===6&&r.label<i[1]){r.label=i[1];i=s;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(s);break}if(i[2])r.ops.pop();r.trys.pop();continue}s=e.call(t,r)}catch(t){s=[6,t];o=0}finally{a=i=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var a=0,o=e.length,i;a<o;a++){if(i||!(a in e)){if(!i)i=Array.prototype.slice.call(e,0,a);i[a]=e[a]}}return t.concat(i||Array.prototype.slice.call(e))};
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{h,r as registerInstance,c as createEvent,H as Host}from"./index-ae188432.js";import{X as X509Certificate}from"./x509_certificate-47b4c5ee.js";import{a2 as l10n,a3 as dateShort,a4 as OIDs}from"./certification_request-08b4deb8.js";import{T as Typography,B as Button}from"./button-a2fabf9a.js";import{D as DetailsIcon,L as LinkIcon,C as CrossIcon}from"./cross-1377606f.js";import{D as DownloadIcon}from"./download-14dc1047.js";import{a as ArrowTopIcon,A as ArrowBottomIcon}from"./arrow_top-aee1ee02.js";
4
+ */import{h,r as registerInstance,c as createEvent,H as Host}from"./index-ae188432.js";import{X as X509Certificate}from"./x509_certificate-05a23c0e.js";import{Z as l10n,_ as dateShort,$ as OIDs}from"./certification_request-a4699dcf.js";import{T as Typography,B as Button}from"./button-a2fabf9a.js";import{D as DetailsIcon,L as LinkIcon,C as CrossIcon}from"./cross-1377606f.js";import{D as DownloadIcon}from"./download-14dc1047.js";import{a as ArrowTopIcon,A as ArrowBottomIcon}from"./arrow_top-aee1ee02.js";
5
5
  /**
6
6
  * @license
7
7
  * Copyright (c) Peculiar Ventures, LLC.
@@ -1,7 +1,7 @@
1
1
  var __extends=this&&this.__extends||function(){var e=function(t,n){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n))e[n]=t[n]};return e(t,n)};return function(t,n){if(typeof n!=="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n);function a(){this.constructor=t}t.prototype=n===null?Object.create(n):(a.prototype=n.prototype,new a)}}();var __awaiter=this&&this.__awaiter||function(e,t,n,a){function i(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function s(e){try{u(a.next(e))}catch(e){r(e)}}function o(e){try{u(a["throw"](e))}catch(e){r(e)}}function u(e){e.done?n(e.value):i(e.value).then(s,o)}u((a=a.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},a,i,r,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(e){return function(t){return u([e,t])}}function u(o){if(a)throw new TypeError("Generator is already executing.");while(s&&(s=0,o[0]&&(n=0)),n)try{if(a=1,i&&(r=o[0]&2?i["return"]:o[0]?i["throw"]||((r=i["return"])&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;if(i=0,r)o=[o[0]&2,r.value];switch(o[0]){case 0:case 1:r=o;break;case 4:n.label++;return{value:o[1],done:false};case 5:n.label++;i=o[1];o=[0];continue;case 7:o=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(o[0]===6||o[0]===2)){n=0;continue}if(o[0]===3&&(!r||o[1]>r[0]&&o[1]<r[3])){n.label=o[1];break}if(o[0]===6&&n.label<r[1]){n.label=r[1];r=o;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(o);break}if(r[2])n.ops.pop();n.trys.pop();continue}o=t.call(e,n)}catch(e){o=[6,e];i=0}finally{a=r=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};var _a;
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{A as AsnData,a as Attribute$1,b as AsnParser,C as Convert_1,i as id_DomainNameBeneficiary,c as DomainNameBeneficiary,e as id_DomainNameLegalRepresentative,f as DomainNameLegalRepresentative,g as id_DomainNameOwner,h as DomainNameOwner,j as id_DomainNameTechnicalOperator,k as DomainNameTechnicalOperator,l as id_TypeRelationship,T as TypeRelationship,m as id_ActivityDescription,n as ActivityDescription,o as id_WebGDPR,W as WebGDPR,p as id_InsuranceValue,I as InsuranceValue,q as id_ValuationRanking,V as ValuationRanking,r as id_pkcs9_at_challengePassword,s as ChallengePassword,t as id_pkcs9_at_unstructuredName,U as UnstructuredName,u as id_pkcs9_at_extensionRequest,E as ExtensionRequest,v as certificateRawToBuffer,w as CertificationRequest,N as Name,x as id_ecPublicKey,y as AsnConvert,z as ECParameters,B as id_rsaEncryption,R as RSAPublicKey,F as getCertificateThumbprint,G as Extension,H as base64Format,J as hexFormat,D as Download}from"./certification_request-08b4deb8.js";
4
+ */import{A as AsnData,a as Attribute$1,b as AsnParser,C as Convert_1,i as id_DomainNameBeneficiary,c as DomainNameBeneficiary,e as id_DomainNameLegalRepresentative,f as DomainNameLegalRepresentative,g as id_DomainNameOwner,h as DomainNameOwner,j as id_DomainNameTechnicalOperator,k as DomainNameTechnicalOperator,l as id_TypeRelationship,T as TypeRelationship,m as id_ActivityDescription,n as ActivityDescription,o as id_WebGDPR,W as WebGDPR,p as id_InsuranceValue,I as InsuranceValue,q as id_ValuationRanking,V as ValuationRanking,r as id_pkcs9_at_challengePassword,s as ChallengePassword,t as id_pkcs9_at_unstructuredName,U as UnstructuredName,u as id_pkcs9_at_extensionRequest,E as ExtensionRequest,v as certificateRawToBuffer,w as CertificationRequest,N as Name,x as id_ecPublicKey,y as AsnConvert,z as ECParameters,B as id_rsaEncryption,R as RSAPublicKey,F as getCertificateThumbprint,G as Extension,H as base64Format,J as hexFormat,D as Download}from"./certification_request-a4699dcf.js";
5
5
  /**
6
6
  * @license
7
7
  * Copyright (c) Peculiar Ventures, LLC.
@@ -15,5 +15,5 @@ var __extends=this&&this.__extends||function(){var e=function(t,n){e=Object.setP
15
15
  *
16
16
  * This source code is licensed under the MIT license found in the
17
17
  * LICENSE file in the root directory of this source tree.
18
- */var Pkcs10CertificateRequest=function(e){__extends(t,e);function t(t){var n=e.call(this,certificateRawToBuffer(t),CertificationRequest)||this;n.thumbprints={};n.type="PKCS#10 Certificate Request";n.tag="CERTIFICATE REQUEST";var a=n.asn.certificationRequestInfo;n.subject=new Name(a.subject).toJSON();n.version=a.version;return n}Object.defineProperty(t.prototype,"publicKey",{get:function(){var e=this.asn.certificationRequestInfo.subjectPKInfo,t=e.subjectPublicKey,n=e.algorithm;var a;if(n.algorithm===id_ecPublicKey&&n.parameters){a=AsnConvert.parse(n.parameters,ECParameters)}if(n.algorithm===id_rsaEncryption){a=AsnConvert.parse(t,RSAPublicKey)}var i=AsnConvert.serialize(this.asn.certificationRequestInfo.subjectPKInfo);return{params:a,value:i,algorithm:n.algorithm}},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"signature",{get:function(){var e=this.asn,t=e.signature,n=e.signatureAlgorithm;return{value:t,algorithm:n.algorithm}},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"commonName",{get:function(){if(!this.subject){return""}for(var e=0;e<this.subject.length;e+=1){var t=this.subject[e];if(t.shortName==="CN"||t.shortName==="E"||t.shortName==="O"){return t.value}}return""},enumerable:false,configurable:true});t.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(e){var t,n;if(e===void 0){e="SHA-1"}return __generator(this,(function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,getCertificateThumbprint(e,this.raw)];case 1:t=a.sent();if(t){this.thumbprints[e]=Convert_1.ToHex(t)}return[3,3];case 2:n=a.sent();console.error("Error thumbprint get:",n);return[3,3];case 3:return[2]}}))}))};t.prototype.parseAttributes=function(){var e=this.asn.certificationRequestInfo;if(e.attributes){this.attributes=e.attributes.map((function(e){return new Attribute(AsnConvert.serialize(e))}));var t=this.attributes.find((function(e){return e.asn.type===id_pkcs9_at_extensionRequest}));if(t){this.extensions=t.value.map((function(e){return new Extension(AsnConvert.serialize(e))}))}}};t.prototype.toString=function(e){if(e===void 0){e="pem"}switch(e){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};t.prototype.downloadAsPEM=function(e){Download.csr.asPEM(this.toString("pem"),e||this.commonName)};t.prototype.downloadAsDER=function(e){Download.csr.asDER(this.toString("hex"),e||this.commonName)};return t}(AsnData);export{Attribute as A,Pkcs10CertificateRequest as P};
19
- //# sourceMappingURL=pkcs10_certificate_request-3763c2af.js.map
18
+ */var Pkcs10CertificateRequest=function(e){__extends(t,e);function t(t){var n=e.call(this,certificateRawToBuffer(t),CertificationRequest)||this;n.thumbprints={};n.type="PKCS#10 Certificate Request";n.tag="CERTIFICATE REQUEST";var a=n.asn.certificationRequestInfo;n.subject=new Name(a.subject).toJSON();n.version=a.version;return n}Object.defineProperty(t.prototype,"publicKey",{get:function(){var e=this.asn.certificationRequestInfo.subjectPKInfo,t=e.subjectPublicKey,n=e.algorithm;var a;if(n.algorithm===id_ecPublicKey&&n.parameters){a=AsnConvert.parse(n.parameters,ECParameters)}if(n.algorithm===id_rsaEncryption){a=AsnConvert.parse(t,RSAPublicKey)}var i=AsnConvert.serialize(this.asn.certificationRequestInfo.subjectPKInfo);return{params:a,value:i,algorithm:n.algorithm}},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"signature",{get:function(){var e=this.asn,t=e.signature,n=e.signatureAlgorithm;return{value:t,algorithm:n.algorithm}},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"commonName",{get:function(){if(!this.subject){return""}for(var e=0;e<this.subject.length;e+=1){var t=this.subject[e];if(t.shortName==="CN"||t.shortName==="E"||t.shortName==="O"){return t.value}}return""},enumerable:false,configurable:true});t.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(e){var t,n;if(e===void 0){e="SHA-1"}return __generator(this,(function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,getCertificateThumbprint(e,this.raw)];case 1:t=a.sent();if(t){this.thumbprints[e]=Convert_1.ToHex(t)}return[3,3];case 2:n=a.sent();console.error("Error thumbprint get:",n);return[3,3];case 3:return[2]}}))}))};t.prototype.parseAttributes=function(){var e=this.asn.certificationRequestInfo;if(e.attributes){this.attributes=e.attributes.map((function(e){return new Attribute(AsnConvert.serialize(e))}));var t=this.attributes.find((function(e){return e.asn.type===id_pkcs9_at_extensionRequest}));if(t){this.extensions=t.value.map((function(e){return new Extension(AsnConvert.serialize(e))}))}}};t.prototype.toString=function(e){if(e===void 0){e="pem"}switch(e){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};t.prototype.downloadAsPEM=function(e){Download.csr.asPEM(this.toString("pem"),e||this.commonName)};t.prototype.downloadAsDER=function(e){Download.csr.asDER(this.raw,e||this.commonName)};return t}(AsnData);export{Attribute as A,Pkcs10CertificateRequest as P};
19
+ //# sourceMappingURL=pkcs10_certificate_request-785a4794.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["attributesParsers","_a","id_DomainNameBeneficiary","DomainNameBeneficiary","id_DomainNameLegalRepresentative","DomainNameLegalRepresentative","id_DomainNameOwner","DomainNameOwner","id_DomainNameTechnicalOperator","DomainNameTechnicalOperator","id_TypeRelationship","TypeRelationship","id_ActivityDescription","ActivityDescription","id_WebGDPR","WebGDPR","id_InsuranceValue","InsuranceValue","id_ValuationRanking","ValuationRanking","id_pkcs9_at_challengePassword","ChallengePassword","id_pkcs9_at_unstructuredName","UnstructuredName","id_pkcs9_at_extensionRequest","ExtensionRequest","__extends","Attribute","_super","raw","_this","call","this","AsnAttribute","asnExtnValue","getAsnExtnValue","target","asn","type","value","AsnParser","parse","console","warn","concat","Convert","ToHex","error","message","prototype","values","AsnData","Pkcs10CertificateRequest","certificateRawToBuffer","CertificationRequest","thumbprints","tag","certificationRequestInfo","subject","Name","toJSON","version","Object","defineProperty","subjectPKInfo","subjectPublicKey","algorithm","params","id_ecPublicKey","parameters","AsnConvert","ECParameters","id_rsaEncryption","RSAPublicKey","spki","serialize","signature","signatureAlgorithm","i","length","name","shortName","getThumbprint","getCertificateThumbprint","thumbprint","sent","error_1","parseAttributes","attributes","map","e","extensionRequestAttribute","find","attribute","extensions","Extension","toString","format","hexFormat","base64Format","ToBase64","downloadAsPEM","Download","csr","asPEM","commonName","downloadAsDER","asDER"],"sources":["src/crypto/attribute.ts","src/crypto/pkcs10_certificate_request.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Convert } from 'pvtsutils';\nimport { AsnParser } from '@peculiar/asn1-schema';\nimport { Attribute as AsnAttribute } from '@peculiar/asn1-x509';\nimport {\n id_DomainNameBeneficiary,\n DomainNameBeneficiary,\n\n id_DomainNameLegalRepresentative,\n DomainNameLegalRepresentative,\n\n id_DomainNameOwner,\n DomainNameOwner,\n\n id_DomainNameTechnicalOperator,\n DomainNameTechnicalOperator,\n\n id_TypeRelationship,\n TypeRelationship,\n\n id_ActivityDescription,\n ActivityDescription,\n\n id_WebGDPR,\n WebGDPR,\n\n id_InsuranceValue,\n InsuranceValue,\n\n id_ValuationRanking,\n ValuationRanking,\n} from '@peculiar/asn1-ntqwac';\nimport {\n id_pkcs9_at_extensionRequest,\n ExtensionRequest,\n\n id_pkcs9_at_challengePassword,\n ChallengePassword,\n\n id_pkcs9_at_unstructuredName,\n UnstructuredName,\n} from '@peculiar/asn1-pkcs9';\n\nimport { AsnData } from './asn_data';\n\nconst attributesParsers = {\n [id_DomainNameBeneficiary]: DomainNameBeneficiary,\n [id_DomainNameLegalRepresentative]: DomainNameLegalRepresentative,\n [id_DomainNameOwner]: DomainNameOwner,\n [id_DomainNameTechnicalOperator]: DomainNameTechnicalOperator,\n [id_TypeRelationship]: TypeRelationship,\n [id_ActivityDescription]: ActivityDescription,\n [id_WebGDPR]: WebGDPR,\n [id_InsuranceValue]: InsuranceValue,\n [id_ValuationRanking]: ValuationRanking,\n [id_pkcs9_at_challengePassword]: ChallengePassword,\n [id_pkcs9_at_unstructuredName]: UnstructuredName,\n [id_pkcs9_at_extensionRequest]: ExtensionRequest,\n};\n\ntype TAttributeKeys = keyof typeof attributesParsers;\nexport type TAttributeValue = InstanceType<typeof attributesParsers[TAttributeKeys]> | string;\n\nexport class Attribute<T extends TAttributeValue> extends AsnData<AsnAttribute> {\n public readonly value: T;\n\n private getAsnExtnValue() {\n return this.asn.values[0];\n }\n\n constructor(raw: BufferSource) {\n super(raw, AsnAttribute);\n\n const asnExtnValue = this.getAsnExtnValue();\n\n try {\n const target = attributesParsers[this.asn.type];\n\n if (target) {\n this.value = AsnParser.parse<T>(asnExtnValue, target);\n } else {\n console.warn(`Didn't detect parser for \"${this.asn.type}\" attribute.`);\n\n this.value = Convert.ToHex(asnExtnValue) as T;\n }\n } catch (error) {\n console.error(`Error parse \"${this.asn.type}\" attribute:`, error.message);\n\n this.value = Convert.ToHex(asnExtnValue) as T;\n }\n }\n}\n","/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { AsnConvert } from '@peculiar/asn1-schema';\nimport { ECParameters, id_ecPublicKey } from '@peculiar/asn1-ecc';\nimport { id_rsaEncryption, RSAPublicKey } from '@peculiar/asn1-rsa';\nimport { CertificationRequest } from '@peculiar/asn1-csr';\nimport {\n id_pkcs9_at_extensionRequest,\n ExtensionRequest,\n} from '@peculiar/asn1-pkcs9';\nimport { Convert } from 'pvtsutils';\n\nimport { Download } from '../utils';\n\nimport { AsnData } from './asn_data';\nimport { Name, INameJSON } from './name';\nimport { Attribute, TAttributeValue } from './attribute';\nimport { Extension, TExtensionValue } from './extension';\nimport {\n certificateRawToBuffer,\n hexFormat,\n base64Format,\n getCertificateThumbprint,\n} from './utils';\n\ninterface ISignature {\n algorithm: string;\n value: BufferSource;\n}\n\ninterface IPublicKey {\n algorithm: string;\n value: BufferSource;\n params?: ECParameters | RSAPublicKey;\n}\n\nexport class Pkcs10CertificateRequest extends AsnData<CertificationRequest> {\n public readonly subject: INameJSON[];\n\n public readonly version: number;\n\n public attributes: Attribute<TAttributeValue>[];\n\n public extensions: Extension<TExtensionValue>[];\n\n public thumbprints: Record<string, string> = {};\n\n public readonly type = 'PKCS#10 Certificate Request';\n\n public readonly tag = 'CERTIFICATE REQUEST';\n\n constructor(raw: string) {\n super(certificateRawToBuffer(raw), CertificationRequest);\n\n const { certificationRequestInfo } = this.asn;\n\n this.subject = new Name(certificationRequestInfo.subject).toJSON();\n this.version = certificationRequestInfo.version;\n }\n\n public get publicKey(): IPublicKey {\n const { subjectPublicKey, algorithm } = this.asn.certificationRequestInfo.subjectPKInfo;\n let params;\n\n if (algorithm.algorithm === id_ecPublicKey && algorithm.parameters) {\n params = AsnConvert.parse(algorithm.parameters, ECParameters);\n }\n\n if (algorithm.algorithm === id_rsaEncryption) {\n params = AsnConvert.parse(subjectPublicKey, RSAPublicKey);\n }\n\n const spki = AsnConvert.serialize(this.asn.certificationRequestInfo.subjectPKInfo);\n\n return {\n params,\n value: spki,\n algorithm: algorithm.algorithm,\n };\n }\n\n public get signature(): ISignature {\n const { signature, signatureAlgorithm } = this.asn;\n\n return {\n value: signature,\n algorithm: signatureAlgorithm.algorithm,\n };\n }\n\n public get commonName(): string {\n if (!this.subject) {\n return '';\n }\n\n for (let i = 0; i < this.subject.length; i += 1) {\n const name = this.subject[i];\n\n if (name.shortName === 'CN' || name.shortName === 'E' || name.shortName === 'O') {\n return name.value;\n }\n }\n\n return '';\n }\n\n public async getThumbprint(\n algorithm: string = 'SHA-1',\n ): Promise<void> {\n try {\n const thumbprint = await getCertificateThumbprint(algorithm, this.raw);\n\n if (thumbprint) {\n this.thumbprints[algorithm] = Convert.ToHex(thumbprint);\n }\n } catch (error) {\n console.error('Error thumbprint get:', error);\n }\n }\n\n public parseAttributes() {\n const { certificationRequestInfo } = this.asn;\n\n if (certificationRequestInfo.attributes) {\n this.attributes = certificationRequestInfo.attributes\n .map((e) => new Attribute(AsnConvert.serialize(e)));\n\n const extensionRequestAttribute = this.attributes.find(\n (attribute) => attribute.asn.type === id_pkcs9_at_extensionRequest,\n ) as Attribute<ExtensionRequest>;\n\n if (extensionRequestAttribute) {\n this.extensions = extensionRequestAttribute.value\n .map((e) => new Extension(AsnConvert.serialize(e)));\n }\n }\n }\n\n public toString(format: 'hex' | 'pem' | 'base64' = 'pem'): string {\n switch (format) {\n case 'hex':\n return hexFormat(Convert.ToHex(this.raw));\n case 'pem':\n return `-----BEGIN ${this.tag}-----\\n${base64Format(this.toString('base64'))}\\n-----END ${this.tag}-----`;\n default:\n return Convert.ToBase64(this.raw);\n }\n }\n\n public downloadAsPEM(name?: string) {\n Download.csr.asPEM(\n this.toString('pem'),\n name || this.commonName,\n );\n }\n\n public downloadAsDER(name?: string) {\n Download.csr.asDER(\n this.toString('hex'),\n name || this.commonName,\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["attributesParsers","_a","id_DomainNameBeneficiary","DomainNameBeneficiary","id_DomainNameLegalRepresentative","DomainNameLegalRepresentative","id_DomainNameOwner","DomainNameOwner","id_DomainNameTechnicalOperator","DomainNameTechnicalOperator","id_TypeRelationship","TypeRelationship","id_ActivityDescription","ActivityDescription","id_WebGDPR","WebGDPR","id_InsuranceValue","InsuranceValue","id_ValuationRanking","ValuationRanking","id_pkcs9_at_challengePassword","ChallengePassword","id_pkcs9_at_unstructuredName","UnstructuredName","id_pkcs9_at_extensionRequest","ExtensionRequest","__extends","Attribute","_super","raw","_this","call","this","AsnAttribute","asnExtnValue","getAsnExtnValue","target","asn","type","value","AsnParser","parse","console","warn","concat","Convert","ToHex","error","message","prototype","values","AsnData","Pkcs10CertificateRequest","certificateRawToBuffer","CertificationRequest","thumbprints","tag","certificationRequestInfo","subject","Name","toJSON","version","Object","defineProperty","subjectPKInfo","subjectPublicKey","algorithm","params","id_ecPublicKey","parameters","AsnConvert","ECParameters","id_rsaEncryption","RSAPublicKey","spki","serialize","signature","signatureAlgorithm","i","length","name","shortName","getThumbprint","getCertificateThumbprint","thumbprint","sent","error_1","parseAttributes","attributes","map","e","extensionRequestAttribute","find","attribute","extensions","Extension","toString","format","hexFormat","base64Format","ToBase64","downloadAsPEM","Download","csr","asPEM","commonName","downloadAsDER","asDER"],"sources":["src/crypto/attribute.ts","src/crypto/pkcs10_certificate_request.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Convert } from 'pvtsutils';\nimport { AsnParser } from '@peculiar/asn1-schema';\nimport { Attribute as AsnAttribute } from '@peculiar/asn1-x509';\nimport {\n id_DomainNameBeneficiary,\n DomainNameBeneficiary,\n\n id_DomainNameLegalRepresentative,\n DomainNameLegalRepresentative,\n\n id_DomainNameOwner,\n DomainNameOwner,\n\n id_DomainNameTechnicalOperator,\n DomainNameTechnicalOperator,\n\n id_TypeRelationship,\n TypeRelationship,\n\n id_ActivityDescription,\n ActivityDescription,\n\n id_WebGDPR,\n WebGDPR,\n\n id_InsuranceValue,\n InsuranceValue,\n\n id_ValuationRanking,\n ValuationRanking,\n} from '@peculiar/asn1-ntqwac';\nimport {\n id_pkcs9_at_extensionRequest,\n ExtensionRequest,\n\n id_pkcs9_at_challengePassword,\n ChallengePassword,\n\n id_pkcs9_at_unstructuredName,\n UnstructuredName,\n} from '@peculiar/asn1-pkcs9';\n\nimport { AsnData } from './asn_data';\n\nconst attributesParsers = {\n [id_DomainNameBeneficiary]: DomainNameBeneficiary,\n [id_DomainNameLegalRepresentative]: DomainNameLegalRepresentative,\n [id_DomainNameOwner]: DomainNameOwner,\n [id_DomainNameTechnicalOperator]: DomainNameTechnicalOperator,\n [id_TypeRelationship]: TypeRelationship,\n [id_ActivityDescription]: ActivityDescription,\n [id_WebGDPR]: WebGDPR,\n [id_InsuranceValue]: InsuranceValue,\n [id_ValuationRanking]: ValuationRanking,\n [id_pkcs9_at_challengePassword]: ChallengePassword,\n [id_pkcs9_at_unstructuredName]: UnstructuredName,\n [id_pkcs9_at_extensionRequest]: ExtensionRequest,\n};\n\ntype TAttributeKeys = keyof typeof attributesParsers;\nexport type TAttributeValue = InstanceType<typeof attributesParsers[TAttributeKeys]> | string;\n\nexport class Attribute<T extends TAttributeValue> extends AsnData<AsnAttribute> {\n public readonly value: T;\n\n private getAsnExtnValue() {\n return this.asn.values[0];\n }\n\n constructor(raw: BufferSource) {\n super(raw, AsnAttribute);\n\n const asnExtnValue = this.getAsnExtnValue();\n\n try {\n const target = attributesParsers[this.asn.type];\n\n if (target) {\n this.value = AsnParser.parse<T>(asnExtnValue, target);\n } else {\n console.warn(`Didn't detect parser for \"${this.asn.type}\" attribute.`);\n\n this.value = Convert.ToHex(asnExtnValue) as T;\n }\n } catch (error) {\n console.error(`Error parse \"${this.asn.type}\" attribute:`, error.message);\n\n this.value = Convert.ToHex(asnExtnValue) as T;\n }\n }\n}\n","/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { AsnConvert } from '@peculiar/asn1-schema';\nimport { ECParameters, id_ecPublicKey } from '@peculiar/asn1-ecc';\nimport { id_rsaEncryption, RSAPublicKey } from '@peculiar/asn1-rsa';\nimport { CertificationRequest } from '@peculiar/asn1-csr';\nimport {\n id_pkcs9_at_extensionRequest,\n ExtensionRequest,\n} from '@peculiar/asn1-pkcs9';\nimport { Convert } from 'pvtsutils';\n\nimport { Download } from '../utils';\n\nimport { AsnData } from './asn_data';\nimport { Name, INameJSON } from './name';\nimport { Attribute, TAttributeValue } from './attribute';\nimport { Extension, TExtensionValue } from './extension';\nimport {\n certificateRawToBuffer,\n hexFormat,\n base64Format,\n getCertificateThumbprint,\n} from './utils';\n\ninterface ISignature {\n algorithm: string;\n value: BufferSource;\n}\n\ninterface IPublicKey {\n algorithm: string;\n value: BufferSource;\n params?: ECParameters | RSAPublicKey;\n}\n\nexport class Pkcs10CertificateRequest extends AsnData<CertificationRequest> {\n public readonly subject: INameJSON[];\n\n public readonly version: number;\n\n public attributes: Attribute<TAttributeValue>[];\n\n public extensions: Extension<TExtensionValue>[];\n\n public thumbprints: Record<string, string> = {};\n\n public readonly type = 'PKCS#10 Certificate Request';\n\n public readonly tag = 'CERTIFICATE REQUEST';\n\n constructor(raw: string) {\n super(certificateRawToBuffer(raw), CertificationRequest);\n\n const { certificationRequestInfo } = this.asn;\n\n this.subject = new Name(certificationRequestInfo.subject).toJSON();\n this.version = certificationRequestInfo.version;\n }\n\n public get publicKey(): IPublicKey {\n const { subjectPublicKey, algorithm } = this.asn.certificationRequestInfo.subjectPKInfo;\n let params;\n\n if (algorithm.algorithm === id_ecPublicKey && algorithm.parameters) {\n params = AsnConvert.parse(algorithm.parameters, ECParameters);\n }\n\n if (algorithm.algorithm === id_rsaEncryption) {\n params = AsnConvert.parse(subjectPublicKey, RSAPublicKey);\n }\n\n const spki = AsnConvert.serialize(this.asn.certificationRequestInfo.subjectPKInfo);\n\n return {\n params,\n value: spki,\n algorithm: algorithm.algorithm,\n };\n }\n\n public get signature(): ISignature {\n const { signature, signatureAlgorithm } = this.asn;\n\n return {\n value: signature,\n algorithm: signatureAlgorithm.algorithm,\n };\n }\n\n public get commonName(): string {\n if (!this.subject) {\n return '';\n }\n\n for (let i = 0; i < this.subject.length; i += 1) {\n const name = this.subject[i];\n\n if (name.shortName === 'CN' || name.shortName === 'E' || name.shortName === 'O') {\n return name.value;\n }\n }\n\n return '';\n }\n\n public async getThumbprint(\n algorithm: string = 'SHA-1',\n ): Promise<void> {\n try {\n const thumbprint = await getCertificateThumbprint(algorithm, this.raw);\n\n if (thumbprint) {\n this.thumbprints[algorithm] = Convert.ToHex(thumbprint);\n }\n } catch (error) {\n console.error('Error thumbprint get:', error);\n }\n }\n\n public parseAttributes() {\n const { certificationRequestInfo } = this.asn;\n\n if (certificationRequestInfo.attributes) {\n this.attributes = certificationRequestInfo.attributes\n .map((e) => new Attribute(AsnConvert.serialize(e)));\n\n const extensionRequestAttribute = this.attributes.find(\n (attribute) => attribute.asn.type === id_pkcs9_at_extensionRequest,\n ) as Attribute<ExtensionRequest>;\n\n if (extensionRequestAttribute) {\n this.extensions = extensionRequestAttribute.value\n .map((e) => new Extension(AsnConvert.serialize(e)));\n }\n }\n }\n\n public toString(format: 'hex' | 'pem' | 'base64' = 'pem'): string {\n switch (format) {\n case 'hex':\n return hexFormat(Convert.ToHex(this.raw));\n case 'pem':\n return `-----BEGIN ${this.tag}-----\\n${base64Format(this.toString('base64'))}\\n-----END ${this.tag}-----`;\n default:\n return Convert.ToBase64(this.raw);\n }\n }\n\n public downloadAsPEM(name?: string) {\n Download.csr.asPEM(\n this.toString('pem'),\n name || this.commonName,\n );\n }\n\n public downloadAsDER(name?: string) {\n Download.csr.asDER(\n this.raw,\n name || this.commonName,\n );\n }\n}\n"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  var __extends=this&&this.__extends||function(){var t=function(e,r){t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]};return t(e,r)};return function(e,r){if(typeof r!=="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function n(){this.constructor=e}e.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}();var __awaiter=this&&this.__awaiter||function(t,e,r,n){function i(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,a){function o(t){try{s(n.next(t))}catch(t){a(t)}}function u(t){try{s(n["throw"](t))}catch(t){a(t)}}function s(t){t.done?r(t.value):i(t.value).then(o,u)}s((n=n.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var r={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},n,i,a,o;return o={next:u(0),throw:u(1),return:u(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function u(t){return function(e){return s([t,e])}}function s(u){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,u[0]&&(r=0)),r)try{if(n=1,i&&(a=u[0]&2?i["return"]:u[0]?i["throw"]||((a=i["return"])&&a.call(i),0):i.next)&&!(a=a.call(i,u[1])).done)return a;if(i=0,a)u=[u[0]&2,a.value];switch(u[0]){case 0:case 1:a=u;break;case 4:r.label++;return{value:u[1],done:false};case 5:r.label++;i=u[1];u=[0];continue;case 7:u=r.ops.pop();r.trys.pop();continue;default:if(!(a=r.trys,a=a.length>0&&a[a.length-1])&&(u[0]===6||u[0]===2)){r=0;continue}if(u[0]===3&&(!a||u[1]>a[0]&&u[1]<a[3])){r.label=u[1];break}if(u[0]===6&&r.label<a[1]){r.label=a[1];a=u;break}if(a&&r.label<a[2]){r.label=a[2];r.ops.push(u);break}if(a[2])r.ops.pop();r.trys.pop();continue}u=e.call(t,r)}catch(t){u=[6,t];i=0}finally{n=a=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{A as AsnData,v as certificateRawToBuffer,Q as Certificate,C as Convert_1,N as Name,S as dateDiff,G as Extension,y as AsnConvert,x as id_ecPublicKey,z as ECParameters,B as id_rsaEncryption,R as RSAPublicKey,X as id_composite_key,Y as CompositePublicKey,Z as id_alg_composite,_ as CompositeSignatureValue,$ as CompositeParams,F as getCertificateThumbprint,H as base64Format,J as hexFormat,D as Download}from"./certification_request-08b4deb8.js";
4
+ */import{A as AsnData,v as certificateRawToBuffer,K as Certificate,C as Convert_1,N as Name,L as dateDiff,G as Extension,y as AsnConvert,x as id_ecPublicKey,z as ECParameters,B as id_rsaEncryption,R as RSAPublicKey,M as id_composite_key,O as CompositePublicKey,P as id_alg_composite,Q as CompositeSignatureValue,S as CompositeParams,F as getCertificateThumbprint,H as base64Format,J as hexFormat,D as Download}from"./certification_request-a4699dcf.js";
5
5
  /**
6
6
  * @license
7
7
  * Copyright (c) Peculiar Ventures, LLC.
8
8
  *
9
9
  * This source code is licensed under the MIT license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
- */var X509Certificate=function(t){__extends(e,t);function e(e){var r=t.call(this,certificateRawToBuffer(e),Certificate)||this;r.thumbprints={};r.type="X.509 Certificate";r.tag="CERTIFICATE";var n=r.asn.tbsCertificate;r.serialNumber=Convert_1.ToHex(n.serialNumber);r.subject=new Name(n.subject).toJSON();r.issuer=new Name(n.issuer).toJSON();r.version=n.version+1;var i=n.validity.notBefore.utcTime||n.validity.notBefore.generalTime;if(!i){throw new Error("Cannot get 'notBefore' value")}r.notBefore=i;var a=n.validity.notAfter.utcTime||n.validity.notAfter.generalTime;if(!a){throw new Error("Cannot get 'notAfter' value")}r.notAfter=a;r.validity=dateDiff(r.notBefore,r.notAfter);return r}e.prototype.parseExtensions=function(){var t=this.asn.tbsCertificate;if(t.extensions){this.extensions=t.extensions.map((function(t){return new Extension(AsnConvert.serialize(t))}))}};e.prototype.getPublicKeyInfo=function(t){var e=this;var r=t.subjectPublicKey,n=t.algorithm;var i;if(n.algorithm===id_ecPublicKey&&n.parameters){i=AsnConvert.parse(n.parameters,ECParameters)}if(n.algorithm===id_rsaEncryption){i=AsnConvert.parse(r,RSAPublicKey)}if(n.algorithm===id_composite_key){i=AsnConvert.parse(r,CompositePublicKey);i=i.map((function(t){return e.getPublicKeyInfo(t)}))}var a=AsnConvert.serialize(t);return{params:i,value:a,algorithm:n.algorithm}};Object.defineProperty(e.prototype,"publicKey",{get:function(){return this.getPublicKeyInfo(this.asn.tbsCertificate.subjectPublicKeyInfo)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"signature",{get:function(){var t=this.asn,e=t.signatureValue,r=t.signatureAlgorithm;var n;if(r.algorithm===id_alg_composite){var i=AsnConvert.parse(e,CompositeSignatureValue);var a=AsnConvert.parse(r.parameters,CompositeParams);n=a.map((function(t,e){return Object.assign(Object.assign({},t),{value:i[e]})}))}return{params:n,value:e,algorithm:r.algorithm}},enumerable:false,configurable:true});e.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var e,r;if(t===void 0){t="SHA-1"}return __generator(this,(function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,getCertificateThumbprint(t,this.raw)];case 1:e=n.sent();if(e){this.thumbprints[t]=Convert_1.ToHex(e)}return[3,3];case 2:r=n.sent();console.error("Error thumbprint get:",r);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(e.prototype,"commonName",{get:function(){if(!this.subject){return""}for(var t=0;t<this.subject.length;t+=1){var e=this.subject[t];if(e.shortName==="CN"||e.shortName==="E"||e.shortName==="O"){return e.value}}return""},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"issuerCommonName",{get:function(){if(!this.issuer){return""}for(var t=0;t<this.issuer.length;t+=1){var e=this.issuer[t];if(e.shortName==="CN"){return e.value}if(e.shortName==="E"){return e.value}}return""},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"isRoot",{get:function(){return JSON.stringify(this.issuer)===JSON.stringify(this.subject)},enumerable:false,configurable:true});e.prototype.subjectToString=function(){if(!this.subject){return""}return this.subject.map((function(t){return"".concat(t.shortName,"=").concat(t.value)})).join(", ")};e.prototype.issuerToString=function(){if(!this.issuer){return""}return this.issuer.map((function(t){return"".concat(t.shortName,"=").concat(t.value)})).join(", ")};e.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};e.prototype.downloadAsPEM=function(t){Download.cert.asPEM(this.toString("pem"),t||this.commonName)};e.prototype.downloadAsDER=function(t){Download.cert.asDER(this.toString("hex"),t||this.commonName)};return e}(AsnData);export{X509Certificate as X};
12
- //# sourceMappingURL=x509_certificate-47b4c5ee.js.map
11
+ */var X509Certificate=function(t){__extends(e,t);function e(e){var r=t.call(this,certificateRawToBuffer(e),Certificate)||this;r.thumbprints={};r.type="X.509 Certificate";r.tag="CERTIFICATE";var n=r.asn.tbsCertificate;r.serialNumber=Convert_1.ToHex(n.serialNumber);r.subject=new Name(n.subject).toJSON();r.issuer=new Name(n.issuer).toJSON();r.version=n.version+1;var i=n.validity.notBefore.utcTime||n.validity.notBefore.generalTime;if(!i){throw new Error("Cannot get 'notBefore' value")}r.notBefore=i;var a=n.validity.notAfter.utcTime||n.validity.notAfter.generalTime;if(!a){throw new Error("Cannot get 'notAfter' value")}r.notAfter=a;r.validity=dateDiff(r.notBefore,r.notAfter);return r}e.prototype.parseExtensions=function(){var t=this.asn.tbsCertificate;if(t.extensions){this.extensions=t.extensions.map((function(t){return new Extension(AsnConvert.serialize(t))}))}};e.prototype.getPublicKeyInfo=function(t){var e=this;var r=t.subjectPublicKey,n=t.algorithm;var i;if(n.algorithm===id_ecPublicKey&&n.parameters){i=AsnConvert.parse(n.parameters,ECParameters)}if(n.algorithm===id_rsaEncryption){i=AsnConvert.parse(r,RSAPublicKey)}if(n.algorithm===id_composite_key){i=AsnConvert.parse(r,CompositePublicKey);i=i.map((function(t){return e.getPublicKeyInfo(t)}))}var a=AsnConvert.serialize(t);return{params:i,value:a,algorithm:n.algorithm}};Object.defineProperty(e.prototype,"publicKey",{get:function(){return this.getPublicKeyInfo(this.asn.tbsCertificate.subjectPublicKeyInfo)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"signature",{get:function(){var t=this.asn,e=t.signatureValue,r=t.signatureAlgorithm;var n;if(r.algorithm===id_alg_composite){var i=AsnConvert.parse(e,CompositeSignatureValue);var a=AsnConvert.parse(r.parameters,CompositeParams);n=a.map((function(t,e){return Object.assign(Object.assign({},t),{value:i[e]})}))}return{params:n,value:e,algorithm:r.algorithm}},enumerable:false,configurable:true});e.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var e,r;if(t===void 0){t="SHA-1"}return __generator(this,(function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,getCertificateThumbprint(t,this.raw)];case 1:e=n.sent();if(e){this.thumbprints[t]=Convert_1.ToHex(e)}return[3,3];case 2:r=n.sent();console.error("Error thumbprint get:",r);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(e.prototype,"commonName",{get:function(){if(!this.subject){return""}for(var t=0;t<this.subject.length;t+=1){var e=this.subject[t];if(e.shortName==="CN"||e.shortName==="E"||e.shortName==="O"){return e.value}}return""},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"issuerCommonName",{get:function(){if(!this.issuer){return""}for(var t=0;t<this.issuer.length;t+=1){var e=this.issuer[t];if(e.shortName==="CN"){return e.value}if(e.shortName==="E"){return e.value}}return""},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"isRoot",{get:function(){return JSON.stringify(this.issuer)===JSON.stringify(this.subject)},enumerable:false,configurable:true});e.prototype.subjectToString=function(){if(!this.subject){return""}return this.subject.map((function(t){return"".concat(t.shortName,"=").concat(t.value)})).join(", ")};e.prototype.issuerToString=function(){if(!this.issuer){return""}return this.issuer.map((function(t){return"".concat(t.shortName,"=").concat(t.value)})).join(", ")};e.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};e.prototype.downloadAsPEM=function(t){Download.cert.asPEM(this.toString("pem"),t||this.commonName)};e.prototype.downloadAsDER=function(t){Download.cert.asDER(this.raw,t||this.commonName)};return e}(AsnData);export{X509Certificate as X};
12
+ //# sourceMappingURL=x509_certificate-05a23c0e.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__extends","X509Certificate","_super","raw","_this","call","this","certificateRawToBuffer","Certificate","thumbprints","type","tag","tbsCertificate","asn","serialNumber","Convert","ToHex","subject","Name","toJSON","issuer","version","notBefore","validity","utcTime","generalTime","Error","notAfter","dateDiff","prototype","parseExtensions","extensions","map","e","Extension","AsnConvert","serialize","getPublicKeyInfo","publicKeyInfo","subjectPublicKey","algorithm","params","id_ecPublicKey","parameters","parse","ECParameters","id_rsaEncryption","RSAPublicKey","id_composite_key","CompositePublicKey","param","spki","value","Object","defineProperty","subjectPublicKeyInfo","_a","signatureValue","signatureAlgorithm","id_alg_composite","compositeSignatureValues_1","CompositeSignatureValue","compositeParams","CompositeParams","index","assign","getThumbprint","getCertificateThumbprint","thumbprint","sent","console","error","error_1","i","length","name","shortName","JSON","stringify","subjectToString","concat","join","issuerToString","toString","format","hexFormat","base64Format","ToBase64","downloadAsPEM","Download","cert","asPEM","commonName","downloadAsDER","asDER","AsnData"],"sources":["src/crypto/x509_certificate.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { AsnConvert } from '@peculiar/asn1-schema';\nimport { ECParameters, id_ecPublicKey } from '@peculiar/asn1-ecc';\nimport { id_rsaEncryption, RSAPublicKey } from '@peculiar/asn1-rsa';\nimport {\n id_composite_key,\n id_alg_composite,\n CompositePublicKey,\n CompositeSignatureValue,\n CompositeParams,\n} from '@peculiar/asn1-x509-post-quantum';\nimport { Certificate, SubjectPublicKeyInfo } from '@peculiar/asn1-x509';\nimport { Convert } from 'pvtsutils';\n\nimport { dateDiff, Download } from '../utils';\n\nimport { Name, INameJSON } from './name';\nimport { Extension, TExtensionValue } from './extension';\nimport { AsnData } from './asn_data';\nimport {\n certificateRawToBuffer,\n hexFormat,\n base64Format,\n getCertificateThumbprint,\n} from './utils';\n\nexport interface ISignature {\n algorithm: string;\n value: BufferSource;\n params?: {\n algorithm: string;\n value: BufferSource;\n }[];\n}\n\nexport interface IPublicKey {\n algorithm: string;\n value: BufferSource;\n params?: ECParameters | RSAPublicKey | IPublicKey[];\n}\n\nexport class X509Certificate extends AsnData<Certificate> {\n public readonly serialNumber: string;\n\n public readonly subject: INameJSON[];\n\n public readonly issuer: INameJSON[];\n\n public readonly notBefore: Date;\n\n public readonly notAfter: Date;\n\n public readonly validity: string;\n\n public extensions: Extension<TExtensionValue>[];\n\n public readonly version: number;\n\n public thumbprints: Record<string, string> = {};\n\n public readonly type = 'X.509 Certificate';\n\n public readonly tag = 'CERTIFICATE';\n\n constructor(raw: string) {\n super(certificateRawToBuffer(raw), Certificate);\n\n const { tbsCertificate } = this.asn;\n\n this.serialNumber = Convert.ToHex(tbsCertificate.serialNumber);\n this.subject = new Name(tbsCertificate.subject).toJSON();\n this.issuer = new Name(tbsCertificate.issuer).toJSON();\n this.version = tbsCertificate.version + 1;\n\n const notBefore = tbsCertificate.validity.notBefore.utcTime\n || tbsCertificate.validity.notBefore.generalTime;\n\n if (!notBefore) {\n throw new Error(\"Cannot get 'notBefore' value\");\n }\n\n this.notBefore = notBefore;\n\n const notAfter = tbsCertificate.validity.notAfter.utcTime\n || tbsCertificate.validity.notAfter.generalTime;\n\n if (!notAfter) {\n throw new Error(\"Cannot get 'notAfter' value\");\n }\n\n this.notAfter = notAfter;\n this.validity = dateDiff(this.notBefore, this.notAfter);\n }\n\n public parseExtensions() {\n const { tbsCertificate } = this.asn;\n\n if (tbsCertificate.extensions) {\n this.extensions = tbsCertificate.extensions\n .map((e) => new Extension(AsnConvert.serialize(e)));\n }\n }\n\n private getPublicKeyInfo(publicKeyInfo: SubjectPublicKeyInfo) {\n const { subjectPublicKey, algorithm } = publicKeyInfo;\n let params;\n\n if (algorithm.algorithm === id_ecPublicKey && algorithm.parameters) {\n params = AsnConvert.parse(algorithm.parameters, ECParameters);\n }\n\n if (algorithm.algorithm === id_rsaEncryption) {\n params = AsnConvert.parse(subjectPublicKey, RSAPublicKey);\n }\n\n if (algorithm.algorithm === id_composite_key) {\n params = AsnConvert.parse(subjectPublicKey, CompositePublicKey);\n\n params = params.map((param) => this.getPublicKeyInfo(param));\n }\n\n const spki = AsnConvert.serialize(publicKeyInfo);\n\n return {\n params,\n value: spki,\n algorithm: algorithm.algorithm,\n };\n }\n\n public get publicKey(): IPublicKey {\n return this.getPublicKeyInfo(this.asn.tbsCertificate.subjectPublicKeyInfo);\n }\n\n public get signature(): ISignature {\n const { signatureValue, signatureAlgorithm } = this.asn;\n let params;\n\n if (signatureAlgorithm.algorithm === id_alg_composite) {\n const compositeSignatureValues = AsnConvert.parse(signatureValue, CompositeSignatureValue);\n const compositeParams = AsnConvert.parse(signatureAlgorithm.parameters, CompositeParams);\n\n params = compositeParams.map((param, index) => ({\n ...param,\n value: compositeSignatureValues[index],\n }));\n }\n\n return {\n params,\n value: signatureValue,\n algorithm: signatureAlgorithm.algorithm,\n };\n }\n\n public async getThumbprint(\n algorithm: string = 'SHA-1',\n ): Promise<void> {\n try {\n const thumbprint = await getCertificateThumbprint(algorithm, this.raw);\n\n if (thumbprint) {\n this.thumbprints[algorithm] = Convert.ToHex(thumbprint);\n }\n } catch (error) {\n console.error('Error thumbprint get:', error);\n }\n }\n\n public get commonName(): string {\n if (!this.subject) {\n return '';\n }\n\n for (let i = 0; i < this.subject.length; i += 1) {\n const name = this.subject[i];\n\n if (name.shortName === 'CN' || name.shortName === 'E' || name.shortName === 'O') {\n return name.value;\n }\n }\n\n return '';\n }\n\n public get issuerCommonName(): string {\n if (!this.issuer) {\n return '';\n }\n\n for (let i = 0; i < this.issuer.length; i += 1) {\n const name = this.issuer[i];\n\n if (name.shortName === 'CN') {\n return name.value;\n }\n\n if (name.shortName === 'E') {\n return name.value;\n }\n }\n\n return '';\n }\n\n public get isRoot(): boolean {\n return JSON.stringify(this.issuer) === JSON.stringify(this.subject);\n }\n\n public subjectToString() {\n if (!this.subject) {\n return '';\n }\n\n return this.subject\n .map((name) => (\n `${name.shortName}=${name.value}`\n ))\n .join(', ');\n }\n\n public issuerToString() {\n if (!this.issuer) {\n return '';\n }\n\n return this.issuer\n .map((name) => (\n `${name.shortName}=${name.value}`\n ))\n .join(', ');\n }\n\n public toString(format: 'hex' | 'pem' | 'base64' = 'pem'): string {\n switch (format) {\n case 'hex':\n return hexFormat(Convert.ToHex(this.raw));\n case 'pem':\n return `-----BEGIN ${this.tag}-----\\n${base64Format(this.toString('base64'))}\\n-----END ${this.tag}-----`;\n default:\n return Convert.ToBase64(this.raw);\n }\n }\n\n public downloadAsPEM(name?: string) {\n Download.cert.asPEM(\n this.toString('pem'),\n name || this.commonName,\n );\n }\n\n public downloadAsDER(name?: string) {\n Download.cert.asDER(\n this.toString('hex'),\n name || this.commonName,\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["__extends","X509Certificate","_super","raw","_this","call","this","certificateRawToBuffer","Certificate","thumbprints","type","tag","tbsCertificate","asn","serialNumber","Convert","ToHex","subject","Name","toJSON","issuer","version","notBefore","validity","utcTime","generalTime","Error","notAfter","dateDiff","prototype","parseExtensions","extensions","map","e","Extension","AsnConvert","serialize","getPublicKeyInfo","publicKeyInfo","subjectPublicKey","algorithm","params","id_ecPublicKey","parameters","parse","ECParameters","id_rsaEncryption","RSAPublicKey","id_composite_key","CompositePublicKey","param","spki","value","Object","defineProperty","subjectPublicKeyInfo","_a","signatureValue","signatureAlgorithm","id_alg_composite","compositeSignatureValues_1","CompositeSignatureValue","compositeParams","CompositeParams","index","assign","getThumbprint","getCertificateThumbprint","thumbprint","sent","console","error","error_1","i","length","name","shortName","JSON","stringify","subjectToString","concat","join","issuerToString","toString","format","hexFormat","base64Format","ToBase64","downloadAsPEM","Download","cert","asPEM","commonName","downloadAsDER","asDER","AsnData"],"sources":["src/crypto/x509_certificate.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { AsnConvert } from '@peculiar/asn1-schema';\nimport { ECParameters, id_ecPublicKey } from '@peculiar/asn1-ecc';\nimport { id_rsaEncryption, RSAPublicKey } from '@peculiar/asn1-rsa';\nimport {\n id_composite_key,\n id_alg_composite,\n CompositePublicKey,\n CompositeSignatureValue,\n CompositeParams,\n} from '@peculiar/asn1-x509-post-quantum';\nimport { Certificate, SubjectPublicKeyInfo } from '@peculiar/asn1-x509';\nimport { Convert } from 'pvtsutils';\n\nimport { dateDiff, Download } from '../utils';\n\nimport { Name, INameJSON } from './name';\nimport { Extension, TExtensionValue } from './extension';\nimport { AsnData } from './asn_data';\nimport {\n certificateRawToBuffer,\n hexFormat,\n base64Format,\n getCertificateThumbprint,\n} from './utils';\n\nexport interface ISignature {\n algorithm: string;\n value: BufferSource;\n params?: {\n algorithm: string;\n value: BufferSource;\n }[];\n}\n\nexport interface IPublicKey {\n algorithm: string;\n value: BufferSource;\n params?: ECParameters | RSAPublicKey | IPublicKey[];\n}\n\nexport class X509Certificate extends AsnData<Certificate> {\n public readonly serialNumber: string;\n\n public readonly subject: INameJSON[];\n\n public readonly issuer: INameJSON[];\n\n public readonly notBefore: Date;\n\n public readonly notAfter: Date;\n\n public readonly validity: string;\n\n public extensions: Extension<TExtensionValue>[];\n\n public readonly version: number;\n\n public thumbprints: Record<string, string> = {};\n\n public readonly type = 'X.509 Certificate';\n\n public readonly tag = 'CERTIFICATE';\n\n constructor(raw: string) {\n super(certificateRawToBuffer(raw), Certificate);\n\n const { tbsCertificate } = this.asn;\n\n this.serialNumber = Convert.ToHex(tbsCertificate.serialNumber);\n this.subject = new Name(tbsCertificate.subject).toJSON();\n this.issuer = new Name(tbsCertificate.issuer).toJSON();\n this.version = tbsCertificate.version + 1;\n\n const notBefore = tbsCertificate.validity.notBefore.utcTime\n || tbsCertificate.validity.notBefore.generalTime;\n\n if (!notBefore) {\n throw new Error(\"Cannot get 'notBefore' value\");\n }\n\n this.notBefore = notBefore;\n\n const notAfter = tbsCertificate.validity.notAfter.utcTime\n || tbsCertificate.validity.notAfter.generalTime;\n\n if (!notAfter) {\n throw new Error(\"Cannot get 'notAfter' value\");\n }\n\n this.notAfter = notAfter;\n this.validity = dateDiff(this.notBefore, this.notAfter);\n }\n\n public parseExtensions() {\n const { tbsCertificate } = this.asn;\n\n if (tbsCertificate.extensions) {\n this.extensions = tbsCertificate.extensions\n .map((e) => new Extension(AsnConvert.serialize(e)));\n }\n }\n\n private getPublicKeyInfo(publicKeyInfo: SubjectPublicKeyInfo) {\n const { subjectPublicKey, algorithm } = publicKeyInfo;\n let params;\n\n if (algorithm.algorithm === id_ecPublicKey && algorithm.parameters) {\n params = AsnConvert.parse(algorithm.parameters, ECParameters);\n }\n\n if (algorithm.algorithm === id_rsaEncryption) {\n params = AsnConvert.parse(subjectPublicKey, RSAPublicKey);\n }\n\n if (algorithm.algorithm === id_composite_key) {\n params = AsnConvert.parse(subjectPublicKey, CompositePublicKey);\n\n params = params.map((param) => this.getPublicKeyInfo(param));\n }\n\n const spki = AsnConvert.serialize(publicKeyInfo);\n\n return {\n params,\n value: spki,\n algorithm: algorithm.algorithm,\n };\n }\n\n public get publicKey(): IPublicKey {\n return this.getPublicKeyInfo(this.asn.tbsCertificate.subjectPublicKeyInfo);\n }\n\n public get signature(): ISignature {\n const { signatureValue, signatureAlgorithm } = this.asn;\n let params;\n\n if (signatureAlgorithm.algorithm === id_alg_composite) {\n const compositeSignatureValues = AsnConvert.parse(signatureValue, CompositeSignatureValue);\n const compositeParams = AsnConvert.parse(signatureAlgorithm.parameters, CompositeParams);\n\n params = compositeParams.map((param, index) => ({\n ...param,\n value: compositeSignatureValues[index],\n }));\n }\n\n return {\n params,\n value: signatureValue,\n algorithm: signatureAlgorithm.algorithm,\n };\n }\n\n public async getThumbprint(\n algorithm: string = 'SHA-1',\n ): Promise<void> {\n try {\n const thumbprint = await getCertificateThumbprint(algorithm, this.raw);\n\n if (thumbprint) {\n this.thumbprints[algorithm] = Convert.ToHex(thumbprint);\n }\n } catch (error) {\n console.error('Error thumbprint get:', error);\n }\n }\n\n public get commonName(): string {\n if (!this.subject) {\n return '';\n }\n\n for (let i = 0; i < this.subject.length; i += 1) {\n const name = this.subject[i];\n\n if (name.shortName === 'CN' || name.shortName === 'E' || name.shortName === 'O') {\n return name.value;\n }\n }\n\n return '';\n }\n\n public get issuerCommonName(): string {\n if (!this.issuer) {\n return '';\n }\n\n for (let i = 0; i < this.issuer.length; i += 1) {\n const name = this.issuer[i];\n\n if (name.shortName === 'CN') {\n return name.value;\n }\n\n if (name.shortName === 'E') {\n return name.value;\n }\n }\n\n return '';\n }\n\n public get isRoot(): boolean {\n return JSON.stringify(this.issuer) === JSON.stringify(this.subject);\n }\n\n public subjectToString() {\n if (!this.subject) {\n return '';\n }\n\n return this.subject\n .map((name) => (\n `${name.shortName}=${name.value}`\n ))\n .join(', ');\n }\n\n public issuerToString() {\n if (!this.issuer) {\n return '';\n }\n\n return this.issuer\n .map((name) => (\n `${name.shortName}=${name.value}`\n ))\n .join(', ');\n }\n\n public toString(format: 'hex' | 'pem' | 'base64' = 'pem'): string {\n switch (format) {\n case 'hex':\n return hexFormat(Convert.ToHex(this.raw));\n case 'pem':\n return `-----BEGIN ${this.tag}-----\\n${base64Format(this.toString('base64'))}\\n-----END ${this.tag}-----`;\n default:\n return Convert.ToBase64(this.raw);\n }\n }\n\n public downloadAsPEM(name?: string) {\n Download.cert.asPEM(\n this.toString('pem'),\n name || this.commonName,\n );\n }\n\n public downloadAsDER(name?: string) {\n Download.cert.asDER(\n this.raw,\n name || this.commonName,\n );\n }\n}\n"],"mappings":"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"}
@@ -1,19 +1,19 @@
1
1
  var __extends=this&&this.__extends||function(){var t=function(e,n){t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n))t[n]=e[n]};return t(e,n)};return function(e,n){if(typeof n!=="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");t(e,n);function r(){this.constructor=e}e.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}();var __awaiter=this&&this.__awaiter||function(t,e,n,r){function i(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,a){function o(t){try{s(r.next(t))}catch(t){a(t)}}function u(t){try{s(r["throw"](t))}catch(t){a(t)}}function s(t){t.done?n(t.value):i(t.value).then(o,u)}s((r=r.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:u(0),throw:u(1),return:u(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function u(t){return function(e){return s([t,e])}}function s(u){if(r)throw new TypeError("Generator is already executing.");while(o&&(o=0,u[0]&&(n=0)),n)try{if(r=1,i&&(a=u[0]&2?i["return"]:u[0]?i["throw"]||((a=i["return"])&&a.call(i),0):i.next)&&!(a=a.call(i,u[1])).done)return a;if(i=0,a)u=[u[0]&2,a.value];switch(u[0]){case 0:case 1:a=u;break;case 4:n.label++;return{value:u[1],done:false};case 5:n.label++;i=u[1];u=[0];continue;case 7:u=n.ops.pop();n.trys.pop();continue;default:if(!(a=n.trys,a=a.length>0&&a[a.length-1])&&(u[0]===6||u[0]===2)){n=0;continue}if(u[0]===3&&(!a||u[1]>a[0]&&u[1]<a[3])){n.label=u[1];break}if(u[0]===6&&n.label<a[1]){n.label=a[1];a=u;break}if(a&&n.label<a[2]){n.label=a[2];n.ops.push(u);break}if(a[2])n.ops.pop();n.trys.pop();continue}u=e.call(t,n)}catch(t){u=[6,t];i=0}finally{r=a=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
4
- */import{A as AsnData,v as certificateRawToBuffer,a0 as AttributeCertificate,C as Convert_1,S as dateDiff,G as Extension,y as AsnConvert,F as getCertificateThumbprint,H as base64Format,J as hexFormat,D as Download,a1 as CertificateList,N as Name}from"./certification_request-08b4deb8.js";import{A as Attribute}from"./pkcs10_certificate_request-3763c2af.js";
4
+ */import{A as AsnData,v as certificateRawToBuffer,X as AttributeCertificate,C as Convert_1,L as dateDiff,G as Extension,y as AsnConvert,F as getCertificateThumbprint,H as base64Format,J as hexFormat,D as Download,Y as CertificateList,N as Name}from"./certification_request-a4699dcf.js";import{A as Attribute}from"./pkcs10_certificate_request-785a4794.js";
5
5
  /**
6
6
  * @license
7
7
  * Copyright (c) Peculiar Ventures, LLC.
8
8
  *
9
9
  * This source code is licensed under the MIT license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
- */var X509AttributeCertificate=function(t){__extends(e,t);function e(e){var n;var r=t.call(this,certificateRawToBuffer(e),AttributeCertificate)||this;r.thumbprints={};r.type="X.509 Attribute Certificate";r.tag="ATTRIBUTE CERTIFICATE";var i=r.asn.acinfo;r.serialNumber=Convert_1.ToHex(i.serialNumber);r.version=i.version;var a=i.attrCertValidityPeriod.notBeforeTime;if(!a){throw new Error("Cannot get 'notBefore' value")}r.notBefore=a;var o=i.attrCertValidityPeriod.notAfterTime;if(!o){throw new Error("Cannot get 'notAfter' value")}r.notAfter=o;r.validity=dateDiff(r.notBefore,r.notAfter);r.issuer=i.issuer.v1Form||((n=i.issuer.v2Form)===null||n===void 0?void 0:n.issuerName);r.holder=i.holder;return r}Object.defineProperty(e.prototype,"signature",{get:function(){var t=this.asn,e=t.signatureValue,n=t.signatureAlgorithm;return{value:e,algorithm:n.algorithm}},enumerable:false,configurable:true});e.prototype.parseExtensions=function(){var t=this.asn.acinfo;if(t.extensions){this.extensions=t.extensions.map((function(t){return new Extension(AsnConvert.serialize(t))}))}};e.prototype.parseAttributes=function(){var t=this.asn.acinfo;if(t.attributes){this.attributes=t.attributes.map((function(t){return new Attribute(AsnConvert.serialize(t))}))}};e.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var e,n;if(t===void 0){t="SHA-1"}return __generator(this,(function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,getCertificateThumbprint(t,this.raw)];case 1:e=r.sent();if(e){this.thumbprints[t]=Convert_1.ToHex(e)}return[3,3];case 2:n=r.sent();console.error("Error thumbprint get:",n);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(e.prototype,"commonName",{get:function(){return"attribute-certificate-".concat(this.thumbprints["SHA-1"])},enumerable:false,configurable:true});e.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};e.prototype.downloadAsPEM=function(t){Download.attrCert.asPEM(this.toString("pem"),t||this.commonName)};e.prototype.downloadAsDER=function(t){Download.attrCert.asDER(this.toString("hex"),t||this.commonName)};return e}(AsnData);
11
+ */var X509AttributeCertificate=function(t){__extends(e,t);function e(e){var n;var r=t.call(this,certificateRawToBuffer(e),AttributeCertificate)||this;r.thumbprints={};r.type="X.509 Attribute Certificate";r.tag="ATTRIBUTE CERTIFICATE";var i=r.asn.acinfo;r.serialNumber=Convert_1.ToHex(i.serialNumber);r.version=i.version;var a=i.attrCertValidityPeriod.notBeforeTime;if(!a){throw new Error("Cannot get 'notBefore' value")}r.notBefore=a;var o=i.attrCertValidityPeriod.notAfterTime;if(!o){throw new Error("Cannot get 'notAfter' value")}r.notAfter=o;r.validity=dateDiff(r.notBefore,r.notAfter);r.issuer=i.issuer.v1Form||((n=i.issuer.v2Form)===null||n===void 0?void 0:n.issuerName);r.holder=i.holder;return r}Object.defineProperty(e.prototype,"signature",{get:function(){var t=this.asn,e=t.signatureValue,n=t.signatureAlgorithm;return{value:e,algorithm:n.algorithm}},enumerable:false,configurable:true});e.prototype.parseExtensions=function(){var t=this.asn.acinfo;if(t.extensions){this.extensions=t.extensions.map((function(t){return new Extension(AsnConvert.serialize(t))}))}};e.prototype.parseAttributes=function(){var t=this.asn.acinfo;if(t.attributes){this.attributes=t.attributes.map((function(t){return new Attribute(AsnConvert.serialize(t))}))}};e.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var e,n;if(t===void 0){t="SHA-1"}return __generator(this,(function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,getCertificateThumbprint(t,this.raw)];case 1:e=r.sent();if(e){this.thumbprints[t]=Convert_1.ToHex(e)}return[3,3];case 2:n=r.sent();console.error("Error thumbprint get:",n);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(e.prototype,"commonName",{get:function(){return"attribute-certificate-".concat(this.thumbprints["SHA-1"])},enumerable:false,configurable:true});e.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};e.prototype.downloadAsPEM=function(t){Download.attrCert.asPEM(this.toString("pem"),t||this.commonName)};e.prototype.downloadAsDER=function(t){Download.attrCert.asDER(this.raw,t||this.commonName)};return e}(AsnData);
12
12
  /**
13
13
  * @license
14
14
  * Copyright (c) Peculiar Ventures, LLC.
15
15
  *
16
16
  * This source code is licensed under the MIT license found in the
17
17
  * LICENSE file in the root directory of this source tree.
18
- */var X509Crl=function(t){__extends(e,t);function e(e){var n=t.call(this,certificateRawToBuffer(e),CertificateList)||this;n.thumbprints={};n.type="X.509 Certificate Revocation List";n.tag="X509 CRL";var r=n.asn.tbsCertList;n.issuer=new Name(r.issuer).toJSON();n.version=r.version+1;n.lastUpdate=r.thisUpdate.getTime();n.nextUpdate=r.nextUpdate.getTime();n.revokedCertificates=(r.revokedCertificates||[]).map((function(t){var e;return{revocationDate:t.revocationDate,userCertificate:t.userCertificate,crlEntryExtensions:(e=t.crlEntryExtensions)===null||e===void 0?void 0:e.map((function(t){return new Extension(AsnConvert.serialize(t))}))}}));return n}e.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var e,n;if(t===void 0){t="SHA-1"}return __generator(this,(function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,getCertificateThumbprint(t,this.raw)];case 1:e=r.sent();if(e){this.thumbprints[t]=Convert_1.ToHex(e)}return[3,3];case 2:n=r.sent();console.error("Error thumbprint get:",n);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(e.prototype,"signature",{get:function(){var t=this.asn,e=t.signature,n=t.signatureAlgorithm;return{value:e,algorithm:n.algorithm}},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"commonName",{get:function(){if(!this.issuer){return""}for(var t=0;t<this.issuer.length;t+=1){var e=this.issuer[t];if(e.shortName==="CN"||e.shortName==="E"||e.shortName==="O"){return e.value}}return""},enumerable:false,configurable:true});e.prototype.parseExtensions=function(){var t=this.asn.tbsCertList;if(t.crlExtensions){this.extensions=t.crlExtensions.map((function(t){return new Extension(AsnConvert.serialize(t))}))}};e.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};e.prototype.downloadAsPEM=function(t){Download.crl.asPEM(this.toString("pem"),t||this.commonName)};e.prototype.downloadAsDER=function(t){Download.crl.asDER(this.toString("hex"),t||this.commonName)};return e}(AsnData);export{X509AttributeCertificate as X,X509Crl as a};
19
- //# sourceMappingURL=x509_crl-ba76d3ed.js.map
18
+ */var X509Crl=function(t){__extends(e,t);function e(e){var n=t.call(this,certificateRawToBuffer(e),CertificateList)||this;n.thumbprints={};n.type="X.509 Certificate Revocation List";n.tag="X509 CRL";var r=n.asn.tbsCertList;n.issuer=new Name(r.issuer).toJSON();n.version=r.version+1;n.lastUpdate=r.thisUpdate.getTime();n.nextUpdate=r.nextUpdate.getTime();n.revokedCertificates=(r.revokedCertificates||[]).map((function(t){var e;return{revocationDate:t.revocationDate,userCertificate:t.userCertificate,crlEntryExtensions:(e=t.crlEntryExtensions)===null||e===void 0?void 0:e.map((function(t){return new Extension(AsnConvert.serialize(t))}))}}));return n}e.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var e,n;if(t===void 0){t="SHA-1"}return __generator(this,(function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,getCertificateThumbprint(t,this.raw)];case 1:e=r.sent();if(e){this.thumbprints[t]=Convert_1.ToHex(e)}return[3,3];case 2:n=r.sent();console.error("Error thumbprint get:",n);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(e.prototype,"signature",{get:function(){var t=this.asn,e=t.signature,n=t.signatureAlgorithm;return{value:e,algorithm:n.algorithm}},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"commonName",{get:function(){if(!this.issuer){return""}for(var t=0;t<this.issuer.length;t+=1){var e=this.issuer[t];if(e.shortName==="CN"||e.shortName==="E"||e.shortName==="O"){return e.value}}return""},enumerable:false,configurable:true});e.prototype.parseExtensions=function(){var t=this.asn.tbsCertList;if(t.crlExtensions){this.extensions=t.crlExtensions.map((function(t){return new Extension(AsnConvert.serialize(t))}))}};e.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return hexFormat(Convert_1.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(base64Format(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return Convert_1.ToBase64(this.raw)}};e.prototype.downloadAsPEM=function(t){Download.crl.asPEM(this.toString("pem"),t||this.commonName)};e.prototype.downloadAsDER=function(t){Download.crl.asDER(this.raw,t||this.commonName)};return e}(AsnData);export{X509AttributeCertificate as X,X509Crl as a};
19
+ //# sourceMappingURL=x509_crl-26081461.js.map