@peculiar/certificates-viewer 3.7.0 → 3.9.0

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 (63) hide show
  1. package/dist/cjs/{certification_request-00bbfbc5.js → certification_request-b9ac73f2.js} +443 -431
  2. package/dist/cjs/{crl-de4e196b.js → crl-57727a07.js} +6 -6
  3. package/dist/cjs/{download-a97f4cb2.js → download-93f7b773.js} +9 -5
  4. package/dist/cjs/index.cjs.js +1 -1
  5. package/dist/cjs/{l10n-17c96aba.js → l10n-ddc7cff9.js} +1 -1
  6. package/dist/cjs/{miscellaneous-30c4aded.js → miscellaneous-07184a47.js} +210 -67
  7. package/dist/cjs/peculiar-attribute-certificate-viewer_3.cjs.entry.js +7 -5
  8. package/dist/cjs/peculiar-button-split_4.cjs.entry.js +2 -2
  9. package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js +5 -5
  10. package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js +5 -5
  11. package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js +4 -4
  12. package/dist/cjs/{x509_certificate-2af9b990.js → x509_certificate-da0fc87d.js} +4 -4
  13. package/dist/collection/components/certificate-details-parts/extensions/biometric_syntax_extension.js +10 -9
  14. package/dist/collection/components/certificate-details-parts/extensions/certificate_policies_extension.js +24 -24
  15. package/dist/collection/components/certificate-details-parts/extensions/certificate_transparency_extension.js +11 -10
  16. package/dist/collection/components/certificate-details-parts/extensions/extended_key_usage_extension.js +6 -2
  17. package/dist/collection/components/certificate-details-parts/extensions/info_access_syntax_extension.js +7 -6
  18. package/dist/collection/components/certificate-details-parts/extensions/qc_statements_extension.js +37 -6
  19. package/dist/collection/components/certificate-details-parts/extensions/subject_directory_attributes_extension.js +7 -6
  20. package/dist/collection/components/certificate-details-parts/public_key.js +5 -8
  21. package/dist/collection/components/csr-viewer/csr-viewer.js +2 -0
  22. package/dist/collection/constants/oids.js +15 -13
  23. package/dist/collection/crypto/crl.js +1 -1
  24. package/dist/collection/crypto/csr.js +1 -1
  25. package/dist/collection/crypto/provider.js +2 -1
  26. package/dist/collection/crypto/x509_attribute_certificate.js +1 -1
  27. package/dist/collection/crypto/x509_certificate.js +1 -1
  28. package/dist/collection/utils/download_from_buffer.js +9 -5
  29. package/dist/esm/{certification_request-8cc9d070.js → certification_request-db83dd19.js} +23 -17
  30. package/dist/esm/{crl-f43a95b7.js → crl-34288843.js} +6 -6
  31. package/dist/esm/{download-67ac9120.js → download-91511aeb.js} +9 -5
  32. package/dist/esm/index.js +1 -1
  33. package/dist/esm/{l10n-a68d5748.js → l10n-d48f35ff.js} +1 -1
  34. package/dist/esm/{miscellaneous-b74d9eae.js → miscellaneous-ee8e1994.js} +210 -67
  35. package/dist/esm/peculiar-attribute-certificate-viewer_3.entry.js +7 -5
  36. package/dist/esm/peculiar-button-split_4.entry.js +2 -2
  37. package/dist/esm/peculiar-certificate-decoder.entry.js +5 -5
  38. package/dist/esm/peculiar-certificate-viewer.entry.js +5 -5
  39. package/dist/esm/peculiar-certificates-viewer.entry.js +4 -4
  40. package/dist/esm/{x509_certificate-0fdd28aa.js → x509_certificate-1acb3564.js} +4 -4
  41. package/dist/peculiar/index.esm.js +1 -1
  42. package/dist/peculiar/p-08aba71b.js +69 -0
  43. package/dist/peculiar/p-0f7868b1.js +11 -0
  44. package/dist/peculiar/{p-167fd2db.entry.js → p-2f213160.entry.js} +2 -2
  45. package/dist/peculiar/{p-c72f8e8f.js → p-3c4e4245.js} +6 -6
  46. package/dist/peculiar/{p-ea9a6317.js → p-48a620ff.js} +5 -5
  47. package/dist/peculiar/p-711b4e1e.js +18 -0
  48. package/dist/peculiar/{p-0868020d.entry.js → p-81ae1305.entry.js} +1 -1
  49. package/dist/peculiar/{p-4e9318fb.entry.js → p-81d33fb4.entry.js} +1 -1
  50. package/dist/peculiar/{p-05337212.entry.js → p-9bfd4f58.entry.js} +1 -1
  51. package/dist/peculiar/{p-893659f4.entry.js → p-df53fbcc.entry.js} +1 -1
  52. package/dist/peculiar/{p-fec9d812.js → p-ec250cc4.js} +1 -1
  53. package/dist/peculiar/peculiar.esm.js +1 -1
  54. package/dist/types/constants/oids.d.ts +2 -0
  55. package/dist/types/crypto/crl.d.ts +1 -1
  56. package/dist/types/crypto/csr.d.ts +1 -1
  57. package/dist/types/crypto/x509_attribute_certificate.d.ts +1 -1
  58. package/dist/types/crypto/x509_certificate.d.ts +1 -1
  59. package/dist/types/interface.d.ts +1 -0
  60. package/package.json +3 -2
  61. package/dist/peculiar/p-45336b4f.js +0 -69
  62. package/dist/peculiar/p-cff9655c.js +0 -18
  63. package/dist/peculiar/p-ec8787ed.js +0 -11
