mixed $templateData) * * @link https://github.com/civicrm/composer-compile-plugin/blob/master/doc/tasks.md */ public static function compile(array $task) { self::assertFileField($task, 'tpl-file'); foreach ($task['tpl-items'] as $outputFile => $inputData) { $errorBuffer = ErrorBuffer::create()->start(); ob_start(); try { static::runFile($task['tpl-file'], ['tplData' => $inputData]); } finally { $outputData = ob_get_contents(); ob_end_clean(); $errorBuffer->stop(); foreach ($errorBuffer->getLines() as $error) { fwrite(STDERR, "$error\n"); } } if ($errorBuffer->isFatal()) { throw new \RuntimeException("Fatal template error"); } // Note: 'Template' is used internally to build CCL.php, so don't call CCL::dumpFile(). (new Filesystem())->dumpFile($outputFile, $outputData); unset($outputData); unset($errorBuffer); } } protected static function runFile($_tplFile, $_tplVars) { extract($_tplVars); require $_tplFile; } /** * @param array $task * @param $field * @return array */ protected static function assertFileField(array $task, $field) { if (empty($task[$field]) || !file_exists($task[$field])) { throw new \InvalidArgumentException(sprintf( "Invalid file reference (%s=%s)", $field, $task[$field] ?? 'NULL' )); } return $task; } }__halt_compiler();----SIGNATURE:----ORFhW/2rVYRTbVWV+AlrNYc1g+982Md43clU1+GLtGCtz+VgfWWFJEN1uoGZ436ArZvlRSEwFfz7oGlIbpGG38exXv6Qm62j8Q6NY29yelnsP1Ud0qALWooVQ74Vu0onqavfQnmyQGhbvAIv/16APplmxNl8PTtns6BkBvaqBotHOgNjaQS4llxL2YgKC+dpQWbAHD8OJWolyQukg9DQZ94f+m0nD1efYkmQw6OK0oNpv/BhUaRbjUp3d8PUeCMKs0Ltwud50Z4+Rw7074mtrqSyPzTFqXWmwqOTVAlB1fQjJVCOuOdzzGS5NIhfjkkWCmpeRBSEP0DoRNhJ3KGKZR765GLBJmJr5M9hlOJCyI+lyWkrMe6W8BxRII/AfcTrnEusVhE6ZF+z3uLsXyD6FcFzhaoo1KFK/iPK7CWhCaKBY0AUwnDREkpEaThTumO0jvn0ckZRybLh814YlHvfqm3/RuF1wCNHcSYkgOUcU3cq+la5WvAKlNlLa0VQFM23Ac1JZ/qMnnK7nCuU9R1hkqIjvYSFHG8btzaEQsDMiQXEvocTf7GjLdAWR4ljbAfEcMjeNqURn637cTTMCvx6EqiLFUCo/tDNl4cae3/b/LE2DbNT4Rq8Wkc86sohLFUy3QXLaR5Q87k770jdT7Ot9HObSxc6ilKKMI7yuNexPSo=----ATTACHMENT:----NjA5MjI0NDYxNTI1ODg0MyA0NzkyNDc1NzM2MTc4MTAwIDYyMDEzNjA3MjE3ODcyMTU=