@peculiar/certificates-viewer 4.2.0 → 4.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (707) hide show
  1. package/components/actions.js +3 -3
  2. package/components/actions.js.map +1 -1
  3. package/components/arrow_top.js +6 -6
  4. package/components/arrow_top.js.map +1 -1
  5. package/components/attribute-certificate-viewer.js +227 -222
  6. package/components/attribute-certificate-viewer.js.map +1 -1
  7. package/components/attribute.js +53 -0
  8. package/components/attribute.js.map +1 -0
  9. package/components/button-menu.js +36 -35
  10. package/components/button-menu.js.map +1 -1
  11. package/components/button.js +42 -42
  12. package/components/button.js.map +1 -1
  13. package/components/certificate-viewer.js +254 -251
  14. package/components/certificate-viewer.js.map +1 -1
  15. package/components/circular-progress.js +34 -33
  16. package/components/circular-progress.js.map +1 -1
  17. package/components/crl-viewer.js +219 -216
  18. package/components/crl-viewer.js.map +1 -1
  19. package/components/cross.js +9 -9
  20. package/components/cross.js.map +1 -1
  21. package/components/csr-viewer.js +117 -209
  22. package/components/csr-viewer.js.map +1 -1
  23. package/components/download.js +12578 -64
  24. package/components/download.js.map +1 -1
  25. package/components/highlight-words.js +45 -44
  26. package/components/highlight-words.js.map +1 -1
  27. package/components/index.js +2 -0
  28. package/components/index.js.map +1 -1
  29. package/components/index2.js +114 -169
  30. package/components/index2.js.map +1 -1
  31. package/components/issuer_name.js +8 -8
  32. package/components/issuer_name.js.map +1 -1
  33. package/components/miscellaneous.js +729 -13311
  34. package/components/miscellaneous.js.map +1 -1
  35. package/components/peculiar-attribute-certificate-viewer.d.ts +2 -2
  36. package/components/peculiar-button-menu.d.ts +2 -2
  37. package/components/peculiar-certificate-decoder.d.ts +2 -2
  38. package/components/peculiar-certificate-decoder.js +177 -207
  39. package/components/peculiar-certificate-decoder.js.map +1 -1
  40. package/components/peculiar-certificate-viewer.d.ts +2 -2
  41. package/components/peculiar-certificates-viewer.d.ts +2 -2
  42. package/components/peculiar-certificates-viewer.js +297 -297
  43. package/components/peculiar-certificates-viewer.js.map +1 -1
  44. package/components/peculiar-circular-progress.d.ts +2 -2
  45. package/components/peculiar-crl-viewer.d.ts +2 -2
  46. package/components/peculiar-crl-viewer.js +1 -1
  47. package/components/peculiar-csr-viewer.d.ts +2 -2
  48. package/components/peculiar-csr-viewer.js +1 -1
  49. package/components/peculiar-highlight-words.d.ts +2 -2
  50. package/components/peculiar-text-hider.d.ts +2 -2
  51. package/components/peculiar-text-hider.js +23 -22
  52. package/components/peculiar-text-hider.js.map +1 -1
  53. package/components/pkcs10_certificate_request.js +102 -0
  54. package/components/pkcs10_certificate_request.js.map +1 -0
  55. package/components/read_file.js +110 -0
  56. package/components/read_file.js.map +1 -0
  57. package/components/subject_name.js +36 -36
  58. package/components/subject_name.js.map +1 -1
  59. package/dist/cjs/actions-789906f5.js +23 -0
  60. package/dist/cjs/{actions-19013d4a.js.map → actions-789906f5.js.map} +1 -1
  61. package/dist/cjs/app-globals-c20ffa41.js +10 -0
  62. package/dist/cjs/app-globals-c20ffa41.js.map +1 -0
  63. package/dist/cjs/arrow_top-76e4261e.js +37 -0
  64. package/dist/cjs/{arrow_top-834fb7ec.js.map → arrow_top-76e4261e.js.map} +1 -1
  65. package/dist/cjs/button-87086210.js +77 -0
  66. package/dist/cjs/{button-14e2b73f.js.map → button-87086210.js.map} +1 -1
  67. package/dist/cjs/{certification_request-5672c667.js → certification_request-815ec558.js} +3284 -2888
  68. package/dist/cjs/certification_request-815ec558.js.map +1 -0
  69. package/dist/cjs/cross-bd099933.js +51 -0
  70. package/dist/cjs/{cross-9872c473.js.map → cross-bd099933.js.map} +1 -1
  71. package/dist/cjs/download-820d66ba.js +23 -0
  72. package/dist/cjs/{download-254ddc57.js.map → download-820d66ba.js.map} +1 -1
  73. package/dist/cjs/{index-efd561e9.js → index-e2ae280a.js} +398 -145
  74. package/dist/cjs/index-e2ae280a.js.map +1 -0
  75. package/dist/cjs/index.cjs.js +18 -11
  76. package/dist/cjs/index.cjs.js.map +1 -1
  77. package/dist/cjs/link-a3d3799d.js +25 -0
  78. package/dist/cjs/{link-6aea0be4.js.map → link-a3d3799d.js.map} +1 -1
  79. package/dist/cjs/loader.cjs.js +4 -2
  80. package/dist/cjs/loader.cjs.js.map +1 -1
  81. package/dist/cjs/miscellaneous-9a573276.js +1418 -0
  82. package/dist/cjs/miscellaneous-9a573276.js.map +1 -0
  83. package/dist/cjs/peculiar-attribute-certificate-viewer_3.cjs.entry.js +481 -480
  84. package/dist/cjs/peculiar-attribute-certificate-viewer_3.cjs.entry.js.map +1 -1
  85. package/dist/cjs/peculiar-button-menu_3.cjs.entry.js +72 -69
  86. package/dist/cjs/peculiar-button-menu_3.cjs.entry.js.map +1 -1
  87. package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js +142 -172
  88. package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js.map +1 -1
  89. package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js +106 -106
  90. package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js.map +1 -1
  91. package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js +257 -257
  92. package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js.map +1 -1
  93. package/dist/cjs/peculiar-text-hider.cjs.entry.js +12 -11
  94. package/dist/cjs/peculiar-text-hider.cjs.entry.js.map +1 -1
  95. package/dist/cjs/peculiar.cjs.js +5 -3
  96. package/dist/cjs/peculiar.cjs.js.map +1 -1
  97. package/dist/cjs/pkcs10_certificate_request-0ebc0023.js +149 -0
  98. package/dist/cjs/pkcs10_certificate_request-0ebc0023.js.map +1 -0
  99. package/dist/cjs/read_file-2e22a97e.js +115 -0
  100. package/dist/cjs/read_file-2e22a97e.js.map +1 -0
  101. package/dist/cjs/x509_certificate-9914b149.js +161 -0
  102. package/dist/cjs/x509_certificate-9914b149.js.map +1 -0
  103. package/dist/cjs/x509_crl-86b6e71d.js +179 -0
  104. package/dist/cjs/x509_crl-86b6e71d.js.map +1 -0
  105. package/dist/collection/collection-manifest.json +2 -2
  106. package/dist/collection/components/attribute-certificate-viewer/attribute-certificate-viewer.js +259 -259
  107. package/dist/collection/components/attribute-certificate-viewer/attribute-certificate-viewer.js.map +1 -1
  108. package/dist/collection/components/button/button.js +9 -9
  109. package/dist/collection/components/button/button.js.map +1 -1
  110. package/dist/collection/components/button-menu/button-menu.js +60 -60
  111. package/dist/collection/components/button-menu/button-menu.js.map +1 -1
  112. package/dist/collection/components/certificate-decoder/certificate-decoder.js +212 -212
  113. package/dist/collection/components/certificate-decoder/certificate-decoder.js.map +1 -1
  114. package/dist/collection/components/certificate-details-parts/attributes/activity_description_attribute.js +4 -3
  115. package/dist/collection/components/certificate-details-parts/attributes/activity_description_attribute.js.map +1 -1
  116. package/dist/collection/components/certificate-details-parts/attributes/as_string_attribute.js +2 -2
  117. package/dist/collection/components/certificate-details-parts/attributes/as_string_attribute.js.map +1 -1
  118. package/dist/collection/components/certificate-details-parts/attributes/basic_attribute.js +6 -6
  119. package/dist/collection/components/certificate-details-parts/attributes/basic_attribute.js.map +1 -1
  120. package/dist/collection/components/certificate-details-parts/attributes/challenge_password_attribute.js +2 -2
  121. package/dist/collection/components/certificate-details-parts/attributes/challenge_password_attribute.js.map +1 -1
  122. package/dist/collection/components/certificate-details-parts/attributes/index.js +42 -42
  123. package/dist/collection/components/certificate-details-parts/attributes/index.js.map +1 -1
  124. package/dist/collection/components/certificate-details-parts/attributes/insurance_value_attribute.js +3 -3
  125. package/dist/collection/components/certificate-details-parts/attributes/insurance_value_attribute.js.map +1 -1
  126. package/dist/collection/components/certificate-details-parts/attributes/name_attribute.js +2 -2
  127. package/dist/collection/components/certificate-details-parts/attributes/name_attribute.js.map +1 -1
  128. package/dist/collection/components/certificate-details-parts/attributes/name_part.js +5 -5
  129. package/dist/collection/components/certificate-details-parts/attributes/name_part.js.map +1 -1
  130. package/dist/collection/components/certificate-details-parts/attributes/type_relationship_attribute.js +2 -2
  131. package/dist/collection/components/certificate-details-parts/attributes/type_relationship_attribute.js.map +1 -1
  132. package/dist/collection/components/certificate-details-parts/attributes/unstructured_name_attribute.js +2 -2
  133. package/dist/collection/components/certificate-details-parts/attributes/unstructured_name_attribute.js.map +1 -1
  134. package/dist/collection/components/certificate-details-parts/attributes/valuation_ranking_attribute.js +14 -14
  135. package/dist/collection/components/certificate-details-parts/attributes/valuation_ranking_attribute.js.map +1 -1
  136. package/dist/collection/components/certificate-details-parts/attributes/web_gdpr_attribute.js +4 -3
  137. package/dist/collection/components/certificate-details-parts/attributes/web_gdpr_attribute.js.map +1 -1
  138. package/dist/collection/components/certificate-details-parts/basic_information.js +12 -12
  139. package/dist/collection/components/certificate-details-parts/basic_information.js.map +1 -1
  140. package/dist/collection/components/certificate-details-parts/extensions/archive_rev_info_extension.js +2 -2
  141. package/dist/collection/components/certificate-details-parts/extensions/archive_rev_info_extension.js.map +1 -1
  142. package/dist/collection/components/certificate-details-parts/extensions/as_string_extension.js +2 -2
  143. package/dist/collection/components/certificate-details-parts/extensions/as_string_extension.js.map +1 -1
  144. package/dist/collection/components/certificate-details-parts/extensions/attribute_value.js +1 -1
  145. package/dist/collection/components/certificate-details-parts/extensions/attribute_value.js.map +1 -1
  146. package/dist/collection/components/certificate-details-parts/extensions/authority_key_identifier_extension.js +8 -8
  147. package/dist/collection/components/certificate-details-parts/extensions/authority_key_identifier_extension.js.map +1 -1
  148. package/dist/collection/components/certificate-details-parts/extensions/basic_constraints_extension.js +2 -2
  149. package/dist/collection/components/certificate-details-parts/extensions/basic_constraints_extension.js.map +1 -1
  150. package/dist/collection/components/certificate-details-parts/extensions/basic_extension.js +7 -7
  151. package/dist/collection/components/certificate-details-parts/extensions/basic_extension.js.map +1 -1
  152. package/dist/collection/components/certificate-details-parts/extensions/biometric_syntax_extension.js +5 -5
  153. package/dist/collection/components/certificate-details-parts/extensions/biometric_syntax_extension.js.map +1 -1
  154. package/dist/collection/components/certificate-details-parts/extensions/ca_version_extension.js +3 -3
  155. package/dist/collection/components/certificate-details-parts/extensions/ca_version_extension.js.map +1 -1
  156. package/dist/collection/components/certificate-details-parts/extensions/cabforganization_identifier_extension.js +2 -2
  157. package/dist/collection/components/certificate-details-parts/extensions/cabforganization_identifier_extension.js.map +1 -1
  158. package/dist/collection/components/certificate-details-parts/extensions/certificate_policies_extension.js +23 -23
  159. package/dist/collection/components/certificate-details-parts/extensions/certificate_policies_extension.js.map +1 -1
  160. package/dist/collection/components/certificate-details-parts/extensions/certificate_template_extension.js +2 -2
  161. package/dist/collection/components/certificate-details-parts/extensions/certificate_template_extension.js.map +1 -1
  162. package/dist/collection/components/certificate-details-parts/extensions/certificate_transparency_extension.js +5 -5
  163. package/dist/collection/components/certificate-details-parts/extensions/certificate_transparency_extension.js.map +1 -1
  164. package/dist/collection/components/certificate-details-parts/extensions/crl_distribution_points_extension.js +8 -8
  165. package/dist/collection/components/certificate-details-parts/extensions/crl_distribution_points_extension.js.map +1 -1
  166. package/dist/collection/components/certificate-details-parts/extensions/crl_number_extension.js +2 -2
  167. package/dist/collection/components/certificate-details-parts/extensions/crl_number_extension.js.map +1 -1
  168. package/dist/collection/components/certificate-details-parts/extensions/crl_reason_extension.js +2 -2
  169. package/dist/collection/components/certificate-details-parts/extensions/crl_reason_extension.js.map +1 -1
  170. package/dist/collection/components/certificate-details-parts/extensions/enroll_cert_type_extension.js +2 -2
  171. package/dist/collection/components/certificate-details-parts/extensions/enroll_cert_type_extension.js.map +1 -1
  172. package/dist/collection/components/certificate-details-parts/extensions/entrust_version_info_extension.js +2 -2
  173. package/dist/collection/components/certificate-details-parts/extensions/entrust_version_info_extension.js.map +1 -1
  174. package/dist/collection/components/certificate-details-parts/extensions/extended_key_usage_extension.js +5 -5
  175. package/dist/collection/components/certificate-details-parts/extensions/extended_key_usage_extension.js.map +1 -1
  176. package/dist/collection/components/certificate-details-parts/extensions/general_name_part.js +52 -52
  177. package/dist/collection/components/certificate-details-parts/extensions/general_name_part.js.map +1 -1
  178. package/dist/collection/components/certificate-details-parts/extensions/index.js +121 -121
  179. package/dist/collection/components/certificate-details-parts/extensions/index.js.map +1 -1
  180. package/dist/collection/components/certificate-details-parts/extensions/info_access_syntax_extension.js +5 -5
  181. package/dist/collection/components/certificate-details-parts/extensions/info_access_syntax_extension.js.map +1 -1
  182. package/dist/collection/components/certificate-details-parts/extensions/issuing_distribution_point_extension.js +4 -4
  183. package/dist/collection/components/certificate-details-parts/extensions/issuing_distribution_point_extension.js.map +1 -1
  184. package/dist/collection/components/certificate-details-parts/extensions/key_description_extension.js +58 -58
  185. package/dist/collection/components/certificate-details-parts/extensions/key_description_extension.js.map +1 -1
  186. package/dist/collection/components/certificate-details-parts/extensions/key_usage_extension.js +2 -2
  187. package/dist/collection/components/certificate-details-parts/extensions/key_usage_extension.js.map +1 -1
  188. package/dist/collection/components/certificate-details-parts/extensions/lei_extension.js +2 -2
  189. package/dist/collection/components/certificate-details-parts/extensions/lei_extension.js.map +1 -1
  190. package/dist/collection/components/certificate-details-parts/extensions/lei_role_extennsion.js +2 -2
  191. package/dist/collection/components/certificate-details-parts/extensions/lei_role_extennsion.js.map +1 -1
  192. package/dist/collection/components/certificate-details-parts/extensions/logotype_extension.js +42 -42
  193. package/dist/collection/components/certificate-details-parts/extensions/logotype_extension.js.map +1 -1
  194. package/dist/collection/components/certificate-details-parts/extensions/name_constraints_extension.js +5 -5
  195. package/dist/collection/components/certificate-details-parts/extensions/name_constraints_extension.js.map +1 -1
  196. package/dist/collection/components/certificate-details-parts/extensions/netscape_cert_type_extension.js +2 -2
  197. package/dist/collection/components/certificate-details-parts/extensions/netscape_cert_type_extension.js.map +1 -1
  198. package/dist/collection/components/certificate-details-parts/extensions/netscape_comment_extension.js +2 -2
  199. package/dist/collection/components/certificate-details-parts/extensions/netscape_comment_extension.js.map +1 -1
  200. package/dist/collection/components/certificate-details-parts/extensions/policy_constraints_extension.js +2 -2
  201. package/dist/collection/components/certificate-details-parts/extensions/policy_constraints_extension.js.map +1 -1
  202. package/dist/collection/components/certificate-details-parts/extensions/policy_mappings_extension.js +6 -7
  203. package/dist/collection/components/certificate-details-parts/extensions/policy_mappings_extension.js.map +1 -1
  204. package/dist/collection/components/certificate-details-parts/extensions/private_key_usage_period_extension.js +2 -2
  205. package/dist/collection/components/certificate-details-parts/extensions/private_key_usage_period_extension.js.map +1 -1
  206. package/dist/collection/components/certificate-details-parts/extensions/qc_statements_extension.js +29 -29
  207. package/dist/collection/components/certificate-details-parts/extensions/qc_statements_extension.js.map +1 -1
  208. package/dist/collection/components/certificate-details-parts/extensions/subject_alternative_name_extension.js +2 -2
  209. package/dist/collection/components/certificate-details-parts/extensions/subject_alternative_name_extension.js.map +1 -1
  210. package/dist/collection/components/certificate-details-parts/extensions/subject_directory_attributes_extension.js +5 -5
  211. package/dist/collection/components/certificate-details-parts/extensions/subject_directory_attributes_extension.js.map +1 -1
  212. package/dist/collection/components/certificate-details-parts/extensions/subject_key_identifier_extension.js +8 -8
  213. package/dist/collection/components/certificate-details-parts/extensions/subject_key_identifier_extension.js.map +1 -1
  214. package/dist/collection/components/certificate-details-parts/extensions/timestamp_extension.js +2 -2
  215. package/dist/collection/components/certificate-details-parts/extensions/timestamp_extension.js.map +1 -1
  216. package/dist/collection/components/certificate-details-parts/extensions/tn_auth_list_extension.js +6 -8
  217. package/dist/collection/components/certificate-details-parts/extensions/tn_auth_list_extension.js.map +1 -1
  218. package/dist/collection/components/certificate-details-parts/holder.js +19 -21
  219. package/dist/collection/components/certificate-details-parts/holder.js.map +1 -1
  220. package/dist/collection/components/certificate-details-parts/issuer.js +8 -8
  221. package/dist/collection/components/certificate-details-parts/issuer.js.map +1 -1
  222. package/dist/collection/components/certificate-details-parts/issuer_name.js +6 -6
  223. package/dist/collection/components/certificate-details-parts/issuer_name.js.map +1 -1
  224. package/dist/collection/components/certificate-details-parts/miscellaneous.js +6 -6
  225. package/dist/collection/components/certificate-details-parts/miscellaneous.js.map +1 -1
  226. package/dist/collection/components/certificate-details-parts/public_key.js +29 -29
  227. package/dist/collection/components/certificate-details-parts/public_key.js.map +1 -1
  228. package/dist/collection/components/certificate-details-parts/revoked_certificates.js +30 -30
  229. package/dist/collection/components/certificate-details-parts/revoked_certificates.js.map +1 -1
  230. package/dist/collection/components/certificate-details-parts/row.js +26 -26
  231. package/dist/collection/components/certificate-details-parts/row.js.map +1 -1
  232. package/dist/collection/components/certificate-details-parts/signature.js +13 -13
  233. package/dist/collection/components/certificate-details-parts/signature.js.map +1 -1
  234. package/dist/collection/components/certificate-details-parts/subject_name.js +5 -5
  235. package/dist/collection/components/certificate-details-parts/subject_name.js.map +1 -1
  236. package/dist/collection/components/certificate-details-parts/thumbprints.js +12 -12
  237. package/dist/collection/components/certificate-details-parts/thumbprints.js.map +1 -1
  238. package/dist/collection/components/certificate-summary/certificate-summary.js +3 -3
  239. package/dist/collection/components/certificate-summary/certificate-summary.js.map +1 -1
  240. package/dist/collection/components/certificate-viewer/certificate-viewer.js +278 -278
  241. package/dist/collection/components/certificate-viewer/certificate-viewer.js.map +1 -1
  242. package/dist/collection/components/certificates-viewer/certificates-viewer.js +374 -374
  243. package/dist/collection/components/certificates-viewer/certificates-viewer.js.map +1 -1
  244. package/dist/collection/components/circular-progress/circular-progress.js +67 -67
  245. package/dist/collection/components/circular-progress/circular-progress.js.map +1 -1
  246. package/dist/collection/components/crl-viewer/crl-viewer.js +230 -230
  247. package/dist/collection/components/crl-viewer/crl-viewer.js.map +1 -1
  248. package/dist/collection/components/csr-viewer/csr-viewer.js +212 -220
  249. package/dist/collection/components/csr-viewer/csr-viewer.js.map +1 -1
  250. package/dist/collection/components/highlight-words/highlight-words.js +60 -60
  251. package/dist/collection/components/highlight-words/highlight-words.js.map +1 -1
  252. package/dist/collection/components/icons/actions.js +2 -2
  253. package/dist/collection/components/icons/actions.js.map +1 -1
  254. package/dist/collection/components/icons/arrow_bottom.js +2 -2
  255. package/dist/collection/components/icons/arrow_bottom.js.map +1 -1
  256. package/dist/collection/components/icons/arrow_top.js +2 -2
  257. package/dist/collection/components/icons/arrow_top.js.map +1 -1
  258. package/dist/collection/components/icons/cross.js +2 -2
  259. package/dist/collection/components/icons/cross.js.map +1 -1
  260. package/dist/collection/components/icons/details.js +2 -2
  261. package/dist/collection/components/icons/details.js.map +1 -1
  262. package/dist/collection/components/icons/download.js +2 -2
  263. package/dist/collection/components/icons/download.js.map +1 -1
  264. package/dist/collection/components/icons/link.js +2 -2
  265. package/dist/collection/components/icons/link.js.map +1 -1
  266. package/dist/collection/components/link/link.js +4 -4
  267. package/dist/collection/components/link/link.js.map +1 -1
  268. package/dist/collection/components/text-hider/text-hider.js +23 -23
  269. package/dist/collection/components/text-hider/text-hider.js.map +1 -1
  270. package/dist/collection/components/typography/typography.js +32 -32
  271. package/dist/collection/components/typography/typography.js.map +1 -1
  272. package/dist/collection/constants/logs.js +77 -77
  273. package/dist/collection/constants/logs.js.map +1 -1
  274. package/dist/collection/constants/oids.js +2334 -2334
  275. package/dist/collection/constants/oids.js.map +1 -1
  276. package/dist/collection/crypto/asn_data.js +31 -31
  277. package/dist/collection/crypto/asn_data.js.map +1 -1
  278. package/dist/collection/crypto/attribute.js +35 -51
  279. package/dist/collection/crypto/attribute.js.map +1 -1
  280. package/dist/collection/crypto/extension.js +63 -138
  281. package/dist/collection/crypto/extension.js.map +1 -1
  282. package/dist/collection/crypto/extensions/cabforganization_identifier.js +20 -15
  283. package/dist/collection/crypto/extensions/cabforganization_identifier.js.map +1 -1
  284. package/dist/collection/crypto/index.js +2 -2
  285. package/dist/collection/crypto/index.js.map +1 -1
  286. package/dist/collection/crypto/name.js +31 -31
  287. package/dist/collection/crypto/name.js.map +1 -1
  288. package/dist/collection/crypto/pkcs10_certificate_request.js +108 -0
  289. package/dist/collection/crypto/pkcs10_certificate_request.js.map +1 -0
  290. package/dist/collection/crypto/provider.js +26 -26
  291. package/dist/collection/crypto/provider.js.map +1 -1
  292. package/dist/collection/crypto/utils.js +23 -23
  293. package/dist/collection/crypto/utils.js.map +1 -1
  294. package/dist/collection/crypto/x509_attribute_certificate.js +68 -66
  295. package/dist/collection/crypto/x509_attribute_certificate.js.map +1 -1
  296. package/dist/collection/crypto/x509_certificate.js +127 -125
  297. package/dist/collection/crypto/x509_certificate.js.map +1 -1
  298. package/dist/collection/crypto/x509_crl.js +94 -0
  299. package/dist/collection/crypto/x509_crl.js.map +1 -0
  300. package/dist/collection/index.js +2 -0
  301. package/dist/collection/index.js.map +1 -1
  302. package/dist/collection/utils/camel_case_to_words.js +2 -2
  303. package/dist/collection/utils/camel_case_to_words.js.map +1 -1
  304. package/dist/collection/utils/date_formatter.js +6 -6
  305. package/dist/collection/utils/date_formatter.js.map +1 -1
  306. package/dist/collection/utils/download.js +24 -24
  307. package/dist/collection/utils/download.js.map +1 -1
  308. package/dist/collection/utils/download_from_buffer.js +25 -25
  309. package/dist/collection/utils/download_from_buffer.js.map +1 -1
  310. package/dist/collection/utils/get_string_by_oid.js +5 -5
  311. package/dist/collection/utils/get_string_by_oid.js.map +1 -1
  312. package/dist/collection/utils/is_link.js +1 -1
  313. package/dist/collection/utils/is_link.js.map +1 -1
  314. package/dist/collection/utils/l10n.js +25 -25
  315. package/dist/collection/utils/l10n.js.map +1 -1
  316. package/dist/collection/utils/read_file.js +40 -40
  317. package/dist/collection/utils/read_file.js.map +1 -1
  318. package/dist/collection/utils/validator.js +13 -13
  319. package/dist/collection/utils/validator.js.map +1 -1
  320. package/dist/esm/actions-aebcbc9d.js +21 -0
  321. package/dist/esm/{actions-8d745b2a.js.map → actions-aebcbc9d.js.map} +1 -1
  322. package/dist/esm/app-globals-5e9b67e0.js +8 -0
  323. package/dist/esm/app-globals-5e9b67e0.js.map +1 -0
  324. package/dist/esm/arrow_top-aee1ee02.js +34 -0
  325. package/dist/esm/{arrow_top-fc298828.js.map → arrow_top-aee1ee02.js.map} +1 -1
  326. package/dist/esm/button-a2fabf9a.js +74 -0
  327. package/dist/esm/{button-35146bdd.js.map → button-a2fabf9a.js.map} +1 -1
  328. package/dist/esm/{certification_request-d5ea5973.js → certification_request-08b4deb8.js} +3227 -2835
  329. package/dist/esm/certification_request-08b4deb8.js.map +1 -0
  330. package/dist/esm/cross-1377606f.js +47 -0
  331. package/dist/esm/{cross-9ec9a759.js.map → cross-1377606f.js.map} +1 -1
  332. package/dist/esm/download-14dc1047.js +21 -0
  333. package/dist/esm/{download-0cc3077a.js.map → download-14dc1047.js.map} +1 -1
  334. package/dist/esm/{index-4079bbb5.js → index-ae188432.js} +398 -145
  335. package/dist/esm/index-ae188432.js.map +1 -0
  336. package/dist/esm/index.js +10 -8
  337. package/dist/esm/index.js.map +1 -1
  338. package/dist/esm/link-7e4e9060.js +23 -0
  339. package/dist/esm/{link-ad24c3be.js.map → link-7e4e9060.js.map} +1 -1
  340. package/dist/esm/loader.js +5 -3
  341. package/dist/esm/loader.js.map +1 -1
  342. package/dist/esm/miscellaneous-d4bbc6f2.js +1400 -0
  343. package/dist/esm/miscellaneous-d4bbc6f2.js.map +1 -0
  344. package/dist/esm/peculiar-attribute-certificate-viewer_3.entry.js +481 -480
  345. package/dist/esm/peculiar-attribute-certificate-viewer_3.entry.js.map +1 -1
  346. package/dist/esm/peculiar-button-menu_3.entry.js +72 -69
  347. package/dist/esm/peculiar-button-menu_3.entry.js.map +1 -1
  348. package/dist/esm/peculiar-certificate-decoder.entry.js +142 -172
  349. package/dist/esm/peculiar-certificate-decoder.entry.js.map +1 -1
  350. package/dist/esm/peculiar-certificate-viewer.entry.js +106 -106
  351. package/dist/esm/peculiar-certificate-viewer.entry.js.map +1 -1
  352. package/dist/esm/peculiar-certificates-viewer.entry.js +257 -257
  353. package/dist/esm/peculiar-certificates-viewer.entry.js.map +1 -1
  354. package/dist/esm/peculiar-text-hider.entry.js +12 -11
  355. package/dist/esm/peculiar-text-hider.entry.js.map +1 -1
  356. package/dist/esm/peculiar.js +6 -4
  357. package/dist/esm/peculiar.js.map +1 -1
  358. package/dist/esm/pkcs10_certificate_request-3763c2af.js +146 -0
  359. package/dist/esm/pkcs10_certificate_request-3763c2af.js.map +1 -0
  360. package/dist/esm/read_file-bb0b1450.js +110 -0
  361. package/dist/esm/read_file-bb0b1450.js.map +1 -0
  362. package/dist/esm/x509_certificate-47b4c5ee.js +159 -0
  363. package/dist/esm/x509_certificate-47b4c5ee.js.map +1 -0
  364. package/dist/esm/x509_crl-ba76d3ed.js +176 -0
  365. package/dist/esm/x509_crl-ba76d3ed.js.map +1 -0
  366. package/dist/esm-es5/{actions-8d745b2a.js → actions-aebcbc9d.js} +2 -2
  367. package/dist/esm-es5/app-globals-5e9b67e0.js +5 -0
  368. package/dist/esm-es5/app-globals-5e9b67e0.js.map +1 -0
  369. package/dist/esm-es5/{arrow_top-fc298828.js → arrow_top-aee1ee02.js} +2 -2
  370. package/dist/esm-es5/button-a2fabf9a.js +19 -0
  371. package/dist/esm-es5/{certification_request-d5ea5973.js → certification_request-08b4deb8.js} +60 -22
  372. package/dist/esm-es5/certification_request-08b4deb8.js.map +1 -0
  373. package/dist/esm-es5/{cross-9ec9a759.js → cross-1377606f.js} +2 -2
  374. package/dist/esm-es5/{download-0cc3077a.js → download-14dc1047.js} +2 -2
  375. package/dist/esm-es5/index-ae188432.js +6 -0
  376. package/dist/esm-es5/index-ae188432.js.map +1 -0
  377. package/dist/esm-es5/index.js +1 -1
  378. package/dist/esm-es5/{link-ad24c3be.js → link-7e4e9060.js} +3 -3
  379. package/dist/esm-es5/loader.js +2 -2
  380. package/dist/esm-es5/loader.js.map +1 -1
  381. package/dist/esm-es5/{miscellaneous-cdfd8905.js → miscellaneous-d4bbc6f2.js} +51 -51
  382. package/dist/esm-es5/miscellaneous-d4bbc6f2.js.map +1 -0
  383. package/dist/esm-es5/peculiar-attribute-certificate-viewer_3.entry.js +17 -17
  384. package/dist/esm-es5/peculiar-attribute-certificate-viewer_3.entry.js.map +1 -1
  385. package/dist/esm-es5/peculiar-button-menu_3.entry.js +1 -1
  386. package/dist/esm-es5/peculiar-button-menu_3.entry.js.map +1 -1
  387. package/dist/esm-es5/peculiar-certificate-decoder.entry.js +2 -9
  388. package/dist/esm-es5/peculiar-certificate-decoder.entry.js.map +1 -1
  389. package/dist/esm-es5/peculiar-certificate-viewer.entry.js +2 -2
  390. package/dist/esm-es5/peculiar-certificate-viewer.entry.js.map +1 -1
  391. package/dist/esm-es5/peculiar-certificates-viewer.entry.js +3 -3
  392. package/dist/esm-es5/peculiar-certificates-viewer.entry.js.map +1 -1
  393. package/dist/esm-es5/peculiar-text-hider.entry.js +1 -1
  394. package/dist/esm-es5/peculiar-text-hider.entry.js.map +1 -1
  395. package/dist/esm-es5/peculiar.js +2 -2
  396. package/dist/esm-es5/peculiar.js.map +1 -1
  397. package/dist/esm-es5/pkcs10_certificate_request-3763c2af.js +19 -0
  398. package/dist/esm-es5/pkcs10_certificate_request-3763c2af.js.map +1 -0
  399. package/dist/esm-es5/read_file-bb0b1450.js +12 -0
  400. package/dist/esm-es5/read_file-bb0b1450.js.map +1 -0
  401. package/dist/esm-es5/x509_certificate-47b4c5ee.js +12 -0
  402. package/dist/esm-es5/x509_certificate-47b4c5ee.js.map +1 -0
  403. package/dist/esm-es5/x509_crl-ba76d3ed.js +19 -0
  404. package/dist/esm-es5/x509_crl-ba76d3ed.js.map +1 -0
  405. package/dist/peculiar/index.esm.js +1 -1
  406. package/dist/peculiar/{p-a67b8793.system.entry.js → p-0f3787cf.system.entry.js} +10 -10
  407. package/dist/peculiar/p-0f3787cf.system.entry.js.map +1 -0
  408. package/dist/peculiar/p-1818204e.system.js +13 -0
  409. package/dist/peculiar/p-1818204e.system.js.map +1 -0
  410. package/dist/peculiar/p-243244af.system.js +13 -0
  411. package/dist/peculiar/p-25a532a3.js +12 -0
  412. package/dist/peculiar/p-25a532a3.js.map +1 -0
  413. package/dist/peculiar/{p-0fc2e2b4.js → p-27ca6743.js} +2 -2
  414. package/dist/peculiar/p-28b4d316.system.js +5 -0
  415. package/dist/peculiar/p-30e18f2d.system.js +20 -0
  416. package/dist/peculiar/p-30e18f2d.system.js.map +1 -0
  417. package/dist/peculiar/p-31d5da39.js +12 -0
  418. package/dist/peculiar/p-31d5da39.js.map +1 -0
  419. package/dist/peculiar/p-364df80d.system.entry.js +111 -0
  420. package/dist/peculiar/p-364df80d.system.entry.js.map +1 -0
  421. package/dist/peculiar/p-3cb79cd9.js +6 -0
  422. package/dist/peculiar/p-3cb79cd9.js.map +1 -0
  423. package/dist/peculiar/p-4bc5ddbe.js +19 -0
  424. package/dist/peculiar/p-4ee5140c.system.js +19 -0
  425. package/dist/peculiar/p-4ee5140c.system.js.map +1 -0
  426. package/dist/peculiar/p-55303453.system.js +12 -0
  427. package/dist/peculiar/p-55303453.system.js.map +1 -0
  428. package/dist/peculiar/p-5a662d6f.system.js +13 -0
  429. package/dist/peculiar/p-6acca6ea.js +135 -0
  430. package/dist/peculiar/p-6acca6ea.js.map +1 -0
  431. package/dist/peculiar/p-713563fb.entry.js +5 -0
  432. package/dist/peculiar/p-713563fb.entry.js.map +1 -0
  433. package/dist/peculiar/p-78a6b479.js +19 -0
  434. package/dist/peculiar/p-78a6b479.js.map +1 -0
  435. package/dist/peculiar/p-82005297.system.entry.js +5 -0
  436. package/dist/peculiar/p-82005297.system.entry.js.map +1 -0
  437. package/dist/peculiar/p-821bdcdc.system.js +6 -0
  438. package/dist/peculiar/p-821bdcdc.system.js.map +1 -0
  439. package/dist/peculiar/p-82e4faf0.js +19 -0
  440. package/dist/peculiar/p-82e4faf0.js.map +1 -0
  441. package/dist/peculiar/p-8393399a.system.js +5 -0
  442. package/dist/peculiar/p-8393399a.system.js.map +1 -0
  443. package/dist/peculiar/p-84e3e94a.entry.js +110 -0
  444. package/dist/peculiar/p-84e3e94a.entry.js.map +1 -0
  445. package/dist/peculiar/p-8bbee8f4.system.js +13 -0
  446. package/dist/peculiar/p-8db3e1fd.system.entry.js +5 -0
  447. package/dist/peculiar/p-8db3e1fd.system.entry.js.map +1 -0
  448. package/dist/peculiar/p-9712b827.system.js +20 -0
  449. package/dist/peculiar/{p-2fcad8cb.system.js.map → p-9712b827.system.js.map} +1 -1
  450. package/dist/peculiar/{p-370cee20.js → p-99efefea.js} +2 -2
  451. package/dist/peculiar/p-9c8dc738.entry.js +5 -0
  452. package/dist/peculiar/p-9c8dc738.entry.js.map +1 -0
  453. package/dist/peculiar/{p-1ceb0fe3.js → p-a9487007.js} +2 -2
  454. package/dist/peculiar/{p-17e3c47b.js → p-ae91d778.js} +2 -2
  455. package/dist/peculiar/p-afbd1c8e.entry.js +5 -0
  456. package/dist/peculiar/p-afbd1c8e.entry.js.map +1 -0
  457. package/dist/peculiar/{p-67156853.js → p-b0c963b1.js} +26 -26
  458. package/dist/peculiar/p-b0c963b1.js.map +1 -0
  459. package/dist/peculiar/p-b5389885.system.entry.js +5 -0
  460. package/dist/peculiar/p-b5389885.system.entry.js.map +1 -0
  461. package/dist/peculiar/p-c10bfa6a.system.js +369 -0
  462. package/dist/peculiar/p-c10bfa6a.system.js.map +1 -0
  463. package/dist/peculiar/p-c241e4ba.system.js +20 -0
  464. package/dist/peculiar/{p-c99507d4.system.js.map → p-c241e4ba.system.js.map} +1 -1
  465. package/dist/peculiar/p-c2995a63.system.js +5 -0
  466. package/dist/peculiar/p-c2995a63.system.js.map +1 -0
  467. package/dist/peculiar/p-c3fce3f5.entry.js +5 -0
  468. package/dist/peculiar/p-c3fce3f5.entry.js.map +1 -0
  469. package/dist/peculiar/p-dac867e8.js +5 -0
  470. package/dist/peculiar/p-dac867e8.js.map +1 -0
  471. package/dist/peculiar/p-df2c8826.system.js +135 -0
  472. package/dist/peculiar/p-df2c8826.system.js.map +1 -0
  473. package/dist/peculiar/p-e4ad4f13.system.entry.js +5 -0
  474. package/dist/peculiar/p-e4ad4f13.system.entry.js.map +1 -0
  475. package/dist/peculiar/p-e6a6e602.js +12 -0
  476. package/dist/peculiar/p-eea904d7.system.js +27 -0
  477. package/dist/peculiar/{p-ddae2f8e.system.js.map → p-eea904d7.system.js.map} +1 -1
  478. package/dist/peculiar/{p-c35b180c.entry.js → p-f8efbe93.entry.js} +3 -3
  479. package/dist/peculiar/p-f8efbe93.entry.js.map +1 -0
  480. package/dist/peculiar/peculiar.esm.js +1 -1
  481. package/dist/peculiar/peculiar.esm.js.map +1 -1
  482. package/dist/peculiar/peculiar.js +15 -15
  483. package/dist/types/components/attribute-certificate-viewer/attribute-certificate-viewer.d.ts +68 -68
  484. package/dist/types/components/button/button.d.ts +4 -4
  485. package/dist/types/components/button-menu/button-menu.d.ts +7 -7
  486. package/dist/types/components/certificate-decoder/certificate-decoder.d.ts +32 -32
  487. package/dist/types/components/certificate-details-parts/attributes/activity_description_attribute.d.ts +1 -1
  488. package/dist/types/components/certificate-details-parts/attributes/as_string_attribute.d.ts +1 -1
  489. package/dist/types/components/certificate-details-parts/attributes/basic_attribute.d.ts +1 -1
  490. package/dist/types/components/certificate-details-parts/attributes/challenge_password_attribute.d.ts +1 -1
  491. package/dist/types/components/certificate-details-parts/attributes/index.d.ts +1 -1
  492. package/dist/types/components/certificate-details-parts/attributes/insurance_value_attribute.d.ts +1 -1
  493. package/dist/types/components/certificate-details-parts/attributes/name_attribute.d.ts +1 -1
  494. package/dist/types/components/certificate-details-parts/attributes/name_part.d.ts +1 -1
  495. package/dist/types/components/certificate-details-parts/attributes/type_relationship_attribute.d.ts +1 -1
  496. package/dist/types/components/certificate-details-parts/attributes/unstructured_name_attribute.d.ts +1 -1
  497. package/dist/types/components/certificate-details-parts/attributes/valuation_ranking_attribute.d.ts +1 -1
  498. package/dist/types/components/certificate-details-parts/attributes/web_gdpr_attribute.d.ts +1 -1
  499. package/dist/types/components/certificate-details-parts/basic_information.d.ts +8 -8
  500. package/dist/types/components/certificate-details-parts/extensions/archive_rev_info_extension.d.ts +1 -1
  501. package/dist/types/components/certificate-details-parts/extensions/as_string_extension.d.ts +1 -1
  502. package/dist/types/components/certificate-details-parts/extensions/authority_key_identifier_extension.d.ts +1 -1
  503. package/dist/types/components/certificate-details-parts/extensions/basic_constraints_extension.d.ts +1 -1
  504. package/dist/types/components/certificate-details-parts/extensions/basic_extension.d.ts +1 -1
  505. package/dist/types/components/certificate-details-parts/extensions/biometric_syntax_extension.d.ts +1 -1
  506. package/dist/types/components/certificate-details-parts/extensions/ca_version_extension.d.ts +1 -1
  507. package/dist/types/components/certificate-details-parts/extensions/cabforganization_identifier_extension.d.ts +1 -1
  508. package/dist/types/components/certificate-details-parts/extensions/certificate_policies_extension.d.ts +1 -1
  509. package/dist/types/components/certificate-details-parts/extensions/certificate_template_extension.d.ts +1 -1
  510. package/dist/types/components/certificate-details-parts/extensions/certificate_transparency_extension.d.ts +1 -1
  511. package/dist/types/components/certificate-details-parts/extensions/crl_distribution_points_extension.d.ts +1 -1
  512. package/dist/types/components/certificate-details-parts/extensions/crl_number_extension.d.ts +1 -1
  513. package/dist/types/components/certificate-details-parts/extensions/crl_reason_extension.d.ts +1 -1
  514. package/dist/types/components/certificate-details-parts/extensions/enroll_cert_type_extension.d.ts +1 -1
  515. package/dist/types/components/certificate-details-parts/extensions/entrust_version_info_extension.d.ts +1 -1
  516. package/dist/types/components/certificate-details-parts/extensions/extended_key_usage_extension.d.ts +1 -1
  517. package/dist/types/components/certificate-details-parts/extensions/general_name_part.d.ts +1 -1
  518. package/dist/types/components/certificate-details-parts/extensions/index.d.ts +2 -2
  519. package/dist/types/components/certificate-details-parts/extensions/info_access_syntax_extension.d.ts +1 -1
  520. package/dist/types/components/certificate-details-parts/extensions/issuing_distribution_point_extension.d.ts +1 -1
  521. package/dist/types/components/certificate-details-parts/extensions/key_description_extension.d.ts +1 -1
  522. package/dist/types/components/certificate-details-parts/extensions/key_usage_extension.d.ts +1 -1
  523. package/dist/types/components/certificate-details-parts/extensions/lei_extension.d.ts +1 -1
  524. package/dist/types/components/certificate-details-parts/extensions/lei_role_extennsion.d.ts +1 -1
  525. package/dist/types/components/certificate-details-parts/extensions/logotype_extension.d.ts +1 -1
  526. package/dist/types/components/certificate-details-parts/extensions/name_constraints_extension.d.ts +1 -1
  527. package/dist/types/components/certificate-details-parts/extensions/netscape_cert_type_extension.d.ts +1 -1
  528. package/dist/types/components/certificate-details-parts/extensions/netscape_comment_extension.d.ts +1 -1
  529. package/dist/types/components/certificate-details-parts/extensions/policy_constraints_extension.d.ts +1 -1
  530. package/dist/types/components/certificate-details-parts/extensions/policy_mappings_extension.d.ts +1 -1
  531. package/dist/types/components/certificate-details-parts/extensions/private_key_usage_period_extension.d.ts +1 -1
  532. package/dist/types/components/certificate-details-parts/extensions/qc_statements_extension.d.ts +1 -1
  533. package/dist/types/components/certificate-details-parts/extensions/subject_alternative_name_extension.d.ts +1 -1
  534. package/dist/types/components/certificate-details-parts/extensions/subject_directory_attributes_extension.d.ts +1 -1
  535. package/dist/types/components/certificate-details-parts/extensions/subject_key_identifier_extension.d.ts +1 -1
  536. package/dist/types/components/certificate-details-parts/extensions/timestamp_extension.d.ts +1 -1
  537. package/dist/types/components/certificate-details-parts/extensions/tn_auth_list_extension.d.ts +1 -1
  538. package/dist/types/components/certificate-details-parts/holder.d.ts +1 -1
  539. package/dist/types/components/certificate-details-parts/issuer.d.ts +1 -1
  540. package/dist/types/components/certificate-details-parts/issuer_name.d.ts +2 -2
  541. package/dist/types/components/certificate-details-parts/miscellaneous.d.ts +3 -3
  542. package/dist/types/components/certificate-details-parts/public_key.d.ts +1 -1
  543. package/dist/types/components/certificate-details-parts/revoked_certificates.d.ts +1 -1
  544. package/dist/types/components/certificate-details-parts/row.d.ts +7 -7
  545. package/dist/types/components/certificate-details-parts/signature.d.ts +1 -1
  546. package/dist/types/components/certificate-details-parts/subject_name.d.ts +1 -1
  547. package/dist/types/components/certificate-details-parts/thumbprints.d.ts +1 -1
  548. package/dist/types/components/certificate-summary/certificate-summary.d.ts +2 -2
  549. package/dist/types/components/certificate-viewer/certificate-viewer.d.ts +74 -74
  550. package/dist/types/components/certificates-viewer/certificates-viewer.d.ts +75 -75
  551. package/dist/types/components/circular-progress/circular-progress.d.ts +10 -10
  552. package/dist/types/components/crl-viewer/crl-viewer.d.ts +58 -58
  553. package/dist/types/components/csr-viewer/csr-viewer.d.ts +54 -55
  554. package/dist/types/components/highlight-words/highlight-words.d.ts +8 -8
  555. package/dist/types/components/icons/actions.d.ts +1 -1
  556. package/dist/types/components/icons/arrow_bottom.d.ts +1 -1
  557. package/dist/types/components/icons/arrow_top.d.ts +1 -1
  558. package/dist/types/components/icons/cross.d.ts +1 -1
  559. package/dist/types/components/icons/details.d.ts +1 -1
  560. package/dist/types/components/icons/download.d.ts +1 -1
  561. package/dist/types/components/icons/link.d.ts +1 -1
  562. package/dist/types/components/link/link.d.ts +2 -2
  563. package/dist/types/components/text-hider/text-hider.d.ts +2 -2
  564. package/dist/types/components/typography/typography.d.ts +4 -4
  565. package/dist/types/components.d.ts +24 -0
  566. package/dist/types/constants/logs.d.ts +77 -77
  567. package/dist/types/constants/oids.d.ts +2326 -2326
  568. package/dist/types/crypto/asn_data.d.ts +6 -6
  569. package/dist/types/crypto/attribute.d.ts +21 -6
  570. package/dist/types/crypto/extension.d.ts +51 -5
  571. package/dist/types/crypto/extensions/cabforganization_identifier.d.ts +5 -5
  572. package/dist/types/crypto/index.d.ts +2 -2
  573. package/dist/types/crypto/name.d.ts +7 -7
  574. package/dist/types/crypto/pkcs10_certificate_request.d.ts +42 -0
  575. package/dist/types/crypto/provider.d.ts +15 -15
  576. package/dist/types/crypto/x509_attribute_certificate.d.ts +23 -24
  577. package/dist/types/crypto/x509_certificate.d.ts +32 -33
  578. package/dist/types/crypto/x509_crl.d.ts +33 -0
  579. package/dist/types/index.d.ts +2 -0
  580. package/dist/types/stencil-public-runtime.d.ts +29 -0
  581. package/dist/types/utils/download.d.ts +16 -16
  582. package/dist/types/utils/l10n.d.ts +56 -56
  583. package/dist/types/utils/read_file.d.ts +7 -7
  584. package/hydrate/index.d.ts +2 -2
  585. package/hydrate/index.js +11369 -9539
  586. package/package.json +21 -13
  587. package/dist/cjs/actions-19013d4a.js +0 -23
  588. package/dist/cjs/arrow_top-834fb7ec.js +0 -37
  589. package/dist/cjs/button-14e2b73f.js +0 -77
  590. package/dist/cjs/certification_request-5672c667.js.map +0 -1
  591. package/dist/cjs/crl-3f681d44.js +0 -322
  592. package/dist/cjs/crl-3f681d44.js.map +0 -1
  593. package/dist/cjs/cross-9872c473.js +0 -51
  594. package/dist/cjs/download-0fa5b33c.js +0 -476
  595. package/dist/cjs/download-0fa5b33c.js.map +0 -1
  596. package/dist/cjs/download-254ddc57.js +0 -23
  597. package/dist/cjs/index-efd561e9.js.map +0 -1
  598. package/dist/cjs/link-6aea0be4.js +0 -25
  599. package/dist/cjs/miscellaneous-905ec852.js +0 -1416
  600. package/dist/cjs/miscellaneous-905ec852.js.map +0 -1
  601. package/dist/cjs/x509_certificate-69764c52.js +0 -160
  602. package/dist/cjs/x509_certificate-69764c52.js.map +0 -1
  603. package/dist/collection/crypto/crl.js +0 -92
  604. package/dist/collection/crypto/crl.js.map +0 -1
  605. package/dist/collection/crypto/csr.js +0 -99
  606. package/dist/collection/crypto/csr.js.map +0 -1
  607. package/dist/esm/actions-8d745b2a.js +0 -21
  608. package/dist/esm/arrow_top-fc298828.js +0 -34
  609. package/dist/esm/button-35146bdd.js +0 -74
  610. package/dist/esm/certification_request-d5ea5973.js.map +0 -1
  611. package/dist/esm/crl-d13d9ec5.js +0 -318
  612. package/dist/esm/crl-d13d9ec5.js.map +0 -1
  613. package/dist/esm/cross-9ec9a759.js +0 -47
  614. package/dist/esm/download-0cc3077a.js +0 -21
  615. package/dist/esm/download-aacb6eff.js +0 -470
  616. package/dist/esm/download-aacb6eff.js.map +0 -1
  617. package/dist/esm/index-4079bbb5.js.map +0 -1
  618. package/dist/esm/link-ad24c3be.js +0 -23
  619. package/dist/esm/miscellaneous-cdfd8905.js +0 -1399
  620. package/dist/esm/miscellaneous-cdfd8905.js.map +0 -1
  621. package/dist/esm/x509_certificate-a9fcab55.js +0 -158
  622. package/dist/esm/x509_certificate-a9fcab55.js.map +0 -1
  623. package/dist/esm-es5/button-35146bdd.js +0 -19
  624. package/dist/esm-es5/certification_request-d5ea5973.js.map +0 -1
  625. package/dist/esm-es5/crl-d13d9ec5.js +0 -33
  626. package/dist/esm-es5/crl-d13d9ec5.js.map +0 -1
  627. package/dist/esm-es5/download-aacb6eff.js +0 -43
  628. package/dist/esm-es5/download-aacb6eff.js.map +0 -1
  629. package/dist/esm-es5/index-4079bbb5.js +0 -6
  630. package/dist/esm-es5/index-4079bbb5.js.map +0 -1
  631. package/dist/esm-es5/miscellaneous-cdfd8905.js.map +0 -1
  632. package/dist/esm-es5/x509_certificate-a9fcab55.js +0 -12
  633. package/dist/esm-es5/x509_certificate-a9fcab55.js.map +0 -1
  634. package/dist/peculiar/p-0b356bb5.js +0 -6
  635. package/dist/peculiar/p-0b356bb5.js.map +0 -1
  636. package/dist/peculiar/p-14f281b0.system.js +0 -43
  637. package/dist/peculiar/p-14f281b0.system.js.map +0 -1
  638. package/dist/peculiar/p-2fcad8cb.system.js +0 -20
  639. package/dist/peculiar/p-33196289.entry.js +0 -5
  640. package/dist/peculiar/p-33196289.entry.js.map +0 -1
  641. package/dist/peculiar/p-3b395604.system.entry.js +0 -5
  642. package/dist/peculiar/p-3b395604.system.entry.js.map +0 -1
  643. package/dist/peculiar/p-48474b8d.js +0 -12
  644. package/dist/peculiar/p-48474b8d.js.map +0 -1
  645. package/dist/peculiar/p-4a6ceeda.js +0 -97
  646. package/dist/peculiar/p-4a6ceeda.js.map +0 -1
  647. package/dist/peculiar/p-5151cb6f.system.entry.js +0 -5
  648. package/dist/peculiar/p-5151cb6f.system.entry.js.map +0 -1
  649. package/dist/peculiar/p-53784f15.system.entry.js +0 -5
  650. package/dist/peculiar/p-53784f15.system.entry.js.map +0 -1
  651. package/dist/peculiar/p-59e5ac12.js +0 -43
  652. package/dist/peculiar/p-59e5ac12.js.map +0 -1
  653. package/dist/peculiar/p-5aabeba7.system.js +0 -6
  654. package/dist/peculiar/p-5aabeba7.system.js.map +0 -1
  655. package/dist/peculiar/p-5ab007e9.entry.js +0 -5
  656. package/dist/peculiar/p-5ab007e9.entry.js.map +0 -1
  657. package/dist/peculiar/p-609ee9f0.entry.js +0 -5
  658. package/dist/peculiar/p-609ee9f0.entry.js.map +0 -1
  659. package/dist/peculiar/p-67156853.js.map +0 -1
  660. package/dist/peculiar/p-6cb88fd6.system.js +0 -13
  661. package/dist/peculiar/p-6daee4d7.system.js +0 -369
  662. package/dist/peculiar/p-6daee4d7.system.js.map +0 -1
  663. package/dist/peculiar/p-6e48afc4.system.js +0 -34
  664. package/dist/peculiar/p-6e48afc4.system.js.map +0 -1
  665. package/dist/peculiar/p-718982f4.system.entry.js +0 -111
  666. package/dist/peculiar/p-718982f4.system.entry.js.map +0 -1
  667. package/dist/peculiar/p-7f9beaa8.js +0 -19
  668. package/dist/peculiar/p-80832207.system.js +0 -5
  669. package/dist/peculiar/p-80832207.system.js.map +0 -1
  670. package/dist/peculiar/p-8fac1d56.js +0 -33
  671. package/dist/peculiar/p-8fac1d56.js.map +0 -1
  672. package/dist/peculiar/p-94a453d7.js +0 -12
  673. package/dist/peculiar/p-a3eeb94b.system.js +0 -5
  674. package/dist/peculiar/p-a67b8793.system.entry.js.map +0 -1
  675. package/dist/peculiar/p-a720c0a5.system.entry.js +0 -13
  676. package/dist/peculiar/p-a720c0a5.system.entry.js.map +0 -1
  677. package/dist/peculiar/p-a7386b78.entry.js +0 -12
  678. package/dist/peculiar/p-a7386b78.entry.js.map +0 -1
  679. package/dist/peculiar/p-ab7dc738.system.js +0 -13
  680. package/dist/peculiar/p-ab7dc738.system.js.map +0 -1
  681. package/dist/peculiar/p-b313be9e.system.js +0 -13
  682. package/dist/peculiar/p-c35b180c.entry.js.map +0 -1
  683. package/dist/peculiar/p-c99507d4.system.js +0 -20
  684. package/dist/peculiar/p-ddae2f8e.system.js +0 -27
  685. package/dist/peculiar/p-e0f4bda5.system.js +0 -97
  686. package/dist/peculiar/p-e0f4bda5.system.js.map +0 -1
  687. package/dist/peculiar/p-e6a3b4d4.system.js +0 -13
  688. package/dist/peculiar/p-f86279f6.entry.js +0 -110
  689. package/dist/peculiar/p-f86279f6.entry.js.map +0 -1
  690. package/dist/types/crypto/crl.d.ts +0 -34
  691. package/dist/types/crypto/csr.d.ts +0 -41
  692. /package/dist/esm-es5/{actions-8d745b2a.js.map → actions-aebcbc9d.js.map} +0 -0
  693. /package/dist/esm-es5/{arrow_top-fc298828.js.map → arrow_top-aee1ee02.js.map} +0 -0
  694. /package/dist/esm-es5/{button-35146bdd.js.map → button-a2fabf9a.js.map} +0 -0
  695. /package/dist/esm-es5/{cross-9ec9a759.js.map → cross-1377606f.js.map} +0 -0
  696. /package/dist/esm-es5/{download-0cc3077a.js.map → download-14dc1047.js.map} +0 -0
  697. /package/dist/esm-es5/{link-ad24c3be.js.map → link-7e4e9060.js.map} +0 -0
  698. /package/dist/peculiar/{p-6cb88fd6.system.js.map → p-243244af.system.js.map} +0 -0
  699. /package/dist/peculiar/{p-0fc2e2b4.js.map → p-27ca6743.js.map} +0 -0
  700. /package/dist/peculiar/{p-a3eeb94b.system.js.map → p-28b4d316.system.js.map} +0 -0
  701. /package/dist/peculiar/{p-7f9beaa8.js.map → p-4bc5ddbe.js.map} +0 -0
  702. /package/dist/peculiar/{p-b313be9e.system.js.map → p-5a662d6f.system.js.map} +0 -0
  703. /package/dist/peculiar/{p-e6a3b4d4.system.js.map → p-8bbee8f4.system.js.map} +0 -0
  704. /package/dist/peculiar/{p-370cee20.js.map → p-99efefea.js.map} +0 -0
  705. /package/dist/peculiar/{p-1ceb0fe3.js.map → p-a9487007.js.map} +0 -0
  706. /package/dist/peculiar/{p-17e3c47b.js.map → p-ae91d778.js.map} +0 -0
  707. /package/dist/peculiar/{p-94a453d7.js.map → p-e6a6e602.js.map} +0 -0
