1
<?xml version="1.0" encoding="UTF-8"?>
2
<project xmlns="http://maven.apache.org/POM/4.0.0"
3
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
5
<modelVersion>4.0.0</modelVersion>
8
<artifactId>keycloak-js-parent</artifactId>
9
<groupId>org.keycloak</groupId>
10
<version>999.0.0-SNAPSHOT</version>
11
<relativePath>../../pom.xml</relativePath>
14
<artifactId>keycloak-admin-ui</artifactId>
16
<name>Keycloak Admin UI</name>
17
<description>The user inferface to administrate the Keycloak server.</description>
21
<id>withTranslations</id>
24
<name>!skipCommunityTranslations</name>
30
<artifactId>maven-resources-plugin</artifactId>
33
<id>copy-resources</id>
34
<phase>generate-resources</phase>
36
<goal>copy-resources</goal>
39
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
42
<directory>maven-resources-community</directory>
57
<directory>maven-resources</directory>
60
<directory>dist</directory>
61
<targetPath>theme/keycloak.v2/admin/resources</targetPath>
63
<exclude>index.html</exclude>
64
<exclude>locales/**</exclude>
71
<groupId>com.github.eirslett</groupId>
72
<artifactId>frontend-maven-plugin</artifactId>
76
<goal>install-node-and-pnpm</goal>
85
<arguments>${pnpm.args.install}</arguments>
94
<arguments>run build</arguments>
100
<groupId>com.google.code.maven-replacer-plugin</groupId>
101
<artifactId>maven-replacer-plugin</artifactId>
104
<phase>process-resources</phase>
111
<file>dist/index.html</file>
112
<outputFile>target/classes/theme/keycloak.v2/admin/index.ftl</outputFile>
116
<token>src="./</token>
117
<value>src="${resourceUrl}/</value>
120
<token>href="./</token>
121
<value>href="${resourceUrl}/</value>
124
<token><![CDATA[<link rel="icon" type="image/svg+xml" href="${resourceUrl}/favicon.svg" />]]></token>
125
<value xml:space="preserve"><![CDATA[<link rel="icon" type="${properties.favIconType!"image/svg+xml"}" href="${resourceUrl}${properties.favIcon!"/favicon.svg"}" />]]></value>
128
<token><![CDATA[<meta name="description" content="Web site to manage keycloak" />]]></token>
129
<value xml:space="preserve"><![CDATA[<meta name="description" content="${properties.description!"Web site to manage keycloak"}" />]]></value>
132
<token><![CDATA[<title>Keycloak Administration UI</title>]]></token>
133
<value xml:space="preserve">
135
<title>${properties.title!"Keycloak Administration UI"}</title>
136
<script type="importmap">
139
"react": "${resourceCommonUrl}/vendor/react/react.production.min.js",
140
"react/jsx-runtime": "${resourceCommonUrl}/vendor/react/react-jsx-runtime.production.min.js",
141
"react-dom": "${resourceCommonUrl}/vendor/react-dom/react-dom.production.min.js"
148
<token><![CDATA[</body>]]></token>
149
<value xml:space="preserve">
151
<script id="environment" type="application/json">
153
"loginRealm": "${loginRealm!"master"}",
154
"clientId": "${clientId}",
155
"authServerUrl": "${authServerUrl}",
156
"authUrl": "${authUrl}",
157
"consoleBaseUrl": "${consoleBaseUrl}",
158
"resourceUrl": "${resourceUrl}",
159
"masterRealm": "${masterRealm}",
160
"resourceVersion": "${resourceVersion}",
161
"logo": "${properties.logo!""}",
162
"logoUrl": "${properties.logoUrl!""}"
170
<token><![CDATA[</head>]]></token>
171
<value xml:space="preserve">
173
<#if properties.styles?has_content>
174
<#list properties.styles?split(' ') as style>
175
<link href="${resourceUrl}/${style}" rel="stylesheet"/>