<?xml version="1.0"?>
<ruleset name="WordPress Coding Standards">
    <description>WooCommerce extension PHP_CodeSniffer ruleset.</description>

    <!-- Exclude paths -->
    <exclude-pattern>tests/</exclude-pattern>
    <exclude-pattern>woo-includes/woo-functions.php</exclude-pattern>
    <exclude-pattern>woo-includes/class-wc-dependencies.php</exclude-pattern>
    <exclude-pattern>*/node_modules/*</exclude-pattern>
    <exclude-pattern>*/vendor/*</exclude-pattern>

    <!-- Configs -->
    <config name="minimum_supported_wp_version" value="4.7" />
    <config name="testVersion" value="5.6-" />

    <!-- Rules -->
    <rule ref="WordPress-Extra">
        <exclude name="Generic.Commenting.DocComment.SpacingAfter" />
        <exclude name="Generic.Files.LineEndings.InvalidEOLChar" />
        <exclude name="Generic.Functions.FunctionCallArgumentSpacing.SpaceBeforeComma" />
        <exclude name="PEAR.Functions.FunctionCallSignature" />
        <exclude name="Squiz.Commenting" />
        <exclude name="Squiz.PHP.DisallowSizeFunctionsInLoops.Found" />
        <exclude name="Squiz.WhiteSpace" />
        <exclude name="WordPress.Arrays" />
        <exclude name="WordPress.Files.FileName" />
        <exclude name="WordPress.NamingConventions" />
        <exclude name="WordPress.Security.ValidatedSanitizedInput.MissingUnslash" />
        <exclude name="WordPress.WP.I18n.NonSingularStringLiteralText" />
        <exclude name="WordPress.WhiteSpace" />
    </rule>

    <rule ref="WooCommerce-Core">
        <exclude name="Core.Commenting.CommentTags.AuthorTag" />
        <exclude name="WordPress.PHP.DontExtract" />
        <exclude name="Generic.Arrays.DisallowShortArraySyntax" />
        <exclude name="Generic.WhiteSpace.ScopeIndent.Incorrect" />
    </rule>

    <rule ref="PHPCompatibility">
        <exclude-pattern>tests/</exclude-pattern>
    </rule>
</ruleset>
