<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>eu.solven.adhoc</groupId>
		<artifactId>pivotable</artifactId>
		<version>0.0.13</version>
	</parent>

	<artifactId>pivotable-server</artifactId>
	<!-- `name` is required by Sonatype-->
	<name>${project.groupId}:${project.artifactId}</name>

	<scm>
		<tag>v0.0.13</tag>
	</scm>

	<properties>
		<jacoco.branch.ratio>0.46</jacoco.branch.ratio>
		<jacoco.instruction.ratio>0.78</jacoco.instruction.ratio>

		<springdoc-openapi.version>2.8.14</springdoc-openapi.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>eu.solven.adhoc</groupId>
			<artifactId>pivotable-server-core</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<groupId>eu.solven.adhoc</groupId>
			<artifactId>pivotable-authorization</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<groupId>eu.solven.adhoc</groupId>
			<artifactId>pivotable-js</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<!-- Used by some examples datasets in InjectSimpleCubesConfig -->
			<groupId>org.duckdb</groupId>
			<artifactId>duckdb_jdbc</artifactId>
			<version>${duckdb.version}</version>
			<optional>true</optional>
		</dependency>

		<dependency>
			<groupId>com.ezylang</groupId>
			<artifactId>EvalEx</artifactId>
			<version>${evalex.ezylang.version}</version>
			<!-- Many projects may not use EvalTranformation-->
			<optional>true</optional>
		</dependency>

		<!-- Used by Pixar example -->
		<dependency>
			<groupId>com.opencsv</groupId>
			<artifactId>opencsv</artifactId>
			<version>5.12.0</version>
			<!-- Many projects may not use CSVParsing-->
			<optional>true</optional>
		</dependency>
		<!-- Used by Simple example -->
		<dependency>
			<groupId>net.datafaker</groupId>
			<artifactId>datafaker</artifactId>
			<version>2.5.3</version>
			<!-- Many projects may not use CSVParsing-->
			<optional>true</optional>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-oauth2-client</artifactId>
		</dependency>

		<!-- tools -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springdoc</groupId>
			<!--artifactId>springdoc-openapi-starter-webmvc-ui</artifactId-->
			<artifactId>springdoc-openapi-starter-webflux-api</artifactId>
			<version>${springdoc-openapi.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-devtools</artifactId>
			<scope>runtime</scope>
			<optional>true</optional>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-graphql</artifactId>
		</dependency>

		<dependency>
			<groupId>org.webjars</groupId>
			<artifactId>jquery</artifactId>
			<version>3.7.1</version>
		</dependency>
		<dependency>
			<groupId>org.webjars</groupId>
			<artifactId>bootstrap</artifactId>
			<version>5.3.8</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.webjars.npm/vue -->
		<dependency>
			<groupId>org.webjars.npm</groupId>
			<artifactId>vue</artifactId>
			<version>3.5.24</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.webjars.npm/vue-router -->
		<dependency>
			<groupId>org.webjars.npm</groupId>
			<artifactId>vue-router</artifactId>
			<version>4.5.1</version>
		</dependency>

		<dependency>
			<groupId>org.springdoc</groupId>
			<artifactId>springdoc-openapi-starter-webflux-ui</artifactId>
			<version>${springdoc-openapi.version}</version>
		</dependency>

		<dependency>
			<!-- https://docs.spring.io/spring-session/reference/guides/boot-redis.html -->
			<groupId>org.springframework.session</groupId>
			<artifactId>spring-session-data-redis</artifactId>
		</dependency>

		<dependency>
			<groupId>org.webjars</groupId>
			<artifactId>webjars-locator-core</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<!-- https://github.com/skyscreamer/JSONassert/pull/194 -->
					<groupId>com.vaadin.external.google</groupId>
					<artifactId>android-json</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>io.projectreactor</groupId>
			<artifactId>reactor-test</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<!-- @WithMockUser -->
			<groupId>org.springframework.security</groupId>
			<artifactId>spring-security-test</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<!-- https://www.baeldung.com/spring-embedded-redis -->
			<!-- https://github.com/codemonstur/embedded-redis -->
			<groupId>com.github.codemonstur</groupId>
			<artifactId>embedded-redis</artifactId>
			<version>1.4.3</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<!-- Used to check links in HTML -->
			<groupId>org.jsoup</groupId>
			<artifactId>jsoup</artifactId>
			<version>1.21.2</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>io.github.solven-eu.pepper</groupId>
			<artifactId>pepper-unittest</artifactId>
			<version>${pepper.version}</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<classifier>exec</classifier>

					<mainClass>eu.solven.adhoc.pivotable.app.PivotableServerApplication</mainClass>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
