PluginProbe ʕ •ᴥ•ʔ
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress / trunk
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress vtrunk
4.17.2 4.17.1 4.17.0 4.16.19 4.16.18 4.16.17 4.16.16 trunk 1.0 1.0.1 1.0.2 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5a 1.1.6 1.1.7 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.4 1.4.1 1.4.2 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.7 1.7.1 1.7.2 1.8 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.1.9 2.2.10 2.2.11 2.2.12 2.2.13 2.2.14 2.2.15 2.2.16 2.2.2 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 3.0 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.15.0 4.15.1 4.15.10 4.15.11 4.15.12 4.15.13 4.15.14 4.15.15 4.15.16 4.15.17 4.15.18 4.15.19 4.15.2 4.15.20 4.15.20.1 4.15.21 4.15.22 4.15.23 4.15.24 4.15.25 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.10 4.16.11 4.16.12 4.16.13 4.16.14 4.16.15 4.16.2 4.16.3 4.16.4 4.16.5 4.16.6 4.16.7 4.16.8 4.16.9 4.2.0 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.7.0 4.8.0 4.9.0
wp-user-avatar / third-party / vendor / symfony / css-selector / XPath / Extension / PseudoClassExtension.php
wp-user-avatar / third-party / vendor / symfony / css-selector / XPath / Extension Last commit date
AbstractExtension.php 2 months ago AttributeMatchingExtension.php 2 months ago CombinationExtension.php 2 months ago ExtensionInterface.php 2 months ago FunctionExtension.php 2 months ago HtmlExtension.php 2 months ago NodeExtension.php 2 months ago PseudoClassExtension.php 2 months ago
PseudoClassExtension.php
87 lines
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11 namespace ProfilePressVendor\Symfony\Component\CssSelector\XPath\Extension;
12
13 use ProfilePressVendor\Symfony\Component\CssSelector\Exception\ExpressionErrorException;
14 use ProfilePressVendor\Symfony\Component\CssSelector\XPath\XPathExpr;
15 /**
16 * XPath expression translator pseudo-class extension.
17 *
18 * This component is a port of the Python cssselect library,
19 * which is copyright Ian Bicking, @see https://github.com/SimonSapin/cssselect.
20 *
21 * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com>
22 *
23 * @internal
24 */
25 class PseudoClassExtension extends AbstractExtension
26 {
27 /**
28 * {@inheritdoc}
29 */
30 public function getPseudoClassTranslators(): array
31 {
32 return ['root' => [$this, 'translateRoot'], 'first-child' => [$this, 'translateFirstChild'], 'last-child' => [$this, 'translateLastChild'], 'first-of-type' => [$this, 'translateFirstOfType'], 'last-of-type' => [$this, 'translateLastOfType'], 'only-child' => [$this, 'translateOnlyChild'], 'only-of-type' => [$this, 'translateOnlyOfType'], 'empty' => [$this, 'translateEmpty']];
33 }
34 public function translateRoot(XPathExpr $xpath): XPathExpr
35 {
36 return $xpath->addCondition('not(parent::*)');
37 }
38 public function translateFirstChild(XPathExpr $xpath): XPathExpr
39 {
40 return $xpath->addStarPrefix()->addNameTest()->addCondition('position() = 1');
41 }
42 public function translateLastChild(XPathExpr $xpath): XPathExpr
43 {
44 return $xpath->addStarPrefix()->addNameTest()->addCondition('position() = last()');
45 }
46 /**
47 * @throws ExpressionErrorException
48 */
49 public function translateFirstOfType(XPathExpr $xpath): XPathExpr
50 {
51 if ('*' === $xpath->getElement()) {
52 throw new ExpressionErrorException('"*:first-of-type" is not implemented.');
53 }
54 return $xpath->addStarPrefix()->addCondition('position() = 1');
55 }
56 /**
57 * @throws ExpressionErrorException
58 */
59 public function translateLastOfType(XPathExpr $xpath): XPathExpr
60 {
61 if ('*' === $xpath->getElement()) {
62 throw new ExpressionErrorException('"*:last-of-type" is not implemented.');
63 }
64 return $xpath->addStarPrefix()->addCondition('position() = last()');
65 }
66 public function translateOnlyChild(XPathExpr $xpath): XPathExpr
67 {
68 return $xpath->addStarPrefix()->addNameTest()->addCondition('last() = 1');
69 }
70 public function translateOnlyOfType(XPathExpr $xpath): XPathExpr
71 {
72 $element = $xpath->getElement();
73 return $xpath->addCondition(sprintf('count(preceding-sibling::%s)=0 and count(following-sibling::%s)=0', $element, $element));
74 }
75 public function translateEmpty(XPathExpr $xpath): XPathExpr
76 {
77 return $xpath->addCondition('not(*) and not(string-length())');
78 }
79 /**
80 * {@inheritdoc}
81 */
82 public function getName(): string
83 {
84 return 'pseudo-class';
85 }
86 }
87