Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Crowdin Translations Workflow. #54

Merged
merged 7 commits into from
Feb 25, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .github/workflows/i18n-crowdin-download.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Crowdin Download Action

on:
workflow_dispatch:
inputs:
base_branch:
description: 'Base branch for the pull request'
required: false
default: 'main'

jobs:
call-crowdin-workflow:
uses: newfold-labs/workflows/.github/workflows/i18n-crowdin-download.yml@main
with:
base_branch: ${{ inputs.base_branch }}
secrets:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
vars:
CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }}
13 changes: 13 additions & 0 deletions .github/workflows/i18n-crowdin-upload.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: Crowdin Upload Action

on:
workflow_dispatch:

jobs:
call-crowdin-upload-workflow:
uses: newfold-labs/workflows/.github/workflows/i18n-crowdin-upload.yml@main
secrets:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
vars:
CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }}
2 changes: 2 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,13 @@
"i18n-pot": "vendor/bin/wp i18n make-pot . ./languages/wp-module-staging.pot --headers='{\"Report-Msgid-Bugs-To\":\"https://github.com/newfold-labs/wp-module-staging/issues\",\"POT-Creation-Date\":\"2025-02-13T09:55:55+00:00\"}'",
"i18n-po": "vendor/bin/wp i18n update-po ./languages/wp-module-staging.pot ./languages",
"i18n-mo": "vendor/bin/wp i18n make-mo ./languages",
"i18n-php": "vendor/bin/wp i18n make-php ./languages",
"i18n-json": "rm -f languages/*.json && vendor/bin/wp i18n make-json ./languages --no-purge --pretty-print",
"i18n": [
"@i18n-pot",
"@i18n-po",
"@i18n-mo",
"@i18n-php",
"@i18n-json"
]
},
Expand Down
23 changes: 23 additions & 0 deletions crowdin.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
"project_id_env": "CROWDIN_PROJECT_ID"
"api_token_env": "CROWDIN_PERSONAL_TOKEN"
"base_path": "."

"preserve_hierarchy": true

