mirror of
https://github.com/keycloak/keycloak.git
synced 2026-01-09 15:02:05 -03:30
Move root PNPM workspace to js directory (#35456)
Closes #35455 Signed-off-by: Jon Koops <jonkoops@gmail.com>
This commit is contained in:
parent
9861acc2aa
commit
faf36dd2f0
6
.github/CODEOWNERS
vendored
6
.github/CODEOWNERS
vendored
@ -46,12 +46,6 @@
|
|||||||
# UI (@keycloak/ui-maintainers)
|
# UI (@keycloak/ui-maintainers)
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
|
|
||||||
/eslint.config.js @keycloak/ui-maintainers
|
|
||||||
/package.json @keycloak/ui-maintainers
|
|
||||||
/pnpm-lock.yaml @keycloak/ui-maintainers
|
|
||||||
/pnpm-workspace.yaml @keycloak/ui-maintainers
|
|
||||||
/tsconfig.eslint.json @keycloak/ui-maintainers
|
|
||||||
/tsconfig.json @keycloak/ui-maintainers
|
|
||||||
/themes/ @keycloak/ui-maintainers @keycloak/maintainers
|
/themes/ @keycloak/ui-maintainers @keycloak/maintainers
|
||||||
/js/ @keycloak/ui-maintainers
|
/js/ @keycloak/ui-maintainers
|
||||||
/js/**/maven-resources-community/**/messages_*.properties @keycloak/ui-maintainers @keycloak/maintainers
|
/js/**/maven-resources-community/**/messages_*.properties @keycloak/ui-maintainers @keycloak/maintainers
|
||||||
|
|||||||
6
.github/actions/conditional/conditions
vendored
6
.github/actions/conditional/conditions
vendored
@ -32,12 +32,6 @@ operator/ operator
|
|||||||
docs/guides/ guides
|
docs/guides/ guides
|
||||||
docs/documentation/ documentation
|
docs/documentation/ documentation
|
||||||
|
|
||||||
eslint.config.js js
|
|
||||||
package.json js
|
|
||||||
pnpm-lock.yaml js
|
|
||||||
pnpm-workspace.yaml js
|
|
||||||
tsconfig.eslint.json js
|
|
||||||
tsconfig.json js
|
|
||||||
js/ js
|
js/ js
|
||||||
rest/admin-ui-ext/ js
|
rest/admin-ui-ext/ js
|
||||||
services/ js
|
services/ js
|
||||||
|
|||||||
4
.github/actions/node-cache/action.yml
vendored
4
.github/actions/node-cache/action.yml
vendored
@ -8,8 +8,8 @@ runs:
|
|||||||
id: tooling-versions
|
id: tooling-versions
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
echo "node=$(cat pom.xml | grep '<node.version>' | cut -d '>' -f 2 | cut -d '<' -f 1 | cut -c 2-)" >> $GITHUB_OUTPUT
|
echo "node=$(cat js/pom.xml | grep '<node.version>' | cut -d '>' -f 2 | cut -d '<' -f 1 | cut -c 2-)" >> $GITHUB_OUTPUT
|
||||||
echo "pnpm=$(cat pom.xml | grep '<pnpm.version>' | cut -d '>' -f 2 | cut -d '<' -f 1 | cut -c 1-)" >> $GITHUB_OUTPUT
|
echo "pnpm=$(cat js/pom.xml | grep '<pnpm.version>' | cut -d '>' -f 2 | cut -d '<' -f 1 | cut -c 1-)" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
# Downloading Node.js often fails due to network issues, therefore we cache the artifacts downloaded by the frontend plugin.
|
# Downloading Node.js often fails due to network issues, therefore we cache the artifacts downloaded by the frontend plugin.
|
||||||
- uses: actions/cache@v4
|
- uses: actions/cache@v4
|
||||||
|
|||||||
1
.github/actions/pnpm-setup/action.yml
vendored
1
.github/actions/pnpm-setup/action.yml
vendored
@ -29,6 +29,7 @@ runs:
|
|||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
shell: bash
|
shell: bash
|
||||||
run: pnpm install --prefer-offline --frozen-lockfile
|
run: pnpm install --prefer-offline --frozen-lockfile
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
# This step is only needed to ensure that the Cypress binary is installed.
|
# This step is only needed to ensure that the Cypress binary is installed.
|
||||||
# If the binary was retrieved from the cache, this step is a no-op.
|
# If the binary was retrieved from the cache, this step is a no-op.
|
||||||
|
|||||||
14
.github/workflows/js-ci.yml
vendored
14
.github/workflows/js-ci.yml
vendored
@ -69,8 +69,10 @@ jobs:
|
|||||||
- uses: ./.github/actions/pnpm-setup
|
- uses: ./.github/actions/pnpm-setup
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
ui-shared:
|
ui-shared:
|
||||||
name: UI Shared
|
name: UI Shared
|
||||||
@ -85,8 +87,10 @@ jobs:
|
|||||||
- uses: ./.github/actions/pnpm-setup
|
- uses: ./.github/actions/pnpm-setup
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
account-ui:
|
account-ui:
|
||||||
name: Account UI
|
name: Account UI
|
||||||
@ -101,8 +105,10 @@ jobs:
|
|||||||
- uses: ./.github/actions/pnpm-setup
|
- uses: ./.github/actions/pnpm-setup
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
admin-ui:
|
admin-ui:
|
||||||
name: Admin UI
|
name: Admin UI
|
||||||
@ -117,12 +123,16 @@ jobs:
|
|||||||
- uses: ./.github/actions/pnpm-setup
|
- uses: ./.github/actions/pnpm-setup
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} lint
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} test
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} test
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} build
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} cy:check-types
|
- run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} cy:check-types
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
account-ui-e2e:
|
account-ui-e2e:
|
||||||
name: Account UI E2E
|
name: Account UI E2E
|
||||||
@ -156,9 +166,11 @@ jobs:
|
|||||||
|
|
||||||
- name: Install Playwright browsers
|
- name: Install Playwright browsers
|
||||||
run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} exec playwright install --with-deps
|
run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} exec playwright install --with-deps
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- name: Run Playwright tests
|
- name: Run Playwright tests
|
||||||
run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} test
|
run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} test
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- name: Upload Playwright report
|
- name: Upload Playwright report
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
@ -228,6 +240,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Compile Admin Client
|
- name: Compile Admin Client
|
||||||
run: pnpm --fail-if-no-match --filter @keycloak/keycloak-admin-client build
|
run: pnpm --fail-if-no-match --filter @keycloak/keycloak-admin-client build
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- name: Download Keycloak server
|
- name: Download Keycloak server
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
@ -249,6 +262,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Start LDAP server
|
- name: Start LDAP server
|
||||||
run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} cy:ldap-server &
|
run: pnpm --fail-if-no-match --filter ${{ env.WORKSPACE }} cy:ldap-server &
|
||||||
|
working-directory: js
|
||||||
|
|
||||||
- name: Run Cypress
|
- name: Run Cypress
|
||||||
uses: cypress-io/github-action@v6
|
uses: cypress-io/github-action@v6
|
||||||
|
|||||||
15
.gitignore
vendored
15
.gitignore
vendored
@ -86,24 +86,9 @@ quarkus/data/*.db
|
|||||||
# Git ephemeral files
|
# Git ephemeral files
|
||||||
*.versionsBackup
|
*.versionsBackup
|
||||||
|
|
||||||
# frontend-maven-plugin
|
|
||||||
node
|
|
||||||
|
|
||||||
# Wireit
|
|
||||||
.wireit
|
|
||||||
|
|
||||||
# Vite
|
|
||||||
dist
|
|
||||||
|
|
||||||
!/quarkus/dist
|
!/quarkus/dist
|
||||||
!/quarkus/**/src/**/dist
|
!/quarkus/**/src/**/dist
|
||||||
|
|
||||||
# ESLint
|
|
||||||
.eslintcache
|
|
||||||
|
|
||||||
# NPM
|
|
||||||
node_modules
|
|
||||||
|
|
||||||
# SDKMAM environment file
|
# SDKMAM environment file
|
||||||
.sdkmanrc
|
.sdkmanrc
|
||||||
|
|
||||||
|
|||||||
14
js/.gitignore
vendored
Normal file
14
js/.gitignore
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# frontend-maven-plugin
|
||||||
|
node
|
||||||
|
|
||||||
|
# Wireit
|
||||||
|
.wireit
|
||||||
|
|
||||||
|
# Vite
|
||||||
|
dist
|
||||||
|
|
||||||
|
# ESLint
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
|
# NPM
|
||||||
|
node_modules
|
||||||
@ -7,6 +7,9 @@ if [ ! -f "$FILE" ]; then
|
|||||||
exit 0;
|
exit 0;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Change to the js directory.
|
||||||
|
cd js
|
||||||
|
|
||||||
# Exit if dependencies are not installed.
|
# Exit if dependencies are not installed.
|
||||||
if [ ! -d "node_modules" ]; then
|
if [ ! -d "node_modules" ]; then
|
||||||
exit 0;
|
exit 0;
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"extends": "../../../tsconfig.json",
|
"extends": "../../tsconfig.json",
|
||||||
"include": ["src"],
|
"include": ["src"],
|
||||||
"exclude": ["**/*.test.ts", "**/*.test.tsx"]
|
"exclude": ["**/*.test.ts", "**/*.test.tsx"]
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import type GroupRepresentation from "@keycloak/keycloak-admin-client/lib/defs/groupRepresentation";
|
import type GroupRepresentation from "@keycloak/keycloak-admin-client/lib/defs/groupRepresentation";
|
||||||
import UserRepresentation from "js/libs/keycloak-admin-client/lib/defs/userRepresentation";
|
import UserRepresentation from "@keycloak/keycloak-admin-client/lib/defs/userRepresentation";
|
||||||
import { Modal, ModalVariant } from "@patternfly/react-core";
|
import { Modal, ModalVariant } from "@patternfly/react-core";
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"extends": "../../../tsconfig.json",
|
"extends": "../../tsconfig.json",
|
||||||
"include": ["src"],
|
"include": ["src"],
|
||||||
"exclude": ["**/*.test.ts", "**/*.test.tsx"],
|
"exclude": ["**/*.test.ts", "**/*.test.tsx"],
|
||||||
"references": [{ "path": "./tsconfig.node.json" }]
|
"references": [{ "path": "./tsconfig.node.json" }]
|
||||||
|
|||||||
@ -161,16 +161,16 @@ export default tseslint.config(
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
...playwright.configs["flat/recommended"],
|
...playwright.configs["flat/recommended"],
|
||||||
files: ["js/apps/account-ui/test/**"],
|
files: ["apps/account-ui/test/**"],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
files: ["js/libs/keycloak-admin-client/test/**"],
|
files: ["libs/keycloak-admin-client/test/**"],
|
||||||
rules: {
|
rules: {
|
||||||
"@typescript-eslint/no-unused-expressions": "off",
|
"@typescript-eslint/no-unused-expressions": "off",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
files: ["js/libs/keycloak-admin-client/src/**"],
|
files: ["libs/keycloak-admin-client/src/**"],
|
||||||
rules: {
|
rules: {
|
||||||
"@typescript-eslint/no-empty-object-type": "off",
|
"@typescript-eslint/no-empty-object-type": "off",
|
||||||
},
|
},
|
||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"extends": "../../../tsconfig.json",
|
"extends": "../../tsconfig.json",
|
||||||
"include": ["src"],
|
"include": ["src"],
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"module": "Node16",
|
"module": "Node16",
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"extends": "../../../tsconfig.json",
|
"extends": "../../tsconfig.json",
|
||||||
"include": ["src"],
|
"include": ["src"],
|
||||||
"exclude": ["**/*.test.ts", "**/*.test.tsx"]
|
"exclude": ["**/*.test.ts", "**/*.test.tsx"]
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
"type": "module",
|
"type": "module",
|
||||||
"packageManager": "pnpm@9.14.4+sha512.c8180b3fbe4e4bca02c94234717896b5529740a6cbadf19fa78254270403ea2f27d4e1d46a08a0f56c89b63dc8ebfd3ee53326da720273794e6200fcf0d184ab",
|
"packageManager": "pnpm@9.14.4+sha512.c8180b3fbe4e4bca02c94234717896b5529740a6cbadf19fa78254270403ea2f27d4e1d46a08a0f56c89b63dc8ebfd3ee53326da720273794e6200fcf0d184ab",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"prepare": "husky js/.husky"
|
"prepare": "cd .. && husky js/.husky"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@eslint/compat": "^1.2.3",
|
"@eslint/compat": "^1.2.3",
|
||||||
30
pnpm-lock.yaml → js/pnpm-lock.yaml
generated
30
pnpm-lock.yaml → js/pnpm-lock.yaml
generated
@ -72,7 +72,7 @@ importers:
|
|||||||
specifier: ^0.14.9
|
specifier: ^0.14.9
|
||||||
version: 0.14.9
|
version: 0.14.9
|
||||||
|
|
||||||
js/apps/account-ui:
|
apps/account-ui:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@keycloak/keycloak-ui-shared':
|
'@keycloak/keycloak-ui-shared':
|
||||||
specifier: workspace:*
|
specifier: workspace:*
|
||||||
@ -148,7 +148,7 @@ importers:
|
|||||||
specifier: ^4.3.0
|
specifier: ^4.3.0
|
||||||
version: 4.3.0(@types/node@22.10.1)(rollup@4.27.4)(typescript@5.7.2)(vite@6.0.1(@types/node@22.10.1)(lightningcss@1.28.2)(terser@5.36.0)(tsx@4.19.2)(yaml@2.5.1))
|
version: 4.3.0(@types/node@22.10.1)(rollup@4.27.4)(typescript@5.7.2)(vite@6.0.1(@types/node@22.10.1)(lightningcss@1.28.2)(terser@5.36.0)(tsx@4.19.2)(yaml@2.5.1))
|
||||||
|
|
||||||
js/apps/admin-ui:
|
apps/admin-ui:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@keycloak/keycloak-admin-client':
|
'@keycloak/keycloak-admin-client':
|
||||||
specifier: workspace:*
|
specifier: workspace:*
|
||||||
@ -176,7 +176,7 @@ importers:
|
|||||||
version: 5.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 5.4.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
admin-ui:
|
admin-ui:
|
||||||
specifier: 'file:'
|
specifier: 'file:'
|
||||||
version: '@keycloak/keycloak-admin-ui@file:js/apps/admin-ui(@types/react@18.3.12)(typescript@5.7.2)'
|
version: '@keycloak/keycloak-admin-ui@file:apps/admin-ui(@types/react@18.3.12)(typescript@5.7.2)'
|
||||||
dagre:
|
dagre:
|
||||||
specifier: ^0.8.5
|
specifier: ^0.8.5
|
||||||
version: 0.8.5
|
version: 0.8.5
|
||||||
@ -299,7 +299,7 @@ importers:
|
|||||||
specifier: ^2.1.6
|
specifier: ^2.1.6
|
||||||
version: 2.1.6(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.28.2)(terser@5.36.0)(tsx@4.19.2)(yaml@2.5.1)
|
version: 2.1.6(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.28.2)(terser@5.36.0)(tsx@4.19.2)(yaml@2.5.1)
|
||||||
|
|
||||||
js/apps/create-keycloak-theme:
|
apps/create-keycloak-theme:
|
||||||
dependencies:
|
dependencies:
|
||||||
chalk:
|
chalk:
|
||||||
specifier: ^5.3.0
|
specifier: ^5.3.0
|
||||||
@ -317,7 +317,7 @@ importers:
|
|||||||
specifier: ^3.27.0
|
specifier: ^3.27.0
|
||||||
version: 3.27.0
|
version: 3.27.0
|
||||||
|
|
||||||
js/apps/keycloak-server:
|
apps/keycloak-server:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@octokit/rest':
|
'@octokit/rest':
|
||||||
specifier: ^21.0.2
|
specifier: ^21.0.2
|
||||||
@ -335,7 +335,7 @@ importers:
|
|||||||
specifier: ^3.0.6
|
specifier: ^3.0.6
|
||||||
version: 3.0.6
|
version: 3.0.6
|
||||||
|
|
||||||
js/libs/keycloak-admin-client:
|
libs/keycloak-admin-client:
|
||||||
dependencies:
|
dependencies:
|
||||||
camelize-ts:
|
camelize-ts:
|
||||||
specifier: ^3.0.0
|
specifier: ^3.0.0
|
||||||
@ -375,9 +375,9 @@ importers:
|
|||||||
specifier: ^10.9.2
|
specifier: ^10.9.2
|
||||||
version: 10.9.2(@swc/core@1.9.3)(@types/node@22.10.1)(typescript@5.7.2)
|
version: 10.9.2(@swc/core@1.9.3)(@types/node@22.10.1)(typescript@5.7.2)
|
||||||
|
|
||||||
js/libs/keycloak-js: {}
|
libs/keycloak-js: {}
|
||||||
|
|
||||||
js/libs/ui-shared:
|
libs/ui-shared:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@keycloak/keycloak-admin-client':
|
'@keycloak/keycloak-admin-client':
|
||||||
specifier: workspace:*
|
specifier: workspace:*
|
||||||
@ -447,7 +447,7 @@ importers:
|
|||||||
specifier: ^2.1.6
|
specifier: ^2.1.6
|
||||||
version: 2.1.6(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.28.2)(terser@5.36.0)(tsx@4.19.2)(yaml@2.5.1)
|
version: 2.1.6(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.28.2)(terser@5.36.0)(tsx@4.19.2)(yaml@2.5.1)
|
||||||
|
|
||||||
js/themes-vendor:
|
themes-vendor:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@noble/hashes':
|
'@noble/hashes':
|
||||||
specifier: ^1.6.1
|
specifier: ^1.6.1
|
||||||
@ -1081,8 +1081,8 @@ packages:
|
|||||||
'@jridgewell/trace-mapping@0.3.9':
|
'@jridgewell/trace-mapping@0.3.9':
|
||||||
resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
|
resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
|
||||||
|
|
||||||
'@keycloak/keycloak-admin-ui@file:js/apps/admin-ui':
|
'@keycloak/keycloak-admin-ui@file:apps/admin-ui':
|
||||||
resolution: {directory: js/apps/admin-ui, type: directory}
|
resolution: {directory: apps/admin-ui, type: directory}
|
||||||
|
|
||||||
'@kwsites/file-exists@1.1.1':
|
'@kwsites/file-exists@1.1.1':
|
||||||
resolution: {integrity: sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==}
|
resolution: {integrity: sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==}
|
||||||
@ -5509,10 +5509,10 @@ snapshots:
|
|||||||
'@jridgewell/resolve-uri': 3.1.2
|
'@jridgewell/resolve-uri': 3.1.2
|
||||||
'@jridgewell/sourcemap-codec': 1.5.0
|
'@jridgewell/sourcemap-codec': 1.5.0
|
||||||
|
|
||||||
'@keycloak/keycloak-admin-ui@file:js/apps/admin-ui(@types/react@18.3.12)(typescript@5.7.2)':
|
'@keycloak/keycloak-admin-ui@file:apps/admin-ui(@types/react@18.3.12)(typescript@5.7.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@keycloak/keycloak-admin-client': link:js/libs/keycloak-admin-client
|
'@keycloak/keycloak-admin-client': link:libs/keycloak-admin-client
|
||||||
'@keycloak/keycloak-ui-shared': link:js/libs/ui-shared
|
'@keycloak/keycloak-ui-shared': link:libs/ui-shared
|
||||||
'@patternfly/patternfly': 5.4.2
|
'@patternfly/patternfly': 5.4.2
|
||||||
'@patternfly/react-code-editor': 5.4.13(monaco-editor@0.52.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
'@patternfly/react-code-editor': 5.4.13(monaco-editor@0.52.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
'@patternfly/react-core': 5.4.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
'@patternfly/react-core': 5.4.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
@ -5524,7 +5524,7 @@ snapshots:
|
|||||||
flat: 6.0.1
|
flat: 6.0.1
|
||||||
i18next: 24.0.2(typescript@5.7.2)
|
i18next: 24.0.2(typescript@5.7.2)
|
||||||
i18next-http-backend: 3.0.1
|
i18next-http-backend: 3.0.1
|
||||||
keycloak-js: link:js/libs/keycloak-js
|
keycloak-js: link:libs/keycloak-js
|
||||||
lodash-es: 4.17.21
|
lodash-es: 4.17.21
|
||||||
monaco-editor: 0.52.0
|
monaco-editor: 0.52.0
|
||||||
p-debounce: 4.0.0
|
p-debounce: 4.0.0
|
||||||
4
js/pnpm-workspace.yaml
Normal file
4
js/pnpm-workspace.yaml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
packages:
|
||||||
|
- apps/*
|
||||||
|
- libs/*
|
||||||
|
- themes-vendor
|
||||||
87
js/pom.xml
87
js/pom.xml
@ -25,7 +25,94 @@
|
|||||||
</modules>
|
</modules>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
<node.version>v22.11.0</node.version>
|
||||||
|
<pnpm.version>9.14.4</pnpm.version>
|
||||||
|
<!-- The clean step is skipped on Windows -->
|
||||||
|
<js.skip.clean>false</js.skip.clean>
|
||||||
<!-- The JavaScript projects use the non-standard 'src' folder for their sources, therefore, name it here explicitly -->
|
<!-- The JavaScript projects use the non-standard 'src' folder for their sources, therefore, name it here explicitly -->
|
||||||
<maven.build.cache.input.1>src</maven.build.cache.input.1>
|
<maven.build.cache.input.1>src</maven.build.cache.input.1>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<pluginManagement>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>com.github.eirslett</groupId>
|
||||||
|
<artifactId>frontend-maven-plugin</artifactId>
|
||||||
|
<version>${frontend.plugin.version}</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>install-node-and-pnpm</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>pnpm-install</id>
|
||||||
|
<goals>
|
||||||
|
<goal>pnpm</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<arguments>install --prefer-offline --frozen-lockfile --ignore-scripts</arguments>
|
||||||
|
<workingDirectory>${maven.multiModuleProjectDirectory}/js</workingDirectory>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>pnpm-build</id>
|
||||||
|
<goals>
|
||||||
|
<goal>pnpm</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<arguments>build</arguments>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<configuration>
|
||||||
|
<nodeVersion>${node.version}</nodeVersion>
|
||||||
|
<pnpmVersion>${pnpm.version}</pnpmVersion>
|
||||||
|
<installDirectory>${maven.multiModuleProjectDirectory}/js</installDirectory>
|
||||||
|
<pnpmInheritsProxyConfigFromMaven>false</pnpmInheritsProxyConfigFromMaven>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-clean-plugin</artifactId>
|
||||||
|
<configuration>
|
||||||
|
<followSymLinks>false</followSymLinks>
|
||||||
|
<!-- Skip this step if on windows -->
|
||||||
|
<skip>${js.skip.clean}</skip>
|
||||||
|
<filesets>
|
||||||
|
<fileset>
|
||||||
|
<directory>${basedir}</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**/.wireit/**</include>
|
||||||
|
<include>**/node_modules/**</include>
|
||||||
|
</includes>
|
||||||
|
</fileset>
|
||||||
|
<!-- include all non-maven projects here as well -->
|
||||||
|
<fileset>
|
||||||
|
<directory>js/apps/keycloak-server</directory>
|
||||||
|
<includes>
|
||||||
|
<include>server/**</include>
|
||||||
|
</includes>
|
||||||
|
</fileset>
|
||||||
|
</filesets>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</pluginManagement>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>clean-when-not-on-windows</id>
|
||||||
|
<activation>
|
||||||
|
<os>
|
||||||
|
<family>windows</family>
|
||||||
|
</os>
|
||||||
|
</activation>
|
||||||
|
<properties>
|
||||||
|
<js.skip.clean>true</js.skip.clean>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
@ -1,4 +0,0 @@
|
|||||||
packages:
|
|
||||||
- js/apps/*
|
|
||||||
- js/libs/*
|
|
||||||
- js/themes-vendor
|
|
||||||
81
pom.xml
81
pom.xml
@ -232,13 +232,6 @@
|
|||||||
<!-- Version suffix that is appended to directories. Default is the maven GAV version but this can be edited to use a short form version -->
|
<!-- Version suffix that is appended to directories. Default is the maven GAV version but this can be edited to use a short form version -->
|
||||||
<server.output.dir.version>${project.version}</server.output.dir.version>
|
<server.output.dir.version>${project.version}</server.output.dir.version>
|
||||||
|
|
||||||
<!-- Frontend -->
|
|
||||||
<node.version>v22.11.0</node.version>
|
|
||||||
<pnpm.version>9.14.4</pnpm.version>
|
|
||||||
<pnpm.args.install>install --prefer-offline --frozen-lockfile --ignore-scripts</pnpm.args.install>
|
|
||||||
<!-- The clean step is skipped on Windows -->
|
|
||||||
<js.skip.clean>false</js.skip.clean>
|
|
||||||
|
|
||||||
<!-- Set to true on release to update proto.lock files -->
|
<!-- Set to true on release to update proto.lock files -->
|
||||||
<commitProtoLockChanges>false</commitProtoLockChanges>
|
<commitProtoLockChanges>false</commitProtoLockChanges>
|
||||||
<skipProtoLock>false</skipProtoLock>
|
<skipProtoLock>false</skipProtoLock>
|
||||||
@ -1461,68 +1454,6 @@
|
|||||||
<verificationFile>target/verifier/verifications.xml</verificationFile>
|
<verificationFile>target/verifier/verifications.xml</verificationFile>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-clean-plugin</artifactId>
|
|
||||||
<configuration>
|
|
||||||
<followSymLinks>false</followSymLinks>
|
|
||||||
<!-- Skip this step if on windows -->
|
|
||||||
<skip>${js.skip.clean}</skip>
|
|
||||||
<filesets>
|
|
||||||
<fileset>
|
|
||||||
<directory>${basedir}</directory>
|
|
||||||
<includes>
|
|
||||||
<include>**/.wireit/**</include>
|
|
||||||
<include>**/node_modules/**</include>
|
|
||||||
</includes>
|
|
||||||
</fileset>
|
|
||||||
<!-- include all non-maven projects here as well -->
|
|
||||||
<fileset>
|
|
||||||
<directory>js/apps/keycloak-server</directory>
|
|
||||||
<includes>
|
|
||||||
<include>server/**</include>
|
|
||||||
</includes>
|
|
||||||
</fileset>
|
|
||||||
</filesets>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>com.github.eirslett</groupId>
|
|
||||||
<artifactId>frontend-maven-plugin</artifactId>
|
|
||||||
<version>${frontend.plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<goals>
|
|
||||||
<goal>install-node-and-pnpm</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
<execution>
|
|
||||||
<id>pnpm-install</id>
|
|
||||||
<goals>
|
|
||||||
<goal>pnpm</goal>
|
|
||||||
</goals>
|
|
||||||
<configuration>
|
|
||||||
<arguments>${pnpm.args.install}</arguments>
|
|
||||||
<workingDirectory>${maven.multiModuleProjectDirectory}</workingDirectory>
|
|
||||||
</configuration>
|
|
||||||
</execution>
|
|
||||||
<execution>
|
|
||||||
<id>pnpm-build</id>
|
|
||||||
<goals>
|
|
||||||
<goal>pnpm</goal>
|
|
||||||
</goals>
|
|
||||||
<configuration>
|
|
||||||
<arguments>build</arguments>
|
|
||||||
</configuration>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
<configuration>
|
|
||||||
<nodeVersion>${node.version}</nodeVersion>
|
|
||||||
<pnpmVersion>${pnpm.version}</pnpmVersion>
|
|
||||||
<installDirectory>${maven.multiModuleProjectDirectory}</installDirectory>
|
|
||||||
<pnpmInheritsProxyConfigFromMaven>false</pnpmInheritsProxyConfigFromMaven>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.keycloak</groupId>
|
<groupId>org.keycloak</groupId>
|
||||||
<artifactId>keycloak-distribution-licenses-maven-plugin</artifactId>
|
<artifactId>keycloak-distribution-licenses-maven-plugin</artifactId>
|
||||||
@ -1741,17 +1672,5 @@
|
|||||||
<keycloak.crypto.artifactId>keycloak-crypto-fips1402</keycloak.crypto.artifactId>
|
<keycloak.crypto.artifactId>keycloak-crypto-fips1402</keycloak.crypto.artifactId>
|
||||||
</properties>
|
</properties>
|
||||||
</profile>
|
</profile>
|
||||||
|
|
||||||
<profile>
|
|
||||||
<id>clean-when-not-on-windows</id>
|
|
||||||
<activation>
|
|
||||||
<os>
|
|
||||||
<family>windows</family>
|
|
||||||
</os>
|
|
||||||
</activation>
|
|
||||||
<properties>
|
|
||||||
<js.skip.clean>true</js.skip.clean>
|
|
||||||
</properties>
|
|
||||||
</profile>
|
|
||||||
</profiles>
|
</profiles>
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user