Plugin Directory

Changeset 3197847


Ignore:
Timestamp:
11/27/2024 06:09:22 AM (16 months ago)
Author:
hamworks
Message:

Update to version 2.1.5 from GitHub

Location:
simple-csv-exporter
Files:
46 added
6 deleted
76 edited
1 copied

Legend:

Unmodified
Added
Removed
  • simple-csv-exporter/tags/2.1.5/readme.txt

    r2761526 r3197847  
    66Tested up to:      6.0 
    77Requires PHP:      7.4 
    8 Stable tag:        2.0.1
     8Stable tag:        2.1.5
    99License:           GPLv2 or later 
    1010License URI:       https://www.gnu.org/licenses/gpl-2.0.html 
     
    3737Customize posts for export.
    3838
    39 <pre>add_action( 'simple_csv_exporter_created_data_builder_for_wp_posts_pre_get_posts',
     39<pre>add_action( 'simple_csv_exporter_data_builder_for_wp_posts_pre_get_posts',
    4040    function ( WP_Query $query ) {
    4141        $query->set( 'order', 'ASC' );
     
    4545Data filter for metadata.
    4646
    47 <pre>use HAMWORKS\WP\Simple_CSV_Exporter\Data_Builder;
    48 add_filter( 'simple_csv_exporter_created_data_builder_for_wp_posts_get_post_meta_fields',
     47<pre>add_filter( 'simple_csv_exporter_data_builder_for_wp_posts_get_post_meta_fields',
    4948    function ( array $fields ) {
    5049        foreach (
     
    6059    }
    6160);</pre>
     61Data filter for post.
     62
     63<pre>add_filter(
     64    'simple_csv_exporter_data_builder_for_wp_posts_row_data',
     65    function ( $row_data, $post ) {
     66        $row_data['permalink'] = get_permalink( $post );
     67        unset( $row_data['comment_status'] );
     68        return $row_data;
     69    },
     70    10,
     71    2
     72);</pre>
    6273
    6374== Changelog ==
     75
     76= 2.1.0 =
     77* Rename hooks.
     78* Add `simple_csv_exporter_data_builder_for_wp_posts_row_data` filter.
    6479
    6580= 2.0.1 =
  • simple-csv-exporter/tags/2.1.5/simple-csv-exporter.php

    r2761526 r3197847  
    1111 * Domain Path:     /languages
    1212 * Requires PHP:    7.4
    13  * Version: 2.0.1
     13 * Version: 2.1.5
    1414 */
    1515
  • simple-csv-exporter/tags/2.1.5/src/Admin_UI.php

    r2446249 r3197847  
    1313     * @var string
    1414     */
    15     private $slug;
     15    private string $slug;
    1616
    1717    /**
    1818     * @var Nonce
    1919     */
    20     private $nonce;
     20    private Nonce $nonce;
    2121
    2222    /**
    2323     * @var string
    2424     */
    25     private $post_type_var_name;
     25    private string $post_type_var_name;
    2626
    2727    /**
     
    9797        <?php
    9898    }
    99 
    10099}
  • simple-csv-exporter/tags/2.1.5/src/CSV_Writer.php

    r2437085 r3197847  
    1313     * @var string
    1414     */
    15     private $file_name;
     15    private string $file_name;
    1616
    1717    /**
    1818     * @var iterable
    1919     */
    20     private $rows;
     20    private iterable $rows;
    2121
    2222    /**
     
    4545     */
    4646    public function write( iterable $data ) {
    47         // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_read_fopen
     47        // phpcs:ignore
    4848        $file_pointer = fopen( $this->file_name, 'w' );
    4949
     
    5656            fputcsv( $file_pointer, $row );
    5757        }
    58         // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_read_fclose
     58        // phpcs:ignore
    5959        fclose( $file_pointer );
    6060    }
    61 
    6261}
  • simple-csv-exporter/tags/2.1.5/src/Container_Factory.php

    r2446249 r3197847  
    2828                'slug'              => 'simple_csv_exporter',
    2929                'post_type'         => function ( ContainerInterface $c ) {
    30                     return filter_input( INPUT_POST, $c->get( 'var.name' ), FILTER_SANITIZE_STRING ) ?? '';
     30                    return filter_input( INPUT_POST, $c->get( 'var.name' ), FILTER_SANITIZE_SPECIAL_CHARS ) ?? '';
    3131                },
    3232                Nonce::class        => create()->constructor( get( 'slug' ) ),
     
    4545                )->parameter( 'post_type', get( 'post_type' ) ),
    4646                Admin_UI::class     => autowire()->constructor( get( 'slug' ), get( 'var.name' ) ),
    47                 Exporter::class     => autowire()->constructor( get( 'slug' ) ),
     47                Exporter::class     => autowire()->constructor(),
    4848            )
    4949        );
  • simple-csv-exporter/tags/2.1.5/src/Data_Builder.php

    r2446249 r3197847  
    1919     * @var string[]
    2020     */
    21     protected $drop_columns = array();
     21    protected array $drop_columns = array();
    2222
    2323
     
    5757     * @return Traversable
    5858     */
    59     abstract protected function rows();
     59    abstract protected function rows(): Traversable;
    6060
    6161    /**
  • simple-csv-exporter/tags/2.1.5/src/Data_Builder_For_WP_Posts.php

    r2446249 r3197847  
    1818     * @var string
    1919     */
    20     private $post_type;
     20    private string $post_type;
    2121
    2222    /**
     
    2525     * @var string[]
    2626     */
    27     protected $drop_columns = array(
     27    protected array $drop_columns = array(
    2828        'post_date_gmt',
    2929        'ping_status',
     
    4646     * @var string[]
    4747     */
    48     private $meta_keys = array();
     48    private array $meta_keys = array();
    4949
    5050    /**
     
    5353     * @var WP_Taxonomy[]
    5454     */
    55     private $taxonomies;
     55    private array $taxonomies;
    5656
    5757    /**
     
    6060     * @var WP_Query
    6161     */
    62     private $query;
     62    private WP_Query $query;
    6363
    6464    /**
     
    7676    public function get_name(): string {
    7777        $post_type = get_post_type_object( $this->post_type );
     78
    7879        return $post_type->label ?? '';
    7980    }
     
    143144         * @param array $fields meta key and value.
    144145         * @param WP_Post $post post object.
    145          */
    146         return apply_filters( 'simple_csv_exporter_created_data_builder_for_wp_posts_get_post_meta_fields', $fields, $post );
     146         *
     147         * @deprecated 2.1.0
     148         */
     149        $fields = apply_filters( 'simple_csv_exporter_created_data_builder_for_wp_posts_get_post_meta_fields', $fields, $post );
     150
     151        /**
     152         * @param array $fields meta key and value.
     153         * @param WP_Post $post post object.
     154         * @since 2.1.0
     155         */
     156        return apply_filters( 'simple_csv_exporter_data_builder_for_wp_posts_get_post_meta_fields', $fields, $post );
    147157    }
    148158
     
    218228         *
    219229         * @param WP_Query $query
     230         *
     231         * @deprecated 2.1.0
    220232         */
    221233        do_action( 'simple_csv_exporter_created_data_builder_for_wp_posts_pre_get_posts', $query );
    222234
     235        /**
     236         * Fires after the query variable object is created, but before the actual query is run.
     237         *
     238         * @param WP_Query $query
     239         *
     240         * @since 2.1.0
     241         */
     242        do_action( 'simple_csv_exporter_data_builder_for_wp_posts_pre_get_posts', $query );
    223243        $query->get_posts();
    224244        $this->query = $query;
     
    239259        while ( $this->query->have_posts() ) {
    240260            $this->query->the_post();
    241             $post      = get_post();
    242             $post_data = array_merge(
     261            $post     = get_post();
     262            $row_data = array_merge(
    243263                $post->to_array(),
    244264                array(
     
    251271            );
    252272
     273            /**
     274             * Filter for row data.
     275             *
     276             * @param array $row_data row data.
     277             * @param WP_Post $post post object.
     278             *
     279             * @since 2.1.0
     280             */
     281            $row_data = apply_filters( 'simple_csv_exporter_data_builder_for_wp_posts_row_data', $row_data, $post );
     282
    253283            // Note: 'foo' => null なものを、まとめて削除.
    254284            yield array_filter(
    255                 $post_data,
     285                $row_data,
    256286                function ( $fields ) {
    257287                    return is_string( $fields ) || is_numeric( $fields );
     
    260290        }
    261291    }
    262 
    263 
    264292}
  • simple-csv-exporter/tags/2.1.5/src/Exporter.php

    r2446249 r3197847  
    1010class Exporter {
    1111    /**
    12      * @var string
    13      */
    14     private $slug;
    15 
    16     /**
    1712     * @var Nonce
    1813     */
    19     private $nonce;
     14    private Nonce $nonce;
    2015
    2116    /**
    2217     * @var Data_Builder
    2318     */
    24     private $data_builder;
     19    private Data_Builder $data_builder;
    2520
    2621    /**
    2722     * Exporter
    2823     *
    29      * @param string $slug Slug for admin page.
    3024     * @param Nonce $nonce
    3125     * @param Data_Builder $data_builder
    3226     */
    33     public function __construct( string $slug, Nonce $nonce, Data_Builder $data_builder ) {
    34         $this->slug         = $slug;
     27    public function __construct( Nonce $nonce, Data_Builder $data_builder ) {
    3528        $this->nonce        = $nonce;
    3629        $this->data_builder = $data_builder;
     
    7265        header( 'Content-Transfer-Encoding: binary' );
    7366    }
    74 
    75 
    7667}
  • simple-csv-exporter/tags/2.1.5/vendor/autoload.php

    r2761526 r3197847  
    44
    55if (PHP_VERSION_ID < 50600) {
    6     echo 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
    7     exit(1);
     6    if (!headers_sent()) {
     7        header('HTTP/1.1 500 Internal Server Error');
     8    }
     9    $err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
     10    if (!ini_get('display_errors')) {
     11        if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
     12            fwrite(STDERR, $err);
     13        } elseif (!headers_sent()) {
     14            echo $err;
     15        }
     16    }
     17    trigger_error(
     18        $err,
     19        E_USER_ERROR
     20    );
    821}
    922
    1023require_once __DIR__ . '/composer/autoload_real.php';
    1124
    12 return ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db::getLoader();
     25return ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8::getLoader();
  • simple-csv-exporter/tags/2.1.5/vendor/composer/ClassLoader.php

    r2761526 r3197847  
    4343class ClassLoader
    4444{
    45     /** @var ?string */
     45    /** @var \Closure(string):void */
     46    private static $includeFile;
     47
     48    /** @var string|null */
    4649    private $vendorDir;
    4750
    4851    // PSR-4
    4952    /**
    50      * @var array[]
    51      * @psalm-var array<string, array<string, int>>
     53     * @var array<string, array<string, int>>
    5254     */
    5355    private $prefixLengthsPsr4 = array();
    5456    /**
    55      * @var array[]
    56      * @psalm-var array<string, array<int, string>>
     57     * @var array<string, list<string>>
    5758     */
    5859    private $prefixDirsPsr4 = array();
    5960    /**
    60      * @var array[]
    61      * @psalm-var array<string, string>
     61     * @var list<string>
    6262     */
    6363    private $fallbackDirsPsr4 = array();
     
    6565    // PSR-0
    6666    /**
    67      * @var array[]
    68      * @psalm-var array<string, array<string, string[]>>
     67     * List of PSR-0 prefixes
     68     *
     69     * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2')))
     70     *
     71     * @var array<string, array<string, list<string>>>
    6972     */
    7073    private $prefixesPsr0 = array();
    7174    /**
    72      * @var array[]
    73      * @psalm-var array<string, string>
     75     * @var list<string>
    7476     */
    7577    private $fallbackDirsPsr0 = array();
     
    7981
    8082    /**
    81      * @var string[]
    82      * @psalm-var array<string, string>
     83     * @var array<string, string>
    8384     */
    8485    private $classMap = array();
     
    8889
    8990    /**
    90      * @var bool[]
    91      * @psalm-var array<string, bool>
     91     * @var array<string, bool>
    9292     */
    9393    private $missingClasses = array();
    9494
    95     /** @var ?string */
     95    /** @var string|null */
    9696    private $apcuPrefix;
    9797
    9898    /**
    99      * @var self[]
     99     * @var array<string, self>
    100100     */
    101101    private static $registeredLoaders = array();
    102102
    103103    /**
    104      * @param ?string $vendorDir
     104     * @param string|null $vendorDir
    105105     */
    106106    public function __construct($vendorDir = null)
    107107    {
    108108        $this->vendorDir = $vendorDir;
    109     }
    110 
    111     /**
    112      * @return string[]
     109        self::initializeIncludeClosure();
     110    }
     111
     112    /**
     113     * @return array<string, list<string>>
    113114     */
    114115    public function getPrefixes()
     
    122123
    123124    /**
    124      * @return array[]
    125      * @psalm-return array<string, array<int, string>>
     125     * @return array<string, list<string>>
    126126     */
    127127    public function getPrefixesPsr4()
     
    131131
    132132    /**
    133      * @return array[]
    134      * @psalm-return array<string, string>
     133     * @return list<string>
    135134     */
    136135    public function getFallbackDirs()
     
    140139
    141140    /**
    142      * @return array[]
    143      * @psalm-return array<string, string>
     141     * @return list<string>
    144142     */
    145143    public function getFallbackDirsPsr4()
     
    149147
    150148    /**
    151      * @return string[] Array of classname => path
    152      * @psalm-return array<string, string>
     149     * @return array<string, string> Array of classname => path
    153150     */
    154151    public function getClassMap()
     
    158155
    159156    /**
    160      * @param string[] $classMap Class to filename map
    161      * @psalm-param array<string, string> $classMap
     157     * @param array<string, string> $classMap Class to filename map
    162158     *
    163159     * @return void
     
    176172     * appending or prepending to the ones previously set for this prefix.
    177173     *
    178      * @param string          $prefix  The prefix
    179      * @param string[]|string $paths   The PSR-0 root directories
    180      * @param bool            $prepend Whether to prepend the directories
     174     * @param string              $prefix  The prefix
     175     * @param list<string>|string $paths   The PSR-0 root directories
     176     * @param bool                $prepend Whether to prepend the directories
    181177     *
    182178     * @return void
     
    184180    public function add($prefix, $paths, $prepend = false)
    185181    {
     182        $paths = (array) $paths;
    186183        if (!$prefix) {
    187184            if ($prepend) {
    188185                $this->fallbackDirsPsr0 = array_merge(
    189                     (array) $paths,
     186                    $paths,
    190187                    $this->fallbackDirsPsr0
    191188                );
     
    193190                $this->fallbackDirsPsr0 = array_merge(
    194191                    $this->fallbackDirsPsr0,
    195                     (array) $paths
     192                    $paths
    196193                );
    197194            }
     
    202199        $first = $prefix[0];
    203200        if (!isset($this->prefixesPsr0[$first][$prefix])) {
    204             $this->prefixesPsr0[$first][$prefix] = (array) $paths;
     201            $this->prefixesPsr0[$first][$prefix] = $paths;
    205202
    206203            return;
     
    208205        if ($prepend) {
    209206            $this->prefixesPsr0[$first][$prefix] = array_merge(
    210                 (array) $paths,
     207                $paths,
    211208                $this->prefixesPsr0[$first][$prefix]
    212209            );
     
    214211            $this->prefixesPsr0[$first][$prefix] = array_merge(
    215212                $this->prefixesPsr0[$first][$prefix],
    216                 (array) $paths
     213                $paths
    217214            );
    218215        }
     
    223220     * appending or prepending to the ones previously set for this namespace.
    224221     *
    225      * @param string          $prefix  The prefix/namespace, with trailing '\\'
    226      * @param string[]|string $paths   The PSR-4 base directories
    227      * @param bool            $prepend Whether to prepend the directories
     222     * @param string              $prefix  The prefix/namespace, with trailing '\\'
     223     * @param list<string>|string $paths   The PSR-4 base directories
     224     * @param bool                $prepend Whether to prepend the directories
    228225     *
    229226     * @throws \InvalidArgumentException
     
    233230    public function addPsr4($prefix, $paths, $prepend = false)
    234231    {
     232        $paths = (array) $paths;
    235233        if (!$prefix) {
    236234            // Register directories for the root namespace.
    237235            if ($prepend) {
    238236                $this->fallbackDirsPsr4 = array_merge(
    239                     (array) $paths,
     237                    $paths,
    240238                    $this->fallbackDirsPsr4
    241239                );
     
    243241                $this->fallbackDirsPsr4 = array_merge(
    244242                    $this->fallbackDirsPsr4,
    245                     (array) $paths
     243                    $paths
    246244                );
    247245            }
     
    253251            }
    254252            $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
    255             $this->prefixDirsPsr4[$prefix] = (array) $paths;
     253            $this->prefixDirsPsr4[$prefix] = $paths;
    256254        } elseif ($prepend) {
    257255            // Prepend directories for an already registered namespace.
    258256            $this->prefixDirsPsr4[$prefix] = array_merge(
    259                 (array) $paths,
     257                $paths,
    260258                $this->prefixDirsPsr4[$prefix]
    261259            );
     
    264262            $this->prefixDirsPsr4[$prefix] = array_merge(
    265263                $this->prefixDirsPsr4[$prefix],
    266                 (array) $paths
     264                $paths
    267265            );
    268266        }
     
    273271     * replacing any others previously set for this prefix.
    274272     *
    275      * @param string          $prefix The prefix
    276      * @param string[]|string $paths  The PSR-0 base directories
     273     * @param string              $prefix The prefix
     274     * @param list<string>|string $paths  The PSR-0 base directories
    277275     *
    278276     * @return void
     
    291289     * replacing any others previously set for this namespace.
    292290     *
    293      * @param string          $prefix The prefix/namespace, with trailing '\\'
    294      * @param string[]|string $paths  The PSR-4 base directories
     291     * @param string              $prefix The prefix/namespace, with trailing '\\'
     292     * @param list<string>|string $paths  The PSR-4 base directories
    295293     *
    296294     * @throws \InvalidArgumentException
     
    426424    {
    427425        if ($file = $this->findFile($class)) {
    428             includeFile($file);
     426            $includeFile = self::$includeFile;
     427            $includeFile($file);
    429428
    430429            return true;
     
    477476
    478477    /**
    479      * Returns the currently registered loaders indexed by their corresponding vendor directories.
    480      *
    481      * @return self[]
     478     * Returns the currently registered loaders keyed by their corresponding vendor directories.
     479     *
     480     * @return array<string, self>
    482481     */
    483482    public static function getRegisteredLoaders()
     
    556555        return false;
    557556    }
     557
     558    /**
     559     * @return void
     560     */
     561    private static function initializeIncludeClosure()
     562    {
     563        if (self::$includeFile !== null) {
     564            return;
     565        }
     566
     567        /**
     568         * Scope isolated include.
     569         *
     570         * Prevents access to $this/self from included files.
     571         *
     572         * @param  string $file
     573         * @return void
     574         */
     575        self::$includeFile = \Closure::bind(static function($file) {
     576            include $file;
     577        }, null, null);
     578    }
    558579}
    559 
    560 /**
    561  * Scope isolated include.
    562  *
    563  * Prevents access to $this/self from included files.
    564  *
    565  * @param  string $file
    566  * @return void
    567  * @private
    568  */
    569 function includeFile($file)
    570 {
    571     include $file;
    572 }
  • simple-csv-exporter/tags/2.1.5/vendor/composer/InstalledVersions.php

    r2761526 r3197847  
    9999        foreach (self::getInstalled() as $installed) {
    100100            if (isset($installed['versions'][$packageName])) {
    101                 return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
     101                return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false;
    102102            }
    103103        }
     
    120120    public static function satisfies(VersionParser $parser, $packageName, $constraint)
    121121    {
    122         $constraint = $parser->parseConstraints($constraint);
     122        $constraint = $parser->parseConstraints((string) $constraint);
    123123        $provided = $parser->parseConstraints(self::getVersionRanges($packageName));
    124124
     
    329329                    $installed[] = self::$installedByVendor[$vendorDir];
    330330                } elseif (is_file($vendorDir.'/composer/installed.php')) {
    331                     $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
     331                    /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
     332                    $required = require $vendorDir.'/composer/installed.php';
     333                    $installed[] = self::$installedByVendor[$vendorDir] = $required;
    332334                    if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
    333335                        self::$installed = $installed[count($installed) - 1];
     
    341343            // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
    342344            if (substr(__DIR__, -8, 1) !== 'C') {
    343                 self::$installed = require __DIR__ . '/installed.php';
     345                /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
     346                $required = require __DIR__ . '/installed.php';
     347                self::$installed = $required;
    344348            } else {
    345349                self::$installed = array();
    346350            }
    347351        }
    348         $installed[] = self::$installed;
     352
     353        if (self::$installed !== array()) {
     354            $installed[] = self::$installed;
     355        }
    349356
    350357        return $installed;
  • simple-csv-exporter/tags/2.1.5/vendor/composer/autoload_classmap.php

    r2761526 r3197847  
    9292    'Invoker\\ParameterResolver\\TypeHintResolver' => $vendorDir . '/php-di/invoker/src/ParameterResolver/TypeHintResolver.php',
    9393    'Invoker\\Reflection\\CallableReflection' => $vendorDir . '/php-di/invoker/src/Reflection/CallableReflection.php',
    94     'Opis\\Closure\\Analyzer' => $vendorDir . '/opis/closure/src/Analyzer.php',
    95     'Opis\\Closure\\ClosureContext' => $vendorDir . '/opis/closure/src/ClosureContext.php',
    96     'Opis\\Closure\\ClosureScope' => $vendorDir . '/opis/closure/src/ClosureScope.php',
    97     'Opis\\Closure\\ClosureStream' => $vendorDir . '/opis/closure/src/ClosureStream.php',
    98     'Opis\\Closure\\ISecurityProvider' => $vendorDir . '/opis/closure/src/ISecurityProvider.php',
    99     'Opis\\Closure\\ReflectionClosure' => $vendorDir . '/opis/closure/src/ReflectionClosure.php',
    100     'Opis\\Closure\\SecurityException' => $vendorDir . '/opis/closure/src/SecurityException.php',
    101     'Opis\\Closure\\SecurityProvider' => $vendorDir . '/opis/closure/src/SecurityProvider.php',
    102     'Opis\\Closure\\SelfReference' => $vendorDir . '/opis/closure/src/SelfReference.php',
    103     'Opis\\Closure\\SerializableClosure' => $vendorDir . '/opis/closure/src/SerializableClosure.php',
     94    'Laravel\\SerializableClosure\\Contracts\\Serializable' => $vendorDir . '/laravel/serializable-closure/src/Contracts/Serializable.php',
     95    'Laravel\\SerializableClosure\\Contracts\\Signer' => $vendorDir . '/laravel/serializable-closure/src/Contracts/Signer.php',
     96    'Laravel\\SerializableClosure\\Exceptions\\InvalidSignatureException' => $vendorDir . '/laravel/serializable-closure/src/Exceptions/InvalidSignatureException.php',
     97    'Laravel\\SerializableClosure\\Exceptions\\MissingSecretKeyException' => $vendorDir . '/laravel/serializable-closure/src/Exceptions/MissingSecretKeyException.php',
     98    'Laravel\\SerializableClosure\\Exceptions\\PhpVersionNotSupportedException' => $vendorDir . '/laravel/serializable-closure/src/Exceptions/PhpVersionNotSupportedException.php',
     99    'Laravel\\SerializableClosure\\SerializableClosure' => $vendorDir . '/laravel/serializable-closure/src/SerializableClosure.php',
     100    'Laravel\\SerializableClosure\\Serializers\\Native' => $vendorDir . '/laravel/serializable-closure/src/Serializers/Native.php',
     101    'Laravel\\SerializableClosure\\Serializers\\Signed' => $vendorDir . '/laravel/serializable-closure/src/Serializers/Signed.php',
     102    'Laravel\\SerializableClosure\\Signers\\Hmac' => $vendorDir . '/laravel/serializable-closure/src/Signers/Hmac.php',
     103    'Laravel\\SerializableClosure\\Support\\ClosureScope' => $vendorDir . '/laravel/serializable-closure/src/Support/ClosureScope.php',
     104    'Laravel\\SerializableClosure\\Support\\ClosureStream' => $vendorDir . '/laravel/serializable-closure/src/Support/ClosureStream.php',
     105    'Laravel\\SerializableClosure\\Support\\ReflectionClosure' => $vendorDir . '/laravel/serializable-closure/src/Support/ReflectionClosure.php',
     106    'Laravel\\SerializableClosure\\Support\\SelfReference' => $vendorDir . '/laravel/serializable-closure/src/Support/SelfReference.php',
     107    'Laravel\\SerializableClosure\\UnsignedSerializableClosure' => $vendorDir . '/laravel/serializable-closure/src/UnsignedSerializableClosure.php',
    104108    'PhpDocReader\\AnnotationException' => $vendorDir . '/php-di/phpdoc-reader/src/PhpDocReader/AnnotationException.php',
    105109    'PhpDocReader\\PhpDocReader' => $vendorDir . '/php-di/phpdoc-reader/src/PhpDocReader/PhpDocReader.php',
  • simple-csv-exporter/tags/2.1.5/vendor/composer/autoload_files.php

    r2761526 r3197847  
    77
    88return array(
    9     '538ca81a9a966a6716601ecf48f4eaef' => $vendorDir . '/opis/closure/functions.php',
    109    'b33e3d135e5d9e47d845c576147bda89' => $vendorDir . '/php-di/php-di/src/functions.php',
    1110);
  • simple-csv-exporter/tags/2.1.5/vendor/composer/autoload_psr4.php

    r2761526 r3197847  
    99    'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
    1010    'PhpDocReader\\' => array($vendorDir . '/php-di/phpdoc-reader/src/PhpDocReader'),
    11     'Opis\\Closure\\' => array($vendorDir . '/opis/closure/src'),
     11    'Laravel\\SerializableClosure\\' => array($vendorDir . '/laravel/serializable-closure/src'),
    1212    'Invoker\\' => array($vendorDir . '/php-di/invoker/src'),
    1313    'HAMWORKS\\WP\\Simple_CSV_Exporter\\Tests\\' => array($baseDir . '/tests'),
  • simple-csv-exporter/tags/2.1.5/vendor/composer/autoload_real.php

    r2761526 r3197847  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db
     5class ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8
    66{
    77    private static $loader;
     
    2525        require __DIR__ . '/platform_check.php';
    2626
    27         spl_autoload_register(array('ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db', 'loadClassLoader'), true, true);
     27        spl_autoload_register(array('ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8', 'loadClassLoader'), true, true);
    2828        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
    29         spl_autoload_unregister(array('ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db', 'loadClassLoader'));
     29        spl_autoload_unregister(array('ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8', 'loadClassLoader'));
    3030
    3131        require __DIR__ . '/autoload_static.php';
    32         call_user_func(\Composer\Autoload\ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::getInitializer($loader));
     32        call_user_func(\Composer\Autoload\ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::getInitializer($loader));
    3333
    3434        $loader->register(true);
    3535
    36         $includeFiles = \Composer\Autoload\ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$files;
    37         foreach ($includeFiles as $fileIdentifier => $file) {
    38             composerRequire2e765ad8ae0dfed5be0e9b093247e6db($fileIdentifier, $file);
     36        $filesToLoad = \Composer\Autoload\ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$files;
     37        $requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
     38            if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
     39                $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
     40
     41                require $file;
     42            }
     43        }, null, null);
     44        foreach ($filesToLoad as $fileIdentifier => $file) {
     45            $requireFile($fileIdentifier, $file);
    3946        }
    4047
     
    4249    }
    4350}
    44 
    45 /**
    46  * @param string $fileIdentifier
    47  * @param string $file
    48  * @return void
    49  */
    50 function composerRequire2e765ad8ae0dfed5be0e9b093247e6db($fileIdentifier, $file)
    51 {
    52     if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
    53         $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
    54 
    55         require $file;
    56     }
    57 }
  • simple-csv-exporter/tags/2.1.5/vendor/composer/autoload_static.php

    r2761526 r3197847  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db
     7class ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8
    88{
    99    public static $files = array (
    10         '538ca81a9a966a6716601ecf48f4eaef' => __DIR__ . '/..' . '/opis/closure/functions.php',
    1110        'b33e3d135e5d9e47d845c576147bda89' => __DIR__ . '/..' . '/php-di/php-di/src/functions.php',
    1211    );
     
    1817            'PhpDocReader\\' => 13,
    1918        ),
    20         'O' =>
     19        'L' =>
    2120        array (
    22             'Opis\\Closure\\' => 13,
     21            'Laravel\\SerializableClosure\\' => 28,
    2322        ),
    2423        'I' =>
     
    4645            0 => __DIR__ . '/..' . '/php-di/phpdoc-reader/src/PhpDocReader',
    4746        ),
    48         'Opis\\Closure\\' =>
     47        'Laravel\\SerializableClosure\\' =>
    4948        array (
    50             0 => __DIR__ . '/..' . '/opis/closure/src',
     49            0 => __DIR__ . '/..' . '/laravel/serializable-closure/src',
    5150        ),
    5251        'Invoker\\' =>
     
    154153        'Invoker\\ParameterResolver\\TypeHintResolver' => __DIR__ . '/..' . '/php-di/invoker/src/ParameterResolver/TypeHintResolver.php',
    155154        'Invoker\\Reflection\\CallableReflection' => __DIR__ . '/..' . '/php-di/invoker/src/Reflection/CallableReflection.php',
    156         'Opis\\Closure\\Analyzer' => __DIR__ . '/..' . '/opis/closure/src/Analyzer.php',
    157         'Opis\\Closure\\ClosureContext' => __DIR__ . '/..' . '/opis/closure/src/ClosureContext.php',
    158         'Opis\\Closure\\ClosureScope' => __DIR__ . '/..' . '/opis/closure/src/ClosureScope.php',
    159         'Opis\\Closure\\ClosureStream' => __DIR__ . '/..' . '/opis/closure/src/ClosureStream.php',
    160         'Opis\\Closure\\ISecurityProvider' => __DIR__ . '/..' . '/opis/closure/src/ISecurityProvider.php',
    161         'Opis\\Closure\\ReflectionClosure' => __DIR__ . '/..' . '/opis/closure/src/ReflectionClosure.php',
    162         'Opis\\Closure\\SecurityException' => __DIR__ . '/..' . '/opis/closure/src/SecurityException.php',
    163         'Opis\\Closure\\SecurityProvider' => __DIR__ . '/..' . '/opis/closure/src/SecurityProvider.php',
    164         'Opis\\Closure\\SelfReference' => __DIR__ . '/..' . '/opis/closure/src/SelfReference.php',
    165         'Opis\\Closure\\SerializableClosure' => __DIR__ . '/..' . '/opis/closure/src/SerializableClosure.php',
     155        'Laravel\\SerializableClosure\\Contracts\\Serializable' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Contracts/Serializable.php',
     156        'Laravel\\SerializableClosure\\Contracts\\Signer' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Contracts/Signer.php',
     157        'Laravel\\SerializableClosure\\Exceptions\\InvalidSignatureException' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Exceptions/InvalidSignatureException.php',
     158        'Laravel\\SerializableClosure\\Exceptions\\MissingSecretKeyException' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Exceptions/MissingSecretKeyException.php',
     159        'Laravel\\SerializableClosure\\Exceptions\\PhpVersionNotSupportedException' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Exceptions/PhpVersionNotSupportedException.php',
     160        'Laravel\\SerializableClosure\\SerializableClosure' => __DIR__ . '/..' . '/laravel/serializable-closure/src/SerializableClosure.php',
     161        'Laravel\\SerializableClosure\\Serializers\\Native' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Serializers/Native.php',
     162        'Laravel\\SerializableClosure\\Serializers\\Signed' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Serializers/Signed.php',
     163        'Laravel\\SerializableClosure\\Signers\\Hmac' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Signers/Hmac.php',
     164        'Laravel\\SerializableClosure\\Support\\ClosureScope' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/ClosureScope.php',
     165        'Laravel\\SerializableClosure\\Support\\ClosureStream' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/ClosureStream.php',
     166        'Laravel\\SerializableClosure\\Support\\ReflectionClosure' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/ReflectionClosure.php',
     167        'Laravel\\SerializableClosure\\Support\\SelfReference' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/SelfReference.php',
     168        'Laravel\\SerializableClosure\\UnsignedSerializableClosure' => __DIR__ . '/..' . '/laravel/serializable-closure/src/UnsignedSerializableClosure.php',
    166169        'PhpDocReader\\AnnotationException' => __DIR__ . '/..' . '/php-di/phpdoc-reader/src/PhpDocReader/AnnotationException.php',
    167170        'PhpDocReader\\PhpDocReader' => __DIR__ . '/..' . '/php-di/phpdoc-reader/src/PhpDocReader/PhpDocReader.php',
     
    176179    {
    177180        return \Closure::bind(function () use ($loader) {
    178             $loader->prefixLengthsPsr4 = ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$prefixLengthsPsr4;
    179             $loader->prefixDirsPsr4 = ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$prefixDirsPsr4;
    180             $loader->classMap = ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$classMap;
     181            $loader->prefixLengthsPsr4 = ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$prefixLengthsPsr4;
     182            $loader->prefixDirsPsr4 = ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$prefixDirsPsr4;
     183            $loader->classMap = ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$classMap;
    181184
    182185        }, null, ClassLoader::class);
  • simple-csv-exporter/tags/2.1.5/vendor/composer/installed.json

    r2761526 r3197847  
    22    "packages": [
    33        {
    4             "name": "opis/closure",
    5             "version": "3.6.3",
    6             "version_normalized": "3.6.3.0",
    7             "source": {
    8                 "type": "git",
    9                 "url": "https://github.com/opis/closure.git",
    10                 "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad"
    11             },
    12             "dist": {
    13                 "type": "zip",
    14                 "url": "https://api.github.com/repos/opis/closure/zipball/3d81e4309d2a927abbe66df935f4bb60082805ad",
    15                 "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad",
    16                 "shasum": ""
    17             },
    18             "require": {
    19                 "php": "^5.4 || ^7.0 || ^8.0"
     4            "name": "laravel/serializable-closure",
     5            "version": "v1.3.7",
     6            "version_normalized": "1.3.7.0",
     7            "source": {
     8                "type": "git",
     9                "url": "https://github.com/laravel/serializable-closure.git",
     10                "reference": "4f48ade902b94323ca3be7646db16209ec76be3d"
     11            },
     12            "dist": {
     13                "type": "zip",
     14                "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/4f48ade902b94323ca3be7646db16209ec76be3d",
     15                "reference": "4f48ade902b94323ca3be7646db16209ec76be3d",
     16                "shasum": ""
     17            },
     18            "require": {
     19                "php": "^7.3|^8.0"
    2020            },
    2121            "require-dev": {
    22                 "jeremeamia/superclosure": "^2.0",
    23                 "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
    24             },
    25             "time": "2022-01-27T09:35:39+00:00",
     22                "illuminate/support": "^8.0|^9.0|^10.0|^11.0",
     23                "nesbot/carbon": "^2.61|^3.0",
     24                "pestphp/pest": "^1.21.3",
     25                "phpstan/phpstan": "^1.8.2",
     26                "symfony/var-dumper": "^5.4.11|^6.2.0|^7.0.0"
     27            },
     28            "time": "2024-11-14T18:34:49+00:00",
    2629            "type": "library",
    2730            "extra": {
    2831                "branch-alias": {
    29                     "dev-master": "3.6.x-dev"
    30                 }
    31             },
    32             "installation-source": "dist",
    33             "autoload": {
    34                 "files": [
    35                     "functions.php"
    36                 ],
    37                 "psr-4": {
    38                     "Opis\\Closure\\": "src/"
     32                    "dev-master": "1.x-dev"
     33                }
     34            },
     35            "installation-source": "dist",
     36            "autoload": {
     37                "psr-4": {
     38                    "Laravel\\SerializableClosure\\": "src/"
    3939                }
    4040            },
     
    4545            "authors": [
    4646                {
    47                     "name": "Marius Sarca",
    48                     "email": "marius.sarca@gmail.com"
     47                    "name": "Taylor Otwell",
     48                    "email": "taylor@laravel.com"
    4949                },
    5050                {
    51                     "name": "Sorin Sarca",
    52                     "email": "sarca_sorin@hotmail.com"
    53                 }
    54             ],
    55             "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.",
    56             "homepage": "https://opis.io/closure",
    57             "keywords": [
    58                 "anonymous functions",
     51                    "name": "Nuno Maduro",
     52                    "email": "nuno@laravel.com"
     53                }
     54            ],
     55            "description": "Laravel Serializable Closure provides an easy and secure way to serialize closures in PHP.",
     56            "keywords": [
    5957                "closure",
    60                 "function",
    61                 "serializable",
    62                 "serialization",
    63                 "serialize"
    64             ],
    65             "support": {
    66                 "issues": "https://github.com/opis/closure/issues",
    67                 "source": "https://github.com/opis/closure/tree/3.6.3"
    68             },
    69             "install-path": "../opis/closure"
     58                "laravel",
     59                "serializable"
     60            ],
     61            "support": {
     62                "issues": "https://github.com/laravel/serializable-closure/issues",
     63                "source": "https://github.com/laravel/serializable-closure"
     64            },
     65            "install-path": "../laravel/serializable-closure"
    7066        },
    7167        {
    7268            "name": "php-di/invoker",
    73             "version": "2.0.0",
    74             "version_normalized": "2.0.0.0",
     69            "version": "2.3.4",
     70            "version_normalized": "2.3.4.0",
    7571            "source": {
    7672                "type": "git",
    7773                "url": "https://github.com/PHP-DI/Invoker.git",
    78                 "reference": "540c27c86f663e20fe39a24cd72fa76cdb21d41a"
    79             },
    80             "dist": {
    81                 "type": "zip",
    82                 "url": "https://api.github.com/repos/PHP-DI/Invoker/zipball/540c27c86f663e20fe39a24cd72fa76cdb21d41a",
    83                 "reference": "540c27c86f663e20fe39a24cd72fa76cdb21d41a",
    84                 "shasum": ""
    85             },
    86             "require": {
    87                 "psr/container": "~1.0"
     74                "reference": "33234b32dafa8eb69202f950a1fc92055ed76a86"
     75            },
     76            "dist": {
     77                "type": "zip",
     78                "url": "https://api.github.com/repos/PHP-DI/Invoker/zipball/33234b32dafa8eb69202f950a1fc92055ed76a86",
     79                "reference": "33234b32dafa8eb69202f950a1fc92055ed76a86",
     80                "shasum": ""
     81            },
     82            "require": {
     83                "php": ">=7.3",
     84                "psr/container": "^1.0|^2.0"
    8885            },
    8986            "require-dev": {
    9087                "athletic/athletic": "~0.1.8",
    91                 "phpunit/phpunit": "~4.5"
    92             },
    93             "time": "2017-03-20T19:28:22+00:00",
     88                "mnapoli/hard-mode": "~0.3.0",
     89                "phpunit/phpunit": "^9.0"
     90            },
     91            "time": "2023-09-08T09:24:21+00:00",
    9492            "type": "library",
    9593            "installation-source": "dist",
     
    115113            "support": {
    116114                "issues": "https://github.com/PHP-DI/Invoker/issues",
    117                 "source": "https://github.com/PHP-DI/Invoker/tree/master"
    118             },
     115                "source": "https://github.com/PHP-DI/Invoker/tree/2.3.4"
     116            },
     117            "funding": [
     118                {
     119                    "url": "https://github.com/mnapoli",
     120                    "type": "github"
     121                }
     122            ],
    119123            "install-path": "../php-di/invoker"
    120124        },
    121125        {
    122126            "name": "php-di/php-di",
    123             "version": "6.3.5",
    124             "version_normalized": "6.3.5.0",
     127            "version": "6.4.0",
     128            "version_normalized": "6.4.0.0",
    125129            "source": {
    126130                "type": "git",
    127131                "url": "https://github.com/PHP-DI/PHP-DI.git",
    128                 "reference": "b8126d066ce144765300ee0ab040c1ed6c9ef588"
    129             },
    130             "dist": {
    131                 "type": "zip",
    132                 "url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/b8126d066ce144765300ee0ab040c1ed6c9ef588",
    133                 "reference": "b8126d066ce144765300ee0ab040c1ed6c9ef588",
    134                 "shasum": ""
    135             },
    136             "require": {
    137                 "opis/closure": "^3.5.5",
    138                 "php": ">=7.2.0",
     132                "reference": "ae0f1b3b03d8b29dff81747063cbfd6276246cc4"
     133            },
     134            "dist": {
     135                "type": "zip",
     136                "url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/ae0f1b3b03d8b29dff81747063cbfd6276246cc4",
     137                "reference": "ae0f1b3b03d8b29dff81747063cbfd6276246cc4",
     138                "shasum": ""
     139            },
     140            "require": {
     141                "laravel/serializable-closure": "^1.0",
     142                "php": ">=7.4.0",
    139143                "php-di/invoker": "^2.0",
    140144                "php-di/phpdoc-reader": "^2.0.1",
     
    145149            },
    146150            "require-dev": {
    147                 "doctrine/annotations": "~1.2",
     151                "doctrine/annotations": "~1.10",
    148152                "friendsofphp/php-cs-fixer": "^2.4",
    149153                "mnapoli/phpunit-easymock": "^1.2",
    150                 "ocramius/proxy-manager": "^2.0.2",
     154                "ocramius/proxy-manager": "^2.11.2",
    151155                "phpstan/phpstan": "^0.12",
    152                 "phpunit/phpunit": "^8.5|^9.0"
     156                "phpunit/phpunit": "^9.5"
    153157            },
    154158            "suggest": {
     
    156160                "ocramius/proxy-manager": "Install it if you want to use lazy injection (version ~2.0)"
    157161            },
    158             "time": "2021-09-02T09:49:58+00:00",
     162            "time": "2022-04-09T16:46:38+00:00",
    159163            "type": "library",
    160164            "installation-source": "dist",
     
    184188            "support": {
    185189                "issues": "https://github.com/PHP-DI/PHP-DI/issues",
    186                 "source": "https://github.com/PHP-DI/PHP-DI/tree/6.3.5"
     190                "source": "https://github.com/PHP-DI/PHP-DI/tree/6.4.0"
    187191            },
    188192            "funding": [
     
    245249        {
    246250            "name": "psr/container",
    247             "version": "1.1.1",
    248             "version_normalized": "1.1.1.0",
     251            "version": "1.1.2",
     252            "version_normalized": "1.1.2.0",
    249253            "source": {
    250254                "type": "git",
    251255                "url": "https://github.com/php-fig/container.git",
    252                 "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf"
    253             },
    254             "dist": {
    255                 "type": "zip",
    256                 "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf",
    257                 "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf",
    258                 "shasum": ""
    259             },
    260             "require": {
    261                 "php": ">=7.2.0"
    262             },
    263             "time": "2021-03-05T17:36:06+00:00",
     256                "reference": "513e0666f7216c7459170d56df27dfcefe1689ea"
     257            },
     258            "dist": {
     259                "type": "zip",
     260                "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea",
     261                "reference": "513e0666f7216c7459170d56df27dfcefe1689ea",
     262                "shasum": ""
     263            },
     264            "require": {
     265                "php": ">=7.4.0"
     266            },
     267            "time": "2021-11-05T16:50:12+00:00",
    264268            "type": "library",
    265269            "installation-source": "dist",
     
    290294            "support": {
    291295                "issues": "https://github.com/php-fig/container/issues",
    292                 "source": "https://github.com/php-fig/container/tree/1.1.1"
     296                "source": "https://github.com/php-fig/container/tree/1.1.2"
    293297            },
    294298            "install-path": "../psr/container"
  • simple-csv-exporter/tags/2.1.5/vendor/composer/installed.php

    r2761526 r3197847  
    22    'root' => array(
    33        'name' => 'hamworks/simple-csv-exporter',
    4         'pretty_version' => '2.0.1',
    5         'version' => '2.0.1.0',
    6         'reference' => '1d0d4fca93369395531eb749924260d960ae3113',
     4        'pretty_version' => '2.1.5',
     5        'version' => '2.1.5.0',
     6        'reference' => '6e39eafa5c2689fce1c48e2d83aeb3669acde9d0',
    77        'type' => 'library',
    88        'install_path' => __DIR__ . '/../../',
     
    1212    'versions' => array(
    1313        'hamworks/simple-csv-exporter' => array(
    14             'pretty_version' => '2.0.1',
    15             'version' => '2.0.1.0',
    16             'reference' => '1d0d4fca93369395531eb749924260d960ae3113',
     14            'pretty_version' => '2.1.5',
     15            'version' => '2.1.5.0',
     16            'reference' => '6e39eafa5c2689fce1c48e2d83aeb3669acde9d0',
    1717            'type' => 'library',
    1818            'install_path' => __DIR__ . '/../../',
     
    2020            'dev_requirement' => false,
    2121        ),
    22         'opis/closure' => array(
    23             'pretty_version' => '3.6.3',
    24             'version' => '3.6.3.0',
    25             'reference' => '3d81e4309d2a927abbe66df935f4bb60082805ad',
     22        'laravel/serializable-closure' => array(
     23            'pretty_version' => 'v1.3.7',
     24            'version' => '1.3.7.0',
     25            'reference' => '4f48ade902b94323ca3be7646db16209ec76be3d',
    2626            'type' => 'library',
    27             'install_path' => __DIR__ . '/../opis/closure',
     27            'install_path' => __DIR__ . '/../laravel/serializable-closure',
    2828            'aliases' => array(),
    2929            'dev_requirement' => false,
    3030        ),
    3131        'php-di/invoker' => array(
    32             'pretty_version' => '2.0.0',
    33             'version' => '2.0.0.0',
    34             'reference' => '540c27c86f663e20fe39a24cd72fa76cdb21d41a',
     32            'pretty_version' => '2.3.4',
     33            'version' => '2.3.4.0',
     34            'reference' => '33234b32dafa8eb69202f950a1fc92055ed76a86',
    3535            'type' => 'library',
    3636            'install_path' => __DIR__ . '/../php-di/invoker',
     
    3939        ),
    4040        'php-di/php-di' => array(
    41             'pretty_version' => '6.3.5',
    42             'version' => '6.3.5.0',
    43             'reference' => 'b8126d066ce144765300ee0ab040c1ed6c9ef588',
     41            'pretty_version' => '6.4.0',
     42            'version' => '6.4.0.0',
     43            'reference' => 'ae0f1b3b03d8b29dff81747063cbfd6276246cc4',
    4444            'type' => 'library',
    4545            'install_path' => __DIR__ . '/../php-di/php-di',
     
    5757        ),
    5858        'psr/container' => array(
    59             'pretty_version' => '1.1.1',
    60             'version' => '1.1.1.0',
    61             'reference' => '8622567409010282b7aeebe4bb841fe98b58dcaf',
     59            'pretty_version' => '1.1.2',
     60            'version' => '1.1.2.0',
     61            'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea',
    6262            'type' => 'library',
    6363            'install_path' => __DIR__ . '/../psr/container',
  • simple-csv-exporter/tags/2.1.5/vendor/composer/platform_check.php

    r2761526 r3197847  
    55$issues = array();
    66
    7 if (!(PHP_VERSION_ID >= 70400)) {
    8     $issues[] = 'Your Composer dependencies require a PHP version ">= 7.4.0". You are running ' . PHP_VERSION . '.';
     7if (!(PHP_VERSION_ID >= 80100)) {
     8    $issues[] = 'Your Composer dependencies require a PHP version ">= 8.1.0". You are running ' . PHP_VERSION . '.';
    99}
    1010
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/CallableResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker;
    44
     5use Closure;
    56use Invoker\Exception\NotCallableException;
    67use Psr\Container\ContainerInterface;
    78use Psr\Container\NotFoundExceptionInterface;
     9use ReflectionException;
     10use ReflectionMethod;
    811
    912/**
    1013 * Resolves a callable from a container.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1314 */
    1415class CallableResolver
    1516{
    16     /**
    17      * @var ContainerInterface
    18      */
     17    /** @var ContainerInterface */
    1918    private $container;
    2019
     
    2827     *
    2928     * @param callable|string|array $callable
    30      *
    3129     * @return callable Real PHP callable.
    32      *
    33      * @throws NotCallableException
     30     * @throws NotCallableException|ReflectionException
    3431     */
    35     public function resolve($callable)
     32    public function resolve($callable): callable
    3633    {
    3734        if (is_string($callable) && strpos($callable, '::') !== false) {
     
    5047    /**
    5148     * @param callable|string|array $callable
    52      * @return callable
    53      * @throws NotCallableException
     49     * @return callable|mixed
     50     * @throws NotCallableException|ReflectionException
    5451     */
    5552    private function resolveFromContainer($callable)
    5653    {
    5754        // Shortcut for a very common use case
    58         if ($callable instanceof \Closure) {
     55        if ($callable instanceof Closure) {
    5956            return $callable;
    6057        }
    6158
    62         $isStaticCallToNonStaticMethod = false;
    63 
    6459        // If it's already a callable there is nothing to do
    6560        if (is_callable($callable)) {
    66             $isStaticCallToNonStaticMethod = $this->isStaticCallToNonStaticMethod($callable);
    67             if (! $isStaticCallToNonStaticMethod) {
     61            // TODO with PHP 8 that should not be necessary to check this anymore
     62            if (! $this->isStaticCallToNonStaticMethod($callable)) {
    6863                return $callable;
    6964            }
     
    9388                    throw $e;
    9489                }
    95                 if ($isStaticCallToNonStaticMethod) {
    96                     throw new NotCallableException(sprintf(
    97                         'Cannot call %s::%s() because %s() is not a static method and "%s" is not a container entry',
    98                         $callable[0],
    99                         $callable[1],
    100                         $callable[1],
    101                         $callable[0]
    102                     ));
    103                 }
    10490                throw new NotCallableException(sprintf(
    105                     'Cannot call %s on %s because it is not a class nor a valid container entry',
     91                    'Cannot call %s() on %s because it is not a class nor a valid container entry',
    10692                    $callable[1],
    10793                    $callable[0]
     
    118104     *
    119105     * @param mixed $callable
    120      * @return bool
     106     * @throws ReflectionException
    121107     */
    122     private function isStaticCallToNonStaticMethod($callable)
     108    private function isStaticCallToNonStaticMethod($callable): bool
    123109    {
    124110        if (is_array($callable) && is_string($callable[0])) {
    125             list($class, $method) = $callable;
    126             $reflection = new \ReflectionMethod($class, $method);
     111            [$class, $method] = $callable;
     112
     113            if (! method_exists($class, $method)) {
     114                return false;
     115            }
     116
     117            $reflection = new ReflectionMethod($class, $method);
    127118
    128119            return ! $reflection->isStatic();
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/Exception/InvocationException.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Exception;
     
    55/**
    66 * Impossible to invoke the callable.
    7  *
    8  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    97 */
    108class InvocationException extends \Exception
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/Exception/NotCallableException.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Exception;
     
    55/**
    66 * The given callable is not actually callable.
    7  *
    8  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    97 */
    108class NotCallableException extends InvocationException
    119{
    1210    /**
    13      * @param string $value
    14      * @param bool $containerEntry
    15      * @return self
     11     * @param mixed $value
    1612     */
    17     public static function fromInvalidCallable($value, $containerEntry = false)
     13    public static function fromInvalidCallable($value, bool $containerEntry = false): self
    1814    {
    1915        if (is_object($value)) {
    2016            $message = sprintf('Instance of %s is not a callable', get_class($value));
    21         } elseif (is_array($value) && isset($value[0]) && isset($value[1])) {
     17        } elseif (is_array($value) && isset($value[0], $value[1])) {
    2218            $class = is_object($value[0]) ? get_class($value[0]) : $value[0];
    23             $extra = method_exists($class, '__call') ? ' A __call() method exists but magic methods are not supported.' : '';
     19
     20            $extra = method_exists($class, '__call') || method_exists($class, '__callStatic')
     21                ? ' A __call() or __callStatic() method exists but magic methods are not supported.'
     22                : '';
     23
    2424            $message = sprintf('%s::%s() is not a callable.%s', $class, $value[1], $extra);
     25        } elseif ($containerEntry) {
     26            $message = var_export($value, true) . ' is neither a callable nor a valid container entry';
    2527        } else {
    26             if ($containerEntry) {
    27                 $message = var_export($value, true) . ' is neither a callable nor a valid container entry';
    28             } else {
    29                 $message = var_export($value, true) . ' is not a callable';
    30             }
     28            $message = var_export($value, true) . ' is not a callable';
    3129        }
    3230
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/Exception/NotEnoughParametersException.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Exception;
     
    55/**
    66 * Not enough parameters could be resolved to invoke the callable.
    7  *
    8  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    97 */
    108class NotEnoughParametersException extends InvocationException
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/Invoker.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker;
     
    1212use Invoker\Reflection\CallableReflection;
    1313use Psr\Container\ContainerInterface;
     14use ReflectionParameter;
    1415
    1516/**
    1617 * Invoke a callable.
    17  *
    18  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1918 */
    2019class Invoker implements InvokerInterface
    2120{
    22     /**
    23      * @var CallableResolver|null
    24      */
     21    /** @var CallableResolver|null */
    2522    private $callableResolver;
    2623
    27     /**
    28      * @var ParameterResolver
    29      */
     24    /** @var ParameterResolver */
    3025    private $parameterResolver;
    3126
    32     /**
    33      * @var ContainerInterface|null
    34      */
     27    /** @var ContainerInterface|null */
    3528    private $container;
    3629
    37     public function __construct(ParameterResolver $parameterResolver = null, ContainerInterface $container = null)
     30    public function __construct(?ParameterResolver $parameterResolver = null, ?ContainerInterface $container = null)
    3831    {
    3932        $this->parameterResolver = $parameterResolver ?: $this->createParameterResolver();
     
    4841     * {@inheritdoc}
    4942     */
    50     public function call($callable, array $parameters = array())
     43    public function call($callable, array $parameters = [])
    5144    {
    5245        if ($this->callableResolver) {
     
    6356        $callableReflection = CallableReflection::create($callable);
    6457
    65         $args = $this->parameterResolver->getParameters($callableReflection, $parameters, array());
     58        $args = $this->parameterResolver->getParameters($callableReflection, $parameters, []);
    6659
    6760        // Sort by array key because call_user_func_array ignores numeric keys
     
    7063        // Check all parameters are resolved
    7164        $diff = array_diff_key($callableReflection->getParameters(), $args);
    72         if (! empty($diff)) {
    73             /** @var \ReflectionParameter $parameter */
    74             $parameter = reset($diff);
     65        $parameter = reset($diff);
     66        if ($parameter && \assert($parameter instanceof ReflectionParameter) && ! $parameter->isVariadic()) {
    7567            throw new NotEnoughParametersException(sprintf(
    7668                'Unable to invoke the callable because no value was given for parameter %d ($%s)',
     
    8577    /**
    8678     * Create the default parameter resolver.
    87      *
    88      * @return ParameterResolver
    8979     */
    90     private function createParameterResolver()
     80    private function createParameterResolver(): ParameterResolver
    9181    {
    92         return new ResolverChain(array(
     82        return new ResolverChain([
    9383            new NumericArrayResolver,
    9484            new AssociativeArrayResolver,
    9585            new DefaultValueResolver,
    96         ));
     86        ]);
    9787    }
    9888
     
    10090     * @return ParameterResolver By default it's a ResolverChain
    10191     */
    102     public function getParameterResolver()
     92    public function getParameterResolver(): ParameterResolver
    10393    {
    10494        return $this->parameterResolver;
    10595    }
    10696
    107     /**
    108      * @return ContainerInterface|null
    109      */
    110     public function getContainer()
     97    public function getContainer(): ?ContainerInterface
    11198    {
    11299        return $this->container;
     
    116103     * @return CallableResolver|null Returns null if no container was given in the constructor.
    117104     */
    118     public function getCallableResolver()
     105    public function getCallableResolver(): ?CallableResolver
    119106    {
    120107        return $this->callableResolver;
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/InvokerInterface.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker;
     
    99/**
    1010 * Invoke a callable.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1311 */
    1412interface InvokerInterface
     
    1715     * Call the given function using the given parameters.
    1816     *
    19      * @param callable $callable   Function to call.
    20      * @param array    $parameters Parameters to use.
    21      *
     17     * @param callable|array|string $callable Function to call.
     18     * @param array $parameters Parameters to use.
    2219     * @return mixed Result of the function.
    23      *
    2420     * @throws InvocationException Base exception class for all the sub-exceptions below.
    2521     * @throws NotCallableException
    2622     * @throws NotEnoughParametersException
    2723     */
    28     public function call($callable, array $parameters = array());
     24    public function call($callable, array $parameters = []);
    2925}
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/AssociativeArrayResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    1212 *
    1313 * Parameters that are not indexed by a string are ignored.
    14  *
    15  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1614 */
    1715class AssociativeArrayResolver implements ParameterResolver
     
    2119        array $providedParameters,
    2220        array $resolvedParameters
    23     ) {
     21    ): array {
    2422        $parameters = $reflection->getParameters();
    2523
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/Container/ParameterNameContainerResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver\Container;
     
    99/**
    1010 * Inject entries from a DI container using the parameter names.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1311 */
    1412class ParameterNameContainerResolver implements ParameterResolver
    1513{
    16     /**
    17      * @var ContainerInterface
    18      */
     14    /** @var ContainerInterface */
    1915    private $container;
    2016
     
    3127        array $providedParameters,
    3228        array $resolvedParameters
    33     ) {
     29    ): array {
    3430        $parameters = $reflection->getParameters();
    3531
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/Container/TypeHintContainerResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver\Container;
     
    66use Psr\Container\ContainerInterface;
    77use ReflectionFunctionAbstract;
     8use ReflectionNamedType;
    89
    910/**
    1011 * Inject entries from a DI container using the type-hints.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1312 */
    1413class TypeHintContainerResolver implements ParameterResolver
    1514{
    16     /**
    17      * @var ContainerInterface
    18      */
     15    /** @var ContainerInterface */
    1916    private $container;
    2017
     
    3128        array $providedParameters,
    3229        array $resolvedParameters
    33     ) {
     30    ): array {
    3431        $parameters = $reflection->getParameters();
    3532
     
    4037
    4138        foreach ($parameters as $index => $parameter) {
    42             $parameterClass = $parameter->getClass();
     39            $parameterType = $parameter->getType();
     40            if (! $parameterType) {
     41                // No type
     42                continue;
     43            }
     44            if (! $parameterType instanceof ReflectionNamedType) {
     45                // Union types are not supported
     46                continue;
     47            }
     48            if ($parameterType->isBuiltin()) {
     49                // Primitive types are not supported
     50                continue;
     51            }
    4352
    44             if ($parameterClass && $this->container->has($parameterClass->name)) {
    45                 $resolvedParameters[$index] = $this->container->get($parameterClass->name);
     53            $parameterClass = $parameterType->getName();
     54            if ($parameterClass === 'self') {
     55                $parameterClass = $parameter->getDeclaringClass()->getName();
     56            }
     57
     58            if ($this->container->has($parameterClass)) {
     59                $resolvedParameters[$index] = $this->container->get($parameterClass);
    4660            }
    4761        }
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/DefaultValueResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    88/**
    99 * Finds the default value for a parameter, *if it exists*.
    10  *
    11  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1210 */
    1311class DefaultValueResolver implements ParameterResolver
     
    1715        array $providedParameters,
    1816        array $resolvedParameters
    19     ) {
     17    ): array {
    2018        $parameters = $reflection->getParameters();
    2119
     
    2624
    2725        foreach ($parameters as $index => $parameter) {
    28             /** @var \ReflectionParameter $parameter */
    29             if ($parameter->isOptional()) {
     26            \assert($parameter instanceof \ReflectionParameter);
     27            if ($parameter->isDefaultValueAvailable()) {
    3028                try {
    3129                    $resolvedParameters[$index] = $parameter->getDefaultValue();
    3230                } catch (ReflectionException $e) {
    3331                    // Can't get default values from PHP internal classes and functions
     32                }
     33            } else {
     34                $parameterType = $parameter->getType();
     35                if ($parameterType && $parameterType->allowsNull()) {
     36                    $resolvedParameters[$index] = null;
    3437                }
    3538            }
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/NumericArrayResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    1414 * Parameters that are not indexed by a number (i.e. parameter position)
    1515 * will be ignored.
    16  *
    17  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1816 */
    1917class NumericArrayResolver implements ParameterResolver
     
    2321        array $providedParameters,
    2422        array $resolvedParameters
    25     ) {
     23    ): array {
    2624        // Skip parameters already resolved
    2725        if (! empty($resolvedParameters)) {
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/ParameterResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    77/**
    88 * Resolves the parameters to use to call the callable.
    9  *
    10  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    119 */
    1210interface ParameterResolver
     
    2321     * @param array $providedParameters Parameters provided by the caller.
    2422     * @param array $resolvedParameters Parameters resolved (indexed by parameter position).
    25      *
    2623     * @return array
    2724     */
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/ResolverChain.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    99 *
    1010 * Chain of responsibility pattern.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1311 */
    1412class ResolverChain implements ParameterResolver
    1513{
    16     /**
    17      * @var ParameterResolver[]
    18      */
    19     private $resolvers = array();
     14    /** @var ParameterResolver[] */
     15    private $resolvers;
    2016
    21     public function __construct(array $resolvers = array())
     17    public function __construct(array $resolvers = [])
    2218    {
    2319        $this->resolvers = $resolvers;
     
    2824        array $providedParameters,
    2925        array $resolvedParameters
    30     ) {
     26    ): array {
    3127        $reflectionParameters = $reflection->getParameters();
    3228
     
    5046    /**
    5147     * Push a parameter resolver after the ones already registered.
    52      *
    53      * @param ParameterResolver $resolver
    5448     */
    55     public function appendResolver(ParameterResolver $resolver)
     49    public function appendResolver(ParameterResolver $resolver): void
    5650    {
    5751        $this->resolvers[] = $resolver;
     
    6054    /**
    6155     * Insert a parameter resolver before the ones already registered.
    62      *
    63      * @param ParameterResolver $resolver
    6456     */
    65     public function prependResolver(ParameterResolver $resolver)
     57    public function prependResolver(ParameterResolver $resolver): void
    6658    {
    6759        array_unshift($this->resolvers, $resolver);
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/ParameterResolver/TypeHintResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
    44
    5 use Invoker\ParameterResolver\ParameterResolver;
    65use ReflectionFunctionAbstract;
     6use ReflectionNamedType;
    77
    88/**
     
    1010 *
    1111 * Tries to match type-hints with the parameters provided.
    12  *
    13  * @author Felix Becker <f.becker@outlook.com>
    1412 */
    1513class TypeHintResolver implements ParameterResolver
     
    1917        array $providedParameters,
    2018        array $resolvedParameters
    21     ) {
     19    ): array {
    2220        $parameters = $reflection->getParameters();
    2321
     
    2826
    2927        foreach ($parameters as $index => $parameter) {
    30             $parameterClass = $parameter->getClass();
     28            $parameterType = $parameter->getType();
     29            if (! $parameterType) {
     30                // No type
     31                continue;
     32            }
     33            if (! $parameterType instanceof ReflectionNamedType) {
     34                // Union types are not supported
     35                continue;
     36            }
     37            if ($parameterType->isBuiltin()) {
     38                // Primitive types are not supported
     39                continue;
     40            }
    3141
    32             if ($parameterClass && array_key_exists($parameterClass->name, $providedParameters)) {
    33                 $resolvedParameters[$index] = $providedParameters[$parameterClass->name];
     42            $parameterClass = $parameterType->getName();
     43            if ($parameterClass === 'self') {
     44                $parameterClass = $parameter->getDeclaringClass()->getName();
     45            }
     46
     47            if (array_key_exists($parameterClass, $providedParameters)) {
     48                $resolvedParameters[$index] = $providedParameters[$parameterClass];
    3449            }
    3550        }
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/invoker/src/Reflection/CallableReflection.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Reflection;
    44
     5use Closure;
    56use Invoker\Exception\NotCallableException;
     7use ReflectionException;
     8use ReflectionFunction;
     9use ReflectionFunctionAbstract;
     10use ReflectionMethod;
    611
    712/**
    8  * Create a reflection object from a callable.
     13 * Create a reflection object from a callable or a callable-like.
    914 *
    10  * @author Matthieu Napoli <matthieu@mnapoli.fr>
     15 * @internal
    1116 */
    1217class CallableReflection
    1318{
    1419    /**
    15      * @param callable $callable
    16      *
    17      * @return \ReflectionFunctionAbstract
    18      *
    19      * @throws NotCallableException
    20      *
    21      * TODO Use the `callable` type-hint once support for PHP 5.4 and up.
     20     * @param callable|array|string $callable Can be a callable or a callable-like.
     21     * @throws NotCallableException|ReflectionException
    2222     */
    23     public static function create($callable)
     23    public static function create($callable): ReflectionFunctionAbstract
    2424    {
    2525        // Closure
    26         if ($callable instanceof \Closure) {
    27             return new \ReflectionFunction($callable);
     26        if ($callable instanceof Closure) {
     27            return new ReflectionFunction($callable);
    2828        }
    2929
    3030        // Array callable
    3131        if (is_array($callable)) {
    32             list($class, $method) = $callable;
     32            [$class, $method] = $callable;
    3333
    3434            if (! method_exists($class, $method)) {
     
    3636            }
    3737
    38             return new \ReflectionMethod($class, $method);
     38            return new ReflectionMethod($class, $method);
    3939        }
    4040
    4141        // Callable object (i.e. implementing __invoke())
    4242        if (is_object($callable) && method_exists($callable, '__invoke')) {
    43             return new \ReflectionMethod($callable, '__invoke');
    44         }
    45 
    46         // Callable class (i.e. implementing __invoke())
    47         if (is_string($callable) && class_exists($callable) && method_exists($callable, '__invoke')) {
    48             return new \ReflectionMethod($callable, '__invoke');
     43            return new ReflectionMethod($callable, '__invoke');
    4944        }
    5045
    5146        // Standard function
    5247        if (is_string($callable) && function_exists($callable)) {
    53             return new \ReflectionFunction($callable);
     48            return new ReflectionFunction($callable);
    5449        }
    5550
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/php-di/change-log.md

    r2446249 r3197847  
    11# Change log
     2
     3## 6.1.0
     4
     5- [#791](https://github.com/PHP-DI/PHP-DI/issues/791) Support PHP 8.1, remove support for PHP 7.2
    26
    37## 6.0.2
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/php-di/src/Compiler/Compiler.php

    r2761526 r3197847  
    2222use function file_put_contents;
    2323use InvalidArgumentException;
    24 use Opis\Closure\SerializableClosure;
     24use Laravel\SerializableClosure\Support\ReflectionClosure;
    2525use function rename;
    2626use function sprintf;
     
    402402    private function compileClosure(\Closure $closure) : string
    403403    {
    404         $wrapper = new SerializableClosure($closure);
    405         $reflector = $wrapper->getReflector();
     404        $reflector = new ReflectionClosure($closure);
    406405
    407406        if ($reflector->getUseVariables()) {
  • simple-csv-exporter/tags/2.1.5/vendor/php-di/php-di/src/Definition/Resolver/ArrayResolver.php

    r2446249 r3197847  
    4343
    4444        // Resolve nested definitions
    45         array_walk_recursive($values, function (&$value, $key) use ($definition) {
     45        array_walk_recursive($values, function (& $value, $key) use ($definition) {
    4646            if ($value instanceof Definition) {
    4747                $value = $this->resolveDefinition($value, $definition, $key);
  • simple-csv-exporter/tags/2.1.5/vendor/psr/container/src/ContainerExceptionInterface.php

    r2761526 r3197847  
    33namespace Psr\Container;
    44
     5use Throwable;
     6
    57/**
    68 * Base interface representing a generic exception in a container.
    79 */
    8 interface ContainerExceptionInterface
     10interface ContainerExceptionInterface extends Throwable
    911{
    1012}
  • simple-csv-exporter/trunk/readme.txt

    r2761526 r3197847  
    66Tested up to:      6.0 
    77Requires PHP:      7.4 
    8 Stable tag:        2.0.1
     8Stable tag:        2.1.5
    99License:           GPLv2 or later 
    1010License URI:       https://www.gnu.org/licenses/gpl-2.0.html 
     
    3737Customize posts for export.
    3838
    39 <pre>add_action( 'simple_csv_exporter_created_data_builder_for_wp_posts_pre_get_posts',
     39<pre>add_action( 'simple_csv_exporter_data_builder_for_wp_posts_pre_get_posts',
    4040    function ( WP_Query $query ) {
    4141        $query->set( 'order', 'ASC' );
     
    4545Data filter for metadata.
    4646
    47 <pre>use HAMWORKS\WP\Simple_CSV_Exporter\Data_Builder;
    48 add_filter( 'simple_csv_exporter_created_data_builder_for_wp_posts_get_post_meta_fields',
     47<pre>add_filter( 'simple_csv_exporter_data_builder_for_wp_posts_get_post_meta_fields',
    4948    function ( array $fields ) {
    5049        foreach (
     
    6059    }
    6160);</pre>
     61Data filter for post.
     62
     63<pre>add_filter(
     64    'simple_csv_exporter_data_builder_for_wp_posts_row_data',
     65    function ( $row_data, $post ) {
     66        $row_data['permalink'] = get_permalink( $post );
     67        unset( $row_data['comment_status'] );
     68        return $row_data;
     69    },
     70    10,
     71    2
     72);</pre>
    6273
    6374== Changelog ==
     75
     76= 2.1.0 =
     77* Rename hooks.
     78* Add `simple_csv_exporter_data_builder_for_wp_posts_row_data` filter.
    6479
    6580= 2.0.1 =
  • simple-csv-exporter/trunk/simple-csv-exporter.php

    r2761526 r3197847  
    1111 * Domain Path:     /languages
    1212 * Requires PHP:    7.4
    13  * Version: 2.0.1
     13 * Version: 2.1.5
    1414 */
    1515
  • simple-csv-exporter/trunk/src/Admin_UI.php

    r2446249 r3197847  
    1313     * @var string
    1414     */
    15     private $slug;
     15    private string $slug;
    1616
    1717    /**
    1818     * @var Nonce
    1919     */
    20     private $nonce;
     20    private Nonce $nonce;
    2121
    2222    /**
    2323     * @var string
    2424     */
    25     private $post_type_var_name;
     25    private string $post_type_var_name;
    2626
    2727    /**
     
    9797        <?php
    9898    }
    99 
    10099}
  • simple-csv-exporter/trunk/src/CSV_Writer.php

    r2437085 r3197847  
    1313     * @var string
    1414     */
    15     private $file_name;
     15    private string $file_name;
    1616
    1717    /**
    1818     * @var iterable
    1919     */
    20     private $rows;
     20    private iterable $rows;
    2121
    2222    /**
     
    4545     */
    4646    public function write( iterable $data ) {
    47         // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_read_fopen
     47        // phpcs:ignore
    4848        $file_pointer = fopen( $this->file_name, 'w' );
    4949
     
    5656            fputcsv( $file_pointer, $row );
    5757        }
    58         // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_read_fclose
     58        // phpcs:ignore
    5959        fclose( $file_pointer );
    6060    }
    61 
    6261}
  • simple-csv-exporter/trunk/src/Container_Factory.php

    r2446249 r3197847  
    2828                'slug'              => 'simple_csv_exporter',
    2929                'post_type'         => function ( ContainerInterface $c ) {
    30                     return filter_input( INPUT_POST, $c->get( 'var.name' ), FILTER_SANITIZE_STRING ) ?? '';
     30                    return filter_input( INPUT_POST, $c->get( 'var.name' ), FILTER_SANITIZE_SPECIAL_CHARS ) ?? '';
    3131                },
    3232                Nonce::class        => create()->constructor( get( 'slug' ) ),
     
    4545                )->parameter( 'post_type', get( 'post_type' ) ),
    4646                Admin_UI::class     => autowire()->constructor( get( 'slug' ), get( 'var.name' ) ),
    47                 Exporter::class     => autowire()->constructor( get( 'slug' ) ),
     47                Exporter::class     => autowire()->constructor(),
    4848            )
    4949        );
  • simple-csv-exporter/trunk/src/Data_Builder.php

    r2446249 r3197847  
    1919     * @var string[]
    2020     */
    21     protected $drop_columns = array();
     21    protected array $drop_columns = array();
    2222
    2323
     
    5757     * @return Traversable
    5858     */
    59     abstract protected function rows();
     59    abstract protected function rows(): Traversable;
    6060
    6161    /**
  • simple-csv-exporter/trunk/src/Data_Builder_For_WP_Posts.php

    r2446249 r3197847  
    1818     * @var string
    1919     */
    20     private $post_type;
     20    private string $post_type;
    2121
    2222    /**
     
    2525     * @var string[]
    2626     */
    27     protected $drop_columns = array(
     27    protected array $drop_columns = array(
    2828        'post_date_gmt',
    2929        'ping_status',
     
    4646     * @var string[]
    4747     */
    48     private $meta_keys = array();
     48    private array $meta_keys = array();
    4949
    5050    /**
     
    5353     * @var WP_Taxonomy[]
    5454     */
    55     private $taxonomies;
     55    private array $taxonomies;
    5656
    5757    /**
     
    6060     * @var WP_Query
    6161     */
    62     private $query;
     62    private WP_Query $query;
    6363
    6464    /**
     
    7676    public function get_name(): string {
    7777        $post_type = get_post_type_object( $this->post_type );
     78
    7879        return $post_type->label ?? '';
    7980    }
     
    143144         * @param array $fields meta key and value.
    144145         * @param WP_Post $post post object.
    145          */
    146         return apply_filters( 'simple_csv_exporter_created_data_builder_for_wp_posts_get_post_meta_fields', $fields, $post );
     146         *
     147         * @deprecated 2.1.0
     148         */
     149        $fields = apply_filters( 'simple_csv_exporter_created_data_builder_for_wp_posts_get_post_meta_fields', $fields, $post );
     150
     151        /**
     152         * @param array $fields meta key and value.
     153         * @param WP_Post $post post object.
     154         * @since 2.1.0
     155         */
     156        return apply_filters( 'simple_csv_exporter_data_builder_for_wp_posts_get_post_meta_fields', $fields, $post );
    147157    }
    148158
     
    218228         *
    219229         * @param WP_Query $query
     230         *
     231         * @deprecated 2.1.0
    220232         */
    221233        do_action( 'simple_csv_exporter_created_data_builder_for_wp_posts_pre_get_posts', $query );
    222234
     235        /**
     236         * Fires after the query variable object is created, but before the actual query is run.
     237         *
     238         * @param WP_Query $query
     239         *
     240         * @since 2.1.0
     241         */
     242        do_action( 'simple_csv_exporter_data_builder_for_wp_posts_pre_get_posts', $query );
    223243        $query->get_posts();
    224244        $this->query = $query;
     
    239259        while ( $this->query->have_posts() ) {
    240260            $this->query->the_post();
    241             $post      = get_post();
    242             $post_data = array_merge(
     261            $post     = get_post();
     262            $row_data = array_merge(
    243263                $post->to_array(),
    244264                array(
     
    251271            );
    252272
     273            /**
     274             * Filter for row data.
     275             *
     276             * @param array $row_data row data.
     277             * @param WP_Post $post post object.
     278             *
     279             * @since 2.1.0
     280             */
     281            $row_data = apply_filters( 'simple_csv_exporter_data_builder_for_wp_posts_row_data', $row_data, $post );
     282
    253283            // Note: 'foo' => null なものを、まとめて削除.
    254284            yield array_filter(
    255                 $post_data,
     285                $row_data,
    256286                function ( $fields ) {
    257287                    return is_string( $fields ) || is_numeric( $fields );
     
    260290        }
    261291    }
    262 
    263 
    264292}
  • simple-csv-exporter/trunk/src/Exporter.php

    r2446249 r3197847  
    1010class Exporter {
    1111    /**
    12      * @var string
    13      */
    14     private $slug;
    15 
    16     /**
    1712     * @var Nonce
    1813     */
    19     private $nonce;
     14    private Nonce $nonce;
    2015
    2116    /**
    2217     * @var Data_Builder
    2318     */
    24     private $data_builder;
     19    private Data_Builder $data_builder;
    2520
    2621    /**
    2722     * Exporter
    2823     *
    29      * @param string $slug Slug for admin page.
    3024     * @param Nonce $nonce
    3125     * @param Data_Builder $data_builder
    3226     */
    33     public function __construct( string $slug, Nonce $nonce, Data_Builder $data_builder ) {
    34         $this->slug         = $slug;
     27    public function __construct( Nonce $nonce, Data_Builder $data_builder ) {
    3528        $this->nonce        = $nonce;
    3629        $this->data_builder = $data_builder;
     
    7265        header( 'Content-Transfer-Encoding: binary' );
    7366    }
    74 
    75 
    7667}
  • simple-csv-exporter/trunk/vendor/autoload.php

    r2761526 r3197847  
    44
    55if (PHP_VERSION_ID < 50600) {
    6     echo 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
    7     exit(1);
     6    if (!headers_sent()) {
     7        header('HTTP/1.1 500 Internal Server Error');
     8    }
     9    $err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
     10    if (!ini_get('display_errors')) {
     11        if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
     12            fwrite(STDERR, $err);
     13        } elseif (!headers_sent()) {
     14            echo $err;
     15        }
     16    }
     17    trigger_error(
     18        $err,
     19        E_USER_ERROR
     20    );
    821}
    922
    1023require_once __DIR__ . '/composer/autoload_real.php';
    1124
    12 return ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db::getLoader();
     25return ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8::getLoader();
  • simple-csv-exporter/trunk/vendor/composer/ClassLoader.php

    r2761526 r3197847  
    4343class ClassLoader
    4444{
    45     /** @var ?string */
     45    /** @var \Closure(string):void */
     46    private static $includeFile;
     47
     48    /** @var string|null */
    4649    private $vendorDir;
    4750
    4851    // PSR-4
    4952    /**
    50      * @var array[]
    51      * @psalm-var array<string, array<string, int>>
     53     * @var array<string, array<string, int>>
    5254     */
    5355    private $prefixLengthsPsr4 = array();
    5456    /**
    55      * @var array[]
    56      * @psalm-var array<string, array<int, string>>
     57     * @var array<string, list<string>>
    5758     */
    5859    private $prefixDirsPsr4 = array();
    5960    /**
    60      * @var array[]
    61      * @psalm-var array<string, string>
     61     * @var list<string>
    6262     */
    6363    private $fallbackDirsPsr4 = array();
     
    6565    // PSR-0
    6666    /**
    67      * @var array[]
    68      * @psalm-var array<string, array<string, string[]>>
     67     * List of PSR-0 prefixes
     68     *
     69     * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2')))
     70     *
     71     * @var array<string, array<string, list<string>>>
    6972     */
    7073    private $prefixesPsr0 = array();
    7174    /**
    72      * @var array[]
    73      * @psalm-var array<string, string>
     75     * @var list<string>
    7476     */
    7577    private $fallbackDirsPsr0 = array();
     
    7981
    8082    /**
    81      * @var string[]
    82      * @psalm-var array<string, string>
     83     * @var array<string, string>
    8384     */
    8485    private $classMap = array();
     
    8889
    8990    /**
    90      * @var bool[]
    91      * @psalm-var array<string, bool>
     91     * @var array<string, bool>
    9292     */
    9393    private $missingClasses = array();
    9494
    95     /** @var ?string */
     95    /** @var string|null */
    9696    private $apcuPrefix;
    9797
    9898    /**
    99      * @var self[]
     99     * @var array<string, self>
    100100     */
    101101    private static $registeredLoaders = array();
    102102
    103103    /**
    104      * @param ?string $vendorDir
     104     * @param string|null $vendorDir
    105105     */
    106106    public function __construct($vendorDir = null)
    107107    {
    108108        $this->vendorDir = $vendorDir;
    109     }
    110 
    111     /**
    112      * @return string[]
     109        self::initializeIncludeClosure();
     110    }
     111
     112    /**
     113     * @return array<string, list<string>>
    113114     */
    114115    public function getPrefixes()
     
    122123
    123124    /**
    124      * @return array[]
    125      * @psalm-return array<string, array<int, string>>
     125     * @return array<string, list<string>>
    126126     */
    127127    public function getPrefixesPsr4()
     
    131131
    132132    /**
    133      * @return array[]
    134      * @psalm-return array<string, string>
     133     * @return list<string>
    135134     */
    136135    public function getFallbackDirs()
     
    140139
    141140    /**
    142      * @return array[]
    143      * @psalm-return array<string, string>
     141     * @return list<string>
    144142     */
    145143    public function getFallbackDirsPsr4()
     
    149147
    150148    /**
    151      * @return string[] Array of classname => path
    152      * @psalm-return array<string, string>
     149     * @return array<string, string> Array of classname => path
    153150     */
    154151    public function getClassMap()
     
    158155
    159156    /**
    160      * @param string[] $classMap Class to filename map
    161      * @psalm-param array<string, string> $classMap
     157     * @param array<string, string> $classMap Class to filename map
    162158     *
    163159     * @return void
     
    176172     * appending or prepending to the ones previously set for this prefix.
    177173     *
    178      * @param string          $prefix  The prefix
    179      * @param string[]|string $paths   The PSR-0 root directories
    180      * @param bool            $prepend Whether to prepend the directories
     174     * @param string              $prefix  The prefix
     175     * @param list<string>|string $paths   The PSR-0 root directories
     176     * @param bool                $prepend Whether to prepend the directories
    181177     *
    182178     * @return void
     
    184180    public function add($prefix, $paths, $prepend = false)
    185181    {
     182        $paths = (array) $paths;
    186183        if (!$prefix) {
    187184            if ($prepend) {
    188185                $this->fallbackDirsPsr0 = array_merge(
    189                     (array) $paths,
     186                    $paths,
    190187                    $this->fallbackDirsPsr0
    191188                );
     
    193190                $this->fallbackDirsPsr0 = array_merge(
    194191                    $this->fallbackDirsPsr0,
    195                     (array) $paths
     192                    $paths
    196193                );
    197194            }
     
    202199        $first = $prefix[0];
    203200        if (!isset($this->prefixesPsr0[$first][$prefix])) {
    204             $this->prefixesPsr0[$first][$prefix] = (array) $paths;
     201            $this->prefixesPsr0[$first][$prefix] = $paths;
    205202
    206203            return;
     
    208205        if ($prepend) {
    209206            $this->prefixesPsr0[$first][$prefix] = array_merge(
    210                 (array) $paths,
     207                $paths,
    211208                $this->prefixesPsr0[$first][$prefix]
    212209            );
     
    214211            $this->prefixesPsr0[$first][$prefix] = array_merge(
    215212                $this->prefixesPsr0[$first][$prefix],
    216                 (array) $paths
     213                $paths
    217214            );
    218215        }
     
    223220     * appending or prepending to the ones previously set for this namespace.
    224221     *
    225      * @param string          $prefix  The prefix/namespace, with trailing '\\'
    226      * @param string[]|string $paths   The PSR-4 base directories
    227      * @param bool            $prepend Whether to prepend the directories
     222     * @param string              $prefix  The prefix/namespace, with trailing '\\'
     223     * @param list<string>|string $paths   The PSR-4 base directories
     224     * @param bool                $prepend Whether to prepend the directories
    228225     *
    229226     * @throws \InvalidArgumentException
     
    233230    public function addPsr4($prefix, $paths, $prepend = false)
    234231    {
     232        $paths = (array) $paths;
    235233        if (!$prefix) {
    236234            // Register directories for the root namespace.
    237235            if ($prepend) {
    238236                $this->fallbackDirsPsr4 = array_merge(
    239                     (array) $paths,
     237                    $paths,
    240238                    $this->fallbackDirsPsr4
    241239                );
     
    243241                $this->fallbackDirsPsr4 = array_merge(
    244242                    $this->fallbackDirsPsr4,
    245                     (array) $paths
     243                    $paths
    246244                );
    247245            }
     
    253251            }
    254252            $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
    255             $this->prefixDirsPsr4[$prefix] = (array) $paths;
     253            $this->prefixDirsPsr4[$prefix] = $paths;
    256254        } elseif ($prepend) {
    257255            // Prepend directories for an already registered namespace.
    258256            $this->prefixDirsPsr4[$prefix] = array_merge(
    259                 (array) $paths,
     257                $paths,
    260258                $this->prefixDirsPsr4[$prefix]
    261259            );
     
    264262            $this->prefixDirsPsr4[$prefix] = array_merge(
    265263                $this->prefixDirsPsr4[$prefix],
    266                 (array) $paths
     264                $paths
    267265            );
    268266        }
     
    273271     * replacing any others previously set for this prefix.
    274272     *
    275      * @param string          $prefix The prefix
    276      * @param string[]|string $paths  The PSR-0 base directories
     273     * @param string              $prefix The prefix
     274     * @param list<string>|string $paths  The PSR-0 base directories
    277275     *
    278276     * @return void
     
    291289     * replacing any others previously set for this namespace.
    292290     *
    293      * @param string          $prefix The prefix/namespace, with trailing '\\'
    294      * @param string[]|string $paths  The PSR-4 base directories
     291     * @param string              $prefix The prefix/namespace, with trailing '\\'
     292     * @param list<string>|string $paths  The PSR-4 base directories
    295293     *
    296294     * @throws \InvalidArgumentException
     
    426424    {
    427425        if ($file = $this->findFile($class)) {
    428             includeFile($file);
     426            $includeFile = self::$includeFile;
     427            $includeFile($file);
    429428
    430429            return true;
     
    477476
    478477    /**
    479      * Returns the currently registered loaders indexed by their corresponding vendor directories.
    480      *
    481      * @return self[]
     478     * Returns the currently registered loaders keyed by their corresponding vendor directories.
     479     *
     480     * @return array<string, self>
    482481     */
    483482    public static function getRegisteredLoaders()
     
    556555        return false;
    557556    }
     557
     558    /**
     559     * @return void
     560     */
     561    private static function initializeIncludeClosure()
     562    {
     563        if (self::$includeFile !== null) {
     564            return;
     565        }
     566
     567        /**
     568         * Scope isolated include.
     569         *
     570         * Prevents access to $this/self from included files.
     571         *
     572         * @param  string $file
     573         * @return void
     574         */
     575        self::$includeFile = \Closure::bind(static function($file) {
     576            include $file;
     577        }, null, null);
     578    }
    558579}
    559 
    560 /**
    561  * Scope isolated include.
    562  *
    563  * Prevents access to $this/self from included files.
    564  *
    565  * @param  string $file
    566  * @return void
    567  * @private
    568  */
    569 function includeFile($file)
    570 {
    571     include $file;
    572 }
  • simple-csv-exporter/trunk/vendor/composer/InstalledVersions.php

    r2761526 r3197847  
    9999        foreach (self::getInstalled() as $installed) {
    100100            if (isset($installed['versions'][$packageName])) {
    101                 return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
     101                return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false;
    102102            }
    103103        }
     
    120120    public static function satisfies(VersionParser $parser, $packageName, $constraint)
    121121    {
    122         $constraint = $parser->parseConstraints($constraint);
     122        $constraint = $parser->parseConstraints((string) $constraint);
    123123        $provided = $parser->parseConstraints(self::getVersionRanges($packageName));
    124124
     
    329329                    $installed[] = self::$installedByVendor[$vendorDir];
    330330                } elseif (is_file($vendorDir.'/composer/installed.php')) {
    331                     $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
     331                    /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
     332                    $required = require $vendorDir.'/composer/installed.php';
     333                    $installed[] = self::$installedByVendor[$vendorDir] = $required;
    332334                    if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
    333335                        self::$installed = $installed[count($installed) - 1];
     
    341343            // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
    342344            if (substr(__DIR__, -8, 1) !== 'C') {
    343                 self::$installed = require __DIR__ . '/installed.php';
     345                /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
     346                $required = require __DIR__ . '/installed.php';
     347                self::$installed = $required;
    344348            } else {
    345349                self::$installed = array();
    346350            }
    347351        }
    348         $installed[] = self::$installed;
     352
     353        if (self::$installed !== array()) {
     354            $installed[] = self::$installed;
     355        }
    349356
    350357        return $installed;
  • simple-csv-exporter/trunk/vendor/composer/autoload_classmap.php

    r2761526 r3197847  
    9292    'Invoker\\ParameterResolver\\TypeHintResolver' => $vendorDir . '/php-di/invoker/src/ParameterResolver/TypeHintResolver.php',
    9393    'Invoker\\Reflection\\CallableReflection' => $vendorDir . '/php-di/invoker/src/Reflection/CallableReflection.php',
    94     'Opis\\Closure\\Analyzer' => $vendorDir . '/opis/closure/src/Analyzer.php',
    95     'Opis\\Closure\\ClosureContext' => $vendorDir . '/opis/closure/src/ClosureContext.php',
    96     'Opis\\Closure\\ClosureScope' => $vendorDir . '/opis/closure/src/ClosureScope.php',
    97     'Opis\\Closure\\ClosureStream' => $vendorDir . '/opis/closure/src/ClosureStream.php',
    98     'Opis\\Closure\\ISecurityProvider' => $vendorDir . '/opis/closure/src/ISecurityProvider.php',
    99     'Opis\\Closure\\ReflectionClosure' => $vendorDir . '/opis/closure/src/ReflectionClosure.php',
    100     'Opis\\Closure\\SecurityException' => $vendorDir . '/opis/closure/src/SecurityException.php',
    101     'Opis\\Closure\\SecurityProvider' => $vendorDir . '/opis/closure/src/SecurityProvider.php',
    102     'Opis\\Closure\\SelfReference' => $vendorDir . '/opis/closure/src/SelfReference.php',
    103     'Opis\\Closure\\SerializableClosure' => $vendorDir . '/opis/closure/src/SerializableClosure.php',
     94    'Laravel\\SerializableClosure\\Contracts\\Serializable' => $vendorDir . '/laravel/serializable-closure/src/Contracts/Serializable.php',
     95    'Laravel\\SerializableClosure\\Contracts\\Signer' => $vendorDir . '/laravel/serializable-closure/src/Contracts/Signer.php',
     96    'Laravel\\SerializableClosure\\Exceptions\\InvalidSignatureException' => $vendorDir . '/laravel/serializable-closure/src/Exceptions/InvalidSignatureException.php',
     97    'Laravel\\SerializableClosure\\Exceptions\\MissingSecretKeyException' => $vendorDir . '/laravel/serializable-closure/src/Exceptions/MissingSecretKeyException.php',
     98    'Laravel\\SerializableClosure\\Exceptions\\PhpVersionNotSupportedException' => $vendorDir . '/laravel/serializable-closure/src/Exceptions/PhpVersionNotSupportedException.php',
     99    'Laravel\\SerializableClosure\\SerializableClosure' => $vendorDir . '/laravel/serializable-closure/src/SerializableClosure.php',
     100    'Laravel\\SerializableClosure\\Serializers\\Native' => $vendorDir . '/laravel/serializable-closure/src/Serializers/Native.php',
     101    'Laravel\\SerializableClosure\\Serializers\\Signed' => $vendorDir . '/laravel/serializable-closure/src/Serializers/Signed.php',
     102    'Laravel\\SerializableClosure\\Signers\\Hmac' => $vendorDir . '/laravel/serializable-closure/src/Signers/Hmac.php',
     103    'Laravel\\SerializableClosure\\Support\\ClosureScope' => $vendorDir . '/laravel/serializable-closure/src/Support/ClosureScope.php',
     104    'Laravel\\SerializableClosure\\Support\\ClosureStream' => $vendorDir . '/laravel/serializable-closure/src/Support/ClosureStream.php',
     105    'Laravel\\SerializableClosure\\Support\\ReflectionClosure' => $vendorDir . '/laravel/serializable-closure/src/Support/ReflectionClosure.php',
     106    'Laravel\\SerializableClosure\\Support\\SelfReference' => $vendorDir . '/laravel/serializable-closure/src/Support/SelfReference.php',
     107    'Laravel\\SerializableClosure\\UnsignedSerializableClosure' => $vendorDir . '/laravel/serializable-closure/src/UnsignedSerializableClosure.php',
    104108    'PhpDocReader\\AnnotationException' => $vendorDir . '/php-di/phpdoc-reader/src/PhpDocReader/AnnotationException.php',
    105109    'PhpDocReader\\PhpDocReader' => $vendorDir . '/php-di/phpdoc-reader/src/PhpDocReader/PhpDocReader.php',
  • simple-csv-exporter/trunk/vendor/composer/autoload_files.php

    r2761526 r3197847  
    77
    88return array(
    9     '538ca81a9a966a6716601ecf48f4eaef' => $vendorDir . '/opis/closure/functions.php',
    109    'b33e3d135e5d9e47d845c576147bda89' => $vendorDir . '/php-di/php-di/src/functions.php',
    1110);
  • simple-csv-exporter/trunk/vendor/composer/autoload_psr4.php

    r2761526 r3197847  
    99    'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
    1010    'PhpDocReader\\' => array($vendorDir . '/php-di/phpdoc-reader/src/PhpDocReader'),
    11     'Opis\\Closure\\' => array($vendorDir . '/opis/closure/src'),
     11    'Laravel\\SerializableClosure\\' => array($vendorDir . '/laravel/serializable-closure/src'),
    1212    'Invoker\\' => array($vendorDir . '/php-di/invoker/src'),
    1313    'HAMWORKS\\WP\\Simple_CSV_Exporter\\Tests\\' => array($baseDir . '/tests'),
  • simple-csv-exporter/trunk/vendor/composer/autoload_real.php

    r2761526 r3197847  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db
     5class ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8
    66{
    77    private static $loader;
     
    2525        require __DIR__ . '/platform_check.php';
    2626
    27         spl_autoload_register(array('ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db', 'loadClassLoader'), true, true);
     27        spl_autoload_register(array('ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8', 'loadClassLoader'), true, true);
    2828        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
    29         spl_autoload_unregister(array('ComposerAutoloaderInit2e765ad8ae0dfed5be0e9b093247e6db', 'loadClassLoader'));
     29        spl_autoload_unregister(array('ComposerAutoloaderInitee05b39afac0c66e4ee8567eb02378b8', 'loadClassLoader'));
    3030
    3131        require __DIR__ . '/autoload_static.php';
    32         call_user_func(\Composer\Autoload\ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::getInitializer($loader));
     32        call_user_func(\Composer\Autoload\ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::getInitializer($loader));
    3333
    3434        $loader->register(true);
    3535
    36         $includeFiles = \Composer\Autoload\ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$files;
    37         foreach ($includeFiles as $fileIdentifier => $file) {
    38             composerRequire2e765ad8ae0dfed5be0e9b093247e6db($fileIdentifier, $file);
     36        $filesToLoad = \Composer\Autoload\ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$files;
     37        $requireFile = \Closure::bind(static function ($fileIdentifier, $file) {
     38            if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
     39                $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
     40
     41                require $file;
     42            }
     43        }, null, null);
     44        foreach ($filesToLoad as $fileIdentifier => $file) {
     45            $requireFile($fileIdentifier, $file);
    3946        }
    4047
     
    4249    }
    4350}
    44 
    45 /**
    46  * @param string $fileIdentifier
    47  * @param string $file
    48  * @return void
    49  */
    50 function composerRequire2e765ad8ae0dfed5be0e9b093247e6db($fileIdentifier, $file)
    51 {
    52     if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
    53         $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
    54 
    55         require $file;
    56     }
    57 }
  • simple-csv-exporter/trunk/vendor/composer/autoload_static.php

    r2761526 r3197847  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db
     7class ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8
    88{
    99    public static $files = array (
    10         '538ca81a9a966a6716601ecf48f4eaef' => __DIR__ . '/..' . '/opis/closure/functions.php',
    1110        'b33e3d135e5d9e47d845c576147bda89' => __DIR__ . '/..' . '/php-di/php-di/src/functions.php',
    1211    );
     
    1817            'PhpDocReader\\' => 13,
    1918        ),
    20         'O' =>
     19        'L' =>
    2120        array (
    22             'Opis\\Closure\\' => 13,
     21            'Laravel\\SerializableClosure\\' => 28,
    2322        ),
    2423        'I' =>
     
    4645            0 => __DIR__ . '/..' . '/php-di/phpdoc-reader/src/PhpDocReader',
    4746        ),
    48         'Opis\\Closure\\' =>
     47        'Laravel\\SerializableClosure\\' =>
    4948        array (
    50             0 => __DIR__ . '/..' . '/opis/closure/src',
     49            0 => __DIR__ . '/..' . '/laravel/serializable-closure/src',
    5150        ),
    5251        'Invoker\\' =>
     
    154153        'Invoker\\ParameterResolver\\TypeHintResolver' => __DIR__ . '/..' . '/php-di/invoker/src/ParameterResolver/TypeHintResolver.php',
    155154        'Invoker\\Reflection\\CallableReflection' => __DIR__ . '/..' . '/php-di/invoker/src/Reflection/CallableReflection.php',
    156         'Opis\\Closure\\Analyzer' => __DIR__ . '/..' . '/opis/closure/src/Analyzer.php',
    157         'Opis\\Closure\\ClosureContext' => __DIR__ . '/..' . '/opis/closure/src/ClosureContext.php',
    158         'Opis\\Closure\\ClosureScope' => __DIR__ . '/..' . '/opis/closure/src/ClosureScope.php',
    159         'Opis\\Closure\\ClosureStream' => __DIR__ . '/..' . '/opis/closure/src/ClosureStream.php',
    160         'Opis\\Closure\\ISecurityProvider' => __DIR__ . '/..' . '/opis/closure/src/ISecurityProvider.php',
    161         'Opis\\Closure\\ReflectionClosure' => __DIR__ . '/..' . '/opis/closure/src/ReflectionClosure.php',
    162         'Opis\\Closure\\SecurityException' => __DIR__ . '/..' . '/opis/closure/src/SecurityException.php',
    163         'Opis\\Closure\\SecurityProvider' => __DIR__ . '/..' . '/opis/closure/src/SecurityProvider.php',
    164         'Opis\\Closure\\SelfReference' => __DIR__ . '/..' . '/opis/closure/src/SelfReference.php',
    165         'Opis\\Closure\\SerializableClosure' => __DIR__ . '/..' . '/opis/closure/src/SerializableClosure.php',
     155        'Laravel\\SerializableClosure\\Contracts\\Serializable' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Contracts/Serializable.php',
     156        'Laravel\\SerializableClosure\\Contracts\\Signer' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Contracts/Signer.php',
     157        'Laravel\\SerializableClosure\\Exceptions\\InvalidSignatureException' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Exceptions/InvalidSignatureException.php',
     158        'Laravel\\SerializableClosure\\Exceptions\\MissingSecretKeyException' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Exceptions/MissingSecretKeyException.php',
     159        'Laravel\\SerializableClosure\\Exceptions\\PhpVersionNotSupportedException' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Exceptions/PhpVersionNotSupportedException.php',
     160        'Laravel\\SerializableClosure\\SerializableClosure' => __DIR__ . '/..' . '/laravel/serializable-closure/src/SerializableClosure.php',
     161        'Laravel\\SerializableClosure\\Serializers\\Native' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Serializers/Native.php',
     162        'Laravel\\SerializableClosure\\Serializers\\Signed' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Serializers/Signed.php',
     163        'Laravel\\SerializableClosure\\Signers\\Hmac' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Signers/Hmac.php',
     164        'Laravel\\SerializableClosure\\Support\\ClosureScope' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/ClosureScope.php',
     165        'Laravel\\SerializableClosure\\Support\\ClosureStream' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/ClosureStream.php',
     166        'Laravel\\SerializableClosure\\Support\\ReflectionClosure' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/ReflectionClosure.php',
     167        'Laravel\\SerializableClosure\\Support\\SelfReference' => __DIR__ . '/..' . '/laravel/serializable-closure/src/Support/SelfReference.php',
     168        'Laravel\\SerializableClosure\\UnsignedSerializableClosure' => __DIR__ . '/..' . '/laravel/serializable-closure/src/UnsignedSerializableClosure.php',
    166169        'PhpDocReader\\AnnotationException' => __DIR__ . '/..' . '/php-di/phpdoc-reader/src/PhpDocReader/AnnotationException.php',
    167170        'PhpDocReader\\PhpDocReader' => __DIR__ . '/..' . '/php-di/phpdoc-reader/src/PhpDocReader/PhpDocReader.php',
     
    176179    {
    177180        return \Closure::bind(function () use ($loader) {
    178             $loader->prefixLengthsPsr4 = ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$prefixLengthsPsr4;
    179             $loader->prefixDirsPsr4 = ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$prefixDirsPsr4;
    180             $loader->classMap = ComposerStaticInit2e765ad8ae0dfed5be0e9b093247e6db::$classMap;
     181            $loader->prefixLengthsPsr4 = ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$prefixLengthsPsr4;
     182            $loader->prefixDirsPsr4 = ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$prefixDirsPsr4;
     183            $loader->classMap = ComposerStaticInitee05b39afac0c66e4ee8567eb02378b8::$classMap;
    181184
    182185        }, null, ClassLoader::class);
  • simple-csv-exporter/trunk/vendor/composer/installed.json

    r2761526 r3197847  
    22    "packages": [
    33        {
    4             "name": "opis/closure",
    5             "version": "3.6.3",
    6             "version_normalized": "3.6.3.0",
    7             "source": {
    8                 "type": "git",
    9                 "url": "https://github.com/opis/closure.git",
    10                 "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad"
    11             },
    12             "dist": {
    13                 "type": "zip",
    14                 "url": "https://api.github.com/repos/opis/closure/zipball/3d81e4309d2a927abbe66df935f4bb60082805ad",
    15                 "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad",
    16                 "shasum": ""
    17             },
    18             "require": {
    19                 "php": "^5.4 || ^7.0 || ^8.0"
     4            "name": "laravel/serializable-closure",
     5            "version": "v1.3.7",
     6            "version_normalized": "1.3.7.0",
     7            "source": {
     8                "type": "git",
     9                "url": "https://github.com/laravel/serializable-closure.git",
     10                "reference": "4f48ade902b94323ca3be7646db16209ec76be3d"
     11            },
     12            "dist": {
     13                "type": "zip",
     14                "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/4f48ade902b94323ca3be7646db16209ec76be3d",
     15                "reference": "4f48ade902b94323ca3be7646db16209ec76be3d",
     16                "shasum": ""
     17            },
     18            "require": {
     19                "php": "^7.3|^8.0"
    2020            },
    2121            "require-dev": {
    22                 "jeremeamia/superclosure": "^2.0",
    23                 "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
    24             },
    25             "time": "2022-01-27T09:35:39+00:00",
     22                "illuminate/support": "^8.0|^9.0|^10.0|^11.0",
     23                "nesbot/carbon": "^2.61|^3.0",
     24                "pestphp/pest": "^1.21.3",
     25                "phpstan/phpstan": "^1.8.2",
     26                "symfony/var-dumper": "^5.4.11|^6.2.0|^7.0.0"
     27            },
     28            "time": "2024-11-14T18:34:49+00:00",
    2629            "type": "library",
    2730            "extra": {
    2831                "branch-alias": {
    29                     "dev-master": "3.6.x-dev"
    30                 }
    31             },
    32             "installation-source": "dist",
    33             "autoload": {
    34                 "files": [
    35                     "functions.php"
    36                 ],
    37                 "psr-4": {
    38                     "Opis\\Closure\\": "src/"
     32                    "dev-master": "1.x-dev"
     33                }
     34            },
     35            "installation-source": "dist",
     36            "autoload": {
     37                "psr-4": {
     38                    "Laravel\\SerializableClosure\\": "src/"
    3939                }
    4040            },
     
    4545            "authors": [
    4646                {
    47                     "name": "Marius Sarca",
    48                     "email": "marius.sarca@gmail.com"
     47                    "name": "Taylor Otwell",
     48                    "email": "taylor@laravel.com"
    4949                },
    5050                {
    51                     "name": "Sorin Sarca",
    52                     "email": "sarca_sorin@hotmail.com"
    53                 }
    54             ],
    55             "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.",
    56             "homepage": "https://opis.io/closure",
    57             "keywords": [
    58                 "anonymous functions",
     51                    "name": "Nuno Maduro",
     52                    "email": "nuno@laravel.com"
     53                }
     54            ],
     55            "description": "Laravel Serializable Closure provides an easy and secure way to serialize closures in PHP.",
     56            "keywords": [
    5957                "closure",
    60                 "function",
    61                 "serializable",
    62                 "serialization",
    63                 "serialize"
    64             ],
    65             "support": {
    66                 "issues": "https://github.com/opis/closure/issues",
    67                 "source": "https://github.com/opis/closure/tree/3.6.3"
    68             },
    69             "install-path": "../opis/closure"
     58                "laravel",
     59                "serializable"
     60            ],
     61            "support": {
     62                "issues": "https://github.com/laravel/serializable-closure/issues",
     63                "source": "https://github.com/laravel/serializable-closure"
     64            },
     65            "install-path": "../laravel/serializable-closure"
    7066        },
    7167        {
    7268            "name": "php-di/invoker",
    73             "version": "2.0.0",
    74             "version_normalized": "2.0.0.0",
     69            "version": "2.3.4",
     70            "version_normalized": "2.3.4.0",
    7571            "source": {
    7672                "type": "git",
    7773                "url": "https://github.com/PHP-DI/Invoker.git",
    78                 "reference": "540c27c86f663e20fe39a24cd72fa76cdb21d41a"
    79             },
    80             "dist": {
    81                 "type": "zip",
    82                 "url": "https://api.github.com/repos/PHP-DI/Invoker/zipball/540c27c86f663e20fe39a24cd72fa76cdb21d41a",
    83                 "reference": "540c27c86f663e20fe39a24cd72fa76cdb21d41a",
    84                 "shasum": ""
    85             },
    86             "require": {
    87                 "psr/container": "~1.0"
     74                "reference": "33234b32dafa8eb69202f950a1fc92055ed76a86"
     75            },
     76            "dist": {
     77                "type": "zip",
     78                "url": "https://api.github.com/repos/PHP-DI/Invoker/zipball/33234b32dafa8eb69202f950a1fc92055ed76a86",
     79                "reference": "33234b32dafa8eb69202f950a1fc92055ed76a86",
     80                "shasum": ""
     81            },
     82            "require": {
     83                "php": ">=7.3",
     84                "psr/container": "^1.0|^2.0"
    8885            },
    8986            "require-dev": {
    9087                "athletic/athletic": "~0.1.8",
    91                 "phpunit/phpunit": "~4.5"
    92             },
    93             "time": "2017-03-20T19:28:22+00:00",
     88                "mnapoli/hard-mode": "~0.3.0",
     89                "phpunit/phpunit": "^9.0"
     90            },
     91            "time": "2023-09-08T09:24:21+00:00",
    9492            "type": "library",
    9593            "installation-source": "dist",
     
    115113            "support": {
    116114                "issues": "https://github.com/PHP-DI/Invoker/issues",
    117                 "source": "https://github.com/PHP-DI/Invoker/tree/master"
    118             },
     115                "source": "https://github.com/PHP-DI/Invoker/tree/2.3.4"
     116            },
     117            "funding": [
     118                {
     119                    "url": "https://github.com/mnapoli",
     120                    "type": "github"
     121                }
     122            ],
    119123            "install-path": "../php-di/invoker"
    120124        },
    121125        {
    122126            "name": "php-di/php-di",
    123             "version": "6.3.5",
    124             "version_normalized": "6.3.5.0",
     127            "version": "6.4.0",
     128            "version_normalized": "6.4.0.0",
    125129            "source": {
    126130                "type": "git",
    127131                "url": "https://github.com/PHP-DI/PHP-DI.git",
    128                 "reference": "b8126d066ce144765300ee0ab040c1ed6c9ef588"
    129             },
    130             "dist": {
    131                 "type": "zip",
    132                 "url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/b8126d066ce144765300ee0ab040c1ed6c9ef588",
    133                 "reference": "b8126d066ce144765300ee0ab040c1ed6c9ef588",
    134                 "shasum": ""
    135             },
    136             "require": {
    137                 "opis/closure": "^3.5.5",
    138                 "php": ">=7.2.0",
     132                "reference": "ae0f1b3b03d8b29dff81747063cbfd6276246cc4"
     133            },
     134            "dist": {
     135                "type": "zip",
     136                "url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/ae0f1b3b03d8b29dff81747063cbfd6276246cc4",
     137                "reference": "ae0f1b3b03d8b29dff81747063cbfd6276246cc4",
     138                "shasum": ""
     139            },
     140            "require": {
     141                "laravel/serializable-closure": "^1.0",
     142                "php": ">=7.4.0",
    139143                "php-di/invoker": "^2.0",
    140144                "php-di/phpdoc-reader": "^2.0.1",
     
    145149            },
    146150            "require-dev": {
    147                 "doctrine/annotations": "~1.2",
     151                "doctrine/annotations": "~1.10",
    148152                "friendsofphp/php-cs-fixer": "^2.4",
    149153                "mnapoli/phpunit-easymock": "^1.2",
    150                 "ocramius/proxy-manager": "^2.0.2",
     154                "ocramius/proxy-manager": "^2.11.2",
    151155                "phpstan/phpstan": "^0.12",
    152                 "phpunit/phpunit": "^8.5|^9.0"
     156                "phpunit/phpunit": "^9.5"
    153157            },
    154158            "suggest": {
     
    156160                "ocramius/proxy-manager": "Install it if you want to use lazy injection (version ~2.0)"
    157161            },
    158             "time": "2021-09-02T09:49:58+00:00",
     162            "time": "2022-04-09T16:46:38+00:00",
    159163            "type": "library",
    160164            "installation-source": "dist",
     
    184188            "support": {
    185189                "issues": "https://github.com/PHP-DI/PHP-DI/issues",
    186                 "source": "https://github.com/PHP-DI/PHP-DI/tree/6.3.5"
     190                "source": "https://github.com/PHP-DI/PHP-DI/tree/6.4.0"
    187191            },
    188192            "funding": [
     
    245249        {
    246250            "name": "psr/container",
    247             "version": "1.1.1",
    248             "version_normalized": "1.1.1.0",
     251            "version": "1.1.2",
     252            "version_normalized": "1.1.2.0",
    249253            "source": {
    250254                "type": "git",
    251255                "url": "https://github.com/php-fig/container.git",
    252                 "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf"
    253             },
    254             "dist": {
    255                 "type": "zip",
    256                 "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf",
    257                 "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf",
    258                 "shasum": ""
    259             },
    260             "require": {
    261                 "php": ">=7.2.0"
    262             },
    263             "time": "2021-03-05T17:36:06+00:00",
     256                "reference": "513e0666f7216c7459170d56df27dfcefe1689ea"
     257            },
     258            "dist": {
     259                "type": "zip",
     260                "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea",
     261                "reference": "513e0666f7216c7459170d56df27dfcefe1689ea",
     262                "shasum": ""
     263            },
     264            "require": {
     265                "php": ">=7.4.0"
     266            },
     267            "time": "2021-11-05T16:50:12+00:00",
    264268            "type": "library",
    265269            "installation-source": "dist",
     
    290294            "support": {
    291295                "issues": "https://github.com/php-fig/container/issues",
    292                 "source": "https://github.com/php-fig/container/tree/1.1.1"
     296                "source": "https://github.com/php-fig/container/tree/1.1.2"
    293297            },
    294298            "install-path": "../psr/container"
  • simple-csv-exporter/trunk/vendor/composer/installed.php

    r2761526 r3197847  
    22    'root' => array(
    33        'name' => 'hamworks/simple-csv-exporter',
    4         'pretty_version' => '2.0.1',
    5         'version' => '2.0.1.0',
    6         'reference' => '1d0d4fca93369395531eb749924260d960ae3113',
     4        'pretty_version' => '2.1.5',
     5        'version' => '2.1.5.0',
     6        'reference' => '6e39eafa5c2689fce1c48e2d83aeb3669acde9d0',
    77        'type' => 'library',
    88        'install_path' => __DIR__ . '/../../',
     
    1212    'versions' => array(
    1313        'hamworks/simple-csv-exporter' => array(
    14             'pretty_version' => '2.0.1',
    15             'version' => '2.0.1.0',
    16             'reference' => '1d0d4fca93369395531eb749924260d960ae3113',
     14            'pretty_version' => '2.1.5',
     15            'version' => '2.1.5.0',
     16            'reference' => '6e39eafa5c2689fce1c48e2d83aeb3669acde9d0',
    1717            'type' => 'library',
    1818            'install_path' => __DIR__ . '/../../',
     
    2020            'dev_requirement' => false,
    2121        ),
    22         'opis/closure' => array(
    23             'pretty_version' => '3.6.3',
    24             'version' => '3.6.3.0',
    25             'reference' => '3d81e4309d2a927abbe66df935f4bb60082805ad',
     22        'laravel/serializable-closure' => array(
     23            'pretty_version' => 'v1.3.7',
     24            'version' => '1.3.7.0',
     25            'reference' => '4f48ade902b94323ca3be7646db16209ec76be3d',
    2626            'type' => 'library',
    27             'install_path' => __DIR__ . '/../opis/closure',
     27            'install_path' => __DIR__ . '/../laravel/serializable-closure',
    2828            'aliases' => array(),
    2929            'dev_requirement' => false,
    3030        ),
    3131        'php-di/invoker' => array(
    32             'pretty_version' => '2.0.0',
    33             'version' => '2.0.0.0',
    34             'reference' => '540c27c86f663e20fe39a24cd72fa76cdb21d41a',
     32            'pretty_version' => '2.3.4',
     33            'version' => '2.3.4.0',
     34            'reference' => '33234b32dafa8eb69202f950a1fc92055ed76a86',
    3535            'type' => 'library',
    3636            'install_path' => __DIR__ . '/../php-di/invoker',
     
    3939        ),
    4040        'php-di/php-di' => array(
    41             'pretty_version' => '6.3.5',
    42             'version' => '6.3.5.0',
    43             'reference' => 'b8126d066ce144765300ee0ab040c1ed6c9ef588',
     41            'pretty_version' => '6.4.0',
     42            'version' => '6.4.0.0',
     43            'reference' => 'ae0f1b3b03d8b29dff81747063cbfd6276246cc4',
    4444            'type' => 'library',
    4545            'install_path' => __DIR__ . '/../php-di/php-di',
     
    5757        ),
    5858        'psr/container' => array(
    59             'pretty_version' => '1.1.1',
    60             'version' => '1.1.1.0',
    61             'reference' => '8622567409010282b7aeebe4bb841fe98b58dcaf',
     59            'pretty_version' => '1.1.2',
     60            'version' => '1.1.2.0',
     61            'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea',
    6262            'type' => 'library',
    6363            'install_path' => __DIR__ . '/../psr/container',
  • simple-csv-exporter/trunk/vendor/composer/platform_check.php

    r2761526 r3197847  
    55$issues = array();
    66
    7 if (!(PHP_VERSION_ID >= 70400)) {
    8     $issues[] = 'Your Composer dependencies require a PHP version ">= 7.4.0". You are running ' . PHP_VERSION . '.';
     7if (!(PHP_VERSION_ID >= 80100)) {
     8    $issues[] = 'Your Composer dependencies require a PHP version ">= 8.1.0". You are running ' . PHP_VERSION . '.';
    99}
    1010
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/CallableResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker;
    44
     5use Closure;
    56use Invoker\Exception\NotCallableException;
    67use Psr\Container\ContainerInterface;
    78use Psr\Container\NotFoundExceptionInterface;
     9use ReflectionException;
     10use ReflectionMethod;
    811
    912/**
    1013 * Resolves a callable from a container.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1314 */
    1415class CallableResolver
    1516{
    16     /**
    17      * @var ContainerInterface
    18      */
     17    /** @var ContainerInterface */
    1918    private $container;
    2019
     
    2827     *
    2928     * @param callable|string|array $callable
    30      *
    3129     * @return callable Real PHP callable.
    32      *
    33      * @throws NotCallableException
     30     * @throws NotCallableException|ReflectionException
    3431     */
    35     public function resolve($callable)
     32    public function resolve($callable): callable
    3633    {
    3734        if (is_string($callable) && strpos($callable, '::') !== false) {
     
    5047    /**
    5148     * @param callable|string|array $callable
    52      * @return callable
    53      * @throws NotCallableException
     49     * @return callable|mixed
     50     * @throws NotCallableException|ReflectionException
    5451     */
    5552    private function resolveFromContainer($callable)
    5653    {
    5754        // Shortcut for a very common use case
    58         if ($callable instanceof \Closure) {
     55        if ($callable instanceof Closure) {
    5956            return $callable;
    6057        }
    6158
    62         $isStaticCallToNonStaticMethod = false;
    63 
    6459        // If it's already a callable there is nothing to do
    6560        if (is_callable($callable)) {
    66             $isStaticCallToNonStaticMethod = $this->isStaticCallToNonStaticMethod($callable);
    67             if (! $isStaticCallToNonStaticMethod) {
     61            // TODO with PHP 8 that should not be necessary to check this anymore
     62            if (! $this->isStaticCallToNonStaticMethod($callable)) {
    6863                return $callable;
    6964            }
     
    9388                    throw $e;
    9489                }
    95                 if ($isStaticCallToNonStaticMethod) {
    96                     throw new NotCallableException(sprintf(
    97                         'Cannot call %s::%s() because %s() is not a static method and "%s" is not a container entry',
    98                         $callable[0],
    99                         $callable[1],
    100                         $callable[1],
    101                         $callable[0]
    102                     ));
    103                 }
    10490                throw new NotCallableException(sprintf(
    105                     'Cannot call %s on %s because it is not a class nor a valid container entry',
     91                    'Cannot call %s() on %s because it is not a class nor a valid container entry',
    10692                    $callable[1],
    10793                    $callable[0]
     
    118104     *
    119105     * @param mixed $callable
    120      * @return bool
     106     * @throws ReflectionException
    121107     */
    122     private function isStaticCallToNonStaticMethod($callable)
     108    private function isStaticCallToNonStaticMethod($callable): bool
    123109    {
    124110        if (is_array($callable) && is_string($callable[0])) {
    125             list($class, $method) = $callable;
    126             $reflection = new \ReflectionMethod($class, $method);
     111            [$class, $method] = $callable;
     112
     113            if (! method_exists($class, $method)) {
     114                return false;
     115            }
     116
     117            $reflection = new ReflectionMethod($class, $method);
    127118
    128119            return ! $reflection->isStatic();
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/Exception/InvocationException.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Exception;
     
    55/**
    66 * Impossible to invoke the callable.
    7  *
    8  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    97 */
    108class InvocationException extends \Exception
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/Exception/NotCallableException.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Exception;
     
    55/**
    66 * The given callable is not actually callable.
    7  *
    8  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    97 */
    108class NotCallableException extends InvocationException
    119{
    1210    /**
    13      * @param string $value
    14      * @param bool $containerEntry
    15      * @return self
     11     * @param mixed $value
    1612     */
    17     public static function fromInvalidCallable($value, $containerEntry = false)
     13    public static function fromInvalidCallable($value, bool $containerEntry = false): self
    1814    {
    1915        if (is_object($value)) {
    2016            $message = sprintf('Instance of %s is not a callable', get_class($value));
    21         } elseif (is_array($value) && isset($value[0]) && isset($value[1])) {
     17        } elseif (is_array($value) && isset($value[0], $value[1])) {
    2218            $class = is_object($value[0]) ? get_class($value[0]) : $value[0];
    23             $extra = method_exists($class, '__call') ? ' A __call() method exists but magic methods are not supported.' : '';
     19
     20            $extra = method_exists($class, '__call') || method_exists($class, '__callStatic')
     21                ? ' A __call() or __callStatic() method exists but magic methods are not supported.'
     22                : '';
     23
    2424            $message = sprintf('%s::%s() is not a callable.%s', $class, $value[1], $extra);
     25        } elseif ($containerEntry) {
     26            $message = var_export($value, true) . ' is neither a callable nor a valid container entry';
    2527        } else {
    26             if ($containerEntry) {
    27                 $message = var_export($value, true) . ' is neither a callable nor a valid container entry';
    28             } else {
    29                 $message = var_export($value, true) . ' is not a callable';
    30             }
     28            $message = var_export($value, true) . ' is not a callable';
    3129        }
    3230
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/Exception/NotEnoughParametersException.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Exception;
     
    55/**
    66 * Not enough parameters could be resolved to invoke the callable.
    7  *
    8  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    97 */
    108class NotEnoughParametersException extends InvocationException
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/Invoker.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker;
     
    1212use Invoker\Reflection\CallableReflection;
    1313use Psr\Container\ContainerInterface;
     14use ReflectionParameter;
    1415
    1516/**
    1617 * Invoke a callable.
    17  *
    18  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1918 */
    2019class Invoker implements InvokerInterface
    2120{
    22     /**
    23      * @var CallableResolver|null
    24      */
     21    /** @var CallableResolver|null */
    2522    private $callableResolver;
    2623
    27     /**
    28      * @var ParameterResolver
    29      */
     24    /** @var ParameterResolver */
    3025    private $parameterResolver;
    3126
    32     /**
    33      * @var ContainerInterface|null
    34      */
     27    /** @var ContainerInterface|null */
    3528    private $container;
    3629
    37     public function __construct(ParameterResolver $parameterResolver = null, ContainerInterface $container = null)
     30    public function __construct(?ParameterResolver $parameterResolver = null, ?ContainerInterface $container = null)
    3831    {
    3932        $this->parameterResolver = $parameterResolver ?: $this->createParameterResolver();
     
    4841     * {@inheritdoc}
    4942     */
    50     public function call($callable, array $parameters = array())
     43    public function call($callable, array $parameters = [])
    5144    {
    5245        if ($this->callableResolver) {
     
    6356        $callableReflection = CallableReflection::create($callable);
    6457
    65         $args = $this->parameterResolver->getParameters($callableReflection, $parameters, array());
     58        $args = $this->parameterResolver->getParameters($callableReflection, $parameters, []);
    6659
    6760        // Sort by array key because call_user_func_array ignores numeric keys
     
    7063        // Check all parameters are resolved
    7164        $diff = array_diff_key($callableReflection->getParameters(), $args);
    72         if (! empty($diff)) {
    73             /** @var \ReflectionParameter $parameter */
    74             $parameter = reset($diff);
     65        $parameter = reset($diff);
     66        if ($parameter && \assert($parameter instanceof ReflectionParameter) && ! $parameter->isVariadic()) {
    7567            throw new NotEnoughParametersException(sprintf(
    7668                'Unable to invoke the callable because no value was given for parameter %d ($%s)',
     
    8577    /**
    8678     * Create the default parameter resolver.
    87      *
    88      * @return ParameterResolver
    8979     */
    90     private function createParameterResolver()
     80    private function createParameterResolver(): ParameterResolver
    9181    {
    92         return new ResolverChain(array(
     82        return new ResolverChain([
    9383            new NumericArrayResolver,
    9484            new AssociativeArrayResolver,
    9585            new DefaultValueResolver,
    96         ));
     86        ]);
    9787    }
    9888
     
    10090     * @return ParameterResolver By default it's a ResolverChain
    10191     */
    102     public function getParameterResolver()
     92    public function getParameterResolver(): ParameterResolver
    10393    {
    10494        return $this->parameterResolver;
    10595    }
    10696
    107     /**
    108      * @return ContainerInterface|null
    109      */
    110     public function getContainer()
     97    public function getContainer(): ?ContainerInterface
    11198    {
    11299        return $this->container;
     
    116103     * @return CallableResolver|null Returns null if no container was given in the constructor.
    117104     */
    118     public function getCallableResolver()
     105    public function getCallableResolver(): ?CallableResolver
    119106    {
    120107        return $this->callableResolver;
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/InvokerInterface.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker;
     
    99/**
    1010 * Invoke a callable.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1311 */
    1412interface InvokerInterface
     
    1715     * Call the given function using the given parameters.
    1816     *
    19      * @param callable $callable   Function to call.
    20      * @param array    $parameters Parameters to use.
    21      *
     17     * @param callable|array|string $callable Function to call.
     18     * @param array $parameters Parameters to use.
    2219     * @return mixed Result of the function.
    23      *
    2420     * @throws InvocationException Base exception class for all the sub-exceptions below.
    2521     * @throws NotCallableException
    2622     * @throws NotEnoughParametersException
    2723     */
    28     public function call($callable, array $parameters = array());
     24    public function call($callable, array $parameters = []);
    2925}
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/AssociativeArrayResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    1212 *
    1313 * Parameters that are not indexed by a string are ignored.
    14  *
    15  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1614 */
    1715class AssociativeArrayResolver implements ParameterResolver
     
    2119        array $providedParameters,
    2220        array $resolvedParameters
    23     ) {
     21    ): array {
    2422        $parameters = $reflection->getParameters();
    2523
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/Container/ParameterNameContainerResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver\Container;
     
    99/**
    1010 * Inject entries from a DI container using the parameter names.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1311 */
    1412class ParameterNameContainerResolver implements ParameterResolver
    1513{
    16     /**
    17      * @var ContainerInterface
    18      */
     14    /** @var ContainerInterface */
    1915    private $container;
    2016
     
    3127        array $providedParameters,
    3228        array $resolvedParameters
    33     ) {
     29    ): array {
    3430        $parameters = $reflection->getParameters();
    3531
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/Container/TypeHintContainerResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver\Container;
     
    66use Psr\Container\ContainerInterface;
    77use ReflectionFunctionAbstract;
     8use ReflectionNamedType;
    89
    910/**
    1011 * Inject entries from a DI container using the type-hints.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1312 */
    1413class TypeHintContainerResolver implements ParameterResolver
    1514{
    16     /**
    17      * @var ContainerInterface
    18      */
     15    /** @var ContainerInterface */
    1916    private $container;
    2017
     
    3128        array $providedParameters,
    3229        array $resolvedParameters
    33     ) {
     30    ): array {
    3431        $parameters = $reflection->getParameters();
    3532
     
    4037
    4138        foreach ($parameters as $index => $parameter) {
    42             $parameterClass = $parameter->getClass();
     39            $parameterType = $parameter->getType();
     40            if (! $parameterType) {
     41                // No type
     42                continue;
     43            }
     44            if (! $parameterType instanceof ReflectionNamedType) {
     45                // Union types are not supported
     46                continue;
     47            }
     48            if ($parameterType->isBuiltin()) {
     49                // Primitive types are not supported
     50                continue;
     51            }
    4352
    44             if ($parameterClass && $this->container->has($parameterClass->name)) {
    45                 $resolvedParameters[$index] = $this->container->get($parameterClass->name);
     53            $parameterClass = $parameterType->getName();
     54            if ($parameterClass === 'self') {
     55                $parameterClass = $parameter->getDeclaringClass()->getName();
     56            }
     57
     58            if ($this->container->has($parameterClass)) {
     59                $resolvedParameters[$index] = $this->container->get($parameterClass);
    4660            }
    4761        }
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/DefaultValueResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    88/**
    99 * Finds the default value for a parameter, *if it exists*.
    10  *
    11  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1210 */
    1311class DefaultValueResolver implements ParameterResolver
     
    1715        array $providedParameters,
    1816        array $resolvedParameters
    19     ) {
     17    ): array {
    2018        $parameters = $reflection->getParameters();
    2119
     
    2624
    2725        foreach ($parameters as $index => $parameter) {
    28             /** @var \ReflectionParameter $parameter */
    29             if ($parameter->isOptional()) {
     26            \assert($parameter instanceof \ReflectionParameter);
     27            if ($parameter->isDefaultValueAvailable()) {
    3028                try {
    3129                    $resolvedParameters[$index] = $parameter->getDefaultValue();
    3230                } catch (ReflectionException $e) {
    3331                    // Can't get default values from PHP internal classes and functions
     32                }
     33            } else {
     34                $parameterType = $parameter->getType();
     35                if ($parameterType && $parameterType->allowsNull()) {
     36                    $resolvedParameters[$index] = null;
    3437                }
    3538            }
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/NumericArrayResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    1414 * Parameters that are not indexed by a number (i.e. parameter position)
    1515 * will be ignored.
    16  *
    17  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1816 */
    1917class NumericArrayResolver implements ParameterResolver
     
    2321        array $providedParameters,
    2422        array $resolvedParameters
    25     ) {
     23    ): array {
    2624        // Skip parameters already resolved
    2725        if (! empty($resolvedParameters)) {
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/ParameterResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    77/**
    88 * Resolves the parameters to use to call the callable.
    9  *
    10  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    119 */
    1210interface ParameterResolver
     
    2321     * @param array $providedParameters Parameters provided by the caller.
    2422     * @param array $resolvedParameters Parameters resolved (indexed by parameter position).
    25      *
    2623     * @return array
    2724     */
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/ResolverChain.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
     
    99 *
    1010 * Chain of responsibility pattern.
    11  *
    12  * @author Matthieu Napoli <matthieu@mnapoli.fr>
    1311 */
    1412class ResolverChain implements ParameterResolver
    1513{
    16     /**
    17      * @var ParameterResolver[]
    18      */
    19     private $resolvers = array();
     14    /** @var ParameterResolver[] */
     15    private $resolvers;
    2016
    21     public function __construct(array $resolvers = array())
     17    public function __construct(array $resolvers = [])
    2218    {
    2319        $this->resolvers = $resolvers;
     
    2824        array $providedParameters,
    2925        array $resolvedParameters
    30     ) {
     26    ): array {
    3127        $reflectionParameters = $reflection->getParameters();
    3228
     
    5046    /**
    5147     * Push a parameter resolver after the ones already registered.
    52      *
    53      * @param ParameterResolver $resolver
    5448     */
    55     public function appendResolver(ParameterResolver $resolver)
     49    public function appendResolver(ParameterResolver $resolver): void
    5650    {
    5751        $this->resolvers[] = $resolver;
     
    6054    /**
    6155     * Insert a parameter resolver before the ones already registered.
    62      *
    63      * @param ParameterResolver $resolver
    6456     */
    65     public function prependResolver(ParameterResolver $resolver)
     57    public function prependResolver(ParameterResolver $resolver): void
    6658    {
    6759        array_unshift($this->resolvers, $resolver);
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/ParameterResolver/TypeHintResolver.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\ParameterResolver;
    44
    5 use Invoker\ParameterResolver\ParameterResolver;
    65use ReflectionFunctionAbstract;
     6use ReflectionNamedType;
    77
    88/**
     
    1010 *
    1111 * Tries to match type-hints with the parameters provided.
    12  *
    13  * @author Felix Becker <f.becker@outlook.com>
    1412 */
    1513class TypeHintResolver implements ParameterResolver
     
    1917        array $providedParameters,
    2018        array $resolvedParameters
    21     ) {
     19    ): array {
    2220        $parameters = $reflection->getParameters();
    2321
     
    2826
    2927        foreach ($parameters as $index => $parameter) {
    30             $parameterClass = $parameter->getClass();
     28            $parameterType = $parameter->getType();
     29            if (! $parameterType) {
     30                // No type
     31                continue;
     32            }
     33            if (! $parameterType instanceof ReflectionNamedType) {
     34                // Union types are not supported
     35                continue;
     36            }
     37            if ($parameterType->isBuiltin()) {
     38                // Primitive types are not supported
     39                continue;
     40            }
    3141
    32             if ($parameterClass && array_key_exists($parameterClass->name, $providedParameters)) {
    33                 $resolvedParameters[$index] = $providedParameters[$parameterClass->name];
     42            $parameterClass = $parameterType->getName();
     43            if ($parameterClass === 'self') {
     44                $parameterClass = $parameter->getDeclaringClass()->getName();
     45            }
     46
     47            if (array_key_exists($parameterClass, $providedParameters)) {
     48                $resolvedParameters[$index] = $providedParameters[$parameterClass];
    3449            }
    3550        }
  • simple-csv-exporter/trunk/vendor/php-di/invoker/src/Reflection/CallableReflection.php

    r2446249 r3197847  
    1 <?php
     1<?php declare(strict_types=1);
    22
    33namespace Invoker\Reflection;
    44
     5use Closure;
    56use Invoker\Exception\NotCallableException;
     7use ReflectionException;
     8use ReflectionFunction;
     9use ReflectionFunctionAbstract;
     10use ReflectionMethod;
    611
    712/**
    8  * Create a reflection object from a callable.
     13 * Create a reflection object from a callable or a callable-like.
    914 *
    10  * @author Matthieu Napoli <matthieu@mnapoli.fr>
     15 * @internal
    1116 */
    1217class CallableReflection
    1318{
    1419    /**
    15      * @param callable $callable
    16      *
    17      * @return \ReflectionFunctionAbstract
    18      *
    19      * @throws NotCallableException
    20      *
    21      * TODO Use the `callable` type-hint once support for PHP 5.4 and up.
     20     * @param callable|array|string $callable Can be a callable or a callable-like.
     21     * @throws NotCallableException|ReflectionException
    2222     */
    23     public static function create($callable)
     23    public static function create($callable): ReflectionFunctionAbstract
    2424    {
    2525        // Closure
    26         if ($callable instanceof \Closure) {
    27             return new \ReflectionFunction($callable);
     26        if ($callable instanceof Closure) {
     27            return new ReflectionFunction($callable);
    2828        }
    2929
    3030        // Array callable
    3131        if (is_array($callable)) {
    32             list($class, $method) = $callable;
     32            [$class, $method] = $callable;
    3333
    3434            if (! method_exists($class, $method)) {
     
    3636            }
    3737
    38             return new \ReflectionMethod($class, $method);
     38            return new ReflectionMethod($class, $method);
    3939        }
    4040
    4141        // Callable object (i.e. implementing __invoke())
    4242        if (is_object($callable) && method_exists($callable, '__invoke')) {
    43             return new \ReflectionMethod($callable, '__invoke');
    44         }
    45 
    46         // Callable class (i.e. implementing __invoke())
    47         if (is_string($callable) && class_exists($callable) && method_exists($callable, '__invoke')) {
    48             return new \ReflectionMethod($callable, '__invoke');
     43            return new ReflectionMethod($callable, '__invoke');
    4944        }
    5045
    5146        // Standard function
    5247        if (is_string($callable) && function_exists($callable)) {
    53             return new \ReflectionFunction($callable);
     48            return new ReflectionFunction($callable);
    5449        }
    5550
  • simple-csv-exporter/trunk/vendor/php-di/php-di/change-log.md

    r2446249 r3197847  
    11# Change log
     2
     3## 6.1.0
     4
     5- [#791](https://github.com/PHP-DI/PHP-DI/issues/791) Support PHP 8.1, remove support for PHP 7.2
    26
    37## 6.0.2
  • simple-csv-exporter/trunk/vendor/php-di/php-di/src/Compiler/Compiler.php

    r2761526 r3197847  
    2222use function file_put_contents;
    2323use InvalidArgumentException;
    24 use Opis\Closure\SerializableClosure;
     24use Laravel\SerializableClosure\Support\ReflectionClosure;
    2525use function rename;
    2626use function sprintf;
     
    402402    private function compileClosure(\Closure $closure) : string
    403403    {
    404         $wrapper = new SerializableClosure($closure);
    405         $reflector = $wrapper->getReflector();
     404        $reflector = new ReflectionClosure($closure);
    406405
    407406        if ($reflector->getUseVariables()) {
  • simple-csv-exporter/trunk/vendor/php-di/php-di/src/Definition/Resolver/ArrayResolver.php

    r2446249 r3197847  
    4343
    4444        // Resolve nested definitions
    45         array_walk_recursive($values, function (&$value, $key) use ($definition) {
     45        array_walk_recursive($values, function (& $value, $key) use ($definition) {
    4646            if ($value instanceof Definition) {
    4747                $value = $this->resolveDefinition($value, $definition, $key);
  • simple-csv-exporter/trunk/vendor/psr/container/src/ContainerExceptionInterface.php

    r2761526 r3197847  
    33namespace Psr\Container;
    44
     5use Throwable;
     6
    57/**
    68 * Base interface representing a generic exception in a container.
    79 */
    8 interface ContainerExceptionInterface
     10interface ContainerExceptionInterface extends Throwable
    911{
    1012}
Note: See TracChangeset for help on using the changeset viewer.