File: /var/www/azvo/wp-content/plugins/wpml-string-translation/classes/batch-translation/Strings.php
<?php
namespace WPML\ST\Batch\Translation;
use WPML\Collect\Support\Traits\Macroable;
use WPML\FP\Fns;
use function WPML\FP\curryN;
/**
* Class Strings
*
* @package WPML\ST\Batch\Translation
* @method static callable|object get( ...$getBatchRecord, ...$getString, ...$item, ...$id, ...$type )
*/
class Strings {
use Macroable;
public static function init() {
self::macro(
'get',
curryN(
5,
function ( callable $getBatchRecord, callable $getString, $item, $id, $type ) {
if ( $type === 'st-batch' || $type === Module::EXTERNAL_TYPE ) {
$getBatchString = function ( $strings, $stringId ) use ( $getString ) {
$strings[ Module::STRING_ID_PREFIX . $stringId ] = $getString( $stringId );
return $strings;
};
return (object) [
'post_id' => $id,
'ID' => $id,
'post_type' => 'strings',
'kind' => 'Strings',
'kind_slug' => 'Strings',
'external_type' => true,
'string_data' => Fns::reduce( $getBatchString, [], $getBatchRecord( $id ) ),
];
}
return $item;
}
)
);
}
}
Strings::init();