Skip to content
Snippets Groups Projects
Unverified Commit 04c7e747 authored by Bekerle, Patrizio's avatar Bekerle, Patrizio :fire:
Browse files

Integrate auth property into dbp-knowledge-base-web-page-element-view

parent 3d7e506f
No related branches found
No related tags found
No related merge requests found
Pipeline #16453 passed
...@@ -23,6 +23,8 @@ npm i @dbp-toolkit/knowledge-base-web-page-element-view ...@@ -23,6 +23,8 @@ npm i @dbp-toolkit/knowledge-base-web-page-element-view
- example `<dbp-knowledge-base-web-page-element-view entry-point-url="http://127.0.0.1:8000"></dbp-knowledge-base-web-page-element-view>` - example `<dbp-knowledge-base-web-page-element-view entry-point-url="http://127.0.0.1:8000"></dbp-knowledge-base-web-page-element-view>`
- `text` (optional): text to click to show the information loaded from the webpage - `text` (optional): text to click to show the information loaded from the webpage
- example `<dbp-knowledge-base-web-page-element-view text="Click me to show more information"></dbp-knowledge-base-web-page-element-view>` - example `<dbp-knowledge-base-web-page-element-view text="Click me to show more information"></dbp-knowledge-base-web-page-element-view>`
- `auth` object: you need to set that object property for the auth token
- example auth property: `{token: "THE_BEARER_TOKEN"}`
## Local development ## Local development
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
</style> </style>
<body> <body>
<dbp-knowledge-base-web-page-element-view-demo lang="de" entry-point-url="http://127.0.0.1:8000"></dbp-knowledge-base-web-page-element-view-demo> <dbp-knowledge-base-web-page-element-view-demo auth lang="de" entry-point-url="http://127.0.0.1:8000"></dbp-knowledge-base-web-page-element-view-demo>
</body> </body>
</html> </html>
...@@ -86,23 +86,23 @@ export class KnowledgeBaseWebPageElementViewDemo extends ScopedElementsMixin(DBP ...@@ -86,23 +86,23 @@ export class KnowledgeBaseWebPageElementViewDemo extends ScopedElementsMixin(DBP
<div class="container"> <div class="container">
<h2 class="subtitle">Deutsch</h2> <h2 class="subtitle">Deutsch</h2>
<p>Ein erster Schritt</p> <p>Ein erster Schritt</p>
<dbp-knowledge-base-web-page-element-view lang="de" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Ein Buch ausleihen"></dbp-knowledge-base-web-page-element-view> <dbp-knowledge-base-web-page-element-view subscribe="auth:auth" lang="de" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Ein Buch ausleihen"></dbp-knowledge-base-web-page-element-view>
</div> </div>
<div class="container"> <div class="container">
<h2 class="subtitle">Englisch</h2> <h2 class="subtitle">Englisch</h2>
<p>A first step</p> <p>A first step</p>
<dbp-knowledge-base-web-page-element-view lang="en" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Borrow a book"></dbp-knowledge-base-web-page-element-view> <dbp-knowledge-base-web-page-element-view subscribe="auth:auth" lang="en" entry-point-url="${this.entryPointUrl}" value="bedienstete/bibliothek/buch-ausleihen" text="Borrow a book"></dbp-knowledge-base-web-page-element-view>
</div> </div>
<hr> <hr>
<div class="container"> <div class="container">
<p>mit Text in der WebComponent:</p> <p>mit Text in der WebComponent:</p>
<dbp-knowledge-base-web-page-element-view lang="${this.lang}" value="abc/def/xyz" text="FAQ"></dbp-knowledge-base-web-page-element-view> <dbp-knowledge-base-web-page-element-view subscribe="auth:auth" lang="${this.lang}" value="abc/def/xyz" text="FAQ"></dbp-knowledge-base-web-page-element-view>
</div> </div>
<hr> <hr>
<div class="container"> <div class="container">
<p>ohne Text in der WebComponent:</p> <p>ohne Text in der WebComponent:</p>
Kontaktieren Sie uns unter... Kontaktieren Sie uns unter...
<dbp-knowledge-base-web-page-element-view class="opt" lang="${this.lang}" value="abc/def/klm"></dbp-knowledge-base-web-page-element-view> <dbp-knowledge-base-web-page-element-view subscribe="auth:auth" class="opt" lang="${this.lang}" value="abc/def/klm"></dbp-knowledge-base-web-page-element-view>
</div> </div>
</section> </section>
`; `;
......
import {i18n} from './i18n'; import {i18n} from './i18n';
import {html, LitElement} from 'lit-element'; import {html} from 'lit-element';
import {ScopedElementsMixin} from '@open-wc/scoped-elements'; import {ScopedElementsMixin} from '@open-wc/scoped-elements';
import {MiniSpinner} from '@dbp-toolkit/common'; import {MiniSpinner} from '@dbp-toolkit/common';
import * as commonUtils from "@dbp-toolkit/common/utils"; import * as commonUtils from "@dbp-toolkit/common/utils";
import {unsafeHTML} from 'lit-html/directives/unsafe-html.js'; import {unsafeHTML} from 'lit-html/directives/unsafe-html.js';
import {AdapterLitElement} from "@dbp-toolkit/provider/src/adapter-lit-element";
/** /**
* KnowledgeBaseWebPageElementView web component * KnowledgeBaseWebPageElementView web component
*/ */
export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElement) { export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(AdapterLitElement) {
constructor() { constructor() {
super(); super();
this.lang = 'de'; this.lang = 'de';
...@@ -21,6 +22,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem ...@@ -21,6 +22,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
//this.css = 'kb.css'; //this.css = 'kb.css';
this.text = ''; this.text = '';
this.class = ''; this.class = '';
this.auth = {};
} }
static get scopedElements() { static get scopedElements() {
...@@ -46,6 +48,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem ...@@ -46,6 +48,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
error: { type: String, attribute: false}, error: { type: String, attribute: false},
//css: { type: String }, //css: { type: String },
text: { type: String }, text: { type: String },
auth: { type: Object },
}; };
} }
...@@ -53,7 +56,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem ...@@ -53,7 +56,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
* Loads the data from the web page element * Loads the data from the web page element
*/ */
loadWebPageElement() { loadWebPageElement() {
if (window.DBPAuthToken === undefined || window.DBPAuthToken === "") { if (this.auth.token === undefined || this.auth.token === "") {
return; return;
} }
...@@ -66,7 +69,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem ...@@ -66,7 +69,7 @@ export class KnowledgeBaseWebPageElementView extends ScopedElementsMixin(LitElem
fetch(apiUrl, { fetch(apiUrl, {
headers: { headers: {
'Content-Type': 'application/ld+json', 'Content-Type': 'application/ld+json',
'Authorization': 'Bearer ' + window.DBPAuthToken, 'Authorization': 'Bearer ' + this.auth.token,
}, },
}) })
.then(function (res) { .then(function (res) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment