mirror of
				https://github.com/Theodor-Springmann-Stiftung/kgpz_web.git
				synced 2025-10-31 01:55:29 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			35 lines
		
	
	
		
			961 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			961 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import "./site.css";
 | |
| 
 | |
| function setup() {
 | |
|   let templates = document.querySelectorAll('template[simple]');
 | |
|   templates.forEach((template) => {
 | |
|     let templateId = template.getAttribute('id');
 | |
|     let templateContent = template.content;
 | |
| 
 | |
|     customElements.define(templateId, class extends HTMLElement {
 | |
|       constructor() {
 | |
|         super();
 | |
|         this.appendChild(templateContent.cloneNode(true));
 | |
|         this.slots = this.querySelectorAll('slot');
 | |
|       }
 | |
| 
 | |
|       connectedCallback() {
 | |
|         let toremove = [];
 | |
|         this.slots.forEach((tslot) => {
 | |
|           let slotName = tslot.getAttribute('name');
 | |
|           let slotContent = this.querySelector(`[slot="${slotName}"]`);
 | |
|           if (slotContent) {
 | |
|             tslot.replaceWith(slotContent.cloneNode(true));
 | |
|             toremove.push(slotContent);
 | |
|           }
 | |
|         });
 | |
|         toremove.forEach((element) => {
 | |
|             element.remove();
 | |
|         });
 | |
|       }
 | |
|     }); 
 | |
|   });
 | |
| }
 | |
| 
 | |
| export { setup } 
 | 