@@ -5,189 +5,159 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-efd561e9.js');
9
- const certification_request = require('./certification_request-5672c667.js');
10
- require('./download-0fa5b33c.js');
11
- const x509_certificate = require('./x509_certificate-69764c52.js');
12
- const crl = require('./crl-3f681d44.js');
13
- const button = require('./button-14e2b73f.js');
14
-
15
- /**
16
- * @license
17
- * Copyright (c) Peculiar Ventures, LLC.
18
- *
19
- * This source code is licensed under the MIT license found in the
20
- * LICENSE file in the root directory of this source tree.
21
- */
22
- /**
23
- * Read file as Binary string
24
- *
25
- * @example
26
- * ```js
27
- * const file = new File(['file'], 'file.pdf', { type: 'text/plain' });
28
- * readAsBinaryString(file)
29
- * .then(result => console.log('Readed success', result))
30
- * .catch(err => console.log('An error occured when reading file', err));
31
- * ```
32
- */
33
- function readAsBinaryString(file) {
34
- return new Promise((resolve, reject) => {
35
- const reader = new FileReader();
36
- reader.onload = () => resolve({
37
- value: reader.result,
38
- fileName: file.name,
39
- fileSize: file.size,
40
- sourceMime: file.type,
41
- });
42
- reader.onerror = () => reject(reader.error);
43
- reader.readAsBinaryString(file);
44
- });
45
- }
8
+ const index = require('./index-e2ae280a.js');
9
+ const certification_request = require('./certification_request-815ec558.js');
10
+ const read_file = require('./read_file-2e22a97e.js');
11
+ const x509_certificate = require('./x509_certificate-9914b149.js');
12
+ const x509_crl = require('./x509_crl-86b6e71d.js');
13
+ const pkcs10_certificate_request = require('./pkcs10_certificate_request-0ebc0023.js');
14
+ const button = require('./button-87086210.js');
46
15
 
