initial commit
This commit is contained in:
45
dev/tekton/examples/example-bank/public/javascript/asset.js
Executable file
45
dev/tekton/examples/example-bank/public/javascript/asset.js
Executable file
@@ -0,0 +1,45 @@
|
||||
class Asset extends HTMLElement {
|
||||
|
||||
static get observedAttributes() {
|
||||
return ['assetimage', 'text', 'link'];
|
||||
}
|
||||
|
||||
constructor(details) {
|
||||
// Always call super first in constructor
|
||||
super();
|
||||
|
||||
let template = document.getElementById('assetlink');
|
||||
let templateContent = template.content;
|
||||
|
||||
this.details = details;
|
||||
|
||||
const shadow = this.attachShadow({
|
||||
mode: 'open'
|
||||
})
|
||||
.appendChild(templateContent.cloneNode(true));
|
||||
}
|
||||
|
||||
connectedCallback(){
|
||||
var customElement = this;
|
||||
var sr = this.shadowRoot;
|
||||
this.assetimage = sr.getElementById('assetimage');
|
||||
this.assetimage.src = customElement.getAttribute('assetimage');
|
||||
this.assettext = sr.getElementById('text');
|
||||
this.assettext.innerHTML = customElement.getAttribute('text');
|
||||
|
||||
let link = customElement.getAttribute('link')
|
||||
if (link) {
|
||||
this.assettext.addEventListener("click", e => {
|
||||
window.location = link
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
customElements.define('asset-element', Asset);
|
||||
} catch (err) {
|
||||
const h3 = document.createElement('h3')
|
||||
h3.innerHTML = err
|
||||
document.body.appendChild(h3)
|
||||
}
|
||||
Reference in New Issue
Block a user