diff --git a/packages/data-table-view/assets/favicon.ico b/packages/data-table-view/assets/favicon.ico deleted file mode 100644 index a9ca0900db3b27416c42571720c23eecf0581f8b..0000000000000000000000000000000000000000 Binary files a/packages/data-table-view/assets/favicon.ico and /dev/null differ diff --git a/packages/data-table-view/assets/index.html b/packages/data-table-view/assets/index.html deleted file mode 100644 index f6bdd8b3b8a76537a24f5840d9f2718ce48581d7..0000000000000000000000000000000000000000 --- a/packages/data-table-view/assets/index.html +++ /dev/null @@ -1,20 +0,0 @@ -<!doctype html> -<html> -<head> - <meta charset="UTF-8"> - <meta name="viewport" content="width=device-width, initial-scale=1"> - <script type="module" id="dbp-data-table-view-src" src="dbp-data-table-view-demo.js"></script> - - <style> - body { - font-family: sans-serif; - } - </style> - -</head> - -<body> - -<dbp-data-table-view-demo lang="de" entry-point-url="http://127.0.0.1:8000" auth requested-login-status></dbp-data-table-view-demo> -</body> -</html> diff --git a/packages/data-table-view/assets/index.html.ejs b/packages/data-table-view/assets/index.html.ejs new file mode 100644 index 0000000000000000000000000000000000000000..19bb3bb74cd5216fe64b9cbe42ee86a7a15b1951 --- /dev/null +++ b/packages/data-table-view/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-data-table-view-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-data-table-view-demo> +</body> +</html> diff --git a/packages/data-table-view/assets/silent-check-sso.html b/packages/data-table-view/assets/silent-check-sso.html new file mode 100644 index 0000000000000000000000000000000000000000..94fe2268cbd7ff3f752f2093bb3cddd6d10b6388 --- /dev/null +++ b/packages/data-table-view/assets/silent-check-sso.html @@ -0,0 +1,7 @@ +<html> +<body> + <script> + parent.postMessage(location.href, location.origin) + </script> +</body> +</html> \ No newline at end of file diff --git a/packages/data-table-view/package.json b/packages/data-table-view/package.json index 6284811fdb2dc2b4f3ab8f85411511de237df184..3199dbc679501427bf2fa56ae54246ca1243d754 100644 --- a/packages/data-table-view/package.json +++ b/packages/data-table-view/package.json @@ -32,6 +32,7 @@ "rollup": "^2.33.3", "rollup-plugin-copy": "^3.1.0", "rollup-plugin-delete": "^2.0.0", + "rollup-plugin-emit-ejs": "^3.1.0", "rollup-plugin-serve": "^2.0.0", "rollup-plugin-terser": "^7.0.2" }, diff --git a/packages/data-table-view/rollup.config.js b/packages/data-table-view/rollup.config.js index 83f8240b19118da60340bbfc124b8b12a96e385a..71aafff02bb80ed4a53ecd0027aa71895a1ffcb4 100644 --- a/packages/data-table-view/rollup.config.js +++ b/packages/data-table-view/rollup.config.js @@ -1,23 +1,30 @@ 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 urlPlugin from '@rollup/plugin-url'; 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-data-table-view'; + export default (async () => { + let privatePath = await getDistPath(pkg.name); return { input: build != 'test' - ? ['src/dbp-data-table-view.js', 'src/dbp-data-table-view-demo.js'] + ? ['src/' + appName + '.js', 'src/' + appName + '-demo.js'] : glob.sync('test/**/*.js'), output: { dir: 'dist', @@ -26,13 +33,27 @@ export default (async () => { format: 'esm', sourcemap: true, }, - watch: { - chokidar: true, - }, plugins: [ 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(), @@ -44,10 +65,6 @@ export default (async () => { build !== 'local' && build !== 'test' ? terser() : false, copy({ targets: [ - {src: 'assets/index.html', dest: 'dist'}, - {src: 'assets/*.css', dest: 'dist/' + (await getDistPath(pkg.name))}, - {src: 'assets/*.ico', dest: 'dist/' + (await getDistPath(pkg.name))}, - {src: 'assets/nomodule.js', dest: 'dist/' + (await getDistPath(pkg.name))}, { src: await getPackagePath('@dbp-toolkit/common', 'assets/icons/*.svg'), dest: 'dist/' + (await getDistPath('@dbp-toolkit/common', 'icons')), @@ -70,9 +87,13 @@ export default (async () => { }, ], }), - process.env.ROLLUP_WATCH === 'true' - ? serve({contentBase: 'dist', host: '127.0.0.1', port: 8003}) + ? serve({ + contentBase: '.', + historyApiFallback: basePath + 'index.html', + host: '127.0.0.1', + port: 8002, + }) : false, ], }; diff --git a/packages/data-table-view/src/dbp-data-table-view-demo.js b/packages/data-table-view/src/dbp-data-table-view-demo.js index 6cea37cc00419473ce291162876ff90f6ab871ae..37c4052aa65ce17046e70574f94f722cf9e22d4b 100644 --- a/packages/data-table-view/src/dbp-data-table-view-demo.js +++ b/packages/data-table-view/src/dbp-data-table-view-demo.js @@ -163,13 +163,9 @@ export class DataTableViewDemo 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" lang="${this.lang}" entry-point-url="${this.entryPointUrl}" - silent-check-sso-redirect-uri="/dist/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>