47
16
  const certificateDecoderCss = "*{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;-webkit-text-size-adjust:none;-webkit-tap-highlight-color:transparent;font-family:var(--pv-font-family, inherit)}.t-h1{font-weight:var(--pv-text-h1-weight);font-size:var(--pv-text-h1-size);line-height:var(--pv-text-h1-height);letter-spacing:var(--pv-text-h1-spacing)}.t-h2{font-weight:var(--pv-text-h2-weight);font-size:var(--pv-text-h2-size);line-height:var(--pv-text-h2-height);letter-spacing:var(--pv-text-h2-spacing)}.t-h3{font-weight:var(--pv-text-h3-weight);font-size:var(--pv-text-h3-size);line-height:var(--pv-text-h3-height);letter-spacing:var(--pv-text-h3-spacing)}.t-h4{font-weight:var(--pv-text-h4-weight);font-size:var(--pv-text-h4-size);line-height:var(--pv-text-h4-height);letter-spacing:var(--pv-text-h4-spacing)}.t-h5{font-weight:var(--pv-text-h5-weight);font-size:var(--pv-text-h5-size);line-height:var(--pv-text-h5-height);letter-spacing:var(--pv-text-h5-spacing)}.t-s1{font-weight:var(--pv-text-s1-weight);font-size:var(--pv-text-s1-size);line-height:var(--pv-text-s1-height);letter-spacing:var(--pv-text-s1-spacing)}.t-s2{font-weight:var(--pv-text-s2-weight);font-size:var(--pv-text-s2-size);line-height:var(--pv-text-s2-height);letter-spacing:var(--pv-text-s2-spacing)}.t-b1{font-weight:var(--pv-text-b1-weight);font-size:var(--pv-text-b1-size);line-height:var(--pv-text-b1-height);letter-spacing:var(--pv-text-b1-spacing)}.t-b2{font-weight:var(--pv-text-b2-weight);font-size:var(--pv-text-b2-size);line-height:var(--pv-text-b2-height);letter-spacing:var(--pv-text-b2-spacing)}.t-b3{font-weight:var(--pv-text-b3-weight);font-size:var(--pv-text-b3-size);line-height:var(--pv-text-b3-height);letter-spacing:var(--pv-text-b3-spacing)}.t-btn1{font-weight:var(--pv-text-btn1-weight);font-size:var(--pv-text-btn1-size);line-height:var(--pv-text-btn1-height);letter-spacing:var(--pv-text-btn1-spacing)}.t-btn2{font-weight:var(--pv-text-btn2-weight);font-size:var(--pv-text-btn2-size);line-height:var(--pv-text-btn2-height);letter-spacing:var(--pv-text-btn2-spacing)}.t-c1{font-weight:var(--pv-text-c1-weight);font-size:var(--pv-text-c1-size);line-height:var(--pv-text-c1-height);letter-spacing:var(--pv-text-c1-spacing)}.t-c2{font-weight:var(--pv-text-c2-weight);font-size:var(--pv-text-c2-size);line-height:var(--pv-text-c2-height);letter-spacing:var(--pv-text-c2-spacing)}.c-primary-tint-5{--pv-color-base:var(--pv-color-primary-tint-5)}.c-primary-tint-4{--pv-color-base:var(--pv-color-primary-tint-4)}.c-primary-tint-3{--pv-color-base:var(--pv-color-primary-tint-3)}.c-primary-tint-2{--pv-color-base:var(--pv-color-primary-tint-2)}.c-primary-tint-1{--pv-color-base:var(--pv-color-primary-tint-1)}.c-primary{--pv-color-base:var(--pv-color-primary)}.c-primary-shade-1{--pv-color-base:var(--pv-color-primary-shade-1)}.c-primary-shade-2{--pv-color-base:var(--pv-color-primary-shade-2)}.c-primary-shade-3{--pv-color-base:var(--pv-color-primary-shade-3)}.c-primary-shade-4{--pv-color-base:var(--pv-color-primary-shade-4)}.c-primary-shade-5{--pv-color-base:var(--pv-color-primary-shade-5)}.c-primary-contrast{--pv-color-base:var(--pv-color-primary-contrast)}.c-secondary-tint-5{--pv-color-base:var(--pv-color-secondary-tint-5)}.c-secondary-tint-4{--pv-color-base:var(--pv-color-secondary-tint-4)}.c-secondary-tint-3{--pv-color-base:var(--pv-color-secondary-tint-3)}.c-secondary-tint-2{--pv-color-base:var(--pv-color-secondary-tint-2)}.c-secondary-tint-1{--pv-color-base:var(--pv-color-secondary-tint-1)}.c-secondary{--pv-color-base:var(--pv-color-secondary)}.c-secondary-shade-1{--pv-color-base:var(--pv-color-secondary-shade-1)}.c-secondary-shade-2{--pv-color-base:var(--pv-color-secondary-shade-2)}.c-secondary-shade-3{--pv-color-base:var(--pv-color-secondary-shade-3)}.c-secondary-shade-4{--pv-color-base:var(--pv-color-secondary-shade-4)}.c-secondary-shade-5{--pv-color-base:var(--pv-color-secondary-shade-5)}.c-secondary-contrast{--pv-color-base:var(--pv-color-secondary-contrast)}.c-wrong-tint-5{--pv-color-base:var(--pv-color-wrong-tint-5)}.c-wrong-tint-4{--pv-color-base:var(--pv-color-wrong-tint-4)}.c-wrong-tint-3{--pv-color-base:var(--pv-color-wrong-tint-3)}.c-wrong-tint-2{--pv-color-base:var(--pv-color-wrong-tint-2)}.c-wrong-tint-1{--pv-color-base:var(--pv-color-wrong-tint-1)}.c-wrong{--pv-color-base:var(--pv-color-wrong)}.c-wrong-shade-1{--pv-color-base:var(--pv-color-wrong-shade-1)}.c-wrong-shade-2{--pv-color-base:var(--pv-color-wrong-shade-2)}.c-wrong-shade-3{--pv-color-base:var(--pv-color-wrong-shade-3)}.c-wrong-shade-4{--pv-color-base:var(--pv-color-wrong-shade-4)}.c-wrong-shade-5{--pv-color-base:var(--pv-color-wrong-shade-5)}.c-wrong-contrast{--pv-color-base:var(--pv-color-wrong-contrast)}.c-attention-tint-5{--pv-color-base:var(--pv-color-attention-tint-5)}.c-attention-tint-4{--pv-color-base:var(--pv-color-attention-tint-4)}.c-attention-tint-3{--pv-color-base:var(--pv-color-attention-tint-3)}.c-attention-tint-2{--pv-color-base:var(--pv-color-attention-tint-2)}.c-attention-tint-1{--pv-color-base:var(--pv-color-attention-tint-1)}.c-attention{--pv-color-base:var(--pv-color-attention)}.c-attention-shade-1{--pv-color-base:var(--pv-color-attention-shade-1)}.c-attention-shade-2{--pv-color-base:var(--pv-color-attention-shade-2)}.c-attention-shade-3{--pv-color-base:var(--pv-color-attention-shade-3)}.c-attention-shade-4{--pv-color-base:var(--pv-color-attention-shade-4)}.c-attention-shade-5{--pv-color-base:var(--pv-color-attention-shade-5)}.c-success-tint-5{--pv-color-base:var(--pv-color-success-tint-5)}.c-success-tint-4{--pv-color-base:var(--pv-color-success-tint-4)}.c-success-tint-3{--pv-color-base:var(--pv-color-success-tint-3)}.c-success-tint-2{--pv-color-base:var(--pv-color-success-tint-2)}.c-success-tint-1{--pv-color-base:var(--pv-color-success-tint-1)}.c-success{--pv-color-base:var(--pv-color-success)}.c-success-shade-1{--pv-color-base:var(--pv-color-success-shade-1)}.c-success-shade-2{--pv-color-base:var(--pv-color-success-shade-2)}.c-success-shade-3{--pv-color-base:var(--pv-color-success-shade-3)}.c-success-shade-4{--pv-color-base:var(--pv-color-success-shade-4)}.c-success-shade-5{--pv-color-base:var(--pv-color-success-shade-5)}.c-black{--pv-color-base:var(--pv-color-black)}.c-gray-10{--pv-color-base:var(--pv-color-gray-10)}.c-gray-9{--pv-color-base:var(--pv-color-gray-9)}.c-gray-8{--pv-color-base:var(--pv-color-gray-8)}.c-gray-7{--pv-color-base:var(--pv-color-gray-7)}.c-gray-6{--pv-color-base:var(--pv-color-gray-6)}.c-gray-5{--pv-color-base:var(--pv-color-gray-5)}.c-gray-4{--pv-color-base:var(--pv-color-gray-4)}.c-gray-3{--pv-color-base:var(--pv-color-gray-3)}.c-gray-2{--pv-color-base:var(--pv-color-gray-2)}.c-gray-1{--pv-color-base:var(--pv-color-gray-1)}.c-white{--pv-color-base:var(--pv-color-white)}.c-extra-1{--pv-color-base:var(--pv-color-extra-1)}.c-extra-2{--pv-color-base:var(--pv-color-extra-2)}.typography{color:var(--pv-color-base)}.button{display:-ms-inline-flexbox;display:inline-flex;cursor:pointer;background:transparent;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;text-decoration:none;outline:none;font-family:inherit;border-radius:4px;height:var(--pv-size-base-6);min-width:var(--pv-size-base-6);padding:0 var(--pv-size-base-2);-webkit-transition:background-color 200ms ease 0s;transition:background-color 200ms ease 0s;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;gap:var(--pv-size-base-2);font-size:0}.button.m_no_padding{padding:0}.button:hover{background-color:var(--pv-color-gray-3)}.button:focus{background-color:var(--pv-color-gray-4)}.button:active{background-color:var(--pv-color-gray-5)}:host{display:block;width:100%}.textarea{min-height:300px;width:100%;border-radius:4px;border:1px solid var(--pv-color-gray-5);padding:14px;font-family:monospace;resize:vertical}.viewer{margin-top:var(--pv-size-base-12)}.controls{margin-top:var(--pv-size-base-2);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:var(--pv-size-base-2)}.control_row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:var(--pv-size-base)}";
