<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>com.github.games647</groupId>
        <artifactId>fastlogin</artifactId>
        <version>1.11-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <!--This have to be in lowercase because it's used by plugin.yml-->
    <artifactId>fastlogin.bukkit</artifactId>
    <packaging>jar</packaging>

    <name>FastLoginBukkit</name>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.2.4</version>
                <configuration>
                    <createDependencyReducedPom>false</createDependencyReducedPom>
                    <shadedArtifactAttached>false</shadedArtifactAttached>
                    <relocations>
                        <relocation>
                            <pattern>com.zaxxer.hikari</pattern>
                            <shadedPattern>fastlogin.hikari</shadedPattern>
                        </relocation>
                        <relocation>
                            <pattern>org.slf4j</pattern>
                            <shadedPattern>fastlogin.slf4j</shadedPattern>
                        </relocation>
                        <relocation>
                            <pattern>net.md_5.bungee.config</pattern>
                            <shadedPattern>fastlogin.config</shadedPattern>
                        </relocation>
                        <relocation>
                            <pattern>com.google.gson</pattern>
                            <shadedPattern>fastlogin.gson</shadedPattern>
                        </relocation>
                        <relocation>
                            <pattern>io.papermc.lib</pattern>
                            <shadedPattern>fastlogin.paperlib</shadedPattern>
                        </relocation>
                    </relocations>
                </configuration>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <!-- PaperSpigot API and PaperLib -->
        <repository>
            <id>papermc</id>
            <url>https://papermc.io/repo/repository/maven-public/</url>
        </repository>

        <!-- ProtocolLib -->
        <repository>
            <id>dmulloy2-repo</id>
            <url>https://repo.dmulloy2.net/nexus/repository/public/</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>

        <!-- AuthMe Reloaded, xAuth and LoginSecurity -->
        <repository>
            <id>codemc-releases</id>
            <url>https://repo.codemc.io/repository/maven-public/</url>
        </repository>

        <!-- GitHub automatic maven builds -->
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>

        <!-- PlaceholderAPI -->
        <repository>
            <id>placeholderapi</id>
            <url>https://repo.extendedclip.com/content/repositories/placeholderapi</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

    <dependencies>
        <!--Common plugin component-->
        <dependency>
            <groupId>com.github.games647</groupId>
            <artifactId>fastlogin.core</artifactId>
            <version>${project.version}</version>
        </dependency>

        <!-- PaperSpigot API for correcting usercache usage -->
        <dependency>
            <groupId>com.destroystokyo.paper</groupId>
            <artifactId>paper-api</artifactId>
            <version>1.15.2-R0.1-SNAPSHOT</version>
            <scope>provided</scope>
        </dependency>

        <!-- PaperLib for checking if server uses PaperSpigot -->
        <dependency>
            <groupId>io.papermc</groupId>
            <artifactId>paperlib</artifactId>
            <version>1.0.6</version>
            <scope>compile</scope>
        </dependency>

        <!--Library for listening and sending Minecraft packets-->
        <dependency>
            <groupId>com.comphenix.protocol</groupId>
            <artifactId>ProtocolLib</artifactId>
            <version>4.6.0</version>
            <scope>provided</scope>
        </dependency>

        <!--Changing onlinemode on login process-->
        <dependency>
            <groupId>com.github.ProtocolSupport</groupId>
            <artifactId>ProtocolSupport</artifactId>
            <!--4.29.dev after commit about API improvements-->
            <version>3a80c661fe</version>
            <scope>provided</scope>
        </dependency>

        <!--Provide premium placeholders-->
        <dependency>
            <groupId>me.clip</groupId>
            <artifactId>placeholderapi</artifactId>
            <version>2.10.8</version>
            <scope>provided</scope>
            <optional>true</optional>
            <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!--Login Plugins-->
        <dependency>
            <groupId>fr.xephi</groupId>
            <artifactId>authme</artifactId>
            <version>5.4.0</version>
            <scope>provided</scope>
            <optional>true</optional>
            <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>com.lenis0012.bukkit</groupId>
            <artifactId>loginsecurity</artifactId>
            <version>3.0.2</version>
            <scope>provided</scope>
            <optional>true</optional>
            <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>com.github.games647</groupId>
            <artifactId>LogIt</artifactId>
            <version>9e3581db27</version>
            <scope>provided</scope>
            <optional>true</optional>
            <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>de.luricos.bukkit</groupId>
            <artifactId>xAuth</artifactId>
            <version>2.6</version>
            <scope>provided</scope>
            <optional>true</optional>
            <!--These artifacts produce conflicts on downloading-->
            <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!--No maven repository :(-->
        <dependency>
            <groupId>de.st_ddt.crazy</groupId>
            <artifactId>CrazyCore</artifactId>
            <version>10.7.7</version>
            <optional>true</optional>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/CrazyCore v10.7.7.jar</systemPath>
        </dependency>

        <dependency>
            <groupId>de.st_ddt.crazy</groupId>
            <artifactId>CrazyLogin</artifactId>
            <version>7.23</version>
            <optional>true</optional>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/CrazyLogin v7.23.2.jar</systemPath>
        </dependency>

        <dependency>
            <groupId>ultraauth</groupId>
            <artifactId>ultraauth</artifactId>
            <version>2.0.2</version>
            <optional>true</optional>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/UltraAuth v2.1.2.jar</systemPath>
        </dependency>

        <dependency>
            <groupId>com.github.Mohist-Community.SodionAuth</groupId>
            <artifactId>SodionAuth-Bukkit</artifactId>
            <version>b74392aa34</version>
            <exclusions>
                <exclusion>
                    <groupId>com.github.Mohist-Community.SodionAuth</groupId>
                    <artifactId>SodionAuth-Libs</artifactId>
                </exclusion>
            </exclusions>
            <optional>true</optional>
            <scope>provided</scope>
        </dependency>
    </dependencies>
</project>
