<?xml version="1.0" encoding="UTF-8"?>
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>cz.masci.commons</groupId>
        <artifactId>commons-springfx</artifactId>
        <version>0.0.30</version>
    </parent>

    <artifactId>commons-springfx-bom</artifactId>

    <name>Commons: SpringFX - BOM</name>
    <packaging>pom</packaging>

    <properties>
        <java.version>21</java.version>

        <!-- dependency versions -->
        <javafx.weaver.version>1.3.0</javafx.weaver.version>
        <javafx.version>21</javafx.version>
        <materialfx.version>11.17.0</materialfx.version>
        <spring.version>3.3.0</spring.version>

        <!-- utility versions -->
        <dirtyfx.version>0.1.2</dirtyfx.version>
        <reactfx.version>2.0-M5</reactfx.version>
        <apache.lang.version>3.12.0</apache.lang.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <!-- commons spring fx -->
            <dependency>
                <groupId>cz.masci.commons</groupId>
                <artifactId>commons-springfx-fxml</artifactId>
                <version>${project.parent.version}</version>
            </dependency>
            <dependency>
                <groupId>cz.masci.commons</groupId>
                <artifactId>commons-springfx-data</artifactId>
                <version>${project.parent.version}</version>
            </dependency>
            <dependency>
                <groupId>cz.masci.commons</groupId>
                <artifactId>commons-springfx-mve</artifactId>
                <version>${project.parent.version}</version>
            </dependency>
            <dependency>
                <groupId>cz.masci.commons</groupId>
                <artifactId>commons-springfx-mvci</artifactId>
                <version>${project.parent.version}</version>
            </dependency>

            <!-- spring fx -->
            <dependency>
                <groupId>net.rgielen</groupId>
                <artifactId>javafx-weaver-spring-boot-starter</artifactId>
                <version>${javafx.weaver.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-autoconfigure</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <!-- open jfx -->
            <dependency>
                <groupId>org.openjfx</groupId>
                <artifactId>javafx-base</artifactId>
                <version>${javafx.version}</version>
            </dependency>
            <dependency>
                <groupId>org.openjfx</groupId>
                <artifactId>javafx-controls</artifactId>
                <version>${javafx.version}</version>
            </dependency>
            <dependency>
                <groupId>org.openjfx</groupId>
                <artifactId>javafx-graphics</artifactId>
                <version>${javafx.version}</version>
            </dependency>
            <dependency>
                <groupId>org.openjfx</groupId>
                <artifactId>javafx-fxml</artifactId>
                <version>${javafx.version}</version>
            </dependency>

            <!-- Material FX -->
            <dependency>
                <groupId>io.github.palexdev</groupId>
                <artifactId>materialfx</artifactId>
                <version>${materialfx.version}</version>
            </dependency>

            <!-- utils -->
            <dependency>
                <groupId>org.nield</groupId>
                <artifactId>dirtyfx</artifactId>
                <version>${dirtyfx.version}</version>
            </dependency>
            <dependency>
                <groupId>org.reactfx</groupId>
                <artifactId>reactfx</artifactId>
                <version>${reactfx.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>${apache.lang.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

</project>