From 473e86705864ff5b6076f42ec93774c8d6a1d9ee Mon Sep 17 00:00:00 2001 From: Evangelos Skopelitis Date: Fri, 17 Jul 2026 16:52:07 -0400 Subject: [PATCH] cert-manager: Add i18n Signed-off-by: Evangelos Skopelitis --- cert-manager/locales/cs/translation.json | 118 ++++++++++++++++++ cert-manager/locales/de/translation.json | 118 ++++++++++++++++++ cert-manager/locales/en/translation.json | 118 ++++++++++++++++++ cert-manager/locales/es/translation.json | 118 ++++++++++++++++++ cert-manager/locales/fr/translation.json | 118 ++++++++++++++++++ cert-manager/locales/hu/translation.json | 118 ++++++++++++++++++ cert-manager/locales/id/translation.json | 118 ++++++++++++++++++ cert-manager/locales/it/translation.json | 118 ++++++++++++++++++ cert-manager/locales/ja/translation.json | 118 ++++++++++++++++++ cert-manager/locales/ko/translation.json | 118 ++++++++++++++++++ cert-manager/locales/nl/translation.json | 118 ++++++++++++++++++ cert-manager/locales/pl/translation.json | 118 ++++++++++++++++++ cert-manager/locales/pt-BR/translation.json | 118 ++++++++++++++++++ cert-manager/locales/pt-PT/translation.json | 118 ++++++++++++++++++ cert-manager/locales/ru/translation.json | 118 ++++++++++++++++++ cert-manager/locales/sv/translation.json | 118 ++++++++++++++++++ cert-manager/locales/tr/translation.json | 118 ++++++++++++++++++ cert-manager/locales/zh-Hans/translation.json | 118 ++++++++++++++++++ cert-manager/locales/zh-Hant/translation.json | 118 ++++++++++++++++++ cert-manager/package.json | 23 ++++ .../components/certificateRequests/Detail.tsx | 34 ++--- .../components/certificateRequests/List.tsx | 14 ++- .../src/components/certificates/Detail.tsx | 90 ++++++------- .../src/components/certificates/List.tsx | 12 +- .../src/components/challenges/Detail.tsx | 38 +++--- .../src/components/challenges/List.tsx | 8 +- .../src/components/clusterIssuers/Detail.tsx | 6 +- .../src/components/clusterIssuers/List.tsx | 6 +- .../components/common/CommonComponents.tsx | 78 +++++++----- .../common/processIssuerExtraInfo.tsx | 107 ++++++++++------ .../src/components/issuers/Detail.tsx | 8 +- cert-manager/src/components/issuers/List.tsx | 8 +- cert-manager/src/components/orders/Detail.tsx | 46 +++---- cert-manager/src/components/orders/List.tsx | 6 +- 34 files changed, 2531 insertions(+), 195 deletions(-) create mode 100644 cert-manager/locales/cs/translation.json create mode 100644 cert-manager/locales/de/translation.json create mode 100644 cert-manager/locales/en/translation.json create mode 100644 cert-manager/locales/es/translation.json create mode 100644 cert-manager/locales/fr/translation.json create mode 100644 cert-manager/locales/hu/translation.json create mode 100644 cert-manager/locales/id/translation.json create mode 100644 cert-manager/locales/it/translation.json create mode 100644 cert-manager/locales/ja/translation.json create mode 100644 cert-manager/locales/ko/translation.json create mode 100644 cert-manager/locales/nl/translation.json create mode 100644 cert-manager/locales/pl/translation.json create mode 100644 cert-manager/locales/pt-BR/translation.json create mode 100644 cert-manager/locales/pt-PT/translation.json create mode 100644 cert-manager/locales/ru/translation.json create mode 100644 cert-manager/locales/sv/translation.json create mode 100644 cert-manager/locales/tr/translation.json create mode 100644 cert-manager/locales/zh-Hans/translation.json create mode 100644 cert-manager/locales/zh-Hant/translation.json diff --git a/cert-manager/locales/cs/translation.json b/cert-manager/locales/cs/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/cs/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/de/translation.json b/cert-manager/locales/de/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/de/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/en/translation.json b/cert-manager/locales/en/translation.json new file mode 100644 index 0000000000..7801966cd8 --- /dev/null +++ b/cert-manager/locales/en/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "Ready", + "Not Ready": "Not Ready", + "Approved": "Approved", + "Yes": "Yes", + "No": "No", + "Denied": "Denied", + "Duration": "Duration", + "Is CA": "Is CA", + "Usages": "Usages", + "Usage {{index}}": "Usage {{index}}", + "Issuer Ref": "Issuer Ref", + "Request": "Request", + "Certificate": "Certificate", + "CA": "CA", + "Failure Time": "Failure Time", + "Certificate Requests": "Certificate Requests", + "Issuer": "Issuer", + "Requester": "Requester", + "Common Name": "Common Name", + "DNS Names": "DNS Names", + "Email Addresses": "Email Addresses", + "IP Addresses": "IP Addresses", + "URIs": "URIs", + "Renew Before": "Renew Before", + "Revision History Limit": "Revision History Limit", + "Secret Name": "Secret Name", + "Subject": "Subject", + "Organizations": "Organizations", + "Countries": "Countries", + "Organizational Units": "Organizational Units", + "Localities": "Localities", + "Provinces": "Provinces", + "Street Addresses": "Street Addresses", + "Postal Codes": "Postal Codes", + "Serial Number": "Serial Number", + "Private Key": "Private Key", + "Algorithm": "Algorithm", + "Size": "Size", + "Encoding": "Encoding", + "Rotation Policy": "Rotation Policy", + "Keystores": "Keystores", + "Create": "Create", + "Password Secret Ref": "Password Secret Ref", + "Name": "Name", + "Key": "Key", + "Status": "Status", + "Not Before": "Not Before", + "Not After": "Not After", + "Renewal Time": "Renewal Time", + "Revision": "Revision", + "Next Private Key Secret": "Next Private Key Secret", + "Certificates": "Certificates", + "Secret": "Secret", + "Expires In (Not After)": "Expires In (Not After)", + "DNS Name": "DNS Name", + "Authorization URL": "Authorization URL", + "Type": "Type", + "Solver": "Solver", + "Token": "Token", + "URL": "URL", + "Wildcard": "Wildcard", + "State": "State", + "Presented": "Presented", + "Processing": "Processing", + "Reason": "Reason", + "Challenges": "Challenges", + "Domain": "Domain", + "Cluster Issuers": "Cluster Issuers", + "Failed to copy to clipboard": "Failed to copy to clipboard", + "Kind": "Kind", + "Conditions": "Conditions", + "Observed Generation": "Observed Generation", + "Message": "Message", + "Last Transition Time": "Last Transition Time", + "Email": "Email", + "API Key Secret": "API Key Secret", + "API Token Secret": "API Token Secret", + "URI": "URI", + "Last Registered Email": "Last Registered Email", + "Last Private Key Hash": "Last Private Key Hash", + "None": "None", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "cert-manager was not detected on your cluster. If you haven't already, please install it.", + "Learn how to <2>install cert-manager": "Learn how to <2>install cert-manager", + "Server": "Server", + "Preferred Chain": "Preferred Chain", + "CA Bundle": "CA Bundle", + "Skip TLS Verify": "Skip TLS Verify", + "Private Key Secret Ref": "Private Key Secret Ref", + "External Account Binding": "External Account Binding", + "Key ID": "Key ID", + "Key Algorithm": "Key Algorithm", + "Key Secret Ref": "Key Secret Ref", + "Disable Account Key Generation": "Disable Account Key Generation", + "Enable Duration Feature": "Enable Duration Feature", + "Solvers": "Solvers", + "CRL Distribution Points": "CRL Distribution Points", + "Path": "Path", + "Namespace": "Namespace", + "Auth": "Auth", + "Token Secret Ref": "Token Secret Ref", + "App Role": "App Role", + "Role ID": "Role ID", + "Secret Ref": "Secret Ref", + "Role": "Role", + "Mount Path": "Mount Path", + "Self Signed": "Self Signed", + "Zone": "Zone", + "Credentials Ref": "Credentials Ref", + "Cloud": "Cloud", + "API Token Secret Ref": "API Token Secret Ref", + "Issuers": "Issuers", + "Authorizations": "Authorizations", + "Identifier": "Identifier", + "Initial State": "Initial State", + "Finalize URL": "Finalize URL", + "Orders": "Orders" +} diff --git a/cert-manager/locales/es/translation.json b/cert-manager/locales/es/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/es/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/fr/translation.json b/cert-manager/locales/fr/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/fr/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/hu/translation.json b/cert-manager/locales/hu/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/hu/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/id/translation.json b/cert-manager/locales/id/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/id/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/it/translation.json b/cert-manager/locales/it/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/it/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/ja/translation.json b/cert-manager/locales/ja/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/ja/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/ko/translation.json b/cert-manager/locales/ko/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/ko/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/nl/translation.json b/cert-manager/locales/nl/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/nl/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/pl/translation.json b/cert-manager/locales/pl/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/pl/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/pt-BR/translation.json b/cert-manager/locales/pt-BR/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/pt-BR/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/pt-PT/translation.json b/cert-manager/locales/pt-PT/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/pt-PT/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/ru/translation.json b/cert-manager/locales/ru/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/ru/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/sv/translation.json b/cert-manager/locales/sv/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/sv/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/tr/translation.json b/cert-manager/locales/tr/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/tr/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/zh-Hans/translation.json b/cert-manager/locales/zh-Hans/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/zh-Hans/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/locales/zh-Hant/translation.json b/cert-manager/locales/zh-Hant/translation.json new file mode 100644 index 0000000000..a8b5d0e19e --- /dev/null +++ b/cert-manager/locales/zh-Hant/translation.json @@ -0,0 +1,118 @@ +{ + "Ready": "", + "Not Ready": "", + "Approved": "", + "Yes": "", + "No": "", + "Denied": "", + "Duration": "", + "Is CA": "", + "Usages": "", + "Usage {{index}}": "", + "Issuer Ref": "", + "Request": "", + "Certificate": "", + "CA": "", + "Failure Time": "", + "Certificate Requests": "", + "Issuer": "", + "Requester": "", + "Common Name": "", + "DNS Names": "", + "Email Addresses": "", + "IP Addresses": "", + "URIs": "", + "Renew Before": "", + "Revision History Limit": "", + "Secret Name": "", + "Subject": "", + "Organizations": "", + "Countries": "", + "Organizational Units": "", + "Localities": "", + "Provinces": "", + "Street Addresses": "", + "Postal Codes": "", + "Serial Number": "", + "Private Key": "", + "Algorithm": "", + "Size": "", + "Encoding": "", + "Rotation Policy": "", + "Keystores": "", + "Create": "", + "Password Secret Ref": "", + "Name": "", + "Key": "", + "Status": "", + "Not Before": "", + "Not After": "", + "Renewal Time": "", + "Revision": "", + "Next Private Key Secret": "", + "Certificates": "", + "Secret": "", + "Expires In (Not After)": "", + "DNS Name": "", + "Authorization URL": "", + "Type": "", + "Solver": "", + "Token": "", + "URL": "", + "Wildcard": "", + "State": "", + "Presented": "", + "Processing": "", + "Reason": "", + "Challenges": "", + "Domain": "", + "Cluster Issuers": "", + "Failed to copy to clipboard": "", + "Kind": "", + "Conditions": "", + "Observed Generation": "", + "Message": "", + "Last Transition Time": "", + "Email": "", + "API Key Secret": "", + "API Token Secret": "", + "URI": "", + "Last Registered Email": "", + "Last Private Key Hash": "", + "None": "", + "cert-manager was not detected on your cluster. If you haven't already, please install it.": "", + "Learn how to <2>install cert-manager": "", + "Server": "", + "Preferred Chain": "", + "CA Bundle": "", + "Skip TLS Verify": "", + "Private Key Secret Ref": "", + "External Account Binding": "", + "Key ID": "", + "Key Algorithm": "", + "Key Secret Ref": "", + "Disable Account Key Generation": "", + "Enable Duration Feature": "", + "Solvers": "", + "CRL Distribution Points": "", + "Path": "", + "Namespace": "", + "Auth": "", + "Token Secret Ref": "", + "App Role": "", + "Role ID": "", + "Secret Ref": "", + "Role": "", + "Mount Path": "", + "Self Signed": "", + "Zone": "", + "Credentials Ref": "", + "Cloud": "", + "API Token Secret Ref": "", + "Issuers": "", + "Authorizations": "", + "Identifier": "", + "Initial State": "", + "Finalize URL": "", + "Orders": "" +} diff --git a/cert-manager/package.json b/cert-manager/package.json index 47e3e14de8..38cfadefdc 100644 --- a/cert-manager/package.json +++ b/cert-manager/package.json @@ -23,6 +23,29 @@ "kubernetes-debugging", "plugins" ], + "headlamp": { + "i18n": [ + "en", + "de", + "es", + "fr", + "it", + "ja", + "id", + "ko", + "pt-BR", + "ru", + "zh-Hans", + "zh-Hant", + "cs", + "nl", + "hu", + "pt-PT", + "pl", + "sv", + "tr" + ] + }, "prettier": "@headlamp-k8s/eslint-config/prettier-config", "eslintConfig": { "extends": [ diff --git a/cert-manager/src/components/certificateRequests/Detail.tsx b/cert-manager/src/components/certificateRequests/Detail.tsx index f75d866af3..78f7139904 100644 --- a/cert-manager/src/components/certificateRequests/Detail.tsx +++ b/cert-manager/src/components/certificateRequests/Detail.tsx @@ -1,3 +1,4 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { DetailsGrid, NameValueTable } from '@kinvolk/headlamp-plugin/lib/components/common'; import { useParams } from 'react-router-dom'; import { useCertManagerInstalled } from '../../hooks/useCertManagerInstalled'; @@ -10,6 +11,7 @@ import { } from '../common/CommonComponents'; export function CertificateRequestDetail() { + const { t } = useTranslation(); const { name, namespace } = useParams<{ name: string; namespace: string }>(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); @@ -24,58 +26,58 @@ export function CertificateRequestDetail() { extraInfo={item => item && [ { - name: 'Ready', - value: item.ready ? 'Ready' : 'Not Ready', + name: t('Ready'), + value: item.ready ? t('Ready') : t('Not Ready'), }, { - name: 'Approved', - value: item.approved === 'True' ? 'Yes' : 'No', + name: t('Approved'), + value: item.approved === 'True' ? t('Yes') : t('No'), }, { - name: 'Denied', - value: item.denied === 'True' ? 'Yes' : 'No', + name: t('Denied'), + value: item.denied === 'True' ? t('Yes') : t('No'), }, { - name: 'Duration', + name: t('Duration'), value: item.spec?.duration, }, { - name: 'Is CA', - value: item.spec?.isCA ? 'Yes' : 'No', + name: t('Is CA'), + value: item.spec?.isCA ? t('Yes') : t('No'), }, { - name: 'Usages', + name: t('Usages'), value: item.spec?.usages?.length && ( ({ - name: `Usage ${index + 1}`, + name: t('Usage {{index}}', { index: index + 1 }), value: usage, }))} /> ), }, { - name: 'Issuer Ref', + name: t('Issuer Ref'), value: item.spec.issuerRef && ( ), }, { - name: 'Request', + name: t('Request'), value: , }, { - name: 'Certificate', + name: t('Certificate'), value: item.status?.certificate && ( ), }, { - name: 'CA', + name: t('CA'), value: item.status?.ca && , }, { - name: 'Failure Time', + name: t('Failure Time'), value: item.status?.failureTime, }, ] diff --git a/cert-manager/src/components/certificateRequests/List.tsx b/cert-manager/src/components/certificateRequests/List.tsx index baa48ac8b3..a14b65811c 100644 --- a/cert-manager/src/components/certificateRequests/List.tsx +++ b/cert-manager/src/components/certificateRequests/List.tsx @@ -1,41 +1,43 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { ResourceListView } from '@kinvolk/headlamp-plugin/lib/CommonComponents'; import { useCertManagerInstalled } from '../../hooks/useCertManagerInstalled'; import { CertificateRequest } from '../../resources/certificateRequest'; import { NotInstalledBanner } from '../common/CommonComponents'; export function CertificateRequestsList() { + const { t } = useTranslation(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); return isManagerInstalled ? ( item.spec.issuerRef.name, }, { id: 'requester', - label: 'Requester', + label: t('Requester'), getValue: item => item.spec.username, }, 'age', diff --git a/cert-manager/src/components/certificates/Detail.tsx b/cert-manager/src/components/certificates/Detail.tsx index 581ce5874d..617938c03f 100644 --- a/cert-manager/src/components/certificates/Detail.tsx +++ b/cert-manager/src/components/certificates/Detail.tsx @@ -1,3 +1,4 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { DetailsGrid, NameValueTable, @@ -9,6 +10,7 @@ import { Certificate } from '../../resources/certificate'; import { IssuerRef, NotInstalledBanner, StringArray } from '../common/CommonComponents'; export function CertificateDetail() { + const { t } = useTranslation(); const { name, namespace } = useParams<{ name: string; namespace: string }>(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); @@ -23,55 +25,55 @@ export function CertificateDetail() { extraInfo={item => item && [ { - name: 'Ready', - value: item.ready ? 'Ready' : 'Not Ready', + name: t('Ready'), + value: item.ready ? t('Ready') : t('Not Ready'), }, { - name: 'Common Name', + name: t('Common Name'), value: item.spec?.commonName, }, { - name: 'DNS Names', + name: t('DNS Names'), value: , }, { - name: 'Email Addresses', + name: t('Email Addresses'), value: , }, { - name: 'IP Addresses', + name: t('IP Addresses'), value: , }, { - name: 'URIs', + name: t('URIs'), value: , }, { - name: 'Duration', + name: t('Duration'), value: item.spec?.duration, }, { - name: 'Renew Before', + name: t('Renew Before'), value: item.spec?.renewBefore, }, { - name: 'Is CA', - value: item.spec?.isCA ? 'Yes' : 'No', + name: t('Is CA'), + value: item.spec?.isCA ? t('Yes') : t('No'), }, { - name: 'Usages', + name: t('Usages'), value: , }, { - name: 'Revision History Limit', + name: t('Revision History Limit'), value: item.spec?.revisionHistoryLimit?.toString(), }, { - name: 'Secret Name', + name: t('Secret Name'), value: item.spec.secretName, }, { - name: 'Issuer Ref', + name: t('Issuer Ref'), value: item.spec.issuerRef && ( ), @@ -83,39 +85,39 @@ export function CertificateDetail() { { id: 'Subject', section: item.spec.subject && ( - + , }, { - name: 'Countries', + name: t('Countries'), value: , }, { - name: 'Organizational Units', + name: t('Organizational Units'), value: , }, { - name: 'Localities', + name: t('Localities'), value: , }, { - name: 'Provinces', + name: t('Provinces'), value: , }, { - name: 'Street Addresses', + name: t('Street Addresses'), value: , }, { - name: 'Postal Codes', + name: t('Postal Codes'), value: , }, { - name: 'Serial Number', + name: t('Serial Number'), value: item.spec?.subject?.serialNumber, }, ]} @@ -126,23 +128,23 @@ export function CertificateDetail() { { id: 'Private Key', section: item.spec.privateKey && ( - + + + (item.ready ? 'Ready' : 'Not Ready'), + label: t('Ready'), + getValue: item => (item.ready ? t('Ready') : t('Not Ready')), }, { id: 'secret', - label: 'Secret', + label: t('Secret'), getValue: item => item.spec.secretName, }, { id: 'expiresIn', - label: 'Expires In (Not After)', + label: t('Expires In (Not After)'), render: item => { return item?.status?.notAfter ? ( diff --git a/cert-manager/src/components/challenges/Detail.tsx b/cert-manager/src/components/challenges/Detail.tsx index ca757df7ef..ae9e1f8bd5 100644 --- a/cert-manager/src/components/challenges/Detail.tsx +++ b/cert-manager/src/components/challenges/Detail.tsx @@ -1,3 +1,4 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { DetailsGrid, NameValueTable, @@ -14,6 +15,7 @@ import { } from '../common/CommonComponents'; export function ChallengeDetail() { + const { t } = useTranslation(); const { name, namespace } = useParams<{ name: string; namespace: string }>(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); @@ -28,29 +30,29 @@ export function ChallengeDetail() { extraInfo={item => item && [ { - name: 'DNS Name', + name: t('DNS Name'), value: item.spec.dnsName, }, { - name: 'Authorization URL', + name: t('Authorization URL'), value: item.spec.authorizationURL, }, { - name: 'Type', + name: t('Type'), value: item.spec.type, }, { - name: 'Issuer Ref', + name: t('Issuer Ref'), value: item.spec.issuerRef && ( ), }, { - name: 'Key', + name: t('Key'), value: , }, { - name: 'Solver', + name: t('Solver'), value: ( + diff --git a/cert-manager/src/components/challenges/List.tsx b/cert-manager/src/components/challenges/List.tsx index c5200b2113..d2c827e4b7 100644 --- a/cert-manager/src/components/challenges/List.tsx +++ b/cert-manager/src/components/challenges/List.tsx @@ -1,26 +1,28 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { ResourceListView } from '@kinvolk/headlamp-plugin/lib/CommonComponents'; import { useCertManagerInstalled } from '../../hooks/useCertManagerInstalled'; import { Challenge } from '../../resources/challenge'; import { NotInstalledBanner } from '../common/CommonComponents'; export function ChallengesList() { + const { t } = useTranslation(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); return isManagerInstalled ? ( item.status?.state, }, { id: 'domain', - label: 'Domain', + label: t('Domain'), getValue: item => item.spec.dnsName, }, 'age', diff --git a/cert-manager/src/components/clusterIssuers/Detail.tsx b/cert-manager/src/components/clusterIssuers/Detail.tsx index ade3d01cab..e2b9598729 100644 --- a/cert-manager/src/components/clusterIssuers/Detail.tsx +++ b/cert-manager/src/components/clusterIssuers/Detail.tsx @@ -1,3 +1,4 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { DetailsGrid } from '@kinvolk/headlamp-plugin/lib/CommonComponents'; import { SectionBox } from '@kinvolk/headlamp-plugin/lib/CommonComponents'; import { useParams } from 'react-router-dom'; @@ -11,6 +12,7 @@ import { import { processIssuerExtraInfo } from '../common/processIssuerExtraInfo'; export function ClusterIssuerDetail() { + const { t } = useTranslation(); const { name } = useParams<{ name: string }>(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); @@ -19,13 +21,13 @@ export function ClusterIssuerDetail() { resourceType={ClusterIssuer} name={name} withEvents - extraInfo={item => item?.spec && processIssuerExtraInfo(item.spec)} // TODO: Discover namespace for cluster issuer secrets and pass + extraInfo={item => item?.spec && processIssuerExtraInfo(item.spec, undefined, t)} // TODO: Discover namespace for cluster issuer secrets and pass extraSections={item => item && [ { id: 'Status', section: item?.status && ( - + {item.status?.acme && } ), diff --git a/cert-manager/src/components/clusterIssuers/List.tsx b/cert-manager/src/components/clusterIssuers/List.tsx index 275024330f..bfb93e26a4 100644 --- a/cert-manager/src/components/clusterIssuers/List.tsx +++ b/cert-manager/src/components/clusterIssuers/List.tsx @@ -1,20 +1,22 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { ResourceListView } from '@kinvolk/headlamp-plugin/lib/CommonComponents'; import { useCertManagerInstalled } from '../../hooks/useCertManagerInstalled'; import { ClusterIssuer } from '../../resources/clusterIssuer'; import { NotInstalledBanner } from '../common/CommonComponents'; export function ClusterIssuersList() { + const { t } = useTranslation(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); return isManagerInstalled ? ( item.status?.conditions?.[0]?.status, }, 'age', diff --git a/cert-manager/src/components/common/CommonComponents.tsx b/cert-manager/src/components/common/CommonComponents.tsx index 2122e59de2..8be89867b5 100644 --- a/cert-manager/src/components/common/CommonComponents.tsx +++ b/cert-manager/src/components/common/CommonComponents.tsx @@ -1,5 +1,5 @@ import { Icon } from '@iconify/react'; -import { K8s } from '@kinvolk/headlamp-plugin/lib'; +import { K8s, useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { DateLabel, LabelListItem, @@ -12,6 +12,7 @@ import { import { Alert, IconButton, Snackbar, Tooltip } from '@mui/material'; import { Box, CircularProgress, Grid, Link as MuiLink, Typography } from '@mui/material'; import { useState } from 'react'; +import { Trans } from 'react-i18next'; import { ACMEChallengeSolver, ACMEIssuerStatus, @@ -26,6 +27,7 @@ interface CopyToClipboardProps { } export function CopyToClipboard({ text, maxDisplayLength = 30 }: CopyToClipboardProps) { + const { t } = useTranslation(); const [showError, setShowError] = useState(false); const displayText = text.length > maxDisplayLength ? `${text.substring(0, maxDisplayLength)}...` : text; @@ -51,7 +53,7 @@ export function CopyToClipboard({ text, maxDisplayLength = 30 }: CopyToClipboard setShowError(false)}> setShowError(false)} severity="error"> - Failed to copy to clipboard + {t('Failed to copy to clipboard')} @@ -64,11 +66,12 @@ interface IssuerRefProps { } export function IssuerRef({ issuerRef, namespace }: IssuerRefProps) { + const { t } = useTranslation(); return ( + item.type, }, { - label: 'Status', + label: t('Status'), getter: item => item.status, }, { - label: 'Reason', + label: t('Reason'), getter: item => item.reason, }, { - label: 'Observed Generation', + label: t('Observed Generation'), getter: item => item.observedGeneration, }, { - label: 'Message', + label: t('Message'), getter: item => item.message, }, { - label: 'Last Transition Time', + label: t('Last Transition Time'), getter: item => , sort: (a, b) => new Date(a.lastTransitionTime).getTime() - new Date(b.lastTransitionTime).getTime(), @@ -146,11 +150,12 @@ interface SecretKeySelectorProps { } export function SecretKeySelectorComponent({ selector, namespace }: SecretKeySelectorProps) { + const { t } = useTranslation(); return ( { const thisItem = item?.cloudflare; @@ -188,14 +194,14 @@ export function ACMEChallengeSolverComponent({ solver, namespace }: ACMEChalleng if (thisItem.email) { rows.push({ - name: 'Email', + name: t('Email'), value: thisItem.email, }); } if (thisItem.apiKeySecretRef) { rows.push({ - name: 'API Key Secret', + name: t('API Key Secret'), value: ( ), @@ -204,7 +210,7 @@ export function ACMEChallengeSolverComponent({ solver, namespace }: ACMEChalleng if (thisItem.apiTokenSecretRef) { rows.push({ - name: 'API Token Secret', + name: t('API Token Secret'), value: ( ), @@ -274,19 +280,20 @@ interface ACMEIssuerStatusProps { } export function ACMEIssuerStatusComponent({ status }: ACMEIssuerStatusProps) { + const { t } = useTranslation(); return ( {emptyText}; + return {emptyText ?? t('None')}; } return ( @@ -320,6 +328,7 @@ interface NotInstalledBannerProps { } export function NotInstalledBanner({ isLoading = false }: NotInstalledBannerProps) { + const { t } = useTranslation(); if (isLoading) { return ( @@ -333,21 +342,26 @@ export function NotInstalledBanner({ isLoading = false }: NotInstalledBannerProp - cert-manager was not detected on your cluster. If you haven't already, please install - it. + {t( + "cert-manager was not detected on your cluster. If you haven't already, please install it." + )} - Learn how to{' '} - - install - {' '} - cert-manager + {/* Keep the sentence in one i18n unit so translators can position the link + anywhere in the translated string. <2> matches the MuiLink child. */} + + Learn how to{' '} + + install + {' '} + cert-manager + diff --git a/cert-manager/src/components/common/processIssuerExtraInfo.tsx b/cert-manager/src/components/common/processIssuerExtraInfo.tsx index 8a289061cb..413272753b 100644 --- a/cert-manager/src/components/common/processIssuerExtraInfo.tsx +++ b/cert-manager/src/components/common/processIssuerExtraInfo.tsx @@ -6,7 +6,11 @@ import { StringArray, } from './CommonComponents'; -export function processIssuerExtraInfo(spec: IssuerSpec, namespace?: string): NameValueTableRow[] { +export function processIssuerExtraInfo( + spec: IssuerSpec, + namespace: string | undefined, + t: (key: string) => string +): NameValueTableRow[] { const extraInfo: NameValueTableRow[] = []; if (spec.acme) { @@ -15,13 +19,21 @@ export function processIssuerExtraInfo(spec: IssuerSpec, namespace?: string): Na value: ( (
@@ -73,13 +98,13 @@ export function processIssuerExtraInfo(spec: IssuerSpec, namespace?: string): Na if (spec.ca) { extraInfo.push({ - name: 'CA', + name: t('CA'), value: ( , }, ]} @@ -94,17 +119,17 @@ export function processIssuerExtraInfo(spec: IssuerSpec, namespace?: string): Na value: ( ), }, - { name: 'Mount Path', value: spec.vault.auth.kubernetes.mountPath }, + { name: t('Mount Path'), value: spec.vault.auth.kubernetes.mountPath }, ]} /> ), @@ -164,12 +189,12 @@ export function processIssuerExtraInfo(spec: IssuerSpec, namespace?: string): Na if (spec.selfSigned) { extraInfo.push({ - name: 'Self Signed', + name: t('Self Signed'), value: ( , }, ]} @@ -184,15 +209,15 @@ export function processIssuerExtraInfo(spec: IssuerSpec, namespace?: string): Na value: ( ), }, - { name: 'CA Bundle', value: spec.venafi.tpp.caBundle }, + { name: t('CA Bundle'), value: spec.venafi.tpp.caBundle }, ]} /> ), }, { - name: 'Cloud', + name: t('Cloud'), value: spec.venafi.cloud && ( (); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); @@ -20,13 +22,15 @@ export function IssuerDetail() { name={name} namespace={namespace} withEvents - extraInfo={item => item?.spec && processIssuerExtraInfo(item.spec, item.metadata.namespace)} + extraInfo={item => + item?.spec && processIssuerExtraInfo(item.spec, item.metadata.namespace, t) + } extraSections={item => item && [ { id: 'Status', section: item?.status && ( - + {item.status?.acme && } ), diff --git a/cert-manager/src/components/issuers/List.tsx b/cert-manager/src/components/issuers/List.tsx index dacf38eb0e..b2987714bd 100644 --- a/cert-manager/src/components/issuers/List.tsx +++ b/cert-manager/src/components/issuers/List.tsx @@ -1,22 +1,24 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { ResourceListView } from '@kinvolk/headlamp-plugin/lib/CommonComponents'; import { useCertManagerInstalled } from '../../hooks/useCertManagerInstalled'; import { Issuer } from '../../resources/issuer'; import { NotInstalledBanner } from '../common/CommonComponents'; export function IssuersList() { + const { t } = useTranslation(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); return isManagerInstalled ? ( (issuer.ready ? 'Ready' : 'Not Ready'), + label: t('Ready'), + getValue: issuer => (issuer.ready ? t('Ready') : t('Not Ready')), }, 'age', ]} diff --git a/cert-manager/src/components/orders/Detail.tsx b/cert-manager/src/components/orders/Detail.tsx index 86b192c233..c4da1b3921 100644 --- a/cert-manager/src/components/orders/Detail.tsx +++ b/cert-manager/src/components/orders/Detail.tsx @@ -1,3 +1,4 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { DetailsGrid, NameValueTable, @@ -15,6 +16,7 @@ import { } from '../common/CommonComponents'; export function OrderDetail() { + const { t } = useTranslation(); const { namespace, name } = useParams<{ namespace: string; name: string }>(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); @@ -29,29 +31,29 @@ export function OrderDetail() { extraInfo={item => item && [ { - name: 'Common Name', + name: t('Common Name'), value: item.spec?.commonName, }, { - name: 'DNS Names', + name: t('DNS Names'), value: , }, { - name: 'IP Addresses', + name: t('IP Addresses'), value: , }, { - name: 'Duration', + name: t('Duration'), value: item.spec?.duration, }, { - name: 'Issuer Ref', + name: t('Issuer Ref'), value: item.spec.issuerRef && ( ), }, { - name: 'Request', + name: t('Request'), value: , }, ] @@ -61,30 +63,30 @@ export function OrderDetail() { { id: 'Authorizations', section: item.status?.authorizations && ( - + {item.status?.authorizations.map((auth, index) => (
challenge.type, }, { - label: 'Token', + label: t('Token'), getter: challenge => challenge.token, }, { - label: 'URL', + label: t('URL'), getter: challenge => challenge.url, }, ]} @@ -102,22 +104,22 @@ export function OrderDetail() { { id: 'Status', section: item.status && ( - + ) : ( '' ), }, - { name: 'Failure Time', value: item.status?.failureTime }, - { name: 'Reason', value: item.status?.reason }, + { name: t('Failure Time'), value: item.status?.failureTime }, + { name: t('Reason'), value: item.status?.reason }, ]} /> diff --git a/cert-manager/src/components/orders/List.tsx b/cert-manager/src/components/orders/List.tsx index e60e943f5b..78a4c73d53 100644 --- a/cert-manager/src/components/orders/List.tsx +++ b/cert-manager/src/components/orders/List.tsx @@ -1,21 +1,23 @@ +import { useTranslation } from '@kinvolk/headlamp-plugin/lib'; import { ResourceListView } from '@kinvolk/headlamp-plugin/lib/CommonComponents'; import { useCertManagerInstalled } from '../../hooks/useCertManagerInstalled'; import { Order } from '../../resources/order'; import { NotInstalledBanner } from '../common/CommonComponents'; export function OrdersList() { + const { t } = useTranslation(); const { isManagerInstalled, isCertManagerCheckLoading } = useCertManagerInstalled(); return isManagerInstalled ? ( order.status?.state, }, 'age',