diff --git a/packages/auth/assets/favicon.ico b/packages/auth/assets/favicon.ico deleted file mode 100644 index a9ca0900db3b27416c42571720c23eecf0581f8b..0000000000000000000000000000000000000000 Binary files a/packages/auth/assets/favicon.ico and /dev/null differ diff --git a/packages/auth/assets/index.html b/packages/auth/assets/index.html deleted file mode 100644 index 4ff73a307b32c5d8e873f8c5b9010da55ee1c839..0000000000000000000000000000000000000000 --- a/packages/auth/assets/index.html +++ /dev/null @@ -1,12 +0,0 @@ -<!doctype html> -<html> -<head> - <meta charset="UTF-8"> - <script type="module" src="dbp-auth-demo.js"></script> - <script type="module" src="dbp-auth.js"></script> -</head> - -<body> -<dbp-auth-demo auth requested-login-status lang="de" entry-point-url="http://127.0.0.1:8000" subscribe="auth"></dbp-auth-demo> -</body> -</html> diff --git a/packages/auth/assets/index.html.ejs b/packages/auth/assets/index.html.ejs new file mode 100644 index 0000000000000000000000000000000000000000..b276b0d5dd922b47082ff6c5ad92fe46734db9e0 --- /dev/null +++ b/packages/auth/assets/index.html.ejs @@ -0,0 +1,34 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + + <style> + :root { + font-family: sans-serif; + font-weight: 300; + font-size: 11pt; + } + + body { + margin: 0; + } + </style> + + <script type="module" src="<%= getUrl(name + '-demo.js') %>"></script> +</head> +<body> + <dbp-auth-demo + auth + requested-login-status + lang="de" + entry-point-url="<%= entryPointURL %>" + url="<%= keyCloakBaseURL %>" + realm="<%= keyCloakRealm %>" + client-id="<%= keyCloakClientId %>" + silent-check-sso-redirect-uri="<%= getUrl('silent-check-sso.html') %>" + subscribe="auth" + ></dbp-auth-demo> +</body> +</html> diff --git a/packages/auth/rollup.config.js b/packages/auth/rollup.config.js index d5f81517a1fc2599230a347d73ab23b8878d4308..3b21ce64d91213817acd1894beae2dd9c9c67f2c 100644 --- a/packages/auth/rollup.config.js +++ b/packages/auth/rollup.config.js @@ -1,22 +1,29 @@ import glob from 'glob'; +import url from 'url'; import resolve from '@rollup/plugin-node-resolve'; import commonjs from '@rollup/plugin-commonjs'; import copy from 'rollup-plugin-copy'; import {terser} from 'rollup-plugin-terser'; -import json from '@rollup/plugin-json'; import serve from 'rollup-plugin-serve'; import del from 'rollup-plugin-delete'; +import json from '@rollup/plugin-json'; +import emitEJS from 'rollup-plugin-emit-ejs'; import {getPackagePath, getDistPath} from '../../rollup.utils.js'; +import config from '../../demo.common.config.js'; -const pkg = require('./package.json'); const build = typeof process.env.BUILD !== 'undefined' ? process.env.BUILD : 'local'; console.log('build: ' + build); +const pkg = require('./package.json'); +const basePath = '/dist/'; +const appName = 'dbp-auth'; + export default (async () => { + let privatePath = await getDistPath(pkg.name); return { input: build != 'test' - ? ['src/dbp-auth.js', 'src/dbp-auth-demo.js'] + ? ['src/' + appName + '.js', 'src/' + appName + '-demo.js'] : glob.sync('test/**/*.js'), output: { dir: 'dist', @@ -29,15 +36,30 @@ export default (async () => { del({ targets: 'dist/*', }), + emitEJS({ + src: 'assets', + include: ['**/*.ejs', '**/.*.ejs'], + data: { + getUrl: (p) => { + return url.resolve(basePath, p); + }, + getPrivateUrl: (p) => { + return url.resolve(`${basePath}${privatePath}/`, p); + }, + name: appName, + entryPointURL: config.entryPointURL, + keyCloakBaseURL: config.keyCloakBaseURL, + keyCloakRealm: config.keyCloakRealm, + keyCloakClientId: config.keyCloakClientId, + }, + }), resolve(), commonjs(), json(), build !== 'local' && build !== 'test' ? terser() : false, copy({ targets: [ - {src: 'assets/index.html', dest: 'dist'}, {src: 'assets/silent-check-sso.html', dest: 'dist'}, - {src: 'assets/favicon.ico', dest: 'dist'}, { src: await getPackagePath('@dbp-toolkit/common', 'assets/icons/*.svg'), dest: 'dist/' + (await getDistPath('@dbp-toolkit/common', 'icons')), @@ -45,7 +67,12 @@ export default (async () => { ], }), process.env.ROLLUP_WATCH === 'true' - ? serve({contentBase: 'dist', host: '127.0.0.1', port: 8002}) + ? serve({ + contentBase: '.', + historyApiFallback: basePath + 'index.html', + host: '127.0.0.1', + port: 8002, + }) : false, ], }; diff --git a/packages/auth/src/dbp-auth-demo.js b/packages/auth/src/dbp-auth-demo.js index 22a2f7ea7162c8582b24e82002f83ae34fdad59f..4854e032e8102d862b2c854dd5e654afe33b1fa4 100644 --- a/packages/auth/src/dbp-auth-demo.js +++ b/packages/auth/src/dbp-auth-demo.js @@ -86,13 +86,9 @@ export class DbpAuthDemo extends ScopedElementsMixin(DBPLitElement) { : html` <div class="container"> <dbp-auth-keycloak - subscribe="requested-login-status" + subscribe="requested-login-status,silent-check-sso-redirect-uri,url,realm,client-id,entry-point-url" lang="${this.lang}" entry-point-url="${this.entryPointUrl}" - silent-check-sso-redirect-uri="/silent-check-sso.html" - url="https://auth-dev.tugraz.at/auth" - realm="tugraz-vpu" - client-id="auth-dev-mw-frontend-local" try-login></dbp-auth-keycloak> <dbp-login-button subscribe="auth" lang="${this.lang}"></dbp-login-button> </div>