17
+ const PeculiarCertificateDecoderStyle0 = certificateDecoderCss;
48
18
 
49
19
  const CertificateDecoder = class {
50
- constructor(hostRef) {
51
- index.registerInstance(this, hostRef);
52
- this.successParse = index.createEvent(this, "successParse", 7);
53
- this.clearCertificate = index.createEvent(this, "clearCertificate", 7);
54
- this.handleClickDecode = () => {
55
- const { value } = this.inputPaste;
56
- if (value) {
57
- this.decode(value);
58
- }
59
- };
60
- this.handleClickClear = () => {
61
- this.clearValue();
62
- };
63
- this.handleChangeInputFile = async (event) => {
64
- const element = event.target;
65
- if (element.files) {
66
- const file = await readAsBinaryString(element.files[0]);
67
- if (typeof file.value === 'string') {
68
- this.decode(file.value);
69
- }
70
- element.value = '';
71
- }
72
- };
73
- this.handleChangeExample = (event) => {
74
- if (event.target.value) {
75
- this.decode(event.target.value);
76
- }
77
- else {
78
- this.clearValue();
79
- }
80
- };
81
- this.handleDropFile = async (event) => {
82
- event.stopPropagation();
83
- event.preventDefault();
84
- const element = event.dataTransfer;
85
- if (element.files) {
86
- const file = await readAsBinaryString(element.files[0]);
87
- if (typeof file.value === 'string') {
88
- this.decode(file.value);
89
- }
90
- }
91
- };
92
- this.certificateExamples = undefined;
93
- this.defaultCertificate = undefined;
94
- this.certificateDecoded = undefined;
95
- }
96
- componentDidLoad() {
97
- if (this.defaultCertificate) {
98
- /**
99
- * Prevent Stencil warning about re-render
100
- */
101
- setTimeout(() => this.decode(this.defaultCertificate), 100);
20
+ constructor(hostRef) {
21
+ index.registerInstance(this, hostRef);
22
+ this.successParse = index.createEvent(this, "successParse", 7);
23
+ this.clearCertificate = index.createEvent(this, "clearCertificate", 7);
24
+ this.handleClickDecode = () => {
25
+ const { value } = this.inputPaste;
26
+ if (value) {
27
+ this.decode(value);
28
+ }
29
+ };
30
+ this.handleClickClear = () => {
31
+ this.clearValue();
32
+ };
33
+ this.handleChangeInputFile = async (event) => {
34
+ const element = event.target;
35
+ if (element.files) {
36
+ const file = await read_file.readAsBinaryString(element.files[0]);
37
+ if (typeof file.value === 'string') {
38
+ this.decode(file.value);
39
+ }
40
+ element.value = '';
41
+ }
42
+ };
43
+ this.handleChangeExample = (event) => {
44
+ if (event.target.value) {
45
+ this.decode(event.target.value);
46
+ }
47
+ else {
48
+ this.clearValue();
49
+ }
50
+ };
51
+ this.handleDropFile = async (event) => {
52
+ event.stopPropagation();
53
+ event.preventDefault();
54
+ const element = event.dataTransfer;
55
+ if (element.files) {
56
+ const file = await read_file.readAsBinaryString(element.files[0]);
57
+ if (typeof file.value === 'string') {
58
+ this.decode(file.value);
59
+ }
60
+ }
61
+ };
62
+ this.certificateExamples = undefined;
63
+ this.defaultCertificate = undefined;
64
+ this.certificateDecoded = undefined;
102
65
  }
103
- }
104
- clearValue() {
105
- this.inputPaste.value = '';
106
- this.certificateDecoded = null;
107
- this.clearCertificate.emit();
108
- }
109
- setValue(value) {
110
- this.certificateDecoded = value;
111
- this.inputPaste.value = value.exportAsPemFormatted();
112
- this.successParse.emit(value.exportAsBase64());
113
- }
114
- decode(certificate) {
115
- const isPem = certification_request.isPem(certificate);
116
- const isX509Pem = certification_request.isX509Pem(certificate);
117
- const isPkcs10Pem = certification_request.isPkcs10Pem(certificate);
118
- const isX509AttributePem = certification_request.isX509AttributePem(certificate);
119
- const isX509CRLPem = certification_request.isX509CRLPem(certificate);
120
- let decoded;
121
- let decodeError;
122
- if (isPem && !(isX509Pem || isX509AttributePem || isPkcs10Pem || isX509CRLPem)) {
123
- this.clearValue();
124
- alert('Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');
125
- return;
126
- }
127
- try {
128
- if (isX509Pem) {
129
- decoded = new x509_certificate.X509Certificate(certificate);
130
- }
131
- if (isX509AttributePem) {
132
- decoded = new crl.X509AttributeCertificate(certificate);
133
- }
134
- if (isPkcs10Pem) {
135
- decoded = new crl.CSR(certificate);
136
- }
137
- if (isX509CRLPem) {
138
- decoded = new crl.CRL(certificate);
139
- }
140
- }
141
- catch (error) {
142
- decodeError = error;
143
- }
144
- if (!decoded) {
145
- try {
146
- decoded = new x509_certificate.X509Certificate(certificate);
147
- }
148
- catch (error) {
149
- decodeError = error;
150
- }
151
- }
152
- if (!decoded) {
153
- try {
154
- decoded = new crl.X509AttributeCertificate(certificate);
155
- }
156
- catch (error) {
157
- decodeError = error;
158
- }
66
+ componentDidLoad() {
67
+ if (this.defaultCertificate) {
68
+ /**
69
+ * Prevent Stencil warning about re-render
70
+ */
71
+ setTimeout(() => this.decode(this.defaultCertificate), 100);
72
+ }
159
73
  }
160
- if (!decoded) {
161
- try {
162
- decoded = new crl.CSR(certificate);
163
- }
164
- catch (error) {
165
- decodeError = error;
166
- }
74
+ clearValue() {
75
+ this.inputPaste.value = '';
76
+ this.certificateDecoded = null;
77
+ this.clearCertificate.emit();
167
78
  }
168
- if (!decoded) {
169
- try {
170
- decoded = new crl.CRL(certificate);
171
- }
172
- catch (error) {
173
- decodeError = error;
174
- }
79
+ setValue(value) {
80
+ this.certificateDecoded = value;
81
+ this.inputPaste.value = value.toString('pem');
82
+ this.successParse.emit(value.toString('base64'));
175
83
  }
176
- if (!decoded) {
177
- this.clearValue();
178
- console.log(decodeError);
179
- alert('Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');
84
+ decode(certificate) {
85
+ const isPem = certification_request.isPem(certificate);
86
+ const isX509Pem = certification_request.isX509Pem(certificate);
87
+ const isPkcs10Pem = certification_request.isPkcs10Pem(certificate);
88
+ const isX509AttributePem = certification_request.isX509AttributePem(certificate);
89
+ const isX509CRLPem = certification_request.isX509CRLPem(certificate);
90
+ let decoded;
91
+ let decodeError;
92
+ if (isPem && !(isX509Pem || isX509AttributePem || isPkcs10Pem || isX509CRLPem)) {
93
+ this.clearValue();
94
+ alert('Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');
95
+ return;
96
+ }
97
+ try {
98
+ if (isX509Pem) {
99
+ decoded = new x509_certificate.X509Certificate(certificate);
100
+ }
101
+ if (isX509AttributePem) {
102
+ decoded = new x509_crl.X509AttributeCertificate(certificate);
103
+ }
104
+ if (isPkcs10Pem) {
105
+ decoded = new pkcs10_certificate_request.Pkcs10CertificateRequest(certificate);
106
+ }
107
+ if (isX509CRLPem) {
108
+ decoded = new x509_crl.X509Crl(certificate);
109
+ }
110
+ }
111
+ catch (error) {
112
+ decodeError = error;
113
+ }
114
+ if (!decoded) {
115
+ try {
116
+ decoded = new x509_certificate.X509Certificate(certificate);
117
+ }
118
+ catch (error) {
119
+ decodeError = error;
120
+ }
121
+ }
122
+ if (!decoded) {
123
+ try {
124
+ decoded = new x509_crl.X509AttributeCertificate(certificate);
125
+ }
126
+ catch (error) {
127
+ decodeError = error;
128
+ }
129
+ }
130
+ if (!decoded) {
131
+ try {
132
+ decoded = new pkcs10_certificate_request.Pkcs10CertificateRequest(certificate);
133
+ }
134
+ catch (error) {
135
+ decodeError = error;
136
+ }
137
+ }
138
+ if (!decoded) {
139
+ try {
140
+ decoded = new x509_crl.X509Crl(certificate);
141
+ }
142
+ catch (error) {
143
+ decodeError = error;
144
+ }
145
+ }
146
+ if (!decoded) {
147
+ this.clearValue();
148
+ console.log(decodeError);
149
+ alert('Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');
150
+ }
151
+ else {
152
+ this.setValue(decoded);
153
+ }
180
154
  }
181
- else {
182
- this.setValue(decoded);
155
+ render() {
156
+ var _a;
157
+ return (index.h(index.Host, { key: '7e7738b6552c8bcecc62850e7cffd915b94dc144' }, index.h("textarea", { key: 'fce9e435a476f015ac9fcafba23cb6cd338734b9', placeholder: "Certificate DER or PEM", class: "textarea t-b2 c-black", ref: (el) => { this.inputPaste = el; }, onDrop: this.handleDropFile }), index.h("div", { key: '5fbb94920b5226a81ca57c9ebf489f081684f282', class: "controls" }, index.h("div", { key: '828ff9a65a035dafa43b8bca8f7746682b86afac', class: "control_row" }, index.h(button.Typography, { key: '80b75774669e2f54dda2fbdbd87cb5a6932f43fc', variant: "b3", color: "secondary-tint-2" }, "Drag or load file:"), index.h("input", { key: 'fb281f25973807c84fda36dd52c99c1fe6c62398', type: "file", accept: "application/pkix-cert,application/x-x509-ca-cert,application/x-x509-user-cert,application/pkcs10,application/pkix-crl,.csr,.req,.crl", onChange: this.handleChangeInputFile, value: "" })), ((_a = this.certificateExamples) === null || _a === void 0 ? void 0 : _a.length) && (index.h("div", { class: "control_row" }, index.h(button.Typography, { variant: "b3", color: "secondary-tint-2" }, "Load examples:"), index.h("select", { onChange: this.handleChangeExample }, index.h("option", { value: "" }, "None"), this.certificateExamples.map((example) => (index.h("option", { value: example.value }, example.title)))))), index.h("div", { key: 'a975c8f848d0c2dd2dd1e74d558051a3a28c99e7', class: "control_row" }, index.h(button.Button, { key: '4979abadf98b879c32751d5454d00bb4323a306b', onClick: this.handleClickDecode }, "Decode"), index.h(button.Button, { key: '2f1118d241db412e56a00bf449acbc24853efff9', onClick: this.handleClickClear }, "Clear"))), this.certificateDecoded instanceof x509_certificate.X509Certificate && (index.h("peculiar-certificate-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true })), this.certificateDecoded instanceof x509_crl.X509AttributeCertificate && (index.h("peculiar-attribute-certificate-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true })), this.certificateDecoded instanceof pkcs10_certificate_request.Pkcs10CertificateRequest && (index.h("peculiar-csr-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true })), this.certificateDecoded instanceof x509_crl.X509Crl && (index.h("peculiar-crl-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true }))));
183
158
  }
184
- }
185
- render() {
186
- var _a;
187
- return (index.h(index.Host, null, index.h("textarea", { placeholder: "Certificate DER or PEM", class: "textarea t-b2 c-black", ref: (el) => { this.inputPaste = el; }, onDrop: this.handleDropFile }), index.h("div", { class: "controls" }, index.h("div", { class: "control_row" }, index.h(button.Typography, { variant: "b3", color: "secondary-tint-2" }, "Drag or load file:"), index.h("input", { 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: "" })), ((_a = this.certificateExamples) === null || _a === void 0 ? void 0 : _a.length) && (index.h("div", { class: "control_row" }, index.h(button.Typography, { variant: "b3", color: "secondary-tint-2" }, "Load examples:"), index.h("select", { onChange: this.handleChangeExample }, index.h("option", { value: "" }, "None"), this.certificateExamples.map((example) => (index.h("option", { value: example.value }, example.title)))))), index.h("div", { class: "control_row" }, index.h(button.Button, { onClick: this.handleClickDecode }, "Decode"), index.h(button.Button, { onClick: this.handleClickClear }, "Clear"))), this.certificateDecoded instanceof x509_certificate.X509Certificate && (index.h("peculiar-certificate-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true })), this.certificateDecoded instanceof crl.X509AttributeCertificate && (index.h("peculiar-attribute-certificate-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true })), this.certificateDecoded instanceof crl.CSR && (index.h("peculiar-csr-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true })), this.certificateDecoded instanceof crl.CRL && (index.h("peculiar-crl-viewer", { certificate: this.certificateDecoded, class: "viewer", download: true }))));
188
- }
189
159
  };
190
- CertificateDecoder.style = certificateDecoderCss;
160
+ CertificateDecoder.style = PeculiarCertificateDecoderStyle0;
191
161
 
192
162
  exports.peculiar_certificate_decoder = CertificateDecoder;
193
163
 
@@ -1 +1 @@
1
- {"file":"peculiar-certificate-decoder.entry.cjs.js","mappings":"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","names":["validator.isPem","validator.isX509Pem","validator.isPkcs10Pem","validator.isX509AttributePem","validator.isX509CRLPem","X509Certificate","X509AttributeCertificate","CSR","CRL","h","Host","Typography","Button"],"sources":["src/utils/read_file.ts","src/components/certificate-decoder/certificate-decoder.scss?tag=peculiar-certificate-decoder&encapsulation=shadow","src/components/certificate-decoder/certificate-decoder.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\nexport type FileValue = string | ArrayBuffer | null;\nexport interface IFileDataType extends Blob {\n name?: string;\n mimeType?: string;\n lastModified?: number;\n}\nexport interface IReadFileResult {\n value: FileValue;\n fileName: string | undefined;\n fileSize: number | undefined;\n sourceMime: string | undefined;\n}\n\n/**\n * Read file as Binary string\n *\n * @example\n * ```js\n * const file = new File(['file'], 'file.pdf', { type: 'text/plain' });\n * readAsBinaryString(file)\n * .then(result => console.log('Readed success', result))\n * .catch(err => console.log('An error occured when reading file', err));\n * ```\n */\n\nexport function readAsBinaryString(file: IFileDataType): Promise<IReadFileResult> {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = () => resolve({\n value: reader.result,\n fileName: file.name,\n fileSize: file.size,\n sourceMime: file.type,\n });\n\n reader.onerror = () => reject(reader.error);\n\n reader.readAsBinaryString(file);\n });\n}\n\n/**\n * Read file as ArrayBuffer\n *\n * @example\n * ```js\n * const file = new File(['file'], 'file.pdf', { type: 'text/plain' });\n * readAsArrayBuffer(file)\n * .then(result => console.log('Readed success', result))\n * .catch(err => console.log('An error occured when reading file', err));\n * ```\n */\n\nexport function readAsArrayBuffer(file: IFileDataType): Promise<IReadFileResult> {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = () => resolve({\n value: reader.result,\n fileName: file.name,\n fileSize: file.size,\n sourceMime: file.type,\n });\n\n reader.onerror = () => reject(reader.error);\n\n reader.readAsArrayBuffer(file);\n });\n}\n\n/**\n * Read file as Data URL\n *\n * @example\n * ```js\n * const file = new File(['file'], 'file.pdf', { type: 'text/plain' });\n * readAsDataUrl(file)\n * .then(result => console.log('Readed success', result))\n * .catch(err => console.log('An error occured when reading file', err));\n * ```\n */\n\nexport function readAsDataUrl(file: IFileDataType): Promise<IReadFileResult> {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = () => resolve({\n value: reader.result,\n fileName: file.name,\n fileSize: file.size,\n sourceMime: file.type,\n });\n\n reader.onerror = () => reject(reader.error);\n\n reader.readAsDataURL(file);\n });\n}\n\n/**\n * Read file as Text\n *\n * @example\n * ```js\n * const file = new File(['file'], 'file.pdf', { type: 'text/plain' });\n * readAsText(file)\n * .then(result => console.log('Readed success', result))\n * .catch(err => console.log('An error occured when reading file', err));\n * ```\n */\n\nexport function readAsText(file: IFileDataType, options?: string): Promise<IReadFileResult> {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.onload = () => resolve({\n value: reader.result,\n fileName: file.name,\n fileSize: file.size,\n sourceMime: file.type,\n });\n\n reader.onerror = () => reject(reader.error);\n\n reader.readAsText(file, options);\n });\n}\n","@import '../../css/base.scss';\n\n:host {\n display: block;\n width: 100%;\n}\n\n.textarea {\n min-height: 300px;\n width: 100%;\n border-radius: 4px;\n border: 1px solid var(--pv-color-gray-5);;\n padding: 14px;\n font-family: monospace;\n resize: vertical;\n}\n\n.viewer {\n margin-top: var(--pv-size-base-12);\n}\n\n.controls {\n margin-top: var(--pv-size-base-2);\n display: flex;\n flex-direction: column;\n gap: var(--pv-size-base-2);\n}\n\n.control_row {\n display: flex;\n align-items: center;\n gap: var(--pv-size-base);\n}\n","/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Host,\n h,\n State,\n Prop,\n Event,\n EventEmitter,\n} from '@stencil/core';\n\nimport { validator, readAsBinaryString } from '../../utils';\nimport {\n X509Certificate,\n X509AttributeCertificate,\n CSR,\n CRL,\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 | X509AttributeCertificate | CSR | CRL;\n\n /**\n * Emitted when the certificate has been successfully parsed.\n */\n @Event() successParse!: EventEmitter<string>;\n\n /**\n * Emitted when the certificate has been removed.\n */\n @Event() clearCertificate!: EventEmitter<void>;\n\n componentDidLoad() {\n if (this.defaultCertificate) {\n /**\n * Prevent Stencil warning about re-render\n */\n setTimeout(() => this.decode(this.defaultCertificate), 100);\n }\n }\n\n private handleClickDecode = () => {\n const { value } = this.inputPaste;\n\n if (value) {\n this.decode(value);\n }\n };\n\n private handleClickClear = () => {\n this.clearValue();\n };\n\n private handleChangeInputFile = async (event: any) => {\n const element = event.target;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n\n element.value = '';\n }\n };\n\n private handleChangeExample = (event: any) => {\n if (event.target.value) {\n this.decode(event.target.value);\n } else {\n this.clearValue();\n }\n };\n\n private handleDropFile = async (event: any) => {\n event.stopPropagation();\n event.preventDefault();\n\n const element = event.dataTransfer;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n }\n };\n\n clearValue() {\n this.inputPaste.value = '';\n this.certificateDecoded = null;\n this.clearCertificate.emit();\n }\n\n setValue(value: X509Certificate | X509AttributeCertificate | CSR | CRL) {\n this.certificateDecoded = value;\n this.inputPaste.value = value.exportAsPemFormatted();\n this.successParse.emit(value.exportAsBase64());\n }\n\n decode(certificate: string) {\n const isPem = validator.isPem(certificate);\n const isX509Pem = validator.isX509Pem(certificate);\n const isPkcs10Pem = validator.isPkcs10Pem(certificate);\n const isX509AttributePem = validator.isX509AttributePem(certificate);\n const isX509CRLPem = validator.isX509CRLPem(certificate);\n let decoded: X509Certificate | X509AttributeCertificate | CSR | CRL;\n let decodeError: Error;\n\n if (isPem && !(isX509Pem || isX509AttributePem || isPkcs10Pem || isX509CRLPem)) {\n this.clearValue();\n\n alert('Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');\n\n return;\n }\n\n try {\n if (isX509Pem) {\n decoded = new X509Certificate(certificate);\n }\n\n if (isX509AttributePem) {\n decoded = new X509AttributeCertificate(certificate);\n }\n\n if (isPkcs10Pem) {\n decoded = new CSR(certificate);\n }\n\n if (isX509CRLPem) {\n decoded = new CRL(certificate);\n }\n } catch (error) {\n decodeError = error;\n }\n\n if (!decoded) {\n try {\n decoded = new X509Certificate(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new X509AttributeCertificate(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new CSR(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new CRL(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n this.clearValue();\n\n console.log(decodeError);\n alert('Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');\n } else {\n this.setValue(decoded);\n }\n }\n\n render() {\n return (\n <Host>\n <textarea\n placeholder=\"Certificate DER or PEM\"\n class=\"textarea t-b2 c-black\"\n ref={(el) => { this.inputPaste = el; }}\n onDrop={this.handleDropFile}\n />\n <div class=\"controls\">\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Drag or load file:\n </Typography>\n <input\n type=\"file\"\n accept=\"application/pkix-cert,application/x-x509-ca-cert,application/x-x509-user-cert,application/pkcs10,application/pkix-crl,.csr,.req,.crl\"\n onChange={this.handleChangeInputFile}\n value=\"\"\n />\n </div>\n {this.certificateExamples?.length && (\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Load examples:\n </Typography>\n <select onChange={this.handleChangeExample}>\n <option value=\"\">None</option>\n {this.certificateExamples.map((example) => (\n <option value={example.value}>\n {example.title}\n </option>\n ))}\n </select>\n </div>\n )}\n <div class=\"control_row\">\n <Button\n onClick={this.handleClickDecode}\n >\n Decode\n </Button>\n <Button\n onClick={this.handleClickClear}\n >\n Clear\n </Button>\n </div>\n </div>\n {this.certificateDecoded instanceof X509Certificate && (\n <peculiar-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof X509AttributeCertificate && (\n <peculiar-attribute-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof CSR && (\n <peculiar-csr-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof CRL && (\n <peculiar-crl-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"peculiar-certificate-decoder.entry.cjs.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,qBAAqB,GAAG,inQAAinQ,CAAC;AAChpQ,yCAAe,qBAAqB;;MCgCvB,kBAAkB;;;;;QAwCrB,sBAAiB,GAAG;YAC1B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;YAElC,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACpB;SACF,CAAC;QAEM,qBAAgB,GAAG;YACzB,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB,CAAC;QAEM,0BAAqB,GAAG,OAAO,KAAU;YAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;YAE7B,IAAI,OAAO,CAAC,KAAK,EAAE;gBACjB,MAAM,IAAI,GAAG,MAAMA,4BAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAExD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;oBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACzB;gBAED,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;aACpB;SACF,CAAC;QAEM,wBAAmB,GAAG,CAAC,KAAU;YACvC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;gBACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACjC;iBAAM;gBACL,IAAI,CAAC,UAAU,EAAE,CAAC;aACnB;SACF,CAAC;QAEM,mBAAc,GAAG,OAAO,KAAU;YACxC,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,CAAC,cAAc,EAAE,CAAC;YAEvB,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC;YAEnC,IAAI,OAAO,CAAC,KAAK,EAAE;gBACjB,MAAM,IAAI,GAAG,MAAMA,4BAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAExD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;oBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACzB;aACF;SACF,CAAC;;;;;IAxDF,gBAAgB;QACd,IAAI,IAAI,CAAC,kBAAkB,EAAE;;;;YAI3B,UAAU,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,CAAC;SAC7D;KACF;IAmDD,UAAU;QACR,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;KAC9B;IAED,QAAQ,CAAC,KAAsF;QAC7F,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;KAClD;IAED,MAAM,CAAC,WAAmB;QACxB,MAAM,KAAK,GAAGC,2BAAe,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAGC,+BAAmB,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,WAAW,GAAGC,iCAAqB,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,kBAAkB,GAAGC,wCAA4B,CAAC,WAAW,CAAC,CAAC;QACrE,MAAM,YAAY,GAAGC,kCAAsB,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,OAAwF,CAAC;QAC7F,IAAI,WAAkB,CAAC;QAEvB,IAAI,KAAK,IAAI,EAAE,SAAS,IAAI,kBAAkB,IAAI,WAAW,IAAI,YAAY,CAAC,EAAE;YAC9E,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,KAAK,CAAC,mGAAmG,CAAC,CAAC;YAE3G,OAAO;SACR;QAED,IAAI;YACF,IAAI,SAAS,EAAE;gBACb,OAAO,GAAG,IAAIC,gCAAe,CAAC,WAAW,CAAC,CAAC;aAC5C;YAED,IAAI,kBAAkB,EAAE;gBACtB,OAAO,GAAG,IAAIC,iCAAwB,CAAC,WAAW,CAAC,CAAC;aACrD;YAED,IAAI,WAAW,EAAE;gBACf,OAAO,GAAG,IAAIC,mDAAwB,CAAC,WAAW,CAAC,CAAC;aACrD;YAED,IAAI,YAAY,EAAE;gBAChB,OAAO,GAAG,IAAIC,gBAAO,CAAC,WAAW,CAAC,CAAC;aACpC;SACF;QAAC,OAAO,KAAK,EAAE;YACd,WAAW,GAAG,KAAK,CAAC;SACrB;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI;gBACF,OAAO,GAAG,IAAIH,gCAAe,CAAC,WAAW,CAAC,CAAC;aAC5C;YAAC,OAAO,KAAK,EAAE;gBACd,WAAW,GAAG,KAAK,CAAC;aACrB;SACF;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI;gBACF,OAAO,GAAG,IAAIC,iCAAwB,CAAC,WAAW,CAAC,CAAC;aACrD;YAAC,OAAO,KAAK,EAAE;gBACd,WAAW,GAAG,KAAK,CAAC;aACrB;SACF;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI;gBACF,OAAO,GAAG,IAAIC,mDAAwB,CAAC,WAAW,CAAC,CAAC;aACrD;YAAC,OAAO,KAAK,EAAE;gBACd,WAAW,GAAG,KAAK,CAAC;aACrB;SACF;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI;gBACF,OAAO,GAAG,IAAIC,gBAAO,CAAC,WAAW,CAAC,CAAC;aACpC;YAAC,OAAO,KAAK,EAAE;gBACd,WAAW,GAAG,KAAK,CAAC;aACrB;SACF;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACzB,KAAK,CAAC,iGAAiG,CAAC,CAAC;SAC1G;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SACxB;KACF;IAED,MAAM;;QACJ,QACEC,QAACC,UAAI,uDACHD,uEACE,WAAW,EAAC,wBAAwB,EACpC,KAAK,EAAC,uBAAuB,EAC7B,GAAG,EAAE,CAAC,EAAE,OAAO,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,EAAE,EACtC,MAAM,EAAE,IAAI,CAAC,cAAc,GAC3B,EACFA,kEAAK,KAAK,EAAC,UAAU,IACnBA,kEAAK,KAAK,EAAC,aAAa,IACtBA,QAACE,iBAAU,qDACT,OAAO,EAAC,IAAI,EACZ,KAAK,EAAC,kBAAkB,yBAGb,EACbF,oEACE,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,sIAAsI,EAC7I,QAAQ,EAAE,IAAI,CAAC,qBAAqB,EACpC,KAAK,EAAC,EAAE,GACR,CACE,EACL,CAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,MAAM,MAC/BA,iBAAK,KAAK,EAAC,aAAa,IACtBA,QAACE,iBAAU,IACT,OAAO,EAAC,IAAI,EACZ,KAAK,EAAC,kBAAkB,qBAGb,EACbF,oBAAQ,QAAQ,EAAE,IAAI,CAAC,mBAAmB,IACxCA,oBAAQ,KAAK,EAAC,EAAE,WAAc,EAC7B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,OAAO,MACpCA,oBAAQ,KAAK,EAAE,OAAO,CAAC,KAAK,IACzB,OAAO,CAAC,KAAK,CACP,CACV,CAAC,CACK,CACL,CACP,EACDA,kEAAK,KAAK,EAAC,aAAa,IACtBA,QAACG,aAAM,qDACL,OAAO,EAAE,IAAI,CAAC,iBAAiB,aAGxB,EACTH,QAACG,aAAM,qDACL,OAAO,EAAE,IAAI,CAAC,gBAAgB,YAGvB,CACL,CACF,EACL,IAAI,CAAC,kBAAkB,YAAYP,gCAAe,KACjDI,yCACE,WAAW,EAAE,IAAI,CAAC,kBAAkB,EACpC,KAAK,EAAC,QAAQ,EACd,QAAQ,SACR,CACH,EACA,IAAI,CAAC,kBAAkB,YAAYH,iCAAwB,KAC1DG,mDACE,WAAW,EAAE,IAAI,CAAC,kBAAkB,EACpC,KAAK,EAAC,QAAQ,EACd,QAAQ,SACR,CACH,EACA,IAAI,CAAC,kBAAkB,YAAYF,mDAAwB,KAC1DE,iCACE,WAAW,EAAE,IAAI,CAAC,kBAAkB,EACpC,KAAK,EAAC,QAAQ,EACd,QAAQ,SACR,CACH,EACA,IAAI,CAAC,kBAAkB,YAAYD,gBAAO,KACzCC,iCACE,WAAW,EAAE,IAAI,CAAC,kBAAkB,EACpC,KAAK,EAAC,QAAQ,EACd,QAAQ,SACR,CACH,CACI,EACP;KACH;;;;;;","names":["readAsBinaryString","validator.isPem","validator.isX509Pem","validator.isPkcs10Pem","validator.isX509AttributePem","validator.isX509CRLPem","X509Certificate","X509AttributeCertificate","Pkcs10CertificateRequest","X509Crl","h","Host","Typography","Button"],"sources":["src/components/certificate-decoder/certificate-decoder.scss?tag=peculiar-certificate-decoder&encapsulation=shadow","src/components/certificate-decoder/certificate-decoder.tsx"],"sourcesContent":["@import '../../css/base.scss';\n\n:host {\n display: block;\n width: 100%;\n}\n\n.textarea {\n min-height: 300px;\n width: 100%;\n border-radius: 4px;\n border: 1px solid var(--pv-color-gray-5);;\n padding: 14px;\n font-family: monospace;\n resize: vertical;\n}\n\n.viewer {\n margin-top: var(--pv-size-base-12);\n}\n\n.controls {\n margin-top: var(--pv-size-base-2);\n display: flex;\n flex-direction: column;\n gap: var(--pv-size-base-2);\n}\n\n.control_row {\n display: flex;\n align-items: center;\n gap: var(--pv-size-base);\n}\n","/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Host,\n h,\n State,\n Prop,\n Event,\n EventEmitter,\n} from '@stencil/core';\n\nimport { validator, readAsBinaryString } from '../../utils';\nimport {\n X509Certificate,\n X509AttributeCertificate,\n Pkcs10CertificateRequest,\n X509Crl,\n} from '../../crypto';\nimport { Button } from '../button';\nimport { Typography } from '../typography';\n\n@Component({\n tag: 'peculiar-certificate-decoder',\n styleUrl: 'certificate-decoder.scss',\n shadow: true,\n})\nexport class CertificateDecoder {\n private inputPaste?: HTMLTextAreaElement;\n\n /**\n * The example certificate value for decode and show details. Use PEM or DER.\n */\n @Prop() certificateExamples?: {\n title: string;\n value: string;\n }[];\n\n /**\n * The default certificate value for decode and show details. Use PEM or DER.\n */\n @Prop() defaultCertificate?: string;\n\n @State() certificateDecoded: X509Certificate\n | X509AttributeCertificate\n | Pkcs10CertificateRequest\n | X509Crl;\n\n /**\n * Emitted when the certificate has been successfully parsed.\n */\n @Event() successParse!: EventEmitter<string>;\n\n /**\n * Emitted when the certificate has been removed.\n */\n @Event() clearCertificate!: EventEmitter<void>;\n\n componentDidLoad() {\n if (this.defaultCertificate) {\n /**\n * Prevent Stencil warning about re-render\n */\n setTimeout(() => this.decode(this.defaultCertificate), 100);\n }\n }\n\n private handleClickDecode = () => {\n const { value } = this.inputPaste;\n\n if (value) {\n this.decode(value);\n }\n };\n\n private handleClickClear = () => {\n this.clearValue();\n };\n\n private handleChangeInputFile = async (event: any) => {\n const element = event.target;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n\n element.value = '';\n }\n };\n\n private handleChangeExample = (event: any) => {\n if (event.target.value) {\n this.decode(event.target.value);\n } else {\n this.clearValue();\n }\n };\n\n private handleDropFile = async (event: any) => {\n event.stopPropagation();\n event.preventDefault();\n\n const element = event.dataTransfer;\n\n if (element.files) {\n const file = await readAsBinaryString(element.files[0]);\n\n if (typeof file.value === 'string') {\n this.decode(file.value);\n }\n }\n };\n\n clearValue() {\n this.inputPaste.value = '';\n this.certificateDecoded = null;\n this.clearCertificate.emit();\n }\n\n setValue(value: X509Certificate | X509AttributeCertificate | Pkcs10CertificateRequest | X509Crl) {\n this.certificateDecoded = value;\n this.inputPaste.value = value.toString('pem');\n this.successParse.emit(value.toString('base64'));\n }\n\n decode(certificate: string) {\n const isPem = validator.isPem(certificate);\n const isX509Pem = validator.isX509Pem(certificate);\n const isPkcs10Pem = validator.isPkcs10Pem(certificate);\n const isX509AttributePem = validator.isX509AttributePem(certificate);\n const isX509CRLPem = validator.isX509CRLPem(certificate);\n let decoded: X509Certificate | X509AttributeCertificate | Pkcs10CertificateRequest | X509Crl;\n let decodeError: Error;\n\n if (isPem && !(isX509Pem || isX509AttributePem || isPkcs10Pem || isX509CRLPem)) {\n this.clearValue();\n\n alert('Unsupported file type. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');\n\n return;\n }\n\n try {\n if (isX509Pem) {\n decoded = new X509Certificate(certificate);\n }\n\n if (isX509AttributePem) {\n decoded = new X509AttributeCertificate(certificate);\n }\n\n if (isPkcs10Pem) {\n decoded = new Pkcs10CertificateRequest(certificate);\n }\n\n if (isX509CRLPem) {\n decoded = new X509Crl(certificate);\n }\n } catch (error) {\n decodeError = error;\n }\n\n if (!decoded) {\n try {\n decoded = new X509Certificate(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new X509AttributeCertificate(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new Pkcs10CertificateRequest(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n try {\n decoded = new X509Crl(certificate);\n } catch (error) {\n decodeError = error;\n }\n }\n\n if (!decoded) {\n this.clearValue();\n\n console.log(decodeError);\n alert('Error decoding file. Please try to use Certificate/AttributeCertificate/CertificateRequest/CRL.');\n } else {\n this.setValue(decoded);\n }\n }\n\n render() {\n return (\n <Host>\n <textarea\n placeholder=\"Certificate DER or PEM\"\n class=\"textarea t-b2 c-black\"\n ref={(el) => { this.inputPaste = el; }}\n onDrop={this.handleDropFile}\n />\n <div class=\"controls\">\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Drag or load file:\n </Typography>\n <input\n type=\"file\"\n accept=\"application/pkix-cert,application/x-x509-ca-cert,application/x-x509-user-cert,application/pkcs10,application/pkix-crl,.csr,.req,.crl\"\n onChange={this.handleChangeInputFile}\n value=\"\"\n />\n </div>\n {this.certificateExamples?.length && (\n <div class=\"control_row\">\n <Typography\n variant=\"b3\"\n color=\"secondary-tint-2\"\n >\n Load examples:\n </Typography>\n <select onChange={this.handleChangeExample}>\n <option value=\"\">None</option>\n {this.certificateExamples.map((example) => (\n <option value={example.value}>\n {example.title}\n </option>\n ))}\n </select>\n </div>\n )}\n <div class=\"control_row\">\n <Button\n onClick={this.handleClickDecode}\n >\n Decode\n </Button>\n <Button\n onClick={this.handleClickClear}\n >\n Clear\n </Button>\n </div>\n </div>\n {this.certificateDecoded instanceof X509Certificate && (\n <peculiar-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof X509AttributeCertificate && (\n <peculiar-attribute-certificate-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof Pkcs10CertificateRequest && (\n <peculiar-csr-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n {this.certificateDecoded instanceof X509Crl && (\n <peculiar-crl-viewer\n certificate={this.certificateDecoded}\n class=\"viewer\"\n download\n />\n )}\n </Host>\n );\n }\n}\n"],"version":3}