<?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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.springframework.ai</groupId>
		<artifactId>spring-ai</artifactId>
		<version>1.0.0-SNAPSHOT</version>
	</parent>
	<artifactId>spring-ai-core</artifactId>
	<packaging>jar</packaging>
	<name>Spring AI Core</name>
	<description>Core domain for AI programming</description>
	<url>https://github.com/spring-projects/spring-ai</url>

	<scm>
		<url>https://github.com/spring-projects/spring-ai</url>
		<connection>git://github.com/spring-projects/spring-ai.git</connection>
		<developerConnection>git@github.com:spring-projects/spring-ai.git</developerConnection>
	</scm>

	<properties>
		<antlr.version>4.13.1</antlr.version>
	</properties>

	<dependencies>

		<dependency>
			<groupId>io.swagger.core.v3</groupId>
			<artifactId>swagger-annotations</artifactId>
			<version>${swagger-annotations.version}</version>
		</dependency>

		<dependency>
			<groupId>com.github.victools</groupId>
			<artifactId>jsonschema-module-swagger-2</artifactId>
			<version>${jsonschema.version}</version>
		</dependency>

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-function-context</artifactId>
			<version>${spring-cloud-function-context.version}</version>
		</dependency>

		<!-- production dependencies -->
		<dependency>
			<groupId>org.antlr</groupId>
			<artifactId>stringtemplate</artifactId>
			<version>${stringtemplate.version}</version>
		</dependency>

		<dependency>
			<groupId>org.antlr</groupId>
			<artifactId>antlr4-runtime</artifactId>
			<version>${antlr.version}</version>
		</dependency>

		<dependency>
			<groupId>io.projectreactor</groupId>
			<artifactId>reactor-core</artifactId>
		</dependency>


		<!-- Spring Framework -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
		</dependency>


		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-messaging</artifactId>
		</dependency>

		<dependency>
			<groupId>com.knuddels</groupId>
			<artifactId>jtokkit</artifactId>
			<version>${jtokkit.version}</version>
		</dependency>

		<dependency>
			<groupId>com.github.victools</groupId>
			<artifactId>jsonschema-generator</artifactId>
			<version>${jsonschema.version}</version>
		</dependency>

		<dependency>
			<groupId>com.github.victools</groupId>
			<artifactId>jsonschema-module-jackson</artifactId>
			<version>${jsonschema.version}</version>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>${jackson.version}</version>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.datatype</groupId>
			<artifactId>jackson-datatype-jsr310</artifactId>
			<version>${jackson.version}</version>
		</dependency>

		<!-- test dependencies -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

    </dependencies>

	<profiles>
		<profile>
			<id>antlr4</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>org.antlr</groupId>
						<artifactId>antlr4-maven-plugin</artifactId>
						<version>${antlr.version}</version>
						<configuration>
							<sourceDirectory>${basedir}/src/main/resources/antlr4</sourceDirectory>
							<outputDirectory>${basedir}/src/main/java</outputDirectory>
							<!-- <outputDirectory>${project.build.directory}/generated-sources/antlr4</outputDirectory> -->
							<visitor>true</visitor>
						</configuration>
						<executions>
							<execution>
								<goals>
									<goal>antlr4</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>


</project>