@@ -0,0 +1,69 @@
1
+ /*!
2
+ * © Peculiar Ventures https://peculiarventures.com/ - MIT License
3
+ */
4
+ import{h as e}from"./p-f7683ba5.js";import{l as a,a as n}from"./p-ec250cc4.js";import{b as t}from"./p-711b4e1e.js";import{_ as c,$ as o,a3 as s,u as i,a4 as f,a5 as l,a6 as r,a7 as d,a8 as b,a9 as u,aa as m,ab as v,ac as p,ad as x,ae as g,af as y,ag as h,ah as C,ai as N,aj as S,ak as A,al as D,am as I,an as j,ao as G,ap as T,aq as O,ar as k,as as P,at as L,au as R,av as V,aw as B,ax as $,ay as E,az as U,aA as K,aB as H,a0 as M,aC as X,aD as Y,aE as _,aF as q,aG as w,aH as z,aI as F,aJ as Q,aK as W,aL as J}from"./p-3c4e4245.js";
5
+ /**
6
+ * @license
7
+ * Copyright (c) Peculiar Ventures, LLC.
8
+ *
9
+ * This source code is licensed under the MIT license found in the
10
+ * LICENSE file in the root directory of this source tree.
11
+ */function Z(e){const a=c[e];return a?`${a} (${e})`:e}
12
+ /**
13
+ * @license
14
+ * Copyright (c) Peculiar Ventures, LLC.
15
+ *
16
+ * This source code is licensed under the MIT license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
+ */const ee=e=>`https://search.gleif.org/#/record/${e}`,ae=e=>`https://search.censys.io/search?resource=hosts&q=dns.names%3A${e}`,ne=e=>`https://search.censys.io/search?resource=hosts&q=ip%3A${e}`
19
+ /**
20
+ * @license
21
+ * Copyright (c) Peculiar Ventures, LLC.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */,te=(a,n)=>e("tr",null,e("td",{colSpan:2},e("table",null,n))),ce=a=>{const{value:n}=a;return n?e("tr",{class:"title"},e("td",{colSpan:2},e("peculiar-typography",{type:"h6"},n))):null},oe=a=>{const{name:n,value:t,monospace:c,collapse:o,href:s,extraValue:i}=a;if(!n)return null;if(null==t)return null;let f;f=o?e("peculiar-text-hider",null,t):t;const l=!!t.toString();return e("tr",null,e("td",{colSpan:l?1:2},e("peculiar-typography",{color:"grey_5"},n,l?":":"")),l&&e("td",{class:{monospace:c}},function(e){return 0===e.indexOf("http")}
26
+ /**
27
+ * @license
28
+ * Copyright (c) Peculiar Ventures, LLC.
29
+ *
30
+ * This source code is licensed under the MIT license found in the
31
+ * LICENSE file in the root directory of this source tree.
32
+ */(t.toString())||s?e("peculiar-link",{href:s||t.toString()},t):e("peculiar-typography",{monospace:c},f,i)))},se=t=>{const{serialNumber:c,version:o,validity:s,notBefore:i,notAfter:f,lastUpdate:l,nextUpdate:r,type:d}=t;return[e(ce,{value:a.getString("basicInformation")}),e(oe,{name:a.getString("type"),value:d}),e(oe,{name:a.getString("serialNumber"),value:c,monospace:!0}),e(oe,{name:a.getString("version"),value:o}),e(oe,{name:a.getString("validity"),value:s}),e(oe,{name:a.getString("issued"),value:i?n(i):void 0}),e(oe,{name:a.getString("expired"),value:f?n(f):void 0}),e(oe,{name:a.getString("lastUpdate"),value:l?n(l):void 0}),e(oe,{name:a.getString("nextUpdate"),value:r?n(r):void 0})]};
33
+ /**
34
+ * @license
35
+ * Copyright (c) Peculiar Ventures, LLC.
36
+ *
37
+ * This source code is licensed under the MIT license found in the
38
+ * LICENSE file in the root directory of this source tree.
39
+ */
40
+ function ie(e){if("modulus"in e.params){let a=e.params.modulus.byteLength;return a%2&&(a-=1),8*a}return null}function fe(e){return"publicExponent"in e.params?3===e.params.publicExponent.byteLength?65537:3:null}const le=n=>{const{publicKey:c}=n;if(!c)return null;function o(n){return[e(oe,{name:a.getString("algorithm"),value:Z(n.algorithm)}),e(oe,{name:a.getString("namedCurve"),value:Z("namedCurve"in n.params?n.params.namedCurve:void 0)}),e(oe,{name:a.getString("exponent"),value:fe(n)}),e(oe,{name:a.getString("modulus"),value:ie(n)}),e(oe,{name:a.getString("value"),value:t.Convert.ToHex(n.value),monospace:!0,collapse:!0})]}return[e(ce,{value:a.getString("publicKeyInfo")}),o(c),Array.isArray(c.params)&&c.params.length&&c.params.map((a=>e(te,null,o(a))))]},re=n=>{const{name:t}=n;return[e(ce,{value:a.getString("subjectName")}),t.map((a=>e(oe,{name:a.name||a.type,value:a.value})))]},de=n=>{const{name:t,issuerDnLink:c}=n,o=a.getString("issuerName");return[e(ce,{value:c?e("peculiar-link",{href:c,type:"h6"},o):o}),t.map((a=>e(oe,{name:a.name||a.type,value:a.value})))]},be=n=>{const{signature:c}=n;if(!c)return null;function o(n){return[e(oe,{name:a.getString("algorithm"),value:Z(n.algorithm)}),e(oe,{name:a.getString("value"),value:t.Convert.ToHex(n.value),monospace:!0,collapse:!0})]}return[e(ce,{value:a.getString("signature")}),o(c),c.params&&c.params.length&&c.params.map((a=>e(te,null,o(a))))]},ue=n=>{const{thumbprints:t}=n;if(!t)return null;const c=Object.keys(t);return c.length?[e(ce,{value:a.getString("fingerprints")}),c.map((a=>e(oe,{name:a,value:t[a],monospace:!0})))]:null},me=(n,t)=>{const{extension:c}=n;return[e(oe,{name:"Name",value:Z(c.asn.extnID)}),e(oe,{name:"Critical",value:a.getString(c.asn.critical?"yes":"no")}),t,e("tr",null,e("td",{colSpan:2,class:"divider"},e("span",{class:"bg_fill"})))]},ve=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Usage",value:n.value.toJSON().join(", ")}))},pe=n=>{const{extension:t}=n;return e(me,{extension:t},e(oe,{name:"Certificate Authority",value:a.getString(t.value.cA?"yes":"no")}),e(oe,{name:"Path Length Constraint",value:t.value.pathLenConstraint}))},xe=a=>{const{extension:n}=a;return e(me,{extension:n},Boolean(n.value.length)&&[e(oe,{name:"Purposes:",value:""}),n.value.map((a=>e(te,null,e(oe,{name:"Purpose",value:Z(a)}))))])},ge=a=>{const{extension:n,getSubjectKeyIdChildrenLink:c,getSubjectKeyIdSiblingsLink:o}=a,s=t.Convert.ToHex(n.value.buffer),i=c(s),f=o(s);return e(me,{extension:n},e(oe,{name:"Key ID",value:s,monospace:!0,extraValue:[i&&e("span",null," [",e("peculiar-link",{href:i},"children"),"]"),f&&e("span",null," [",e("peculiar-link",{href:f},"siblings"),"]")]}))},ye=a=>{const{extension:n,getAuthKeyIdParentLink:c,getAuthKeyIdSiblingsLink:o}=a,s=t.Convert.ToHex(n.value.keyIdentifier.buffer),i=c(s),f=o(s);return e(me,{extension:n},e(oe,{name:"Key ID",value:s,monospace:!0,extraValue:[i&&e("span",null," [",e("peculiar-link",{href:i},"parents"),"]"),f&&e("span",null," [",e("peculiar-link",{href:f},"siblings"),"]")]}))},he={otherName:"Other Name",rfc822Name:"RFC 822 Name",dNSName:"DNS Name",x400Address:"X400 Address",directoryName:"Directory Name",ediPartyName:"Edi Party Name ",uniformResourceIdentifier:"URI",iPAddress:"IP Address",registeredID:"Registered ID"},Ce=a=>{const{generalName:n,getDNSNameLink:d,getIPAddressLink:b}=a;return n?Object.keys(n).map((a=>{const u=n[a];if(u instanceof o)return[e(oe,{name:he[a]||a,value:""}),u.map((a=>a.map((a=>e(oe,{name:c[a.type]||a.type,value:a.value.toString()})))))];if(u instanceof s){try{const a=i.parse(u.value,f);return e(oe,{name:c[u.typeId]||u.typeId,value:a.toString()})}catch(e){}try{const a=i.parse(u.value,l);if(a.explicitText)return e(oe,{name:c[u.typeId]||u.typeId,value:a.explicitText.toString()})}catch(e){}return e(oe,{name:c[u.typeId]||u.typeId,value:t.Convert.ToHex(u.value),monospace:!0})}return t.BufferSourceConverter.isBufferSource(u)?e(oe,{name:he[a]||a,value:t.Convert.ToString(u)}):e(oe,u instanceof r?{name:he[a]||a,value:u.partyName.toString()}:"dNSName"===a?{name:he[a]||a,value:u,href:d(u)}:"iPAddress"===a?{name:he[a]||a,value:u,href:b(u)}:{name:he[a]||a,value:u})})):null},Ne=a=>{const{extension:n}=a;return e(me,{extension:n},n.value.map((n=>{var t,c;return[null===(t=n.distributionPoint)||void 0===t?void 0:t.fullName.map((n=>e(Ce,Object.assign({generalName:n},a)))),null===(c=n.cRLIssuer)||void 0===c?void 0:c.map((n=>e(Ce,Object.assign({generalName:n},a))))]})))},Se=a=>{const{extension:n}=a;return e(me,{extension:n},Boolean(n.value.length)&&[e(oe,{name:"Descriptions:",value:""}),n.value.map((n=>e(te,null,e(oe,{name:"Method",value:Z(n.accessMethod)}),e(Ce,Object.assign({generalName:n.accessLocation},a)))))])},Ae=a=>{const{extension:n}=a;return e(me,{extension:n},n.value.map((n=>e(Ce,Object.assign({generalName:n},a)))))},De=a=>{const{extension:n}=a;return e(me,{extension:n},Boolean(n.value.length)&&[e(oe,{name:"Policies:",value:""}),n.value.map((a=>e(te,null,e(oe,{name:"Policy ID",value:Z(a.policyIdentifier)}),a.policyQualifiers&&Boolean(a.policyQualifiers.length)&&[e(oe,{name:"Qualifiers:",value:""}),a.policyQualifiers.map((a=>{const n=[e(oe,{name:"Qualifier ID",value:Z(a.policyQualifierId)})];if("1.3.6.1.5.5.7.2.1"===a.policyQualifierId){const t=i.parse(a.qualifier,f);n.push(e(oe,{name:"Value",value:t.toString()}))}if("1.3.6.1.5.5.7.2.2"===a.policyQualifierId){const t=i.parse(a.qualifier,l);t.explicitText&&n.push(e(oe,{name:"Value",value:t.explicitText.toString()}))}return e(te,null,n)}))])))])},Ie={"9606c02c690033aa1d145f59c6e2648d0549f0df96aab8db915a70d8ecf390a5":"Akamai CT","39376f545f7b4607f59742d768cd5d2437bf3473b6534a4834bcf72e681c83c9":"Alpha CT",a577ac9ced7548dd8f025b67a241089df86e0f476ec203c2ecbedb185f282638:"CNNIC CT",cdb5179b7fc1c046feea31136a3f8f002e6182faf8896fecc8b2f5b5ab604900:"Certly.IO","1fbc36e002ede97f40199e86b3573b8a4217d80187746ad0da03a06054d20df4":"Cloudflare “Nimbus2017”",db74afeecb29ecb1feca3e716d2ce5b9aabb36f7847183c75d9d4f37b61fbf64:"Cloudflare “Nimbus2018”","747eda8331ad331091219cce254f4270c2bffd5e422008c6373579e6107bcc56":"Cloudflare “Nimbus2019”","5ea773f9df56c0e7b536487dd049e0327a919a0c84a112128418759681714558":"Cloudflare “Nimbus2020”","4494652eb0eeceafc44007d8a8fe28c0dae682bed8cb31b53fd33396b5b681a8":"Cloudflare “Nimbus2021”","41c8cab1df22464a10c6a13a0942875e4e318b1b03ebeb4bc768f090629606f6":"Cloudflare “Nimbus2022”","7a328c54d8b72db620ea38e0521ee98416703213854d3bd22bc13a57a352eb52":"Cloudflare “Nimbus2023”","6ff141b5647e4222f7ef052cefae7c21fd608e27d2af5a6e9f4b8a37d6633ee5":"DigiCert Nessie2018",fe446108b1d01ab78a62ccfeab6ab2b2babff3abdad80a4d8b30df2d0008830c:"DigiCert Nessie2019",c652a0ec48ceb3fcab170992c43a87413309e80065a26252401ba3362a17c565:"DigiCert Nessie2020",eec095ee8d72640f92e3c3b91bc712a3696a097b4b6a1a1438e647b2cbedc5f9:"DigiCert Nessie2021","51a3b0f5fd01799c566db837788f0ca47acc1b27cbf79e88429a0dfed48b05e5":"DigiCert Nessie2022",b3737707e18450f86386d605a9dc11094a792db1670c0b87dcf0030e7936a59a:"DigiCert Nessie2023","5614069a2fd7c2ecd3f5e1bd44b23ec74676b9bc99115cc0ef949855d689d0dd":"DigiCert Server","8775bfe7597cf88c43995fbdf36eff568d475636ff4ab560c1b4eaff5ea0830f":"DigiCert Server 2",c1164ae0a772d2d4392dc80ac10770d4f0c49bde991a4840c1fa075164f63360:"DigiCert Yeti2018",e2694bae26e8e94009e8861bb63b83d43ee7fe7488fba48f2893019dddf1dbfe:"DigiCert Yeti2019",f095a459f200d18240102d2f93888ead4bfe1d47e399e1d034a6b0a8aa8eb273:"DigiCert Yeti2020","5cdc4392fee6ab4544b15e9ad456e61037fbd5fa47dca17394b25ee6f6c70eca":"DigiCert Yeti2021","2245450759552456963fa12ff1f76d86e0232663adc04b7f5dc6835c6ee20f02":"DigiCert Yeti2022","35cf191bbfb16c57bf0fad4c6d42cbbbb627202651ea3fe12aefa803c33bd64c":"DigiCert Yeti2023","717ea7420975be84a2723553f1777c26dd51af4e102144094d9019b462fb6668":"GDCA 1","14308d90ccd030135005c01ca526d81e84e87624e39b6248e08f724aea3bb42a":"GDCA 2",c9cf890a21109c666cc17a3ed065c930d0e0135a9feba85af14210b8072421aa:"GDCA CT #1","924a30f909336ff435d6993a10ac75a2c641728e7fc2d659ae6188ffad40ce01":"GDCA CT #2",fad4c97cc49ee2f8ac85c5ea5cea09d0220dbbf4e49c6b50662ff868f86b8c28:"Google “Argon2017”",a4501269055a15545e6211ab37bc103f62ae5576a45e4b1714453e1b22106a25:"Google “Argon2018”","63f2dbcde83bcc2ccf0b728427576b33a48d61778fbd75a638b1c768544bd88d":"Google “Argon2019”",b21e05cc8ba2cd8a204e8766f92bb98a2520676bdafa70e7b249532def8b905e:"Google “Argon2020”",f65c942fd1773022145418083094568ee34d131933bfdf0c2f200bcc4ef164e3:"Google “Argon2021”","2979bef09e393921f056739f63a577e5be577d9c600af8f94d5d265c255dc784":"Google “Argon2022”","68f698f81f6482be3a8ceeb9281d4cfc71515d6793d444d10a67acbb4f4ffbc4":"Google “Aviator”",c3bf03a7e1ca8841c607bae3ff4270fca5ec45b186ebbe4e2cf3fc778630f5f6:"Google “Crucible”","1d024b8eb1498b344dfd87ea3efc0996f7506f235d1d497061a4773c439c25fb":"Google “Daedalus”","293c519654c83965baaa50fc5807d4b76fbf587a2972dca4c30cf4e54547f478":"Google “Icarus”",a4b90990b418581487bb13a2cc67700a3c359804f91bdfb8e377cd0ec80ddc10:"Google “Pilot”",ee4bbdb775ce60bae142691fabe19e66a30f7e5fb072d88300c47b897aa8fdcb:"Google “Rocketeer”",bbd9dfbc1f8a71b593942397aa927b473857950aab52e81a909664368e1ed185:"Google “Skydiver”","52eb4b225ec896974850675f23e43bc1d021e3214ce52ecd5fa87c203cdfca03":"Google “Solera2018”","0b760e9a8b9a682f88985b15e947501a56446bba8830785c3842994386450c00":"Google “Solera2019”","1fc72ce5a1b799f400c359bff96ca3913548e8644220610952e9ba1774f7bac7":"Google “Solera2020”",a3c99845e80ab7ce00157b3742df0207dd272b2b602ecf98ee2c12db9c5ae7e7:"Google “Solera2021”","697aafca1a6b536fae21205046debad7e0eaea13d2432e6e9d8fb379f2b9aaf3":"Google “Solera2022”",a899d8780c9290aaf462f31880ccfbd52451e970d0fbf591ef75b0d99b645681:"Google “Submariner”",b0cc83e5a5f97d6baf7c09cc284904872ac7e88b132c6350b7c6fd26e16c6c77:"Google “Testtube”",b10cd559a6d67846811f7df9a51532739ac48d703bea0323da5d38755bc0ad4e:"Google “Xenon2018”","084114980071532c16190460bcfc47fdc2653afa292c72b37ff863ae29ccc9f0":"Google “Xenon2019”","07b75c1be57d68fff1b0c61d2315c7bae6577c5794b76aeebc613a1a69d3a21c":"Google “Xenon2020”","7d3ef2f88fff88556824c2c0ca9e5289792bc50e78097f2e6a9768997e22f0d7":"Google “Xenon2021”","46a555eb75fa912030b5a28969f4f37d112c4174befd49b885abf2fc70fe6d47":"Google “Xenon2022”","7461b4a09cfb3d41d75159575b2e7649a445a8d27709b0cc564a6482b7eb41a3":"Izenpe","8941449c70742e06b9fc9ce7b116ba0024aa36d59af44f0204404f00f7ea8566":"Izenpe “Argi”","296afa2d568bca0d2ea844956ae9721fc35fa355ecda99693aafd458a71aefdd":"Let“s Encrypt ”Clicky”","537b69a3564335a9c04904e39593b2c298eb8d7a6e83023635c627248cd6b440":"Nordu “flimsy”",aae70b7f3cb8d566c86c2f16979c9f445f69ab0eb4535589b2f77a030104f3cd:"Nordu “plausible”",e0127629e90496564e3d0147984498aa48f8adb16600eb7902a1ef9909906273:"PuChuangSiDa CT",cf55e28923497c340d5206d05353aeb25834b52f1f8dc9526809f212efdd7ca6:"SHECA CT 1","32dc59c2d4c41968d56e14bc61ac8f0e45db39faf3c155aa4252f5001fa0c623":"SHECA CT 2",db76fdadac65e7d09508886e2159bd8b90352f5fead3e3dc5e22eb350acc7b98:"Sectigo (Comodo) “Dodo” CT","6f5376ac31f03119d89900a45115ff77151c11d902c10029068db2089a37d913":"Sectigo (Comodo) “Mammoth” CT","5581d4c2169036014aea0b9b573c53f0c0e43878702508172fa3aa1d0713d30c":"Sectigo (Comodo) “Sabre” CT","34bb6ad6c3df9c03eea8a499ff7891486c9d5e5cac92d01f7bfd1bce19db48ef":"StartCom",ddeb1d2b7a0d4fa6208b81ad8168707e2e8e9d01d55c888d3d11c4cdb6ecbecc:"Symantec",a7ce4a4e6207e0addee5fdaa4b1f86768767b5d002a55d47310e7e670a95eab2:"Symantec Deneb","15970488d7b997a05beb52512adee8d2e8b4a3165264121a9fabfbd5f85ad93f":"Symantec “Sirius”",bc78e1dfc5f63c684649334da10fa15f0979692009c081b4f3f6917f3ed9b8a5:"Symantec “Vega”",b0b784bc81c0ddc47544e883f05985bb9077d134d8ab88b2b2e533980b8e508b:"Up In The Air “Behind the Sofa”",ac3b9aed7fa9674757159e6d7d575672f9d98100941e9bdeffeca1313b75782d:"Venafi","03019df3fd85a69a8ebd1facc6da9ba73e469774fe77f579fc5a08b8328c1d6b":"Venafi Gen2 CT","41b2dc2e89e63ce4af1ba7bb29bf68c6dee6f9f1cc047e30dffae3b3ba259263":"WoSign","63d0006026dde10bb0601f452446965ee2b6ea2cd4fbc95ac866a550af9075b7":"WoSign 2","9e4ff73dc3ce220b69217c899e468076abf8d78636d5ccfc85a31a75628ba88b":"WoSign CT #1"},je=a=>{const{extension:t}=a;return e(me,{extension:t},Boolean(t.value.items.length)&&[e(oe,{name:"Signed Certificate Timestamps:",value:""}),t.value.toJSON().map((a=>e(te,null,e(oe,{name:"Version",value:a.version+1}),e(oe,{name:"Log Operator",value:Ie[a.logId]||a.logId}),e(oe,{name:"Log Key ID",value:a.logId,monospace:!0}),e(oe,{name:"Timestamp",value:n(a.timestamp)}),e(oe,{name:"Signature Algorithm",value:`${a.hashAlgorithm} ${a.signatureAlgorithm}`.toUpperCase()}),e(oe,{name:"Signature",value:a.signature,monospace:!0}))))])},Ge=a=>{var n,t;const{extension:c}=a;return e(me,{extension:c},null===(n=c.value.excludedSubtrees)||void 0===n?void 0:n.map((n=>e(Ce,Object.assign({generalName:n.base},a)))),null===(t=c.value.permittedSubtrees)||void 0===t?void 0:t.map((n=>e(Ce,Object.assign({generalName:n.base},a)))))},Te=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Template ID",value:n.value.templateID}),e(oe,{name:"Template Major Version",value:n.value.templateMajorVersion}),e(oe,{name:"Template Minor Version",value:n.value.templateMinorVersion}))},Oe=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Name",value:n.value.toString()}))},ke=a=>{const{extension:n}=a,t=n.value.getVersion();return e(me,{extension:n},e(oe,{name:"Certificate Index",value:t.certificateIndex}),e(oe,{name:"Key Index",value:t.keyIndex}))};
41
+ /**
42
+ * @license
43
+ * Copyright (c) Peculiar Ventures, LLC.
44
+ *
45
+ * This source code is licensed under the MIT license found in the
46
+ * LICENSE file in the root directory of this source tree.
47
+ */var Pe,Le,Re,Ve;let Be=class{constructor(e){"string"==typeof e?this.alphabetic=e:"number"==typeof e&&(this.numeric=e)}};d([b({type:u.PrintableString})],Be.prototype,"alphabetic",void 0),d([b({type:u.PrintableString})],Be.prototype,"numeric",void 0),Be=d([m({type:v.Choice})],Be);class $e{constructor(e={}){this.currency=new Be,this.amount=0,this.exponent=0,Object.assign(this,e)}}d([b({type:Be})],$e.prototype,"currency",void 0),d([b({type:u.Integer})],$e.prototype,"amount",void 0),d([b({type:u.Integer})],$e.prototype,"exponent",void 0);let Ee=class extends $e{};Ee=d([m({type:v.Sequence})],Ee);let Ue=class{constructor(e=0){this.value=e}};d([b({type:u.Integer})],Ue.prototype,"value",void 0),Ue=d([m({type:v.Choice})],Ue);let Ke=class{constructor(e={}){this.url="",this.language="",Object.assign(this,e)}};d([b({type:u.IA5String})],Ke.prototype,"url",void 0),d([b({type:u.PrintableString})],Ke.prototype,"language",void 0),Ke=d([m({type:v.Sequence})],Ke);let He=Pe=class extends p{constructor(e){super(e),Object.setPrototypeOf(this,Pe.prototype)}};He=Pe=d([m({type:v.Sequence,itemType:Ke})],He);let Me=Le=class extends He{constructor(e){super(e),Object.setPrototypeOf(this,Le.prototype)}};Me=Le=d([m({type:v.Sequence,itemType:Ke})],Me);let Xe=Re=class extends p{constructor(e){super(e),Object.setPrototypeOf(this,Re.prototype)}};Xe=Re=d([m({type:v.Sequence,itemType:u.ObjectIdentifier})],Xe);let Ye=Ve=class extends p{constructor(e){super(e),Object.setPrototypeOf(this,Ve.prototype)}};Ye=Ve=d([m({type:v.Sequence,itemType:u.PrintableString})],Ye);const _e=a=>{const{extension:n}=a;return e(me,{extension:n},Boolean(n.value.length)&&[e(oe,{name:"Statements:",value:""}),n.value.map((a=>e(te,null,e(oe,{name:"Statement ID",value:Z(a.statementId)}),function(a,n){if(!n.byteLength)return null;if(a===x){const a=i.parse(n,g);return e(oe,{name:"Semantics Identifier",value:Z(a.semanticsIdentifier)})}if("0.4.0.1862.1.6"===a){const a=i.parse(n,Xe);return e(oe,{name:"QC Types",value:a.map((e=>Z(e))).join(", ")})}if("0.4.0.1862.1.3"===a){const a=i.parse(n,Ue);return e(oe,{name:"Retention Period",value:`${a.value} years`})}if("0.4.0.1862.1.5"===a){const a=i.parse(n,He);return[e(oe,{name:"PDS Locations:",value:""}),a.map((a=>e(te,null,e(oe,{name:"URL",value:a.url}),e(oe,{name:"Language",value:a.language}))))]}return e(oe,{name:"Info",value:t.Convert.ToHex(n),monospace:!0})}(a.statementId,a.statementInfo))))])},qe=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Comment",value:n.value.value}))},we=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Type",value:n.value.toJSON().join(", ")}))},ze=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Role",value:n.value.text}))},Fe=a=>{const{extension:n,getLEILink:t}=a;return e(me,{extension:n},e(oe,{name:"Identifier",value:n.value.text,href:t(n.value.text)}))},Qe=n=>{const{extension:t}=n;return e(me,{extension:t},e(oe,{name:"Version",value:t.value.version}),e(Ce,Object.assign({generalName:t.value.location},n)),e(oe,{name:"Requires Auth",value:a.getString(t.value.requiresAuth?"yes":"no")}))},We=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Version",value:n.value.version}))},Je=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Reason",value:n.value.toJSON()}))};
48
+ /**
49
+ * @license
50
+ * Copyright (c) Peculiar Ventures, LLC.
51
+ *
52
+ * This source code is licensed under the MIT license found in the
53
+ * LICENSE file in the root directory of this source tree.
54
+ */
55
+ function Ze(e){return t.Convert.ToString(e.values[0])}
56
+ /**
57
+ * @license
58
+ * Copyright (c) Peculiar Ventures, LLC.
59
+ *
60
+ * This source code is licensed under the MIT license found in the
61
+ * LICENSE file in the root directory of this source tree.
62
+ */const ea=a=>{const{extension:n}=a;return e(me,{extension:n},Boolean(n.value.length)&&[e(oe,{name:"Attributes:",value:""}),n.value.map((a=>e(te,null,e(oe,{name:"Type",value:Z(a.type)}),e(oe,{name:"Value",value:Ze(a)}))))])},aa=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Value",value:n.value,monospace:!0}))},na=a=>{const{extension:t}=a;return e(me,{extension:t},e(oe,{name:"Not Before",value:n(t.value.notBefore)}),e(oe,{name:"Not After",value:n(t.value.notAfter)}))},ta=a=>{const{extension:n}=a;return e(me,{extension:n},e(oe,{name:"Version",value:n.value.entrustVers}),e(oe,{name:"Info Flags",value:n.value.entrustInfoFlags.toJSON().join(", ")}))},ca=a=>{const{extension:n}=a;return e(me,{extension:n},Boolean(n.value.length)&&[e(oe,{name:"Biometrics:",value:""}),n.value.map((a=>e(te,null,e(oe,{name:"OID",value:Z(a.typeOfBiometricData.biometricDataOid)}),e(oe,{name:"Type",value:a.typeOfBiometricData.predefinedBiometricType}),e(oe,{name:"Algorithm",value:Z(a.hashAlgorithm.algorithm)}),e(oe,{name:"Hash",value:t.Convert.ToHex(a.biometricDataHash.buffer),monospace:!0}),e(oe,{name:"Source Uri",value:a.sourceDataUri}))))])},oa=a=>{const{extension:n}=a,c=a=>a?a.map((a=>{const{imageDetails:n}=a;return[e(oe,{name:"Image Type",value:n.mediaType}),e(oe,{name:"Image Hash",value:t.Convert.ToHex(n.logotypeHash[0].hashValue),monospace:!0}),e(oe,{name:"Image URL",value:n.logotypeURI[0],monospace:!0,collapse:!0}),e(oe,{name:"Image Hash Algorithm",value:Z(n.logotypeHash[0].hashAlg.algorithm)})]})):null,o=a=>a?a.map((a=>{const{audioDetails:n}=a;return[e(oe,{name:"Audio Type",value:n.mediaType}),e(oe,{name:"Audio Hash",value:t.Convert.ToHex(n.logotypeHash[0].hashValue),monospace:!0}),e(oe,{name:"Audio URL",value:n.logotypeURI[0],monospace:!0,collapse:!0}),e(oe,{name:"Audio Hash Algorithm",value:Z(n.logotypeHash[0].hashAlg.algorithm)})]})):null,s=(a,n)=>{if(!n||!n.direct)return null;const{image:t,audio:s}=n.direct;return[e(oe,{name:"Type",value:a}),c(t),o(s),e("tr",null,e("td",null),e("td",null))]};return e(me,{extension:n},s("Subject",n.value.subjectLogo),s("Issuer",n.value.issuerLogo))},sa=a=>{const{extension:n}=a;return e(me,{extension:n},n.value.map(((a,n)=>[e(oe,{name:`Entry #${n+1}`,value:""}),e(oe,{name:"SPC",value:a.spc}),e(oe,{name:"Range",value:a.range?`start=${a.range.start} count==${a.range.count}`:null}),e(oe,{name:"One",value:a.one})])))},ia=a=>{const{extension:n}=a;return e(me,{extension:n},n.value.requireExplicitPolicy&&e(oe,{name:"Require Explicit Policy",value:y.toASN(n.value.requireExplicitPolicy).valueBlock.toString()}),n.value.inhibitPolicyMapping&&e(oe,{name:"Inhibit Policy Mapping",value:y.toASN(n.value.inhibitPolicyMapping).valueBlock.toString()}))},fa=a=>{const{extension:n}=a;return e(me,{extension:n},n.value.map(((a,n)=>[e(oe,{name:`Policy #${n+1}`,value:""}),e(oe,{name:"Issuer Domain",value:Z(a.issuerDomainPolicy)}),e(oe,{name:"Subject Domain",value:Z(a.subjectDomainPolicy)})])))},la=n=>{const{extension:t}=n;return e(me,{extension:t},e(oe,{name:a.getString("value"),value:t.value.value}))},ra=n=>{var t;const{extension:c}=n;return e(me,{extension:c},null===(t=c.value.distributionPoint)||void 0===t?void 0:t.fullName.map((a=>e(Ce,Object.assign({generalName:a},n)))),c.value.onlySomeReasons&&e(oe,{name:a.getString("onlyReasons"),value:c.value.onlySomeReasons.toJSON().join(", ")}),c.value.indirectCRL&&e(oe,{name:a.getString("indirectCRL"),value:a.getString("yes")}),c.value.onlyContainsUserCerts&&e(oe,{name:a.getString("onlyUserCertificates"),value:a.getString("yes")}),c.value.onlyContainsAttributeCerts&&e(oe,{name:a.getString("onlyAttributeCertificates"),value:a.getString("yes")}),c.value.onlyContainsCACerts&&e(oe,{name:a.getString("onlyCACertificates"),value:a.getString("yes")}))},da=a=>{const{extensions:n,title:t}=a;return n&&n.length?[e(ce,{value:t||"Extensions"}),n.map((n=>{try{return n.value instanceof h?e(ve,{extension:n}):n.value instanceof C?e(pe,{extension:n}):n.value instanceof N?e(xe,{extension:n}):n.value instanceof S?e(ge,Object.assign({extension:n},a)):n.value instanceof A?e(ye,Object.assign({extension:n},a)):n.value instanceof D?e(Ne,Object.assign({extension:n},a)):n.value instanceof I||n.value instanceof j?e(Se,Object.assign({extension:n},a)):n.value instanceof G?e(Ae,Object.assign({extension:n},a)):n.value instanceof T?e(De,{extension:n}):n.value instanceof O?e(je,{extension:n}):n.value instanceof k?e(Ge,Object.assign({extension:n},a)):n.value instanceof P?e(Te,{extension:n}):n.value instanceof L?e(Oe,{extension:n}):n.value instanceof R?e(ke,{extension:n}):n.value instanceof V?e(_e,{extension:n}):n.value instanceof B?e(qe,{extension:n}):n.value instanceof $?e(we,{extension:n}):n.value instanceof E?e(ze,{extension:n}):n.value instanceof U?e(Fe,Object.assign({extension:n},a)):n.value instanceof K?e(Qe,Object.assign({extension:n},a)):n.value instanceof H?e(We,{extension:n}):n.value instanceof M?e(Je,{extension:n}):n.value instanceof X?e(ea,{extension:n}):n.value instanceof Y?e(na,{extension:n}):n.value instanceof _?e(ta,{extension:n}):n.value instanceof q?e(ca,{extension:n}):n.value instanceof w?e(oa,{extension:n}):n.value instanceof z?e(sa,{extension:n}):n.value instanceof F?e(ia,{extension:n}):n.value instanceof Q?e(fa,{extension:n}):n.value instanceof W?e(la,{extension:n}):n.value instanceof J?e(ra,Object.assign({extension:n},a)):e("string"==typeof n.value?aa:me,{extension:n})}catch(e){return console.error("Error render extension:",n.asn.extnID),null}}))]:null},ba=n=>{const{certificate:t}=n;return[e(ce,{value:a.getString("miscellaneous")}),e("tr",null,e("td",{class:"vertical_align_middle"},e("peculiar-typography",{color:"grey_5"},a.getString("download"),":")),e("td",null,e("peculiar-button-split",{onClick:()=>t.downloadAsPEM(),actions:[{text:a.getString("download.der"),onClick:()=>t.downloadAsDER()}]},a.getString("download.pem"))))]};
63
+ /**
64
+ * @license
65
+ * Copyright (c) Peculiar Ventures, LLC.
66
+ *
67
+ * This source code is licensed under the MIT license found in the
68
+ * LICENSE file in the root directory of this source tree.
69
+ */export{se as B,da as E,Ce as G,de as I,ba as M,le as P,oe as R,be as S,te as T,ce as a,ue as b,ee as c,ae as d,ne as e,re as f,Z as g}
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * © Peculiar Ventures https://peculiarventures.com/ - MIT License
3
+ */
4
+ import{A as t,e as s,C as e,N as r,E as i,f as n,g as o,h as a,j as h,R as u,k as c,l as m,m as l,n as f,o as g,p,q as E,r as b}from"./p-3c4e4245.js";import{b as C,D as A}from"./p-711b4e1e.js";import{d as w}from"./p-ec250cc4.js";
5
+ /**
6
+ * @license
7
+ * Copyright (c) Peculiar Ventures, LLC.
8
+ *
9
+ * This source code is licensed under the MIT license found in the
10
+ * LICENSE file in the root directory of this source tree.
11
+ */class N extends t{constructor(t){super(s(t),e),this.thumbprints={},this.type="X.509 Certificate";const{tbsCertificate:i}=this.asn;this.serialNumber=C.Convert.ToHex(i.serialNumber),this.subject=new r(i.subject).toJSON(),this.issuer=new r(i.issuer).toJSON(),this.version=i.version+1;const n=i.validity.notBefore.utcTime||i.validity.notBefore.generalTime;if(!n)throw new Error("Cannot get 'notBefore' value");this.notBefore=n;const o=i.validity.notAfter.utcTime||i.validity.notAfter.generalTime;if(!o)throw new Error("Cannot get 'notAfter' value");this.notAfter=o,this.validity=w(this.notBefore,this.notAfter)}parseExtensions(){const{tbsCertificate:t}=this.asn;t.extensions&&(this.extensions=t.extensions.map((t=>new i(n.serialize(t)))))}getPublicKeyInfo(t){const{subjectPublicKey:s,algorithm:e}=t;let r;return e.algorithm===o&&e.parameters&&(r=n.parse(e.parameters,a)),e.algorithm===h&&(r=n.parse(s,u)),e.algorithm===c&&(r=n.parse(s,m),r=r.map((t=>this.getPublicKeyInfo(t)))),{params:r,value:n.serialize(t),algorithm:e.algorithm}}get publicKey(){return this.getPublicKeyInfo(this.asn.tbsCertificate.subjectPublicKeyInfo)}get signature(){const{signatureValue:t,signatureAlgorithm:s}=this.asn;let e;if(s.algorithm===l){const r=n.parse(t,f);e=n.parse(s.parameters,g).map(((t,s)=>Object.assign(Object.assign({},t),{value:r[s]})))}return{params:e,value:t,algorithm:s.algorithm}}exportAsBase64(){return C.Convert.ToBase64(this.raw)}exportAsHexFormatted(){return p(C.Convert.ToHex(this.raw))}exportAsPemFormatted(){return`-----BEGIN CERTIFICATE-----\n${E(this.exportAsBase64())}\n-----END CERTIFICATE-----`}async getThumbprint(t="SHA-1"){try{const s=await b(t,this.raw);s&&(this.thumbprints[t]=C.Convert.ToHex(s))}catch(t){console.error("Error thumbprint get:",t)}}get commonName(){if(!this.subject)return"";for(let t=0;t<this.subject.length;t+=1){const s=this.subject[t];if("CN"===s.shortName||"E"===s.shortName||"O"===s.shortName)return s.value}return""}get issuerCommonName(){if(!this.issuer)return"";for(let t=0;t<this.issuer.length;t+=1){const s=this.issuer[t];if("CN"===s.shortName)return s.value;if("E"===s.shortName)return s.value}return""}get isRoot(){return JSON.stringify(this.issuer)===JSON.stringify(this.subject)}subjectToString(){return this.subject?this.subject.map((t=>`${t.shortName}=${t.value}`)).join(", "):""}issuerToString(){return this.issuer?this.issuer.map((t=>`${t.shortName}=${t.value}`)).join(", "):""}downloadAsPEM(t){A.cert.asPEM(this.exportAsPemFormatted(),t||this.commonName)}downloadAsDER(t){A.cert.asDER(this.exportAsHexFormatted(),t||this.commonName)}}export{N as X}
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * © Peculiar Ventures https://peculiarventures.com/ - MIT License
3
3
  */
4
- import{r as t,c as i,h as e,H as s}from"./p-f7683ba5.js";import{i as o,a as r,b as a,c,d as n}from"./p-c72f8e8f.js";import"./p-fec9d812.js";import"./p-cff9655c.js";import{X as l}from"./p-ec8787ed.js";import{X as p,C as h,a as f}from"./p-ea9a6317.js";
4
+ import{r as t,c as i,h as e,H as s}from"./p-f7683ba5.js";import{i as o,a as r,b as a,c,d as n}from"./p-3c4e4245.js";import"./p-ec250cc4.js";import"./p-711b4e1e.js";import{X as l}from"./p-0f7868b1.js";import{X as p,C as h,a as f}from"./p-48a620ff.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
- */function d(t){return new Promise(((i,e)=>{const s=new FileReader;s.onload=()=>i({value:s.result,fileName:t.name,fileSize:t.size,sourceMime:t.type}),s.onerror=()=>e(s.error),s.readAsBinaryString(t)}))}const u=class{constructor(e){t(this,e),this.successParse=i(this,"successParse",7),this.clearCertificate=i(this,"clearCertificate",7),this.onClickDecode=()=>{const{value:t}=this.inputPaste;t&&this.decode(t)},this.onClickExample=()=>{this.decode(this.certificateExample)},this.onClickClear=()=>{this.clearValue()},this.onChangeInputFile=async t=>{const i=t.target;if(i.files){const t=await d(i.files[0]);"string"==typeof t.value&&this.decode(t.value),i.value=""}},this.onDropFile=async t=>{t.stopPropagation(),t.preventDefault();const i=t.dataTransfer;if(i.files){const t=await d(i.files[0]);"string"==typeof t.value&&this.decode(t.value)}}}componentDidLoad(){this.defaultCertificate&&setTimeout((()=>this.decode(this.defaultCertificate)),100)}clearValue(){this.inputPaste.value="",this.certificateDecoded=null,this.clearCertificate.emit()}setValue(t){this.certificateDecoded=t,this.inputPaste.value=t.exportAsPemFormatted(),this.successParse.emit(t.exportAsBase64())}decode(t){const i=o(t),e=r(t),s=a(t),d=c(t),u=n(t);let b,w;if(i&&!(e||d||s||u))return this.clearValue(),void alert("Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.");try{e&&(b=new l(t)),d&&(b=new p(t)),s&&(b=new h(t)),u&&(b=new f(t))}catch(t){w=t}if(!b)try{b=new l(t)}catch(t){w=t}if(!b)try{b=new p(t)}catch(t){w=t}if(!b)try{b=new h(t)}catch(t){w=t}if(!b)try{b=new f(t)}catch(t){w=t}b?this.setValue(b):(this.clearValue(),console.log(w),alert("Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL."))}render(){return e(s,null,e("textarea",{placeholder:"Certificate DER or PEM",class:"textarea",ref:t=>{this.inputPaste=t},onDrop:this.onDropFile}),e("div",{class:"controls"},e("peculiar-button",{fill:"fill",class:"button",onClick:this.onClickDecode},"Decode"),e("peculiar-button",{class:"button"},"Choose file",e("input",{type:"file",class:"input_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.onChangeInputFile,value:""})),e("peculiar-button",{class:"button",onClick:this.onClickClear},"Clear"),this.certificateExample&&e("peculiar-button",{class:"button",onClick:this.onClickExample},"Example")),this.certificateDecoded instanceof l&&e("peculiar-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}),this.certificateDecoded instanceof p&&e("peculiar-attribute-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}),this.certificateDecoded instanceof h&&e("peculiar-csr-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}),this.certificateDecoded instanceof f&&e("peculiar-crl-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}))}};u.style=":host{-webkit-box-sizing:border-box;box-sizing:border-box}:host *,:host *:before,:host *:after{-webkit-box-sizing:inherit;box-sizing:inherit}:host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;display:block;width:100%;font-size:0}.textarea{min-height:300px;width:100%;border-radius:3px;border-width:1px;border-style:solid;padding:14px;font-family:monospace;resize:vertical;background-color:white;background-color:rgba(var(--pv-color-light-rgb), 1);border-color:#d1d5d9;border-color:rgba(var(--pv-color-grey_3-rgb), 1);color:#2a3134;color:rgba(var(--pv-color-dark-rgb), 1);letter-spacing:0.03em;letter-spacing:var(--pv-letter-spacing-normal);font-size:14px;font-size:var(--pv-font-size-h7)}.controls{margin-top:10px}.button{position:relative}.button:not(:first-child){margin-left:10px}.viewer{margin-top:64px}.input_file{opacity:0;width:100%;height:100%;top:0;left:0;display:block;position:absolute}";export{u as peculiar_certificate_decoder}
11
+ */function u(t){return new Promise(((i,e)=>{const s=new FileReader;s.onload=()=>i({value:s.result,fileName:t.name,fileSize:t.size,sourceMime:t.type}),s.onerror=()=>e(s.error),s.readAsBinaryString(t)}))}const d=class{constructor(e){t(this,e),this.successParse=i(this,"successParse",7),this.clearCertificate=i(this,"clearCertificate",7),this.onClickDecode=()=>{const{value:t}=this.inputPaste;t&&this.decode(t)},this.onClickExample=()=>{this.decode(this.certificateExample)},this.onClickClear=()=>{this.clearValue()},this.onChangeInputFile=async t=>{const i=t.target;if(i.files){const t=await u(i.files[0]);"string"==typeof t.value&&this.decode(t.value),i.value=""}},this.onDropFile=async t=>{t.stopPropagation(),t.preventDefault();const i=t.dataTransfer;if(i.files){const t=await u(i.files[0]);"string"==typeof t.value&&this.decode(t.value)}}}componentDidLoad(){this.defaultCertificate&&setTimeout((()=>this.decode(this.defaultCertificate)),100)}clearValue(){this.inputPaste.value="",this.certificateDecoded=null,this.clearCertificate.emit()}setValue(t){this.certificateDecoded=t,this.inputPaste.value=t.exportAsPemFormatted(),this.successParse.emit(t.exportAsBase64())}decode(t){const i=o(t),e=r(t),s=a(t),u=c(t),d=n(t);let b,w;if(i&&!(e||u||s||d))return this.clearValue(),void alert("Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.");try{e&&(b=new l(t)),u&&(b=new p(t)),s&&(b=new h(t)),d&&(b=new f(t))}catch(t){w=t}if(!b)try{b=new l(t)}catch(t){w=t}if(!b)try{b=new p(t)}catch(t){w=t}if(!b)try{b=new h(t)}catch(t){w=t}if(!b)try{b=new f(t)}catch(t){w=t}b?this.setValue(b):(this.clearValue(),console.log(w),alert("Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL."))}render(){return e(s,null,e("textarea",{placeholder:"Certificate DER or PEM",class:"textarea",ref:t=>{this.inputPaste=t},onDrop:this.onDropFile}),e("div",{class:"controls"},e("peculiar-button",{fill:"fill",class:"button",onClick:this.onClickDecode},"Decode"),e("peculiar-button",{class:"button"},"Choose file",e("input",{type:"file",class:"input_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.onChangeInputFile,value:""})),e("peculiar-button",{class:"button",onClick:this.onClickClear},"Clear"),this.certificateExample&&e("peculiar-button",{class:"button",onClick:this.onClickExample},"Example")),this.certificateDecoded instanceof l&&e("peculiar-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}),this.certificateDecoded instanceof p&&e("peculiar-attribute-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}),this.certificateDecoded instanceof h&&e("peculiar-csr-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}),this.certificateDecoded instanceof f&&e("peculiar-crl-viewer",{certificate:this.certificateDecoded,class:"viewer",download:!0}))}};d.style=":host{-webkit-box-sizing:border-box;box-sizing:border-box}:host *,:host *:before,:host *:after{-webkit-box-sizing:inherit;box-sizing:inherit}:host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;display:block;width:100%;font-size:0}.textarea{min-height:300px;width:100%;border-radius:3px;border-width:1px;border-style:solid;padding:14px;font-family:monospace;resize:vertical;background-color:white;background-color:rgba(var(--pv-color-light-rgb), 1);border-color:#d1d5d9;border-color:rgba(var(--pv-color-grey_3-rgb), 1);color:#2a3134;color:rgba(var(--pv-color-dark-rgb), 1);letter-spacing:0.03em;letter-spacing:var(--pv-letter-spacing-normal);font-size:14px;font-size:var(--pv-font-size-h7)}.controls{margin-top:10px}.button{position:relative}.button:not(:first-child){margin-left:10px}.viewer{margin-top:64px}.input_file{opacity:0;width:100%;height:100%;top:0;left:0;display:block;position:absolute}";export{d as peculiar_certificate_decoder}