@peculiar/certificates-viewer 4.3.1 → 4.4.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.
- package/components/actions.js +1 -0
- package/components/actions.js.map +1 -1
- package/components/arrow_top.js +1 -0
- package/components/arrow_top.js.map +1 -1
- package/components/attribute-certificate-viewer.js +23 -22
- package/components/attribute-certificate-viewer.js.map +1 -1
- package/components/attribute.js +4 -3
- package/components/attribute.js.map +1 -1
- package/components/button-menu.js +4 -4
- package/components/button-menu.js.map +1 -1
- package/components/button.js +1 -0
- package/components/button.js.map +1 -1
- package/components/certificate-chain-viewer.js +64 -0
- package/components/certificate-chain-viewer.js.map +1 -0
- package/components/certificate-viewer.js +21 -21
- package/components/certificate-viewer.js.map +1 -1
- package/components/circular-progress.js +12 -6
- package/components/circular-progress.js.map +1 -1
- package/components/crl-viewer.js +22 -20
- package/components/crl-viewer.js.map +1 -1
- package/components/cross.js +1 -0
- package/components/cross.js.map +1 -1
- package/components/csr-viewer.js +13 -10
- package/components/csr-viewer.js.map +1 -1
- package/components/download.js +1096 -1598
- package/components/download.js.map +1 -1
- package/components/highlight-words.js +3 -4
- package/components/highlight-words.js.map +1 -1
- package/components/index.js +1 -0
- package/components/index2.js +4 -3
- package/components/index2.js.map +1 -1
- package/components/issuer_name.js +2 -1
- package/components/issuer_name.js.map +1 -1
- package/components/miscellaneous.js +21 -20
- package/components/miscellaneous.js.map +1 -1
- package/components/peculiar-attribute-certificate-viewer.js +1 -0
- package/components/peculiar-button-menu.js +1 -0
- package/components/peculiar-certificate-chain-viewer.d.ts +11 -0
- package/components/peculiar-certificate-chain-viewer.js +12 -0
- package/components/peculiar-certificate-chain-viewer.js.map +1 -0
- package/components/peculiar-certificate-decoder.js +106 -23
- package/components/peculiar-certificate-decoder.js.map +1 -1
- package/components/peculiar-certificate-viewer.js +1 -0
- package/components/peculiar-certificates-viewer.js +35 -14
- package/components/peculiar-certificates-viewer.js.map +1 -1
- package/components/peculiar-circular-progress.js +1 -0
- package/components/peculiar-crl-viewer.js +1 -0
- package/components/peculiar-csr-viewer.js +1 -0
- package/components/peculiar-highlight-words.js +1 -0
- package/components/peculiar-text-hider.js +3 -3
- package/components/peculiar-text-hider.js.map +1 -1
- package/components/pkcs10_certificate_request.js +8 -7
- package/components/pkcs10_certificate_request.js.map +1 -1
- package/components/read_file.js +1 -0
- package/components/read_file.js.map +1 -1
- package/components/subject_name.js +4 -3
- package/components/subject_name.js.map +1 -1
- package/dist/cjs/{actions-789906f5.js → actions-Dl4HXXlI.js} +3 -2
- package/dist/cjs/actions-Dl4HXXlI.js.map +1 -0
- package/dist/cjs/{app-globals-c20ffa41.js → app-globals-BOZYdIuK.js} +2 -1
- package/dist/cjs/app-globals-BOZYdIuK.js.map +1 -0
- package/dist/cjs/{arrow_top-76e4261e.js → arrow_top-DBMPHVlB.js} +3 -2
- package/dist/cjs/arrow_top-DBMPHVlB.js.map +1 -0
- package/dist/cjs/{button-87086210.js → button-C5jDF-CZ.js} +3 -2
- package/dist/cjs/button-C5jDF-CZ.js.map +1 -0
- package/dist/cjs/{certification_request-ad267278.js → certification_request-Bipg1Az7.js} +1119 -1620
- package/dist/cjs/certification_request-Bipg1Az7.js.map +1 -0
- package/dist/cjs/{cross-bd099933.js → cross-pi7K0cHC.js} +3 -2
- package/dist/cjs/cross-pi7K0cHC.js.map +1 -0
- package/dist/cjs/{download-820d66ba.js → download-D9skkVoT.js} +3 -2
- package/dist/cjs/download-D9skkVoT.js.map +1 -0
- package/dist/cjs/index-BO3rFndV.js +2301 -0
- package/dist/cjs/index-BO3rFndV.js.map +1 -0
- package/dist/cjs/index.cjs.js +11 -12
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/{link-a3d3799d.js → link-CwLq-Nge.js} +4 -3
- package/dist/cjs/link-CwLq-Nge.js.map +1 -0
- package/dist/cjs/loader.cjs.js +4 -5
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/{miscellaneous-67439e59.js → miscellaneous-C0sOAo-1.js} +25 -24
- package/dist/cjs/miscellaneous-C0sOAo-1.js.map +1 -0
- package/dist/cjs/peculiar-attribute-certificate-viewer.peculiar-certificate-chain-viewer.peculiar-crl-viewer.peculiar-csr-viewer.entry.cjs.js.map +1 -0
- package/dist/cjs/{peculiar-attribute-certificate-viewer_3.cjs.entry.js → peculiar-attribute-certificate-viewer_4.cjs.entry.js} +75 -45
- package/dist/cjs/peculiar-attribute-certificate-viewer_4.cjs.entry.js.map +1 -0
- package/dist/cjs/peculiar-button-menu.peculiar-circular-progress.peculiar-highlight-words.entry.cjs.js.map +1 -0
- package/dist/cjs/peculiar-button-menu_3.cjs.entry.js +20 -19
- package/dist/cjs/peculiar-button-menu_3.cjs.entry.js.map +1 -1
- package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js +104 -29
- package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js.map +1 -1
- package/dist/cjs/peculiar-certificate-decoder.entry.cjs.js.map +1 -0
- package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js +19 -21
- package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js.map +1 -1
- package/dist/cjs/peculiar-certificate-viewer.entry.cjs.js.map +1 -0
- package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js +43 -24
- package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js.map +1 -1
- package/dist/cjs/peculiar-certificates-viewer.entry.cjs.js.map +1 -0
- package/dist/cjs/peculiar-text-hider.cjs.entry.js +6 -8
- package/dist/cjs/peculiar-text-hider.cjs.entry.js.map +1 -1
- package/dist/cjs/peculiar-text-hider.entry.cjs.js.map +1 -0
- package/dist/cjs/peculiar.cjs.js +14 -13
- package/dist/cjs/peculiar.cjs.js.map +1 -1
- package/dist/cjs/{pkcs10_certificate_request-64898c88.js → pkcs10_certificate_request-BDz0P_px.js} +11 -10
- package/dist/cjs/pkcs10_certificate_request-BDz0P_px.js.map +1 -0
- package/dist/cjs/{read_file-2e22a97e.js → read_file-DWtcn3zU.js} +2 -1
- package/dist/cjs/read_file-DWtcn3zU.js.map +1 -0
- package/dist/cjs/{x509_certificate-4b0894c2.js → x509_certificate-DRvXOszL.js} +10 -9
- package/dist/cjs/x509_certificate-DRvXOszL.js.map +1 -0
- package/dist/cjs/{x509_crl-fc8d41a1.js → x509_crl-DVGVym_S.js} +17 -16
- package/dist/cjs/x509_crl-DVGVym_S.js.map +1 -0
- package/dist/collection/collection-manifest.json +3 -2
- package/dist/collection/components/attribute-certificate-viewer/attribute-certificate-viewer.js +24 -9
- package/dist/collection/components/attribute-certificate-viewer/attribute-certificate-viewer.js.map +1 -1
- package/dist/collection/components/button-menu/button-menu.js +4 -2
- package/dist/collection/components/button-menu/button-menu.js.map +1 -1
- package/dist/collection/components/certificate-chain-viewer/certificate-chain-viewer.css +1019 -0
- package/dist/collection/components/certificate-chain-viewer/certificate-chain-viewer.js +99 -0
- package/dist/collection/components/certificate-chain-viewer/certificate-chain-viewer.js.map +1 -0
- package/dist/collection/components/certificate-decoder/certificate-decoder.css +1 -4
- package/dist/collection/components/certificate-decoder/certificate-decoder.js +39 -20
- package/dist/collection/components/certificate-decoder/certificate-decoder.js.map +1 -1
- package/dist/collection/components/certificate-details-parts/miscellaneous.js.map +1 -1
- package/dist/collection/components/certificate-viewer/certificate-viewer.js +26 -10
- package/dist/collection/components/certificate-viewer/certificate-viewer.js.map +1 -1
- package/dist/collection/components/certificates-viewer/certificates-viewer.js +40 -11
- package/dist/collection/components/certificates-viewer/certificates-viewer.js.map +1 -1
- package/dist/collection/components/circular-progress/circular-progress.js +14 -4
- package/dist/collection/components/circular-progress/circular-progress.js.map +1 -1
- package/dist/collection/components/crl-viewer/crl-viewer.js +22 -8
- package/dist/collection/components/crl-viewer/crl-viewer.js.map +1 -1
- package/dist/collection/components/csr-viewer/csr-viewer.js +20 -7
- package/dist/collection/components/csr-viewer/csr-viewer.js.map +1 -1
- package/dist/collection/components/highlight-words/highlight-words.js +3 -2
- package/dist/collection/components/highlight-words/highlight-words.js.map +1 -1
- package/dist/collection/components/text-hider/text-hider.js +1 -1
- package/dist/collection/components/text-hider/text-hider.js.map +1 -1
- package/dist/collection/constants/oids.js +3 -0
- package/dist/collection/constants/oids.js.map +1 -1
- package/dist/collection/crypto/index.js +1 -0
- package/dist/collection/crypto/index.js.map +1 -1
- package/dist/collection/crypto/pem_converter.js +169 -0
- package/dist/collection/crypto/pem_converter.js.map +1 -0
- package/dist/collection/crypto/pkcs10_certificate_request.js +6 -5
- package/dist/collection/crypto/pkcs10_certificate_request.js.map +1 -1
- package/dist/collection/crypto/utils.js +18 -21
- package/dist/collection/crypto/utils.js.map +1 -1
- package/dist/collection/crypto/x509_attribute_certificate.js +6 -5
- package/dist/collection/crypto/x509_attribute_certificate.js.map +1 -1
- package/dist/collection/crypto/x509_certificate.js +6 -5
- package/dist/collection/crypto/x509_certificate.js.map +1 -1
- package/dist/collection/crypto/x509_certificates.js +69 -0
- package/dist/collection/crypto/x509_certificates.js.map +1 -0
- package/dist/collection/crypto/x509_crl.js +6 -5
- package/dist/collection/crypto/x509_crl.js.map +1 -1
- package/dist/collection/utils/index.js +0 -2
- package/dist/collection/utils/index.js.map +1 -1
- package/dist/collection/www-copy/index.js +123 -121
- package/dist/esm/{actions-aebcbc9d.js → actions-DzoPRObK.js} +3 -2
- package/dist/esm/actions-DzoPRObK.js.map +1 -0
- package/dist/esm/{app-globals-5e9b67e0.js → app-globals-zVR349KA.js} +2 -1
- package/dist/esm/app-globals-zVR349KA.js.map +1 -0
- package/dist/esm/{arrow_top-aee1ee02.js → arrow_top-CF9pv-tQ.js} +3 -2
- package/dist/esm/arrow_top-CF9pv-tQ.js.map +1 -0
- package/dist/esm/{button-a2fabf9a.js → button-Djn8UI82.js} +3 -2
- package/dist/esm/button-Djn8UI82.js.map +1 -0
- package/dist/esm/{certification_request-a4699dcf.js → certification_request-BTbyumBe.js} +1097 -1599
- package/dist/esm/certification_request-BTbyumBe.js.map +1 -0
- package/dist/esm/{cross-1377606f.js → cross-DdCuR1F2.js} +3 -2
- package/dist/esm/cross-DdCuR1F2.js.map +1 -0
- package/dist/esm/{download-14dc1047.js → download-Cqfc-Sxf.js} +3 -2
- package/dist/esm/download-Cqfc-Sxf.js.map +1 -0
- package/dist/esm/index-DDDrq3In.js +2292 -0
- package/dist/esm/index-DDDrq3In.js.map +1 -0
- package/dist/esm/index.js +11 -10
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{link-7e4e9060.js → link-BfDk078v.js} +4 -3
- package/dist/esm/link-BfDk078v.js.map +1 -0
- package/dist/esm/loader.js +5 -4
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/{miscellaneous-ba1fd2bd.js → miscellaneous-CGtCg3Q9.js} +27 -26
- package/dist/esm/miscellaneous-CGtCg3Q9.js.map +1 -0
- package/dist/esm/peculiar-attribute-certificate-viewer.peculiar-certificate-chain-viewer.peculiar-crl-viewer.peculiar-csr-viewer.entry.js.map +1 -0
- package/dist/esm/{peculiar-attribute-certificate-viewer_3.entry.js → peculiar-attribute-certificate-viewer_4.entry.js} +76 -45
- package/dist/esm/peculiar-attribute-certificate-viewer_4.entry.js.map +1 -0
- package/dist/esm/peculiar-button-menu.peculiar-circular-progress.peculiar-highlight-words.entry.js.map +1 -0
- package/dist/esm/peculiar-button-menu_3.entry.js +20 -17
- package/dist/esm/peculiar-button-menu_3.entry.js.map +1 -1
- package/dist/esm/peculiar-certificate-decoder.entry.js +105 -28
- package/dist/esm/peculiar-certificate-decoder.entry.js.map +1 -1
- package/dist/esm/peculiar-certificate-viewer.entry.js +19 -19
- package/dist/esm/peculiar-certificate-viewer.entry.js.map +1 -1
- package/dist/esm/peculiar-certificates-viewer.entry.js +43 -22
- package/dist/esm/peculiar-certificates-viewer.entry.js.map +1 -1
- package/dist/esm/peculiar-text-hider.entry.js +6 -6
- package/dist/esm/peculiar-text-hider.entry.js.map +1 -1
- package/dist/esm/peculiar.js +14 -12
- package/dist/esm/peculiar.js.map +1 -1
- package/dist/esm/{pkcs10_certificate_request-785a4794.js → pkcs10_certificate_request-CrA_WcgY.js} +11 -10
- package/dist/esm/pkcs10_certificate_request-CrA_WcgY.js.map +1 -0
- package/dist/esm/{read_file-bb0b1450.js → read_file-F2F0McJX.js} +2 -1
- package/dist/esm/read_file-F2F0McJX.js.map +1 -0
- package/dist/esm/{x509_certificate-05a23c0e.js → x509_certificate-DX7sKoAD.js} +10 -9
- package/dist/esm/x509_certificate-DX7sKoAD.js.map +1 -0
- package/dist/esm/{x509_crl-26081461.js → x509_crl-DRjoh8Yp.js} +17 -16
- package/dist/esm/x509_crl-DRjoh8Yp.js.map +1 -0
- package/dist/esm-es5/{actions-aebcbc9d.js → actions-DzoPRObK.js} +2 -2
- package/dist/esm-es5/actions-DzoPRObK.js.map +1 -0
- package/dist/esm-es5/{app-globals-5e9b67e0.js → app-globals-zVR349KA.js} +1 -1
- package/dist/esm-es5/app-globals-zVR349KA.js.map +1 -0
- package/dist/esm-es5/{arrow_top-aee1ee02.js → arrow_top-CF9pv-tQ.js} +2 -2
- package/dist/esm-es5/arrow_top-CF9pv-tQ.js.map +1 -0
- package/dist/esm-es5/{button-a2fabf9a.js → button-Djn8UI82.js} +2 -2
- package/dist/esm-es5/button-Djn8UI82.js.map +1 -0
- package/dist/esm-es5/certification_request-BTbyumBe.js +142 -0
- package/dist/esm-es5/certification_request-BTbyumBe.js.map +1 -0
- package/dist/esm-es5/{cross-1377606f.js → cross-DdCuR1F2.js} +2 -2
- package/dist/esm-es5/cross-DdCuR1F2.js.map +1 -0
- package/dist/esm-es5/{download-14dc1047.js → download-Cqfc-Sxf.js} +2 -2
- package/dist/esm-es5/download-Cqfc-Sxf.js.map +1 -0
- package/dist/esm-es5/index-DDDrq3In.js +6 -0
- package/dist/esm-es5/index-DDDrq3In.js.map +1 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/index.js.map +1 -1
- package/dist/esm-es5/link-BfDk078v.js +12 -0
- package/dist/esm-es5/link-BfDk078v.js.map +1 -0
- package/dist/esm-es5/loader.js +2 -2
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/esm-es5/{miscellaneous-ba1fd2bd.js → miscellaneous-CGtCg3Q9.js} +15 -15
- package/dist/esm-es5/miscellaneous-CGtCg3Q9.js.map +1 -0
- package/dist/esm-es5/peculiar-attribute-certificate-viewer.peculiar-certificate-chain-viewer.peculiar-crl-viewer.peculiar-csr-viewer.entry.js.map +1 -0
- package/dist/esm-es5/peculiar-attribute-certificate-viewer_4.entry.js +110 -0
- package/dist/esm-es5/peculiar-attribute-certificate-viewer_4.entry.js.map +1 -0
- package/dist/esm-es5/peculiar-button-menu.peculiar-circular-progress.peculiar-highlight-words.entry.js.map +1 -0
- package/dist/esm-es5/peculiar-button-menu_3.entry.js +1 -1
- package/dist/esm-es5/peculiar-button-menu_3.entry.js.map +1 -1
- package/dist/esm-es5/peculiar-certificate-decoder.entry.js +2 -2
- package/dist/esm-es5/peculiar-certificate-decoder.entry.js.map +1 -1
- package/dist/esm-es5/peculiar-certificate-viewer.entry.js +2 -2
- package/dist/esm-es5/peculiar-certificate-viewer.entry.js.map +1 -1
- package/dist/esm-es5/peculiar-certificates-viewer.entry.js +2 -2
- package/dist/esm-es5/peculiar-certificates-viewer.entry.js.map +1 -1
- package/dist/esm-es5/peculiar-text-hider.entry.js +1 -1
- package/dist/esm-es5/peculiar-text-hider.entry.js.map +1 -1
- package/dist/esm-es5/peculiar.js +1 -1
- package/dist/esm-es5/peculiar.js.map +1 -1
- package/dist/esm-es5/pkcs10_certificate_request-CrA_WcgY.js +19 -0
- package/dist/esm-es5/pkcs10_certificate_request-CrA_WcgY.js.map +1 -0
- package/dist/esm-es5/{read_file-bb0b1450.js → read_file-F2F0McJX.js} +1 -1
- package/dist/esm-es5/read_file-F2F0McJX.js.map +1 -0
- package/dist/esm-es5/x509_certificate-DX7sKoAD.js +12 -0
- package/dist/esm-es5/x509_certificate-DX7sKoAD.js.map +1 -0
- package/dist/esm-es5/x509_crl-DRjoh8Yp.js +19 -0
- package/dist/esm-es5/x509_crl-DRjoh8Yp.js.map +1 -0
- package/dist/peculiar/index.esm.js +1 -1
- package/dist/peculiar/index.esm.js.map +1 -1
- package/dist/peculiar/loader.esm.js.map +1 -0
- package/dist/peculiar/p-092074e8.system.entry.js +5 -0
- package/dist/peculiar/p-092074e8.system.entry.js.map +1 -0
- package/dist/peculiar/p-12d2e080.entry.js +5 -0
- package/dist/peculiar/p-12d2e080.entry.js.map +1 -0
- package/dist/peculiar/p-1af57833.system.entry.js +5 -0
- package/dist/peculiar/p-1af57833.system.entry.js.map +1 -0
- package/dist/peculiar/p-1b3855ec.system.entry.js +111 -0
- package/dist/peculiar/p-1b3855ec.system.entry.js.map +1 -0
- package/dist/peculiar/p-4IvcYmU7.js +19 -0
- package/dist/peculiar/p-4IvcYmU7.js.map +1 -0
- package/dist/peculiar/{p-9263e7ee.system.entry.js → p-73a75d1e.system.entry.js} +3 -3
- package/dist/peculiar/p-73a75d1e.system.entry.js.map +1 -0
- package/dist/peculiar/p-7Nmqck4T.system.js.map +1 -0
- package/dist/peculiar/p-80fc5538.entry.js +5 -0
- package/dist/peculiar/p-80fc5538.entry.js.map +1 -0
- package/dist/peculiar/{p-bafd67f3.entry.js → p-85667993.entry.js} +2 -2
- package/dist/peculiar/p-85667993.entry.js.map +1 -0
- package/dist/peculiar/p-B0CjUC4o.system.js +142 -0
- package/dist/peculiar/p-B0CjUC4o.system.js.map +1 -0
- package/dist/peculiar/{p-c241e4ba.system.js → p-B2YrZuK2.system.js} +2 -2
- package/dist/peculiar/p-B2YrZuK2.system.js.map +1 -0
- package/dist/peculiar/p-B7TxZGea.system.js +19 -0
- package/dist/peculiar/p-B7TxZGea.system.js.map +1 -0
- package/dist/peculiar/{p-243244af.system.js → p-B859JpGw.system.js} +3 -3
- package/dist/peculiar/p-B859JpGw.system.js.map +1 -0
- package/dist/peculiar/{p-eea904d7.system.js → p-BBgwMHRZ.system.js} +3 -3
- package/dist/peculiar/p-BBgwMHRZ.system.js.map +1 -0
- package/dist/peculiar/p-BCATfe_H.js +19 -0
- package/dist/peculiar/p-BCATfe_H.js.map +1 -0
- package/dist/peculiar/p-BFenL1ap.system.js +6 -0
- package/dist/peculiar/p-BFenL1ap.system.js.map +1 -0
- package/dist/peculiar/{p-ae91d778.js → p-BHBizfwo.js} +3 -3
- package/dist/peculiar/p-BHBizfwo.js.map +1 -0
- package/dist/peculiar/{p-5a662d6f.system.js → p-BOSH9vjy.system.js} +3 -3
- package/dist/{esm-es5/actions-aebcbc9d.js.map → peculiar/p-BOSH9vjy.system.js.map} +1 -1
- package/dist/peculiar/{p-8bbee8f4.system.js → p-BP2bmYR2.system.js} +3 -3
- package/dist/peculiar/p-BP2bmYR2.system.js.map +1 -0
- package/dist/peculiar/{p-9712b827.system.js → p-BRhx1gbw.system.js} +4 -4
- package/dist/peculiar/p-BRhx1gbw.system.js.map +1 -0
- package/dist/peculiar/p-BTbyumBe.js +142 -0
- package/dist/peculiar/p-BTbyumBe.js.map +1 -0
- package/dist/peculiar/p-BX9qW3ww.system.js.map +1 -0
- package/dist/peculiar/p-BbPo3hge.system.js.map +1 -0
- package/dist/peculiar/{p-e6a6e602.js → p-BisXzAqN.js} +2 -2
- package/dist/peculiar/p-BisXzAqN.js.map +1 -0
- package/dist/peculiar/p-Bw_icgVx.js +19 -0
- package/dist/peculiar/p-Bw_icgVx.js.map +1 -0
- package/dist/peculiar/p-C_7Koml8.system.js.map +1 -0
- package/dist/peculiar/{p-27ca6743.js → p-CeKqQ13Z.js} +4 -4
- package/dist/peculiar/p-CeKqQ13Z.js.map +1 -0
- package/dist/peculiar/p-CpTwQbPC.js +12 -0
- package/dist/peculiar/p-CpTwQbPC.js.map +1 -0
- package/dist/peculiar/p-Ct0zEUB_.js +369 -0
- package/dist/peculiar/p-Ct0zEUB_.js.map +1 -0
- package/dist/peculiar/{p-c2995a63.system.js → p-CwlxH4oM.system.js} +1 -1
- package/dist/peculiar/p-CwlxH4oM.system.js.map +1 -0
- package/dist/peculiar/p-D13P_msn.system.js.map +1 -0
- package/dist/peculiar/{p-55303453.system.js → p-D2QB-8Q6.system.js} +1 -1
- package/dist/peculiar/p-D2QB-8Q6.system.js.map +1 -0
- package/dist/peculiar/p-D5BWI7FK.system.js +5 -0
- package/dist/peculiar/p-D5BWI7FK.system.js.map +1 -0
- package/dist/peculiar/p-DDDrq3In.js +6 -0
- package/dist/peculiar/p-DDDrq3In.js.map +1 -0
- package/dist/peculiar/{p-a9487007.js → p-DhdG07f8.js} +2 -2
- package/dist/peculiar/p-DhdG07f8.js.map +1 -0
- package/dist/peculiar/{p-99efefea.js → p-DkAhB3Vy.js} +2 -2
- package/dist/peculiar/p-DkAhB3Vy.js.map +1 -0
- package/dist/peculiar/p-DxdVL_Kj.system.js +13 -0
- package/dist/peculiar/p-DxdVL_Kj.system.js.map +1 -0
- package/dist/peculiar/{p-25a532a3.js → p-F2F0McJX.js} +1 -1
- package/dist/peculiar/p-F2F0McJX.js.map +1 -0
- package/dist/peculiar/p-FVz6FuoZ.system.js.map +1 -0
- package/dist/peculiar/p-RW7UbzcZ.system.js.map +1 -0
- package/dist/peculiar/p-ab220e36.system.entry.js +5 -0
- package/dist/peculiar/p-ab220e36.system.entry.js.map +1 -0
- package/dist/peculiar/{p-67e82386.entry.js → p-c2a805b3.entry.js} +3 -3
- package/dist/peculiar/p-c2a805b3.entry.js.map +1 -0
- package/dist/peculiar/p-cae95996.system.entry.js +5 -0
- package/dist/peculiar/p-cae95996.system.entry.js.map +1 -0
- package/dist/peculiar/p-e7266b0a.entry.js +110 -0
- package/dist/peculiar/p-e7266b0a.entry.js.map +1 -0
- package/dist/peculiar/p-f4490197.entry.js +5 -0
- package/dist/peculiar/p-f4490197.entry.js.map +1 -0
- package/dist/peculiar/p-lnQq6VON.system.js +20 -0
- package/dist/peculiar/p-lnQq6VON.system.js.map +1 -0
- package/dist/peculiar/{p-2bc2abea.system.js → p-vMACJe_C.system.js} +54 -54
- package/dist/peculiar/{p-6e2ad7eb.js.map → p-vMACJe_C.system.js.map} +1 -1
- package/dist/peculiar/p-wgYkE8CV.system.js +5 -0
- package/dist/peculiar/p-wgYkE8CV.system.js.map +1 -0
- package/dist/peculiar/{p-dac867e8.js → p-zVR349KA.js} +1 -1
- package/dist/peculiar/p-zVR349KA.js.map +1 -0
- package/dist/peculiar/peculiar-attribute-certificate-viewer.peculiar-certificate-chain-viewer.peculiar-crl-viewer.peculiar-csr-viewer.entry.esm.js.map +1 -0
- package/dist/peculiar/peculiar-button-menu.peculiar-circular-progress.peculiar-highlight-words.entry.esm.js.map +1 -0
- package/dist/peculiar/peculiar-certificate-decoder.entry.esm.js.map +1 -0
- package/dist/peculiar/peculiar-certificate-viewer.entry.esm.js.map +1 -0
- package/dist/peculiar/peculiar-certificates-viewer.entry.esm.js.map +1 -0
- package/dist/peculiar/{p-b5389885.system.entry.js.map → peculiar-text-hider.entry.esm.js.map} +1 -1
- package/dist/peculiar/peculiar.esm.js +1 -1
- package/dist/peculiar/peculiar.esm.js.map +1 -1
- package/dist/peculiar/peculiar.js +1 -1
- package/dist/types/components/certificate-chain-viewer/certificate-chain-viewer.d.ts +21 -0
- package/dist/types/components/certificate-decoder/certificate-decoder.d.ts +5 -4
- package/dist/types/components/certificate-details-parts/miscellaneous.d.ts +2 -2
- package/dist/types/components/typography/typography.d.ts +0 -1
- package/dist/types/components.d.ts +33 -4
- package/dist/types/constants/oids.d.ts +3 -0
- package/dist/types/crypto/index.d.ts +1 -0
- package/dist/types/crypto/pem_converter.d.ts +71 -0
- package/dist/types/crypto/pkcs10_certificate_request.d.ts +2 -2
- package/dist/types/crypto/utils.d.ts +7 -3
- package/dist/types/crypto/x509_attribute_certificate.d.ts +2 -2
- package/dist/types/crypto/x509_certificate.d.ts +2 -2
- package/dist/types/crypto/x509_certificates.d.ts +9 -0
- package/dist/types/crypto/x509_crl.d.ts +2 -2
- package/dist/types/stencil-public-runtime.d.ts +10 -10
- package/dist/types/utils/index.d.ts +0 -2
- package/hydrate/index.d.ts +53 -12
- package/hydrate/index.js +28615 -18748
- package/hydrate/index.mjs +34759 -0
- package/hydrate/package.json +7 -1
- package/loader/cdn.js +1 -1
- package/loader/index.cjs.js +1 -1
- package/loader/index.d.ts +3 -0
- package/loader/index.es2017.js +1 -1
- package/loader/index.js +1 -1
- package/package.json +32 -29
- package/dist/cjs/actions-789906f5.js.map +0 -1
- package/dist/cjs/app-globals-c20ffa41.js.map +0 -1
- package/dist/cjs/arrow_top-76e4261e.js.map +0 -1
- package/dist/cjs/button-87086210.js.map +0 -1
- package/dist/cjs/certification_request-ad267278.js.map +0 -1
- package/dist/cjs/cross-bd099933.js.map +0 -1
- package/dist/cjs/download-820d66ba.js.map +0 -1
- package/dist/cjs/index-e2ae280a.js +0 -2730
- package/dist/cjs/index-e2ae280a.js.map +0 -1
- package/dist/cjs/link-a3d3799d.js.map +0 -1
- package/dist/cjs/miscellaneous-67439e59.js.map +0 -1
- package/dist/cjs/peculiar-attribute-certificate-viewer_3.cjs.entry.js.map +0 -1
- package/dist/cjs/pkcs10_certificate_request-64898c88.js.map +0 -1
- package/dist/cjs/read_file-2e22a97e.js.map +0 -1
- package/dist/cjs/x509_certificate-4b0894c2.js.map +0 -1
- package/dist/cjs/x509_crl-fc8d41a1.js.map +0 -1
- package/dist/collection/utils/validator.js +0 -25
- package/dist/collection/utils/validator.js.map +0 -1
- package/dist/esm/actions-aebcbc9d.js.map +0 -1
- package/dist/esm/app-globals-5e9b67e0.js.map +0 -1
- package/dist/esm/arrow_top-aee1ee02.js.map +0 -1
- package/dist/esm/button-a2fabf9a.js.map +0 -1
- package/dist/esm/certification_request-a4699dcf.js.map +0 -1
- package/dist/esm/cross-1377606f.js.map +0 -1
- package/dist/esm/download-14dc1047.js.map +0 -1
- package/dist/esm/index-ae188432.js +0 -2701
- package/dist/esm/index-ae188432.js.map +0 -1
- package/dist/esm/link-7e4e9060.js.map +0 -1
- package/dist/esm/miscellaneous-ba1fd2bd.js.map +0 -1
- package/dist/esm/peculiar-attribute-certificate-viewer_3.entry.js.map +0 -1
- package/dist/esm/pkcs10_certificate_request-785a4794.js.map +0 -1
- package/dist/esm/read_file-bb0b1450.js.map +0 -1
- package/dist/esm/x509_certificate-05a23c0e.js.map +0 -1
- package/dist/esm/x509_crl-26081461.js.map +0 -1
- package/dist/esm-es5/app-globals-5e9b67e0.js.map +0 -1
- package/dist/esm-es5/arrow_top-aee1ee02.js.map +0 -1
- package/dist/esm-es5/button-a2fabf9a.js.map +0 -1
- package/dist/esm-es5/certification_request-a4699dcf.js +0 -135
- package/dist/esm-es5/certification_request-a4699dcf.js.map +0 -1
- package/dist/esm-es5/cross-1377606f.js.map +0 -1
- package/dist/esm-es5/download-14dc1047.js.map +0 -1
- package/dist/esm-es5/index-ae188432.js +0 -6
- package/dist/esm-es5/index-ae188432.js.map +0 -1
- package/dist/esm-es5/link-7e4e9060.js +0 -12
- package/dist/esm-es5/link-7e4e9060.js.map +0 -1
- package/dist/esm-es5/miscellaneous-ba1fd2bd.js.map +0 -1
- package/dist/esm-es5/peculiar-attribute-certificate-viewer_3.entry.js +0 -110
- package/dist/esm-es5/peculiar-attribute-certificate-viewer_3.entry.js.map +0 -1
- package/dist/esm-es5/pkcs10_certificate_request-785a4794.js +0 -19
- package/dist/esm-es5/pkcs10_certificate_request-785a4794.js.map +0 -1
- package/dist/esm-es5/read_file-bb0b1450.js.map +0 -1
- package/dist/esm-es5/x509_certificate-05a23c0e.js +0 -12
- package/dist/esm-es5/x509_certificate-05a23c0e.js.map +0 -1
- package/dist/esm-es5/x509_crl-26081461.js +0 -19
- package/dist/esm-es5/x509_crl-26081461.js.map +0 -1
- package/dist/peculiar/p-1566ad92.system.entry.js +0 -5
- package/dist/peculiar/p-1566ad92.system.entry.js.map +0 -1
- package/dist/peculiar/p-243244af.system.js.map +0 -1
- package/dist/peculiar/p-25a532a3.js.map +0 -1
- package/dist/peculiar/p-27ca6743.js.map +0 -1
- package/dist/peculiar/p-2bc2abea.system.js.map +0 -1
- package/dist/peculiar/p-32807e5e.js +0 -135
- package/dist/peculiar/p-32807e5e.js.map +0 -1
- package/dist/peculiar/p-3cb79cd9.js +0 -6
- package/dist/peculiar/p-3cb79cd9.js.map +0 -1
- package/dist/peculiar/p-4bc5ddbe.js +0 -19
- package/dist/peculiar/p-4bc5ddbe.js.map +0 -1
- package/dist/peculiar/p-55303453.system.js.map +0 -1
- package/dist/peculiar/p-5a662d6f.system.js.map +0 -1
- package/dist/peculiar/p-5d1d4a96.entry.js +0 -110
- package/dist/peculiar/p-5d1d4a96.entry.js.map +0 -1
- package/dist/peculiar/p-67e82386.entry.js.map +0 -1
- package/dist/peculiar/p-6e2ad7eb.js +0 -369
- package/dist/peculiar/p-713563fb.entry.js +0 -5
- package/dist/peculiar/p-713563fb.entry.js.map +0 -1
- package/dist/peculiar/p-7ddd9a82.system.js +0 -19
- package/dist/peculiar/p-7ddd9a82.system.js.map +0 -1
- package/dist/peculiar/p-821bdcdc.system.js +0 -6
- package/dist/peculiar/p-821bdcdc.system.js.map +0 -1
- package/dist/peculiar/p-8393399a.system.js +0 -5
- package/dist/peculiar/p-8393399a.system.js.map +0 -1
- package/dist/peculiar/p-8bbee8f4.system.js.map +0 -1
- package/dist/peculiar/p-9263e7ee.system.entry.js.map +0 -1
- package/dist/peculiar/p-9712b827.system.js.map +0 -1
- package/dist/peculiar/p-98e3a016.system.js +0 -13
- package/dist/peculiar/p-98e3a016.system.js.map +0 -1
- package/dist/peculiar/p-99efefea.js.map +0 -1
- package/dist/peculiar/p-9ad547d2.system.entry.js +0 -5
- package/dist/peculiar/p-9ad547d2.system.entry.js.map +0 -1
- package/dist/peculiar/p-a1a48332.system.js +0 -5
- package/dist/peculiar/p-a1a48332.system.js.map +0 -1
- package/dist/peculiar/p-a9487007.js.map +0 -1
- package/dist/peculiar/p-ab5a4988.js +0 -12
- package/dist/peculiar/p-ab5a4988.js.map +0 -1
- package/dist/peculiar/p-ae44c2b0.system.js +0 -20
- package/dist/peculiar/p-ae44c2b0.system.js.map +0 -1
- package/dist/peculiar/p-ae91d778.js.map +0 -1
- package/dist/peculiar/p-afbd1c8e.entry.js +0 -5
- package/dist/peculiar/p-afbd1c8e.entry.js.map +0 -1
- package/dist/peculiar/p-b5389885.system.entry.js +0 -5
- package/dist/peculiar/p-bafd67f3.entry.js.map +0 -1
- package/dist/peculiar/p-c241e4ba.system.js.map +0 -1
- package/dist/peculiar/p-c2995a63.system.js.map +0 -1
- package/dist/peculiar/p-cd1b1876.entry.js +0 -5
- package/dist/peculiar/p-cd1b1876.entry.js.map +0 -1
- package/dist/peculiar/p-d5ba4fc2.js +0 -19
- package/dist/peculiar/p-d5ba4fc2.js.map +0 -1
- package/dist/peculiar/p-dac867e8.js.map +0 -1
- package/dist/peculiar/p-e37e4df2.system.js +0 -135
- package/dist/peculiar/p-e37e4df2.system.js.map +0 -1
- package/dist/peculiar/p-e4ad4f13.system.entry.js +0 -5
- package/dist/peculiar/p-e4ad4f13.system.entry.js.map +0 -1
- package/dist/peculiar/p-e6a6e602.js.map +0 -1
- package/dist/peculiar/p-eea904d7.system.js.map +0 -1
- package/dist/peculiar/p-f8c91ee4.js +0 -19
- package/dist/peculiar/p-f8c91ee4.js.map +0 -1
- package/dist/peculiar/p-f9c07207.system.entry.js +0 -111
- package/dist/peculiar/p-f9c07207.system.entry.js.map +0 -1
- package/dist/types/utils/validator.d.ts +0 -10
- package/loader/package.json +0 -11
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
var __awaiter=this&&this.__awaiter||function(e,i,t,n){function r(e){return e instanceof t?e:new t((function(i){i(e)}))}return new(t||(t=Promise))((function(t,c){function a(e){try{u(n.next(e))}catch(e){c(e)}}function s(e){try{u(n["throw"](e))}catch(e){c(e)}}function u(e){e.done?t(e.value):r(e.value).then(a,s)}u((n=n.apply(e,i||[])).next())}))};var __generator=this&&this.__generator||function(e,i){var t={label:0,sent:function(){if(c[0]&1)throw c[1];return c[1]},trys:[],ops:[]},n,r,c,a;return a={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(e){return function(i){return u([e,i])}}function u(s){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,s[0]&&(t=0)),t)try{if(n=1,r&&(c=s[0]&2?r["return"]:s[0]?r["throw"]||((c=r["return"])&&c.call(r),0):r.next)&&!(c=c.call(r,s[1])).done)return c;if(r=0,c)s=[s[0]&2,c.value];switch(s[0]){case 0:case 1:c=s;break;case 4:t.label++;return{value:s[1],done:false};case 5:t.label++;r=s[1];s=[0];continue;case 7:s=t.ops.pop();t.trys.pop();continue;default:if(!(c=t.trys,c=c.length>0&&c[c.length-1])&&(s[0]===6||s[0]===2)){t=0;continue}if(s[0]===3&&(!c||s[1]>c[0]&&s[1]<c[3])){t.label=s[1];break}if(s[0]===6&&t.label<c[1]){t.label=c[1];c=s;break}if(c&&t.label<c[2]){t.label=c[2];t.ops.push(s);break}if(c[2])t.ops.pop();t.trys.pop();continue}s=i.call(e,t)}catch(e){s=[6,e];r=0}finally{n=c=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};
|
|
2
|
-
/*!
|
|
3
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
4
|
-
*/System.register(["./p-821bdcdc.system.js","./p-c2995a63.system.js"],(function(e,i){"use strict";var t,n,r;return{setters:[function(i){t=i.p;n=i.b;e("setNonce",i.s)},function(e){r=e.g}],execute:function(){var e=this;var c=function(){var e=i.meta.url;var n={};if(e!==""){n.resourcesUrl=new URL(".",e).href}return t(n)};c().then((function(i){return __awaiter(e,void 0,void 0,(function(){return __generator(this,(function(e){switch(e.label){case 0:return[4,r()];case 1:e.sent();return[2,n([["p-9ad547d2.system",[[1,"peculiar-certificate-decoder",{certificateExamples:[16],defaultCertificate:[1,"default-certificate"],certificateDecoded:[32]}]]],["p-9263e7ee.system",[[1,"peculiar-certificates-viewer",{certificates:[16],filterWithSearch:[4,"filter-with-search"],highlightWithSearch:[4,"highlight-with-search"],mobileMediaQueryString:[1,"mobile-media-query-string"],mobileScreenView:[32],search:[32],certificatesDecoded:[32],expandedRow:[32],certificateSelectedForDetails:[32],isDecodeInProcess:[32]},null,{certificates:["watchCertificates"]}]]],["p-b5389885.system",[[6,"peculiar-text-hider",{opened:[32]}]]],["p-1566ad92.system",[[1,"peculiar-certificate-viewer",{certificate:[513],download:[516],authKeyIdParentLink:[513,"auth-key-id-parent-link"],authKeyIdSiblingsLink:[513,"auth-key-id-siblings-link"],subjectKeyIdChildrenLink:[513,"subject-key-id-children-link"],subjectKeyIdSiblingsLink:[513,"subject-key-id-siblings-link"],issuerDnLink:[513,"issuer-dn-link"],mobileMediaQueryString:[1,"mobile-media-query-string"],mobileScreenView:[32],isDecodeInProcess:[32]},null,{certificate:["watchCertificateAndDecode"]}]]],["p-f9c07207.system",[[1,"peculiar-attribute-certificate-viewer",{certificate:[1],download:[4],authKeyIdParentLink:[513,"auth-key-id-parent-link"],authKeyIdSiblingsLink:[513,"auth-key-id-siblings-link"],subjectKeyIdChildrenLink:[513,"subject-key-id-children-link"],subjectKeyIdSiblingsLink:[513,"subject-key-id-siblings-link"],mobileMediaQueryString:[1,"mobile-media-query-string"],mobileScreenView:[32],isDecodeInProcess:[32]},null,{certificate:["watchCertificateAndDecode"]}],[1,"peculiar-crl-viewer",{certificate:[513],download:[4],authKeyIdParentLink:[513,"auth-key-id-parent-link"],authKeyIdSiblingsLink:[513,"auth-key-id-siblings-link"],issuerDnLink:[513,"issuer-dn-link"],mobileMediaQueryString:[1,"mobile-media-query-string"],mobileScreenView:[32],isDecodeInProcess:[32]},null,{certificate:["watchCertificateAndDecode"]}],[1,"peculiar-csr-viewer",{certificate:[513],download:[4],subjectKeyIdChildrenLink:[513,"subject-key-id-children-link"],subjectKeyIdSiblingsLink:[513,"subject-key-id-siblings-link"],mobileMediaQueryString:[1,"mobile-media-query-string"],mobileScreenView:[32],isDecodeInProcess:[32]},null,{certificate:["watchCertificateAndDecode"]}]]],["p-e4ad4f13.system",[[2,"peculiar-button-menu",{groups:[16],open:[32]}],[1,"peculiar-circular-progress",{size:[2],width:[2]}],[1,"peculiar-highlight-words",{search:[1]}]]]],i)]}}))}))}))}}}));
|
|
5
|
-
//# sourceMappingURL=p-8393399a.system.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["patchBrowser","importMeta","module","meta","url","opts","resourcesUrl","URL","href","promiseResolve","then","options","__awaiter","_this","globalScripts","_a","sent","bootstrapLazy","certificateExamples","defaultCertificate","certificateDecoded","certificates","filterWithSearch","highlightWithSearch","mobileMediaQueryString","mobileScreenView","search","certificatesDecoded","expandedRow","certificateSelectedForDetails","isDecodeInProcess","opened","certificate","download","authKeyIdParentLink","authKeyIdSiblingsLink","subjectKeyIdChildrenLink","subjectKeyIdSiblingsLink","issuerDnLink","groups","open","size","width"],"sources":["../../node_modules/@stencil/core/internal/client/patch-browser.js","@lazy-browser-entrypoint?app-data=conditional"],"sourcesContent":["/*\n Stencil Client Patch Browser v4.13.0 | MIT Licensed | https://stenciljs.com\n */\nimport { BUILD, NAMESPACE } from '@stencil/core/internal/app-data';\nimport { consoleDevInfo, doc, promiseResolve, H } from '@stencil/core';\nconst patchBrowser = () => {\n // NOTE!! This fn cannot use async/await!\n if (BUILD.isDev && !BUILD.isTesting) {\n consoleDevInfo('Running in development mode.');\n }\n if (BUILD.cloneNodeFix) {\n // opted-in to polyfill cloneNode() for slot polyfilled components\n patchCloneNodeFix(H.prototype);\n }\n const scriptElm = BUILD.scriptDataOpts\n ? Array.from(doc.querySelectorAll('script')).find((s) => new RegExp(`\\/${NAMESPACE}(\\\\.esm)?\\\\.js($|\\\\?|#)`).test(s.src) ||\n s.getAttribute('data-stencil-namespace') === NAMESPACE)\n : null;\n const importMeta = import.meta.url;\n const opts = BUILD.scriptDataOpts ? (scriptElm || {})['data-opts'] || {} : {};\n if (importMeta !== '') {\n opts.resourcesUrl = new URL('.', importMeta).href;\n }\n return promiseResolve(opts);\n};\nconst patchCloneNodeFix = (HTMLElementPrototype) => {\n const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;\n HTMLElementPrototype.cloneNode = function (deep) {\n if (this.nodeName === 'TEMPLATE') {\n return nativeCloneNodeFn.call(this, deep);\n }\n const clonedNode = nativeCloneNodeFn.call(this, false);\n const srcChildNodes = this.childNodes;\n if (deep) {\n for (let i = 0; i < srcChildNodes.length; i++) {\n // Node.ATTRIBUTE_NODE === 2, and checking because IE11\n if (srcChildNodes[i].nodeType !== 2) {\n clonedNode.appendChild(srcChildNodes[i].cloneNode(true));\n }\n }\n }\n return clonedNode;\n };\n};\nexport { patchBrowser };\n","export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { patchBrowser } from '@stencil/core/internal/client/patch-browser';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\npatchBrowser().then(async (options) => {\n await globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n});\n"],"mappings":";;;0NAKA,IAAMA,EAAe,WAajB,IAAMC,EAAaC,EAAAC,KAAAC,IACnB,IAAMC,EAAqE,GAC3E,GAAIJ,IAAe,GAAI,CACnBI,EAAKC,aAAe,IAAIC,IAAI,IAAKN,GAAYO,IACrD,CACI,OAAOC,EAAeJ,EAC1B,ECpBAL,IAAeU,MAAK,SAAOC,GAAO,OAAAC,UAAAC,OAAA,qB,4DAChC,SAAMC,K,OAANC,EAAAC,OACA,SAAOC,EAAc,yDAAuC,CAAAC,oBAAA,KAAAC,mBAAA,0BAAAC,mBAAA,kEAAAC,aAAA,KAAAC,iBAAA,yBAAAC,oBAAA,4BAAAC,uBAAA,gCAAAC,iBAAA,KAAAC,OAAA,KAAAC,oBAAA,KAAAC,YAAA,KAAAC,8BAAA,KAAAC,kBAAA,YAAAT,aAAA,0EAAAU,OAAA,iEAAAC,YAAA,MAAAC,SAAA,MAAAC,oBAAA,gCAAAC,sBAAA,kCAAAC,yBAAA,qCAAAC,yBAAA,qCAAAC,aAAA,uBAAAd,uBAAA,gCAAAC,iBAAA,KAAAK,kBAAA,YAAAE,YAAA,oGAAAA,YAAA,IAAAC,SAAA,IAAAC,oBAAA,gCAAAC,sBAAA,kCAAAC,yBAAA,qCAAAC,yBAAA,qCAAAb,uBAAA,gCAAAC,iBAAA,KAAAK,kBAAA,YAAAE,YAAA,0DAAAA,YAAA,MAAAC,SAAA,IAAAC,oBAAA,gCAAAC,sBAAA,kCAAAG,aAAA,uBAAAd,uBAAA,gCAAAC,iBAAA,KAAAK,kBAAA,YAAAE,YAAA,0DAAAA,YAAA,MAAAC,SAAA,IAAAG,yBAAA,qCAAAC,yBAAA,qCAAAb,uBAAA,gCAAAC,iBAAA,KAAAK,kBAAA,YAAAE,YAAA,mFAAAO,OAAA,KAAAC,KAAA,wCAAAC,KAAA,IAAAC,MAAA,qCAAAhB,OAAA,SAAAf,I"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["DownloadIcon","exports","props","_a","color","h","xmlns","width","height","fill","concat","d"],"sources":["src/components/icons/download.tsx"],"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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const DownloadIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'secondary' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n fill=\"none\"\n >\n <path\n fill={`var(--pv-color-${color})`}\n d=\"M21 12h-2c-.6 0-1 .4-1 1s.4 1 1 1h2c.6 0 1 .4 1 1v7c0 .6-.4 1-1 1H9c-.6 0-1-.4-1-1v-7c0-.6.4-1 1-1h2c.6 0 1-.4 1-1s-.4-1-1-1H9c-1.7 0-3 1.3-3 3v7c0 1.7 1.3 3 3 3h12c1.7 0 3-1.3 3-3v-7c0-1.7-1.3-3-3-3Zm-9.7 5.7 3 3c.2.2.4.3.7.3.3 0 .5-.1.7-.3l3-3c.4-.4.4-1 0-1.4-.4-.4-1-.4-1.4 0L16 17.6V6c0-.6-.4-1-1-1s-1 .4-1 1v11.6l-1.3-1.3c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4Z\"\n />\n </svg>\n );\n};\n"],"mappings":";;;;;;;;;;;IAWaA,EAAYC,EAAA,KAA+C,SAACC,GAC/D,IAAAC,EAAwBD,EAAKE,MAA7BA,EAAKD,SAAA,EAAG,YAAWA,EAE3B,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEI,KAAM,kBAAAC,OAAkBN,EAAK,KAC7BO,EAAE,8WAIV,G"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["CertificateSummary","props","certificate","showIssuer","renderRow","name","value","h","Typography","variant","color","l10n","getString","subjectToString","issuerToString","serialNumber","version","validity","dateShort","notBefore","notAfter","certificatesViewerCss","PeculiarCertificatesViewerStyle0","CertificatesViewer","exports","this","isHasRoots","handleClickDetails","_this","certificateSelectedForDetails","detailsOpen","emit","handleModalClose","undefined","detailsClose","handleSearch","event","search","target","trim","class_1","prototype","handleMediaQueryChange","mobileScreenView","matches","componentWillLoad","certificatesDecodeAndSet","mobileMediaQuery","window","matchMedia","mobileMediaQueryString","addEventListener","bind","disconnectedCallback","removeEventListener","watchCertificates","newValue","oldValue","JSON","stringify","hasRoots","Array","isArray","certificates","data","_d","_i","length","decoded","X509Certificate","getThumbprint","_e","sent","push","body","tests","isRoot","console","error","error_1","isDecodeInProcess","certificatesDecoded","handleClickDownloadAsPem","downloadAsPEM","commonName","handleClickDownloadAsDer","downloadAsDER","handleClickRow","index","isExpandedRowClicked","expandedRow","getMaxColSpanValue","colSpan","renderCertificateButtonActions","isHasTestURLs","expired","revoked","valid","class","groups","__spreadArray","title","options","text","startIcon","DetailsIcon","onClick","DownloadIcon","_a","href","LinkIcon","_b","_c","renderExpandedRow","renderCertificatesRows","searchHighlight","highlightWithSearch","content","forEach","isExpandedRow","publicKeyValue","OIDs","signature","algorithm","filterWithSearch","certificateStringForSearch","issuerCommonName","thumbprints","join","toLowerCase","indexOf","certificate_row","m_expanded","key","Button","ArrowTopIcon","ArrowBottomIcon","renderCertificateDetailsModal","role","part","CrossIcon","renderSearch","onInput","type","disabled","placeholder","renderEmptyState","renderEmptySearchState","renderLoadingState","renderTableBody","certificatesRows","render","Host","String"],"sources":["src/components/certificate-summary/certificate-summary.tsx","src/components/certificates-viewer/certificates-viewer.scss?tag=peculiar-certificates-viewer&encapsulation=shadow","src/components/certificates-viewer/certificates-viewer.tsx"],"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 { FunctionalComponent, h } from '@stencil/core';\nimport type { X509Certificate } from '../../crypto';\nimport { dateShort, l10n } from '../../utils';\nimport { Typography } from '../typography';\n\ninterface CertificateSummaryProps {\n certificate: X509Certificate;\n showIssuer?: boolean;\n}\n\nexport const CertificateSummary: FunctionalComponent<CertificateSummaryProps> = (props) => {\n const {\n certificate,\n showIssuer,\n } = props;\n\n const renderRow = (name: string | string[], value: string | number) => (\n <tr>\n <td>\n <Typography\n variant=\"b2\"\n color=\"gray-9\"\n >\n {name}\n </Typography>\n </td>\n <td>\n <Typography\n variant=\"b2\"\n color=\"black\"\n >\n {value}\n </Typography>\n </td>\n </tr>\n );\n\n return (\n <table>\n <tbody>\n {renderRow(\n l10n.getString('subjectName'),\n certificate.subjectToString(),\n )}\n {showIssuer && renderRow(\n l10n.getString('issuerName'),\n certificate.issuerToString(),\n )}\n\n {renderRow(\n l10n.getString('serialNumber'),\n certificate.serialNumber,\n )}\n {renderRow(\n l10n.getString('version'),\n certificate.version,\n )}\n {renderRow(\n l10n.getString('validity'),\n certificate.validity,\n )}\n {renderRow(\n l10n.getString('issued'),\n dateShort(certificate.notBefore),\n )}\n {renderRow(\n l10n.getString('expired'),\n dateShort(certificate.notAfter),\n )}\n </tbody>\n </table>\n );\n};\n","@import '../../css/base.scss';\n\n:host {\n display: block;\n width: 100%;\n word-wrap: break-word;\n min-width: 280px;\n overflow: auto;\n position: relative;\n}\n\n.search_section {\n padding: var(--pv-size-base-4);\n border-bottom: 1px solid var(--pv-color-gray-4);\n}\n\n.input_search {\n height: var(--pv-size-base-8);\n width: 100%;\n outline: none;\n background-color: var(--pv-color-gray-1);\n padding: 0 var(--pv-size-base-2);\n border: 1px solid var(--pv-color-gray-7);\n border-radius: 4px;\n transition: background-color 200ms ease 0s, color 200ms ease 0s, border-color 200ms ease 0s;\n &::placeholder {\n color: var(--pv-color-gray-9);\n }\n}\n\ntable {\n width: 100%;\n table-layout: fixed;\n border-collapse: collapse;\n border-spacing: 0;\n\n td, th {\n border-bottom: 1px solid var(--pv-color-gray-4);\n vertical-align: top;\n text-align: left;\n\n &:first-child {\n padding-right: 0;\n width: var(--pv-size-base-10);\n }\n &:last-child {\n padding-left: 0;\n width: var(--pv-size-base-10);\n }\n }\n\n th {\n padding: var(--pv-size-base-2) var(--pv-size-base-4);\n\n &.col_action {\n padding: 0;\n }\n }\n\n td {\n padding: var(--pv-size-base-4);\n }\n\n tr {\n &.m_expanded {\n background: var(--pv-color-gray-1);\n\n > td {\n border-bottom: none;\n }\n }\n\n &.expanded_summary {\n background: var(--pv-color-gray-1);\n\n table {\n table-layout: initial;\n\n td {\n border-bottom: none;\n padding: var(--pv-size-base-2);\n\n &:first-child {\n width: 200px;\n }\n\n &:last-child {\n width: auto;\n }\n }\n }\n }\n }\n}\n\n.button_table_cell {\n margin-top: -3px;\n}\n\n.status_wrapper {\n text-align: center;\n height: var(--pv-size-base-16);\n vertical-align: middle;\n}\n\n.modal_wrapper {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 1;\n animation: fadeIn 200ms;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.modal_backdrop {\n background: var(--pv-color-black);\n z-index: -1;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n opacity: 0.5;\n}\n\n.modal_container {\n background: var(--pv-color-white);\n width: 100%;\n display: flex;\n max-height: calc(100% - 60px);\n flex-direction: column;\n margin: var(--pv-size-base-6);\n position: relative;\n outline: none;\n box-shadow: var(--pv-shadow-dark-hight);\n overflow: hidden;\n border: 0px;\n padding: 0px;\n max-width: 640px;\n border-radius: 4px;\n}\n\n.modal_header {\n padding: var(--pv-size-base-3) var(--pv-size-base-4);\n display: flex;\n flex: 0 0 auto;\n -webkit-box-pack: justify;\n justify-content: space-between;\n gap: var(--pv-size-base-2);\n border-bottom: 1px solid var(--pv-color-gray-5);\n}\n\n.modal_content {\n flex: 1 1 auto;\n overflow: auto;\n}\n\n:host([data-mobile-screen-view=\"true\"]) {\n table, tbody, tr, td {\n display: block;\n width: 100% !important;\n padding: 0;\n border: none;\n }\n\n thead {\n display: none;\n }\n\n table {\n tr {\n padding: var(--pv-size-base-2) 0;\n }\n\n .expanded_summary {\n padding: 0;\n }\n\n .certificate_row {\n border-bottom: 1px solid var(--pv-color-gray-5);\n padding: var(--pv-size-base-2) var(--pv-size-base-4);\n }\n\n .certificate_row_actions {\n padding-top: var(--pv-size-base-6);\n\n td {\n display: flex;\n justify-content: right;\n gap: var(--pv-size-base-4);\n }\n }\n }\n\n .button_table_cell {\n margin-top: 0;\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 {\n Component,\n h,\n Prop,\n State,\n Watch,\n Host,\n Event,\n EventEmitter,\n Build,\n} from '@stencil/core';\n\nimport { X509Certificate } from '../../crypto';\nimport { OIDs } from '../../constants/oids';\nimport { l10n } from '../../utils';\nimport { Typography } from '../typography';\nimport { CertificateSummary } from '../certificate-summary';\nimport { Button } from '../button';\nimport {\n DownloadIcon,\n LinkIcon,\n DetailsIcon,\n ArrowBottomIcon,\n ArrowTopIcon,\n CrossIcon,\n} from '../icons';\n\nexport interface ICertificate {\n value: string;\n name?: string;\n tests?: {\n valid?: string;\n revoked?: string;\n expired?: string;\n };\n}\n\ninterface ICertificateDecoded {\n body: X509Certificate;\n tests?: ICertificate['tests'];\n name?: string;\n}\n\n@Component({\n tag: 'peculiar-certificates-viewer',\n styleUrl: 'certificates-viewer.scss',\n shadow: true,\n})\nexport class CertificatesViewer {\n private isHasRoots: boolean = false;\n\n private mobileMediaQuery: MediaQueryList;\n\n /**\n * List of certificates values for decode and show in the list.\n * <br />\n * **NOTE**: If you do not provide a `name` value when\n * invocing the component it will take the first Subject CN value.\n * <br />\n * **NOTE**: If you do not provide a `tests` this column will be ommited from the rendered page.\n * <br />\n * **NOTE**: If the supplied certificates are self-signed the issuer column will be ommited.\n */\n @Prop() certificates: ICertificate[] = [];\n\n /**\n * Use filter in the list when search is changed.\n */\n @Prop() filterWithSearch: boolean = true;\n\n /**\n * Use highlight chapters in the list when search is changed.\n */\n @Prop() highlightWithSearch: boolean = true;\n\n /**\n * Mobile media query string to control screen view change.\n * <br />\n * **NOTE**: Based on https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia.\n * @example\n * (max-width: 900px)\n */\n @Prop({ reflect: false }) mobileMediaQueryString?: string = '(max-width: 900px)';\n\n /**\n * Emitted when the user open certificate details modal.\n */\n @Event() detailsOpen!: EventEmitter<X509Certificate>;\n\n /**\n * Emitted when the user close certificate details modal.\n */\n @Event() detailsClose!: EventEmitter<void>;\n\n @State() mobileScreenView: boolean = false;\n\n @State() search: string = '';\n\n @State() certificatesDecoded: ICertificateDecoded[] = [];\n\n @State() expandedRow?: number;\n\n @State() certificateSelectedForDetails?: X509Certificate;\n\n @State() isDecodeInProcess: boolean = true;\n\n private handleMediaQueryChange(event: MediaQueryListEvent) {\n this.mobileScreenView = event.matches;\n }\n\n componentWillLoad() {\n this.certificatesDecodeAndSet();\n\n if (Build.isBrowser) {\n this.mobileMediaQuery = window.matchMedia(this.mobileMediaQueryString);\n this.mobileMediaQuery.addEventListener('change', this.handleMediaQueryChange.bind(this));\n this.mobileScreenView = this.mobileMediaQuery.matches;\n }\n }\n\n disconnectedCallback() {\n this.mobileMediaQuery.removeEventListener('change', this.handleMediaQueryChange.bind(this));\n }\n\n @Watch('certificates')\n watchCertificates(newValue: ICertificate[], oldValue: ICertificate[]) {\n /**\n * Prevent rerender after set the same `certificates` prop.\n */\n if (JSON.stringify(newValue) !== JSON.stringify(oldValue)) {\n this.certificatesDecodeAndSet();\n }\n }\n\n async certificatesDecodeAndSet() {\n let hasRoots = false;\n\n if (!Array.isArray(this.certificates)) {\n return;\n }\n\n const data: ICertificateDecoded[] = [];\n\n // eslint-disable-next-line no-restricted-syntax\n for (const certificate of this.certificates) {\n try {\n const decoded = new X509Certificate(certificate.value);\n\n await decoded.getThumbprint('SHA-1');\n\n data.push({\n body: decoded,\n tests: certificate.tests,\n name: certificate.name,\n });\n\n if (!hasRoots && decoded.isRoot) {\n hasRoots = true;\n }\n } catch (error) {\n console.error('Error certificate parse:', error);\n }\n }\n\n this.isHasRoots = hasRoots;\n this.isDecodeInProcess = false;\n this.certificatesDecoded = data;\n }\n\n // eslint-disable-next-line class-methods-use-this\n private handleClickDownloadAsPem(certificate: ICertificateDecoded) {\n certificate.body.downloadAsPEM(certificate.name || certificate.body.commonName);\n }\n\n // eslint-disable-next-line class-methods-use-this\n private handleClickDownloadAsDer(certificate: ICertificateDecoded) {\n certificate.body.downloadAsDER(certificate.name || certificate.body.commonName);\n }\n\n private handleClickDetails = (certificate: X509Certificate) => {\n this.certificateSelectedForDetails = certificate;\n this.detailsOpen.emit(certificate);\n };\n\n private handleModalClose = () => {\n this.certificateSelectedForDetails = undefined;\n\n this.detailsClose.emit();\n };\n\n private handleClickRow(index: number) {\n const isExpandedRowClicked = this.expandedRow === index;\n\n this.expandedRow = isExpandedRowClicked\n ? undefined\n : index;\n }\n\n private handleSearch = (event: any) => {\n this.search = event.target.value.trim();\n };\n\n private getMaxColSpanValue() {\n let colSpan = 5;\n\n if (!this.isHasRoots) {\n colSpan += 1;\n }\n\n return colSpan;\n }\n\n private renderCertificateButtonActions(certificate: ICertificateDecoded) {\n const isHasTestURLs = certificate.tests\n && (certificate.tests.expired || certificate.tests.revoked || certificate.tests.valid);\n\n return (\n <peculiar-button-menu\n class=\"button_table_cell\"\n groups={[\n {\n title: l10n.getString('previewCertificate'),\n options: [\n {\n text: l10n.getString('viewDetails'),\n startIcon: <DetailsIcon />,\n onClick: () => this.handleClickDetails(certificate.body),\n },\n ],\n },\n {\n title: l10n.getString('downloadOptions'),\n options: [\n {\n text: l10n.getString('download.pem'),\n startIcon: <DownloadIcon />,\n onClick: () => this.handleClickDownloadAsPem(certificate),\n },\n {\n text: l10n.getString('download.der'),\n startIcon: <DownloadIcon />,\n onClick: () => this.handleClickDownloadAsDer(certificate),\n },\n ],\n },\n ...(isHasTestURLs ? [{\n title: l10n.getString('testURLs'),\n options: [\n ...(certificate.tests?.valid ? [{\n text: l10n.getString('valid'),\n href: certificate.tests.valid,\n startIcon: <LinkIcon />,\n }] : []),\n ...(certificate.tests?.revoked ? [{\n text: l10n.getString('revoked'),\n href: certificate.tests.revoked,\n startIcon: <LinkIcon />,\n }] : []),\n ...(certificate.tests?.expired ? [{\n text: l10n.getString('expired'),\n href: certificate.tests.expired,\n startIcon: <LinkIcon />,\n }] : []),\n ],\n }] : []),\n ]}\n />\n );\n }\n\n private renderExpandedRow(certificate: X509Certificate) {\n const colSpan = this.getMaxColSpanValue() - 2;\n\n return (\n <tr class=\"expanded_summary\">\n <td />\n <td colSpan={colSpan}>\n <CertificateSummary\n certificate={certificate}\n showIssuer={!certificate.isRoot}\n />\n </td>\n <td />\n </tr>\n );\n }\n\n private renderCertificatesRows() {\n const searchHighlight = this.highlightWithSearch\n ? this.search\n : '';\n const content = [];\n\n this.certificatesDecoded.forEach((certificate, index) => {\n const isExpandedRow = index === this.expandedRow;\n const publicKeyValue = OIDs[certificate.body.signature.algorithm]\n || certificate.body.signature.algorithm;\n\n if (this.filterWithSearch && this.search) {\n const certificateStringForSearch = [\n publicKeyValue,\n certificate.body.issuerCommonName,\n certificate.name,\n certificate.body.commonName,\n certificate.body.thumbprints['SHA-1'],\n ]\n .join(' ')\n .toLowerCase();\n\n if (certificateStringForSearch.indexOf(this.search.toLowerCase()) === -1) {\n return;\n }\n }\n\n if (this.mobileScreenView) {\n content.push([\n <tr\n class={{\n certificate_row: true,\n m_expanded: isExpandedRow,\n }}\n key={certificate.body.thumbprints['SHA-1']}\n >\n <td>\n <table>\n <tbody>\n {!this.isHasRoots && (\n <tr>\n <td>\n <Typography variant=\"b2\" color=\"gray-9\">\n {l10n.getString('issuer')}\n </Typography>\n </td>\n <td>\n <Typography variant=\"b2\" color=\"black\">\n <peculiar-highlight-words search={searchHighlight}>\n {certificate.body.issuerCommonName}\n </peculiar-highlight-words>\n </Typography>\n </td>\n </tr>\n )}\n <tr>\n <td>\n <Typography variant=\"b2\" color=\"gray-9\">\n {l10n.getString('name')}\n </Typography>\n </td>\n <td>\n <Typography variant=\"b2\" color=\"black\">\n <peculiar-highlight-words search={searchHighlight}>\n {certificate.name || certificate.body.commonName}\n </peculiar-highlight-words>\n </Typography>\n </td>\n </tr>\n <tr>\n <td>\n <Typography variant=\"b2\" color=\"gray-9\">\n {l10n.getString('publicKey')}\n </Typography>\n </td>\n <td>\n <Typography variant=\"b2\" color=\"black\">\n <peculiar-highlight-words search={searchHighlight}>\n {publicKeyValue}\n </peculiar-highlight-words>\n </Typography>\n </td>\n </tr>\n <tr>\n <td>\n <Typography variant=\"b2\" color=\"gray-9\">\n {l10n.getString('fingerprint')}\n (SHA-1)\n </Typography>\n </td>\n <td>\n <Typography variant=\"b2\" color=\"black\">\n <peculiar-highlight-words search={searchHighlight}>\n {certificate.body.thumbprints['SHA-1']}\n </peculiar-highlight-words>\n </Typography>\n </td>\n </tr>\n {isExpandedRow && this.renderExpandedRow(certificate.body)}\n <tr class=\"certificate_row_actions\">\n <td>\n {this.renderCertificateButtonActions(certificate)}\n <Button\n // eslint-disable-next-line react/jsx-no-bind\n onClick={this.handleClickRow.bind(this, index)}\n startIcon={isExpandedRow ? <ArrowTopIcon /> : <ArrowBottomIcon />}\n />\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n </tr>,\n ]);\n\n return;\n }\n\n content.push([\n <tr\n class={{\n m_expanded: isExpandedRow,\n }}\n key={certificate.body.thumbprints['SHA-1']}\n >\n <td>\n <Button\n class=\"button_table_cell\"\n // eslint-disable-next-line react/jsx-no-bind\n onClick={this.handleClickRow.bind(this, index)}\n startIcon={isExpandedRow ? <ArrowTopIcon /> : <ArrowBottomIcon />}\n />\n </td>\n {!this.isHasRoots && (\n <td>\n <Typography>\n <peculiar-highlight-words search={searchHighlight}>\n {certificate.body.issuerCommonName}\n </peculiar-highlight-words>\n </Typography>\n </td>\n )}\n <td>\n <Typography>\n <peculiar-highlight-words search={searchHighlight}>\n {certificate.name || certificate.body.commonName}\n </peculiar-highlight-words>\n </Typography>\n </td>\n <td>\n <Typography>\n <peculiar-highlight-words search={searchHighlight}>\n {publicKeyValue}\n </peculiar-highlight-words>\n </Typography>\n </td>\n <td>\n <Typography>\n <peculiar-highlight-words search={searchHighlight}>\n {certificate.body.thumbprints['SHA-1']}\n </peculiar-highlight-words>\n </Typography>\n </td>\n <td>\n {this.renderCertificateButtonActions(certificate)}\n </td>\n </tr>,\n isExpandedRow && this.renderExpandedRow(certificate.body),\n ]);\n });\n\n return content;\n }\n\n private renderCertificateDetailsModal() {\n if (!this.certificateSelectedForDetails) {\n return null;\n }\n\n return (\n <div\n class=\"modal_wrapper\"\n role=\"presentation\"\n aria-hidden=\"false\"\n part=\"presentation\"\n >\n <div\n class=\"modal_backdrop\"\n onClick={this.handleModalClose}\n aria-hidden=\"true\"\n />\n <div\n class=\"modal_container\"\n role=\"dialog\"\n part=\"presentation_container\"\n >\n <header class=\"modal_header\">\n <Typography\n variant=\"h4\"\n >\n {l10n.getString('certificateDetails')}\n </Typography>\n <Button\n onClick={this.handleModalClose}\n startIcon={<CrossIcon />}\n />\n </header>\n <div class=\"modal_content\">\n <peculiar-certificate-viewer\n certificate={this.certificateSelectedForDetails}\n mobileMediaQueryString={this.mobileMediaQueryString}\n />\n </div>\n </div>\n </div>\n );\n }\n\n private renderSearch() {\n if (!this.filterWithSearch && !this.highlightWithSearch) {\n return null;\n }\n\n return (\n <div class=\"search_section\">\n <input\n onInput={this.handleSearch}\n type=\"search\"\n value=\"\"\n class=\"input_search t-b3 c-black\"\n disabled={!this.certificatesDecoded.length}\n placeholder=\"Search\"\n />\n </div>\n );\n }\n\n private renderEmptyState() {\n const colSpan = this.getMaxColSpanValue();\n\n return (\n <tr>\n <td\n class=\"status_wrapper\"\n colSpan={colSpan}\n >\n <Typography\n variant=\"b1\"\n >\n There are no certificates available.\n </Typography>\n </td>\n </tr>\n );\n }\n\n private renderEmptySearchState() {\n const colSpan = this.getMaxColSpanValue();\n\n return (\n <tr>\n <td\n class=\"status_wrapper\"\n colSpan={colSpan}\n >\n <Typography\n variant=\"b1\"\n >\n No results found for “\n {this.search}\n “\n </Typography>\n </td>\n </tr>\n );\n }\n\n // eslint-disable-next-line class-methods-use-this\n private renderLoadingState() {\n return (\n <div class=\"loading_container\">\n <peculiar-circular-progress />\n </div>\n );\n }\n\n private renderTableBody() {\n if (this.isDecodeInProcess) {\n return null;\n }\n\n if (!this.certificatesDecoded.length) {\n return this.renderEmptyState();\n }\n\n const certificatesRows = this.renderCertificatesRows();\n\n if (this.search && !certificatesRows.length) {\n return this.renderEmptySearchState();\n }\n\n return certificatesRows;\n }\n\n render() {\n return (\n <Host\n data-mobile-screen-view={String(this.mobileScreenView)}\n >\n {this.renderSearch()}\n <table>\n {!this.mobileScreenView && (\n <thead>\n <tr>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <th />\n {!this.isHasRoots && (\n <th class=\"col_issuer\">\n <Typography variant=\"s2\">\n {l10n.getString('issuer')}\n </Typography>\n </th>\n )}\n <th class=\"col_name\">\n <Typography variant=\"s2\">\n {l10n.getString('name')}\n </Typography>\n </th>\n <th class=\"col_public_key\">\n <Typography variant=\"s2\">\n {l10n.getString('publicKey')}\n </Typography>\n </th>\n <th class=\"col_fingerprint\">\n <Typography variant=\"s2\">\n {l10n.getString('fingerprint')}\n (SHA-1)\n </Typography>\n </th>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <th />\n </tr>\n </thead>\n )}\n <tbody>\n {this.renderTableBody()}\n </tbody>\n </table>\n\n {this.renderCertificateDetailsModal()}\n {this.isDecodeInProcess && this.renderLoadingState()}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["variantMapping","h1","h2","h3","h4","h5","s1","s2","b1","b2","b3","btn1","btn2","c1","c2","Typography","exports","props","children","componentProp","component","_b","variant","_c","color","classProp","class","other","__rest","Component","h","Object","assign","_a","typography","concat","Boolean","Button","href","startIcon","onClick","isLink","TagType","type","target","rel","button","m_no_padding","length"],"sources":["src/components/typography/typography.tsx","src/components/button/button.tsx"],"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 { FunctionalComponent, h } from '@stencil/core';\nimport type { TypographyType, ColorType } from '../../interface';\n\ninterface TypographyProps {\n component?: keyof JSX.IntrinsicElements;\n variant?: TypographyType;\n color?: ColorType;\n class?: string;\n}\n\nconst variantMapping: Record<TypographyType, 'p' | 'span' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'> = {\n h1: 'h1',\n h2: 'h2',\n h3: 'h3',\n h4: 'h4',\n h5: 'h5',\n s1: 'h6',\n s2: 'h6',\n b1: 'p',\n b2: 'p',\n b3: 'p',\n btn1: 'span',\n btn2: 'span',\n c1: 'p',\n c2: 'p',\n};\n\nexport const Typography: FunctionalComponent<TypographyProps> = (props, children) => {\n const {\n component: componentProp,\n variant = 'b2',\n color = 'black',\n class: classProp,\n ...other\n } = props;\n\n const Component = componentProp || variantMapping[variant] || 'p';\n\n return (\n <Component\n {...other}\n class={{\n typography: true,\n [`t-${variant}`]: true,\n [`c-${color}`]: true,\n [classProp]: Boolean(classProp),\n }}\n >\n {children}\n </Component>\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 { FunctionalComponent, h, VNode } from '@stencil/core';\nimport { Typography } from '../typography';\n\nexport interface ButtonProps {\n href?: string;\n class?: string;\n startIcon?: VNode;\n onClick?: (event: MouseEvent) => void;\n}\n\nexport const Button: FunctionalComponent<ButtonProps> = (props, children) => {\n const {\n href,\n class: classProp,\n startIcon,\n onClick,\n } = props;\n\n const isLink = !!href;\n const TagType = isLink ? 'a' : 'button';\n\n return (\n <TagType\n type={!isLink && 'button'}\n href={isLink && href}\n target={isLink && '_blank'}\n rel={isLink && 'noreferrer noopener'}\n onClick={onClick}\n class={{\n button: true,\n // eslint-disable-next-line react/destructuring-assignment\n m_no_padding: children.length === 0,\n [classProp]: Boolean(classProp),\n }}\n >\n {startIcon}\n {/* eslint-disable-next-line react/destructuring-assignment */}\n {children.length > 0 && (\n <Typography\n variant=\"b3\"\n color=\"black\"\n component=\"span\"\n >\n {children}\n </Typography>\n )}\n </TagType>\n );\n};\n"],"mappings":";;;;;;;;;;;8WAkBA,IAAMA,EAAiG,CACrGC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,KAAM,OACNC,KAAM,OACNC,GAAI,IACJC,GAAI,K,IAGOC,EAAUC,EAAA,KAAyC,SAACC,EAAOC,G,MAEpE,IAAWC,EAKTF,EAAKG,UAJPC,EAIEJ,EAAKK,QAJPA,EAAOD,SAAA,EAAG,KAAIA,EACdE,EAGEN,EAAKO,MAHPA,EAAKD,SAAA,EAAG,QAAOA,EACRE,EAELR,EAAKS,MADJC,EAAKC,EACNX,EANE,yCAQN,IAAMY,EAAYV,GAAiBnB,EAAesB,IAAY,IAE9D,OACEQ,EAACD,EAASE,OAAAC,OAAA,GACJL,EAAK,CACTD,OAAKO,EAAA,CACHC,WAAY,MACZD,EAAC,KAAAE,OAAKb,IAAY,KAClBW,EAAC,KAAAE,OAAKX,IAAU,KAChBS,EAACR,GAAYW,QAAQX,G,KAGtBP,EAGP;;;;;;;mBCzCamB,EAAMrB,EAAA,KAAqC,SAACC,EAAOC,G,MAE5D,IAAAoB,EAIErB,EAAKqB,KAHAb,EAGLR,EAAKS,MAFPa,EAEEtB,EAAKsB,UADPC,EACEvB,EAAKuB,QAET,IAAMC,IAAWH,EACjB,IAAMI,EAAUD,EAAS,IAAM,SAE/B,OACEX,EAACY,EAAO,CACNC,MAAOF,GAAU,SACjBH,KAAMG,GAAUH,EAChBM,OAAQH,GAAU,SAClBI,IAAKJ,GAAU,sBACfD,QAASA,EACTd,OAAKO,EAAA,CACHa,OAAQ,KAERC,aAAc7B,EAAS8B,SAAW,GAClCf,EAACR,GAAYW,QAAQX,G,IAGtBc,EAEArB,EAAS8B,OAAS,GACjBlB,EAACf,EAAU,CACTO,QAAQ,KACRE,MAAM,QACNJ,UAAU,QAETF,GAKX,G"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
var __extends=this&&this.__extends||function(){var t=function(n,r){t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var r in n)if(Object.prototype.hasOwnProperty.call(n,r))t[r]=n[r]};return t(n,r)};return function(n,r){if(typeof r!=="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(n,r);function e(){this.constructor=n}n.prototype=r===null?Object.create(r):(e.prototype=r.prototype,new e)}}();var __awaiter=this&&this.__awaiter||function(t,n,r,e){function i(t){return t instanceof r?t:new r((function(n){n(t)}))}return new(r||(r=Promise))((function(r,u){function o(t){try{a(e.next(t))}catch(t){u(t)}}function f(t){try{a(e["throw"](t))}catch(t){u(t)}}function a(t){t.done?r(t.value):i(t.value).then(o,f)}a((e=e.apply(t,n||[])).next())}))};var __generator=this&&this.__generator||function(t,n){var r={label:0,sent:function(){if(u[0]&1)throw u[1];return u[1]},trys:[],ops:[]},e,i,u,o;return o={next:f(0),throw:f(1),return:f(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function f(t){return function(n){return a([t,n])}}function a(f){if(e)throw new TypeError("Generator is already executing.");while(o&&(o=0,f[0]&&(r=0)),r)try{if(e=1,i&&(u=f[0]&2?i["return"]:f[0]?i["throw"]||((u=i["return"])&&u.call(i),0):i.next)&&!(u=u.call(i,f[1])).done)return u;if(i=0,u)f=[f[0]&2,u.value];switch(f[0]){case 0:case 1:u=f;break;case 4:r.label++;return{value:f[1],done:false};case 5:r.label++;i=f[1];f=[0];continue;case 7:f=r.ops.pop();r.trys.pop();continue;default:if(!(u=r.trys,u=u.length>0&&u[u.length-1])&&(f[0]===6||f[0]===2)){r=0;continue}if(f[0]===3&&(!u||f[1]>u[0]&&f[1]<u[3])){r.label=f[1];break}if(f[0]===6&&r.label<u[1]){r.label=u[1];u=f;break}if(u&&r.label<u[2]){r.label=u[2];r.ops.push(f);break}if(u[2])r.ops.pop();r.trys.pop();continue}f=n.call(t,r)}catch(t){f=[6,t];i=0}finally{e=u=0}if(f[0]&5)throw f[1];return{value:f[0]?f[1]:void 0,done:true}}};
|
|
2
|
-
/*!
|
|
3
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
4
|
-
*/System.register(["./p-e37e4df2.system.js"],(function(t){"use strict";var n,r,e,i,u,o,f,a,c,s,h,l,v,b,m,w,g,y,_,p,d;return{setters:[function(t){n=t.A;r=t.v;e=t.K;i=t.C;u=t.N;o=t.L;f=t.G;a=t.y;c=t.x;s=t.z;h=t.B;l=t.R;v=t.M;b=t.O;m=t.P;w=t.Q;g=t.S;y=t.F;_=t.H;p=t.J;d=t.D}],execute:function(){
|
|
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
|
-
*/
|
|
12
|
-
var O=function(t){__extends(n,t);function n(n){var f=t.call(this,r(n),e)||this;f.thumbprints={};f.type="X.509 Certificate";f.tag="CERTIFICATE";var a=f.asn.tbsCertificate;f.serialNumber=i.ToHex(a.serialNumber);f.subject=new u(a.subject).toJSON();f.issuer=new u(a.issuer).toJSON();f.version=a.version+1;var c=a.validity.notBefore.utcTime||a.validity.notBefore.generalTime;if(!c){throw new Error("Cannot get 'notBefore' value")}f.notBefore=c;var s=a.validity.notAfter.utcTime||a.validity.notAfter.generalTime;if(!s){throw new Error("Cannot get 'notAfter' value")}f.notAfter=s;f.validity=o(f.notBefore,f.notAfter);return f}n.prototype.parseExtensions=function(){var t=this.asn.tbsCertificate;if(t.extensions){this.extensions=t.extensions.map((function(t){return new f(a.serialize(t))}))}};n.prototype.getPublicKeyInfo=function(t){var n=this;var r=t.subjectPublicKey,e=t.algorithm;var i;if(e.algorithm===c&&e.parameters){i=a.parse(e.parameters,s)}if(e.algorithm===h){i=a.parse(r,l)}if(e.algorithm===v){i=a.parse(r,b);i=i.map((function(t){return n.getPublicKeyInfo(t)}))}var u=a.serialize(t);return{params:i,value:u,algorithm:e.algorithm}};Object.defineProperty(n.prototype,"publicKey",{get:function(){return this.getPublicKeyInfo(this.asn.tbsCertificate.subjectPublicKeyInfo)},enumerable:false,configurable:true});Object.defineProperty(n.prototype,"signature",{get:function(){var t=this.asn,n=t.signatureValue,r=t.signatureAlgorithm;var e;if(r.algorithm===m){var i=a.parse(n,w);var u=a.parse(r.parameters,g);e=u.map((function(t,n){return Object.assign(Object.assign({},t),{value:i[n]})}))}return{params:e,value:n,algorithm:r.algorithm}},enumerable:false,configurable:true});n.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var n,r;if(t===void 0){t="SHA-1"}return __generator(this,(function(e){switch(e.label){case 0:e.trys.push([0,2,,3]);return[4,y(t,this.raw)];case 1:n=e.sent();if(n){this.thumbprints[t]=i.ToHex(n)}return[3,3];case 2:r=e.sent();console.error("Error thumbprint get:",r);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(n.prototype,"commonName",{get:function(){if(!this.subject){return""}for(var t=0;t<this.subject.length;t+=1){var n=this.subject[t];if(n.shortName==="CN"||n.shortName==="E"||n.shortName==="O"){return n.value}}return""},enumerable:false,configurable:true});Object.defineProperty(n.prototype,"issuerCommonName",{get:function(){if(!this.issuer){return""}for(var t=0;t<this.issuer.length;t+=1){var n=this.issuer[t];if(n.shortName==="CN"){return n.value}if(n.shortName==="E"){return n.value}}return""},enumerable:false,configurable:true});Object.defineProperty(n.prototype,"isRoot",{get:function(){return JSON.stringify(this.issuer)===JSON.stringify(this.subject)},enumerable:false,configurable:true});n.prototype.subjectToString=function(){if(!this.subject){return""}return this.subject.map((function(t){return"".concat(t.shortName,"=").concat(t.value)})).join(", ")};n.prototype.issuerToString=function(){if(!this.issuer){return""}return this.issuer.map((function(t){return"".concat(t.shortName,"=").concat(t.value)})).join(", ")};n.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return p(i.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(_(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return i.ToBase64(this.raw)}};n.prototype.downloadAsPEM=function(t){d.cert.asPEM(this.toString("pem"),t||this.commonName)};n.prototype.downloadAsDER=function(t){d.cert.asDER(this.raw,t||this.commonName)};return n}(n);t("X",O)}}}));
|
|
13
|
-
//# sourceMappingURL=p-98e3a016.system.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["DetailsIcon","props","color","h","xmlns","width","height","fill","d","LinkIcon","CrossIcon"],"sources":["src/components/icons/details.tsx","src/components/icons/link.tsx","src/components/icons/cross.tsx"],"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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const DetailsIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'secondary' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"31\"\n fill=\"none\"\n >\n <path\n fill={`var(--pv-color-${color})`}\n d=\"M6.71 19.79a1 1 0 0 0-.33-.21 1 1 0 0 0-.76 0 1 1 0 0 0-.33.21 1 1 0 0 0-.21.33 1 1 0 0 0 .21 1.09c.097.088.209.16.33.21a.94.94 0 0 0 .76 0 1.15 1.15 0 0 0 .33-.21 1 1 0 0 0 .21-1.09 1 1 0 0 0-.21-.33ZM10 11.5h14a1 1 0 0 0 0-2H10a1 1 0 0 0 0 2Zm-3.29 3.29a1 1 0 0 0-1.09-.21 1.15 1.15 0 0 0-.33.21 1 1 0 0 0-.21.33.94.94 0 0 0 0 .76c.05.121.122.233.21.33.097.088.209.16.33.21a.94.94 0 0 0 .76 0 1.15 1.15 0 0 0 .33-.21 1.15 1.15 0 0 0 .21-.33.94.94 0 0 0 0-.76 1 1 0 0 0-.21-.33ZM24 14.5H10a1 1 0 0 0 0 2h14a1 1 0 0 0 0-2ZM6.71 9.79a1 1 0 0 0-.33-.21 1 1 0 0 0-1.09.21 1.15 1.15 0 0 0-.21.33.94.94 0 0 0 0 .76c.05.121.122.233.21.33.097.088.209.16.33.21a1 1 0 0 0 1.09-.21 1.15 1.15 0 0 0 .21-.33.94.94 0 0 0 0-.76 1.15 1.15 0 0 0-.21-.33ZM24 19.5H10a1 1 0 0 0 0 2h14a1 1 0 0 0 0-2Z\"\n />\n </svg>\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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const LinkIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'secondary' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"31\"\n fill=\"none\"\n >\n <path\n fill={`var(--pv-color-${color})`}\n d=\"M21 14.32a1 1 0 0 0-1 1v7.18a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-11a1 1 0 0 1 1-1h7.18a1 1 0 0 0 0-2H8a3 3 0 0 0-3 3v11a3 3 0 0 0 3 3h11a3 3 0 0 0 3-3v-7.18a1 1 0 0 0-1-1Zm3.92-8.2a1 1 0 0 0-.54-.54A1 1 0 0 0 24 5.5h-6a1 1 0 1 0 0 2h3.59l-10.3 10.29a1.002 1.002 0 0 0 .325 1.639 1 1 0 0 0 1.095-.219L23 8.91v3.59a1 1 0 0 0 2 0v-6a1.001 1.001 0 0 0-.08-.38Z\"\n />\n </svg>\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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const CrossIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'gray-9' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n fill=\"none\"\n >\n <path\n fill={`var(--pv-color-${color})`}\n fill-rule=\"evenodd\"\n d=\"m16.37 15 5.442 5.44c.25.252.25.663 0 .914l-.459.457a.646.646 0 0 1-.913 0L15 16.371l-5.44 5.44a.648.648 0 0 1-.915 0l-.457-.457a.649.649 0 0 1 0-.913L13.63 15 8.188 9.56a.649.649 0 0 1 0-.914l.457-.457a.648.648 0 0 1 .915 0l5.44 5.44 5.44-5.44a.646.646 0 0 1 .913 0l.46.457c.25.25.25.662 0 .913L16.37 15Z\"\n clip-rule=\"evenodd\"\n />\n </svg>\n );\n};\n"],"mappings":";;;;;;;;;;SAWaA,EAA2DC,IACtE,MAAMC,MAAEA,EAAQ,aAAgBD,EAEhC,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEI,KAAM,kBAAkBL,KACxBM,EAAE,kxBAEA;;;;;;;SCdGC,EAAwDR,IACnE,MAAMC,MAAEA,EAAQ,aAAgBD,EAEhC,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEI,KAAM,kBAAkBL,KACxBM,EAAE,oWAEA;;;;;;;SCdGE,EAAyDT,IACpE,MAAMC,MAAEA,EAAQ,UAAaD,EAE7B,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEI,KAAM,kBAAkBL,KAAQ,YACtB,UACVM,EAAE,oTAAmT,YAC3S,YAER,S"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
var __awaiter=this&&this.__awaiter||function(t,e,r,o){function a(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(o.next(t))}catch(t){c(t)}}function n(t){try{s(o["throw"](t))}catch(t){c(t)}}function s(t){t.done?r(t.value):a(t.value).then(i,n)}s((o=o.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:[]},o,a,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(o)throw new TypeError("Generator is already executing.");while(i&&(i=0,n[0]&&(r=0)),r)try{if(o=1,a&&(c=n[0]&2?a["return"]:n[0]?a["throw"]||((c=a["return"])&&c.call(a),0):a.next)&&!(c=c.call(a,n[1])).done)return c;if(a=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++;a=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];a=0}finally{o=c=0}if(n[0]&5)throw n[1];return{value:n[0]?n[1]:void 0,done:true}}};
|
|
2
|
-
/*!
|
|
3
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
4
|
-
*/System.register(["./p-821bdcdc.system.js","./p-55303453.system.js","./p-e37e4df2.system.js","./p-98e3a016.system.js","./p-ae44c2b0.system.js","./p-7ddd9a82.system.js","./p-9712b827.system.js"],(function(t){"use strict";var e,r,o,a,c,i,n,s,v,p,l;return{setters:[function(t){e=t.r;r=t.c;o=t.h;a=t.H},function(t){c=t.a},function(){},function(t){i=t.X},function(t){n=t.X;s=t.a},function(t){v=t.P},function(t){p=t.T;l=t.B}],execute:function(){var h="*{-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 d=h;var b=t("peculiar_certificate_decoder",function(){function t(t){var o=this;e(this,t);this.successParse=r(this,"successParse",7);this.clearCertificate=r(this,"clearCertificate",7);this.handleClickDecode=function(){var t=o.inputPaste.value;if(t){o.decode(t)}};this.handleClickClear=function(){o.clearValue()};this.handleChangeInputFile=function(t){return __awaiter(o,void 0,void 0,(function(){var e,r;return __generator(this,(function(o){switch(o.label){case 0:e=t.target;if(!e.files)return[3,2];return[4,c(e.files[0])];case 1:r=o.sent();if(typeof r.value==="string"){this.decode(r.value)}e.value="";o.label=2;case 2:return[2]}}))}))};this.handleChangeExample=function(t){if(t.target.value){o.decode(t.target.value)}else{o.clearValue()}};this.handleDropFile=function(t){return __awaiter(o,void 0,void 0,(function(){var e,r;return __generator(this,(function(o){switch(o.label){case 0:t.stopPropagation();t.preventDefault();e=t.dataTransfer;if(!e.files)return[3,2];return[4,c(e.files[0])];case 1:r=o.sent();if(typeof r.value==="string"){this.decode(r.value)}o.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 i(t))})).catch((function(){return new n(t)})).catch((function(){return new v(t)})).catch((function(){return new s(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 o(a,{key:"7c3bfca68882e39705e9640f76754cce2e5d6c6a"},o("textarea",{key:"4d24f4b914f7f118efde2144e7597e0767d59ce8",placeholder:"Certificate DER or PEM",class:"textarea t-b2 c-black",ref:function(e){t.inputPaste=e},onDrop:this.handleDropFile}),o("div",{key:"06ba6e2b5658225a585ec9711e6f3f945ef3a840",class:"controls"},o("div",{key:"df2e115ea04d4eae7985f6ee57bfe47354f50240",class:"control_row"},o(p,{key:"05c30b2956055455cdb1f52b40995752dd0d7da4",variant:"b3",color:"secondary-tint-2"},"Drag or load file:"),o("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)&&o("div",{class:"control_row"},o(p,{variant:"b3",color:"secondary-tint-2"},"Load examples:"),o("select",{onChange:this.handleChangeExample},o("option",{value:""},"None"),this.certificateExamples.map((function(t){return o("option",{value:t.value},t.title)})))),o("div",{key:"6d1f010e03d7836459214e5c0abe1af7fbbe2a10",class:"control_row"},o(l,{key:"4038db36b62ff11f592f380f5c98bebb0014585e",onClick:this.handleClickDecode},"Decode"),o(l,{key:"fb7c30e61b10194b5f02a2cefa06191904f5ce46",onClick:this.handleClickClear},"Clear"))),this.certificateDecoded instanceof i&&o("peculiar-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof n&&o("peculiar-attribute-certificate-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof v&&o("peculiar-csr-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}),this.certificateDecoded instanceof s&&o("peculiar-crl-viewer",{certificate:this.certificateDecoded,class:"viewer",download:true}))};return t}());b.style=d}}}));
|
|
5
|
-
//# sourceMappingURL=p-9ad547d2.system.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["certificateDecoderCss","PeculiarCertificateDecoderStyle0","CertificateDecoder","exports","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":";;;ybAAA,IAAMA,EAAwB,knQAC9B,IAAAC,EAAeD,E,ICgCFE,EAAkBC,EAAA,0C,iIAwCrBC,KAAAC,kBAAoB,WAClB,IAAAC,EAAUC,EAAKC,WAAUF,MAEjC,GAAIA,EAAO,CACTC,EAAKE,OAAOH,E,GAIRF,KAAAM,iBAAmB,WACzBH,EAAKI,Y,EAGCP,KAAAQ,sBAAwB,SAAOC,GAAU,OAAAC,UAAAP,OAAA,qB,oEACzCQ,EAAUF,EAAMG,O,IAElBD,EAAQE,MAAR,YACW,SAAMC,EAAmBH,EAAQE,MAAM,K,OAA9CE,EAAOC,EAAAC,OAEb,UAAWF,EAAKb,QAAU,SAAU,CAClCF,KAAKK,OAAOU,EAAKb,M,CAGnBS,EAAQT,MAAQ,G,mCAIZF,KAAAkB,oBAAsB,SAACT,GAC7B,GAAIA,EAAMG,OAAOV,MAAO,CACtBC,EAAKE,OAAOI,EAAMG,OAAOV,M,KACpB,CACLC,EAAKI,Y,GAIDP,KAAAmB,eAAiB,SAAOV,GAAU,OAAAC,UAAAP,OAAA,qB,oEACxCM,EAAMW,kBACNX,EAAMY,iBAEAV,EAAUF,EAAMa,a,IAElBX,EAAQE,MAAR,YACW,SAAMC,EAAmBH,EAAQE,MAAM,K,OAA9CE,EAAOC,EAAAC,OAEb,UAAWF,EAAKb,QAAU,SAAU,CAClCF,KAAKK,OAAOU,EAAKb,M,2IArDvBqB,EAAAC,UAAAC,iBAAA,eAAAtB,EAAAH,KACE,GAAIA,KAAK0B,mBAAoB,CAI3BC,YAAW,WAAM,OAAAxB,EAAKE,OAAOF,EAAKuB,mBAAjB,GAAsC,I,GAqD3DH,EAAAC,UAAAjB,WAAA,WACEP,KAAKI,WAAWF,MAAQ,GACxBF,KAAK4B,mBAAqB,KAC1B5B,KAAK6B,iBAAiBC,M,EAGxBP,EAAAC,UAAAO,SAAA,SAAS7B,GACPF,KAAK4B,mBAAqB1B,EAC1BF,KAAKI,WAAWF,MAAQA,EAAM8B,SAAS,OACvChC,KAAKiC,aAAaH,KAAK5B,EAAM8B,SAAS,U,EAGxCT,EAAAC,UAAAnB,OAAA,SAAO6B,GAAP,IAAA/B,EAAAH,KACE,IAAImC,SAAQ,SAACC,GACXA,EAAQ,IAAIC,EAAgBH,G,IAE3BI,OAAM,WAAM,WAAIC,EAAyBL,EAA7B,IACZI,OAAM,WAAM,WAAIE,EAAyBN,EAA7B,IACZI,OAAM,WAAM,WAAIG,EAAQP,EAAZ,IACZQ,MAAK,SAACC,GAAwC,OAAAxC,EAAK4B,SAASY,EAAd,IAC9CL,OAAM,SAACM,GACNzC,EAAKI,aAELsC,QAAQC,IAAIF,GACZG,MAAM,kG,KAIZxB,EAAAC,UAAAwB,OAAA,eAAA7C,EAAAH,K,MACE,OACEiD,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,YAAAE,IAAA,2CACEC,YAAY,yBACZC,MAAM,wBACNC,IAAK,SAACC,GAASpD,EAAKC,WAAamD,CAAG,EACpCC,OAAQxD,KAAKmB,iBAEf8B,EAAA,OAAAE,IAAA,2CAAKE,MAAM,YACTJ,EAAA,OAAAE,IAAA,2CAAKE,MAAM,eACTJ,EAACQ,EAAU,CAAAN,IAAA,2CACTO,QAAQ,KACRC,MAAM,oBAAkB,sBAI1BV,EAAA,SAAAE,IAAA,2CACES,KAAK,OACLC,OAAO,uIACPC,SAAU9D,KAAKQ,sBACfN,MAAM,QAGT6D,EAAA/D,KAAKgE,uBAAmB,MAAAD,SAAA,SAAAA,EAAEE,SACzBhB,EAAA,OAAKI,MAAM,eACTJ,EAACQ,EAAU,CACTC,QAAQ,KACRC,MAAM,oBAAkB,kBAI1BV,EAAA,UAAQa,SAAU9D,KAAKkB,qBACrB+B,EAAA,UAAQ/C,MAAM,IAAE,QACfF,KAAKgE,oBAAoBE,KAAI,SAACC,GAAO,OACpClB,EAAA,UAAQ/C,MAAOiE,EAAQjE,OACpBiE,EAAQC,MAFyB,MAQ5CnB,EAAA,OAAAE,IAAA,2CAAKE,MAAM,eACTJ,EAACoB,EAAM,CAAAlB,IAAA,2CACLmB,QAAStE,KAAKC,mBAAiB,UAIjCgD,EAACoB,EAAM,CAAAlB,IAAA,2CACLmB,QAAStE,KAAKM,kBAAgB,WAMnCN,KAAK4B,8BAA8BS,GAClCY,EAAA,+BACEf,YAAalC,KAAK4B,mBAClByB,MAAM,SACNkB,SAAQ,OAGXvE,KAAK4B,8BAA8BW,GAClCU,EAAA,yCACEf,YAAalC,KAAK4B,mBAClByB,MAAM,SACNkB,SAAQ,OAGXvE,KAAK4B,8BAA8BY,GAClCS,EAAA,uBACEf,YAAalC,KAAK4B,mBAClByB,MAAM,SACNkB,SAAQ,OAGXvE,KAAK4B,8BAA8Ba,GAClCQ,EAAA,uBACEf,YAAalC,KAAK4B,mBAClByB,MAAM,SACNkB,SAAQ,O,WArMW,I"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
3
|
-
*/
|
|
4
|
-
System.register(["./p-e37e4df2.system.js","./p-55303453.system.js","./p-7ddd9a82.system.js","./p-9712b827.system.js","./p-243244af.system.js","./p-eea904d7.system.js","./p-8bbee8f4.system.js","./p-5a662d6f.system.js","./p-c241e4ba.system.js","./p-821bdcdc.system.js"],(function(s){"use strict";return{setters:[function(t){var n={};n.Download=t.D;n.downloadFromBuffer=t.d;s(n)},function(t){var n={};n.readAsArrayBuffer=t.r;n.readAsBinaryString=t.a;n.readAsDataUrl=t.b;n.readAsText=t.c;s(n)},function(t){s("Pkcs10CertificateRequest",t.P)},function(t){var n={};n.Button=t.B;n.Typography=t.T;s(n)},function(t){s("Link",t.L)},function(t){var n={};n.CrossIcon=t.C;n.DetailsIcon=t.D;n.LinkIcon=t.L;s(n)},function(t){s("DownloadIcon",t.D)},function(t){s("ActionsIcon",t.A)},function(t){var n={};n.ArrowBottomIcon=t.A;n.ArrowTopIcon=t.a;s(n)},function(){}],execute:function(){}}}));
|
|
5
|
-
//# sourceMappingURL=p-a1a48332.system.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["ActionsIcon","props","color","h","xmlns","width","height","fill","d"],"sources":["src/components/icons/actions.tsx"],"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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const ActionsIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'gray-10' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"31\"\n fill=\"none\"\n >\n <path\n fill={`var(--pv-color-${color})`}\n d=\"M15 13.5a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm-7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm14 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z\"\n />\n </svg>\n );\n};\n"],"mappings":";;;;;;;;;;SAWaA,EAA2DC,IACtE,MAAMC,MAAEA,EAAQ,WAAcD,EAE9B,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEI,KAAM,kBAAkBL,KACxBM,EAAE,8GAEA,S"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
3
|
-
*/
|
|
4
|
-
import{A as t,v as s,K as i,C as e,N as r,L as n,G as a,y as h,x as o,z as u,B as c,R as f,M as l,O as g,P as m,Q as p,S as b,F as E,H as w,J as C,D as N}from"./p-32807e5e.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 A extends t{constructor(t){super(s(t),i);this.thumbprints={};this.type="X.509 Certificate";this.tag="CERTIFICATE";const{tbsCertificate:a}=this.asn;this.serialNumber=e.ToHex(a.serialNumber);this.subject=new r(a.subject).toJSON();this.issuer=new r(a.issuer).toJSON();this.version=a.version+1;const h=a.validity.notBefore.utcTime||a.validity.notBefore.generalTime;if(!h){throw new Error("Cannot get 'notBefore' value")}this.notBefore=h;const o=a.validity.notAfter.utcTime||a.validity.notAfter.generalTime;if(!o){throw new Error("Cannot get 'notAfter' value")}this.notAfter=o;this.validity=n(this.notBefore,this.notAfter)}parseExtensions(){const{tbsCertificate:t}=this.asn;if(t.extensions){this.extensions=t.extensions.map((t=>new a(h.serialize(t))))}}getPublicKeyInfo(t){const{subjectPublicKey:s,algorithm:i}=t;let e;if(i.algorithm===o&&i.parameters){e=h.parse(i.parameters,u)}if(i.algorithm===c){e=h.parse(s,f)}if(i.algorithm===l){e=h.parse(s,g);e=e.map((t=>this.getPublicKeyInfo(t)))}const r=h.serialize(t);return{params:e,value:r,algorithm:i.algorithm}}get publicKey(){return this.getPublicKeyInfo(this.asn.tbsCertificate.subjectPublicKeyInfo)}get signature(){const{signatureValue:t,signatureAlgorithm:s}=this.asn;let i;if(s.algorithm===m){const e=h.parse(t,p);const r=h.parse(s.parameters,b);i=r.map(((t,s)=>Object.assign(Object.assign({},t),{value:e[s]})))}return{params:i,value:t,algorithm:s.algorithm}}async getThumbprint(t="SHA-1"){try{const s=await E(t,this.raw);if(s){this.thumbprints[t]=e.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(s.shortName==="CN"||s.shortName==="E"||s.shortName==="O"){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(s.shortName==="CN"){return s.value}if(s.shortName==="E"){return s.value}}return""}get isRoot(){return JSON.stringify(this.issuer)===JSON.stringify(this.subject)}subjectToString(){if(!this.subject){return""}return this.subject.map((t=>`${t.shortName}=${t.value}`)).join(", ")}issuerToString(){if(!this.issuer){return""}return this.issuer.map((t=>`${t.shortName}=${t.value}`)).join(", ")}toString(t="pem"){switch(t){case"hex":return C(e.ToHex(this.raw));case"pem":return`-----BEGIN ${this.tag}-----\n${w(this.toString("base64"))}\n-----END ${this.tag}-----`;default:return e.ToBase64(this.raw)}}downloadAsPEM(t){N.cert.asPEM(this.toString("pem"),t||this.commonName)}downloadAsDER(t){N.cert.asDER(this.raw,t||this.commonName)}}export{A as X};
|
|
12
|
-
//# sourceMappingURL=p-ab5a4988.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["X509Certificate","AsnData","constructor","raw","super","certificateRawToBuffer","Certificate","this","thumbprints","type","tag","tbsCertificate","asn","serialNumber","Convert","ToHex","subject","Name","toJSON","issuer","version","notBefore","validity","utcTime","generalTime","Error","notAfter","dateDiff","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","publicKey","subjectPublicKeyInfo","signature","signatureValue","signatureAlgorithm","id_alg_composite","compositeSignatureValues","CompositeSignatureValue","compositeParams","CompositeParams","index","Object","assign","getThumbprint","thumbprint","getCertificateThumbprint","error","console","commonName","i","length","name","shortName","issuerCommonName","isRoot","JSON","stringify","subjectToString","join","issuerToString","toString","format","hexFormat","base64Format","ToBase64","downloadAsPEM","Download","cert","asPEM","downloadAsDER","asDER"],"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,20 +0,0 @@
|
|
|
1
|
-
var __extends=this&&this.__extends||function(){var t=function(n,e){t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var e in n)if(Object.prototype.hasOwnProperty.call(n,e))t[e]=n[e]};return t(n,e)};return function(n,e){if(typeof e!=="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");t(n,e);function r(){this.constructor=n}n.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}}();var __awaiter=this&&this.__awaiter||function(t,n,e,r){function i(t){return t instanceof e?t:new e((function(n){n(t)}))}return new(e||(e=Promise))((function(e,u){function o(t){try{s(r.next(t))}catch(t){u(t)}}function c(t){try{s(r["throw"](t))}catch(t){u(t)}}function s(t){t.done?e(t.value):i(t.value).then(o,c)}s((r=r.apply(t,n||[])).next())}))};var __generator=this&&this.__generator||function(t,n){var e={label:0,sent:function(){if(u[0]&1)throw u[1];return u[1]},trys:[],ops:[]},r,i,u,o;return o={next:c(0),throw:c(1),return:c(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(t){return function(n){return s([t,n])}}function s(c){if(r)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(e=0)),e)try{if(r=1,i&&(u=c[0]&2?i["return"]:c[0]?i["throw"]||((u=i["return"])&&u.call(i),0):i.next)&&!(u=u.call(i,c[1])).done)return u;if(i=0,u)c=[c[0]&2,u.value];switch(c[0]){case 0:case 1:u=c;break;case 4:e.label++;return{value:c[1],done:false};case 5:e.label++;i=c[1];c=[0];continue;case 7:c=e.ops.pop();e.trys.pop();continue;default:if(!(u=e.trys,u=u.length>0&&u[u.length-1])&&(c[0]===6||c[0]===2)){e=0;continue}if(c[0]===3&&(!u||c[1]>u[0]&&c[1]<u[3])){e.label=c[1];break}if(c[0]===6&&e.label<u[1]){e.label=u[1];u=c;break}if(u&&e.label<u[2]){e.label=u[2];e.ops.push(c);break}if(u[2])e.ops.pop();e.trys.pop();continue}c=n.call(t,e)}catch(t){c=[6,t];i=0}finally{r=u=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}};
|
|
2
|
-
/*!
|
|
3
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
4
|
-
*/System.register(["./p-e37e4df2.system.js","./p-7ddd9a82.system.js"],(function(t){"use strict";var n,e,r,i,u,o,c,s,a,f,h,l,v,b;return{setters:[function(t){n=t.A;e=t.v;r=t.X;i=t.C;u=t.L;o=t.G;c=t.y;s=t.F;a=t.H;f=t.J;h=t.D;l=t.Y;v=t.N},function(t){b=t.A}],execute:function(){
|
|
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
|
-
*/
|
|
12
|
-
var w=function(t){__extends(n,t);function n(n){var o;var c=t.call(this,e(n),r)||this;c.thumbprints={};c.type="X.509 Attribute Certificate";c.tag="ATTRIBUTE CERTIFICATE";var s=c.asn.acinfo;c.serialNumber=i.ToHex(s.serialNumber);c.version=s.version;var a=s.attrCertValidityPeriod.notBeforeTime;if(!a){throw new Error("Cannot get 'notBefore' value")}c.notBefore=a;var f=s.attrCertValidityPeriod.notAfterTime;if(!f){throw new Error("Cannot get 'notAfter' value")}c.notAfter=f;c.validity=u(c.notBefore,c.notAfter);c.issuer=s.issuer.v1Form||((o=s.issuer.v2Form)===null||o===void 0?void 0:o.issuerName);c.holder=s.holder;return c}Object.defineProperty(n.prototype,"signature",{get:function(){var t=this.asn,n=t.signatureValue,e=t.signatureAlgorithm;return{value:n,algorithm:e.algorithm}},enumerable:false,configurable:true});n.prototype.parseExtensions=function(){var t=this.asn.acinfo;if(t.extensions){this.extensions=t.extensions.map((function(t){return new o(c.serialize(t))}))}};n.prototype.parseAttributes=function(){var t=this.asn.acinfo;if(t.attributes){this.attributes=t.attributes.map((function(t){return new b(c.serialize(t))}))}};n.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var n,e;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,s(t,this.raw)];case 1:n=r.sent();if(n){this.thumbprints[t]=i.ToHex(n)}return[3,3];case 2:e=r.sent();console.error("Error thumbprint get:",e);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(n.prototype,"commonName",{get:function(){return"attribute-certificate-".concat(this.thumbprints["SHA-1"])},enumerable:false,configurable:true});n.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return f(i.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(a(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return i.ToBase64(this.raw)}};n.prototype.downloadAsPEM=function(t){h.attrCert.asPEM(this.toString("pem"),t||this.commonName)};n.prototype.downloadAsDER=function(t){h.attrCert.asDER(this.raw,t||this.commonName)};return n}(n);t("X",w);
|
|
13
|
-
/**
|
|
14
|
-
* @license
|
|
15
|
-
* Copyright (c) Peculiar Ventures, LLC.
|
|
16
|
-
*
|
|
17
|
-
* This source code is licensed under the MIT license found in the
|
|
18
|
-
* LICENSE file in the root directory of this source tree.
|
|
19
|
-
*/var m=function(t){__extends(n,t);function n(n){var r=t.call(this,e(n),l)||this;r.thumbprints={};r.type="X.509 Certificate Revocation List";r.tag="X509 CRL";var i=r.asn.tbsCertList;r.issuer=new v(i.issuer).toJSON();r.version=i.version+1;r.lastUpdate=i.thisUpdate.getTime();r.nextUpdate=i.nextUpdate.getTime();r.revokedCertificates=(i.revokedCertificates||[]).map((function(t){var n;return{revocationDate:t.revocationDate,userCertificate:t.userCertificate,crlEntryExtensions:(n=t.crlEntryExtensions)===null||n===void 0?void 0:n.map((function(t){return new o(c.serialize(t))}))}}));return r}n.prototype.getThumbprint=function(){return __awaiter(this,arguments,void 0,(function(t){var n,e;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,s(t,this.raw)];case 1:n=r.sent();if(n){this.thumbprints[t]=i.ToHex(n)}return[3,3];case 2:e=r.sent();console.error("Error thumbprint get:",e);return[3,3];case 3:return[2]}}))}))};Object.defineProperty(n.prototype,"signature",{get:function(){var t=this.asn,n=t.signature,e=t.signatureAlgorithm;return{value:n,algorithm:e.algorithm}},enumerable:false,configurable:true});Object.defineProperty(n.prototype,"commonName",{get:function(){if(!this.issuer){return""}for(var t=0;t<this.issuer.length;t+=1){var n=this.issuer[t];if(n.shortName==="CN"||n.shortName==="E"||n.shortName==="O"){return n.value}}return""},enumerable:false,configurable:true});n.prototype.parseExtensions=function(){var t=this.asn.tbsCertList;if(t.crlExtensions){this.extensions=t.crlExtensions.map((function(t){return new o(c.serialize(t))}))}};n.prototype.toString=function(t){if(t===void 0){t="pem"}switch(t){case"hex":return f(i.ToHex(this.raw));case"pem":return"-----BEGIN ".concat(this.tag,"-----\n").concat(a(this.toString("base64")),"\n-----END ").concat(this.tag,"-----");default:return i.ToBase64(this.raw)}};n.prototype.downloadAsPEM=function(t){h.crl.asPEM(this.toString("pem"),t||this.commonName)};n.prototype.downloadAsDER=function(t){h.crl.asDER(this.raw,t||this.commonName)};return n}(n);t("a",m)}}}));
|
|
20
|
-
//# sourceMappingURL=p-ae44c2b0.system.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["__extends","X509AttributeCertificate","_super","raw","_this","call","this","certificateRawToBuffer","AttributeCertificate","thumbprints","type","tag","acinfo","asn","serialNumber","Convert","ToHex","version","notBefore","attrCertValidityPeriod","notBeforeTime","Error","notAfter","notAfterTime","validity","dateDiff","issuer","v1Form","_a","v2Form","issuerName","holder","Object","defineProperty","prototype","_b","signatureValue","signatureAlgorithm","value","algorithm","parseExtensions","extensions","map","e","Extension","AsnConvert","serialize","parseAttributes","attributes","Attribute","getThumbprint","getCertificateThumbprint","thumbprint","sent","console","error","error_1","concat","toString","format","hexFormat","base64Format","ToBase64","downloadAsPEM","name","Download","attrCert","asPEM","commonName","downloadAsDER","asDER","AsnData","X509Crl","CertificateList","tbsCertList","Name","toJSON","lastUpdate","thisUpdate","getTime","nextUpdate","revokedCertificates","revokedCertificate","revocationDate","userCertificate","crlEntryExtensions","error_2","signature","i","length","shortName","crlExtensions","crl"],"sources":["src/crypto/x509_attribute_certificate.ts","src/crypto/x509_crl.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 type { GeneralName } from '@peculiar/asn1-x509';\nimport { AttributeCertificate, Holder } from '@peculiar/asn1-x509-attr';\nimport { Convert } from 'pvtsutils';\n\nimport { dateDiff, Download } from '../utils';\n\nimport { AsnData } from './asn_data';\nimport { Extension, TExtensionValue } from './extension';\nimport { Attribute, TAttributeValue } from './attribute';\nimport {\n certificateRawToBuffer,\n hexFormat,\n base64Format,\n getCertificateThumbprint,\n} from './utils';\n\ninterface ISignature {\n algorithm: string;\n value: BufferSource;\n}\n\nexport class X509AttributeCertificate extends AsnData<AttributeCertificate> {\n public readonly serialNumber: string;\n\n public readonly version: number;\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 attributes: Attribute<TAttributeValue>[];\n\n public thumbprints: Record<string, string> = {};\n\n public readonly issuer: GeneralName[];\n\n public holder: Holder;\n\n public readonly type = 'X.509 Attribute Certificate';\n\n public readonly tag = 'ATTRIBUTE CERTIFICATE';\n\n constructor(raw: string) {\n super(certificateRawToBuffer(raw), AttributeCertificate);\n\n const { acinfo } = this.asn;\n\n this.serialNumber = Convert.ToHex(acinfo.serialNumber);\n this.version = acinfo.version;\n\n const notBefore = acinfo.attrCertValidityPeriod.notBeforeTime;\n\n if (!notBefore) {\n throw new Error(\"Cannot get 'notBefore' value\");\n }\n\n this.notBefore = notBefore;\n\n const notAfter = acinfo.attrCertValidityPeriod.notAfterTime;\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 this.issuer = acinfo.issuer.v1Form || acinfo.issuer.v2Form?.issuerName;\n this.holder = acinfo.holder;\n }\n\n public get signature(): ISignature {\n const { signatureValue, signatureAlgorithm } = this.asn;\n\n return {\n value: signatureValue,\n algorithm: signatureAlgorithm.algorithm,\n };\n }\n\n public parseExtensions() {\n const { acinfo } = this.asn;\n\n if (acinfo.extensions) {\n this.extensions = acinfo.extensions\n .map((e) => new Extension(AsnConvert.serialize(e)));\n }\n }\n\n public parseAttributes() {\n const { acinfo } = this.asn;\n\n if (acinfo.attributes) {\n this.attributes = acinfo.attributes\n .map((e) => new Attribute(AsnConvert.serialize(e)));\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 return `attribute-certificate-${this.thumbprints['SHA-1']}`;\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.attrCert.asPEM(\n this.toString('pem'),\n name || this.commonName,\n );\n }\n\n public downloadAsDER(name?: string) {\n Download.attrCert.asDER(\n this.raw,\n name || this.commonName,\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 */\nimport { AsnConvert } from '@peculiar/asn1-schema';\nimport { CertificateList, Time } from '@peculiar/asn1-x509';\nimport { Convert } from 'pvtsutils';\n\nimport { Download } from '../utils';\n\nimport { Extension, TExtensionValue } from './extension';\nimport { AsnData } from './asn_data';\nimport { Name, INameJSON } from './name';\nimport {\n certificateRawToBuffer,\n hexFormat,\n base64Format,\n getCertificateThumbprint,\n} from './utils';\n\ninterface ISignature {\n algorithm: string;\n value: BufferSource;\n}\n\nexport interface IRevokedCertificate {\n userCertificate: ArrayBuffer;\n revocationDate: Time;\n crlEntryExtensions?: Extension<TExtensionValue>[];\n}\n\nexport class X509Crl extends AsnData<CertificateList> {\n public readonly issuer: INameJSON[];\n\n public readonly version: number;\n\n public readonly lastUpdate: Date;\n\n public readonly nextUpdate: Date;\n\n public extensions: Extension<TExtensionValue>[];\n\n public revokedCertificates: IRevokedCertificate[];\n\n public thumbprints: Record<string, string> = {};\n\n public readonly type = 'X.509 Certificate Revocation List';\n\n public readonly tag = 'X509 CRL';\n\n constructor(raw: string) {\n super(certificateRawToBuffer(raw), CertificateList);\n\n const { tbsCertList } = this.asn;\n\n this.issuer = new Name(tbsCertList.issuer).toJSON();\n this.version = tbsCertList.version + 1;\n this.lastUpdate = tbsCertList.thisUpdate.getTime();\n this.nextUpdate = tbsCertList.nextUpdate.getTime();\n\n this.revokedCertificates = (tbsCertList.revokedCertificates || [])\n .map((revokedCertificate) => ({\n revocationDate: revokedCertificate.revocationDate,\n userCertificate: revokedCertificate.userCertificate,\n crlEntryExtensions: revokedCertificate.crlEntryExtensions\n ?.map((e) => new Extension(AsnConvert.serialize(e))),\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 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.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' || name.shortName === 'E' || name.shortName === 'O') {\n return name.value;\n }\n }\n\n return '';\n }\n\n public parseExtensions() {\n const { tbsCertList } = this.asn;\n\n if (tbsCertList.crlExtensions) {\n this.extensions = tbsCertList.crlExtensions\n .map((e) => new Extension(AsnConvert.serialize(e)));\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.crl.asPEM(\n this.toString('pem'),\n name || this.commonName,\n );\n }\n\n public downloadAsDER(name?: string) {\n Download.crl.asDER(\n this.raw,\n name || this.commonName,\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["DownloadIcon","props","color","h","xmlns","width","height","fill","d"],"sources":["src/components/icons/download.tsx"],"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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const DownloadIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'secondary' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n fill=\"none\"\n >\n <path\n fill={`var(--pv-color-${color})`}\n d=\"M21 12h-2c-.6 0-1 .4-1 1s.4 1 1 1h2c.6 0 1 .4 1 1v7c0 .6-.4 1-1 1H9c-.6 0-1-.4-1-1v-7c0-.6.4-1 1-1h2c.6 0 1-.4 1-1s-.4-1-1-1H9c-1.7 0-3 1.3-3 3v7c0 1.7 1.3 3 3 3h12c1.7 0 3-1.3 3-3v-7c0-1.7-1.3-3-3-3Zm-9.7 5.7 3 3c.2.2.4.3.7.3.3 0 .5-.1.7-.3l3-3c.4-.4.4-1 0-1.4-.4-.4-1-.4-1.4 0L16 17.6V6c0-.6-.4-1-1-1s-1 .4-1 1v11.6l-1.3-1.3c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4Z\"\n />\n </svg>\n );\n};\n"],"mappings":";;;;;;;;;;SAWaA,EAA4DC,IACvE,MAAMC,MAAEA,EAAQ,aAAgBD,EAEhC,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEI,KAAM,kBAAkBL,KACxBM,EAAE,8WAEA,S"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
3
|
-
*/
|
|
4
|
-
import{r as t,h as s,H as e,g as r}from"./p-3cb79cd9.js";import{T as i,B as a}from"./p-4bc5ddbe.js";import{A as o}from"./p-a9487007.js";const c='.sc-peculiar-button-menu-h{display:-ms-inline-flexbox;display:inline-flex;position:relative}.is_shown.sc-peculiar-button-menu-h .button_popover.sc-peculiar-button-menu:before{position:fixed;width:100%;height:100%;top:0;left:0;content:""}.is_shown.sc-peculiar-button-menu-h .popover.sc-peculiar-button-menu{display:block}.popover.sc-peculiar-button-menu{min-width:200px;position:absolute;top:100%;right:0;border-radius:4px;z-index:1;-webkit-box-shadow:var(--pv-shadow-light-medium);box-shadow:var(--pv-shadow-light-medium);background:var(--pv-color-white);padding:var(--pv-size-base-2) 0;margin:var(--pv-size-base) 0;display:none}.button_option.sc-peculiar-button-menu{width:100%;-ms-flex-pack:start;justify-content:flex-start;border-radius:0}.group.sc-peculiar-button-menu:not(:last-child){border-bottom:1px solid var(--pv-color-gray-5);padding-bottom:var(--pv-size-base-2);margin-bottom:var(--pv-size-base)}.group_title.sc-peculiar-button-menu{line-height:var(--pv-size-base-6);padding:0 var(--pv-size-base-2)}';const n=c;const d=class{constructor(s){t(this,s);this.handleClick=()=>{this.open=!this.open};this.groups=[];this.open=false}render(){return s(e,{key:"484c56eb147ee97b4be9d9c0c324a6192be5d1b4",class:{is_shown:this.open}},s(a,{key:"00b7864c569169633c30a69f26185891ba9c39d1",class:"button_popover",onClick:this.handleClick,startIcon:s(o,null)}),s("div",{key:"afe0500732f053c8b22c65ec11bd2010546fc5e6",role:"dialog",tabIndex:-1,class:"popover","aria-hidden":String(this.open)},this.groups.map((t=>s("div",{class:"group"},s(i,{variant:"c2",color:"gray-9",class:"group_title"},t.title),t.options.map((t=>s(a,{class:"button_option",startIcon:t.startIcon,href:t.href,onClick:s=>{s.stopPropagation();this.handleClick();if(t.onClick){t.onClick(s)}}},t.text))))))))}};d.style=n;const l=":host{display:block;width:100%}@-webkit-keyframes circular-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes circular-rotate{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes circular-dash{0%{stroke-dasharray:1, 200;stroke-dashoffset:0}50%{stroke-dasharray:100, 200;stroke-dashoffset:-15}to{stroke-dasharray:100, 200;stroke-dashoffset:-120}}@keyframes circular-dash{0%{stroke-dasharray:1, 200;stroke-dashoffset:0}50%{stroke-dasharray:100, 200;stroke-dashoffset:-15}to{stroke-dasharray:100, 200;stroke-dashoffset:-120}}.circle_progress{margin:0 auto}.circle_progress_svg{-webkit-animation:circular-rotate 1.4s linear infinite;animation:circular-rotate 1.4s linear infinite}.circle_progress_circle{stroke-linecap:round;-webkit-animation:circular-dash 1.4s ease-in-out infinite;animation:circular-dash 1.4s ease-in-out infinite;stroke-dasharray:80, 200;stroke-dashoffset:0;stroke:var(--pv-color-secondary)}.circle_progress_backdrop{stroke:var(--pv-color-gray-3)}";const h=l;const p=class{constructor(s){t(this,s);this.box=50;this.size=24;this.width=4}render(){return s(e,{key:"c53e431e95eb8d2328e4a612d678db3dbf4d98f8"},s("div",{key:"816dcbef66c4b41a68949cc61abce6fb238d6026",class:"circle_progress",style:{width:`${this.size}px`,height:`${this.size}px`}},s("svg",{key:"6858994e0d7c8166f24930dc161efb9f6f24cf5d",class:"circle_progress_svg",viewBox:`0 0 ${this.box} ${this.box}`},s("circle",{key:"721859338d69dadca5854258688263a83dcad136",class:"circle_progress_backdrop",cx:this.box/2,cy:this.box/2,r:this.box/2-5,fill:"none",style:{strokeWidth:`${this.width}px`}}),s("circle",{key:"aca038b2a6534a5c4cce604514612a48b4e25c9f",class:"circle_progress_circle",cx:this.box/2,cy:this.box/2,r:this.box/2-5,fill:"none",style:{strokeWidth:`${this.width}px`}}))))}};p.style=h;const u=":host{display:inline}::slotted(mark){background-color:var(--pv-color-attention-tint-4)}";const b=u;const f=class{constructor(s){t(this,s);this.tag="mark";this.search=undefined}componentDidLoad(){this.handleHighlightSearch()}componentDidUpdate(){this.handleHighlightSearch()}handleHighlightSearch(){const t=this.resetHighlightSearch(this.host.innerHTML);let s=t;if(this.search){const e=new RegExp(`(${this.search})`,"gi");s=t.replace(e,`<${this.tag}>$1</${this.tag}>`)}this.host.innerHTML=s}resetHighlightSearch(t){const s=new RegExp(`</?${this.tag}>`,"g");return t.replace(s,"")}render(){return s(e,{key:"138017ba171c6a5a3e9bf365cba2cb67fdd29b06"},s("slot",{key:"a1bf1fee5c437fe7e98bd954c11a5f282a5da02c"}))}get host(){return r(this)}};f.style=b;export{d as peculiar_button_menu,p as peculiar_circular_progress,f as peculiar_highlight_words};
|
|
5
|
-
//# sourceMappingURL=p-afbd1c8e.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["buttonMenuCss","PeculiarButtonMenuStyle0","ButtonMenu","this","handleClick","open","render","h","Host","key","class","is_shown","Button","onClick","startIcon","ActionsIcon","role","tabIndex","String","groups","map","group","Typography","variant","color","title","options","option","href","event","stopPropagation","text","circularProgressCss","PeculiarCircularProgressStyle0","CircularProgress","box","style","width","size","height","viewBox","cx","cy","r","fill","strokeWidth","highlightWordsCss","PeculiarHighlightWordsStyle0","HighlightWords","tag","componentDidLoad","handleHighlightSearch","componentDidUpdate","basicString","resetHighlightSearch","host","innerHTML","result","search","substring","RegExp","replace","source"],"sources":["src/components/button-menu/button-menu.scss?tag=peculiar-button-menu&encapsulation=scoped","src/components/button-menu/button-menu.tsx","src/components/circular-progress/circular-progress.scss?tag=peculiar-circular-progress&encapsulation=shadow","src/components/circular-progress/circular-progress.tsx","src/components/highlight-words/highlight-words.scss?tag=peculiar-highlight-words&encapsulation=shadow","src/components/highlight-words/highlight-words.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n position: relative;\n\n &.is_shown {\n .button_popover {\n &:before {\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n content: '';\n }\n }\n\n .popover {\n display: block;\n }\n }\n}\n\n.popover {\n min-width: 200px;\n position: absolute;\n top: 100%;\n right: 0;\n border-radius: 4px;\n z-index: 1;\n box-shadow: var(--pv-shadow-light-medium);\n background: var(--pv-color-white);\n padding: var(--pv-size-base-2) 0;\n margin: var(--pv-size-base) 0;\n display: none;\n}\n\n.button_option {\n width: 100%;\n justify-content: flex-start;\n border-radius: 0;\n}\n\n.group {\n &:not(:last-child) {\n border-bottom: 1px solid var(--pv-color-gray-5);\n padding-bottom: var(--pv-size-base-2);\n margin-bottom: var(--pv-size-base);\n }\n}\n\n.group_title {\n line-height: var(--pv-size-base-6);\n padding: 0 var(--pv-size-base-2);\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 h,\n State,\n Prop,\n Host,\n} from '@stencil/core';\nimport { Button, ButtonProps } from '../button';\nimport { Typography } from '../typography';\nimport { ActionsIcon } from '../icons';\n\nexport interface ButtonMenuGroupOptions extends ButtonProps {\n text: string | string[];\n}\n\nexport interface ButtonMenuGroup {\n title: string | string[];\n options: ButtonMenuGroupOptions[];\n}\n\n@Component({\n tag: 'peculiar-button-menu',\n styleUrl: 'button-menu.scss',\n scoped: true,\n})\nexport class ButtonMenu {\n @Prop() groups: ButtonMenuGroup[] = [];\n\n @State() open: boolean = false;\n\n handleClick = () => {\n this.open = !this.open;\n };\n\n render() {\n return (\n <Host\n class={{\n is_shown: this.open,\n }}\n >\n <Button\n class=\"button_popover\"\n onClick={this.handleClick}\n startIcon={<ActionsIcon />}\n />\n <div\n role=\"dialog\"\n tabIndex={-1}\n class=\"popover\"\n aria-hidden={String(this.open)}\n >\n {this.groups.map((group) => (\n <div class=\"group\">\n <Typography\n variant=\"c2\"\n color=\"gray-9\"\n class=\"group_title\"\n >\n {group.title}\n </Typography>\n {group.options.map((option) => (\n <Button\n class=\"button_option\"\n startIcon={option.startIcon}\n href={option.href}\n onClick={(event) => {\n event.stopPropagation();\n\n this.handleClick();\n\n if (option.onClick) {\n option.onClick(event);\n }\n }}\n >\n {option.text}\n </Button>\n ))}\n </div>\n ))}\n </div>\n </Host>\n );\n }\n}\n",":host {\n display: block;\n width: 100%;\n}\n\n@keyframes circular-rotate {\n to {\n transform: rotate(1turn);\n }\n}\n\n@keyframes circular-dash {\n 0% {\n stroke-dasharray: 1,200;\n stroke-dashoffset: 0;\n }\n\n 50% {\n stroke-dasharray: 100,200;\n stroke-dashoffset: -15;\n }\n\n to {\n stroke-dasharray: 100,200;\n stroke-dashoffset: -120;\n }\n}\n\n.circle_progress {\n margin: 0 auto;\n}\n\n.circle_progress_svg {\n animation: circular-rotate 1.4s linear infinite;\n}\n\n.circle_progress_circle {\n stroke-linecap: round;\n animation: circular-dash 1.4s ease-in-out infinite;\n stroke-dasharray: 80,200;\n stroke-dashoffset: 0;\n stroke: var(--pv-color-secondary);\n}\n\n.circle_progress_backdrop {\n stroke: var(--pv-color-gray-3);\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 Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'peculiar-circular-progress',\n styleUrl: 'circular-progress.scss',\n shadow: true,\n})\nexport class CircularProgress {\n /**\n * Width/height of progress circle.\n */\n @Prop() size: number = 24;\n\n /**\n * Stroke width of progress bar circle.\n */\n @Prop() width: number = 4;\n\n private box: number = 50;\n\n render() {\n return (\n <Host>\n <div\n class=\"circle_progress\"\n style={{\n width: `${this.size}px`,\n height: `${this.size}px`,\n }}\n >\n <svg\n class=\"circle_progress_svg\"\n viewBox={`0 0 ${this.box} ${this.box}`}\n >\n <circle\n class=\"circle_progress_backdrop\"\n cx={this.box / 2}\n cy={this.box / 2}\n r={(this.box / 2) - 5}\n fill=\"none\"\n style={{\n strokeWidth: `${this.width}px`,\n }}\n />\n <circle\n class=\"circle_progress_circle\"\n cx={this.box / 2}\n cy={this.box / 2}\n r={(this.box / 2) - 5}\n fill=\"none\"\n style={{\n strokeWidth: `${this.width}px`,\n }}\n />\n </svg>\n </div>\n </Host>\n );\n }\n}\n",":host {\n display: inline;\n}\n\n::slotted(mark) {\n background-color: var(--pv-color-attention-tint-4);\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, Host, h, Element, Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'peculiar-highlight-words',\n styleUrl: 'highlight-words.scss',\n shadow: true,\n})\nexport class HighlightWords {\n @Element() host: HTMLElement;\n\n @Prop() search: string;\n\n private tag: string = 'mark';\n\n componentDidLoad() {\n this.handleHighlightSearch();\n }\n\n componentDidUpdate() {\n this.handleHighlightSearch();\n }\n\n handleHighlightSearch() {\n const basicString = this.resetHighlightSearch(this.host.innerHTML);\n let result = basicString;\n\n if (this.search) {\n const substring = new RegExp(`(${this.search})`, 'gi');\n\n result = basicString.replace(substring, `<${this.tag}>$1</${this.tag}>`);\n }\n\n this.host.innerHTML = result;\n }\n\n resetHighlightSearch(source: string) {\n // eslint-disable-next-line no-useless-escape\n const substring = new RegExp(`<\\/?${this.tag}>`, 'g');\n\n return source.replace(substring, '');\n }\n\n render() {\n return (\n <Host>\n <slot />\n </Host>\n );\n }\n}\n"],"mappings":";;;wIAAA,MAAMA,EAAgB,s/BACtB,MAAAC,EAAeD,E,MCgCFE,EAAU,M,yBAKrBC,KAAAC,YAAc,KACZD,KAAKE,MAAQF,KAAKE,IAAI,E,YALY,G,UAEX,K,CAMzB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACLC,SAAUR,KAAKE,OAGjBE,EAACK,EAAM,CAAAH,IAAA,2CACLC,MAAM,iBACNG,QAASV,KAAKC,YACdU,UAAWP,EAACQ,EAAW,QAEzBR,EAAA,OAAAE,IAAA,2CACEO,KAAK,SACLC,UAAW,EACXP,MAAM,UAAS,cACFQ,OAAOf,KAAKE,OAExBF,KAAKgB,OAAOC,KAAKC,GAChBd,EAAA,OAAKG,MAAM,SACTH,EAACe,EAAU,CACTC,QAAQ,KACRC,MAAM,SACNd,MAAM,eAELW,EAAMI,OAERJ,EAAMK,QAAQN,KAAKO,GAClBpB,EAACK,EAAM,CACLF,MAAM,gBACNI,UAAWa,EAAOb,UAClBc,KAAMD,EAAOC,KACbf,QAAUgB,IACRA,EAAMC,kBAEN3B,KAAKC,cAEL,GAAIuB,EAAOd,QAAS,CAClBc,EAAOd,QAAQgB,E,IAIlBF,EAAOI,Y,aCpF1B,MAAMC,EAAsB,2/BAC5B,MAAAC,EAAeD,E,MCmBFE,EAAgB,M,yBAWnB/B,KAAAgC,IAAc,G,UAPC,G,WAKC,C,CAIxB,MAAA7B,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,OAAAE,IAAA,2CACEC,MAAM,kBACN0B,MAAO,CACLC,MAAO,GAAGlC,KAAKmC,SACfC,OAAQ,GAAGpC,KAAKmC,WAGlB/B,EAAA,OAAAE,IAAA,2CACEC,MAAM,sBACN8B,QAAS,OAAOrC,KAAKgC,OAAOhC,KAAKgC,OAEjC5B,EAAA,UAAAE,IAAA,2CACEC,MAAM,2BACN+B,GAAItC,KAAKgC,IAAM,EACfO,GAAIvC,KAAKgC,IAAM,EACfQ,EAAIxC,KAAKgC,IAAM,EAAK,EACpBS,KAAK,OACLR,MAAO,CACLS,YAAa,GAAG1C,KAAKkC,aAGzB9B,EAAA,UAAAE,IAAA,2CACEC,MAAM,yBACN+B,GAAItC,KAAKgC,IAAM,EACfO,GAAIvC,KAAKgC,IAAM,EACfQ,EAAIxC,KAAKgC,IAAM,EAAK,EACpBS,KAAK,OACLR,MAAO,CACLS,YAAa,GAAG1C,KAAKkC,e,aChErC,MAAMS,EAAoB,0FAC1B,MAAAC,EAAeD,E,MCgBFE,EAAc,M,yBAKjB7C,KAAA8C,IAAc,O,sBAEtB,gBAAAC,GACE/C,KAAKgD,uB,CAGP,kBAAAC,GACEjD,KAAKgD,uB,CAGP,qBAAAA,GACE,MAAME,EAAclD,KAAKmD,qBAAqBnD,KAAKoD,KAAKC,WACxD,IAAIC,EAASJ,EAEb,GAAIlD,KAAKuD,OAAQ,CACf,MAAMC,EAAY,IAAIC,OAAO,IAAIzD,KAAKuD,UAAW,MAEjDD,EAASJ,EAAYQ,QAAQF,EAAW,IAAIxD,KAAK8C,WAAW9C,KAAK8C,O,CAGnE9C,KAAKoD,KAAKC,UAAYC,C,CAGxB,oBAAAH,CAAqBQ,GAEnB,MAAMH,EAAY,IAAIC,OAAO,MAAOzD,KAAK8C,OAAQ,KAEjD,OAAOa,EAAOD,QAAQF,EAAW,G,CAGnC,MAAArD,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,QAAAE,IAAA,6C"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* © Peculiar Ventures https://peculiarventures.com/ - MIT License
|
|
3
|
-
*/
|
|
4
|
-
System.register(["./p-821bdcdc.system.js","./p-9712b827.system.js","./p-c241e4ba.system.js"],(function(e){"use strict";var t,a,c,i,s,n;return{setters:[function(e){t=e.r;a=e.h;c=e.H},function(e){i=e.B},function(e){s=e.a;n=e.A}],execute:function(){var r=".sc-peculiar-text-hider-h{display:-ms-flexbox;display:flex;width:100%;gap:var(--pv-size-base-4)}[aria-expanded=true].sc-peculiar-text-hider-h .content.sc-peculiar-text-hider{white-space:initial}.content.sc-peculiar-text-hider{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.action.sc-peculiar-text-hider{-ms-flex-negative:0;flex-shrink:0;margin-top:calc(var(--pv-size-base) * -1)}";var d=r;var o=e("peculiar_text_hider",function(){function e(e){t(this,e);this.opened=false}e.prototype.render=function(){var e=this;return a(c,{key:"d0442a0dcb70ffa79e5e9e9f9a4647a89b03dd8e","aria-expanded":String(this.opened)},a("div",{key:"6de993b7decfaa4ba3aec8147cbcda078fafa207",class:"content"},a("slot",{key:"11d130a9a9fa3529191944dcde50ccfb3561be19"})),a(i,{key:"e76ff63ce6b47e4d4a60abb15397b95445d6a016",class:"action",onClick:function(){e.opened=!e.opened},startIcon:this.opened?a(s,{color:"secondary"}):a(n,{color:"secondary"})}))};return e}());o.style=d}}}));
|
|
5
|
-
//# sourceMappingURL=p-b5389885.system.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["certificateViewerCss","PeculiarCertificateViewerStyle0","CertificateViewer","this","getAuthKeyIdParentLink","value","_a","authKeyIdParentLink","replace","getAuthKeyIdSiblingsLink","authKeyIdSiblingsLink","getSubjectKeyIdChildrenLink","subjectKeyIdChildrenLink","getSubjectKeyIdSiblingsLink","subjectKeyIdSiblingsLink","handleMediaQueryChange","event","mobileScreenView","matches","componentWillLoad","decodeCertificate","certificate","mobileMediaQuery","window","matchMedia","mobileMediaQueryString","addEventListener","bind","disconnectedCallback","removeEventListener","isDecodeInProcess","X509Certificate","certificateDecoded","parseExtensions","getThumbprint","error","certificateDecodeError","console","watchCertificateAndDecode","newValue","oldValue","serialNumber","getIssuerDnLink","issuerDnLink","renderErrorState","h","class","Typography","renderEmptyState","render","Host","String","BasicInformation","Object","assign","SubjectName","name","subject","IssuerName","issuer","PublicKey","publicKey","Signature","signature","Thumbprints","thumbprints","Extensions","extensions","getLEILink","getDNSNameLink","getIPAddressLink","download","Miscellaneous"],"sources":["src/components/certificate-viewer/certificate-viewer.scss?tag=peculiar-certificate-viewer&encapsulation=shadow","src/components/certificate-viewer/certificate-viewer.tsx"],"sourcesContent":["@import '../../css/base.scss';\n\n:host {\n display: block;\n width: 100%;\n position: relative;\n min-width: 280px;\n min-height: 300px;\n word-wrap: break-word;\n word-break: break-word;\n}\n\nth, td {\n border: none;\n}\n\ntable {\n width: 100%;\n border-spacing: 0;\n border-collapse: collapse;\n\n td {\n padding: var(--pv-size-base-2) var(--pv-size-base-4);\n vertical-align: top;\n\n &:first-child {\n width: 220px;\n }\n\n &:last-child {\n width: calc(100% - 220px)\n }\n\n &.monospace {\n max-width: 0;\n }\n\n &.divider {\n padding: var(--pv-size-base-2) 0;\n\n span {\n height: 1px;\n display: block;\n background-color: var(--pv-color-gray-4);\n }\n }\n }\n\n .title td {\n padding-top: var(--pv-size-base-6);\n padding-bottom: var(--pv-size-base-2);\n }\n\n table {\n border-left: 1px solid var(--pv-color-gray-5);\n }\n}\n\n.status_wrapper {\n min-height: inherit;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n:host([data-mobile-screen-view=\"true\"]) {\n table, tr, td {\n display: block;\n }\n\n table {\n tr {\n padding: var(--pv-size-base-2) 0;\n\n &.title {\n padding-top: var(--pv-size-base-6);\n\n td {\n padding: 0 var(--pv-size-base-4);\n }\n }\n }\n\n td {\n padding: 0 var(--pv-size-base-4);\n width: 100% !important;\n max-width: 100% !important;\n\n &.divider {\n padding: 0;\n }\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 {\n Component,\n h,\n Prop,\n State,\n Watch,\n Host,\n Build,\n} from '@stencil/core';\n\nimport {\n X509Certificate,\n} from '../../crypto';\nimport { getDNSNameLink, getIPAddressLink, getLEILink } from '../../utils/third_party_links';\nimport {\n BasicInformation,\n SubjectName,\n IssuerName,\n PublicKey,\n Signature,\n Thumbprints,\n Extensions,\n Miscellaneous,\n} from '../certificate-details-parts';\nimport { Typography } from '../typography';\n\nexport type CertificateProp = string | X509Certificate;\n\n@Component({\n tag: 'peculiar-certificate-viewer',\n styleUrl: 'certificate-viewer.scss',\n shadow: true,\n})\nexport class CertificateViewer {\n private certificateDecoded: X509Certificate;\n\n private certificateDecodeError: Error;\n\n private mobileMediaQuery: MediaQueryList;\n\n /**\n * The certificate value for decode and show details. Use PEM or DER.\n */\n @Prop({ reflect: true }) certificate: CertificateProp;\n\n /**\n * If `true` - component will show split-button to download certificate as PEM or DER.\n */\n @Prop({ reflect: true }) download?: boolean;\n\n /**\n * Authority Key Identifier extension parent link.\n * <br />\n * **NOTE**: `{{authKeyId}}` will be replaced to value from the extension.\n * @example\n * https://censys.io/certificates?q=parsed.extensions.subject_key_id:%20{{authKeyId}}\n */\n @Prop({ reflect: true }) authKeyIdParentLink?: string;\n\n /**\n * Authority Key Identifier extension siblings link.\n * <br />\n * **NOTE**: `{{authKeyId}}` will be replaced to value from the extension.\n * @example\n * https://censys.io/certificates?q=parsed.extensions.authority_key_id:%20{{authKeyId}}\n */\n @Prop({ reflect: true }) authKeyIdSiblingsLink?: string;\n\n /**\n * Subject Key Identifier extension children link.\n * <br />\n * **NOTE**: `{{subjectKeyId}}` will be replaced to value from the extension.\n * @example\n * https://censys.io/certificates?q=parsed.extensions.authority_key_id:%20{{subjectKeyId}}\n */\n @Prop({ reflect: true }) subjectKeyIdChildrenLink?: string;\n\n /**\n * Subject Key Identifier extension siblings link.\n * <br />\n * **NOTE**: `{{subjectKeyId}}` will be replaced to value from the extension.\n * @example\n * https://some.com/{{subjectKeyId}}\n */\n @Prop({ reflect: true }) subjectKeyIdSiblingsLink?: string;\n\n /**\n * Issuer DN link.\n * **NOTE**: HTML component attribute must be `issuer-dn-link`.\n */\n @Prop({ reflect: true }) issuerDnLink?: string;\n\n /**\n * Mobile media query string to control screen view change.\n * <br />\n * **NOTE**: Based on https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia.\n * @example\n * (max-width: 900px)\n */\n @Prop({ reflect: false }) mobileMediaQueryString?: string = '(max-width: 900px)';\n\n @State() mobileScreenView: boolean = false;\n\n @State() isDecodeInProcess: boolean = true;\n\n private handleMediaQueryChange(event: MediaQueryListEvent) {\n this.mobileScreenView = event.matches;\n }\n\n componentWillLoad() {\n this.decodeCertificate(this.certificate);\n\n if (Build.isBrowser) {\n this.mobileMediaQuery = window.matchMedia(this.mobileMediaQueryString);\n this.mobileMediaQuery.addEventListener('change', this.handleMediaQueryChange.bind(this));\n this.mobileScreenView = this.mobileMediaQuery.matches;\n }\n }\n\n disconnectedCallback() {\n this.mobileMediaQuery.removeEventListener('change', this.handleMediaQueryChange.bind(this));\n }\n\n private async decodeCertificate(certificate: CertificateProp) {\n this.isDecodeInProcess = true;\n\n try {\n if (certificate instanceof X509Certificate) {\n this.certificateDecoded = certificate;\n } else if (typeof certificate === 'string') {\n this.certificateDecoded = new X509Certificate(certificate);\n } else {\n return;\n }\n\n this.certificateDecoded.parseExtensions();\n await this.certificateDecoded.getThumbprint('SHA-1');\n await this.certificateDecoded.getThumbprint('SHA-256');\n } catch (error) {\n this.certificateDecodeError = error;\n\n console.error('Error certificate parse:', error);\n }\n\n this.isDecodeInProcess = false;\n }\n\n /**\n * Rerun decodeCertificate if previuos value not equal current value\n */\n @Watch('certificate')\n watchCertificateAndDecode(newValue: CertificateProp, oldValue: CertificateProp) {\n if (typeof newValue === 'string' && typeof oldValue === 'string') {\n if (newValue !== oldValue) {\n this.decodeCertificate(newValue);\n }\n\n return;\n }\n\n if (newValue instanceof X509Certificate && oldValue instanceof X509Certificate) {\n if (newValue.serialNumber !== oldValue.serialNumber) {\n this.decodeCertificate(newValue);\n }\n }\n }\n\n private getAuthKeyIdParentLink = (value: string) => this.authKeyIdParentLink\n ?.replace('{{authKeyId}}', value);\n\n private getAuthKeyIdSiblingsLink = (value: string) => this.authKeyIdSiblingsLink\n ?.replace('{{authKeyId}}', value);\n\n private getSubjectKeyIdChildrenLink = (value: string) => this.subjectKeyIdChildrenLink\n ?.replace('{{subjectKeyId}}', value);\n\n private getSubjectKeyIdSiblingsLink = (value: string) => this.subjectKeyIdSiblingsLink\n ?.replace('{{subjectKeyId}}', value);\n\n private getIssuerDnLink() {\n return this.issuerDnLink;\n }\n\n // eslint-disable-next-line class-methods-use-this\n private renderErrorState() {\n return (\n <div class=\"status_wrapper\">\n <Typography>\n There was an error decoding this certificate.\n </Typography>\n </div>\n );\n }\n\n // eslint-disable-next-line class-methods-use-this\n private renderEmptyState() {\n return (\n <div class=\"status_wrapper\">\n <Typography>\n There is no certificate available.\n </Typography>\n </div>\n );\n }\n\n render() {\n if (this.certificateDecodeError) {\n return this.renderErrorState();\n }\n\n if (!this.certificateDecoded) {\n return this.renderEmptyState();\n }\n\n return (\n <Host\n data-mobile-screen-view={String(this.mobileScreenView)}\n >\n <table>\n <BasicInformation\n {...this.certificateDecoded}\n />\n\n <SubjectName\n name={this.certificateDecoded.subject}\n />\n\n <IssuerName\n name={this.certificateDecoded.issuer}\n issuerDnLink={this.getIssuerDnLink()}\n />\n\n <PublicKey\n publicKey={this.certificateDecoded.publicKey}\n />\n\n <Signature\n signature={this.certificateDecoded.signature}\n />\n\n <Thumbprints\n thumbprints={this.certificateDecoded.thumbprints}\n />\n\n <Extensions\n extensions={this.certificateDecoded.extensions}\n getLEILink={getLEILink}\n getDNSNameLink={getDNSNameLink}\n getIPAddressLink={getIPAddressLink}\n getAuthKeyIdParentLink={this.getAuthKeyIdParentLink}\n getAuthKeyIdSiblingsLink={this.getAuthKeyIdSiblingsLink}\n getSubjectKeyIdChildrenLink={this.getSubjectKeyIdChildrenLink}\n getSubjectKeyIdSiblingsLink={this.getSubjectKeyIdSiblingsLink}\n />\n\n {this.download && (\n <Miscellaneous\n certificate={this.certificateDecoded}\n />\n )}\n </table>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["ArrowBottomIcon","exports","props","_a","color","h","xmlns","width","height","fill","stroke","concat","d","ArrowTopIcon"],"sources":["src/components/icons/arrow_bottom.tsx","src/components/icons/arrow_top.tsx"],"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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const ArrowBottomIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'gray-10' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n fill=\"none\"\n >\n <path\n stroke={`var(--pv-color-${color})`}\n // eslint-disable-next-line react/no-unknown-property\n stroke-linecap=\"round\"\n stroke-width=\"1.5\"\n d=\"m19.222 12.778-3.851 4.279a.2.2 0 0 1-.297 0l-3.852-4.28\"\n />\n </svg>\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 { FunctionalComponent, h } from '@stencil/core';\nimport type { ColorType } from '../../interface';\n\nexport const ArrowTopIcon: FunctionalComponent<{ color?: ColorType }> = (props) => {\n const { color = 'gray-10' } = props;\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n fill=\"none\"\n >\n <path\n stroke={`var(--pv-color-${color})`}\n // eslint-disable-next-line react/no-unknown-property\n stroke-linecap=\"round\"\n stroke-width=\"1.5\"\n d=\"m11.222 17.722 3.852-4.28a.2.2 0 0 1 .297 0l3.851 4.28\"\n />\n </svg>\n );\n};\n"],"mappings":";;;;;;;;;;;IAWaA,EAAeC,EAAA,KAA+C,SAACC,GAClE,IAAAC,EAAsBD,EAAKE,MAA3BA,EAAKD,SAAA,EAAG,UAASA,EAEzB,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEK,OAAQ,kBAAAC,OAAkBP,EAAK,KAAG,iBAEnB,QAAO,eACT,MACbQ,EAAE,6DAIV;;;;;;;mBCnBaC,EAAYZ,EAAA,KAA+C,SAACC,GAC/D,IAAAC,EAAsBD,EAAKE,MAA3BA,EAAKD,SAAA,EAAG,UAASA,EAEzB,OACEE,EAAA,OACEC,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,KAAK,QAELJ,EAAA,QACEK,OAAQ,kBAAAC,OAAkBP,EAAK,KAAG,iBAEnB,QAAO,eACT,MACbQ,EAAE,2DAIV,G"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["globalScripts","exports"],"sources":["@stencil/core/internal/app-globals"],"sourcesContent":["export const globalScripts = () => {};\n"],"mappings":";;;uEAAY,IAACA,EAAaC,EAAA,KAAG,WAAM,G"}
|