Initial commit

This commit is contained in:
torsten committed 2026-08-13 18:33:10 +02:00
commit b7d90b9afe
16245 files changed
+3396666

No files matched your search

+10
View File
@@ -0,0 +1,10 @@
function A(e){return document.getElementById(e)}function b(e){return s("topic_"+e)}function s(e){let n=document.getElementById(e);if(!n)throw new Error(`Cannot find element '${e}'`);return n}function T(e){let n=parseInt(e);if(isNaN(n))throw new Error("Could not parse string to int. String was: "+e);return n}var q=16/9;function l(e){return e*100+"%"}function _(e,n,t,o,i){let r=e.style,a=o<2e-4||i<2e-4;r.left=l(n),r.top=l(t),r.width=l(a?1:o),r.height=l(a?1:i)}function d(e){var o,i,r;let n="topic_"+e.id;if(A(n)!==null){console.error("!!! element for topic already exists: "+e.id);return}let t=document.createElement(e.element);if(t.setAttribute("data-topic-type",e.type.toString()),t.setAttribute("data-topic-start",e.start.toString()),t.setAttribute("data-topic-duration",e.duration.toString()),t.setAttribute("data-topic-x",e.x.toString()),t.setAttribute("data-topic-y",e.y.toString()),t.setAttribute("data-topic-w",e.w.toString()),t.setAttribute("data-topic-h",e.h.toString()),t.setAttribute("data-topic-channel",e.channel.toString()),t.setAttribute("data-topic-filter",(i=(o=e.filter)==null?void 0:o.toString())!=null?i:"(null)"),t.setAttribute("data-topic-description",(r=e.description)!=null?r:""),t.addEventListener("error",a=>{console.error(`Topic ${e.id}# (${e.description||" - "}) error:`,a)}),["audio"].includes(e.element))t.setAttribute("hidden","");else{t.style.setProperty("z-index",""+(e.id+(e.filter?e.filter*1e4:0))),t.style.setProperty("position","fixed");let{x:a,y:S,w:L,h:w}=e;_(t,a,S,L,w)}return t.classList.add("topic"),t.id=n,s("screen").appendChild(t),t}var y={};function h(e){y=e,N()}var c=M(),E=document.documentElement.lang;function v(e,n){let t=e.textContent||"";n===!0&&e.setAttribute("data-tr-org",t),e.textContent=m(t)}function P(e){for(let t of e.childNodes)P(t);if(e.nodeType!==Node.ELEMENT_NODE)return;let n=e;n.hasAttribute("data-tr")&&(n.hasAttribute("data-tr-org")||v(n,!0))}var $=function(e){for(let n of e){if(n.type==="attributes"&&n.target.nodeType===Node.ELEMENT_NODE){let t=n.target,o=t.getAttribute("data-tr");if(!o||o.length<1)continue;t.setAttribute("data-tr-org",o),t.textContent=m(o),t.setAttribute("data-tr","");continue}if(!(n.addedNodes.length<1||n.type!=="childList"))for(let t of n.addedNodes)P(t)}};function N(){document.documentElement.lang=c,document.querySelectorAll("[data-tr]").forEach(e=>{v(e,!0)}),new MutationObserver($).observe(document,{attributeFilter:["data-tr"],childList:!0,subtree:!0})}function M(){return navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.language||"en-US"}function u(e){c=e,document.documentElement.lang=e,document.querySelectorAll("[data-tr-org]").forEach(n=>{let t=n.getAttribute("data-tr-org");if(!t){n.textContent="";return}let o;E===c?o=t:o=m(t),n.textContent=o})}function D(e){var t;return E===c?e:((t=y[e])==null?void 0:t[c])||e}function m(e,...n){let t=D(e),o={};n.forEach((i,r)=>{if(typeof i=="object"){for(let a in i)o[a]=i[a];return}o[""+r.toString()]=i});try{return new Function(...Object.keys(o),`return \`${t}\`;`)(...Object.values(o))}catch(i){return console.error("webtr: tr error: ",i),t}}var H={"Take Home Package - ${exerciseName}":{"de-DE":"Take Home Package - ${exerciseName}"},'Failed to load THP: \n"${e.message}"\nat ${e.filename}:${e.lineno}:${e.colno}':{"de-DE":'Fehler beim Laden des THP: \n"${e.message}"\nbei ${e.filename}:${e.lineno}:${e.colno}'},"${num} topic(s) could not be loaded.":{"de-DE":"${num} Topic(s) konnten nicht geladen werden."},"Topic has missing values. Object was '${t}'":{"de-DE":"Dem Topic fehlen ein oder mehrere Eigenschaften. Inhalt des Objekts: '${t}'"},"Please reload.":{"de-DE":"Bitte laden Sie diese Seite neu."},Activate:{"de-DE":"Aktivieren"},"Screen 1":{"de-DE":"Bildschirm 1"},"Screen 2":{"de-DE":"Bildschirm 2"},Loading:{"de-DE":"Wird geladen"},"Dark mode":{"de-DE":"Abdunkeln"},Language:{"de-DE":"Sprache"},Play:{"de-DE":"Wiedergabe"},Pause:{"de-DE":"Pausieren"},Stop:{"de-DE":"Stopp"},Filter:{"de-DE":null},"Enter Fullscreen mode on this screen":{"de-DE":"Vollbildmodus auf diesem Bildschirm aktivieren"},"Use without Fullscreen mode":{"de-DE":"Ohne Vollbildmodus nutzen"}},k=H;globalThis.addEventListener("DOMContentLoaded",()=>{h(k)});function g(e){return`../topics/${e}`}function O(e){let n=d(e);return n.src=g(e.src),n.controls=!1,n.muted=!1,n}function V(e){let n=d(e);n.type="application/pdf";let t=[];return e.page&&t.push(`page=${e.page}`),e.zoom&&t.push(`zoom=${e.zoom}`),n.data=`${g(e.filename)}#toolbar=0&${t.join("&")}`,n}function C(e){let n=d(e);return n.src=g(e.src),n}function U(e){switch(e){case"video":return j();case"object":return B();case"img":return R();case"marker":return F();default:throw new Error("element invalid: "+e)}}var p=!1;function j(){return{init:function(e,n){let t=O(e);t.currentTime=n,t.muted=p},playbackPlay:function(e,n){let t=b(e.id);t.currentTime=n,setTimeout(()=>t.play(),1)},playbackPause:function(e){s("topic_"+e.id).pause()},playbackStop:function(e){s("topic_"+e.id).remLine truncated
/*! Bundled license information:
webtr/dist/webtr.js:
(**
* @file webtr.ts
* @copyright Mike Wille <mike@wille.io>
* @license MIT
*)
*/