<?xml version="1.0"?>
<ruleset name="Translation Tools">
	<description>A custom set of PHPCS rules for plugin Translation Tools.</description>

	<!-- Files to check. -->
	<file>.</file>

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

	<!-- Only scan PHP files. -->
	<arg name="extensions" value="php"/>

	<!-- The report types to print. -->
	<arg name="report" value="summary,source,full"/>

	<!-- Show sniff and progress. -->
	<arg value="sp"/>

	<!-- Strip the file paths down to the relevant bit. -->
	<arg name="basepath" value="./"/>

	<!-- Check up to 20 files simultaneously. -->
	<arg name="parallel" value="20"/>

	<!-- Whenever possible, cache the scan results and re-use those for unchanged files on the next scan. -->
	<arg name="cache"/>

	<!-- Enable colors in report. -->
	<arg name="colors"/>

	<!-- Include the WordPress Coding Standards. -->
	<rule ref="WordPress">
		<!--
		<exclude name="WordPress.Files.FileName"/>
		-->
	</rule>

	<rule ref="WordPress.WP.DeprecatedFunctions">
		<properties>
			<property name="minimum_supported_version" value="4.9"/>
		</properties>
	</rule>

	<!--
	To get the optimal benefits of using WPCS, we should add a couple of custom properties.
	For information on additional custom properties available, check out
	the wiki:
	https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/wiki/Customizable-sniff-properties
	-->
	<rule ref="WordPress.WP.I18n">
		<properties>
			<!-- Set the Text Domain. -->
			<property name="text_domain" type="array" value="translation-tools"/>
		</properties>
	</rule>

	<rule ref="WordPress.NamingConventions.PrefixAllGlobals">
		<properties>
			<!-- Set the global prefix. -->
			<property name="prefixes" type="array" value="translation_tools"/>
		</properties>
	</rule>

	<!-- VariableAnalysis. -->
	<rule ref="VariableAnalysis"/>

</ruleset>
