Update core 8.3.0
This commit is contained in:
parent
da7a7918f8
commit
cd7a898e66
6144 changed files with 132297 additions and 87747 deletions
13
web/vendor/masterminds/html5/RELEASE.md
vendored
13
web/vendor/masterminds/html5/RELEASE.md
vendored
|
@ -1,10 +1,17 @@
|
|||
# Release Notes
|
||||
|
||||
2.2.1 (2015-05-10)
|
||||
2.2.2 (2016-10-22)
|
||||
|
||||
- #109: Fixed issue where address tag could be written without closing tag
|
||||
- #116: In XML mode, tags are case sensitive
|
||||
- #115: Fix PHP Notice in OutputRules
|
||||
- #112: fix parsing of options of an optgroup
|
||||
- #111: Adding test for the address tag
|
||||
|
||||
2.2.0 (2015-04-11)
|
||||
2.2.1 (2016-05-10)
|
||||
|
||||
- #109: Fixed issue where address tag could be written without closing tag (thanks sylus)
|
||||
|
||||
2.2.0 (2016-04-11)
|
||||
|
||||
- #105: Enable composer cache (for CI/CD)
|
||||
- #100: Use mb_substitute_character inset of ini_set for environments where
|
||||
|
|
2
web/vendor/masterminds/html5/composer.json
vendored
2
web/vendor/masterminds/html5/composer.json
vendored
|
@ -36,7 +36,7 @@
|
|||
},
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.1-dev"
|
||||
"dev-master": "2.2-dev"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
10
web/vendor/masterminds/html5/src/HTML5.php
vendored
10
web/vendor/masterminds/html5/src/HTML5.php
vendored
|
@ -166,9 +166,10 @@ class HTML5
|
|||
public function parse(\Masterminds\HTML5\Parser\InputStream $input, array $options = array())
|
||||
{
|
||||
$this->errors = array();
|
||||
$events = new DOMTreeBuilder(false, array_merge($this->getOptions(), $options));
|
||||
$options = array_merge($this->getOptions(), $options);
|
||||
$events = new DOMTreeBuilder(false, $options);
|
||||
$scanner = new Scanner($input);
|
||||
$parser = new Tokenizer($scanner, $events);
|
||||
$parser = new Tokenizer($scanner, $events, !empty($options['xmlNamespaces']) ? Tokenizer::CONFORMANT_XML: Tokenizer::CONFORMANT_HTML);
|
||||
|
||||
$parser->parse();
|
||||
$this->errors = $events->getErrors();
|
||||
|
@ -184,9 +185,10 @@ class HTML5
|
|||
*/
|
||||
public function parseFragment(\Masterminds\HTML5\Parser\InputStream $input, array $options = array())
|
||||
{
|
||||
$events = new DOMTreeBuilder(true, array_merge($this->getOptions(), $options));
|
||||
$options = array_merge($this->getOptions(), $options);
|
||||
$events = new DOMTreeBuilder(true, $options);
|
||||
$scanner = new Scanner($input);
|
||||
$parser = new Tokenizer($scanner, $events);
|
||||
$parser = new Tokenizer($scanner, $events, !empty($options['xmlNamespaces']) ? Tokenizer::CONFORMANT_XML: Tokenizer::CONFORMANT_HTML);
|
||||
|
||||
$parser->parse();
|
||||
$this->errors = $events->getErrors();
|
||||
|
|
|
@ -43,6 +43,10 @@ class Tokenizer
|
|||
protected $textMode = 0; // TEXTMODE_NORMAL;
|
||||
protected $untilTag = null;
|
||||
|
||||
const CONFORMANT_XML = 'xml';
|
||||
const CONFORMANT_HTML = 'html';
|
||||
protected $mode = self::CONFORMANT_HTML;
|
||||
|
||||
const WHITE = "\t\n\f ";
|
||||
|
||||
/**
|
||||
|
@ -57,11 +61,13 @@ class Tokenizer
|
|||
* @param \Masterminds\HTML5\Parser\EventHandler $eventHandler
|
||||
* An event handler, initialized and ready to receive
|
||||
* events.
|
||||
* @param string $mode
|
||||
*/
|
||||
public function __construct($scanner, $eventHandler)
|
||||
public function __construct($scanner, $eventHandler, $mode = self::CONFORMANT_HTML)
|
||||
{
|
||||
$this->scanner = $scanner;
|
||||
$this->events = $eventHandler;
|
||||
$this->mode = $mode;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -335,7 +341,8 @@ class Tokenizer
|
|||
return $this->bogusComment('</');
|
||||
}
|
||||
|
||||
$name = strtolower($this->scanner->charsUntil("\n\f \t>"));
|
||||
$name = $this->scanner->charsUntil("\n\f \t>");
|
||||
$name = $this->mode === self::CONFORMANT_XML ? $name: strtolower($name);
|
||||
// Trash whitespace.
|
||||
$this->scanner->whitespace();
|
||||
|
||||
|
@ -362,7 +369,8 @@ class Tokenizer
|
|||
}
|
||||
|
||||
// We know this is at least one char.
|
||||
$name = strtolower($this->scanner->charsWhile(":_-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"));
|
||||
$name = $this->scanner->charsWhile(":_-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
|
||||
$name = $this->mode === self::CONFORMANT_XML ? $name : strtolower($name);
|
||||
$attributes = array();
|
||||
$selfClose = false;
|
||||
|
||||
|
|
|
@ -76,7 +76,6 @@ class TreeBuildingRules
|
|||
case 'option':
|
||||
return $this->closeIfCurrentMatches($new, $current, array(
|
||||
'option',
|
||||
'optgroup'
|
||||
));
|
||||
case 'tr':
|
||||
return $this->closeIfCurrentMatches($new, $current, array(
|
||||
|
|
|
@ -221,7 +221,11 @@ class OutputRules implements \Masterminds\HTML5\Serializer\RulesInterface
|
|||
$this->openTag($ele);
|
||||
if (Elements::isA($name, Elements::TEXT_RAW)) {
|
||||
foreach ($ele->childNodes as $child) {
|
||||
$this->wr($child->data);
|
||||
if ($child instanceof \DOMCharacterData) {
|
||||
$this->wr($child->data);
|
||||
} elseif ($child instanceof \DOMElement) {
|
||||
$this->element($child);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// Handle children.
|
||||
|
|
Reference in a new issue