MDL-75475 lib: Upgraded PHP CSS Parser to 8.4.0

This commit is contained in:
David Woloszyn
2022-10-20 09:32:47 +11:00
parent f8d28e4ca6
commit c8ee3c9051
40 changed files with 5244 additions and 3086 deletions
+59 -30
View File
@@ -2,43 +2,72 @@
namespace Sabberworm\CSS\RuleSet;
use Sabberworm\CSS\OutputFormat;
use Sabberworm\CSS\Property\AtRule;
/**
* A RuleSet constructed by an unknown @-rule. @font-face rules are rendered into AtRuleSet objects.
* A RuleSet constructed by an unknown at-rule. `@font-face` rules are rendered into AtRuleSet objects.
*/
class AtRuleSet extends RuleSet implements AtRule {
class AtRuleSet extends RuleSet implements AtRule
{
/**
* @var string
*/
private $sType;
private $sType;
private $sArgs;
/**
* @var string
*/
private $sArgs;
public function __construct($sType, $sArgs = '', $iLineNo = 0) {
parent::__construct($iLineNo);
$this->sType = $sType;
$this->sArgs = $sArgs;
}
/**
* @param string $sType
* @param string $sArgs
* @param int $iLineNo
*/
public function __construct($sType, $sArgs = '', $iLineNo = 0)
{
parent::__construct($iLineNo);
$this->sType = $sType;
$this->sArgs = $sArgs;
}
public function atRuleName() {
return $this->sType;
}
/**
* @return string
*/
public function atRuleName()
{
return $this->sType;
}
public function atRuleArgs() {
return $this->sArgs;
}
/**
* @return string
*/
public function atRuleArgs()
{
return $this->sArgs;
}
public function __toString() {
return $this->render(new \Sabberworm\CSS\OutputFormat());
}
/**
* @return string
*/
public function __toString()
{
return $this->render(new OutputFormat());
}
public function render(\Sabberworm\CSS\OutputFormat $oOutputFormat) {
$sArgs = $this->sArgs;
if($sArgs) {
$sArgs = ' ' . $sArgs;
}
$sResult = "@{$this->sType}$sArgs{$oOutputFormat->spaceBeforeOpeningBrace()}{";
$sResult .= parent::render($oOutputFormat);
$sResult .= '}';
return $sResult;
}
}
/**
* @return string
*/
public function render(OutputFormat $oOutputFormat)
{
$sArgs = $this->sArgs;
if ($sArgs) {
$sArgs = ' ' . $sArgs;
}
$sResult = "@{$this->sType}$sArgs{$oOutputFormat->spaceBeforeOpeningBrace()}{";
$sResult .= parent::render($oOutputFormat);
$sResult .= '}';
return $sResult;
}
}