659f0f583f
Signed-off-by: Erik Jan de Wit <erikjan.dewit@gmail.com>
196 lines
No EOL
8 KiB
XML
196 lines
No EOL
8 KiB
XML
<?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>
|
|
<artifactId>keycloak-js-parent</artifactId>
|
|
<groupId>org.keycloak</groupId>
|
|
<version>999.0.0-SNAPSHOT</version>
|
|
<relativePath>../../pom.xml</relativePath>
|
|
</parent>
|
|
|
|
<artifactId>keycloak-account-ui</artifactId>
|
|
|
|
<name>Keycloak Account UI</name>
|
|
<description>The user inferface to manage an account on the Keycloak server.</description>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>withTranslations</id>
|
|
<activation>
|
|
<property>
|
|
<name>!skipCommunityTranslations</name>
|
|
</property>
|
|
</activation>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>copy-resources</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>copy-resources</goal>
|
|
</goals>
|
|
<configuration>
|
|
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
|
|
<resources>
|
|
<resource>
|
|
<directory>maven-resources-community</directory>
|
|
</resource>
|
|
</resources>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
|
|
<build>
|
|
<resources>
|
|
<resource>
|
|
<directory>maven-resources</directory>
|
|
</resource>
|
|
<resource>
|
|
<directory>dist</directory>
|
|
<targetPath>theme/keycloak.v3/account/resources</targetPath>
|
|
<excludes>
|
|
<exclude>index.html</exclude>
|
|
</excludes>
|
|
</resource>
|
|
</resources>
|
|
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.github.eirslett</groupId>
|
|
<artifactId>frontend-maven-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.google.code.maven-replacer-plugin</groupId>
|
|
<artifactId>maven-replacer-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<phase>process-resources</phase>
|
|
<goals>
|
|
<goal>replace</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<file>dist/index.html</file>
|
|
<outputFile>target/classes/theme/keycloak.v3/account/index.ftl</outputFile>
|
|
<regex>false</regex>
|
|
<replacements>
|
|
<replacement>
|
|
<token>src="./</token>
|
|
<value>src="${resourceUrl}/</value>
|
|
</replacement>
|
|
<replacement>
|
|
<token>href="./</token>
|
|
<value>href="${resourceUrl}/</value>
|
|
</replacement>
|
|
<replacement>
|
|
<token><![CDATA[<link rel="icon" type="image/svg+xml" href="${resourceUrl}/favicon.svg" />]]></token>
|
|
<value xml:space="preserve"><![CDATA[<link rel="icon" type="${properties.favIconType!"image/svg+xml"}" href="${resourceUrl}${properties.favIcon!"/favicon.svg"}" />]]></value>
|
|
</replacement>
|
|
<replacement>
|
|
<token><![CDATA[<meta name="description" content="Web site to manage keycloak" />]]></token>
|
|
<value xml:space="preserve"><![CDATA[<meta name="description" content="${properties.description!"Web site to manage keycloak"}" />]]></value>
|
|
</replacement>
|
|
<replacement>
|
|
<token><![CDATA[<title>Account Management</title>]]></token>
|
|
<value xml:space="preserve">
|
|
<![CDATA[
|
|
<title>${properties.title!"Account Management"}</title>
|
|
<script type="importmap">
|
|
{
|
|
"imports": {
|
|
"react": "${resourceCommonUrl}/vendor/react/react.production.min.js",
|
|
"react/jsx-runtime": "${resourceCommonUrl}/vendor/react/react-jsx-runtime.production.min.js",
|
|
"react-dom": "${resourceCommonUrl}/vendor/react-dom/react-dom.production.min.js"
|
|
}
|
|
}
|
|
</script>
|
|
]]></value>
|
|
</replacement>
|
|
<replacement>
|
|
<token><![CDATA[</body>]]></token>
|
|
<value xml:space="preserve">
|
|
<![CDATA[
|
|
<script id="environment" type="application/json">
|
|
{
|
|
"authUrl": "${authUrl}",
|
|
"baseUrl": "${baseUrl}",
|
|
"realm": "${realm.name}",
|
|
"clientId": "${clientId}",
|
|
"resourceUrl": "${resourceUrl}",
|
|
"logo": "${properties.logo!""}",
|
|
"logoUrl": "${properties.logoUrl!""}",
|
|
"locale": "${locale}",
|
|
"features": {
|
|
"isRegistrationEmailAsUsername": ${realm.registrationEmailAsUsername?c},
|
|
"isEditUserNameAllowed": ${realm.editUsernameAllowed?c},
|
|
"isInternationalizationEnabled": ${realm.isInternationalizationEnabled()?c},
|
|
"isLinkedAccountsEnabled": ${realm.identityFederationEnabled?c},
|
|
"isMyResourcesEnabled": ${(realm.userManagedAccessAllowed && isAuthorizationEnabled)?c},
|
|
"deleteAccountAllowed": ${deleteAccountAllowed?c},
|
|
"updateEmailFeatureEnabled": ${updateEmailFeatureEnabled?c},
|
|
"updateEmailActionEnabled": ${updateEmailActionEnabled?c},
|
|
"isViewGroupsEnabled": ${isViewGroupsEnabled?c}
|
|
},
|
|
"referrerName": "${referrerName!""}",
|
|
"referrerUrl": "${referrer_uri!""}"
|
|
}
|
|
</script>
|
|
</body>
|
|
]]>
|
|
</value>
|
|
</replacement>
|
|
<replacement>
|
|
<token><![CDATA[</head>]]></token>
|
|
<value xml:space="preserve">
|
|
<![CDATA[
|
|
<#if properties.scripts?has_content>
|
|
<#list properties.scripts?split(' ') as script>
|
|
<script src="${resourceUrl}/${script}"></script>
|
|
</#list>
|
|
</#if>
|
|
<#if properties.styles?has_content>
|
|
<#list properties.styles?split(' ') as style>
|
|
<link href="${resourceUrl}/${style}" rel="stylesheet"/>
|
|
</#list>
|
|
</#if>
|
|
</head>
|
|
]]>
|
|
</value>
|
|
</replacement>
|
|
</replacements>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.github.eirslett</groupId>
|
|
<artifactId>frontend-maven-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>pack</id>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>pnpm</goal>
|
|
</goals>
|
|
<configuration>
|
|
<arguments>pack --pack-destination=target</arguments>
|
|
<systemPropertyVariables>
|
|
<LIB>true</LIB>
|
|
</systemPropertyVariables>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project> |