From 050690aa279fd61eff96ab53d253f60bb66003db Mon Sep 17 00:00:00 2001 From: Sagar Tamang Date: Fri, 6 Mar 2026 12:51:37 +0545 Subject: [PATCH 1/3] feat: add wp-cli/i18n-command for internationalization support --- composer.json | 1 + composer.lock | 695 ++++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 669 insertions(+), 27 deletions(-) diff --git a/composer.json b/composer.json index 5f9aaf6..35ec505 100644 --- a/composer.json +++ b/composer.json @@ -48,6 +48,7 @@ "slevomat/coding-standard": "^8.0", "squizlabs/php_codesniffer": "^3.9", "szepeviktor/phpstan-wordpress": "^2.0.2", + "wp-cli/i18n-command": "^2.6", "wp-coding-standards/wpcs": "^3.1", "wpackagist-plugin/plugin-check": "~1.6.0", "yoast/phpunit-polyfills": "^3.0" diff --git a/composer.lock b/composer.lock index 719a5fd..2cab43c 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "c807d59c2478e04aa04acd36971c41e8", + "content-hash": "14ea9624e39ce3609503e34f3d77f938", "packages": [ { "name": "scrivo/highlight.php", @@ -500,6 +500,220 @@ ], "time": "2025-11-11T04:32:07+00:00" }, + { + "name": "eftec/bladeone", + "version": "3.52", + "source": { + "type": "git", + "url": "https://github.com/EFTEC/BladeOne.git", + "reference": "a19bf66917de0b29836983db87a455a4f6e32148" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/EFTEC/BladeOne/zipball/a19bf66917de0b29836983db87a455a4f6e32148", + "reference": "a19bf66917de0b29836983db87a455a4f6e32148", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": ">=5.6" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.16.1", + "phpunit/phpunit": "^5.7", + "squizlabs/php_codesniffer": "^3.5.4" + }, + "suggest": { + "eftec/bladeonehtml": "Extension to create forms", + "ext-mbstring": "This extension is used if it's active" + }, + "type": "library", + "autoload": { + "psr-4": { + "eftec\\bladeone\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jorge Patricio Castro Castillo", + "email": "jcastro@eftec.cl" + } + ], + "description": "The standalone version Blade Template Engine from Laravel in a single php file", + "homepage": "https://github.com/EFTEC/BladeOne", + "keywords": [ + "blade", + "php", + "template", + "templating", + "view" + ], + "support": { + "issues": "https://github.com/EFTEC/BladeOne/issues", + "source": "https://github.com/EFTEC/BladeOne/tree/3.52" + }, + "time": "2021-04-17T13:49:01+00:00" + }, + { + "name": "gettext/gettext", + "version": "v4.8.12", + "source": { + "type": "git", + "url": "https://github.com/php-gettext/Gettext.git", + "reference": "11af89ee6c087db3cf09ce2111a150bca5c46e12" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-gettext/Gettext/zipball/11af89ee6c087db3cf09ce2111a150bca5c46e12", + "reference": "11af89ee6c087db3cf09ce2111a150bca5c46e12", + "shasum": "" + }, + "require": { + "gettext/languages": "^2.3", + "php": ">=5.4.0" + }, + "require-dev": { + "illuminate/view": "^5.0.x-dev", + "phpunit/phpunit": "^4.8|^5.7|^6.5", + "squizlabs/php_codesniffer": "^3.0", + "symfony/yaml": "~2", + "twig/extensions": "*", + "twig/twig": "^1.31|^2.0" + }, + "suggest": { + "illuminate/view": "Is necessary if you want to use the Blade extractor", + "symfony/yaml": "Is necessary if you want to use the Yaml extractor/generator", + "twig/extensions": "Is necessary if you want to use the Twig extractor", + "twig/twig": "Is necessary if you want to use the Twig extractor" + }, + "type": "library", + "autoload": { + "psr-4": { + "Gettext\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Oscar Otero", + "email": "oom@oscarotero.com", + "homepage": "http://oscarotero.com", + "role": "Developer" + } + ], + "description": "PHP gettext manager", + "homepage": "https://github.com/oscarotero/Gettext", + "keywords": [ + "JS", + "gettext", + "i18n", + "mo", + "po", + "translation" + ], + "support": { + "email": "oom@oscarotero.com", + "issues": "https://github.com/oscarotero/Gettext/issues", + "source": "https://github.com/php-gettext/Gettext/tree/v4.8.12" + }, + "funding": [ + { + "url": "https://paypal.me/oscarotero", + "type": "custom" + }, + { + "url": "https://github.com/oscarotero", + "type": "github" + }, + { + "url": "https://www.patreon.com/misteroom", + "type": "patreon" + } + ], + "time": "2024-05-18T10:25:07+00:00" + }, + { + "name": "gettext/languages", + "version": "2.12.2", + "source": { + "type": "git", + "url": "https://github.com/php-gettext/Languages.git", + "reference": "079d6f4842cbcbf5673a70d8e93169a684e7aadd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-gettext/Languages/zipball/079d6f4842cbcbf5673a70d8e93169a684e7aadd", + "reference": "079d6f4842cbcbf5673a70d8e93169a684e7aadd", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "require-dev": { + "phpunit/phpunit": "^4.8 || ^5.7 || ^6.5 || ^7.5 || ^8.4" + }, + "bin": [ + "bin/export-plural-rules", + "bin/import-cldr-data" + ], + "type": "library", + "autoload": { + "psr-4": { + "Gettext\\Languages\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michele Locati", + "email": "mlocati@gmail.com", + "role": "Developer" + } + ], + "description": "gettext languages with plural rules", + "homepage": "https://github.com/php-gettext/Languages", + "keywords": [ + "cldr", + "i18n", + "internationalization", + "l10n", + "language", + "languages", + "localization", + "php", + "plural", + "plural rules", + "plurals", + "translate", + "translations", + "unicode" + ], + "support": { + "issues": "https://github.com/php-gettext/Languages/issues", + "source": "https://github.com/php-gettext/Languages/tree/2.12.2" + }, + "funding": [ + { + "url": "https://paypal.me/mlocati", + "type": "custom" + }, + { + "url": "https://github.com/mlocati", + "type": "github" + } + ], + "time": "2026-02-23T14:05:50+00:00" + }, { "name": "hamcrest/hamcrest-php", "version": "v2.1.1", @@ -551,6 +765,55 @@ }, "time": "2025-04-30T06:54:44+00:00" }, + { + "name": "mck89/peast", + "version": "v1.17.4", + "source": { + "type": "git", + "url": "https://github.com/mck89/peast.git", + "reference": "c6a63f32410d2e4ee2cd20fe94b35af147fb852d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mck89/peast/zipball/c6a63f32410d2e4ee2cd20fe94b35af147fb852d", + "reference": "c6a63f32410d2e4ee2cd20fe94b35af147fb852d", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.17.4-dev" + } + }, + "autoload": { + "psr-4": { + "Peast\\": "lib/Peast/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Marco Marchiò", + "email": "marco.mm89@gmail.com" + } + ], + "description": "Peast is PHP library that generates AST for JavaScript code", + "support": { + "issues": "https://github.com/mck89/peast/issues", + "source": "https://github.com/mck89/peast/tree/v1.17.4" + }, + "time": "2025-10-10T12:53:17+00:00" + }, { "name": "mockery/mockery", "version": "1.6.12", @@ -1422,11 +1685,11 @@ }, { "name": "phpstan/phpstan", - "version": "2.1.38", + "version": "2.1.40", "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/dfaf1f530e1663aa167bc3e52197adb221582629", - "reference": "dfaf1f530e1663aa167bc3e52197adb221582629", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/9b2c7aeb83a75d8680ea5e7c9b7fca88052b766b", + "reference": "9b2c7aeb83a75d8680ea5e7c9b7fca88052b766b", "shasum": "" }, "require": { @@ -1471,25 +1734,25 @@ "type": "github" } ], - "time": "2026-01-30T17:12:46+00:00" + "time": "2026-02-23T15:04:35+00:00" }, { "name": "phpstan/phpstan-deprecation-rules", - "version": "2.0.3", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-deprecation-rules.git", - "reference": "468e02c9176891cc901143da118f09dc9505fc2f" + "reference": "6b5571001a7f04fa0422254c30a0017ec2f2cacc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-deprecation-rules/zipball/468e02c9176891cc901143da118f09dc9505fc2f", - "reference": "468e02c9176891cc901143da118f09dc9505fc2f", + "url": "https://api.github.com/repos/phpstan/phpstan-deprecation-rules/zipball/6b5571001a7f04fa0422254c30a0017ec2f2cacc", + "reference": "6b5571001a7f04fa0422254c30a0017ec2f2cacc", "shasum": "" }, "require": { "php": "^7.4 || ^8.0", - "phpstan/phpstan": "^2.1.15" + "phpstan/phpstan": "^2.1.39" }, "require-dev": { "php-parallel-lint/php-parallel-lint": "^1.2", @@ -1514,24 +1777,27 @@ "MIT" ], "description": "PHPStan rules for detecting usage of deprecated classes, methods, properties, constants and traits.", + "keywords": [ + "static analysis" + ], "support": { "issues": "https://github.com/phpstan/phpstan-deprecation-rules/issues", - "source": "https://github.com/phpstan/phpstan-deprecation-rules/tree/2.0.3" + "source": "https://github.com/phpstan/phpstan-deprecation-rules/tree/2.0.4" }, - "time": "2025-05-14T10:56:57+00:00" + "time": "2026-02-09T13:21:14+00:00" }, { "name": "phpstan/phpstan-phpunit", - "version": "2.0.12", + "version": "2.0.16", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-phpunit.git", - "reference": "e4c5a22bf43d3d2bd5a780ad261a622ff62c49a4" + "reference": "6ab598e1bc106e6827fd346ae4a12b4a5d634c32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/e4c5a22bf43d3d2bd5a780ad261a622ff62c49a4", - "reference": "e4c5a22bf43d3d2bd5a780ad261a622ff62c49a4", + "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/6ab598e1bc106e6827fd346ae4a12b4a5d634c32", + "reference": "6ab598e1bc106e6827fd346ae4a12b4a5d634c32", "shasum": "" }, "require": { @@ -1567,11 +1833,14 @@ "MIT" ], "description": "PHPUnit extensions and rules for PHPStan", + "keywords": [ + "static analysis" + ], "support": { "issues": "https://github.com/phpstan/phpstan-phpunit/issues", - "source": "https://github.com/phpstan/phpstan-phpunit/tree/2.0.12" + "source": "https://github.com/phpstan/phpstan-phpunit/tree/2.0.16" }, - "time": "2026-01-22T13:40:00+00:00" + "time": "2026-02-14T09:05:21+00:00" }, { "name": "phpunit/php-code-coverage", @@ -1922,16 +2191,16 @@ }, { "name": "phpunit/phpunit", - "version": "11.5.51", + "version": "11.5.55", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "ad14159f92910b0f0e3928c13e9b2077529de091" + "reference": "adc7262fccc12de2b30f12a8aa0b33775d814f00" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/ad14159f92910b0f0e3928c13e9b2077529de091", - "reference": "ad14159f92910b0f0e3928c13e9b2077529de091", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/adc7262fccc12de2b30f12a8aa0b33775d814f00", + "reference": "adc7262fccc12de2b30f12a8aa0b33775d814f00", "shasum": "" }, "require": { @@ -2004,7 +2273,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/11.5.51" + "source": "https://github.com/sebastianbergmann/phpunit/tree/11.5.55" }, "funding": [ { @@ -2028,7 +2297,7 @@ "type": "tidelift" } ], - "time": "2026-02-05T07:59:30+00:00" + "time": "2026-02-18T12:37:06+00:00" }, { "name": "sebastian/cli-parser", @@ -3268,6 +3537,74 @@ ], "time": "2024-10-20T05:08:20+00:00" }, + { + "name": "symfony/finder", + "version": "v7.4.6", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "8655bf1076b7a3a346cb11413ffdabff50c7ffcf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/8655bf1076b7a3a346cb11413ffdabff50c7ffcf", + "reference": "8655bf1076b7a3a346cb11413ffdabff50c7ffcf", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "symfony/filesystem": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Finder\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Finds files and directories via an intuitive fluent interface", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v7.4.6" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-01-29T09:40:50+00:00" + }, { "name": "szepeviktor/phpstan-wordpress", "version": "v2.0.3", @@ -3381,6 +3718,310 @@ ], "time": "2025-11-17T20:03:58+00:00" }, + { + "name": "wp-cli/i18n-command", + "version": "v2.6.6", + "source": { + "type": "git", + "url": "https://github.com/wp-cli/i18n-command.git", + "reference": "94f72ddc4be8919f2cea181ba39cd140dd480d64" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/wp-cli/i18n-command/zipball/94f72ddc4be8919f2cea181ba39cd140dd480d64", + "reference": "94f72ddc4be8919f2cea181ba39cd140dd480d64", + "shasum": "" + }, + "require": { + "eftec/bladeone": "3.52", + "gettext/gettext": "^4.8", + "mck89/peast": "^1.13.11", + "wp-cli/wp-cli": "^2.12" + }, + "require-dev": { + "wp-cli/scaffold-command": "^1.2 || ^2", + "wp-cli/wp-cli-tests": "^5.0.0" + }, + "suggest": { + "ext-json": "Used for reading and generating JSON translation files", + "ext-mbstring": "Used for calculating include/exclude matches in code extraction" + }, + "type": "wp-cli-package", + "extra": { + "bundled": true, + "commands": [ + "i18n", + "i18n make-pot", + "i18n make-json", + "i18n make-mo", + "i18n make-php", + "i18n update-po" + ], + "branch-alias": { + "dev-main": "2.x-dev" + } + }, + "autoload": { + "files": [ + "i18n-command.php" + ], + "psr-4": { + "WP_CLI\\I18n\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Pascal Birchler", + "homepage": "https://pascalbirchler.com/" + } + ], + "description": "Provides internationalization tools for WordPress projects.", + "homepage": "https://github.com/wp-cli/i18n-command", + "support": { + "issues": "https://github.com/wp-cli/i18n-command/issues", + "source": "https://github.com/wp-cli/i18n-command/tree/v2.6.6" + }, + "time": "2025-11-21T04:23:34+00:00" + }, + { + "name": "wp-cli/mustache", + "version": "v2.14.99", + "source": { + "type": "git", + "url": "https://github.com/wp-cli/mustache.php.git", + "reference": "ca23b97ac35fbe01c160549eb634396183d04a59" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/wp-cli/mustache.php/zipball/ca23b97ac35fbe01c160549eb634396183d04a59", + "reference": "ca23b97ac35fbe01c160549eb634396183d04a59", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "replace": { + "mustache/mustache": "^2.14.2" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "~2.19.3", + "yoast/phpunit-polyfills": "^2.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "Mustache": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Justin Hileman", + "email": "justin@justinhileman.info", + "homepage": "http://justinhileman.com" + } + ], + "description": "A Mustache implementation in PHP.", + "homepage": "https://github.com/bobthecow/mustache.php", + "keywords": [ + "mustache", + "templating" + ], + "support": { + "source": "https://github.com/wp-cli/mustache.php/tree/v2.14.99" + }, + "time": "2025-05-06T16:15:37+00:00" + }, + { + "name": "wp-cli/mustangostang-spyc", + "version": "0.6.3", + "source": { + "type": "git", + "url": "https://github.com/wp-cli/spyc.git", + "reference": "6aa0b4da69ce9e9a2c8402dab8d43cf32c581cc7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/wp-cli/spyc/zipball/6aa0b4da69ce9e9a2c8402dab8d43cf32c581cc7", + "reference": "6aa0b4da69ce9e9a2c8402dab8d43cf32c581cc7", + "shasum": "" + }, + "require": { + "php": ">=5.3.1" + }, + "require-dev": { + "phpunit/phpunit": "4.3.*@dev" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.5.x-dev" + } + }, + "autoload": { + "files": [ + "includes/functions.php" + ], + "psr-4": { + "Mustangostang\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "mustangostang", + "email": "vlad.andersen@gmail.com" + } + ], + "description": "A simple YAML loader/dumper class for PHP (WP-CLI fork)", + "homepage": "https://github.com/mustangostang/spyc/", + "support": { + "source": "https://github.com/wp-cli/spyc/tree/autoload" + }, + "time": "2017-04-25T11:26:20+00:00" + }, + { + "name": "wp-cli/php-cli-tools", + "version": "v0.12.7", + "source": { + "type": "git", + "url": "https://github.com/wp-cli/php-cli-tools.git", + "reference": "5cc6ef2e93cfcd939813eb420ae23bc116d9be2a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/wp-cli/php-cli-tools/zipball/5cc6ef2e93cfcd939813eb420ae23bc116d9be2a", + "reference": "5cc6ef2e93cfcd939813eb420ae23bc116d9be2a", + "shasum": "" + }, + "require": { + "php": ">= 7.2.24" + }, + "require-dev": { + "roave/security-advisories": "dev-latest", + "wp-cli/wp-cli-tests": "^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.12.x-dev" + } + }, + "autoload": { + "files": [ + "lib/cli/cli.php" + ], + "psr-0": { + "cli": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Daniel Bachhuber", + "email": "daniel@handbuilt.co", + "role": "Maintainer" + }, + { + "name": "James Logsdon", + "email": "jlogsdon@php.net", + "role": "Developer" + } + ], + "description": "Console utilities for PHP", + "homepage": "http://github.com/wp-cli/php-cli-tools", + "keywords": [ + "cli", + "console" + ], + "support": { + "issues": "https://github.com/wp-cli/php-cli-tools/issues", + "source": "https://github.com/wp-cli/php-cli-tools/tree/v0.12.7" + }, + "time": "2026-01-20T20:31:49+00:00" + }, + { + "name": "wp-cli/wp-cli", + "version": "v2.12.0", + "source": { + "type": "git", + "url": "https://github.com/wp-cli/wp-cli.git", + "reference": "03d30d4138d12b4bffd8b507b82e56e129e0523f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/wp-cli/wp-cli/zipball/03d30d4138d12b4bffd8b507b82e56e129e0523f", + "reference": "03d30d4138d12b4bffd8b507b82e56e129e0523f", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "php": "^5.6 || ^7.0 || ^8.0", + "symfony/finder": ">2.7", + "wp-cli/mustache": "^2.14.99", + "wp-cli/mustangostang-spyc": "^0.6.3", + "wp-cli/php-cli-tools": "~0.12.4" + }, + "require-dev": { + "wp-cli/db-command": "^1.3 || ^2", + "wp-cli/entity-command": "^1.2 || ^2", + "wp-cli/extension-command": "^1.1 || ^2", + "wp-cli/package-command": "^1 || ^2", + "wp-cli/wp-cli-tests": "^4.3.10" + }, + "suggest": { + "ext-readline": "Include for a better --prompt implementation", + "ext-zip": "Needed to support extraction of ZIP archives when doing downloads or updates" + }, + "bin": [ + "bin/wp", + "bin/wp.bat" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.12.x-dev" + } + }, + "autoload": { + "psr-0": { + "WP_CLI\\": "php/" + }, + "classmap": [ + "php/class-wp-cli.php", + "php/class-wp-cli-command.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "WP-CLI framework", + "homepage": "https://wp-cli.org", + "keywords": [ + "cli", + "wordpress" + ], + "support": { + "docs": "https://make.wordpress.org/cli/handbook/", + "issues": "https://github.com/wp-cli/wp-cli/issues", + "source": "https://github.com/wp-cli/wp-cli" + }, + "time": "2025-05-07T01:16:12+00:00" + }, { "name": "wp-coding-standards/wpcs", "version": "3.3.0", @@ -3531,15 +4172,15 @@ ], "aliases": [], "minimum-stability": "dev", - "stability-flags": {}, + "stability-flags": [], "prefer-stable": true, "prefer-lowest": false, "platform": { "php": "^8.2" }, - "platform-dev": {}, + "platform-dev": [], "platform-overrides": { "php": "8.2" }, - "plugin-api-version": "2.9.0" + "plugin-api-version": "2.6.0" } From 7ccd3500bdcdcb9f72a8d17ea418dae4e31476cb Mon Sep 17 00:00:00 2001 From: Sagar Tamang Date: Fri, 6 Mar 2026 12:51:53 +0545 Subject: [PATCH 2/3] feat: add pot generation script for internationalization --- composer.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 35ec505..bef8541 100644 --- a/composer.json +++ b/composer.json @@ -69,6 +69,7 @@ "phpstan": "phpstan analyse --memory-limit=2G", "test": "phpunit", "test:unit": "phpunit --testsuite unit", - "test:coverage": "phpunit --coverage-html tests/_output/coverage" + "test:coverage": "phpunit --coverage-html tests/_output/coverage", + "pot": "XDEBUG_MODE=off wp i18n make-pot . languages/carousel-kit.pot --exclude=tests,.github,.husky,docs,examples,src" } } From 674358bdf87f7ec19a8da26a1268802d72607596 Mon Sep 17 00:00:00 2001 From: Sagar Tamang Date: Fri, 6 Mar 2026 12:52:01 +0545 Subject: [PATCH 3/3] feat: add initial .pot file for internationalization support --- languages/carousel-kit.pot | 312 +++++++++++++++++++++++++++++++++++++ 1 file changed, 312 insertions(+) create mode 100644 languages/carousel-kit.pot diff --git a/languages/carousel-kit.pot b/languages/carousel-kit.pot new file mode 100644 index 0000000..83577d6 --- /dev/null +++ b/languages/carousel-kit.pot @@ -0,0 +1,312 @@ +# Copyright (C) 2026 rtCamp +# This file is distributed under the GPL2. +msgid "" +msgstr "" +"Project-Id-Version: Carousel Kit 1.0.3\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/carousel-kit\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"POT-Creation-Date: 2026-03-06T07:02:47+00:00\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"X-Generator: WP-CLI 2.12.0\n" +"X-Domain: carousel-kit\n" + +#. Plugin Name of the plugin +#: carousel-kit.php +#: inc/Plugin.php:57 +#: inc/Plugin.php:96 +msgid "Carousel Kit" +msgstr "" + +#. Plugin URI of the plugin +#: carousel-kit.php +msgid "https://github.com/rtCamp/carousel-kit" +msgstr "" + +#. Description of the plugin +#: carousel-kit.php +msgid "Carousel block using Embla and WordPress Interactivity API." +msgstr "" + +#. Author of the plugin +#: carousel-kit.php +msgid "rtCamp" +msgstr "" + +#. Author URI of the plugin +#: carousel-kit.php +msgid "https://rtcamp.com" +msgstr "" + +#: inc/Plugin.php:97 +msgid "Pre-configured carousel patterns for various use cases." +msgstr "" + +#: build/blocks/carousel/controls/index.js:1 +msgid "Previous Slide" +msgstr "" + +#: build/blocks/carousel/controls/index.js:1 +msgid "Next Slide" +msgstr "" + +#. translators: %d: slide number +#: build/blocks/carousel/dots/index.js:2 +#: build/blocks/carousel/index.js:3 +#, js-format +msgid "Go to slide %d" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Carousel Settings" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Loop" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Enables infinite scrolling of slides." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Free Drag" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Enables momentum scrolling." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Alignment" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Start" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Center" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "End" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Contain Scroll" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Trim Snaps" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Keep Snaps" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "None" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Prevents excess scrolling at the beginning or end." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Scroll Auto" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Scrolls the number of slides currently visible in the viewport." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Slides to Scroll" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Direction" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Left to Right (LTR)" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Right to Left (RTL)" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Choose content direction. RTL is typically used for Arabic, Hebrew, and other right-to-left languages." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Orientation" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Horizontal" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Vertical" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Height" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Set a fixed height for vertical carousel (e.g., 400px)." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Autoplay Options" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Enable Autoplay" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Delay (ms)" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Stop on Interaction" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Stop autoplay when user interacts with carousel." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Stop on Mouse Enter" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Stop autoplay when mouse hovers over carousel." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "ARIA Label" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Provide a descriptive label for screen readers (e.g., 'Featured Products')." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Use this to allow only certain blocks in the slide. If empty, all blocks will be allowed." +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Allowed Slide Blocks" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Layout" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Slide Gap (px)" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Carousel" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "How many slides would you like to start with?" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "1 Slide" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Slides" +msgstr "" + +#: build/blocks/carousel/index.js:1 +msgid "Skip" +msgstr "" + +#: build/blocks/carousel/index.js:1 +#: build/blocks/carousel/viewport/index.js:1 +msgid "Add Slide" +msgstr "" + +#: build/blocks/carousel/index.js:3 +msgid "Default (100%)" +msgstr "" + +#: build/blocks/carousel/index.js:3 +msgid "2 Columns (50%)" +msgstr "" + +#: build/blocks/carousel/index.js:3 +msgid "3 Columns (33%)" +msgstr "" + +#: build/blocks/carousel/index.js:3 +msgid "4 Columns (25%)" +msgstr "" + +#: build/blocks/carousel/viewport/index.js:1 +msgid "Viewport Actions" +msgstr "" + +#: build/blocks/carousel/block.json +msgctxt "block title" +msgid "Carousel" +msgstr "" + +#: build/blocks/carousel/block.json +msgctxt "block description" +msgid "Carousel container using Embla and Interactivity API." +msgstr "" + +#: build/blocks/carousel/controls/block.json +msgctxt "block title" +msgid "Carousel Controls" +msgstr "" + +#: build/blocks/carousel/controls/block.json +msgctxt "block description" +msgid "Navigation buttons for the carousel." +msgstr "" + +#: build/blocks/carousel/dots/block.json +msgctxt "block title" +msgid "Carousel Dots" +msgstr "" + +#: build/blocks/carousel/dots/block.json +msgctxt "block description" +msgid "Navigation dots for the carousel." +msgstr "" + +#: build/blocks/carousel/slide/block.json +msgctxt "block title" +msgid "Carousel Slide" +msgstr "" + +#: build/blocks/carousel/slide/block.json +msgctxt "block description" +msgid "A single slide within the carousel." +msgstr "" + +#: build/blocks/carousel/viewport/block.json +msgctxt "block title" +msgid "Carousel Viewport" +msgstr "" + +#: build/blocks/carousel/viewport/block.json +msgctxt "block description" +msgid "Viewport container for carousel slides." +msgstr ""