Files
sm-bm-plugin/public/assets/remote-BmhCoAgl.js

2 lines
8.6 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
function g(e){const n=e<0,t=Math.abs(Math.round(e)),o=Math.floor(t/60),r=t%60;return(n?"−":"")+o+":"+(r<10?"0":"")+r}function P(e){return e.map(n=>Number.isFinite(n)&&n>0?n:0)}function E(e){return Number.isFinite(e)&&e>0?e:0}function O(e){const n=P(e.budgets),t=n.reduce((f,p)=>f+p,0),o=e.targetSeconds>0?e.targetSeconds:t,r=n.length===0?0:Math.max(0,Math.min(n.length-1,Math.trunc(e.index)||0)),l=E(e.elapsed),i=E(e.slideElapsed),s=n[r]??0,a=s-i;let d="",u=!1;if(!e.idle){let f=Math.min(i,s);for(let b=0;b<r;b++)f+=n[b]??0;const p=Math.round(f-l);u=p<0,d=p>=0?"zapas "+g(p):"opóźnienie "+g(-p)}return{slide:s?g(a):"—",total:g(o-l),pace:d,slideOver:s>0&&a<0,totalOver:l>o,late:u,idle:e.idle,paused:e.paused,hidden:e.hidden,elapsed:Math.floor(l),slideElapsed:Math.floor(i)}}function te(e){const n=P(e.budgets),t=n.map(()=>0);let o=0,r=0,l=0,i=!1;function s(c){return n.length===0?0:Math.max(0,Math.min(n.length-1,c))}function a(){return r===0&&o===0}function d(){return O({budgets:n,targetSeconds:e.targetSeconds,index:l,slideElapsed:t[l]??0,elapsed:o,idle:a(),paused:r===0&&o>0,hidden:i})}function u(){if(!r)return;const c=e.now(),M=(c-r)/1e3;r=c,n.length>0&&(t[l]+=M),o+=M}function f(c){l=s(c),r===0&&o===0&&(r=e.now())}function p(c){l=s(c)}function b(){!o&&!r||(u(),r=r?0:e.now())}function R(){for(let c=0;c<t.length;c++)t[c]=0;o=0,r=0}return{go:f,seek:p,tick:u,pause:b,reset:R,toggleHidden(){i=!i},view:d}}const A="remote.action",S="remote.state",oe=300,re=1e4,H=45e3,le=15e3,_=25e3,ie=1e4,se=1e3,y=800,x=["next","prev","first","last","goto","speak","notes","sources","special","back","clock-pause","clock","clock-reset","toolbar","scheme","sync"],C=/^[A-Za-z0-9_-]{8,64}$/,D=9999,T=9999,k=86400,L=new Set(x),v=new Set(["say","notes","srcs"]),V={next:"ArrowRight",prev:"ArrowLeft",first:"Home",last:"End",speak:"p",notes:"n",sources:"z",special:"s",back:"Escape","clock-pause":"t",clock:"c","clock-reset":"r",toolbar:"h",scheme:"j"};function ae(e){const n=V[e];return!n||n.toLowerCase()==="f"?null:n}function m(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function h(e,n,t){return typeof e=="number"&&Number.isInteger(e)&&e>=n&&e<=t}function F(e){if(!m(e))return null;const n=e.action,t=e.tab;if(typeof n!="string"||!L.has(n)||typeof t!="string"||t!==""&&!C.test(t))return null;const o=n;return o==="goto"?h(e.number,1,D)?{action:o,number:e.number,tab:t}:null:e.number!==void 0?null:{action:o,tab:t}}function G(e){if(!m(e))return null;const{elapsed:n,slide_elapsed:t,paused:o,hidden:r,idle:l}=e;return!h(n,0,k)||!h(t,0,k)||typeof o!="boolean"||typeof r!="boolean"||typeof l!="boolean"?null:{elapsed:n,slide_elapsed:t,paused:o,hidden:r,idle:l}}function B(e){if(!m(e))return null;const{tab:n,claim:t,bye:o,number:r,total:l,special:i,has_special:s,panel:a,toolbar_hidden:d}=e;if(typeof n!="string"||!C.test(n)||typeof t!="boolean"||typeof o!="boolean"||!h(r,0,T)||!h(l,0,T)||r>l||typeof i!="boolean"||typeof s!="boolean"||typeof d!="boolean"||a!==null&&(typeof a!="string"||!v.has(a)))return null;const u=e.light===void 0?!1:e.light;if(typeof u!="boolean")return null;const f=G(e.clock);return f?{tab:n,claim:t,bye:o,number:r,total:l,special:i,has_special:s,panel:a,toolbar_hidden:d,light:u,clock:f}:null}function ce(e){if(!m(e))return null;if(e.event===A){const n=F(e.payload);return n?{event:A,payload:n}:null}if(e.event===S){const n=B(e.payload);return n?{event:S,payload:n}:null}return null}function ue(){const e=globalThis.crypto;if(e&&typeof e.randomUUID=="function")return e.randomUUID();const n=new Uint8Array(16);if(e&&typeof e.getRandomValues=="function")e.getRandomValues(n);else for(let t=0;t<n.length;t++)n[t]=Math.floor(Math.random()*256);return Array.from(n,t=>t.toString(16).padStart(2,"0")).join("")}function N(e){return!Number.isFinite(e)||e<=0?0:Math.min(k,Math.floor(e))}function w(e){return!Number.isFinite(e)||e<=0?0:Math.min(T,Math.floor(e))}function de(e,n,t,o={}){const r=w(e.total),l=Math.min(w(e.number),r);return{tab:t,claim:!!o.claim,bye:!!o.bye,number:l,total:r,special:e.special,has_special:e.hasSpecial,panel:e.panel,toolbar_hidden:e.toolbarHidden,light:!!o.light,clock:n?{elapsed:N(n.elapsed),slide_elapsed:N(n.slideElapsed),paused:n.paused,hidden:n.hidden,idle:n.idle}:{elapsed:0,slide_elapsed:0,paused:!1,hidden:!1,idle:!0}}}function fe(e){let n=null;return{observe(t){const o=n===e;return t.bye?(t.tab===n&&(n=null),!1):((t.claim||n===null&&t.tab!==e)&&(n=t.tab),!o&&n===e)},activeTab:()=>n,isActive:()=>n===e,shouldApply(t){return n===e&&(t.tab===""||t.tab===e)}}}function pe(e,n=!1){const t=Number.isFinite(e)?Math.min(Math.max(e,0),1):0;return(n?y:2*y)+Math.floor(t*(y/2))}function be(){let e=null,n=0,t=null;return{observe(o,r){const l=e===null||e.bye||r-n>=_;return(o.claim&&!o.bye||t===null||l)&&(t=o.tab),o.tab!==t?!1:(e=o,n=r,o.bye&&(t=null),!0)},current:()=>e,receivedAt:()=>n,actionTab:()=>t??"",live(o){return e!==null&&!e.bye&&o-n<_},release(){t=null}}}function he(e,n){return e>0&&n-e<H}const K={now:()=>Date.now(),setTimeout:(e,n)=>globalThis.setTimeout(e,n),clearTimeout:e=>globalThis.clearTimeout(e)};function ge(e,n,t=K){let o=Number.NEGATIVE_INFINITY,r=null;function l(){o=t.now(),e()}function i(){r!==null&&t.clearTimeout(r),r=null}return{call(){if(r!==null)return;const s=o+n-t.now();if(s<=0){l();return}r=t.setTimeout(()=>{r=null,l()},s)},flush(){i(),l()},cancel:i}}const U=/<h([1-3])\b[^>]*>([\s\S]*?)<\/h\1\s*>/gi,Y=/<br\s*\/?>/gi,Z=/<[^>]*>/g,q=/&(#x[0-9a-f]+|#[0-9]+|amp|lt|gt|quot|apos|nbsp);/gi,z={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" "};function j(e){return e.replace(q,(n,t)=>{const o=t.toLowerCase();if(o in z)return z[o];const r=o.startsWith("#x")?parseInt(o.slice(2),16):parseInt(o.slice(1),10);return!Number.isFinite(r)||r<=0||r>1114111?n:r===160?" ":String.fromCodePoint(r)})}function $(e){return j(e.replace(Y," ").replace(Z,"")).replace(/\s+/g," ").trim()}function I(e,n){const t=e.findIndex(o=>o.number===n);return t<0?0:t}function me(e){const n=e.body_html??"";for(const o of n.matchAll(U)){const r=$(o[2]??"");if(r)return r}const t=(e.section_label??"").trim();return t||`Slajd ${e.number}`}const W={say:"Na ekranie: Powiedz",notes:"Na ekranie: Notatki",srcs:"Na ekranie: Źródła"};function ye(e){const n=[];return e.special&&n.push("Specjalny"),e.panel&&n.push(W[e.panel]),e.toolbar_hidden&&n.push("Pasek ukryty"),e.clock.hidden&&n.push("Zegar ukryty"),n}const X={connecting:"Łączenie…",waiting:"Czekam na komputer",live:"Połączono",reconnecting:"Ponowne łączenie…",unavailable:"Pilot niedostępny"};function Te(e){return X[e]}function ke(e,n,t,o,r,l){const{clock:i}=e,a=!i.paused&&!i.idle?Math.max(0,(l-r)/1e3):0;return{budgets:n,targetSeconds:t,index:o,slideElapsed:i.slide_elapsed+a,elapsed:i.elapsed+a,idle:i.idle,paused:i.paused,hidden:i.hidden}}function Me(e,n){const t=n&&e!==null,o=e?.panel??null,r=!!e?.special,l=(i,s,a,d,u=null)=>({action:i,label:s,kbd:a,enabled:t&&d,pressed:u});return[l("prev","Wstecz","",!0),l("next","Dalej","",!0),l("sources","Źródła","Z",!0,o==="srcs"),l("notes","Notatki","N",!0,o==="notes"),l("special","Specjalny","S",!!e?.has_special||r,r),l("back","Powrót","Esc",r),l("clock-pause",e?.clock.paused?"Wznów":"Pauza","T",!e?.clock.idle),l("clock-reset","Zeruj","R",!0),l("clock",e?.clock.hidden?"Pokaż zegar":"Ukryj zegar","C",!0),l("toolbar","Pasek","H",!0,e?!e.toolbar_hidden:!1),l("speak","Powiedz","P",!0,o==="say"),l("scheme","Jasny","J",!0,!!e?.light),l("first","Początek","Home",!0),l("last","Koniec","End",!0)]}function Ee(e){return e===0?"Nie wysłano: brak połączenia z internetem. Naciśnij ponownie.":e===429?"Za dużo naciśnięć naraz. Odczekaj chwilę i naciśnij ponownie.":e===503?"Pilot jest teraz niedostępny. Steruj klawiaturą na komputerze.":"Nie wysłano polecenia. Naciśnij ponownie."}const J=/<img\b((?:[^>"']|"[^"]*"|'[^']*')*)>/gi,Q=/([^\s"'=<>/]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+)))?/g;function ee(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function ne(e){const n=new Map;for(const t of e.matchAll(Q)){const o=(t[1]??"").toLowerCase();!o||n.has(o)||n.set(o,t[2]??t[3]??t[4]??"")}return n}function Ae(e){return e?e.replace(J,(n,t)=>{const o=ne(t);if(!o.has("data-deck-image"))return n;const r=j(o.get("alt")??"").replace(/\s+/g," ").trim();return`<em class="drawer-image">${r?`[obraz: ${ee(r)}]`:"[obraz]"}</em>`}):""}function Se(e,n,t,o){if(e.slides.length===0)return null;if(t&&n){const r=e.slides[I(e.slides,n.number)]??null;return r&&n.special&&r.special?r.special:r}return e.slides[I(e.slides,o)]??null}export{se as C,ie as D,re as H,S as R,oe as S,ge as a,te as b,fe as c,ce as d,de as e,Ae as f,me as g,Se as h,Me as i,Te as j,le as k,be as l,Ee as m,ue as n,ye as o,he as p,O as q,ae as r,I as s,pe as t,ke as u};