Update besar apk finance
This commit is contained in:
+318
-114
@@ -1,6 +1,7 @@
|
||||
# PHP CSS Parser
|
||||
|
||||
[](https://github.com/sabberworm/PHP-CSS-Parser/actions/)
|
||||
[](https://github.com/MyIntervals/PHP-CSS-Parser/actions/)
|
||||
[](https://coveralls.io/github/MyIntervals/PHP-CSS-Parser?branch=main)
|
||||
|
||||
A Parser for CSS Files written in PHP. Allows extraction of CSS files into a data structure, manipulation of said structure and output as (optimized) CSS.
|
||||
|
||||
@@ -158,7 +159,7 @@ foreach($cssDocument->getAllRuleSets() as $oRuleSet) {
|
||||
// Note that the added dash will make this remove all rules starting with
|
||||
// `font-` (like `font-size`, `font-weight`, etc.) as well as a potential
|
||||
// `font` rule.
|
||||
$oRuleSet->removeRule('font-');
|
||||
$oRuleSet->removeRule('font-');
|
||||
$oRuleSet->removeRule('cursor');
|
||||
}
|
||||
```
|
||||
@@ -220,44 +221,44 @@ html, body {
|
||||
|
||||
```php
|
||||
class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
protected $aContents =>
|
||||
protected $contents =>
|
||||
array(4) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Property\Charset#6 (2) {
|
||||
private $sCharset =>
|
||||
private $charset =>
|
||||
class Sabberworm\CSS\Value\CSSString#5 (2) {
|
||||
private $sString =>
|
||||
private $string =>
|
||||
string(5) "utf-8"
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(1)
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(1)
|
||||
}
|
||||
[1] =>
|
||||
class Sabberworm\CSS\RuleSet\AtRuleSet#7 (4) {
|
||||
private $sType =>
|
||||
private $type =>
|
||||
string(9) "font-face"
|
||||
private $sArgs =>
|
||||
private $arguments =>
|
||||
string(0) ""
|
||||
private $aRules =>
|
||||
private $rules =>
|
||||
array(2) {
|
||||
'font-family' =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#8 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(11) "font-family"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
class Sabberworm\CSS\Value\CSSString#9 (2) {
|
||||
private $sString =>
|
||||
private $string =>
|
||||
string(10) "CrassRoots"
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(4)
|
||||
}
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(4)
|
||||
}
|
||||
}
|
||||
@@ -265,76 +266,76 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#10 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(3) "src"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
class Sabberworm\CSS\Value\URL#11 (2) {
|
||||
private $oURL =>
|
||||
private $url =>
|
||||
class Sabberworm\CSS\Value\CSSString#12 (2) {
|
||||
private $sString =>
|
||||
private $string =>
|
||||
string(15) "../media/cr.ttf"
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(5)
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(5)
|
||||
}
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(5)
|
||||
}
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(3)
|
||||
}
|
||||
[2] =>
|
||||
class Sabberworm\CSS\RuleSet\DeclarationBlock#13 (3) {
|
||||
private $aSelectors =>
|
||||
private $selectors =>
|
||||
array(2) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Property\Selector#14 (2) {
|
||||
private $sSelector =>
|
||||
private $selector =>
|
||||
string(4) "html"
|
||||
private $iSpecificity =>
|
||||
private $specificity =>
|
||||
NULL
|
||||
}
|
||||
[1] =>
|
||||
class Sabberworm\CSS\Property\Selector#15 (2) {
|
||||
private $sSelector =>
|
||||
private $selector =>
|
||||
string(4) "body"
|
||||
private $iSpecificity =>
|
||||
private $specificity =>
|
||||
NULL
|
||||
}
|
||||
}
|
||||
private $aRules =>
|
||||
private $rules =>
|
||||
array(1) {
|
||||
'font-size' =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#16 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(9) "font-size"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
class Sabberworm\CSS\Value\Size#17 (4) {
|
||||
private $fSize =>
|
||||
private $size =>
|
||||
double(1.6)
|
||||
private $sUnit =>
|
||||
private $unit =>
|
||||
string(2) "em"
|
||||
private $bIsColorComponent =>
|
||||
private $isColorComponent =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(9)
|
||||
}
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(9)
|
||||
}
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(8)
|
||||
}
|
||||
[3] =>
|
||||
@@ -343,96 +344,96 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
string(9) "keyframes"
|
||||
private $animationName =>
|
||||
string(6) "mymove"
|
||||
protected $aContents =>
|
||||
protected $contents =>
|
||||
array(2) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\RuleSet\DeclarationBlock#19 (3) {
|
||||
private $aSelectors =>
|
||||
private $selectors =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Property\Selector#20 (2) {
|
||||
private $sSelector =>
|
||||
private $selector =>
|
||||
string(4) "from"
|
||||
private $iSpecificity =>
|
||||
private $specificity =>
|
||||
NULL
|
||||
}
|
||||
}
|
||||
private $aRules =>
|
||||
private $rules =>
|
||||
array(1) {
|
||||
'top' =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#21 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(3) "top"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
class Sabberworm\CSS\Value\Size#22 (4) {
|
||||
private $fSize =>
|
||||
private $size =>
|
||||
double(0)
|
||||
private $sUnit =>
|
||||
private $unit =>
|
||||
string(2) "px"
|
||||
private $bIsColorComponent =>
|
||||
private $isColorComponent =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(13)
|
||||
}
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(13)
|
||||
}
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(13)
|
||||
}
|
||||
[1] =>
|
||||
class Sabberworm\CSS\RuleSet\DeclarationBlock#23 (3) {
|
||||
private $aSelectors =>
|
||||
private $selectors =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Property\Selector#24 (2) {
|
||||
private $sSelector =>
|
||||
private $selector =>
|
||||
string(2) "to"
|
||||
private $iSpecificity =>
|
||||
private $specificity =>
|
||||
NULL
|
||||
}
|
||||
}
|
||||
private $aRules =>
|
||||
private $rules =>
|
||||
array(1) {
|
||||
'top' =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#25 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(3) "top"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
class Sabberworm\CSS\Value\Size#26 (4) {
|
||||
private $fSize =>
|
||||
private $size =>
|
||||
double(200)
|
||||
private $sUnit =>
|
||||
private $unit =>
|
||||
string(2) "px"
|
||||
private $bIsColorComponent =>
|
||||
private $isColorComponent =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(14)
|
||||
}
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(14)
|
||||
}
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(14)
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(12)
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(1)
|
||||
}
|
||||
|
||||
@@ -466,85 +467,85 @@ html, body {font-size: 1.6em;}
|
||||
|
||||
```php
|
||||
class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
protected $aContents =>
|
||||
protected $contents =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\RuleSet\DeclarationBlock#5 (3) {
|
||||
private $aSelectors =>
|
||||
private $selectors =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Property\Selector#6 (2) {
|
||||
private $sSelector =>
|
||||
private $selector =>
|
||||
string(7) "#header"
|
||||
private $iSpecificity =>
|
||||
private $specificity =>
|
||||
NULL
|
||||
}
|
||||
}
|
||||
private $aRules =>
|
||||
private $rules =>
|
||||
array(3) {
|
||||
'margin' =>
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#7 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(6) "margin"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
class Sabberworm\CSS\Value\RuleValueList#12 (3) {
|
||||
protected $aComponents =>
|
||||
protected $components =>
|
||||
array(4) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Value\Size#8 (4) {
|
||||
private $fSize =>
|
||||
private $size =>
|
||||
double(10)
|
||||
private $sUnit =>
|
||||
private $unit =>
|
||||
string(2) "px"
|
||||
private $bIsColorComponent =>
|
||||
private $isColorComponent =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(2)
|
||||
}
|
||||
[1] =>
|
||||
class Sabberworm\CSS\Value\Size#9 (4) {
|
||||
private $fSize =>
|
||||
private $size =>
|
||||
double(2)
|
||||
private $sUnit =>
|
||||
private $unit =>
|
||||
string(2) "em"
|
||||
private $bIsColorComponent =>
|
||||
private $isColorComponent =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(2)
|
||||
}
|
||||
[2] =>
|
||||
class Sabberworm\CSS\Value\Size#10 (4) {
|
||||
private $fSize =>
|
||||
private $size =>
|
||||
double(1)
|
||||
private $sUnit =>
|
||||
private $unit =>
|
||||
string(2) "cm"
|
||||
private $bIsColorComponent =>
|
||||
private $isColorComponent =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(2)
|
||||
}
|
||||
[3] =>
|
||||
class Sabberworm\CSS\Value\Size#11 (4) {
|
||||
private $fSize =>
|
||||
private $size =>
|
||||
double(2)
|
||||
private $sUnit =>
|
||||
private $unit =>
|
||||
string(1) "%"
|
||||
private $bIsColorComponent =>
|
||||
private $isColorComponent =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(2)
|
||||
}
|
||||
}
|
||||
protected $sSeparator =>
|
||||
protected $separator =>
|
||||
string(1) " "
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(2)
|
||||
}
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(2)
|
||||
}
|
||||
}
|
||||
@@ -552,11 +553,11 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#13 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(11) "font-family"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
class Sabberworm\CSS\Value\RuleValueList#15 (3) {
|
||||
protected $aComponents =>
|
||||
protected $components =>
|
||||
array(4) {
|
||||
[0] =>
|
||||
string(7) "Verdana"
|
||||
@@ -564,9 +565,9 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
string(9) "Helvetica"
|
||||
[2] =>
|
||||
class Sabberworm\CSS\Value\CSSString#14 (2) {
|
||||
private $sString =>
|
||||
private $string =>
|
||||
string(9) "Gill Sans"
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(3)
|
||||
}
|
||||
[3] =>
|
||||
@@ -574,12 +575,12 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
}
|
||||
protected $sSeparator =>
|
||||
string(1) ","
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(3)
|
||||
}
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(false)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(3)
|
||||
}
|
||||
}
|
||||
@@ -587,22 +588,22 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
array(1) {
|
||||
[0] =>
|
||||
class Sabberworm\CSS\Rule\Rule#16 (4) {
|
||||
private $sRule =>
|
||||
private $rule =>
|
||||
string(5) "color"
|
||||
private $mValue =>
|
||||
private $value =>
|
||||
string(3) "red"
|
||||
private $bIsImportant =>
|
||||
private $isImportant =>
|
||||
bool(true)
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(4)
|
||||
}
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(1)
|
||||
}
|
||||
}
|
||||
protected $iLineNo =>
|
||||
protected $lineNumber =>
|
||||
int(1)
|
||||
}
|
||||
|
||||
@@ -615,6 +616,207 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
#header {margin: 10px 2em 1cm 2%;font-family: Verdana,Helvetica,"Gill Sans",sans-serif;color: red !important;}
|
||||
```
|
||||
|
||||
## Class diagram
|
||||
|
||||
```mermaid
|
||||
classDiagram
|
||||
direction LR
|
||||
|
||||
class Anchor {
|
||||
}
|
||||
class AtRule {
|
||||
<<interface>>
|
||||
}
|
||||
class AtRuleBlockList {
|
||||
}
|
||||
class AtRuleSet {
|
||||
}
|
||||
class CSSBlockList {
|
||||
<<abstract>>
|
||||
}
|
||||
class CSSElement {
|
||||
<<interface>>
|
||||
}
|
||||
class CSSFunction {
|
||||
}
|
||||
class CSSList {
|
||||
<<abstract>>
|
||||
}
|
||||
class CSSListItem {
|
||||
<<interface>>
|
||||
}
|
||||
class CSSNamespace {
|
||||
}
|
||||
class CSSString {
|
||||
}
|
||||
class CalcFunction {
|
||||
}
|
||||
class CalcRuleValueList {
|
||||
}
|
||||
class Charset {
|
||||
}
|
||||
class Color {
|
||||
}
|
||||
class Comment {
|
||||
}
|
||||
class Commentable {
|
||||
<<interface>>
|
||||
}
|
||||
class DeclarationBlock {
|
||||
}
|
||||
class Document {
|
||||
}
|
||||
class Import {
|
||||
}
|
||||
class KeyFrame {
|
||||
}
|
||||
class KeyframeSelector {
|
||||
}
|
||||
class LineName {
|
||||
}
|
||||
class OutputException {
|
||||
}
|
||||
class OutputFormat {
|
||||
}
|
||||
class OutputFormatter {
|
||||
}
|
||||
class Parser {
|
||||
}
|
||||
class ParserState {
|
||||
}
|
||||
class Positionable {
|
||||
<<interface>>
|
||||
}
|
||||
class PrimitiveValue {
|
||||
<<abstract>>
|
||||
}
|
||||
class Renderable {
|
||||
<<interface>>
|
||||
}
|
||||
class Rule {
|
||||
}
|
||||
class RuleContainer {
|
||||
<<interface>>
|
||||
}
|
||||
class RuleSet {
|
||||
}
|
||||
class RuleValueList {
|
||||
}
|
||||
class Selector {
|
||||
}
|
||||
class Settings {
|
||||
}
|
||||
class Size {
|
||||
}
|
||||
class SourceException {
|
||||
}
|
||||
class SpecificityCalculator {
|
||||
}
|
||||
class URL {
|
||||
}
|
||||
class UnexpectedEOFException {
|
||||
}
|
||||
class UnexpectedTokenException {
|
||||
}
|
||||
class Value {
|
||||
<<abstract>>
|
||||
}
|
||||
class ValueList {
|
||||
<<abstract>>
|
||||
}
|
||||
|
||||
Anchor ..> ParserState: dependency
|
||||
CSSListItem <|-- AtRule: inheritance
|
||||
AtRule <|.. AtRuleBlockList: realization
|
||||
CSSBlockList <|-- AtRuleBlockList: inheritance
|
||||
AtRule <|.. AtRuleSet: realization
|
||||
RuleSet <|-- AtRuleSet: inheritance
|
||||
CSSList <|-- CSSBlockList: inheritance
|
||||
Renderable <|-- CSSElement: inheritance
|
||||
ValueList <|-- CSSFunction: inheritance
|
||||
CSSElement <|.. CSSList: realization
|
||||
CSSListItem <|.. CSSList: realization
|
||||
CSSList ..> Charset: dependency
|
||||
CSSList ..> Import: dependency
|
||||
Positionable <|.. CSSList: realization
|
||||
Commentable <|-- CSSListItem: inheritance
|
||||
Renderable <|-- CSSListItem: inheritance
|
||||
AtRule <|.. CSSNamespace: realization
|
||||
Positionable <|.. CSSNamespace: realization
|
||||
PrimitiveValue <|-- CSSString: inheritance
|
||||
CSSFunction <|-- CalcFunction: inheritance
|
||||
RuleValueList <|-- CalcRuleValueList: inheritance
|
||||
AtRule <|.. Charset: realization
|
||||
Charset ..> CSSString: dependency
|
||||
Positionable <|.. Charset: realization
|
||||
CSSFunction <|-- Color: inheritance
|
||||
Positionable <|.. Comment: realization
|
||||
Renderable <|.. Comment: realization
|
||||
CSSElement <|.. DeclarationBlock: realization
|
||||
CSSListItem <|.. DeclarationBlock: realization
|
||||
Positionable <|.. DeclarationBlock: realization
|
||||
RuleContainer <|.. DeclarationBlock: realization
|
||||
DeclarationBlock ..> RuleSet : dependency
|
||||
DeclarationBlock ..> Selector: dependency
|
||||
CSSBlockList <|-- Document: inheritance
|
||||
AtRule <|.. Import: realization
|
||||
Positionable <|.. Import: realization
|
||||
AtRule <|.. KeyFrame: realization
|
||||
CSSList <|-- KeyFrame: inheritance
|
||||
Selector <|-- KeyframeSelector: inheritance
|
||||
ValueList <|-- LineName: inheritance
|
||||
SourceException <|-- OutputException: inheritance
|
||||
OutputFormat ..> OutputFormatter: dependency
|
||||
OutputFormatter ..> OutputFormat: dependency
|
||||
Parser ..> ParserState: dependency
|
||||
ParserState ..> Settings: dependency
|
||||
Value <|-- PrimitiveValue: inheritance
|
||||
CSSElement <|.. Rule: realization
|
||||
Commentable <|.. Rule: realization
|
||||
Positionable <|.. Rule: realization
|
||||
Rule ..> RuleValueList: dependency
|
||||
CSSElement <|.. RuleSet: realization
|
||||
CSSListItem <|.. RuleSet: realization
|
||||
Positionable <|.. RuleSet: realization
|
||||
RuleSet ..> Rule: dependency
|
||||
RuleContainer <|.. RuleSet: realization
|
||||
ValueList <|-- RuleValueList: inheritance
|
||||
Renderable <|.. Selector: realization
|
||||
PrimitiveValue <|-- Size: inheritance
|
||||
Exception <|-- SourceException: inheritance
|
||||
Positionable <|.. SourceException: realization
|
||||
URL ..> CSSString: dependency
|
||||
PrimitiveValue <|-- URL: inheritance
|
||||
UnexpectedTokenException <|-- UnexpectedEOFException: inheritance
|
||||
SourceException <|-- UnexpectedTokenException: inheritance
|
||||
CSSElement <|.. Value: realization
|
||||
Positionable <|.. Value: realization
|
||||
Value <|-- ValueList: inheritance
|
||||
|
||||
CSSList ..> CSSList: dependency
|
||||
CSSList ..> Comment: dependency
|
||||
CSSList ..> RuleSet: dependency
|
||||
CSSNamespace ..> Comment: dependency
|
||||
Charset ..> Comment: dependency
|
||||
Import ..> Comment: dependency
|
||||
OutputFormat ..> OutputFormat: dependency
|
||||
Rule ..> Comment: dependency
|
||||
RuleSet ..> Comment: dependency
|
||||
ValueList ..> Value: dependency
|
||||
```
|
||||
|
||||
## API and deprecation policy
|
||||
|
||||
Please have a look at our
|
||||
[API and deprecation policy](docs/API-and-deprecation-policy.md).
|
||||
|
||||
## Contributing
|
||||
|
||||
Contributions in the form of bug reports, feature requests, or pull requests are
|
||||
more than welcome. :pray: Please have a look at our
|
||||
[contribution guidelines](CONTRIBUTING.md) to learn more about how to
|
||||
contribute to PHP-CSS-Parser.
|
||||
|
||||
## Contributors/Thanks to
|
||||
|
||||
* [oliverklee](https://github.com/oliverklee) for lots of refactorings, code modernizations and CI integrations
|
||||
@@ -628,10 +830,12 @@ class Sabberworm\CSS\CSSList\Document#4 (2) {
|
||||
* [docteurklein](https://github.com/docteurklein) for output formatting and `CSSList->remove()` inspiration.
|
||||
* [nicolopignatelli](https://github.com/nicolopignatelli) for PSR-0 compatibility.
|
||||
* [diegoembarcadero](https://github.com/diegoembarcadero) for keyframe at-rule parsing.
|
||||
* [goetas](https://github.com/goetas) for @namespace at-rule support.
|
||||
* [goetas](https://github.com/goetas) for `@namespace` at-rule support.
|
||||
* [ziegenberg](https://github.com/ziegenberg) for general housekeeping and cleanup.
|
||||
* [View full list](https://github.com/sabberworm/PHP-CSS-Parser/contributors)
|
||||
|
||||
## Misc
|
||||
|
||||
* Legacy Support: The latest pre-PSR-0 version of this project can be checked with the `0.9.0` tag.
|
||||
* Running Tests: To run all unit tests for this project, run `composer install` to install phpunit and use `./vendor/bin/phpunit`.
|
||||
### Legacy Support
|
||||
|
||||
The latest pre-PSR-0 version of this project can be checked with the `0.9.0` tag.
|
||||
|
||||
Reference in New Issue
Block a user