<?xml version="1.0"?>
<ruleset name="WordPress Coding Standards">
	<description>WooCommerce Dev Ruleset</description>

	<!-- Exclude paths -->
	<exclude-pattern>*/node_modules/*</exclude-pattern>
	<exclude-pattern>*/vendor/*</exclude-pattern>
	<exclude-pattern>*/tests/*</exclude-pattern>
	<exclude-pattern>*/languages/*</exclude-pattern>

	<!-- Configs -->
	<config name="minimum_supported_wp_version" value="5.3" />
	<config name="testVersion" value="7.0-" />

	<!-- Rules -->
	<rule ref="WooCommerce-Core" />

	<rule ref="WordPress.WP.I18n">
		<properties>
			<property name="text_domain" type="array" value="storefront" />
		</properties>
	</rule>

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

	<rule ref="WordPress.Files.FileName.InvalidClassFileName">
		<exclude-pattern>*/**/abstract-*.php</exclude-pattern>
		<exclude-pattern>tests/*</exclude-pattern>
		<exclude-pattern>src/*</exclude-pattern>
	</rule>

	<rule ref="WordPress.Files.FileName.NotHyphenatedLowercase">
		<exclude-pattern>src/*</exclude-pattern>
		<exclude-pattern>tests/*</exclude-pattern>
	</rule>

	<rule ref="Squiz.Commenting.FileComment.MissingPackageTag">
		<exclude-pattern>src/</exclude-pattern>
		<exclude-pattern>tests/php</exclude-pattern>
	</rule>
	<rule ref="Squiz.Commenting.FileComment.Missing">
		<exclude-pattern>src/</exclude-pattern>
		<exclude-pattern>tests/php</exclude-pattern>
	</rule>

	<rule ref="Generic.Commenting">
		<exclude-pattern>tests/</exclude-pattern>
	</rule>

	<rule ref="Generic.Commenting.Todo">
		<exclude name="Generic.Commenting.Todo.TaskFound"/>
		<exclude name="Generic.Commenting.Todo.CommentFound"/>
	</rule>

	<rule ref="Generic.Arrays.DisallowShortArraySyntax.Found">
		<exclude-pattern>src/*</exclude-pattern>
    </rule>

	<rule ref="WooCommerce.Commenting.CommentHooks.MissingHookComment">
		<exclude-pattern>*</exclude-pattern>
    </rule>

	<rule ref="WooCommerce.Commenting.CommentHooks.MissingSinceComment">
		<exclude-pattern>*</exclude-pattern>
    </rule>
</ruleset>