"files": [
{
"source": "/languages/wp-module-staging.pot",
"translation": "/languages/wp-module-staging-%locale%.po",
"languages_mapping": {
"locale": {
"de": "de_DE",
"en-AU": "en_AU",
"en-GB": "en_GB",
"es-ES": "es_ES",
"fr": "fr_FR",
"it": "it_IT",
"nl": "nl_NL"
}
}
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
{
"translation-revision-date": "2025-02-19 13:44",
"generator": "WP-CLI\/2.11.0",
"source": "components\/staging\/defaultText.js",
"domain": "messages",
"locale_data": {
"messages": {
"": {
"domain": "messages",
"lang": "de_DE",
"plural-forms": "nplurals=2; plural=(n != 1);"
},
"Cancel": [
"Abbrechen"
],
"Clone": [
"Klonen"
],
"Confirm Clone Action": [
"Klon-Aktion best\u00e4tigen"
],
"This will overwrite anything in staging and update it to an exact clone of the current production site. Are you sure you want to proceed?": [
"Dies wird alles in der Stagierung \u00fcberschreiben und zu einem exakten Klon der aktuellen Produktionsseite aktualisieren. Sind Sie sicher, dass Sie fortfahren m\u00f6chten?"
],
"Cloned to Staging": [
"Zu Staging geklont"
],
"Cloning production to staging, this should take about a minute.": [
"Das Klonen der Produktion auf Stagnation sollte ungef\u00e4hr eine Minute dauern."
],
"Clone to staging": [
"Zum Stagieren klonen"
],
"Created": [
"Erstellt"
],
"Staging Created": [
"Staging erstellt"
],
"Creating a staging site, this should take about a minute.": [
"Erstellen einer Staging-Site sollte eine Minute dauern."
],
"Create staging site": [
"Staging-Site erstellen"
],
"Currently editing": [
"Aktuell bearbeiten"
],
"Delete": [
"L\u00f6schen"
],
"Confirm Delete": [
"L\u00f6schen best\u00e4tigen"
],
"This will permanently delete staging site. Are you sure you want to proceed? You can recreate another staging site at any time, but any specific changes you've made to this staging site will be lost.": [
"Staging-Site wird dauerhaft gel\u00f6scht. Sind Sie sicher, dass Sie fortfahren m\u00f6chten? Sie k\u00f6nnen jederzeit eine andere Staging-Site neu erstellen, aber alle spezifischen \u00c4nderungen, die Sie an dieser Staging-Site vorgenommen haben, gehen verloren."
],
"Deleted Staging": [
"Gel\u00f6schte Staging"
],
"Deleting the staging site, this should take about a minute.": [
"Staging Site wird gel\u00f6scht. Dies sollte ungef\u00e4hr eine Minute dauern."
],
"Delete Staging Site": [
"Staging-Site l\u00f6schen"
],
"Deploy": [
"Deploy"
],
"Deploy all changes": [
"Alle \u00c4nderungen verteilen"
],
"Confirm Deployment": [
"Einsatz best\u00e4tigen"
],
"Deploy database only": [
"Nur Datenbank verteilen"
],
"This will deploy staging to production and overwrite current production site. Are you sure you want to proceed?": [
"Dies wird Staging zur Produktion bereitstellen und die aktuelle Produktionsseite \u00fcberschreiben. Sind Sie sicher, dass Sie fortfahren m\u00f6chten?"
],
"Deploy files only": [
"Nur Dateien verteilen"
],
"Deployed": [
"Ausgestellt"
],
"Deploying from staging to production, this should take about a minute.": [
"Der Einsatz von Staging in die Produktion sollte etwa eine Minute in Anspruch nehmen."
],
"Deploy Site": [
"Site verteilen"
],
"Error": [
"Fehler"
],
"You don't have a staging site yet.": [
"Sie haben noch keine Staging-Site."
],
"Not currently editing": [
"Derzeit nicht bearbeiten"
],
"Proceed": [
"Fortfahren"
],
"Production Site": [
"Produktionsstandort"
],
"Staging Site": [
"Staging-Seite"
],
"A staging site is a duplicate of your live site, offering a secure environment to experiment, test updates, and deploy when ready.": [
"Eine Staging-Site ist eine Kopie Ihrer Live-Site, die eine sichere Umgebung zum Experimentieren, Testen von Aktualisierungen und Verteilen bietet, wenn sie bereit sind."
],
"Switch": [
"Wechseln"
],
"Switching": [
"Wechseln"
],
"Switch to Production": [
"Zur Produktion wechseln"
],
"This will navigate you to the production environment": [
"Dies wird Sie zur Produktionsumgebung navigieren"
],
"Loading the production environment now.": [
"Laden der Produktionsumgebung jetzt."
],
"Switching to the production environment, this should take about a minute.": [
"Beim Wechsel auf die Produktionsumgebung sollte dies etwa eine Minute dauern."
],
"Switch to Staging": [
"Zu Staging wechseln"
],
"This will navigate you to the staging environment": [
"Dies wird dich zur Staging-Umgebung navigieren"
],
"Loading the staging environment now.": [
"Laden der Staging-Umgebung jetzt."
],
"Switching to the staging environment, this should take about a minute.": [
"Beim Wechsel auf die Staging-Umgebung sollte dies ungef\u00e4hr eine Minute dauern."
],
"Staging": [
"Inszenierung"
],
"An unknown error has occurred.": [
"Ein unbekannter Fehler ist aufgetreten."
],
"Working...": [
"Arbeiten..."
]
}
}
}
2 changes: 2 additions & 0 deletions languages/wp-module-staging-de_DE.l10n.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<?php
return ['domain'=>'wp-module-staging','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'de_DE','project-id-version'=>'newfold-labswp-module-staging','pot-creation-date'=>'2025-02-19T11:37:53+00:00','po-revision-date'=>'2025-02-19 13:44','x-generator'=>'WP-CLI 2.11.0','messages'=>['Cloning can only be done from the production environment.'=>'Klonen kann nur aus der Produktionsumgebung erfolgen.','Staging environment already exists!'=>'Staging-Umgebung existiert bereits!','You must switch to the production environment before destroying staging.'=>'Sie müssen zur Produktionsumgebung wechseln, bevor Sie die Stagnation zerstören.','Switch to an environment you are already in, you cannot.'=>'Wechseln Sie zu einer Umgebung, in der Sie bereits sind, Sie können es nicht.','Invalid staging CLI command.'=>'Ungültiger Staging CLI Befehl.','Invalid character (%s) in command.'=>'Ungültiges Zeichen (%s) im Befehl.','Unable to execute script (disabled_function).'=>'Skript kann nicht ausgeführt werden (disabled_function).','Unable to execute script (permission error).'=>'Skript kann nicht ausgeführt werden (Berechtigungsfehler).','Unable to parse JSON'=>'JSON kann nicht analysiert werden','Invalid JSON response'=>'Ungültige JSON-Antwort','Staging Environment'=>'Staging-Umgebung','Staging Actions'=>'Staging-Aktionen','Cancel'=>'Abbrechen','Clone'=>'Klonen','Confirm Clone Action'=>'Klon-Aktion bestätigen','This will overwrite anything in staging and update it to an exact clone of the current production site. Are you sure you want to proceed?'=>'Dies wird alles in der Stagierung überschreiben und zu einem exakten Klon der aktuellen Produktionsseite aktualisieren. Sind Sie sicher, dass Sie fortfahren möchten?','Cloned to Staging'=>'Zu Staging geklont','Cloning production to staging, this should take about a minute.'=>'Das Klonen der Produktion auf Stagnation sollte ungefähr eine Minute dauern.','Clone to staging'=>'Zum Stagieren klonen','Created'=>'Erstellt','Staging Created'=>'Staging erstellt','Creating a staging site, this should take about a minute.'=>'Erstellen einer Staging-Site sollte eine Minute dauern.','Create staging site'=>'Staging-Site erstellen','Currently editing'=>'Aktuell bearbeiten','Delete'=>'Löschen','Confirm Delete'=>'Löschen bestätigen','This will permanently delete staging site. Are you sure you want to proceed? You can recreate another staging site at any time, but any specific changes you\'ve made to this staging site will be lost.'=>'Staging-Site wird dauerhaft gelöscht. Sind Sie sicher, dass Sie fortfahren möchten? Sie können jederzeit eine andere Staging-Site neu erstellen, aber alle spezifischen Änderungen, die Sie an dieser Staging-Site vorgenommen haben, gehen verloren.','Deleted Staging'=>'Gelöschte Staging','Deleting the staging site, this should take about a minute.'=>'Staging Site wird gelöscht. Dies sollte ungefähr eine Minute dauern.','Delete Staging Site'=>'Staging-Site löschen','Deploy'=>'Deploy','Deploy all changes'=>'Alle Änderungen verteilen','Confirm Deployment'=>'Einsatz bestätigen','Deploy database only'=>'Nur Datenbank verteilen','This will deploy staging to production and overwrite current production site. Are you sure you want to proceed?'=>'Dies wird Staging zur Produktion bereitstellen und die aktuelle Produktionsseite überschreiben. Sind Sie sicher, dass Sie fortfahren möchten?','Deploy files only'=>'Nur Dateien verteilen','Deployed'=>'Ausgestellt','Deploying from staging to production, this should take about a minute.'=>'Der Einsatz von Staging in die Produktion sollte etwa eine Minute in Anspruch nehmen.','Deploy Site'=>'Site verteilen','Error'=>'Fehler','You don\'t have a staging site yet.'=>'Sie haben noch keine Staging-Site.','Not currently editing'=>'Derzeit nicht bearbeiten','Proceed'=>'Fortfahren','Production Site'=>'Produktionsstandort','Staging Site'=>'Staging-Seite','A staging site is a duplicate of your live site, offering a secure environment to experiment, test updates, and deploy when ready.'=>'Eine Staging-Site ist eine Kopie Ihrer Live-Site, die eine sichere Umgebung zum Experimentieren, Testen von Aktualisierungen und Verteilen bietet, wenn sie bereit sind.','Switch'=>'Wechseln','Switching'=>'Wechseln','Switch to Production'=>'Zur Produktion wechseln','This will navigate you to the production environment'=>'Dies wird Sie zur Produktionsumgebung navigieren','Loading the production environment now.'=>'Laden der Produktionsumgebung jetzt.','Switching to the production environment, this should take about a minute.'=>'Beim Wechsel auf die Produktionsumgebung sollte dies etwa eine Minute dauern.','Switch to Staging'=>'Zu Staging wechseln','This will navigate you to the staging environment'=>'Dies wird dich zur Staging-Umgebung navigieren','Loading the staging environment now.'=>'Laden der Staging-Umgebung jetzt.','Switching to the staging environment, this should take about a minute.'=>'Beim Wechsel auf die Staging-Umgebung sollte dies ungefähr eine Minute dauern.','Staging'=>'Inszenierung','An unknown error has occurred.'=>'Ein unbekannter Fehler ist aufgetreten.','Working...'=>'Arbeiten...']];
Binary file added languages/wp-module-staging-de_DE.mo
Binary file not shown.
Loading
Loading